Skip to main content

Verification

Use this page before publishing changes.

Python Core

Style, lint, and type-check the Python surface:

ruff format --check .
ruff check .
ty check --extra-search-path core

Ty is currently scoped to the core runtime and the CLI compatibility shim in the repo-level pyproject.toml.

GitHub Actions runs these Python quality checks on every push and pull request through .github/workflows/python-quality.yml.

Run the Python unit tests:

PYTHONPATH=core .venv/bin/python -m unittest discover core/tests

Targeted tests:

PYTHONPATH=core .venv/bin/python -m unittest core.tests.test_runtime_integration
PYTHONPATH=core .venv/bin/python -m unittest core.tests.test_history_integration
PYTHONPATH=core .venv/bin/python -m unittest core.tests.test_llm_context
PYTHONPATH=core .venv/bin/python -m unittest core.tests.test_help_agent

Rust CLI

cargo fmt --manifest-path cli/Cargo.toml -- --check
cargo clippy --manifest-path cli/Cargo.toml --all-targets -- -D warnings
cargo test --manifest-path cli/Cargo.toml
cargo check --manifest-path cli/Cargo.toml

If formatting or Clippy are missing from a local Rust toolchain, install them with:

rustup component add rustfmt clippy

Runtime diagnostics:

cargo run --manifest-path cli/Cargo.toml -- check

No-model smoke test:

PROTOAGENT_SCAFFOLD=1 cargo run --manifest-path cli/Cargo.toml -- run "show diagnostics"

Docusaurus Docs

cd docs
npm install
npm run build

Local preview:

npm run start

The generated build output is ignored at docs/build/.

End-To-End Debug Artifact

For shareable failing-run evidence:

PROTOAGENT_TRACE=1 cargo run --manifest-path cli/Cargo.toml -- run "your failing task" 2>&1 | tee /tmp/protoagent-debug.txt
tail -n 80 "${PROTOAGENT_CONFIG_DIR:-$HOME/.protoagent}/traces.jsonl"

Attach both /tmp/protoagent-debug.txt and the trace tail if available.