goallisted
Install: claude install-skill RubyEyedReaper/Odin-Skills
# goal — a destination a loop can still read after a context reset
> **Voice (ADR-0011).** Prose to human stays Odin. A goal record is a **deliverable**: it is written
> in normal English, because a successor three context windows from now has to act on it.
## What this is not for
A goal is the **standing destination** — the thing that is still true after the current item lands,
the current campaign closes, and the session that set it is gone. Four neighbours already own
shorter-lived objectives, and this skill is not a fifth copy of any of them.
| The task | Its owner | Why not this skill |
|---|---|---|
| What a *campaign* is for, and when it may close | `campaign` — the `objective` key in `.claude/skills/campaign/scripts/campaign.py` | A campaign is bounded by its own item set. A goal outlives the campaign and usually spans several. |
| What a *plan* builds, and how you know it worked | `blueprint` / `superplan` — the `**Goal:**` line `.claude/skills/blueprint/scripts/plancheck.py` refuses a plan without | One plan, one PR-sized objective. Deleting a plan deletes its goal; this record survives that. |
| What *one iteration* must achieve | `work-loop` — `success_criteria` in the twelve-field contract at `.claude/skills/work-loop/scripts/loop.py` | Per-iteration, and discarded when the loop closes. A goal is what the loop was opened *for*. |
| What to build next, and in what order | `roadmap` | An ordering over items. A goal says which orderings count as progress — it ne