Repository navigation
Default CLI operations to JSON and streamline agent guidance - #11
Merged
Merged
Conversation
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.
Operational CLI commands currently require agents to add
--jsonto get structured results. Default success and error output to JSON, retain--jsoncompatibility, and add explicit--humanoutput. Help stays readable by default with structured discovery available through--json --help; event streams use NDJSON and progress stays on stderr.Separate help/stream output handling from human text so empty event lists return a JSON envelope without a prose sentinel and streams do not produce duplicate final results. Remove redundant flags from agent-facing recovery commands, catalogs, and examples.
Validation: public/vendor checks, typecheck, lint, mock smoke, package dry-run/release checks, and clean npm installation passed during implementation. Full local suite: 577 passed, five unchanged compose tests failed because Liberation fonts are unavailable, one extractor integration test skipped. After updating guidance strings, 217 focused tests passed. Added six tests covering default output, help, errors, conflicting flags, terminal independence, and streams.
No API or vendor contract changes. This changes default output for callers that previously expected prose; those callers should use
--human. Existing explicit--jsoncallers remain compatible. Live-server and player checks were not run.