Home/Catalog/Mission
Mission — why does this exist?
Brief 149

The Charter

Excavates the evidence, then interviews you — questions with evidence-backed candidates, your answers, no guesses — into the one-page contract every session starts from.

CHARTER.md4 phases7 lenses~4.0k chars

Free & open · no signup · read-only — it ends by asking · nothing leaves your machine

What it does

You are working inside this repo. Mission: recover the product's intent from evidence, put the decisions to the operator as questions, and only then write CHARTER.md — one page: problem, user, job, non-goals, what done means now — so every future session starts from the same contract, not the memory of an old chat.

This brief interviews before it writes. Like 142's spec, the report *is* the artifact — your only write is the charter file — built from the operator's answers, not your inferences.

What it looks for

7 lenses it looks through

Phase 2 sweeps the codebase through every one of these, citing file and line for each finding.

1

Problem

the pain this exists to remove, in one sentence its user would recognize

2

User

the one primary user; a charter with three users has none

3

The job

the single job the product does; evidence showing two products is a question, never a coin flip

4

Non-goals

what this will not do or become; every abandoned tangent in the history is a candidate, and scope creep dies here, in writing

5

Invariants

what must stay true through any change: privacy stance, zero-dependency, offline-first, tone

6

Now / Next / Not-now

the current milestone as five or fewer outcomes, the next one, and the parked list

7

Done looks like

one observable check per candidate Now outcome, runnable by a stranger

The deliverable

What lands in your repo

One structured report at the repo root — or in reports/, if you keep one — the same shape every time, ready for a teammate — or the optional Studio — to act on.

CHARTER.md
One file. Evidence-backed. It ends by asking before touching anything. · see a real CHARTER.md ↗
How it works

What it makes the agent do

Every Goal Prompt follows the same four steps, so results are consistent and repeatable — no matter which one you run.

1
Phase 1

Excavate the intent

Read what the repo claims.

2
Phase 2

Interview through 7 lenses

Turn the evidence into the seven decisions only the operator can make.

3
Phase 3

Draft from the answers

Build the charter from the operator's answers plus the evidence nobody disputed.

4
Phase 4

Report

Write CHARTER.md at repo root.

Get started

Three ways to run this Goal Prompt

01 · COPY

Paste it in

Copy it and paste it into your agent inside the repo you want checked.

02 · INSTALL

As a slash command

Install the goal plugin once — two commands — then just type /goal:the-charter.

1/plugin marketplace add GhostlyGawd/goal-prompts
2/plugin install goal@goal-prompts

Or install only this Goal Prompt as /goal-the-charter:

curl -fsSL https://goal-prompts.vercel.app/install | BRIEF=149 sh
03 · AGENT

From an agent (MCP)

Let an agent fetch it mid-conversation, or pull the raw Goal Prompt by URL.

https://goal-prompts.vercel.app/raw/149.md
Transparency

The exact prompt

Nothing hidden — this is the whole Goal Prompt, verbatim. Read it in a minute, edit it, or copy it as-is.

Read the full brief (3,964 characters)
# Goal: The Charter

You are working inside this repo. Mission: recover the product's intent from evidence, put the decisions to the operator as questions, and only then write `CHARTER.md` — one page: problem, user, job, non-goals, what done means now — so every future session starts from the same contract, not the memory of an old chat.

This brief interviews before it writes. Like 142's spec, the report *is* the artifact — your only write is the charter file — built from the operator's answers, not your inferences.

## Phase 1 — Excavate the intent
- Read what the repo claims: README and marketing or docs copy (the promises), package metadata, CLAUDE.md / AGENTS.md (what agents are told today), any spec, roadmap, or TODO files.
- Read what the repo did: skim the commit log's arc — built first, built recently, started and quietly abandoned.
- Every contradiction between claim and code becomes a question for the operator, not a judgment call for you.

## Phase 2 — Interview through 7 lenses
Turn the evidence into the seven decisions only the operator can make: per lens, what the evidence supports, the gap or contradiction, and two or three evidence-backed candidates — never a blank what-do-you-want.
1. **Problem** — the pain this exists to remove, in one sentence its user would recognize
2. **User** — the one primary user; a charter with three users has none
3. **The job** — the single job the product does; evidence showing two products is a question, never a coin flip
4. **Non-goals** — what this will not do or become; every abandoned tangent in the history is a candidate, and scope creep dies here, in writing
5. **Invariants** — what must stay true through any change: privacy stance, zero-dependency, offline-first, tone
6. **Now / Next / Not-now** — the current milestone as five or fewer outcomes, the next one, and the parked list
7. **Done looks like** — one observable check per candidate Now outcome, runnable by a stranger

Then stop. Report only — end by asking the operator the numbered questions first: a charter written from guesses is the drift it exists to prevent. Unattended? Write the question sheet to `CHARTER.md`, headed DRAFT — questions and candidates, no invented answers — and stop.

## Phase 3 — Draft from the answers
- Build the charter from the operator's answers plus the evidence nobody disputed. A line that traces to neither gets cut.
- Questions left unanswered stay in Open questions, marked unresolved — never quietly filled in.
- Cut to one page. A charter nobody re-reads is chat context with a filename.
- Propose the durability wiring: one line in the agent entry file — read `CHARTER.md` before changing product behavior — and a 150 · Drift Audit cadence to re-check it.

## Phase 4 — Report
Write `CHARTER.md` at repo root: **Problem**, **User**, **The job**, **Non-goals**, **Invariants**, **Now / Next / Not-now**, **Done looks like** — then **Open questions** (still unsettled) and **Contradictions found** (claim · where stated · what the code shows · the operator's ruling).

Date the header. If `CHARTER.md` already exists from a previous run, this is an amendment, not a rewrite: read it first, re-ask only what changed, lead with the diff — and never silently drop a ratified non-goal; strike it with a dated note.

## Rules
- The interview is the work: questions arrive with evidence-backed candidates, and the operator's answers — never your guesses — become the contract
- Answers you don't have come from the operator or stay open in the file; imagination is not a source
- One page. Past that, cut the charter, not the reader's patience
- A `reports/` directory at the repo root changes nothing here: `CHARTER.md` always lives at the root, where every future session can meet it
- Before asking, present the top findings as a ranked list in plain words
- Report only — end by asking the operator to ratify the charter, settle what is still open, and approve the entry-file pointer

House rules for this Goal Prompt

  • The interview is the work: questions arrive with evidence-backed candidates, and the operator's answers — never your guesses — become the contract
  • Answers you don't have come from the operator or stay open in the file; imagination is not a source
  • One page. Past that, cut the charter, not the reader's patience
  • A reports/ directory at the repo root changes nothing here: CHARTER.md always lives at the root, where every future session can meet it
  • Before asking, present the top findings as a ranked list in plain words
  • Report only — end by asking the operator to ratify the charter, settle what is still open, and approve the entry-file pointer
Keep exploring

Pairs well with

Curated neighbors — briefs that answer the adjacent question, worth running in the same session.

More Mission briefs

Runs inside these playbooks — curated sequences you can launch with one paste: