Releases: launchapp-dev/animus-cli
Releases · launchapp-dev/animus-cli
Release list
v0.4.13
v0.4.12 — Plugin extraction milestone + durability foundation
Plugin extraction complete
Closes the v0.4.x arc. ~11,500 LOC removed from animus-cli, 22 standalone plugin repos at launchapp-dev shipping signed artifacts via cosign keyless OIDC. animus-protocol v0.1.13 with extension points for plugin capability declaration.
Highlights
Architecture
- Plugin-first: in-tree provider, subject, and web fallbacks removed. Daemon refuses to start with actionable install hint if required plugins missing.
- 22 standalone plugin repos: protocol, providers (claude/codex/gemini/opencode/oai/oai-agent), subjects (default/requirements/linear/sqlite/markdown), transports (http/graphql), web UI, triggers (webhook/slack), log storage, conformance testkit, release-automation, plugin template.
Security
- Cosign keyless OIDC verification (Sigstore Fulcio CA + Rekor transparency log)
Warnpolicy default for v0.4.12 so users with old unsigned plugins can upgrade; v0.4.13 flips toStrict- Trust anchor:
^https://github\.com/launchapp-dev/[^/]+/\.github/workflows/release\.yml@refs/tags/v.*via GitHub OIDC
Durability
- Per-run notification JSONL log + replay
- CLI session checkpointing + auto-resume on daemon restart (applies outcome back to workflow)
- Phase idempotency markers (
idempotent/sideeffecting/unknown) - Attempt-keyed completion markers (rework doesn't replay stale decision)
- Plugin process supervisor (3-restart-per-60s budget + Disabled cooldown)
- Typed
HostError::ConnectionLost+classify(&HostError)replaces brittle string classifier - fsync on durable writes (deferred to v0.4.13)
Observability
- Daemon metrics endpoint (7 counters + 3 gauges + histograms):
animus daemon metrics - Structured JSON logging via
ANIMUS_LOG_FORMAT=json - workflow_events subscription via
ControlClient::workflow_events(animus-protocol v0.1.10) with daemon-side broadcaster
CLI
animus daemon preflight— verify required plugins installedanimus plugin install-defaults [--include-subjects] [--include-transports] [--include-oai-agent]— one-command bootstrapanimus web serve— spawns installed transport + web_ui plugins, opens browser, waits for Ctrl-C
Conformance
- animus-plugin-testkit v0.3.0 with subject/transport/trigger conformance suites in addition to providers
- Cancellation scenario with concurrent dispatcher
- oai-style scenarios for stateless-API providers
Breaking changes
animus web serveno longer boots in-process axum server — requiresanimus plugin install-defaults --include-transports- Daemon requires at least one provider plugin installed — use
animus daemon start --auto-install - Env vars
ANIMUS_DAEMON_DISABLE_BUILTIN_TASK_ADAPTER,_REQUIREMENTS_ADAPTER,ANIMUS_PROVIDER_DISABLE_PLUGINare no-ops (in-tree adapters deleted)
Known v0.4.13 follow-ups
- 2 codex P2 edge cases (
--phasemarker pollution, oai-runner alias on restart resume) - Pre-existing parallel-test flakes (auto_prune, plugin_install_uninstall)
- Testkit mock-CLI cancellation scenario parity (codex/gemini/opencode/oai-agent mocks lack cancel handler)
- Subprocess workflow_events back-channel (currently in-process only)
- Cosign default
Warn→Strictflip - Phase-output decision-replay reads from sibling JSON instead of marker
Migration
See docs/migration/v0.4.11-to-v0.4.12.md for the upgrade path.
Stats
- 65 commits since v0.4.11
- 18 codex review iterations (rounds 1-8) + 2 user-led audits caught 30+ P1/P2 findings, all addressed
- Plugin ecosystem: 22 standalone repos, all signed via keyless OIDC
- Conformance: claude/codex/gemini/opencode all 7/7 passing on streaming scenarios
v0.4.11
v0.4.10
v0.4.9
v0.4.8
v0.4.7
v0.4.6
v0.4.5
Full Changelog: v0.4.4...v0.4.5
Full Changelog: v0.4.4...v0.4.5