About this standard

The agent-native CLI standard is a specification for command-line tools that behave predictably under agent control. Eight principles, enforced by RFC 2119 requirement tiers (MUST / SHOULD / MAY), and measured by a companion linter (anc) that scores any CLI against them.

Provenance

This spec is authored and maintained in the open by Brett Davies, with contributions accepted via the channels below. It is a proposal pressure-tested in public, not a ratified industry standard. The goal is to converge on something worth ratifying, by writing it down concretely first and inviting people to break it.

Prior art

The eight-principle structure draws on two distinct lineages.

Standards and methodologies that shaped the format:

Writing that informed the principles directly:

If a specific principle's framing seems to echo prior writing, it probably does. Credit accrues to the people whose public reasoning informed it; mistakes are mine.

Versioning

The spec uses semver-adjacent versioning with three tiers: MAJOR changes break citation IDs or remove MUSTs; MINOR changes add MUSTs or promote SHOULDs; PATCH changes edit prose without shifting requirements. The current version appears in the footer of every page.

Principle anchor slugs (#p1-non-interactive-by-default through #p8-discoverable-skill-bundle) are permanent. If a principle merges or splits in a future MAJOR version, the old slug will resolve as a permanent redirect to wherever the requirement now lives; citations made today will not 404 after a future restructuring.

RFC 2119

MUST, SHOULD, MAY, MUST NOT, and SHOULD NOT on this site carry their RFC 2119 meanings. They are not emphatic; they are contractual. A tool that does not satisfy a MUST is non-conformant with the version of the standard it claims to target.

License

Spec text on this site is available under CC BY 4.0. The anc linter is dual-licensed under MIT and Apache-2.0; see its LICENSE files.

Contributing

Pressure-testing is how the spec evolves. Three ways to contribute:

  1. Submit a grading finding: score a real CLI against a principle you think the spec gets wrong, and report what you found. Name the CLI, the principle, and the specific MUST/SHOULD/MAY that failed (or passed unexpectedly).

Report a false positive or false negative: in the anc auditor. Include the command, the output, and the audit ID. 3. Propose a principle edit: merge, split, rewording, demotion of a MUST to a SHOULD. Describe the problem before proposing a solution. 4. Add a tool to the registry: propose a CLI for inclusion on the anc.dev/scorecards leaderboard. Include the install command, the source repo, and (optionally) the result of a fresh anc audit run.

For full routing guidance, see the spec repo's CONTRIBUTING.md.

Colophon

Built with Cloudflare Workers. Typeset in Uncut Sans and Monaspace Xenon. Source: github.com/brettdavies/agentnative-site.