Getting started
Hard Fault uses uv as its canonical environment
and command surface. The team interpreter is pinned to Python 3.12 via
.python-version.
1. Install uv
Section titled “1. Install uv”uv is not assumed to exist on a raw machine — install it first.
# macOSbrew install uv
# Windows / Linuxpip install uv2. Sync the environment
Section titled “2. Sync the environment”From the repository root:
uv syncThis creates .venv/ and installs the locked dependency set. Run repo commands
with uv run … so they always execute inside the pinned environment.
3. Run your first task
Section titled “3. Run your first task”Point the agent at a board on your bench and give it a task:
uv run pyocd-debug run \ --board-id nrf52833dk \ --task "Verify this reference firmware is healthy and explain why."pyocd-debug is the operator shell. For scripted or headless runs, use the
turnkey CLI instead:
uv run pyocd-debug-brain run \ --board-id nrf52833dk \ --task "Diagnose this board interaction."Configuration
Section titled “Configuration”Runtime configuration is read from environment variables (and an optional,
git-ignored .env). The most important one is the provider backend:
# openai-api | anthropic-api | codex-cli | claude-cliPYOCD_TURNKEY_PROVIDER=codex-cliSee Providers & auth for the full list and how to authenticate each backend.
Before your first run against new hardware, walk through Bench bring-up to validate the host and the board.