Skip to content

Add agent-native CLI surface and conform the Texinfo manual (SFRS v1.0.0) - #1

Merged
UnbreakableMJ merged 1 commit into
mainfrom
cli-standard-and-texinfo-conformance
Jun 21, 2026
Merged

Add agent-native CLI surface and conform the Texinfo manual (SFRS v1.0.0)#1
UnbreakableMJ merged 1 commit into
mainfrom
cli-standard-and-texinfo-conformance

Conversation

@UnbreakableMJ

Copy link
Copy Markdown
Contributor

Brings Vacuum into conformance with the Spacecraft Software Dual-Mode Self-Documenting CLI Standard (SFRS v1.0.0) and the Texinfo house style, using the spacecraft-cli-standard, spacecraft-agentic-cli, and spacecraft-texinfo skills.

CLI surface

  • Structured machine-mode errors on stderr with canonical exit codes (SFRS §4: 2 usage, 4 safety refusal, 127 missing tool, …) and runnable "tips-thinking" hints — new vacuum-cli/src/error.rs.
  • Self-documenting subcommands schema + describe (new introspect.rs); schema emits raw JSON Schema (Draft 2020-12), droppable into Anthropic/MCP function-calling.
  • Token economy: compact JSON when piped (pretty only on a TTY), optional fields omitted when absent, --fields projection, --format jsonl streaming. Added --verbose/--quiet, --force alias, --format explore.
  • Integration tests expanded 5 → 12.

Texinfo manual

  • Resolves a pre-existing license mismatch: the manual is now consistently CC-BY-SA-4.0 per Standard §4.1.1 (header + @copying), with LICENSES/CC-BY-SA-4.0.txt added and a scoped doc/*.texi carve-out in REUSE.toml (software-class spacecraft.css stays GPL).
  • Adds @documentlanguage, dated attribution, and four chapters documenting the agent surface (output modes, exit codes, errors/hints, agent integration).
  • House HTML theme + A4 PDF wired into the Makefile.

Repo artifacts

  • New SKILL.md; refreshed AGENTS.md CLI-conformance section.

⚠️ One decision to confirm

The manual is treated as CC-BY-SA-4.0 (document-class) rather than GPL, resolving the header/@copying mismatch in favor of Standard §4.1.1. If the repo should stay uniformly GPL, revert the REUSE.toml carve-out + .texi SPDX tag and align @copying to GPL instead.

Gate

cargo fmt · clippy -D warnings · cargo test --workspace (12 pass) · reuse lint · zero-warning makeinfo build — all green. Commit is signed/verified (§6.3).

🤖 Generated with Claude Code

…0.0)

CLI (spacecraft-cli-standard + spacecraft-agentic-cli):
- Structured machine-mode errors on stderr with canonical exit codes and
  runnable "tips-thinking" hints (new vacuum-cli/error.rs). Exit codes follow
  the SFRS §4 map (2 usage, 4 safety refusal, 127 missing tool, …).
- Self-documenting `schema` and `describe` subcommands (new introspect.rs);
  `schema` emits raw JSON Schema (Draft 2020-12), Anthropic/MCP-ready.
- Token economy: compact JSON when piped (pretty only on a TTY), optional
  fields omitted when absent, `--fields` projection, `--format jsonl`
  streaming; added `--verbose/--quiet`, `--force` alias, `--format explore`.
- Expanded integration tests 5 → 12 covering schema, describe, --fields,
  jsonl, structured-error hints, and the non-interactive confirmation guard.

Docs (spacecraft-texinfo):
- Resolve the manual's license mismatch: consistently CC-BY-SA-4.0 per
  Standard §4.1.1 (header + @copying), add LICENSES/CC-BY-SA-4.0.txt and a
  scoped doc/*.texi carve-out in REUSE.toml.
- Add @documentlanguage, dated attribution, and chapters documenting the
  agent surface (output modes, exit codes, errors/hints, agent integration).
- House HTML theme (spacecraft.css) and A4 PDF in the Makefile.

Repo artifacts: add SKILL.md; refresh AGENTS.md CLI-conformance section.

Gate: cargo fmt/clippy -D warnings/test --workspace, reuse lint, and a
zero-warning makeinfo build all pass.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@UnbreakableMJ
UnbreakableMJ merged commit 682b014 into main Jun 21, 2026
2 checks passed
@UnbreakableMJ
UnbreakableMJ deleted the cli-standard-and-texinfo-conformance branch June 21, 2026 10:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant