outerloop

July 15, 2026 · View on GitHub

Outerloop

outerloop

CI npm Node License: MIT

Own the Outer Loop. Evidence → Verdict → Answerability.

Governance primitives for agentic engineering — any harness, any team size.

Companion to loop-engineering (inner loops) and harness-foundry (composable harness runtime). Works standalone with Cursor, Claude Code, or custom agents.

The loop in 60 seconds

Agent run  →  Evidence package  →  Human verdict  →  Ledger  →  Answerability
(inner)         (what happened)      (why ship/block)   (provenance)  (reconstruct why)

Humans define constraints and taste. Agents produce evidence. Humans issue verdicts with captured rationale. The system guarantees you can explain why something shipped.

Core concepts (5 min) · vs alternatives

Try it now

npx @cobusgreyling/outerloop init
npx @cobusgreyling/outerloop evidence package --run-id latest
npx @cobusgreyling/outerloop verdict issue \
  --evidence-id <id> --decision ship --rationale "Tests pass; scope reviewed."
npx @cobusgreyling/outerloop ledger why <id>

Or clone and run the full demo:

git clone https://github.com/cobusgreyling/outerloop.git
cd outerloop && pnpm install && pnpm build && pnpm demo
Example demo output
=== 1. Package evidence ===
  Run: 2026-07-08T10:01:59Z | Risk: 4/10
Evidence ID: 97fb7345-6849-41a1-bb68-f9446bf6824b

=== 2. Issue verdict ===
✓ Verdict recorded: ship

=== 3. Reconstruct answerability ===
# Answerability Chain: 97fb7345-...
## Verdict
- Decision: **ship**
- Rationale: Report-only daily triage: no code changes, tests pass.

QUICKSTART.md

Choose your harness

PersonaGet started
Any agentnpx @cobusgreyling/outerloop init
Cursornpx @cobusgreyling/outerloop init --with-cursor
Claude Codenpx @cobusgreyling/outerloop init --with-claude-code
loop-engineeringnpx @cobusgreyling/outerloop init --with-loop-engineering
outerloop evidence package --run-id latest --from cursor    # or claude-code, custom-harness
outerloop verdict review <evidence-id>
outerloop ledger why <evidence-id>

Adoption guide · Cursor-only example

Progressive adoption

LevelWhat you getDocs
1 — Core loopevidence, verdict, ledgerconcepts
2 — Teamstaste, policy, CI gatepatterns · GitHub Action
3 — Factoriesdashboard, coordination, auditarchitecture

CLI essentials

CommandPurpose
initScaffold .outerloop/, harness, policy, taste
evidence packagePackage agent run into EvidencePackage
verdict review / issueHuman decision with mandatory rationale
ledger whyReconstruct answerability chain
auditScore governance health

→ Full reference: docs/cli.md · Programmatic API: docs/api.md

CI integration

jobs:
  evidence:
    uses: cobusgreyling/outerloop/.github/workflows/evidence-gate.yml@main
    with:
      run-id: ${{ github.sha }}
      evidence-source: custom-harness

docs/github-action.md

Examples & patterns

ResourceWhat it shows
full-factoryCore evidence → verdict → ledger
cursor-onlyCursor without loop-engineering
cursor-daily-triageDaily Cursor governance cadence
ci-gate-before-mergeCI evidence gate pattern

Status

v0.3.2 — Adoption release (CLI bin fix, contributor backlog). Phases 0–3 and v2 complete.

PhaseStatus
Phase 0–1✅ Core + evidence/verdict/ledger
Phase 2✅ Taste + policy + integrations
Phase 3✅ Harness, cognitive, audit, brownfield
v2✅ Ink TUI, web dashboard, coordination

CHANGELOG.md · ROADMAP.md

Development

git clone https://github.com/cobusgreyling/outerloop.git
cd outerloop && pnpm install && pnpm build && pnpm test
pnpm demo

Contributor start here · CONTRIBUTING.md · Good first issues
Code of Conduct · Security policy

Contributors

NameGitHubRole
Cobus Greyling@cobusgreylingCreator & maintainer

CONTRIBUTORS.md · contributors graph

Contributing philosophy

  • Make answerability cheap and reconstruction trivial.
  • Treat taste as a versioned, first-class engineering artifact.
  • Separate agent capability (inner) from human agency (outer).
  • Build for the accountable owner, not just the implementer.

An agent can write it. Before it reaches users, someone must explain why it should exist, why it's safe enough, and what they will do when it is wrong. That is the work of the outer loop.


Built on loop-engineering, Addy Osmani's outer loop thinking, and the broader agentic engineering community.