Skip to content
Agentmart
Submit a tool

project-agari

CPO-posture skill that declares a project's Agari (上がり) — the terminus that says when the product is complete or shipped.

Skill by Eyal Golan

IndexedMIT
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/eyalgo-project-agari

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

CPO-posture skill that declares a project's Agari (上がり) — the terminus that says when the product is complete or shipped. Requires CPO posture and halts if invoked outside a cpo session or the cpo subagent. Non-interactive by design — it drafts the terminus best-effort from the settled PRD and the project card, and instead of interviewing live it parks what it cannot settle in a companion open-issues file (open issues, choices to confirm) for the owner to answer async. On re-run it retires the owner's answered file whole to a permanent trail, folds their answers in, and when nothing is left unresolved it deletes the companion — its absence means the Agari is declared. Declared off the back of the settled PRD and before the SRS, as station 2 of a project's setup seed. Fills the project's agari.md in the instance repo. Use when declaring or revising what done means for a managed project. Do not use for the instance's identity or Michi (kensaiapp-michi), the PRD (product-prd), or a single change's done (the change pipeline).

Use cases: design, data, agent-building

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/project-agari

What's inside

Skill name
project-agari
Description
CPO-posture skill that declares a project's Agari (上がり) — the terminus that says when the product is complete or shipped. Requires CPO posture and halts if invoked outside a cpo session or the cpo subagent. Non-interactive by design — it drafts the terminus best-effort from the settled PRD and the project card, and instead of interviewing live it parks what it cannot settle in a companion open-issues file (open issues, choices to confirm) for the owner to answer async. On re-run it retires the owner's answered file whole to a permanent trail, folds their answers in, and when nothing is left unresolved it deletes the companion — its absence means the Agari is declared. Declared off the back of the settled PRD and before the SRS, as station 2 of a project's setup seed. Fills the project's agari.md in the instance repo. Use when declaring or revising what done means for a managed project. Do not use for the instance's identity or Michi (kensaiapp-michi), the PRD (product-prd), or a single change's done (the change pipeline).
License
MIT
Metadata
risk: safe · tags: agari, cpo, project, done, declaration · author: Eyal Golan · created: 2026-07-04 · version: 2.7.0 · category: product-definition
Instructions
260 lines in SKILL.md · view on GitHub

Agent Skills spec issues

  • description: longer than 1024 characters

Files (6)

  • SKILL.md
  • claude.md · intelligence/
  • codex.md · intelligence/
  • gemini.md · intelligence/
  • ollama.md · intelligence/
  • launcher.md

SKILL.md (first lines)

# project-agari

## Purpose

Declare a managed project's **Agari** (上がり — the product's "done"): the terminus that says
when the product is complete or shipped. The Agari is a **declaration**, settled with the
owner through files and committed into the project's `agari.md`.

This is the project-level sibling of `kensaiapp-michi`. Michi (道) declares the **instance's**
endless Way — the bearing the instance never finishes. Agari (上がり) declares a **project's**
terminus — the condition under which *this one product* is done.

---

## Posture

**CPO role required.** If invoked outside CPO posture (neither a `cpo:` session nor the `cpo`
subagent), stop and say: *"project-agari requires CPO posture. Switch? (Open a session with the
`cpo:` prefix, or run the `cpo` subagent.)"* Do not shed the role — this is the CPO's
declaration skill, the sibling of `product-prd`.

Take care not to confuse the CPO with the delivery-tier **Product Owner** who writes per-change
specs downstream — a different role that only shares the word "product". The Agari is the
CPO's.

**Non-interactive.** Throughout, **the owner** is the person whose product this is — the one
whose taste the terminus is settling. You work *with* them, but through files, not a live
interview:

- **Draft, don't ask.** Draft the whole Agari best-effort from the settled PRD and the project
  card. Never open a blank-page interview; never block waiting for an answer.
