Skip to content
Agentmart
Submit a tool

roi-clarify

Refine the latest brief with constraints, success criteria, assumptions, and non-goals.

Skill by instagrim-dev

IndexedMIT★ 1
Write a review

Chalk Labs

Need help deploying roi-clarify?

Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.

Book a call

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/instagrim-dev-roi-clarify

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

Refine the latest brief with constraints, success criteria, assumptions, and non-goals. Creates a new brief revision; prior revisions remain durable.

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/roi-clarify

What's inside

Skill name
roi-clarify
Description
Refine the latest brief with constraints, success criteria, assumptions, and non-goals. Creates a new brief revision; prior revisions remain durable.
License
MIT
Instructions
225 lines in SKILL.md · view on GitHub

Agent Skills spec issues

  • files: referenced but missing: references/agentic-plan-strength.md

Files (1)

  • SKILL.md

SKILL.md (first lines)

# roi:clarify — refine the brief

This skill enriches the brief that `roi:start` seeded. It owns one stage:
**read latest brief → refine → persist new revision → next-step pointer**.

Briefs are revision-safe: each `brief_revise` call creates a new revision
without overwriting prior ones. Calling `roi:clarify` multiple times is
expected and inexpensive.

**Boundary:** this skill does not generate a plan. Plans require an outline
pass (`roi:outline`) once the brief's properties are clear. This skill also
does not refine title or goal — those live on the mission row and change via
`mission_update`.

**Read first when scoping agentic work:**
[`references/agentic-plan-strength.md`](../references/agentic-plan-strength.md).
Briefs own **high-altitude** invariants and properties — not file paths,
line numbers, or test scripts.

## Inputs

1. **Mission ID** required — must reference an existing mission.
2. **Refinement source** — operator prose, a file path with constraints, or
   an existing review's blocking issues. The skill extracts:
   - **problem** — restated framing if the goal needs sharpening (default:
     keep prior revision's `problem`).
   - **constraints** — non-negotiable boundaries (cannot break X; must not
     exceed Y; runs only on Z).
   - **success_criteria** — falsifiable invariants. Prefer "agent.imports
     internal/ui returns ∅" over "tests pass."
   - **non_goals** — explicit out-of-scope items.
   - **assumptions** — what the brief takes as true without verification.
   - **open_questions** — known unresolved decisions; include enough context
     that a future executor can resolve them.
   - **audience** — who consumes the resulting work (optional).

## Procedure

1. Read the current brief:

   ```bash
   node roi/scripts/lifecycle.mjs brief_get_latest '{"mission_id":"<id>"}'
   ```

2. Compose the refined fields. Carry forward any prior values the operator
   did not explicitly change. Fields are arrays of strings (one item per
   constraint, criterion, etc.) or plain strings; see the helper output
   shape from step 1.

3. Persist the new revision:

   ```bash
   node roi/scripts/lifecycle.mjs brief_revise '<json>'
   ```

   `<json>` must include `mission_id` plus any fields you are updating.
   Output includes the new `revision` integer (revision 1 was seeded by
   `roi:start`; this call typically writes revision 2).

   For long bodies, write JSON to a temp file and use stdin:

   ```bash
   cat /tmp/brief.json | node roi/scripts/lifecycle.mjs brief_revise -
   ```

## Quality bar

| Field | Write as |
|-------|----------|
| `problem` | One paragraph naming the unresolved tension. Concrete enough that an outsider could decide if a proposed change addresses it. |
| `constraints` | Imperatives (`must not`, `must`). Each is independently checkable. Include `verification_policy: strict` on graduation / Ax→5 / maturity-iteration missions (auto-inferred if omitted, but explicit is preferred). |
| `success_criteria` | Falsifiable invariants. State the property; do not name the test that proves it. |
| `non_goals` | One bullet per excluded scope. Use to stop re-litigation in the outline pass. |
| `assumptions` | What's taken as true. If wrong, the plan is wrong — surface in `open_questions` if uncertain. |
| `open_questions` | Each must name what would resolve it (a fact, a measurement, an operator decision). **Scope-affecting open_questions are a defect** — see "Scope-decision discipline" below. |

## Evidence discipline (quantitative claims)

Any **quantitative claim** the brief carries — counts of files, imports, call
sites, test cases, lines of code, packages affected, occurrences of a pattern
— must be **evidence-grounded** at write time:

1. **Cite the command.** Run the actual `rg`, `grep`, `find`, `git log`, or
   build/test command that produced the number, and put it in the brief
   alongside the claim. Example, in `success_criteria`:

   > `core packages have zero imports of internal/ui/* (verified at brief
   > time by rg -l 'instagrim-dev/bmo/internal/ui/' bmo/internal/{app,format,uireplay,cmd,agent,agentnative,tui}/
   > => 17 lines across 9 files)`

2. **No chat-memory numbers.** A number recalled from a prior conversation,
   a previous mission, or a doc is **not** grounded. Re-derive it against
   the live tree before recording it. If you can't re-derive it now, mark
   the claim with `assumed: true` and move it to `open_questions` with the
   command that *would* resolve it.

3. **Inventories belong in `open_questions`, not `success_criteria`, until
   verified.** A brief that says "5 inward imports across 4 files" without
   a citation is a hallucinated inventory. Outline (next stage) will plan
   against it as if it were true and produce plans that miss real importers.

4. **Failure mode this prevents:** the planner reads the brief, composes
   per-plan actions and oracles scoped to the brief's named files, runs
   `roi:go`, every oracle passes, and the mission is "done" — while the
   actual invariant the brief promised (e.g. "core does not import UI") is
   still violated by sibling files the brief never named. The plan-level
   oracle was satisfied; the mission-level invariant was not.

When you cannot ground a claim, **say so explicitly** in the brief rather
than guessing precise numbers. "Several core packages still import UI
helpers (exact list TBD by `roi:outline` discovery pass)" is honest and
plannable. "5 inward imports across 4 files" without a command is a trap.

## Scope-decision discipline

`roi:clarify` owns brief readiness. A brief is ready for `roi:outline` only
when **every scope-affecting decision is resolved** — either as a
constraint (must), a non_goal (won't), or a concrete inventory entry in
`assumptions`. **Scope-affecting decisions must not survive in

From instagrim-dev/roir, MIT.

More from instagrim-dev/roir

Signals

Stars
1
Forks
0
Open issues
0
Last commit (this folder)
Jun 24, 2026 (4 months ago)
Last release
Aug 1, 2026 (3 months ago)

From GitHub (fetched Oct 24, 2026).

Details

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

More from instagrim-dev

Done for you

Rather not set it up yourself?

Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.

See how we build AI agents →Read the case studies

Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.

launches shipped
50+
launches shipped
media placements
500+
media placements
founders on every account
2
founders on every account

Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block

Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.

Get roi-clarify running in your business

Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.

Goes to the Chalk Labs founders, not the newsletter. Privacy

Need help deploying roi-clarify?

CallGet help
Cite this page

roi-clarify skill. Agent Mart. https://agentmart.dev/skills/instagrim-dev-roi-clarify (last updated 2026-10-24)