[cli-consistency] Correct engine help text and align CLI command wording#26917
Conversation
Agent-Logs-Url: https://github.com/github/gh-aw/sessions/4733758b-90a8-43cb-9d44-1081922c1281 Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Aligns the CLI’s user-facing help text and related tests with the current engine catalog and command semantics to improve consistency and reduce confusing/stale guidance.
Changes:
- Standardizes
--enginehelp text to the current supported engine set and updates related tests. - Normalizes health-command terminology (“Warnings” vs “Alerts”) and clarifies
upgradeflag precedence/overlap in help output. - Refines
project newshort description and adds/updates help-text contract assertions.
Show a summary per file
| File | Description |
|---|---|
| pkg/cli/validate_command.go | Updates --engine help string for validate. |
| pkg/cli/upgrade_command.go | Clarifies --no-fix precedence and documents overlap with --no-actions / --no-compile. |
| pkg/cli/project_command.go | Updates project new short text to explicitly mention “board”. |
| pkg/cli/project_command_test.go | Adjusts assertion to match updated project new short text. |
| pkg/cli/logs_filtering_test.go | Updates expected engine-flag usage string in logs tests. |
| pkg/cli/init_command.go | Updates init help text engine wording and hidden --engine usage string. |
| pkg/cli/health_command.go | Replaces “Alerts” wording with “Warnings” in help/examples. |
| pkg/cli/health_command_test.go | Adds assertion to enforce “Warnings” terminology in help. |
| pkg/cli/flags.go | Updates shared engine flag helper usage strings. |
| pkg/cli/flags_test.go | Adds explicit tests for engine-flag usage strings. |
| pkg/cli/completion_command.go | Updates completion docs to reflect current engine list. |
| pkg/cli/add_wizard_command.go | Updates add-wizard long help to mention Gemini. |
| pkg/cli/add_wizard_command_test.go | Adds a help-text assertion for add-wizard engine wording. |
| cmd/gh-aw/main.go | Updates engine-flag usage strings for new, compile, and run. |
Copilot's findings
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 14/14 changed files
- Comments generated: 5
| @@ -21,7 +21,7 @@ Interactive Mode (default): | |||
| gh aw init | |||
|
|
|||
| When invoked without flags, init enters interactive mode and prompts you to: | |||
| - Select which AI engine to use (Copilot, Claude, or Codex) | |||
| - Select which AI engine to use (Copilot, Claude, Codex, or Gemini) | |||
| - Automatically configure engine-specific settings (e.g., MCP for Copilot) | |||
| - Detect and configure secrets from your environment | |||
| - Set up repository Actions secrets automatically | |||
|
|
||
| This command walks you through: | ||
| - Selecting an AI engine (Copilot, Claude, or Codex) | ||
| - Selecting an AI engine (Copilot, Claude, Codex, or Gemini) |
| func TestAddWizardCommandMentionsGemini(t *testing.T) { | ||
| cmd := NewAddWizardCommand(func(string) error { return nil }) | ||
| require.NotNil(t, cmd, "Add wizard command should be created") | ||
| assert.Contains(t, cmd.Long, "Copilot, Claude, Codex, or Gemini", "Add wizard help should mention Gemini engine") |
| // addEngineFlag adds the --engine/-e flag to a command. | ||
| // This flag allows overriding the AI engine type. | ||
| func addEngineFlag(cmd *cobra.Command) { | ||
| cmd.Flags().StringP("engine", "e", "", "Override AI engine (claude, codex, copilot, custom)") | ||
| cmd.Flags().StringP("engine", "e", "", "Override AI engine (copilot, claude, codex, gemini, crush)") | ||
| } | ||
|
|
||
| // addEngineFilterFlag adds the --engine/-e flag to a command for filtering. | ||
| // This flag allows filtering results by AI engine type. | ||
| func addEngineFilterFlag(cmd *cobra.Command) { | ||
| cmd.Flags().StringP("engine", "e", "", "Filter logs by AI engine (claude, codex, copilot, custom)") | ||
| cmd.Flags().StringP("engine", "e", "", "Filter logs by AI engine (copilot, claude, codex, gemini, crush)") | ||
| } |
| } | ||
|
|
||
| cmd.Flags().StringP("engine", "e", "", "Override AI engine (claude, codex, copilot, custom)") | ||
| cmd.Flags().StringP("engine", "e", "", "Override AI engine (copilot, claude, codex, gemini, crush)") |
|
test
|
|
@copilot review all comments |
Agent-Logs-Url: https://github.com/github/gh-aw/sessions/2279a9d7-12ee-4ea7-b297-5939975ff38b Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Addressed all actionable review comments in commit Changes included:
Screenshot of updated CLI help output: Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
CLI consistency inspection found stale and conflicting help text across commands:
--enginedocumented invalid values,add-wizardengine help drifted from actual options,healthmixed “alerts/warnings”, andupgradedid not explain--no-fixprecedence over related flags. This PR aligns user-facing help text with actual runtime behavior and command semantics.Engine flag help text corrected across CLI surface
customand omittedgemini/crush.copilot, claude, codex, gemini, crush.new,compile,run, hiddeninit --engine, completion docs, andvalidatenow reusesaddEngineFlag).Command descriptions aligned with actual behavior/options
add-wizardlong help to include all interactive engine options, including Crush.initlong help to describe its actual non-interactive behavior (no engine/secret prompting).Health command terminology normalized
--thresholdwarns below target).Upgrade flag interaction clarified
upgradehelp text describing precedence:--no-fixskips codemods, action updates, and compilation.--no-actions/--no-compileapply only when--no-fixis not set.Project command short description precision
project newshort text to explicitly mention creating a board.Targeted test updates for help-text contract