goose icon indicating copy to clipboard operation
goose copied to clipboard

Standardize CLI argument flags and update documentation

Open wpfleger96 opened this issue 1 month ago • 1 comments

This PR establishes consistent flag naming patterns across all Goose CLI commands, eliminating confusion around --id vs --session-id, conflicting short flags, and mismatched documentation. Previously, session commands mixed --id and --session-id, the --name flag had a misleading id alias, and schedule commands lacked short flags entirely.

Before this change, users encountered inconsistent flag names across commands, making it unclear when to use --id versus --session-id. The Identifier struct's --name flag incorrectly aliased to id, and the -p short flag conflicted between path and working_dir usage. Schedule commands used generic --id, and documentation showed flags that didn't match the actual implementation.

  • Updated Identifier struct to use alias = "id" on --session-id (instead of on --name), removed -p short flag from legacy --path parameter, and kept -n for name
  • Changed SessionCommand::Remove to use --session-id and separate --name flag, updating handle_session_remove to accept three distinct parameters
  • Renamed all schedule command flags from --id to --schedule-id with -i short flag, updating handlers in schedule.rs
  • Fixed SessionCommand::List working_dir to use -w with -p as backward-compatible alias, and SessionCommand::Diagnosticssession-id to use-i`
  • Updated help strings to clarify "recurring scheduled job" for schedule-id and fixed session --resume help to reference --session-id instead of --path
  • Marked ServicesStatus and ServicesStop commands as [Deprecated]
  • Added "Flag Naming Conventions" section to documentation and updated all examples to reflect standardized patterns

Type of Change

  • [ ] Feature
  • [ ] Bug fix
  • [x] Refactor / Code quality
  • [ ] Performance improvement
  • [ ] Documentation
  • [ ] Tests
  • [ ] Security fix
  • [ ] Build / Release
  • [ ] Other (specify below)

wpfleger96 avatar Oct 31 '25 22:10 wpfleger96

PR Preview Action v1.6.0 :---: Preview removed because the pull request was closed. 2025-11-06 23:13 UTC

github-actions[bot] avatar Oct 31 '25 22:10 github-actions[bot]

Thanks @wpfleger96! Would you also be able to update the feature docs that reference the changed flags? Specifically:

  • guides/recipes/session-recipes.md): --id → --schedule-id
  • troubleshooting/diagnostics-and-reporting.md: --id → --session-id

It would be better to show the new canonical flag names even though the old flags still work via aliases.

dianed-square avatar Nov 06 '25 20:11 dianed-square

@dianed-square great catch thank you! just updated those feature docs and a couple more places I found while testing

wpfleger96 avatar Nov 06 '25 22:11 wpfleger96