Local-first Agent Mission Control for OpenClaw and Codex operators.
ClawPerch is a desktop control surface for developers running multiple local coding agents. It gives you a compact fleet view, source-health checks, release-readiness evidence, and a guarded Command Broker without letting the UI read raw provider data or execute dangerous commands directly.
- Product homepage
- V5 desktop MVP plan
- Release notes
- Manual QA checklist
- Real-source provider guidance
pnpm install
pnpm --filter @clawperch/desktop dev
pnpm verify:phase37-release-evidence-glossary-crosswalk-gateOpen the local desktop app in fixture mode first. Fixture mode is the verified baseline: deterministic Runtime Snapshot data, compact Agent rows, read-only release evidence, and blocked dangerous-command paths.
| Need | What ClawPerch provides |
|---|---|
| Watch many agents without losing context | Compact Agent Mission Control rows, filters, detail drawer, task pipeline, and activity stream. |
| Keep local runtime data behind a boundary | A Runtime Adapter emits validated clawperch.agent-runtime-state.v2 snapshots after privacy cleaning. |
| Preview operator actions safely | Command Broker classifies safe, guarded, unknown, and dangerous commands; dangerous commands stay blocked. |
| Prove release readiness without raw artifacts | Phase 8-37 gates generate and verify sanitized static evidence instead of storing raw logs, prompts, or provider payloads. |
- Phase 0 through Phase 37 are complete on
main. - The latest release-readiness slice is Phase 37 Release Evidence Glossary Crosswalk.
- The active product surface is a local Tauri desktop MVP under
apps/desktop/. - The default runtime path remains fixture mode; real providers are disabled by default.
Prerequisites:
- Node.js with
[email protected] - Rust toolchain for Tauri/Cargo checks
- Python 3 for adapter and release-gate verifiers
- Playwright Chromium dependencies for E2E/release checks
pnpm installpnpm --filter @clawperch/desktop devUseful local checks:
pnpm --filter @clawperch/desktop test -- --run releaseReadiness SettingsPanel
pnpm --filter @clawperch/desktop typecheck
pnpm --filter @clawperch/desktop build
python3 -m pytest packages/runtime-adapter/py/tests -q
pnpm validate:runtime-fixturesTauri Desktop App
├─ React Mission Control UI
├─ Runtime Snapshot contract validation
├─ Local SQLite persistence for sanitized state
├─ Python Runtime Adapter package
├─ Command Broker safety boundary
└─ Release-readiness evidence gates
The frontend consumes validated Runtime Snapshots. It does not directly read OpenClaw, Codex session stores, local scanners, logs, or filesystem sources.
| Mode | Status | Purpose |
|---|---|---|
fixture |
Verified default | Deterministic MVP baseline for local development, E2E, release gates, and product demos. |
local-readonly |
Documented / guarded | Future read-only source integration path with allowlisted local roots and metadata-only output. |
local-guarded |
Documented / blocked for mutation | Future guarded-operations path; dangerous commands remain blocked. |
Blocked by design:
- Logs ingestion beyond checked-in fixture summaries.
- Local guarded mutations and dangerous command execution.
- Broad scanner access and local file-open behavior.
- Raw prompt, provider payload, command output, log body, secret, or unauthorized file-content retention.
- Export/archive behavior, external-link behavior, CI artifact upload, review-state persistence, drill-progress persistence, dependency-state persistence, FAQ-state persistence, and failure-state persistence.
Primary release-readiness gate:
pnpm verify:phase37-release-evidence-glossary-crosswalk-gateBroader release candidate checks:
pnpm verify:v5-local
pnpm verify:v5-release
pnpm verify:phase8-release-gate
pnpm verify:sensitive| Path | Purpose |
|---|---|
apps/desktop/ |
Tauri + React desktop app. |
packages/runtime-contract/ |
Runtime Snapshot schema, types, and validators. |
packages/runtime-adapter/ |
Python adapter package and deterministic fixtures. |
docs/release/ |
Sanitized release metadata, evidence, QA, and notes. |
docs/superpowers/ |
Phase specs and implementation plans. |
scripts/ |
Verification gates and metadata generators. |
pnpm verify:phase8-release-gateThe Phase 8 gate consolidates provider guidance, adapter privacy probes, fixture determinism, source health history, Playwright fixture journeys, production build marker scanning, Command Broker dangerous-block regression, and raw log/path/prompt leak checks. It does not enable logs ingestion, local-guarded mutations, or dangerous command execution.
pnpm verify:phase9-diagnostics-gateThe Phase 9 gate proves diagnostic retention is visible and bounded: Runtime Snapshot and adapter-run summary counts stay under the configured retention limit, raw payload retention remains blocked, Settings renders sanitized diagnostic status, sensitive-marker scanning stays green, and Command Broker dangerous commands remain blocked. It does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, or raw provider payload persistence.
pnpm verify:phase10-ci-gateThe Phase 10 gate verifies GitHub Actions release-gate wiring: pull requests and branch pushes run the fast Phase 9 safety gate, while main and manual runs also execute the heavier Phase 8 read-only real-source gate after installing Playwright Chromium dependencies. It moves sensitive-marker scanning and dangerous-command blocking into CI without enabling logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, age-based retention, or raw provider payload persistence.
pnpm verify:phase11-age-retention-gateThe Phase 11 gate proves sanitized Runtime Snapshots and adapter-run summaries are pruned by both count and age, Settings renders the active age policy without raw payloads, the Phase 9 upstream safety gate remains green, and sensitive-marker scanning still passes. It does not enable logs ingestion, local-guarded mutations, dangerous commands, broad scanner access, or raw provider payload persistence.
pnpm verify:phase12-safety-manifest-gateThe Phase 12 gate proves sanitized release-gate evidence can be generated without retaining raw command output, raw provider payloads, local paths, prompts, logs, scanner file contents, or adapter stdout/stderr. It records Phase 8/9/10/11 gate status metadata and keeps logs ingestion, local-guarded mutations, dangerous commands, broad scanner access, new retention behavior, and raw provider payload persistence blocked.
pnpm verify:phase13-ci-safety-refresh-gateThe Phase 13 gate proves CI runs the latest Phase 9/11/12 fast safety chain and keeps Phase 8 on main/manual paths without enabling new runtime capabilities or uploading raw artifacts.
pnpm verify:phase14-safety-chain-gateThe Phase 14 gate proves local safety-gate evidence records the latest pnpm verify:phase13-ci-safety-refresh-gate, pnpm verify:phase12-safety-manifest-gate, pnpm verify:phase11-age-retention-gate, pnpm verify:phase10-ci-gate, pnpm verify:phase9-diagnostics-gate, and pnpm verify:phase8-release-gate chain without retaining raw outputs, uploading artifacts, or enabling logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, or raw provider payload persistence.
pnpm verify:phase15-safety-handoff-gateThe Phase 15 gate proves README, task status, checklist, and next-startup prompt stay synchronized with the latest Phase 14/13/12/11/10/9/8 safety chain and blocked-scope reminders. It does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, or any runtime capability.
pnpm verify:phase16-safety-index-gateThe Phase 16 gate proves docs/release/clawperch-v5-safety-gate-index.json, package scripts, README, task status, checklist, next-startup prompt, and upstream pnpm verify:phase15-safety-handoff-gate, pnpm verify:phase14-safety-chain-gate, pnpm verify:phase13-ci-safety-refresh-gate, pnpm verify:phase12-safety-manifest-gate, pnpm verify:phase11-age-retention-gate, pnpm verify:phase10-ci-gate, pnpm verify:phase9-diagnostics-gate, and pnpm verify:phase8-release-gate labels stay synchronized. It does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, or any runtime capability.
pnpm verify:phase17-release-readiness-gateThe Phase 17 gate proves Settings renders a read-only release-readiness summary from static checked-in metadata aligned to the Phase 16 safety-gate index. It does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, or any runtime capability.
pnpm verify:phase18-release-readiness-sync-gateThe Phase 18 gate proves the Settings release-readiness static metadata is generated from the checked-in Phase 16 safety-gate index and remains synchronized through an offline --check verifier. It does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, or any runtime capability.
pnpm verify:phase19-release-readiness-history-gateThe Phase 19 gate proves Settings renders a sanitized release-readiness history generated from checked-in release metadata and the existing safety-gate index. It remains static and read-only: no logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, or runtime capability is enabled.
Phase 19 history rendering is explicit: run python3 scripts/generate_phase18_release_readiness_metadata.py --include-history or --include-history --check for the full Settings metadata. The Phase 18 --check path remains base-only so Phase 18 does not depend on the optional Phase 19 history snapshot.
pnpm verify:phase20-release-readiness-review-gateThe Phase 20 gate proves Settings renders a static release-readiness review checklist generated from checked-in release metadata, the Phase 16 safety-gate index, and the Phase 19 history snapshot. It remains static and read-only: it does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, or runtime capability.
Phase 20 review rendering is explicit: run python3 scripts/generate_phase18_release_readiness_metadata.py --include-history --include-review or --include-history --include-review --check for the full Settings metadata. The Phase 18 base --check path and Phase 19 --include-history --check path remain independent from the optional Phase 20 review checklist.
pnpm verify:phase21-release-boundary-matrix-gateThe Phase 21 gate proves Settings renders a static release-readiness boundary matrix generated from checked-in release metadata, the Phase 16 safety-gate index, the Phase 19 history snapshot, and the Phase 20 review checklist. It remains static and read-only: it does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, or runtime capability.
Phase 21 boundary rendering is explicit: run python3 scripts/generate_phase18_release_readiness_metadata.py --include-history --include-review --include-boundary or --include-history --include-review --include-boundary --check for the full Settings metadata. The Phase 18 base --check path, Phase 19 --include-history --check path, and Phase 20 --include-history --include-review --check path remain independent from the optional Phase 21 boundary matrix.
pnpm verify:phase22-release-handoff-packet-gateThe Phase 22 gate proves Settings renders a static release handoff packet generated from checked-in release metadata, the Phase 16 safety-gate index, the Phase 19 history snapshot, the Phase 20 review checklist, the Phase 21 boundary matrix, release notes, manual QA checklist, and the next-startup prompt. It remains static and read-only: it does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, file export, archive creation, or runtime capability.
Phase 22 handoff rendering is explicit: run python3 scripts/generate_phase18_release_readiness_metadata.py --include-history --include-review --include-boundary --include-handoff or --include-history --include-review --include-boundary --include-handoff --check for the full Settings metadata. The Phase 18 base --check path, Phase 19 --include-history --check path, Phase 20 --include-history --include-review --check path, and Phase 21 --include-history --include-review --include-boundary --check path remain independent from the optional Phase 22 handoff packet.
pnpm verify:phase23-release-risk-register-gateThe Phase 23 gate proves Settings renders a static release risk register generated from checked-in release metadata, the Phase 16 safety-gate index, the Phase 19 history snapshot, the Phase 20 review checklist, the Phase 21 boundary matrix, the Phase 22 handoff packet, release notes, and manual QA checklist. It remains static and read-only: it does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, file export, archive creation, or runtime capability.
Phase 23 risk rendering is explicit: run python3 scripts/generate_phase18_release_readiness_metadata.py --include-history --include-review --include-boundary --include-handoff --include-risk or --include-history --include-review --include-boundary --include-handoff --include-risk --check for the full Settings metadata. The Phase 18 base --check path, Phase 19 --include-history --check path, Phase 20 --include-history --include-review --check path, Phase 21 --include-history --include-review --include-boundary --check path, and Phase 22 --include-history --include-review --include-boundary --include-handoff --check path remain independent from the optional Phase 23 risk register.
pnpm verify:phase24-release-decision-summary-gateThe Phase 24 gate proves Settings renders a static release decision summary generated from checked-in release metadata, the Phase 16 safety-gate index, the Phase 19 history snapshot, the Phase 20 review checklist, the Phase 21 boundary matrix, the Phase 22 handoff packet, the Phase 23 risk register, release notes, and manual QA checklist. It remains static and read-only: it does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, file export, archive creation, or runtime capability.
Phase 24 decision rendering is explicit: run python3 scripts/generate_phase18_release_readiness_metadata.py --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision or --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --check for the full Settings metadata. The Phase 18 base --check path, Phase 19 --include-history --check path, Phase 20 --include-history --include-review --check path, Phase 21 --include-history --include-review --include-boundary --check path, Phase 22 --include-history --include-review --include-boundary --include-handoff --check path, and Phase 23 --include-history --include-review --include-boundary --include-handoff --include-risk --check path remain independent from the optional Phase 24 decision summary.
pnpm verify:phase25-release-operator-runbook-gateThe Phase 25 gate proves Settings renders a static release operator runbook generated from checked-in release metadata, the Phase 16 safety-gate index, the Phase 19 history snapshot, the Phase 20 review checklist, the Phase 21 boundary matrix, the Phase 22 handoff packet, the Phase 23 risk register, the Phase 24 decision summary, release notes, and manual QA checklist. It remains static and read-only: it does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, file export, archive creation, or runtime capability.
Phase 25 runbook rendering is explicit: run python3 scripts/generate_phase18_release_readiness_metadata.py --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook or --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --check for the full Settings metadata. The Phase 18 base --check path, Phase 19 --include-history --check path, Phase 20 --include-history --include-review --check path, Phase 21 --include-history --include-review --include-boundary --check path, Phase 22 --include-history --include-review --include-boundary --include-handoff --check path, Phase 23 --include-history --include-review --include-boundary --include-handoff --include-risk --check path, and Phase 24 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --check path remain independent from the optional Phase 25 operator runbook.
pnpm verify:phase26-release-troubleshooting-index-gateThe Phase 26 gate proves Settings renders a static release troubleshooting index generated from checked-in release metadata, the Phase 16 safety-gate index, the Phase 19 history snapshot, the Phase 20 review checklist, the Phase 21 boundary matrix, the Phase 22 handoff packet, the Phase 23 risk register, the Phase 24 decision summary, the Phase 25 operator runbook, release notes, and manual QA checklist. It remains static and read-only: it does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, file export, archive creation, or runtime capability.
Phase 26 troubleshooting rendering is explicit: run python3 scripts/generate_phase18_release_readiness_metadata.py --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting or --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --check for the full Settings metadata. The Phase 18 base --check path, Phase 19 --include-history --check path, Phase 20 --include-history --include-review --check path, Phase 21 --include-history --include-review --include-boundary --check path, Phase 22 --include-history --include-review --include-boundary --include-handoff --check path, Phase 23 --include-history --include-review --include-boundary --include-handoff --include-risk --check path, Phase 24 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --check path, and Phase 25 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --check path remain independent from the optional Phase 26 troubleshooting index.
pnpm verify:phase27-release-readiness-glossary-gateThe Phase 27 gate proves Settings renders a static release readiness glossary generated from checked-in release metadata, the Phase 16 safety-gate index, the Phase 19 history snapshot, the Phase 20 review checklist, the Phase 21 boundary matrix, the Phase 22 handoff packet, the Phase 23 risk register, the Phase 24 decision summary, the Phase 25 operator runbook, and the Phase 26 troubleshooting index. It remains static and read-only: it does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, file export, archive creation, external-link behavior, or runtime capability.
Phase 27 glossary rendering is explicit: run python3 scripts/generate_phase18_release_readiness_metadata.py --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary or --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --check for the full Settings metadata. The Phase 18 base --check path, Phase 19 --include-history --check path, Phase 20 --include-history --include-review --check path, Phase 21 --include-history --include-review --include-boundary --check path, Phase 22 --include-history --include-review --include-boundary --include-handoff --check path, Phase 23 --include-history --include-review --include-boundary --include-handoff --include-risk --check path, Phase 24 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --check path, Phase 25 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --check path, and Phase 26 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --check path remain independent from the optional Phase 27 glossary.
pnpm verify:phase28-release-evidence-catalog-gateThe Phase 28 gate proves Settings renders a static release evidence catalog generated from checked-in release metadata, the Phase 16 safety-gate index, the Phase 19 history snapshot, the Phase 20 review checklist, the Phase 21 boundary matrix, the Phase 22 handoff packet, the Phase 23 risk register, the Phase 24 decision summary, the Phase 25 operator runbook, the Phase 26 troubleshooting index, and the Phase 27 glossary. It remains static and read-only: it does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, file export, archive creation, external-link behavior, local file-open behavior, or runtime capability.
Phase 28 evidence catalog rendering is explicit: run python3 scripts/generate_phase18_release_readiness_metadata.py --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog or --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --check for the full Settings metadata. The Phase 18 base --check path, Phase 19 --include-history --check path, Phase 20 --include-history --include-review --check path, Phase 21 --include-history --include-review --include-boundary --check path, Phase 22 --include-history --include-review --include-boundary --include-handoff --check path, Phase 23 --include-history --include-review --include-boundary --include-handoff --include-risk --check path, Phase 24 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --check path, Phase 25 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --check path, Phase 26 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --check path, and Phase 27 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --check path remain independent from the optional Phase 28 evidence catalog.
pnpm verify:phase29-release-evidence-coverage-matrix-gateThe Phase 29 gate proves Settings renders a static release evidence coverage matrix generated from checked-in release metadata, the Phase 16 safety-gate index, the Phase 21 boundary matrix, the Phase 27 glossary, and the Phase 28 evidence catalog. It remains static and read-only: it does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, file export, archive creation, external-link behavior, local file-open behavior, or runtime capability.
Phase 29 coverage rendering is explicit: run python3 scripts/generate_phase18_release_readiness_metadata.py --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix or --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --check for the full Settings metadata. The Phase 18 base --check path, Phase 19 --include-history --check path, Phase 20 --include-history --include-review --check path, Phase 21 --include-history --include-review --include-boundary --check path, Phase 22 --include-history --include-review --include-boundary --include-handoff --check path, Phase 23 --include-history --include-review --include-boundary --include-handoff --include-risk --check path, Phase 24 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --check path, Phase 25 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --check path, Phase 26 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --check path, Phase 27 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --check path, and Phase 28 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --check path remain independent from the optional Phase 29 coverage matrix.
pnpm verify:phase30-release-evidence-acceptance-checklist-gateThe Phase 30 gate proves Settings renders a static release evidence acceptance checklist generated from checked-in release metadata, the Phase 16 safety-gate index, the Phase 28 evidence catalog, and the Phase 29 coverage matrix. It remains static and read-only: it does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, file export, archive creation, external-link behavior, local file-open behavior, review-state persistence, or runtime capability.
Phase 30 acceptance rendering is explicit: run python3 scripts/generate_phase18_release_readiness_metadata.py --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist or --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --check for the full Settings metadata. The Phase 18 base --check path, Phase 19 --include-history --check path, Phase 20 --include-history --include-review --check path, Phase 21 --include-history --include-review --include-boundary --check path, Phase 22 --include-history --include-review --include-boundary --include-handoff --check path, Phase 23 --include-history --include-review --include-boundary --include-handoff --include-risk --check path, Phase 24 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --check path, Phase 25 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --check path, Phase 26 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --check path, Phase 27 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --check path, Phase 28 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --check path, and Phase 29 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --check path remain independent from the optional Phase 30 acceptance checklist.
pnpm verify:phase31-release-evidence-review-sequence-gateThe Phase 31 gate proves Settings renders a static release evidence review sequence generated from checked-in release metadata, the Phase 16 safety-gate index, and the Phase 30 acceptance checklist. It remains static and read-only: it does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, file export, archive creation, external-link behavior, local file-open behavior, review-state persistence, or runtime capability.
Phase 31 review sequence rendering is explicit: run python3 scripts/generate_phase18_release_readiness_metadata.py --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence or --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --check for the full Settings metadata. The Phase 18 base --check path, Phase 19 --include-history --check path, Phase 20 --include-history --include-review --check path, Phase 21 --include-history --include-review --include-boundary --check path, Phase 22 --include-history --include-review --include-boundary --include-handoff --check path, Phase 23 --include-history --include-review --include-boundary --include-handoff --include-risk --check path, Phase 24 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --check path, Phase 25 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --check path, Phase 26 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --check path, Phase 27 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --check path, Phase 28 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --check path, Phase 29 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --check path, and Phase 30 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --check path remain independent from the optional Phase 31 review sequence.
pnpm verify:phase32-release-evidence-escalation-matrix-gateThe Phase 32 gate proves Settings renders a static release evidence escalation matrix generated from checked-in release metadata, the Phase 16 safety-gate index, and the Phase 31 review sequence. It remains static and read-only: it does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, file export, archive creation, external-link behavior, local file-open behavior, review-state persistence, or runtime capability.
Phase 32 escalation rendering is explicit: run python3 scripts/generate_phase18_release_readiness_metadata.py --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --include-evidence-escalation-matrix or --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --include-evidence-escalation-matrix --check for the full Settings metadata. The Phase 18 base --check path, Phase 19 --include-history --check path, Phase 20 --include-history --include-review --check path, Phase 21 --include-history --include-review --include-boundary --check path, Phase 22 --include-history --include-review --include-boundary --include-handoff --check path, Phase 23 --include-history --include-review --include-boundary --include-handoff --include-risk --check path, Phase 24 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --check path, Phase 25 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --check path, Phase 26 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --check path, Phase 27 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --check path, Phase 28 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --check path, Phase 29 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --check path, Phase 30 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --check path, and Phase 31 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --check path remain independent from the optional Phase 32 escalation matrix.
pnpm verify:phase33-release-evidence-drill-script-gateThe Phase 33 gate proves Settings renders a static release evidence drill script generated from checked-in release metadata, the Phase 16 safety-gate index, and the Phase 32 escalation matrix. It remains static and read-only: it does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, file export, archive creation, external-link behavior, local file-open behavior, review-state persistence, drill-progress persistence, or runtime capability.
Phase 33 drill rendering is explicit: run python3 scripts/generate_phase18_release_readiness_metadata.py --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --include-evidence-escalation-matrix --include-evidence-drill-script or --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --include-evidence-escalation-matrix --include-evidence-drill-script --check for the full Settings metadata. The Phase 18 base --check path, Phase 19 --include-history --check path, Phase 20 --include-history --include-review --check path, Phase 21 --include-history --include-review --include-boundary --check path, Phase 22 --include-history --include-review --include-boundary --include-handoff --check path, Phase 23 --include-history --include-review --include-boundary --include-handoff --include-risk --check path, Phase 24 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --check path, Phase 25 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --check path, Phase 26 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --check path, Phase 27 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --check path, Phase 28 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --check path, Phase 29 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --check path, Phase 30 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --check path, Phase 31 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --check path, and Phase 32 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --include-evidence-escalation-matrix --check path remain independent from the optional Phase 33 drill script.
pnpm verify:phase37-release-evidence-glossary-crosswalk-gateThe Phase 37 gate proves Settings renders a static release evidence glossary crosswalk generated from checked-in release metadata, the Phase 27 glossary, and the Phase 28 evidence catalog. The crosswalk stores sanitized glossary term ids, evidence catalog item ids, safe interpretations, evidence surfaces, blocked misreads, crosswalk order numbers, and pnpm verify:* labels only. It does not enable logs ingestion, local-guarded mutations, dangerous commands, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, export/archive behavior, external-link behavior, local file-open behavior, FAQ-state persistence, review-state persistence, drill-progress persistence, dependency-state persistence, failure-state persistence, or runtime capability.
pnpm verify:phase36-release-evidence-gate-reviewer-faq-gateThe Phase 36 gate proves Settings renders a static release evidence gate reviewer FAQ generated from the checked-in Phase 35 triage guide. The FAQ stores sanitized reviewer questions, bounded answers, safe evidence cues, blocked actions, triage row ids, and pnpm verify:* labels only. It does not enable logs ingestion, local-guarded mutations, dangerous commands, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, export/archive behavior, external-link behavior, local file-open behavior, FAQ-state persistence, review-state persistence, drill-progress persistence, dependency-state persistence, failure-state persistence, or runtime capability.
pnpm verify:phase35-release-evidence-gate-failure-triage-gateThe Phase 35 gate proves Settings renders a static release evidence gate failure triage guide generated from checked-in release metadata, the Phase 16 safety-gate index, and the Phase 34 dependency map. It remains static and read-only: it does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, file export, archive creation, external-link behavior, local file-open behavior, review-state persistence, drill-progress persistence, dependency-state persistence, failure-state persistence, or runtime capability.
Phase 35 triage rendering is explicit: run python3 scripts/generate_phase18_release_readiness_metadata.py --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --include-evidence-escalation-matrix --include-evidence-drill-script --include-evidence-gate-dependency-map --include-evidence-gate-failure-triage or --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --include-evidence-escalation-matrix --include-evidence-drill-script --include-evidence-gate-dependency-map --include-evidence-gate-failure-triage --check for the full Settings metadata. The Phase 18 base --check path, Phase 19 --include-history --check path, Phase 20 --include-history --include-review --check path, Phase 21 --include-history --include-review --include-boundary --check path, Phase 22 --include-history --include-review --include-boundary --include-handoff --check path, Phase 23 --include-history --include-review --include-boundary --include-handoff --include-risk --check path, Phase 24 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --check path, Phase 25 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --check path, Phase 26 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --check path, Phase 27 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --check path, Phase 28 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --check path, Phase 29 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --check path, Phase 30 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --check path, Phase 31 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --check, Phase 32 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --include-evidence-escalation-matrix --check, Phase 33 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --include-evidence-escalation-matrix --include-evidence-drill-script --check, and Phase 34 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --include-evidence-escalation-matrix --include-evidence-drill-script --include-evidence-gate-dependency-map --check paths remain independent from the optional Phase 35 failure triage guide.
pnpm verify:phase34-release-evidence-gate-dependency-map-gateThe Phase 34 gate proves Settings renders a static release evidence gate dependency map generated from checked-in release metadata, the Phase 16 safety-gate index, and the Phase 33 drill script. It remains static and read-only: it does not enable logs ingestion, local-guarded mutations, dangerous command execution, broad scanner access, new retention behavior, raw provider payload persistence, raw command output retention, CI artifact upload, file export, archive creation, external-link behavior, local file-open behavior, review-state persistence, drill-progress persistence, dependency-state persistence, or runtime capability.
Phase 34 dependency rendering is explicit: run python3 scripts/generate_phase18_release_readiness_metadata.py --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --include-evidence-escalation-matrix --include-evidence-drill-script --include-evidence-gate-dependency-map or --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --include-evidence-escalation-matrix --include-evidence-drill-script --include-evidence-gate-dependency-map --check for the full Settings metadata. The Phase 18 base --check path, Phase 19 --include-history --check path, Phase 20 --include-history --include-review --check path, Phase 21 --include-history --include-review --include-boundary --check path, Phase 22 --include-history --include-review --include-boundary --include-handoff --check path, Phase 23 --include-history --include-review --include-boundary --include-handoff --include-risk --check path, Phase 24 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --check path, Phase 25 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --check path, Phase 26 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --check path, Phase 27 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --check path, Phase 28 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --check path, Phase 29 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --check path, Phase 30 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --check path, Phase 31 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --check, Phase 32 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --include-evidence-escalation-matrix --check, and Phase 33 --include-history --include-review --include-boundary --include-handoff --include-risk --include-decision --include-runbook --include-troubleshooting --include-glossary --include-evidence-catalog --include-coverage-matrix --include-acceptance-checklist --include-evidence-review-sequence --include-evidence-escalation-matrix --include-evidence-drill-script --check paths remain independent from the optional Phase 34 dependency map.
pnpm --filter @clawperch/desktop test -- --run controlPlane FeatureErrorBoundary RuntimeSnapshotPanel AgentFleetView CommandDock
pnpm --filter @clawperch/desktop test:e2e
python3 scripts/verify_sensitive_markers.py
pnpm verify:v5-localThe Playwright fixture journeys launch the React app in fixture mode, verify base Agent rendering, exercise 20-Agent and 50-Agent density previews, filter offline Agents, preview safe and guarded commands, persist the refresh interval through the browser fixture fallback, and write DOM/screenshots under apps/desktop/e2e/.artifacts/ for marker scanning and screenshot review. pnpm verify:v5-local runs the Task 9 local gate, including E2E, screenshot artifact validation, sensitive-marker scanning, root tests, typecheck, build, and whitespace checks.
pnpm audit:deps
pnpm verify:v5-releasepnpm verify:v5-release keeps the Task 9 local gate and adds frozen install, production dependency audit, adapter pytest, Cargo test and Clippy, Tauri debug app packaging, packaged app launch smoke, bundled-app sensitive-marker scan, release documentation checks, app metadata checks, and git diff --check.