Add an --all-docs mode to check-doc-skill-refs.sh that scans the union of the pinned doctrine files PLUS the full LIVE docs/** set (scripts/lib/docs-scope.sh), ratcheted by a new filename-pinned shrink baseline (scripts/.docs-skill-refs-baseline). Two-way ratchet: a non-baselined live doc with a dead `/skill` ref FAILS; a baselined file that no longer offends FAILS demanding a prune. Detection stays slash-syntax + headings only (never bare skill names). Default (no-flag) behavior is byte-identical. docs/SKILL-ROUTER.md (the curated router) is covered by --all-docs (a live docs/** file, never baselined) so a dead ref there FAILS strict, without perturbing the byte-identical default doc count. seed.go docs.skill-refs row: Match widened to docs/** + the baseline + the lib; Args set to [--all-docs --strict]. Burn-down (long-tail only): repointed retired `/retro`->/post-mortem, `/vibe`->/validate, `/ratchet`->/flywheel, `/research-multi`->/research, `/implement-wave`->/crank, and reworded the retired `/dream` across 13 docs/levels + docs/workflows + docs/philosophy pages, then pruned them from the baseline (91 -> 78 offenders). Owner-locked pages (comparisons/getting-started/positioning) stay baselined. Bats twin tests/scripts/check-doc-skill-refs-all-docs.bats covers all the modes.
ao - AgentOps CLI
ao is the automation and control-plane surface for AgentOps. Use it when you
want the operational layer to run headlessly: stage briefings, inspect
bookkeeping, drive repeatable flows, or run overnight compounding without
staying inside an interactive skill.
One important lane inside the CLI is the software-factory surface. That lane makes the work order, delivery flow, and closeout explicit instead of leaving them implicit in chat state.
The short version:
ao quick-start
ao factory start --goal "fix auth startup"
ao rpi phased "fix auth startup"
ao overnight report
That lane keeps four concerns explicit:
ao factory startsurfaces a bounded work order by compiling a goal-time briefing when the corpus supports it, then running Codex startup.ao rpi phasedruns the delivery flow with fresh context per phase, andao rpi statuslets the operator inspect long-running work.ao overnight startandao overnight reportrun the private Dream flow against the real local corpus and return a morning packet.ao codex stopandao flywheel close-loopclose the bookkeeping loop so the session leaves behind learnings, citations, and handoff state.
Install
go install github.com/boshu2/agentops/cli/cmd/ao@latest
Quick Start
# From your repo root: create .agents/, starter knowledge surfaces, and hooks
ao quick-start
# Start a goal with briefing-first runtime context
ao factory start --goal "fix auth startup"
# Run the delivery flow
ao rpi phased "fix auth startup"
# Optional: set up and run a private overnight Dream
ao overnight setup
ao overnight start --goal "tighten auth startup"
ao overnight report
If you prefer the skill-first path, use /rpi "fix auth startup" after
ao factory start, and use /dream when you want the same overnight engine
through an interactive skill surface instead of a headless CLI command.
That's it. In Claude Code, CLAUDE.md remains the startup surface. The
installed hooks stay silent and only prepare runtime state for the higher-level
flows.
Operator Surfaces
SessionStart: Performs startup maintenance, recovers handoff state, and can
stage factory-goal.txt / factory-briefing.txt without injecting context.
UserPromptSubmit: When startup lacked a goal, the first substantive prompt can be captured as silent factory intake and staged for later explicit use.
SessionEnd: Extracts learnings and updates the feedback loop.
| Command | Purpose |
|---|---|
ao factory start --goal "<goal>" |
Compile briefing-first startup context, then run explicit Codex start |
ao knowledge brief --goal "<goal>" |
Build the task-time briefing directly |
ao codex start |
Lower-level hookless Codex startup |
ao rpi phased "<goal>" |
CLI-first Discovery -> Implementation -> Validation lane |
ao rpi status |
Monitor long-running phased work |
ao overnight setup |
Detect host/runtime constraints and persist Dream config |
ao overnight start --goal "<goal>" |
Run the local overnight compounding flow |
ao overnight report |
Render the latest Dream summary and council state |
ao codex stop |
Close the loop explicitly at session end |
Underlying Primitives
These commands remain important, but they sit below the higher-level flows:
ao knowledgefor belief/playbook/briefing refresh and gap reportingao context assemblefor a five-section task briefingao lookupandao searchfor direct retrievalao forge transcriptandao flywheel close-loopfor manual lifecycle work