multivon-eval watch <dir> daemon
PlannedLong-running process that re-runs the configured suite on file or git changes in a watched directory. Debounced. Reuses the existing EvalSuite and CostTracker. First step toward continuous eval that doesn't require a CI trigger. Re-scoped after 0.10.0: the watcher will run the staleness report on file change, so prompt drift surfaces in your terminal before any suite re-run spends judge tokens.
What you’d see
Edit a prompt file, save it, see the suite re-run in your terminal within a second. No CI round-trip.
sync — propose-and-review case refresh
PlannedConsumes the staleness JSON report and proposes case-file diffs for human review when bound prompts change. Never auto-commits — confidently-wrong refreshes would poison the suite, so every proposed diff requires explicit approval. The deliberate other half of the 0.10.0 read-only report.
What you’d see
multivon-eval sync proposes updated cases for every CHANGED prompt; you review and apply, or reject. Nothing is rewritten without your sign-off.
Staleness gate in eval-action
PlannedSurfaces the staleness report in the eval-action PR workflow: warn-only $GITHUB_STEP_SUMMARY line first (works today as a documented one-liner with --format markdown), per-category fail-on as an action input later. Gate-by-default is deliberately avoided: failing PRs on ADDED prompts punishes adoption.
What you’d see
Every PR shows a staleness summary in the Actions run page without any gating; teams opt into --fail-on per category when ready.
MetricsSink interface (file / stdout / Datadog)
In progressPluggable sink so every EvalReport can be streamed to a destination of your choice. Three built-in adapters: file (JSONL append), stdout (rich-rendered), Datadog (gauge per evaluator + count per status). No hosted sink — bring your own observability.
What you’d see
suite.run(sink=DatadogSink(api_key=...)) lights up your existing Datadog dashboards with calibrated eval metrics. No multivon-hosted middleware.
Cross-source ingest adapters
In progressFirst-class adapters for LangSmith, Sentry, and S3 so traces stored across systems can be loaded into a single eval run without you writing custom ETL. Extends the existing load_traces aliasing work (LangFuse, Phoenix already covered).
What you’d see
load_traces('langsmith://project/foo') and load_traces('sentry://issue/1234') return EvalCase lists ready to feed a suite.
eval-watch Claude Code skill
PlannedFourth bundled skill wrapping the watch daemon. Slash command that starts the daemon scoped to the current repo, surfaces failures in chat, and proposes fixes when a regression appears. Sibling to /eval-bootstrap, /eval-audit, /eval-explain.
What you’d see
/eval-watch in Claude Code keeps your eval running while you code; agent narrates regressions as they happen.
Swarm coordination skeleton — multivon-eval swarm <repo>
PlannedProof-of-concept that coordinates three named subagents (auditor, attributor, explainer) against a repo and surfaces a unified report. Skeleton only. The real swarm is the long-term thesis below; this is the first walking version.
What you’d see
multivon-eval swarm <repo> produces a markdown report combining a suite audit, a prompt-change attribution, and per-failure explanations from three independent agents.