- **Surface, don't interrogate.** What the inputs can't settle goes to the **companion
  open-issues file**, in one of two buckets — an **open issue** (a question about the terminus
  you have no basis to decide) or a **choice to confirm** (a call you drafted that is the
  owner's to sign off). The companion template owns their shape.
- **The terminus is the owner's call.** Draft it and reason for it; never treat your draft as
  settled because it is defensible.

---

## What the Agari is (the journey model)

**Agari (上がり — "done", the terminus)** is the **project**-level declaration: the terminal
condition under which the product is complete or shipped, set by the CPO. A project reaches
its Agari; unlike the instance's Michi, it is a terminus, not an endless bearing.

- It is a **declaration, not a queue.** It names the terminus; it is not a task list or a
  milestone log. The work *toward* the Agari lives in the project's `journey/`
  (根回し Nemawashi seedbed, 宿場 Shukuba station, 飛び石 Tobiishi change-units).
- A project has **no Michi.** It serves the instance's Way (`system/michi.md`). Michi is
  instance-level and endless; Agari is project-level and a terminus. (Manifest:
  `<CORE>/doctrine/setup/kensaiapp_structure.md` §2.)
- Revising an Agari later is fine — a product's definition of "done" can be resharpened.

---

## The files and the loop

Everything this skill writes lives in the **instance** repo, beside the project card — the
Agari is a management artifact, not a product document. A caller names the **project**, never
the paths.

| File | What it is | Lifecycle |
|---|---|---|
| `system/projects/<name>/agari.md` | The Agari declaration — best-effort complete on every run. | Permanent; revised in place, never forked. |
| `system/projects/<name>/agari_open_issues.md` | The companion, holding what the run couldn't settle, in the buckets `agari_open_issues_template.md` defines. | Transient — exists only while something is unresolved. **Its absence is the done signal.** |
| `system/projects/<name>/trail/agari/cycle-<N>.md` | Each answered companion, retired whole. | Permanent. |

**Cycle numbering:** `N` is one higher than the **highest** `cycle-<N>.md` already in
`trail/agari/` — list the directory and take the max, so a removed or renamed cycle can't
collide with an existing one. The first is `cycle-1.md`; create `trail/agari/` if it isn't
there. Never overwrite an existing cycle.

**The loop, repeated until clean:**

1. The run drafts or revises the Agari and writes the companion with what it couldn't settle.
2. The **owner answers inline** — filling the companion's answer slots — and commits the file,
   then re-runs the skill.
3. The run **copies the answered companion whole to the next trail cycle**, folds the answers
   into `agari.md`, and rewrites the companion with only what is still unresolved.
4. When the answers resolve everything, the run is the close: it folds, copies the answered
   companion to the trail, and **removes** the companion instead of rewriting it — through the
   builder's `--rm`, never a hand-`rm`. **No open-issues file = the Agari is declared.**

**The close needs the owner's answers already committed.** Re-entry is inline answers, so the
first closing touch normally finds the companion dirty — and then it **changes nothing at
all**: no fold, no trail copy, no rewrite, no commit. It reports the state, asks for that
commit, and stops; the re-run after it is the close, start to finish. This is not a live
interview — it is a report with an ask. The reason is mechanical: the close removes the file
through git, and git refuses to remove a file carrying uncommitted edits, so a dirty companion
would strand a run that had already rewritten the Agari.

The trail is why the owner's reasoning survives. Folding rewrites the companion and the close
removes it — without the trail, what the owner decided and why would live only in git history.
It costs one copy on the same commit. It is the skill's job; the owner never manages it.

---

## When to Use

- **Station 2 of a project's setup seed** — the PRD is settled and the terminus is next, before
  the SRS. The ordinary trigger.
- An existing `agari_open_issues.md` is still present and the round needs continuing.
- The owner wants to **revise** an already-declared Agari.

**Do not use for:**
- The **instance's** identity or Way — that is `kensaiapp-michi`. An instance has a Michi and no
  Agari; a project has an Agari and no Michi.
- The **PRD** — that is `product-prd`, upstream of this and a precondition for it.
- A **single change's** done — that is the change pipeline's per-Tobiishi seal, not the
  product's terminus.

---

## Input material

- **`<product>/docs/PRD.md` — the settled PRD. A precondition, not a preference.** It is the
  primary source for the terminus: what the product is, who it is for, what success looks like
  and what is out of scope are already settled there, so the terminus is read off them rather

From eyalgo/kensaiapp, MIT.

More from eyalgo/kensaiapp

Signals

Stars
0
Forks
0
Open issues
0
Last commit (this folder)
Oct 22, 2026 (7 days ago)
Last release
Oct 22, 2026 (7 days ago)

From GitHub (fetched Oct 24, 2026).

Details

Version
2.7.0
License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from Eyal Golan

Cite this page

project-agari skill. Agent Mart. https://agentmart.dev/skills/eyalgo-project-agari (last updated 2026-10-24)