Skip to content

choo121600/odin-loop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Odin-Loop

English | 한국어

version status: actively developed License: MIT

Author, run, and refine your own AI dev workflow loops — as editable data.

Most "AI dev workflow" tools hand you one fixed loop. Odin-Loop treats the loop itself as a first-class, editable artifact: a YAML file the engine reads and executes. It ships with a strong default loop, and lets you build and refine your own with /odin-loop:odin new.

deep interview → plan → harness design → harness verify → implement → test → clean review
   (Huginn)     (planner) (executor)    (critic·Gungnir) (executor) (executor)  (reviewer)

The names come from the myth, and they map onto the architecture:

Myth Role In Odin-Loop
Odin the seeker of wisdom who drives the hunt the engine that drives the loop
Huginn ("thought") raven of reasoning the deep-interview stage
Muninn ("memory") raven of memory session-mining refiner (/odin-loop:odin refine)
Gungnir the spear that never misses the harness-verification gate

Why the default loop is shaped this way

  • Deep interview first — most AI coding failures are intent failures, not coding failures. The interview confirms the work's components (topology), probes a fixed set of dimensions, and self-scores clarity each round until ambiguity drops below a threshold — injecting contrarian challenges and auto-assist along the way. It turns a vague request into testable acceptance criteria — captured in a structured spec.md, with the convergence trail in interview-log.md — before any code is written. (See Design → Deep interview.)
  • Harness before implementation — the criteria become executable tests, so "done" has an objective definition.
  • Verify the harness itself (Gungnir) — the step most tools skip. A test that always passes proves nothing. We run a deliberately-wrong stub and require at least one test to fail — proving the harness has teeth.
  • Then implement and test — implement against the verified harness; loop back on failure, bounded by a max_iterations cap.
  • Review with a clean agent — a final reviewer-role stage (clean-room, no prior context) reviews the result with no memory of how it was built, catching what the harness can't encode (missed edge cases, scope creep); an objectively-defined blocking finding loops back to implement (the fix adds a regression test), and the stage pauses for your sign-off.

Install

/plugin marketplace add choo121600/odin-loop
/plugin install odin-loop@odin-loop

Quickstart

On your first /odin-loop:odin run, Odin-Loop asks which loop to use (default spec-harness-tdd) and begins a deep interview — turning your request into testable acceptance criteria before any code is written.

/odin-loop:odin run        # no active run → pick a loop, then interview
/odin-loop:odin status     # see where the run is

It pauses at every ai+human gate; approve by running /odin-loop:odin run again, or type feedback to revise that stage.

Usage

/odin-loop:odin run            # start or continue a run (pauses at human-approval gates)
/odin-loop:odin step <stage>   # re-run one specific stage
/odin-loop:odin status         # show the active run's state
/odin-loop:odin list           # list available loops
/odin-loop:odin new            # author your own loop, by interview
/odin-loop:odin refine [loop]  # analyze past work and propose loop edits (Muninn)

Hybrid execution

/odin-loop:odin run drives the loop automatically, but stops at ai+human gates so you stay in control. Approve a paused stage by running /odin-loop:odin run again; or just type feedback to revise that stage and re-gate.

Muninn — the self-refining loop

/odin-loop:odin refine mines your Odin-Loop run history and raw Claude Code session transcripts to find where you skip stages, re-work, or loop back — then proposes concrete edits to your loop's YAML (e.g. "your implement stage loops back a lot → tighten the interview gate"). A bundled analyzer extracts aggregate signals only (never message content), and nothing is applied without your approval — run /odin-loop:odin refine apply to accept. The loop learns from how you actually work.

Documentation

Loops are data

A loop is a YAML file (see plugins/odin-loop/loops/spec-harness-tdd.yaml for the fully-commented schema). The essentials:

name: my-loop
version: 1
max_iterations: 12
stages:
  - id: design
    goal: ...
    gate:
      mode: ai+human        # ai = auto-advance · ai+human = pause for approval
      check: <testable assertion to advance>
      on_fail: <stage id to loop back to>   # optional

Built-in loops live in plugins/odin-loop/loops/; your custom loops live in .odin-loop/loops/ in your project. Run state lives in .odin-loop/runs/.

Stage roles

Each stage can name who runs it via agent: inline (the engine itself), fresh (a generic clean-room sub-agent), or one of five reusable roles shipped in plugins/odin-loop/agents/:

explore planner executor critic reviewer
read-only scout spec → plan implement & test adversarial verify (Gungnir) clean review

explore / critic / reviewer run fresh (clean-room) by default; planner / executor run inline. Override per stage with agent: { role: reviewer, fresh: false }. The role shapes how a worker behaves; the stage's gate and artifacts stay in the YAML.

Status

Actively developed; the default loop runs end-to-end. See CHANGELOG.md for the current version and full release history.

License

MIT

About

Author, run, and refine your own AI dev workflow loops — as editable YAML data.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages