Conversation
An unknown command (e.g. `polylane setup` on an old bundle) printed the full ~46-line root help. It now prints a two-line error with exit 2, in both text and JSON output. `polylane help <unknown>` shared the same path and gets the same fix.
One verb family for auth state (signed in/out), spinner labels with a real ellipsis, singular/plural interpolation, and every dead-end error now names the next command. ERRORS.md rows updated to match.
boristane
marked this pull request as ready for review
July 24, 2026 04:43
boristane
approved these changes
Jul 24, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Requested by boris · Slack thread
Before: an unknown command — including
polylane setupon old bundles — dumped the full ~46-line root help. After: a 2-line error (Error: Unknown command: polylane setup/Hint: Run \polylane --help` to list commands), exit 2, JSON envelope when piped.polylane helpshared the path and gets the same fix. This is the CLI-side root cause; it doesn't conflict with the installer'ssetup --help` probe.How: reviewed every human-facing string (help, prompts, spinners, receipts, warnings, errors). One verb family for auth state, spinners end in
…, dead-end errors converted toCLIErrorwith the exact next command,account(s)pluralization fixed. Root help unchanged; JSON/parseable output untouched. ERRORS.md synced; tests added for the unknown-command error and setup's unknown-agent error. Codegen, typecheck, lint, tests (117), build all pass.Unknown command: polylane setup+ 46 lines of helpUnknown command: polylane setup+ hint, 2 linesNot logged in./Authenticated as …/Logged outNot signed in./Signed in as …/Signed outUnauthorized - check your API key(401)Not authenticatedRefusing to disconnect without --yes in non-interactive modeConfirmation required+Re-run with --yes to disconnect <id>No workspace matching "x"(bare, exit 1)List workspaces with \polylane workspace list``How would you like to authenticate?Sign in withWaiting for assistant on thrd_xWaiting for reply on thrd_x…3 account(s) failed to connect3 accounts failed to connect🤖 Generated with Claude Code
https://claude.ai/code/session_016f5mrz553qSn9DoBJLoAzb
Generated by Claude Code