Releases: boshu2/agentops
v3.0.1
brew update && brew upgrade agentops · bash <(curl -fsSL https://raw.githubusercontent.com/boshu2/agentops/main/scripts/install.sh) · checksums · verify provenance
Highlights
AgentOps v3.0.1 is the recommended cut of the 3.0 major — the largest release in the project's history (~320 commits and a net rewrite, ~138K insertions / ~133K deletions since v2.41). 3.0 is the hookless, in-session-only rearchitecture: AgentOps is what runs inside a session — skills, the ao CLI, the RPI / evolve / crank / swarm loops, and the .agents/ context-compiler — and out-of-session orchestration (when work runs, who supervises it, how agents coordinate) is delegated to a substrate you choose: Gas City (a reference City ships here) or Mount Olympus.
The release removes hooks, the daemon, the scheduler, and the factory command (~117K LOC); consolidates the skill catalog 81→75 and gives every loop skill executable BDD acceptance; lands real hexagonal port adapters; ships an ao doctor repair engine and a much larger ao goals / ao evolve surface; and reconciles all doctrine to a single in-session north star (docs/3.0.md). 3.0.1 itself is the release-engineering patch that makes the plugin updatable and greens the nightly validation lane.
Upgrade Notes
- New installs should use v3.0.1 (the clean cut). Existing v3.0.0 installs: run
claude plugin update agentops@agentops-marketplace; if a plain update still reports "already latest",uninstall --keep-datatheninstallonce. - If you ran AgentOps in a session, nothing you rely on changed —
ao rpi,ao evolve,crank,swarm, and the.agents/corpus are unchanged. - If you ran the daemon, scheduler, or hooks, those are removed; see Breaking Changes below.
- See
docs/MIGRATION-3.0.mdfor the full breaking-change migration.
Breaking Changes
- Hooks are removed (
soc-57b7f). The default install registers no hooks;ao hooks install,--with-hooks, and the embedded hook surface are gone. What a hook enforced locally, a CI job in.github/workflows/validate.ymlnow enforces; author bounded gates with thehooks-authoringskill. - The daemon is removed (
soc-2rtm0).ao daemon/agentopsdandinternal/daemonno longer exist. For always-on work, run the reference Gas City (city.toml+packs/agentops) or Mount Olympus. - Scheduling is removed (
soc-2rtm0).ao schedule,ao plans,ao watch, andao overnight(commands + engines) are gone; Gas City Orders own out-of-session scheduling. - The
factorycommand is removed (soc-2rtm0).ao factoryand its contract corpus are gone; the factory is the loop (crank/swarmin-session, or a mayor-driven City). runtime=gcis removed (soc-2rtm0).ao rpikeeps itsauto/direct/stream/tmuxbackends; Gas City now dispatches wholeao rpiloops as one unit.
At a Glance
| Product Area | Added | Changed | Refactored | Fixed | Deprecated/Removed |
|---|---|---|---|---|---|
| Install, Upgrade, and Distribution | 0 | 1 | 0 | 1 | 0 |
| CLI and Operator Commands | 6 | 1 | 0 | 2 | 4 |
| Daemon, Scheduling, and Factory | 0 | 0 | 0 | 0 | 4 |
| Skills and Workflows | 3 | 2 | 0 | 0 | 0 |
| Codex and Runtime Integrations | 0 | 1 | 0 | 0 | 0 |
| Hooks and Lifecycle | 0 | 0 | 0 | 0 | 1 |
| Knowledge Flywheel, Search, and Memory | 0 | 0 | 3 | 0 | 0 |
| Eval, Validation, and Release Gates | 5 | 2 | 0 | 2 | 0 |
| Docs and Onboarding | 4 | 2 | 0 | 0 | 0 |
| Security, Privacy, and Supply Chain | 1 | 1 | 0 | 0 | 0 |
| Contributor/Internal Refactors | 2 | 0 | 2 | 0 | 0 |
Product Areas
Install, Upgrade, and Distribution
- Changed: version set across
.claude-plugin/plugin.json,.claude-plugin/marketplace.json, and the City pack's pinnedAO_VERSION— 3.0.0, then bumped to 3.0.1. - Fixed:
claude plugin updatestayed stale for early 3.0.0 installs because the version label never advanced past3.0.0; the 3.0.1 bump gives the marketplace a new version to serve.
CLI and Operator Commands
- Added:
ao doctor— a shared diagnose-and-repair engine with subsystem detectors/fixers (cliconfig, daemon, bridges), a single--jsonReport, and offline-safe--fix/--dry-runexit codes. - Added:
ao goals scenarios(--create/--lint/--list) for executable-spec links, plusao goals steer --jsonnow persists the mutation andsteer addpreserves non-directive content. - Added:
ao validate --gate— an exit-code verdict (PASS/WARN/FAIL → process exit) for Gas City retry loops and CI. - Added:
ao evolve config --show+ a per-repopreferences.yamlschema/loader for the loop. - Added:
ao loopsurfaces for the HypothesisLedger and ConvergenceCheck ports. - Added: top-level capabilities + robot-docs agent surfaces, JSON subcommand listings, and
--jsononplans list/search/diff. - Changed: clearer error messages that name the corrective command (autodev
PROGRAM.md, constraint/claim lookups). - Fixed:
goals trace --orphansparser rejects bead prose and matches real orphans. - Fixed: a filesystem
PacketRepositoryadapter behind the hexagonal packet seam. - Removed:
ao daemon,ao schedule/plans/watch/overnight,ao factory, and theruntime=gcmode (see Breaking Changes).
Daemon, Scheduling, and Factory
- Removed:
internal/daemon+ theagentopsdbinary, the scheduler/overnight engines, the factory command + contract corpus, and the CLI gc-bridge glue (soc-2rtm0, ~117K LOC). AgentOps ships no out-of-session runtime; Gas City or Olympus owns that surface.
Skills and Workflows
- Added: the AgentOps reference Gas City —
city.toml+ theagentopspack (mayor + refinery agents, skills overlay, Orders) + theusing-gcagent guide and a complete tool-dependency declaration. - Added: canonical
.featureacceptance across ~25 skills (research/plan/validation/crank/swarm/rpi/handoff/readme/flywheel/inject and more) plusSELF-TEST.mdpilots. - Added: the
idea-wizardgenerate-and-winnow flow folded into/brainstormand the/discoveryphase. - Changed: skill consolidation 81→75 — merged 4 skills into mode flags, cut 2, resolved 6 keep-flags.
- Changed:
/evolvehardening —--mode=burst|loopwith cron self-adjust and typed blocked events, orchestrator-drive-to-completion (ADR-0008), never-sticky-dormancy while beads exist, auto-expiring KILL/STOP switches.
Codex and Runtime Integrations
- Changed: the Codex skill twins (
skills-codex/) and.codex-pluginmanifest stayed in lockstep with the rip + consolidation, with hashes regenerated and parity audited across every skill change.
Hooks and Lifecycle
- Removed: all 53 runtime hooks. The lifecycle is guided by skills and enforced by CI gates (see Breaking Changes).
Knowledge Flywheel, Search, and Memory
- Refactored: a real
corpus_fsCorpusReader/Writer adapter wired to its core consumer. - Refactored: a real bd-backed TrackerPort adapter wired to its core consumer.
- Refactored: a real git-backed WorkspacePort adapter wired to the core worktree lifecycle.
Eval, Validation, and Release Gates
- Added: a BDD acceptance layer — a scenario→test linkage runner plus a CI gate (
soc-63xfx), with CLI-command and daemon-lifecycle Gherkin linked to tests. - Added: the SKU capability catalog (
registry.jsonschema v2 — the generated skill×command×BC join) with a drift gate. - Added: a
context-mapdrift gate and avalidate-skill-body-refsgate for inlineaoreferences in prose. - Added:
validate-release-notes.shas a hard release gate (curated notes must exist and conform to the standard). - Added:
ci-local-release.sh --quick— the fast code-correctness subset for iterative pre-tag work. - Changed:
executable-spec-link-integritypromoted warn→blocking; the scenario→test link gate is now required. - Changed: CI path-filters so
validate-*andsecurity-*jobs skip when irrelevant. - Fixed: Nightly Static Validation — removed the deleted
validate-hooks-doc-parity.shstep and the hook-eraPRODUCT.mdskill-count patterns. - Fixed: pre-existing shellcheck warnings and post-merge CI failures cleared across the DDD/hex arc.
Docs and Onboarding
- Added:
docs/3.0.md— the canonical 3.0 north star, woven into the sources of truth. - Added:
ADR-0009(daemon deletion / in-session-only),ADR-0008(orchestrator drive-to-completion), and the canonical-loop model. - Added:
docs/MIGRATION-3.0.md— the breaking-change migration guide. - Added: the tiered
AGENTS.mdsplit, the sovereignty-proof page, and the release-notes standard (with a major-release variant). - Changed: README cut of AI-slop and restructure; PRODUCT and peripheral docs reconciled to the in-session core.
- Changed: stale daemon / schedule / hook prose swept across narrative docs, with the out-of-session autonomous-dispatch gap explicitly labeled (
soc-5jwah).
Security, Privacy, and Supply Chain
- Added: executable acceptance for the repository security scans (security hexagon).
- Changed: the pre-publish release evidence lane (CycloneDX SBOM + provenance attestation + the security-gate summary) now gates GoReleaser, blocking only on real security findings.
Contributor/Internal Refactors
- Added:
scripts/ship.sh(one-knob ship loop), theadd-validate-jobCI scaffolder,cron-tune-cadence,export-session-summary, anddoctor-evolvepreflight tooling. - Added: the
domainubiquitous-language register (architecture terms + behavior-shaping ABC vocabulary). - Refactored: the DDD / hexagonal architecture rescope across the bounded contexts.
- Refactored: generated-artifact regeneration (registry, context-map, codex hashes) wired behind drift gates.
Known Issues
- Gas City order-leve...
v3.0.0
brew update && brew upgrade agentops · bash <(curl -fsSL https://raw.githubusercontent.com/boshu2/agentops/main/scripts/install.sh) · checksums · verify provenance
Highlights
AgentOps v3.0.0 is the hookless, in-session-only major. The thesis sharpened: AgentOps is what runs inside a session — skills, the ao CLI, the RPI / evolve / crank / swarm loops, and the .agents/ context-compiler. Everything that tried to be an always-on orchestration runtime is gone, and out-of-session orchestration (when work runs, who supervises it, how agents coordinate) is delegated to a substrate you choose: Gas City (a reference City ships here) or Mount Olympus. Roughly 117K lines were removed across a five-wave rip, the default install now registers zero hooks, and CI is the authoritative gate. docs/3.0.md is the north star.
Upgrade Notes
- If you ran AgentOps in a session, nothing you rely on changed —
ao rpi,ao evolve,crank,swarm, and the.agents/corpus are unchanged. - If you ran the daemon, scheduler, or hooks, those are removed; see Breaking Changes below and the migration guide.
- See
docs/MIGRATION-3.0.mdfor the full breaking-change migration.
Breaking Changes
- Hooks are removed (
soc-57b7f). The default install registers no hooks;ao hooks install,--with-hooks, and the embedded hook surface are gone. What a hook enforced locally, a CI job in.github/workflows/validate.ymlnow enforces; author bounded gates with thehooks-authoringskill. - The daemon is removed (
soc-2rtm0).ao daemon/agentopsdno longer exist. For always-on work, run the reference Gas City (city.toml+packs/agentops) or Mount Olympus. - Scheduling is removed (
soc-2rtm0).ao schedule,ao plans,ao watch, andao overnightare gone; Gas City Orders own out-of-session scheduling. - The
factorycommand is removed (soc-2rtm0).ao factoryand its contract corpus are gone; the factory is the loop (crank/swarmin-session, or a mayor-driven City). runtime=gcis removed (soc-2rtm0).ao rpikeeps itsauto/direct/stream/tmuxbackends; Gas City now dispatches wholeao rpiloops as one unit.
At a Glance
| Product Area | Added | Changed | Refactored | Fixed | Deprecated/Removed |
|---|---|---|---|---|---|
| Install, Upgrade, and Distribution | 0 | 1 | 0 | 0 | 0 |
| CLI and Operator Commands | 1 | 0 | 0 | 0 | 3 |
| Daemon, Scheduling, and Factory | 0 | 0 | 0 | 0 | 4 |
| Skills and Workflows | 1 | 1 | 0 | 0 | 0 |
| Hooks and Lifecycle | 0 | 0 | 0 | 0 | 1 |
| Knowledge Flywheel, Search, and Memory | 0 | 0 | 3 | 0 | 0 |
| Eval, Validation, and Release Gates | 2 | 0 | 0 | 0 | 0 |
| Docs and Onboarding | 3 | 1 | 0 | 0 | 0 |
Product Areas
Install, Upgrade, and Distribution
- Changed: version synced to 3.0.0 across
.claude-plugin/plugin.json,.claude-plugin/marketplace.json, and the City pack's pinnedAO_VERSION.
CLI and Operator Commands
- Added:
ao validate --gatecollapses PASS/WARN/FAIL to a process exit code — the retry hook for Gas Citycheckand CI, no network or LLM. - Removed:
ao daemon,ao schedule/plans/watch/overnight, andao factory(see Breaking Changes). - Removed: the
runtime=gcphased-engine mode.
Daemon, Scheduling, and Factory
- Removed:
internal/daemon+ theagentopsdbinary, the scheduler lane, the factory command + contract corpus, and the CLI gc-bridge glue (soc-2rtm0, ~117K LOC). AgentOps ships no out-of-session runtime; Gas City or Olympus owns that surface.
Skills and Workflows
- Added: the AgentOps reference Gas City — a turnkey City (
city.toml+packs/agentops+ skills overlay) demonstrating out-of-session orchestration on AgentOps skills. - Changed: skill consolidation merged overlapping skills into mode flags, taking the catalog to 75 skills.
Hooks and Lifecycle
- Removed: all 53 runtime hooks. The lifecycle is guided by skills and enforced by CI gates (see Breaking Changes).
Knowledge Flywheel, Search, and Memory
- Refactored: real hexagonal port adapters wired to their core consumers — a filesystem CorpusReader/Writer, a bd-backed TrackerPort, and a git-backed WorkspacePort.
Eval, Validation, and Release Gates
- Added: a BDD acceptance layer — scenario→test linkage runner plus a CI gate (
soc-63xfx), with canonical.featureacceptance across skills. - Added:
ao validate --gateas a deterministic exit-code verdict for CI and Gas City retry loops.
Docs and Onboarding
- Added: the 3.0 doctrine —
docs/3.0.mdnorth star,docs/adr/ADR-0009-daemon-deletion-in-session-only.md, and the canonical-loop model. - Added:
docs/MIGRATION-3.0.md, the breaking-change migration guide. - Changed: README and PRODUCT reconciled to the in-session core, with the out-of-session autonomous-dispatch gap explicitly labeled (
soc-5jwah).
Known Issues
- Gas City order-level autonomous dispatch is still maturing upstream (
soc-5jwah); today the reference City dispatches via a long-lived mayor agent (bd ready→gc sling) plus cron exec orders for maintenance.
Full changelog
AgentOps 3.0 is the hookless-first major. The headline: AgentOps is what runs in-session — skills + the ao CLI + the RPI/evolve/crank/swarm loops + the context-compiler. Out-of-session orchestration (scheduling, daemons, autonomous dispatch) is delegated to Gas City (a reference City ships in this release) or Olympus. The default install registers zero hooks; the lifecycle is driven by skills and CI gates. See docs/3.0.md for the north star.
⚠️ Breaking Changes
- Hookless by default (
soc-57b7f) — the default install registers no hooks. All 53 runtime hooks were audited and removed; capabilities that lived in hooks (standards injection, commit-review gating, noise injectors) are now CLI ports + CI gates. Opt back in with--with-hooks(AGENTOPS_INSTALL_HOOKS=1) orao hooks install --force. Migration: if you relied on hook-driven behavior, switch to the CI gate or the equivalentaosubcommand. - Daemon carved out (
soc-2rtm0, daemon-carve wave 5) —internal/daemon+ theagentopsdbinary were deleted. AgentOps no longer ships an out-of-session daemon; Gas City is the orchestration substrate. Builder cores that previously ran as daemon jobs (wiki build, llmwiki loop) keep their in-process / GC-callable core but lose the daemon-job-executor wrapper. - Scheduling/plans/watch/overnight commands removed (
soc-2rtm0, kill-schedule-overnight) —ao schedule,ao plans,ao watch, and the overnight engines were deleted. Gas City owns scheduling. The phased RPI engine keeps its non-gc backends (auto/direct/stream/tmux);runtime=gcis no longer a valid mode. factorycommand + contract corpus retired (soc-2rtm0, cascade-rip) — theao factorycommand and its contract corpus were removed.- Gas City (gc) bridge severed (
soc-2rtm0, wave 2) — the CLI gc-bridge glue (gc_bridge.go,gc_events.go,rpi_phased_gc.go) was deleted; the daemon-side GasCity client is a separate, retained surface.
Added
- AgentOps reference Gas City — a turnkey City (
city.toml+agentopspack + overlay) that demonstrates out-of-session orchestration on top of AgentOps skills. ao validate --gate— exit-code verdict for Gas City retry loops and CI; PASS/WARN/FAIL collapses to a process exit code.- Real hexagonal port adapters —
corpus_fsCorpusReader/Writer, a bd-backed TrackerPort, and a git-backed WorkspacePort, each wired to its core consumer. Port-realness audit indocs/architecture/. - BDD acceptance layer — scenario→test linkage runner + CI gate (
soc-63xfx); canonical.featureacceptance added across skills (research/plan/validation/trace/handoff/readme/autodev/flywheel/inject and more) and daemon-lifecycle Gherkin linked to tests. scripts/ship.sh(#346,soc-33uy) — single-command wrapper that auto-detects inventory-touching diffs and routes through the full pre-push gate (no--fastskip on skill/contract changes), preemptively running the regen sweep (sync-skill-counts, codex-hashes, domain-map, context-map, registry, sync-hooks). Mechanical fix for ship-loop anti-pattern #1.
Changed
- Honest 3.0 doctrine —
docs/3.0.mdis the canonical north star: AgentOps is in-session; Gas City and Olympus own out-of-session. Doctrine, PRODUCT, and README were reconciled to the in-session core (skills + rpi + evolve + crank + swarm + context-compiler), with the out-of-session autonomous-dispatch gap explicitly labeled (soc-5jwah). - Version sync to 3.0.0 —
.claude-plugin/plugin.json,.claude-plugin/marketplace.json(metadata + plugins[0]), and the City pack's pinnedAO_VERSION(packs/agentops/assets/scripts/install-ao.sh) all bump to 3.0.0. - Coherent-arc PR rule (#348,
soc-1lp1) — replaces "one scenario per PR" default inCLAUDE.md+AGENTS.md. The unit of a PR is one closable bead (or small-epic slice) with a single rollback semantic. Small epics (≤5 child beads, same surface) ship as one PR with N commits; large epics ship as N PRs sliced by scenario or wave. Updatesship-loopskill (Claude + Codex twins). Derived from the 2026-05-19 8-PR merge-arc burn-through. skill-auditorrubric scoring (soc-ads5v) — adds a Pass 3 rubric-scoring stage.- Executable-spec-link-integrity promoted warn→blocking (
soc-x7y9f) — the scenario→test link gate is now a required CI check.
Fixed
- Daemon robustness hardening — bounded idempotency key + request decode guards (
soc-scg3h), ...
v2.41.1
brew update && brew upgrade agentops · bash <(curl -fsSL https://raw.githubusercontent.com/boshu2/agentops/main/scripts/install.sh) · checksums · verify provenance
Highlights
AgentOps v2.41.1 is a CI-hygiene patch for v2.41.0. The v2.41.0 tag was cut on a commit where three Validate checks were already failing — masked because the path-filtered CI marks untriggered jobs skipped rather than failed, so latent red on main was invisible until a later commit touched the triggering paths.
This patch makes main genuinely green: regenerated registry.json, a real markdown link for the extracted references/flags.md, a refreshed cli-command-surface-matrix eval baseline, and 7 Codex-notation fixes in skills-codex/. It also completes the --oscillation-sweep flag removal that v2.41.0 left half-done (Go callers were audited; shell/YAML/doc callsites were not).
No product behavior changes — this release is entirely build/CI/release-tooling fixes.
Upgrade Notes
- No CLI or behavioral changes from v2.41.0. If you are already on v2.41.0, this patch only matters if you build from source or run the CI gates.
- The v2.41.0 GitHub Release remains as published; v2.41.1 is the clean, CI-green release. New installs should use v2.41.1.
Fixed
- Release CI shipped red in v2.41.0. Three
Validatechecks were failing on the tagged commit:registry-check—registry.jsonwas stale; the v2.41 BC arc added 10aosubcommands without regenerating it.skill-integrity—skills/validation/SKILL.mdreferenced the extractedreferences/flags.mdwith a backtick code-span instead of a markdown link;heal.sh --strictrequires a real link.contract-canaries— thecli-command-surface-matrixeval baseline was stale (top=64 sub=159 all=223, nowtop=70 sub=173 all=243); and the codex-native install canary flagged 7/skillnameslash-command references inskills-codex/{evolve,validation}/SKILL.md(Codex uses$skillnamenotation).
--oscillation-sweepremoval completed.soc-1q1xdeleted theao defrag --oscillation-sweepflag in v2.41.0 but the audit only covered Go callers. Seven shell/YAML/doc callsites still referenced the dead flag, breaking thevalidate-flywheel-proofCI gate. Cleared from.github/workflows/nightly.yml,scripts/nightly-dream-cycle.sh,scripts/check-compile-oscillation.sh,docs/contracts/dream-run-contract.md, and thecompileskill phase docs.extract-release-notes.shdouble-blank line. The awk extractor captured the blank line after the## [VERSION]heading; wrapped in the<details>boilerplate it produced a double blank between<summary>and the first subsection. The script now strips leading/trailing blank lines from the changelog section.
See Also
- Full per-commit detail:
CHANGELOG.md(entry[2.41.1]) - Release audit trail:
docs/releases/2026-05-15-v2.41.1-audit.md - v2.41.0 notes:
docs/releases/2026-05-14-v2.41.0-notes.md - Follow-up epic to prevent recurrence: bd
soc-rw9y— "Make releases reliable"
Full changelog
Fixed
- Release CI shipped red in v2.41.0 — the v2.41.0 tag was cut on a commit where three
Validatechecks were already failing; they were masked because the path-filtered CI marks untriggered jobsskipped(notfailed). This patch clears all three:registry.jsonregenerated after the v2.41 arc added 10aosubcommands;skills/validation/SKILL.mdlinksreferences/flags.mdwith a real markdown link soheal.sh --strictpasses; thecli-command-surface-matrixeval baseline + fixture updated to the current heading count (top=70 sub=173 all=243); and 7/skillnameslash-command references inskills-codex/{evolve,validation}/SKILL.mdconverted to Codex$skillnamenotation so the codex-native install canary passes. --oscillation-sweepremoval was incomplete in v2.41.0 —soc-1q1xdeleted theao defrag --oscillation-sweepflag but the cycle-181 audit only checked Go callers. Seven shell/YAML/doc callsites still referenced the removed flag, breaking thevalidate-flywheel-proofCI gate (scripts/nightly-dream-cycle.shshelled the dead flag). Cleared from.github/workflows/nightly.yml,scripts/nightly-dream-cycle.sh,scripts/check-compile-oscillation.sh,docs/contracts/dream-run-contract.md, and thecompileskill phase docs.extract-release-notes.shdouble-blank line — the awk extractor captured the blank line after the## [VERSION]heading; wrapped in the<details>boilerplate it produced a double-blank between<summary>and the first subsection. Now strips leading/trailing blank lines from the changelog section.ci-local-release.shsecret-scan false positive — the secret-pattern scan recursively grepped the gitignored_site/MkDocs build directory, matchingpassword:!0inside minified JS bundles. Added_siteandsiteto the scan's--exclude-dirlist.
Full Changelog: v2.41.0...v2.41.1
v2.41.0
brew update && brew upgrade agentops · bash <(curl -fsSL https://raw.githubusercontent.com/boshu2/agentops/main/scripts/install.sh) · checksums · verify provenance
Highlights
AgentOps v2.41.0 is the typed-BC-ports-load-bearing release. It completes the 14-port bounded-context inventory begun in the v2.40 cycle and makes the ports operationally load-bearing on the /evolve autonomous loop — not just scaffolding. Every /evolve cycle's read path now flows through typed Go interfaces (CorpusReaderPort Step 0, CIStatusPort Step 1.5, LoopReaderPort cycle-history wrapper) instead of untyped gh/ao lookup/inline jq shell-outs.
The release also ships 10 new ao subcommands that expose each typed port through the operator-facing CLI: ao loop history/append/verify, ao ci latest/recent, ao corpus inject/capture, ao operator record/list, ao harness status, ao gate run, ao citation verify, and ao claim bind/list. The cycle-shape used to land each of these is captured as a reusable template in docs/learnings/2026-05-13-cli-wiring-cycle-shape.md.
Three mechanical release-readiness gates now ship in the /validation, /evolve, and /post-mortem skills so the failure mode that produced this release — declaring "ready to tag" without running the full pre-push gate or regenerating CLI docs after a flag removal — cannot recur silently. STEP 1.7.5 of /validation auto-detects release context (branch name pattern or explicit flag) and refuses to recommend /release until scripts/pre-push-gate.sh (full, not --fast), scripts/ci-local-release.sh, and scripts/generate-cli-reference.sh cleanliness all pass. /evolve teardown on a release-shaped branch now emits an explicit pre-release checklist instead of recommending /release. /post-mortem closure-integrity now WARNs when a closed bead's acceptance text names a gate that the close-note doesn't confirm green.
A 448-line dead-code sweep removes defrag.SweepOscillatingGoals and its 5 helpers, the --oscillation-sweep CLI flag, and 9 corresponding tests (soc-1q1x path 1) — the function read for a target field that no production cycle has ever populated. Companion cleanup: 43 additional staticcheck U1000 findings cleared across cli/ over multiple cycles.
Upgrade Notes
- CLI breaking-ish change:
ao defrag --oscillation-sweepis removed. The flag was unused in production; downstream scripts that pass it will now error. If you depended on the report'sOscillationJSON field, it is also removed fromDefragReport. The function never returned non-empty results in practice (seesoc-1q1xanalysis). - New typed-port CLI surface: 10 new
aosubcommands are operator-facing and emit one JSON record per line. Seecli/docs/COMMANDS.mdfor the full surface. The new commands route through typed BC port interfaces, so consumers get a stable shape independent of the on-disk file format. - Release-readiness gates are now mechanical: if you invoke
/validation,/evolve, or/post-mortemon a release-shaped branch (release/*,v*-prep,v*-evolve-run,v[0-9]+.[0-9]+*), the new STEP 1.7.5 fires. Pass--skip-release-gatesto bypass when running these skills on a release-shaped branch for non-release purposes. - The
/releaseskill now requires the local CI parity gate (scripts/ci-local-release.sh) to pass before proceeding —--skip-checksdoes not skip this gate (changed in the v2.40.0 release cycle, hardened in v2.41).
At a Glance
| Product Area | Added | Changed | Fixed | Removed |
|---|---|---|---|---|
| BC Ports (BC1–BC4) | 4 | 0 | 0 | 0 |
Operator-facing CLI (ao) |
11 | 1 | 0 | 1 |
| Release-Readiness Gates (skills) | 3 | 0 | 0 | 0 |
| /evolve Read-Path Wire-up | 1 | 3 | 0 | 0 |
| Validation + Closure Integrity | 1 | 0 | 1 | 0 |
| Dead-Code Sweep | 0 | 0 | 0 | 2 |
| Internal: DDD/Hex Rescope Arc | 0 | 1 | 0 | 0 |
| Internal: Learnings Catalog | 4 | 0 | 0 | 0 |
Product Areas
BC Ports — 14/14 Production-Complete
- Added:
FactoryAdmissionPort(13th BC port,soc-2klg.1) +productionFactoryAdmissionpair adapter. - Added:
ClaimEvidencePort(14th BC port,soc-2klg.2) +productionClaimEvidence. - Added:
CycleEntry.StartedAt+Titlefields (soc-ckc4) — ports widening + writer-side round-trip. - All 14 ports follow the
<port>.go+inmemory_<port>.go+inmemory_<port>_test.gotriplet with compile-timevar _ XPort = (*InMemoryX)(nil)assertions as drift guards.
Operator-facing CLI (ao) Surface
- Added:
ao loop history(cycle 144 — firstaosubcommand wired through a productionX adapter) - Added:
ao ci latest/recent(cycle 145 — productionCIStatus) - Added:
ao corpus inject(cycle 146 — productionCorpusReader; closessoc-y5vh.5) - Added:
ao operator record/list(cycle 147 — template-applied 1st of 7) - Added:
ao harness status(cycle 148) - Added:
ao gate run(cycle 149) - Added:
ao corpus capture(cycle 150 — BC1 R/W pair complete on CLI) - Added:
ao loop append(cycle 151 — BC3 R/W pair complete on CLI) - Added:
ao citation verify(cycle 152 — BC1 round-trip) - Added:
ao claim bind/list(cycle 153 — 10th adapter CLI-exposed) - Added:
ao loop verify— cycle-history integrity audit using cycle-161 widening - Removed:
ao defrag --oscillation-sweepflag +DefragReport.OscillationJSON field (soc-1q1xpath 1)
Release-Readiness Gates (Skills)
- Added:
/validationSTEP 1.7.5 — mandatory release-readiness gates with auto-detected release context, three gates (full pre-push, ci-local-release, generate-cli-reference cleanliness check), refusal to recommend/releaseuntil all pass. Codex parity synced. - Added:
/evolverelease-context teardown checklist — explicit unchecked pre-release checklist replaces the/releaserecommendation when the loop runs on a release-shaped branch. - Added:
/post-mortemAcceptance-Text vs Delivered Drift audit — closure-integrity check that WARNs when a closed bead's acceptance language names a gate the close-note doesn't confirm green.
/evolve Read-Path Wire-up
- Added:
scripts/evolve-read-cycle-history.sh— wrapper aroundao loop historyfor skill scripts. - Changed: Step 0 prior-knowledge retrieval routes through BC1
CorpusReaderPortviaao corpus inject(was:ao lookup). - Changed: Step 1.5 healing-first classifier routes through BC2
CIStatusPortviaao ci recent --limit 1(was: inlinegh run list). - Changed: oscillation counters in
references/oscillation.mdandreferences/fitness-scoring.mdmigrated to the wrapper (was: inlinejqover raw JSONL).
Validation + Closure Integrity
- Added:
.agents/operator/write-surface entry indocs/contracts/agents-write-surfaces.md(BC4 OperatorPort durable-intent log). - Added: Gap 3 (loop-closure) bats coverage in
tests/scripts/check-three-gap-supergate.bats— 3 new tests (PASS /goals-validateFAIL /flywheel-proofSKIP). Suite: 15 → 18 tests. - Fixed:
three-gap-supergategoals-validatesub-gate — pre-clean/tmp/ao-sgbeforego build -o /tmp/ao-sgso Go doesn't refuse to overwrite a non-object file. Caught byao goals measure(1 failing → 0 failing).
Dead-Code Sweep
- Removed:
defrag.SweepOscillatingGoals+ 5 helpers +CountAlternations+CycleRecord+OscillationResult+OscillatingGoaltypes +DefragReport.Oscillationfield +defragOscillationSweepflag + 9 tests (soc-1q1xpath 1, 17 / 465 ratio). - Removed: 43 additional
staticcheckU1000 findings acrosscli/(multiple cycles 156–159 sweepingsoc-k083backlog).
Internal: DDD/Hex Rescope Arc + Learnings Catalog
- Changed: 13-cycle DDD/hex rescope arc closed; phase-1 complete + phase-2 retrospective (
docs/rescope/2026-05-13-ddd-hex-architecture-rescope.md). - Added: BC-ports phase-2 narrowness post-mortem (
docs/learnings/2026-05-13-bc-ports-narrowness-postmortem.md). - Added: empirical
/loopcontext-drift study over 87+ cycles (docs/learnings/2026-05-13-loop-context-drift-87-cycle-observation.md). - Added: CLI-wiring cycle-shape template (
docs/learnings/2026-05-13-cli-wiring-cycle-shape.md). - Added: learnings catalog README + when-to-add rubric.
See Also
- Full per-commit detail:
CHANGELOG.md(entries[2.41.0]) - Release audit trail:
docs/releases/2026-05-14-v2.41.0-audit.md - v2.40.0 notes:
docs/releases/2026-05-13-v2.40.0-notes.md
Full changelog
Added
- BC ports — 14/14 production-complete.
FactoryAdmissionPort(13th,soc-2klg.1) +productionFactoryAdmission(cycle 139–140) andClaimEvidencePort(14th,soc-2klg.2) +productionClaimEvidence(cycle 141–142) land the last two BC4 ports, closing the 14-port BC inventory begun in the v2.40.0 cycle. Each port follows the<port>.go+inmemory_<port>.go+inmemory_<port>_test.gotriplet plus aproductionXproduction adapter, with compile-time interface assertions as drift guards. - 10 typed-port-backed
aosubcommands — operator-facing CLI now exposes every BC port that needs a script-side surface:ao loop history(productionLoopReader, cycle 144, slice 1 ofsoc-y5vh.5),ao ci latest/recent(productionCIStatus, cycle 145, slice 2),ao corpus inject(productionCorpusReader, cycle 146, slice 3; closessoc-y5vh.5),ao operator record/list(cycle 147 — template-applied 1st of 7),ao harness status(cycle 148),ao gate run(cycle 149),ao corpus capture(cycle 150, BC1 R/W pair complete on CLI),ao loop append(cycle 151, BC3 R/W pair complete on CLI),ao citation verify(cycle 152, BC1 round-trip),ao claim bind/list(cycle 153, 10th adapter CLI-exposed)....
v2.40.0
brew update && brew upgrade agentops · bash <(curl -fsSL https://raw.githubusercontent.com/boshu2/agentops/main/scripts/install.sh) · checksums · verify provenance
Highlights
AgentOps v2.40.0 is the practice-citation + assurance-gates release. It
makes PRACTICE.md the derivation root for every primitive in the repo —
every skill, hook, eval suite, CLI command, and schema now declares its
practices: lineage, validated by an advisory CI gate. Twelve backfill passes
across skills/, hooks/, schemas/, evals/agentops-core/, and cli/
reached 756/756 declared primitives. AgentOps now produces a traceable
provenance graph from doctrine → primitive → evidence.
The release also lands the three-gap supergate (E5 epic), a unified
release-blocking gate consolidating contract floors, factory-admission
enforcement, and finding-registry coverage. Eight new CI-blocking contract
gates close the loop on factory-admission, finding-registry,
factory-yield-ledger, flywheel-compounding-snapshot, wiring-closure,
goals-validate, flywheel-proof, and quarantine-empty. The
contracts-structural-floor now covers all 38 contracts.
The behavioral eval workbench ships with 12 tasks, a live-agent suite, the
agent harness CLI, the context_comprehension dimension, a CDLC identity
field, and observability feedback. Three eval-related CI gates
(eval-skill-delta, eval-workbench-verify, head-to-head delta against the
baseline scorecard) make eval evidence part of the release surface.
This release adopts the three-layer product model (substrate / assurance /
bookkeeping) across the README, PRODUCT.md, the MkDocs landing page, and
positioning docs.
Upgrade Notes
- Every new primitive added to
skills/,hooks/,schemas/,
evals/agentops-core/, orcli/must now declare apractices:lineage.
The CI gate runs as advisory initially; existing primitives are 100%
declared via the backfill passes. eval-suitemanifests can declare asecuritydomain.ao eval coverage
will reportsecurityas missing until a security-domain manifest is
authored — soft warning, not a release-blocker.- The five-minute first-value install gate (PG1) is now release-blocking. If
install-e2e fails on Ubuntu or macOS, releases will block. - The corpus freshness gate (D11) is CI-blocking. Snapshot/restore is the
recommended pattern for corpus recovery. - Three new commit-message warnings ship in
hooks/: missing test-on-code,
missing sibling-pattern citation, missing fitness-delta. All three are
warnings, not blocks, in v2.40. - The
/releaseskill was refactored under the 248-line size limit. If you
customized the skill, re-apply your changes against the new
references/release-workflow-detail.mdextraction.
At a Glance
| Product Area | Added | Changed | Fixed |
|---|---|---|---|
| Practice-Citation + Assurance Provenance | 16 | 0 | 1 |
| Release Gates and CI | 14 | 5 | 9 |
| Eval Platform | 9 | 0 | 6 |
| Nightly Automation | 8 | 0 | 1 |
| Daemon and Factory | 10 | 0 | 1 |
| Skills and Workflows | 6 | 2 | 2 |
| CLI and Operator Commands | 2 | 0 | 3 |
| Hooks and Commit Discipline | 3 | 0 | 2 |
| Goals and Corpus | 5 | 0 | 1 |
| Docs, Positioning, and Product Framing | 4 | 8 | 1 |
| Dependencies | 0 | 12 | 0 |
Product Areas
Practice-Citation + Assurance Provenance
- Added: practice-citation derivation graph + advisory CI gate
(254138fa) — every primitive now declares itspractices:lineage. - Added: 12 backfill passes (pass-1 through pass-12, with four
pass-12
waves acrosscli/) reached 756/756 declared acrossskills/,
hooks/,schemas/,evals/agentops-core/, andcli/. - Added: 10
chore(rpi)consumption commits drove the backfill epic
end-to-end. - Added:
corpus-stats.sh+ derivedPRODUCT.mdevidence (epic
soc-sx99W3.3). - Fixed: practice-provenance validator gaps (
9e981d59).
Release Gates and CI
- Added: three-gap supergate (E5 epic,
d8815e5f) with--strict-coverage
opt-in (335a70a6). - Added:
contracts-structural-floorfor all 38 contracts (f822aa38). - Added: factory-admission contract gate (
355313cc), finding-registry
contract gate (ed6cacbf), factory-yield-ledger contract gate
(c0b6d09d), flywheel-compounding snapshot gate (fafa00e7),
wiring-closure gate (b56f4def), goals-validate gate (57ca74a7),
flywheel-proof gate (491ff96b), quarantine-empty gate (55a85314),
contract canaries gate (42f57e36),check-docs-learning-references
gate (9623d6b6). - Added: install-e2e workflow against ubuntu+macos (
0c0b79e2). - Added: codex-parity-drift CI gate (
09b44d79). - Added: path-filter conditions to remaining 28 CI jobs (
ce4c0150). - Added: inner/middle/outer loop boundary enforcement (
1e0317f8, #230). - Added: bats path-filter wiring (
3c8b33ae); bats prints captured output
on failure (e6f7586e). - Changed:
--two-passmode added to gate runner (5dbe1e6d); local scope
default to head. - Fixed: registry non-determinism + pre-push goals-validate fallback;
structural CI failures from cycles 45-47; CLI surface count drift after
patterns/repair-filenames addition;registry.jsonknowledge_stores +
schedules must match gitignored-state regen.
Eval Platform
- Added: behavioral eval workbench with 12 tasks and first suite
(72b181b8); workbench expanded to all 12 (4ef6cf5e). - Added: live agent eval suite with 3 workbench cases (
b323af2d). - Added: agent harness script wired into the eval CLI (
dbbe159d);
industry-proven eval patterns added (e5defbb8). - Added:
context_comprehensiondimension + CDLC identity + observability
feedback loop (80f53fb0). - Added: head-to-head delta gate against baseline scorecard (D10,
8dcfd92d). - Added: eval-skill-delta CI gate + nightly schedule template (
9ba08146). - Added: eval-workbench-verify gate added to GOALS.md (Directive 10,
32840177); eval-workbench-verify CI job (7c0ab19b). - Added: eval run records uploaded as CI artifacts for triage (
c3eefb0d);
Python venv bootstrap inagentops-eval-advisory(9f878a2f). - Added:
securitydomain in eval-suite manifests (schema + production
default + test fixture in lock-step). - Fixed: six
fix(eval)patches covering canary refresh, advisory job
stability, and workbench drift.
Nightly Automation
- Added: admission-aware morning digest with durability (
4e0dbecf). - Added: manual-PR-only landing policy for evolve (
52ff0c4c). - Added: fail-closed execute preflight for source mutation (
7384e33c). - Added: blocker matrix + main CI baseline artifacts (
3e4aa755). - Added: dream runs submitted through the daemon (
a2bea16f). - Added: L3 rehearsal scenario + operator runbook (
e47be280). - Added: scheduler install helper + updated runbook (
b10b4354). - Added: PR digest generator from structured run state (
54bd161a). - Fixed:
dream-degradedadded tonext-worksource enum (f02f0856).
Daemon and Factory
- Added: factory-admission job specs (
8281ecfd), executor (3f907375),
routing-lane validators (634ff343). - Added: daemon RPI agent-update events on phase boundaries
(soc-y0ct.2,94056823, #258) andagent_update.criterion_verdict
per wave checkpoint (soc-awx8,72abc18a, #259). - Added: daemon skill schedule wiring (
28da44fc). - Added: CLI fallback RPI executor (
45dd2825). - Added: eval and planning job-type registration (
1022c741). - Added: factory claim ledger with proof taxonomy.
- Added: Wave 1A-D factory-claim-ledger reconciliation (
f331c036,
soc-e4ulx, #264). - Added: RPI lifecycle sharpening — criterion contract + isolation
enforcement + daemon executor swap (729fbf8a,soc-bcrn, #255). - Fixed: bound daemon RPI GasCity sessions.
Skills and Workflows
- Added:
skill-builder+skill-auditorpair (epicsoc-9bak, #237). - Added:
ao quickstartsurfacesao scheduleandao daemon
(epicsoc-sx99W2.2,e96d4942). - Added: tracer-bullet shape for
skills/domainubiquitous-language
corpus (28fd87ad). - Added: scoped evidence on
/crankand/implementbead closures
(1c783e70). - Added: 12 standalone skills consolidated into
beads,review,doc,
research. - Added: JSM quality playbook slices absorbed in two waves (
268e43b5,
b6e03c71). - Changed:
/releaseskill refactored under the size limit + non-HEAD
cut support (5cbab078) — the commit that prepared the v2.40 cut. - Changed: skill counts synced to 71 after consolidation.
- Fixed: unblock CI for domain skill — registry, codex manifest, catalog
budget (b75da352).
CLI and Operator Commands
- Added:
ao session spawn— template-driven session launch
(b27e527f, #234 viafeat/session-spawn). - Added:
ao feedback-loop --drain— clear unfed citation backlog
(c84e190c, epicsoc-sx99W3.1). - Fixed: three
fix(cli/rpi)correctness fixes around RPI scoping and
isolation enforcement.
Hooks and Commit Discipline
- Added: hook warns on commits with code-without-test (P2,
9e9de5e9). - Added: hook warns on commits missing sibling-pattern citation (P3,
a16add91). - Added: hook warns on commit messages missing fitness-delta (P4,
ecb3b3ba). - Fixed: stale
.agents/.gitignoredeny-all reconciled with parent
allowlist (soc-rv5p, #263); pre-push refs-transmission proof (#254).
Goals and Corpus
- Added: corpus snapshot/restore + freshness gate (D11,
7358ec62). - Added: goals summary split into
code-drivenvsruntime-artifact
(1ab6bbb2). - Added: goals
SKIPexit code 77 + flywheel-compounding dormant
precondition (1ed54715). - Added:
AffectsFilessidecar wired for the ...
v2.39.0
brew update && brew upgrade agentops · bash <(curl -fsSL https://raw.githubusercontent.com/boshu2/agentops/main/scripts/install.sh) · checksums · verify provenance
Highlights
AgentOps v2.39.0 is the daemon and CLI architecture release. It introduces
agentopsd as an opt-in local control plane for durable jobs, scheduling,
worker execution, projections, and operator status, while keeping the existing
foreground RPI, Dream, wiki/forge, and plans flows available.
This release also reorganizes the Go CLI around clearer internal subsystems and
expands the command surface for daemon jobs, schedule management, evals,
agent-state health, skill health, edit scopes, pool maintenance, and
daemon-backed workflows.
Upgrade Notes
- Daemon mode is opt-in. Existing foreground commands continue to work unless
you pass the new daemon flags or runao daemon. - If you use the Codex native plugin, refresh the plugin and restart Codex to
pick up the updated metadata, hooks, and$skillinvocation shape. - Repo-root
.agents/runtime state is no longer tracked by git. Keep durable
release artifacts and docs outside.agents/.
At a Glance
| Product Area | Added | Changed | Refactored | Fixed | Deprecated/Removed |
|---|---|---|---|---|---|
| Install, Upgrade, and Distribution | 1 | 1 | 0 | 1 | 1 |
| CLI and Operator Commands | 8 | 4 | 3 | 5 | 0 |
| Daemon, Scheduling, and Factory | 9 | 5 | 3 | 9 | 0 |
| Skills and Workflows | 5 | 4 | 1 | 4 | 0 |
| Codex and Runtime Integrations | 2 | 4 | 1 | 5 | 1 |
| Hooks and Lifecycle | 3 | 3 | 2 | 5 | 0 |
| Knowledge Flywheel, Search, and Memory | 5 | 4 | 2 | 4 | 0 |
| Eval, Validation, and Release Gates | 8 | 7 | 2 | 7 | 0 |
| Docs and Onboarding | 6 | 5 | 0 | 4 | 0 |
| Security, Privacy, and Supply Chain | 3 | 2 | 0 | 4 | 0 |
| Contributor/Internal Refactors | 4 | 3 | 6 | 6 | 0 |
Product Areas
Install, Upgrade, and Distribution
- Added:
scripts/install.sh --devfor one-command development bootstrap. - Changed: Codex native plugin metadata now matches the marketplace schema and
ships the refreshed checked-in Codex skill bundle. - Fixed: release validation no longer trips over stale audit metadata or
generated Codex artifact drift during publish prep. - Deprecated/Removed: the old tracked repo-root
.agents/state was removed
from git history and replaced with local runtime-state guidance.
CLI and Operator Commands
- Added:
ao daemoncommands for readiness, status, event tailing, job
submission, job inspection, cancellation, waiting, service-plan output, and
product soak scenarios. - Added:
ao schedulecommands for adding, listing, running, and removing
recurring daemon jobs. - Added:
ao agents inspect,ao agents lint, andao agents doctorfor
.agents/write-surface introspection and health checks. - Added:
ao skills check,ao scope,ao pool reindex,ao watch, and new
ao evaltask/cleanup/suite/baseline surfaces. - Changed: RPI, Dream, plans, and wiki/forge commands gained explicit daemon
submission or daemon-read paths while preserving foreground fallbacks. - Refactored: large parts of
aomoved out of command glue into focused
internal packages for daemon state, scheduling, workers, GasCity, eval,
lifecycle, path resolution, harvest, and knowledge flows. - Fixed: JSON output, UTF-8 truncation, Cobra command docs, hidden command
coverage, and command/test pairing were tightened across the CLI.
Daemon, Scheduling, and Factory
- Added:
agentopsd, an opt-in local daemon with a durable ledger, local HTTP
API, job queue, worker supervisor, event stream, readiness/status endpoints,
mutation tokens, and rebuildable projections. - Added: daemon job families for
rpi.run,rpi.phase,dream.run,
dream.stage,wiki.forge,wiki.build,openclaw.snapshot, and
plans.projection. - Added:
.agents/schedule.yaml, cron parsing, backpressure, schedule mutation
routes, recurrence supervisor logic, and schedule ledger events. - Added: AgentWorker, GasCity, CLI-fallback worker, cgroup, routing-policy,
factory lifecycle, worktree ownership, validation, manual-merge, and yield
contracts. - Changed: daemon-accepted work now treats
.agents/daemon/ledger.jsonlas the
source of truth and projections as rebuildable read models. - Refactored: daemon mutation handling, projection rebuilds, recurrence,
RPI/Dream/wiki executors, and factory status projection were split into
smaller state-machine pieces. - Fixed: fsync boundaries, orphan temp sweeps, snapshot sync, idempotency
dedupe, queue cancellation, recurrence recompute, projection nil-safety,
claimed-job queue depth, terminal-state precedence, and worker cancellation. - Fixed: daemon API hardening for body caps, event limits, bad cursors,
malformed schedules, oversized ledger lines, path containment, and schedule
name traversal.
Skills and Workflows
- Added:
system-tuningandscopeskills, plus branch-isolation and
parallel-wave references for larger crank runs. - Added: council presets and symmetric mixed-vendor pairing behavior for
multi-model reviews. - Changed: release, validation, vibe, RPI, and using-agentops skills were
updated for the new Codex runtime and validation surfaces. - Changed: bootstrap now recommends installing
bdinstead of attempting an
automatic install. - Refactored: skill reference structure and tier-cap guidance were tightened so
large skills can stay under maintainable size limits. - Fixed: skill integrity, quickstart aliases, Codex twins, language-gated
complexity checks, and several smoke prompt expectations.
Codex and Runtime Integrations
- Added: refreshed Codex native plugin metadata and checked-in Codex artifacts
for GPT-5.5-era runtime behavior. - Added: headless runtime and native Codex install validation coverage for the
plugin, hooks, runtime sections, backbone prompts, and override coverage. - Changed: Codex skill references now use
$skillnotation and a smaller skill
catalog context footprint. - Changed: native Codex hooks install into the plugin cache with the expected
22 handlers across 5 supported events. - Refactored: Codex hook/runtime proof paths moved toward explicit native
plugin validation instead of legacy raw skill mirrors. - Fixed: Codex skill chaining defaults, native hook manifest installation,
quiet session-start behavior, hook test gaps, lifecycle guards, artifact
metadata, and stale hook-cache diagnostics. - Deprecated/Removed: routine
ao codex start/stoplifecycle shims are now
documented as deprecated for normal validation and merge work.
Hooks and Lifecycle
- Added: hook output schema linting for Claude/Codex portable PreToolUse output.
- Added: edit-scope guard, edit/write hash-audit hooks, and verdict compiler
hook support. - Changed: hooks now use managed/JIT runtime context and shared path helpers
instead of scattering repo-state path logic. - Refactored: hook helper layout now sources
lib/ao-paths.sh, and embedded
hook copies were resynchronized. - Fixed: noisy Codex session-start output, hook manifest drift, intent-echo
bypass for team runners, pre-push hook coverage, and hook/docs parity.
Knowledge Flywheel, Search, and Memory
- Added:
.agents/write-surface contract, lint gate, operator guide, and
production-code smoke coverage for allowlisted runtime surfaces. - Added: Dream finding-generator sidecars, aggregation, external-watchlist
output, and end-user coverage fitness gates. - Added: native harvest extraction, nested artifact traversal, real rig
metadata, and pool reindexing. - Changed: RPI next-work metadata now treats
status,requires,dedup_key,
and external-watchlist routing as first-class fields. - Changed: goals measurement can exclude long-cycle corpus-state tags when a
gate should ignore dormant long-cycle state. - Refactored: flywheel and pool ingestion paths were split into shared helpers
with stronger per-file and promoted-body dedupe tests. - Fixed: harvest TOCTOU handling, path walk-up behavior, stale next-work
bookkeeping, dry-run packet aliases, close-loop replay stability, and
triple-ID amplification in close-loop pending IDs.
Eval, Validation, and Release Gates
- Added: deterministic
ao evalcore, runtime adapters, scorecards, coverage
reporting, baseline A/B, context-packet A/B, task/cleanup substrate commands,
retrieval/file-backed backends, and public canary suites. - Added: contract canaries as a required gate and modular Codex runtime jobs in
CI. - Added: release readiness, audit-artifact validation, HIL/SIL/VIL evidence,
test-fixture parity, retrieval manifest validation, and pre-push-gate wiring
checks. - Changed: baseline-audit is now drift-only for promoted suite hashes, with
policy mismatch reported separately. - Changed: nightly knowledge-cycle skips dormant corpora as one precondition
instead of failing multiple downstream jobs. - Changed: advisory CI policy, Windows smoke, eval advisory setup, and
retrieval-bench promotion rules are now documented and enforced more
consistently. - Refactored: eval cleanup, task run, validation, and gate parsing logic were
split into lower-complexity helpers. - Fixed: eval fixtures, canary counts, baseline path handling, coverage anchor
parsing, shellcheck regressions, Windows path handling, and release gate drift.
Docs and Onboarding
- Added: daemon migration, daemon scheduling, control-plane, routing-policy,
local compute, OpenClaw, GasCity, cloud frontier, and factory runbooks. - Added:
.agents/operator guidance, competitive comparisons, release audit
references, and component-level code maps for daemon/eval sur...
v2.38.0
brew update && brew upgrade agentops · bash <(curl -fsSL https://raw.githubusercontent.com/boshu2/agentops/main/scripts/install.sh) · checksums · verify provenance
Highlights
AgentOps v2.38.0 hardens the orchestrator skills against a "compression"
anti-pattern that was silently inlining phase work, rebuilds the
documentation site on MkDocs Material with generated skill and CLI
references, and unblocks the overnight flywheel's promotion pipeline
that had been quietly stuck on a citation-gate deadlock. Ergonomics
improvements include shell tab-completion for enumerated flags and a
faster ASCII-input path for the CLI's truncation helpers.
What's New
- Orchestrator skills resist compression —
/rpi,/discovery,
/validation, and/cranknow declare strict sub-skill delegation as
the default, with documented escape flags (--quick,--fast-path,
--no-retro, etc.) for when you deliberately want to skip a phase. - New documentation site —
agentops.dev-style site rebuilt on
MkDocs Material with a dark terracotta palette. The skill catalog and
CLI reference are now generated at build time, so they can't drift
from the source. New pages cover hooks, schemas, and upgrading. - Close-loop promotion unblocked — an overnight citation-gate
deadlock had been silently zeroing throughput for weeks. The gate now
fails loudly when ingests happen without promotions, and the
underlying cycle is fixed. - Shell tab-completion —
ao <cmd> --<flag> <TAB>now suggests the
valid values (e.g.json/table/yaml) instead of listing files. - Faster truncation on ASCII input — the CLI's text-truncation
helpers skip the UTF-8 rune scan when the input is plain ASCII.
All Changes
Added
- Strict delegation contract across
/rpi,/discovery,/validation,
/crankwith a shared reference document - Orchestrator compression anti-pattern learning surfaced at session
start - MkDocs Material docs site with generated skill catalog and CLI
reference; new Hooks / Schemas / Upgrading pages and expanded glossary - Shell completion for enumerated-value flags
ao doctornow scans Codex skill mirrors and skill reference docs for
stale commands- Nightly throughput alarm that fails loudly on dream close-loop stalls
Removed
- Archived cross-system bridge integration that predates the current
runtime - Duplicate lowercase docs landing page (canonicalized during the
MkDocs migration)
Changed
/discoveryflag renamed:--no-lifecycleis now--no-scaffold
(old name still honored through v2.40.0)- ASCII fast-path performance sweep across CLI truncation call sites
- Compile and overnight internals refactored for lower complexity and
tighter test seams (no behavior change) - GitHub Actions bumped (pages artifact, pages deploy, pages configure)
- Precommit hook prefers local Go when available
Fixed
- Overnight findings router now emits schema-valid work-queue enums and
has a build-time guard against future drift - Stale-refs scan no longer false-positives on rename notes
- Release gates self-heal missing complexity checker; compile gates
fall back to a preview path when the primary is unavailable - Proof runs now ingest before closing the loop
- Hook and script edges — worker git guard scope, test-hook tolerance
for missing binaries, scripts that skipped cleanly after the
goals-file migration - CI recovery from the docs rebuild (7 failures resolved)
- Docs markdownlint violation in a harvest-plan doc
Full changelog
Added
- Strict Delegation Contract for
/rpi,/discovery, and/validation— top-level orchestrator skills now declare strict sub-skill delegation as the default. Each skill points to the new canonical referenceskills/shared/references/strict-delegation-contract.mdwhich documents the contract, anti-pattern rationalizations, and supported compression escapes (--quick,--fast-path,--no-retro,--no-forge,--skip-brainstorm,--no-scaffold,--no-behavioral,--allow-critical-deps). There is no--fullflag — strict delegation is always on. - Orchestrator Compression Anti-Pattern learning at
.agents/learnings/2026-04-19-orchestrator-compression-anti-pattern.md, surfaced viaao injectat session start. Includes detection phrases, corrective actions, and rationalizations to reject. - Orchestrator-owned step markers in
skills/crank/SKILL.md(STEP 3a.3, STEP 6.5 slop-scan, STEP 8.7) plus an "Inline Work Policy" footer documenting which steps are intentionally inline vs delegated. - MkDocs Material documentation site — Pages site rebuilt on MkDocs Material (slate dark palette). Skill catalog and CLI reference are generated at build from
skills/*/SKILL.mdandcli/docs/.mkdocs build --strictwired into the pre-push gate (Check 25a). New dedicated pages for hooks, schemas, and upgrading, plus an expanded glossary. Theme tuned to the agentops-showcase terracotta-on-near-black palette; landing page leads with the primary use case and a headline skills table; flywheel diagram ASCII art realigned; doctrine back-links added to12factoragentops.com. - Shell completion for enumerated-value flags —
ao <cmd> --<flag> <TAB>now suggests the valid values instead of falling back to file completion. Coversao --output(json/table/yaml),ao seed --template,ao goals init --template,ao inject --formatand--session-type. ao doctorstale-reference scan now coversskills-codex/*/SKILL.mdandskills/*/references/*.mdin addition to the primary skill docs, catching drift in Codex mirrors and skill reference content.- Nightly close-loop throughput alarm — the dream close-loop gate now fails loudly when
ingested > 0 && promoted == 0, replacing the silent zero-throughput mode that previously masked citation-gate deadlocks.
Removed
- Archived AO↔Olympus bridge integration: removed
docs/ol-bridge-contracts.md,docs/architecture/ao-olympus-ownership-matrix.md, MemRL policy contracts,skills/*/scripts/ol-*.sh,cli/cmd/ao/inject_ol_test.go, and associated CLI types (OLConstraint,gatherOLConstraints,.ol/directory collector). Olympus predecessor's useful patterns live on insideao. - Lowercase
docs/index.mdduplicate removed after the MkDocs migration canonicalized the landing page.
Changed
--no-lifecyclein/discoveryrenamed to--no-scaffoldfor semantic clarity — the flag controls STEP 4.5 scaffold auto-invocation only, not broader lifecycle checks.--no-lifecycleis honored as a deprecated alias through v2.40.0; when both flags are passed, they are equivalent. Other skills (/crank,/validation,/implement,/evolve) retain--no-lifecyclewith its existing lifecycle-skill-invocation semantics./discoveryflags table expanded:--autois now explicitly documented (was transitively honored but undocumented);--interactivescope clarified ("research + plan gates, not pre-mortem")./validationflags table expanded:--complexity=<level>syntax formalized to match/rpiand/discovery;--interactivescope documented./rpi--interactiveflag scope note added: applies to discovery (research + plan) and validation (Gate 1, Gate 2); does NOT override pre-mortem or vibe council autonomy.- ASCII fast-path performance sweep across rune-aware truncation call sites in
cli/(TruncateText,TruncateRunes,truncateForError, plus goals/pool/search/rpi/parser call sites) — ASCII inputs now skip the full UTF-8 rune scan. - Compile and overnight internals refactored —
runCompilesplit into phase + preflight helpers; article scan, inbound count, and prune extracted fromrepair; dream packet corroboration split per source epic; dream yield emptiness guard extracted into a dedicated helper. No behavior change; lower cyclomatic complexity and tighter test surfaces. - Skills-codex DAG bodies converted to
$skillnotation for the Codex runtime. - GitHub Actions bumped —
actions/upload-pages-artifact 3→4,actions/deploy-pages 4→5,actions/configure-pages 5→6, plus docs.yml workflow action versions aligned. - Precommit hook prefers local Go when available.
- Skills backfill pass — docs, validators, and lint synced across all skills; Codex drift surface reset to no-op.
Fixed
- Orchestrator compression vulnerability — a live compression was observed 2026-04-19 where
/rpiwas invoked but phases were inlined instead of delegated. This release documents the anti-pattern (forged learning + loud skill text), scaffolds future enforcement (shared contract reference used by all 6 orchestrator skills), and explicitly defers runtime hook enforcement to a follow-up initiative. It does not mechanically prevent compression yet — the durable fix depends onao injectsurfacing the forged learning on future session starts. See.agents/research/2026-04-19-rpi-skill-dag-audit.mdfor the audit and.agents/plans/2026-04-19-rpi-dag-hardening.mdfor the remediation plan. - Close-loop promotion deadlock —
flywheelclose-loop auto-promotion and the loop-dominance signal are unblocked; citation-gate cycles no longer silently zero throughput. - Overnight findings router now emits schema-compliant
next-workv1.3 enums — validclaim_status=available(waspending), severity collapsed tohighforcriticalandblockerinputs — with a build-time guard that fails on future drift. - Quality stale-refs scan skips rename-doc lines so it no longer false-positives on deliberate rename notes.
- Release and compile gates — `go-comp...
v2.37.2
brew update && brew upgrade agentops · bash <(curl -fsSL https://raw.githubusercontent.com/boshu2/agentops/main/scripts/install.sh) · checksums · verify provenance
Highlights
This hotfix hardens AgentOps' validation and execution surfaces across hooks,
Codex runtime artifacts, and release gating. It also adds proof-backed swarm
evidence checks and safer worker git defaults, while tightening several CLI,
compile, and harvest edges that surfaced during release prep.
What's New
- Proof-backed swarm validation — release and validation gates now treat
swarm evidence as a first-class contract. - Safer multi-agent git behavior — worker sessions now respect a
lead-only git guard in the hook chain. - More recoverable compile and harvest runs — compile adds reset and
repair controls, and harvest explains near-miss exclusions instead of
silently dropping them.
All Changes
Added
- Swarm-evidence schema and validator, wired into validation and release gates
- Lead-only worker git guard in the hook chain for multi-agent sessions
- Compile runtime preference plus
--resetand--repair, and harvest
near-miss reporting
Changed
- Release, pre-push, and Codex/runtime validation now cover more hook,
evidence, and artifact surfaces before publish - Next-work backlog bookkeeping and Codex/runtime docs were normalized to
better match shipped behavior
Fixed
- Pre-mortem gate ambiguity now fails closed instead of open
ao rpi serve --run-id,ao mine --dry-run, compile and harvest edge
handling, CI fixture drift, shellcheck drift, and Codex artifact metadata
drift
Full changelog
Added
- Swarm evidence validation — AgentOps now ships a swarm-evidence schema and validator, and wires that proof surface into validation and release gates.
- Lead-only worker git guard — worker sessions now have an explicit lead-only git guard in the hook chain, reducing accidental write authority in multi-agent runs.
- Compile and harvest operator controls —
ao compileadds runtime preference plus--resetand--repaircontrols, while harvest now reports excluded low-confidence candidates and top near-misses.
Changed
- Release and pre-push validation — local release, pre-push, and command coverage gates now validate more of the hook, evidence, and Codex runtime surface before publish.
- Codex/runtime artifacts and docs — compile, evolve, post-mortem, swarm, and related runtime docs and artifacts were decomposed and synchronized to better match shipped behavior.
- Flywheel backlog bookkeeping — next-work aggregates, consumed markers, and enum normalization were cleaned up so carry-forward work is recorded consistently.
Fixed
- Pre-mortem gate ambiguity — the crank pre-mortem gate now denies ambiguous state by default instead of failing open.
- CLI and shell reliability edges —
ao rpi serve --run-idnow accepts legacy 8-hex IDs,ao mine --dry-runemits a single clean JSON payload, and bash invocations are sanitized to bypass unsafe shell aliases. - Compile, harvest, and release drift — compile repair defaults, malformed frontmatter salvage, YAML parse error surfacing, CI fixture drift, shellcheck drift, and Codex artifact metadata drift were corrected.
Full Changelog: v2.37.1...v2.37.2
v2.37.1
brew update && brew upgrade agentops · bash <(curl -fsSL https://raw.githubusercontent.com/boshu2/agentops/main/scripts/install.sh) · checksums · verify provenance
Highlights
Dream now leaves behind actionable morning work instead of just a short
overnight summary. This hotfix adds ranked morning packets, an opt-in long-haul
corroboration pass for weak results, and a reliable headless Claude path for
Dream Council, so the overnight loop is both more useful and more dependable.
What's New
- Actionable morning packets — Dream can turn overnight evidence into
ranked next steps with suggested commands and handoff metadata. - Smarter long-haul mode — extra overnight time is only spent when the
first pass is weak, and it is used to corroborate the strongest packet. - Reliable headless Claude council — Dream Council now works against the
real Claude JSON contract instead of the broken spawn path that degraded or
timed out runs.
All Changes
Added
- Dream morning packets that carry ranked next steps, evidence, target files,
and queue or bead handoff metadata - Yield telemetry and an adaptive long-haul mode that can corroborate weak
overnight output before handing it off
Changed
- Overnight runs now prefer cheaper evidence corroboration before slower
council fan-out, so strong runs stay short and only weak output pays the
extra runtime cost
Fixed
- Headless Claude council spawning and result normalization for Dream
- Overnight close-loop reporting so Dream writes real report artifacts instead
of placeholder statuses - Retrieval-quality release gating so local release checks can fall back to
checked-in eval data when a local manifest is missing
Full changelog
Added
- Dream morning packets — Dream can now emit ranked morning work packets with evidence, target files, exact follow-up commands, and queue/bead handoff metadata.
- Dream yield telemetry and long-haul corroboration — overnight reports now record packet-confidence telemetry and can trigger a bounded long-haul corroboration pass when the first pass produces weak morning output.
Changed
- Dream decision flow — overnight runs now prefer cheaper evidence corroboration before slower council fan-out, so strong runs stay short and extended runtime is reserved for genuinely weak output.
Fixed
- Headless Claude Dream council — Dream now uses Claude's working JSON output contract for headless council runs and normalizes the returned envelope before validation.
- Dream close-loop and report surfaces — overnight runs now write real close-loop callbacks and post-loop report artifacts instead of leaving placeholder
pendingsteps. - Retrieval ratchet release gate fallback — the retrieval-quality release check now falls back to checked-in eval data when a local manifest is absent.
Full Changelog: v2.37.0...v2.37.1
v2.37.0
brew update && brew upgrade agentops · bash <(curl -fsSL https://raw.githubusercontent.com/boshu2/agentops/main/scripts/install.sh) · checksums · verify provenance
Highlights
This release pushes AgentOps further toward a repo-native knowledge workspace.
With Karpathy's LLM-wiki getting attention, it's clearer that AgentOps was
already converging on a similar shape. This release takes some of the pieces he
executed better, especially index-first wiki navigation and knowledge
ergonomics, and integrates them into the existing .agents workflow.
At the same time, AgentOps now has a real Windows install path, a first-class
ao compile command, and a local LLM pipeline that can turn session
transcripts into reviewable wiki pages. Dream and evolve also connect more
tightly, so overnight knowledge passes can feed the daytime improvement loop
instead of living beside it.
What's New
- Windows is a real target — PowerShell install plus blocking native
Windows smoke coverage. - Knowledge compilation is a CLI command —
ao compilemoves the compiler
out of skill-only territory. - Transcript-to-wiki pipeline —
ao forgecan redact, summarize, review,
and store local LLM session pages in a browsable.agentswiki. - Dream feeds evolve —
ao evolve --dream-firstand--dream-onlylet
knowledge passes run before or instead of code cycles. - Stronger planning and retrieval guardrails — beads audit and cluster
surfaces, retrieval evaluation fixtures, and a CI ratchet make stale or weak
retrieval behavior easier to catch.
All Changes
Added
- Windows installer and native Windows smoke validation for install, doctor,
and overnight-sensitive paths ao compilecommand with docs and tests- Local LLM forge pipeline with redaction, structural review, and Dream
integration .agentswiki scaffolding with INDEX, LOG, and searchable wiki directories- New beads audit and clustering helpers, status quality signals, and retrieval
quality ratchets
Changed
- Dream can now run as a knowledge-first sub-cycle inside evolve
- Search and injection rank knowledge more intelligently using content dedup,
index boosts, and stability weighting - Public docs and workflow guidance now line up better with the current
operational-layer and context-compiler story
Fixed
- Windows overnight liveness detection
- Release retag safety and audit artifact validation
- Post-mortem closure audit handling for evidence-only and path-heavy cases
- Several Codex and RPI reliability edge cases around lifecycle restarts, JSON
writes, proof paths, and bridge validation
Full changelog
Added
- Windows install and smoke coverage —
scripts/install-ao.ps1adds a first-class Windows install path, and the blockingwindows-smokegate exercises PowerShell install, localao doctor, and Windows-sensitive Go packages. - Compile command —
ao compilemakes knowledge compilation a first-class CLI surface with docs and tests. - Local LLM forge pipeline —
ao forgecan now redact, summarize, structurally review, and queue transcript-derived wiki pages with Dream worker integration. - Dream curator and evolve sub-cycle — Dream gained a local curator adapter plus
ao evolve --dream-first|--dream-only, allowing overnight knowledge passes to feed the daytime improvement loop. .agentswiki surfaces — INDEX, LOG, wiki directories, and search integration formalize.agents/as a Karpathy-style knowledge wiki with index-first navigation.- Operational quality surfaces — beads audit/cluster commands, swarm preflight advice, status quality signals, retrieval eval queries, and a retrieval-quality CI ratchet broaden release-time proof.
Changed
- Knowledge scoring and search behavior — inject now deduplicates by content hash, boosts indexed pages, weights stability, and search can pull Dream vault and wiki sources with stronger local recall.
- Overnight and RPI internals — overnight, lifecycle, search, inject, harvest, and RPI flows were decomposed into smaller helpers while tightening proof paths, mixed-mode provenance, and worktree cleanup.
- Public framing and contributor docs — README, philosophy, planning/post-mortem docs, and reference surfaces now better match the context-compiler and operational-layer story.
Fixed
- Windows overnight liveness — Windows process checks no longer rely on Unix
signal(0)semantics. - Dream RunLoop status invariants — live-tree hash coverage now exercises every terminal RunLoop status, and
degradedreflects the current rollback semantics. - Release retag safety — release tooling now preserves annotated tags, validates audit artifact manifests and refs, and cancels stale reruns before duplicate publish attempts.
- Post-mortem and closure audits — metadata links, evidence-only closure packets, parser-path handling, and closure packet evidence modes were normalized.
- Codex and runtime reliability — same-thread lifecycle restart, root-scoped fallback reads, JSON config writes, bridge contract validation, and next-work proof-path handling were hardened.
Full Changelog: v2.36.0...v2.37.0