One contract, many frameworks
Every adapter implements `TriageRunner`, and a shared test runs each of them against the same cases.
Code: src/supportops_agents/contracts.py
Rejected: Comparing frameworks by their own demos.
Multi-agent triage with a bounded loop, compared across frameworks on the same contract.
offline verified, quality pendingLast verified: 2026-10-30 · Commit e9de403
A supervisor delegates to specialist workers with shared state, hard step limits and explicit stop conditions. The same ticket runs through several framework adapters behind one `TriageRunner` contract, so the choice of framework is a measured decision, not a preference.
The live demo runs this system against a real model and shows every step.
The whole flow. Press play or next to walk through it.
Every adapter implements `TriageRunner`, and a shared test runs each of them against the same cases.
Code: src/supportops_agents/contracts.py
Rejected: Comparing frameworks by their own demos.
A hard step limit ends the run whatever a worker returns, so a looping model cannot extend its own budget.
Code: src/supportops_agents/core.py
Rejected: Trusting the model to say it is done.
| Metric | Value | Mode | Source |
|---|---|---|---|
| One live synthetic workflow, four provider attempts (tokens) Transport and accounting only. Says nothing about answer quality. | 1274 in, 261 out | live model | docs/harness/progress.mdCommit 6c8e06d · 2026-10-30 · Exit code 0 |
git clone https://github.com/DiegoVSouza/supportops-agents.git
cd supportops-agents
uv sync --locked --all-groups && uv run --locked python scripts/check_fast.pyExpected: The offline suite passes. One test that compares against a lab-only module is skipped, with its reason printed, outside the lab.
I would write the stop condition as a separate small module with its own tests before writing any worker.