Skill v1.0.0
currentAutomated scan100/100version: "1.0.0" name: status user-invocable: false description: Read-only preview of the next dev-loop cycle with no vault or git writes. Use for /dev-loop status or doctor.
Dev-Loop Status Mode
Operator observability for a complex orchestration skill: preview only, no writes.
Invocation
Parent dev-loop sets MODE = status when args contain status or doctor (alias). doctor here is not REFRESH doctor-worker — status reads ~/.claude/dev-loop/last-doctor.json when present.
/dev-loop status/dev-loop status high/dev-loop doctor/dev-loop status --json/dev-loop status --preview-mode investigate/dev-loop status --preview-mode investigate --orchestration goal
Pipeline
- REFRESH (read-only subset) — config,
BACKEND_CAPS, vault path, caps previews. - PROBE —
node skills/dev-loop/scripts/dev-loop-status.js(see flags below). - REPORT —
dev-loop-status.v1JSON + Markdown under.claude/dev-loop/status/
(gitignored). Use --no-write for stdout-only.
- EXIT — before WORK, SPEC, PLAN, EXECUTE, REVIEW, MERGE, SAVE, PUSH, DEPLOY.
The dev-loop-status.v1 report keeps two independent dimensions:
health.state(healthy,degraded, orblocked) and structured
health.reasons explain environment and capability readiness. The report retains all observed optional gaps in health.missing_optional, but only gaps relevant to the configured preview operation appear in health.relevant_missing_optional and lower health.
lifecycle.state(idleoractive),lifecycle.next_action, and
lifecycle.reason describe work selection and the requested preview. A blocked operation remains active while its health is blocked.
For compatibility, overall.state, overall.next_action, and overall.reason project the corresponding health/lifecycle values. Consumers should prefer the explicit fields for new integrations.
Optional isolation: dev-loop:status-worker per agents/status-worker.md.
CLI flags (helper)
| Flag | Purpose | ||||
|---|---|---|---|---|---|
--repo <path> | Project repo (required) | ||||
| `--host auto\ | codex\ | claude\ | unknown` | Active runtime for exact-version cache diagnosis | |
| `--format markdown\ | json\ | both` | Output (default both) | ||
--no-write | No files under .claude/dev-loop/status/ | ||||
| `--intensity normal\ | high` | Idle / deep-research preview | |||
| `--preview-mode core\ | prep\ | investigate\ | status` | Simulated next mode | |
| `--orchestration attended\ | goal` | Unattended /goal readiness simulation | |||
--vault <path> | Vault override | ||||
--project <slug> | Slug override |
The cache probe is host-specific and exact-version-first. It never chooses a cache by mtime. Codex remediation uses codex plugin add dev-loop@karlorz-agent-skills --json plus a new session; Claude remediation uses claude plugin update dev-loop@karlorz-agent-skills plus restart. Unknown hosts fail closed, and no status path copies into a cache or deletes session history.
HUD / statusline
Read-only one-liner for ccstatusline, tmux, or shell polls (newest *-status.json under .claude/dev-loop/status/, or --probe to refresh without writing files):
node skills/dev-loop/scripts/dev-loop-status-hud.js --repo .node skills/dev-loop/scripts/dev-loop-status-hud.js --repo . --format jsonnode skills/dev-loop/scripts/dev-loop-status-hud.js --repo . --probe --project <slug>
Doctor compact HUD (separate): ~/.claude/dev-loop/last-doctor.json from REFRESH doctor-worker.
Related read-only helpers
- Config lint:
/dev-loop config-lint→dev-loop-config-lint.js - Config migrate:
dev-loop-config-migrate.js --repo .(vault alias advisor) - Dashboard:
dev-loop-dashboard.js --repo .(aggregate status/lint/migrate/doctor) - One work item:
dev-loop-why-skipped.js --project <slug> --work <folder>
Hard deny-list
No work-item creation, spec/plan edits, retros, git commit/push, PRs, deploy, bump_script, tags, or vault SAVE/MERGE. Classify errors as blocked, degraded, or info — do not swallow.
Full controller contract: parent skills/dev-loop/SKILL.md § Status pipeline.