A multi-model development organization for Omnigent. One scrum-master identity backed by three blind-drafting models, and three peer teams below it — UX, Dev, QA/Security.
Attach it to any git repository. The framework is stateless; each project keeps
its own flag taxonomy and decision history in its own .agentic/ directory, so
one clone serves every project you work on, including several at once.
MIT licensed.
Multi-agent systems usually fail in three predictable ways. This framework is built around preventing exactly those.
They deliberate on everything. Three models drafting and debating every step costs 6–10× a single-model run. That is worth paying on ambiguous, expensive decisions and pure waste on the rest. Here, a step convenes only when ≥50% of the team flags it against a taxonomy tuned to your project.
Smaller models defer to bigger ones. Telling them not to does nothing. Here, members draft in isolated sessions and cannot see each other's work until every draft is committed — so deference is structurally impossible, not discouraged.
Vague handoffs produce confident garbage. Work orders go down with acceptance criteria that name their own verification method; deliveries come back with evidence per criterion. A delivery that asserts success without evidence is rejected, not accepted with a note.
git clone https://github.com/June74/agentic-workflow ~/agentic-workflowcd ~/projects/my-app
~/agentic-workflow/scripts/attach.shCreates .agentic/, installs a capability-scan git hook, adds gitignore entries.
No AI work, no network calls.
cd ~/projects/my-app
omnigent run ~/agentic-workflowThe framework works on whichever project you are standing in — it discovers
.agentic/ by walking up from your working directory. Two terminals in two
projects are two independent runs with separate state.
The first run in a new project reads the repo and proposes a flag taxonomy. Nothing else happens until you approve it.
L0 PM (you) ──── G1 scope · G2 design · G3 release · + escalations
│
L1 SCRUM MASTER — one identity to everyone below
sm_a claude-sdk · sm_b codex-native · sm_c antigravity-native
│
L2 UX TEAM ux_a · ux_b ships the interface contract before visuals
DEV TEAM dev_build · dev_tdd one implements, one owns TDD and review
QA/SEC qa_a · qa_b integration, security, the stability call
All three L2 teams are peers running concurrently. QA holds one authority the others don't: it declares when a stability checkpoint exists.
| Rule | Why |
|---|---|
| Convene only when ≥50% of a team flags a step | Debating unambiguous work costs 6–10× for nothing |
| Blind drafting in isolated sessions | A model cannot defer to a peer it cannot see |
| A merge must beat every input on a named criterion | Otherwise synthesis becomes the average of three ideas |
| Deliveries carry evidence, not claims | Test output and screenshots, never "I verified it" |
| Retry once, then halt and notify | A rate limit shouldn't end a run; a real failure shouldn't proceed silently |
| Preflight invokes each harness | A resolved path is not a working binary — this has already caused a silent 4-of-9 agent outage |
| Capability scans recommend, never install | Auto-installing a skill injects unreviewed third-party instructions into every agent's context |
config.yaml root orchestrator — the scrum-master identity; writes no code
agents/<name>/ one config.yaml per agent (9)
skills/ 13 protocol skills — project-agnostic
scripts/ attach.sh · install-capability-hook.sh
templates/ work-order · delivery · decision-record · escalation · profile
docs/ framework · protocols · capabilities · pm-gates · omnigent-binding · dry-run
<project>/.agentic/ profile.md · capabilities.md · DECISIONS.md · convenes/
~/.local/share/agentic-workflow/runs/<project>/ drafts, critiques (local only)
Omnigent, plus at least one harness CLI. The default roster uses all three:
| Agent | Harness | CLI |
|---|---|---|
| sm_a, dev_build, qa_a | claude-sdk / claude-native |
claude |
| sm_b, ux_b, dev_tdd, qa_b | codex-native |
codex |
| sm_c, ux_a | antigravity-native |
agy |
Harnesses are vendor-bound — Antigravity runs Gemini only and will not run Claude or GPT-family models. Missing a CLI degrades the roster rather than breaking it, but a team that drops below its convene threshold halts.
On WSL: install harness CLIs natively in WSL. A Windows install reachable
through /mnt/c will resolve on PATH and fail on launch, which surfaces as a
sub-agent that dispatches and never returns.
Working, and not yet proven end-to-end. Verified: agent schema, per-harness dispatch, sub-agent working-directory inheritance across harnesses, skill-root resolution, YAML validity. Not yet verified: a full convene producing a decision record, and the cost estimates above, which are reasoned rather than measured.
docs/05-dry-run.md is the cheap way to check the machinery before trusting it
with real work. The first dry run found six real defects before any work ran
through the framework — all of them written up in docs/incidents/, which is
worth skimming if you are setting this up on WSL, since most of them fail
silently rather than loudly.