Speeds up pi_agent_rust development and verification workflows. Use when editing providers, tools, sessions, extensions, installer/uninstaller logic, or triaging regressions in this repo.
pi_agent_rust and need the fastest path to safe, verified edits.export CARGO_TARGET_DIR="/data/tmp/pi_agent_rust/${USER:-agent}"
export TMPDIR="/data/tmp/pi_agent_rust/${USER:-agent}/tmp"
mkdir -p "$TMPDIR"
rch exec -- cargo check --all-targets
rch exec -- cargo clippy --all-targets -- -D warnings
cargo fmt --check
bash tests/installer_regression.sh| Symptom | First 3 Commands |
|---|---|
| Provider stream/tool-call regression | cargo test --test provider_streaming -- --nocapture ; `rg -n "stream |
| Session replay/index drift | cargo test session -- --nocapture ; `rg -n "Session |
| Extension policy/runtime failure | cargo test extension -- --nocapture ; `rg -n "policy |
| Installer/uninstaller/skill issue | bash tests/installer_regression.sh ; `rg -n "AGENT_SKILL_STATUS |
| Interactive vs RPC divergence | cargo test --test e2e_rpc -- --nocapture ; `rg -n "interactive |
For deeper diagnosis, use references/DEBUGGING-PLAYBOOKS.md.
AGENTS.md first, then follow it exactly.main semantics in docs/scripts; do not introduce master.rg for fast text recon and ast-grep for structural matching/refactors.rch exec -- <cargo ...> for heavy compile/test workloads.README.md when flags/behavior/user guidance changed.| Changed Files (examples) | Minimum Required Tests |
|---|---|
install.sh, uninstall.sh, .claude/skills/pi-agent-rust/** | bash -n install.sh uninstall.sh tests/installer_regression.sh ; shellcheck -x install.sh uninstall.sh tests/installer_regression.sh ; bash tests/installer_regression.sh ; bash scripts/skill-smoke.sh |
src/providers/**, src/provider.rs, src/sse.rs | cargo test --test provider_streaming ; cargo test --test e2e_provider_streaming ; cargo test conformance |
src/session.rs, src/session_index.rs, src/session_test.rs | cargo test session ; cargo test conformance |
src/extensions.rs, src/extensions_js.rs | cargo test extension ; cargo test conformance |
src/tools.rs | cargo test tools ; cargo test conformance |
src/interactive.rs, src/rpc.rs, src/main.rs | cargo test --test e2e_rpc ; cargo test conformance |
Run these only after targeted repro + focused slice indicates need:
cargo test across entire workspace when a narrower slice already reproduces.# Fast recon
git status --short
rg -n "install|uninstall|skill|checksum|sigstore|completion|provider|session|extension" \
install.sh uninstall.sh README.md tests/installer_regression.sh src/
# Installer + skill safety gates
bash -n install.sh uninstall.sh tests/installer_regression.sh
shellcheck -x install.sh uninstall.sh tests/installer_regression.sh
bash tests/installer_regression.sh
bash scripts/skill-smoke.sh
# Rust gates
rch exec -- cargo check --all-targets
rch exec -- cargo clippy --all-targets -- -D warnings
cargo fmt --checkFor an expanded command cookbook, see references/COMMANDS.md.
For deep incident triage, see references/DEBUGGING-PLAYBOOKS.md.
src/main.rs: CLI entry and mode dispatch.src/agent.rs: agent loop and tool iteration behavior.src/provider.rs: provider trait contract.src/providers/: provider implementations and factory wiring.src/tools.rs: built-in tools (read, write, edit, bash, grep, find, ls).src/session.rs: JSONL session persistence.src/session_index.rs: session index and metadata cache.src/extensions.rs + src/extensions_js.rs: extension policy and QuickJS bridge.src/interactive.rs + src/rpc.rs: TUI and RPC/stdin surfaces.install.sh + uninstall.sh: install lifecycle, migration, and skill management.tests/installer_regression.sh: installer regression harness.scripts/skill-smoke.sh: skill integrity + inline-sync validation.# BEFORE: everything collapsed into "skipped custom"
if [ "$skipped_custom" -ge 1 ]; then
AGENT_SKILL_STATUS="skipped (existing custom skill)"
fi
# AFTER: distinguish custom-skip from write failure
if [ "$skipped_custom" -ge 1 ] && [ "$failed_writes" -ge 1 ]; then
AGENT_SKILL_STATUS="partial (custom skill kept; other install failed)"
elif [ "$skipped_custom" -ge 1 ]; then
AGENT_SKILL_STATUS="skipped (existing custom skill)"
fi# BEFORE: remove destination before validating copy result
rm -rf "$destination"
cp "$source" "$destination/SKILL.md"
# AFTER: stage then atomically move into place
staged="$(mktemp -d ...)"
cp "$source" "$staged/SKILL.md"
mv "$staged" "$destination"AGENT_SKILL_STATUS, CHECKSUM_STATUS, and COMPLETIONS_STATUS in install.sh.references/DEBUGGING-PLAYBOOKS.md.README.md flags/examples match current installer behavior.tests/installer_regression.sh and scripts/skill-smoke.sh.Dicklesworthstone/pi_agent_rust
8526f60
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.