"Contributor hub"

Contributor hub

This page is the reader-facing entry point for contributor documentation.

If you are evaluating Vox as a language or product, start with the site landing page, the FAQ, and the tutorials. If you are changing this repository, start here.

Start here

Contributor map

Use these surfaces intentionally:

NeedStart with
Secrets, credentials, env parityAGENTS.md, Clavis SSOT
Agent behavior consistency across long sessions and IDEsAgent instruction architecture, Continuation prompt engineering
Antigravity-specific overridesGEMINI.md, Agent instruction architecture
Terminal shell discipline, exec-policy, vox shell checkAGENTS.md, CLI reference (vox shell), Terminal AST validation research 2026, contracts/terminal/exec-policy.v1.yaml
CLI or command-surface changesCLI reference, CLI design rules SSOT, Capability registry SSOT, Command compliance
Documentation updates or new docsDocumentation governance, Doc-to-code acceptance checklist
Telemetry, metrics, privacy boundariesTelemetry trust SSOT, research findings 2026, implementation blueprint 2026, implementation backlog 2026
Architecture or roadmap contextArchitecture index, Research index
Contracts and schema-backed behaviorcontracts/README.md, related reference pages under docs/src/reference/
MCP, HTTP, Populi mesh, SSE, WebSocketsCommunication protocols, protocol catalog; research Protocol convergence research 2026
CI, workflow, or policy guardrailsCI runner contract, Pre-push local CI parity (below), Architectural governance (TOESTUB)
VS Code / Cursor extension, MCP tool calls from the editor, Oratio speech UXvox-vscode/README.md, VS Code ↔ MCP compatibility, Speech capture architecture

Fast local policy rerun for this lane:

  • vox ci policy-smoke runs cargo check -p vox-orchestrator, then command-compliance and the same rust ecosystem parity test used by vox ci rust-ecosystem-policy in one command.

Pre-push: local CI parity

CI on main / PRs is defined in .github/workflows/ci.yml. The job does not rely on a lone cargo check -p vox-cli; it runs cargo clippy --workspace --all-targets, cargo doc --workspace --no-deps (with warnings denied), cargo llvm-cov nextest --workspace, and many vox ci * guards. Before pushing, run a high-signal subset so failures match CI instead of showing up only on the runner.

Suggested commands (from repo root; use full cargo path on Windows agents if PATH is minimal — see AGENTS.md):

cargo fmt --all -- --check
cargo clippy --workspace --all-targets -- -D warnings
cargo run -p vox-cli --quiet -- ci ssot-drift

Then run tests for crates you changed (faster than a full workspace test pass):

cargo test -p vox-db --test schema_contract_tests   # example; pick your crates

TOESTUB on changed directories (requires the stub-check feature on vox-cli):

cargo run -p vox-cli --features stub-check --quiet -- stub-check crates/vox-mcp

Use a single positional path per invocation (repeat for each directory). See Architectural governance (TOESTUB).

vox_db::legacy_schema warnings during stub-check: if stderr mentions schema_version chain is not the current baseline, the harness opened the canonical Codex store resolved from your environment (usually the platform default vox.db when VOX_DB_PATH is unset). Fix by either completing Stage 1 in the VoxDB cutover runbook for that file, or — when you do not need to keep data — point VOX_DB_PATH at a fresh scratch .db per the runbook section Contributors / local tooling — fresh canonical DB (connect_default does not use :memory: when env is empty). Do not lower BASELINE_VERSION to silence the log.

Codex + docs SSOT: vox ci check-codex-ssot and vox ci check-docs-ssot are merge-blocking in CI (see .github/workflows/ci.yml). Run check-codex-ssot locally after changing contracts/db/baseline-version-policy.yaml or crates/vox-db/src/schema/manifest.rs. Run check-docs-ssot when you change doc inventories, canonical maps, or migration-facing docs.

Contributor expectations

  • Prefer updating the canonical surface instead of copying prose into a second location.
  • When code changes alter public behavior, update the corresponding docs in the same PR.
  • Treat contracts/ as machine SSOT, docs/src/reference/ as human lookup, docs/src/architecture/ as design and rationale, and docs/agents/ as contributor and automation support.
  • Use vox ci guards where they exist instead of replacing them with one-off shell checks.