Skip to content

Contributing commands

Add or change a command as one coherent contract:

  1. Register adapter syntax and validation without embedding domain behavior in the CLI layer.
  2. Add or update the authoritative descriptor: exact path, aliases, arguments/options, capability, artifact family, authorization, mutation posture, effects, confirmation, selection, idempotency, preconditions, transition, and examples.
  3. Use shared success and typed-error envelopes; preserve writeOutcome, recovery actions, findings, completeness, and lane metadata.
  4. For writes, define selected scope, atomicity or partial-state handling, rollback, and expected postconditions. Never label network or host effects as filesystem-only.
  5. Run descriptor/runtime/tool-manifest drift validation and focused command tests, including expected failures and exit codes.
  6. Assign the command to the public reference and regenerate the machine inventory from current compiled output.

Use commands search, commands describe, commands manifest, and commands validate while developing. Review the architecture, decision, and automation contract before opening the change.