Conversation
Review carefully before merging. Consider a major version bump. |
There was a problem hiding this comment.
Pull request overview
This PR refines the root command and fizzy commands UX to provide a more concise root help while maintaining a comprehensive command catalog. When running bare fizzy, the CLI now returns concise TTY help or quick-start JSON for non-TTY environments, similar to the Basecamp CLI. The full command catalog has been moved to fizzy commands (with cmds alias) with grouped display, filtering support, and optional action detail views.
Changes:
- Bare
fizzyinvocation now returns concise help for TTY or quick-start JSON for non-TTY (no banner on root) fizzy commandscommand now supports filtering by name/description, with categorized display and action lists- Root help reorganized into four categories (core, collaboration, getting-started, discover) instead of all commands
- Full command catalog (
fizzy commands --json) maintains comprehensive organization (core, collaboration, admin, utilities) - Animated banner moved to interactive setup/signup flows only
Reviewed changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| internal/commands/root.go | Added RunE handler (runRootDefault) to bare root command |
| internal/commands/quickstart.go | New file with quick-start JSON response structure and logic |
| internal/commands/help.go | Removed banner from root help, simplified root command groups, added "LEARN MORE" reference to full catalog |
| internal/commands/help_test.go | Updated root help test to verify new section headings and content |
| internal/commands/commands.go | Added filter support, human-readable catalog rendering, category assignments, and cmds alias |
| internal/commands/commands_test.go | Updated and added tests for catalog rendering and filtering |
| internal/commands/format_test.go | Added test for bare root non-TTY JSON response |
| SURFACE.txt | Added cmds command/alias and filter argument references |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Summary
fizzybehave more likebasecamp, with concise TTY help and quick-start JSON for non-TTY usefizzy commands, with grouped TTY output and filtered detail on demandTesting
Summary by cubic
Refines the root UX and command catalog. Bare
fizzyshows concise help in TTY and returns a quick‑start JSON for non‑TTY. The full catalog lives underfizzy commandswith grouping, filtering, action hints, and JSONcategory.New Features
fizzy commands [filter](aliascmds): grouped, styled TTY catalog; when filtered, shows subcommand actions;--jsonreturns a structured catalog withcategory; filter matches names/paths/descriptions and sorts items.fizzy(non‑TTY): quick‑start JSON with version, auth status/profile/account, board context, suggested commands, and breadcrumbs; TTY shows concise help.Refactors
setup/signup); deleted the unused banner helper.--json,--jq,--quiet,--profile,--verbose), and clearer guidance to usefizzy commands; addedcmdsand its flags to the public surface.Written for commit acc3975. Summary will update on new commits.