v0.4.0
What's Changed
- guide: document gVisor fail-closed opt-out on no-runsc cluster by @TheConnMan in #364
- cluster up honors AGENTOS_MODEL for runner-model parity by @TheConnMan in #365
- message --json: structured stdout for timeout and dry-run terminal states by @alexrao2000 in #367
- cliCommand(): manifest-typed console/CLI command resolver by @alexrao2000 in #368
- docs: surface the parity-pain queries for agent-driven discoverability by @alexrao2000 in #370
- eval: pluggable scorer seam above the port + tier-1 trajectory matcher by @alexrao2000 in #372
- local eval / cluster eval: the same evals at every tier (parity gate) by @alexrao2000 in #371
- Console/CLI parity: attach cliCommand hints to wired surfaces (#279) by @alexrao2000 in #374
- Console/CLI parity: parity test + honest noCliEquivalent state + sync invariants (#280) by @alexrao2000 in #375
- Bundle format: system prompt in the bundle manifest (#271) by @alexrao2000 in #376
- Bundle format: consume the manifest hooks field (PreToolUse guardrails) (#272) by @alexrao2000 in #377
- Bundle format: approval-policy + trigger declarations in the manifest (#273) by @alexrao2000 in #378
- memory: implement the memory port (load/append + provenance) [#264] by @alexrao2000 in #379
- storage: extract the ObjectStore port; defer the second adapter [#282] by @alexrao2000 in #380
- queue-stream: extract a thin broker port at the non-sacred seams [#284] by @alexrao2000 in #381
- cli: guided eval generation interview (agentos skill eval-init) by @alexrao2000 in #383
- docs/adr: substrate is a resilience-only fallback, not a product swap axis by @alexrao2000 in #384
- docs/design: multi-dev shared-cluster design pass by @alexrao2000 in #385
- memory: learned-from provenance trace-back (#266) by @alexrao2000 in #387
- memory: consolidation pipeline (#265) by @alexrao2000 in #386
- evals: model dimension on the eval matrix + prompt-cache smoke test by @alexrao2000 in #382
- memory: inspect/edit/delete learned memory (API + UI) (#267) by @alexrao2000 in #388
- Explicit provider egress for cluster up (#362) by @TheConnMan in #366
- Add ADR-0009: harness-neutral runner seams by @TheConnMan in #306
- Propose ADR-0022: eval completeness (tier parity, trajectory graders, trace promotion) by @TheConnMan in #345
- ui: regenerate command manifest for cluster-up egress flags by @TheConnMan in #396
- Resolve duplicate ADR numbers 0009 and 0025 by @TheConnMan in #395
- Enforce CLI hint parity registry coverage by @TheConnMan in #398
- Guard memory mutations with versions by @TheConnMan in #397
- Authed MCP example + skill-up config: --secret, .env loading, credential preflight, install.sh by @alexrao2000 in #401
- Rehydrate a thread's conversation across unplanned runner restarts by @yichenzhang-curietech in #402
- Harden git-flow image and API conflict/report paths by @jw3329 in #403
- Add interactive AgentOS terminal UI by @alexrao2000 in #404
- Add durable Approval record and awaiting-approval suspend/resume lifecycle by @yichenzhang-curietech in #406
- Add canUseTool permission gate replacing the hardcoded bypass by @yichenzhang-curietech in #407
- Add Block Kit approval cards with server-side authorizer and click-to-resolve by @yichenzhang-curietech in #408
- Add approval-policy routes and the platform audit log by @yichenzhang-curietech in #409
- Guide MCP auth example from interactive UI by @alexrao2000 in #405
- Backstop stranded approval resumes with a reconciler by @TheConnMan in #416
- Approval + authed-MCP review follow-ups (#413) by @TheConnMan in #415
- Scope the sandbox state credential (ADR-0033) by @TheConnMan in #414
- Add approval SLA expiry sweeper and resolve-path resume by @TheConnMan in #417
- Backstop expiry wakeups in the resume reconciler by @TheConnMan in #421
- Unfuse the approval approver set from the route's channel by @TheConnMan in #423
- Auto-mark prerelease GitHub Releases for -rc tags by @TheConnMan in #427
- Interactive TUI + keychain secrets: guided authed-MCP flow, with the github-issues example by @alexrao2000 in #431
- Declare aci-protocol dep on the dispatcher and smoke-test its image by @TheConnMan in #434
- Docs: arm approval gates with the fully-namespaced tool name by @TheConnMan in #433
- One-shot post-approval allowance at resume boot (#430) by @TheConnMan in #437
- ADR-0009: accept per-agent connector-secret design (#429) by @alexrao2000 in #435
- plugin-format: secrets policy field (#429) by @alexrao2000 in #436
- cluster: per-agent connector-secret Secret + render assertions (#429) by @alexrao2000 in #439
- local tier: per-agent connector secret delivery (#429) by @alexrao2000 in #438
- Add
agentos update: self-reinstall the CLI from the checkout by @alexrao2000 in #443 - install.sh: always rebuild the CLI (drop the mtime skip heuristic) by @alexrao2000 in #444
- Reject reserved AGENTOS_* connector-secret names by @alexrao2000 in #445
- Platform CLI verbs: versions/memory/approvals/observability (local + cluster) by @alexrao2000 in #446
- TUI: lead with a "Platform" tab of the primary product functions by @alexrao2000 in #448
- TUI: guided "Deploy to Slack" workflow (local + cluster) by @alexrao2000 in #441
- TUI: collapse the two Deploy-to-Slack recipes into one tier prompt by @alexrao2000 in #449
- AGENTS.md: mandate local-stack cleanup and worktree-based test edits by @TheConnMan in #472
- Adopt semver for the ACI, true the version to 0.2.0, and enforce compatibility by @TheConnMan in #471
- Close two approval-seam defects: silent fail-open gates and collapsed 403 reasons by @TheConnMan in #470
- Wire the dispatcher to the platform API and gate boot on it by @TheConnMan in #469
- Post route-bound approval cards over the default transport by @TheConnMan in #468
- Share model resolution between local up and local comms by @TheConnMan in #467
- docs: ADR-0029 adopt LLM-as-a-Verifier (grader + progress signal) by @TheConnMan in #393
- docs: ADR-0030 proactive within-episode memory agent by @TheConnMan in #394
- ADR-0037: agent-facing observability CLI helper by @TheConnMan in #479
- ADR-0037: opt-in binding hook and Pareto model routing by @TheConnMan in #480
- Fix TUI tab visibility and repo-root detection for Deploy-to-Slack by @TheConnMan in #481
- Document macOS Gatekeeper workaround for the release binary by @TheConnMan in #482
- Renumber observability ADR 0037 -> 0038 (collision with model-routing ADR) by @TheConnMan in #483
- Emit structured JSON under --json for every agent-facing verb by @TheConnMan in #503
- Reserve model-credential env names for connector secrets by @TheConnMan in #486
- Correct the drifted interface catalog and gate it against re-rot by @TheConnMan in #484
- Pin the duplicated CONNECTOR_SECRET_KEYS_ENV literal by @TheConnMan in #504
- Enforce plugin manifest secrets policy at deploy time by @TheConnMan in #510
- Gate the TUI recipe catalog against the clap grammar (#462) by @TheConnMan in #509
- Add ADR-0039: workflow-controlled agents run on AgentOS as a callable substrate by @TheConnMan in #511
- Add ADR-0040: adopt ACP as an edge projection by @TheConnMan in #522
- Make the TUI Platform tab governance recipes tier-aware (#463) by @TheConnMan in #525
- Share one AgentTarget args struct across local and cluster tiers by @TheConnMan in #523
- Accept ADR-0022 and rewrite it to match the code as a build spec by @TheConnMan in #528
- Add a cluster observability twin behind one tier-aware endpoint seam by @TheConnMan in #534
- Bound stream delivery with a cap and a dead-letter graveyard by @TheConnMan in #536
- Gate outbound Claude Code plugin compatibility in CI by @TheConnMan in #537
- install: put the CLI on PATH (cargo install, not cargo build) by @alexrao2000 in #552
- #526: skill eval --model + one-command model sweep (skill tier) by @alexrao2000 in #554
- #527: make committed example eval cases falsifiable by @alexrao2000 in #553
- Answer versions, memory, and approvals at the skill tier by @TheConnMan in #539
- Correct the architecture docs and close the gate hole that let them rot by @TheConnMan in #555
- Shrink the guide by making the product reject what it used to accept by @TheConnMan in #556
- Trace the deployed local tier by default by @TheConnMan in #557
- #526: model selection + sweep at the local/cluster eval tiers by @alexrao2000 in #560
- CLI sweep: teardown count, provider-neutral help, cluster --secret decline, --json parity fields (#551, #548) by @alexrao2000 in #562
- Converge the policy and permission approval gates (#544) by @TheConnMan in #563
Full Changelog: v0.3.1...v0.4.0