Charter
Write, revise, or review a project charter that defines deliverables, boundaries, and success criteria.
Installation
- Make sure Claude is on your device and in your terminal.
Skills load from
~/.claude/skills/when Claude Code starts up — so you need it on your machine first. If you don't have it yet, install it once with the command below, then runclaudein any terminal to verify.One-time setupnpm i -g @anthropic-ai/claude-codeAlready have it? Skip ahead.
- Paste into Claude Code or into your terminal.
This copies the whole skill folder into
~/.claude/skills/charter-sno-ai/— the SKILL.md plus any scripts, reference docs, or templates the skill ships with. Safe default: works for every skill.Faster alternative (instruction-only skills)
Skips the clone and grabs only the SKILL.md file. Don't use this if the skill ships Python scripts, reference markdowns, or asset templates — they won't be downloaded and the skill will fail when it tries to load them.
Quick install (SKILL.md only)Sign up to copy - Restart Claude Code.
Quit and reopen Claude Code (or any other agent that loads from
~/.claude/skills/). New skills are picked up on startup. - Just ask Claude.
Skills auto-activate when your request matches the skill's description — no slash command needed. Trigger phrases live in the skill's own frontmatter; you can read them in the “What this skill does” section above.
Prefer to read the source first? Open on GitHub.
When Claude uses it
Write, revise or review a charter: the one document that tells an executor what to deliver, what is out of bounds, what the owner already decided, and how each success check will be proven. Use when work needs a written brief before someone else does it, or when asked to write, change or check a charter.
What this skill does
charter
A charter is one markdown file that says what to deliver and how everyone will know it was
delivered. A task is named by its charter
filename. charter writes it; deliver carries a released charter out. Any kind of project
uses it: software, documents, campaigns, research, operations. The owner is whoever owns the
work (often the user); speak to them in the language they use.
Prerequisites: none to use it; its selftest needs bash and python3.
Read references/template.md for the file layout and references/questions.md before asking
the owner anything.
Rules that keep a charter useful
- Preserve the owner's words and decisions. Never invent a decision, a fact or a requirement. A missing choice that would change the outcome is asked once, one question at a time, at the end of a message; independent work continues while it waits, and silence is not approval.
- Read the existing work first (files, documents, data, earlier decisions). Ask nothing they already answer.
- Every success check names what will be observed, where, and how, and can be answered pass or fail by a real run or inspection. The expected result comes from the requirement or from independent data, never from pasting the program's own output. For a defect, the check reproduces the defect first.
- Before adding a precondition, check, section or approval step, name the failure it detects and what would change if it failed. If nothing changes, leave it out. By default no checksums, sign-off records, warm-up runs, baselines, fixed snapshots or report formats are entry conditions.
- By default a security check, a full test suite or a full evaluation enters a charter only if the owner names it. Propose it as a question that says what it would check and what it would block; do not write it in as a requirement on your own judgment. A project may choose otherwise.
- Say what happens on failure: which operation is logged with its error, what continues. A record or report failure never disables the main result; a real failure stays a failure.
- Time is finite. A check that takes long states its expected duration from existing timings; by default no full suites unless the owner asks.
- State what the executor may not do without the owner: publish, send to other people, spend, delete, overturn a recorded decision.
Write
- Read the request, adjacent notes and the existing work. Cite settled decisions without copying or locking their source. When the work depends on a third-party product, service or version, read its current official documentation and record the facts that constrain the work with the page and version.
- Draft Owner decisions, Outcome, Scope and non-goals, and Success checks from the template. Length follows the work: a few lines for a small task, a sliced charter (named slices, each with its own checks) for a big one. There is one kind of charter, not sizes.
- Read it as the executor: for each check, could someone tell pass from fail without asking? Walk one real example through it. Fix the gaps that would make the result fail. Do not run the future work to plan it.
- One independent review for the owner's intent and concrete defects (
peer-reviewwhen it is installed, otherwise a second agent). Fix material findings; no second round unless the owner asks. - Tell the owner what the charter will deliver and any genuine open decision, in plain
words, ending with the one question. After the owner approves, set
status: releasedand hand the path to the executor, or to whoever supervises the work.
By default an agent alone never releases a charter: it records the owner's decisions. When the
owner is away, leave the charter as a draft for them to release; a project may choose
otherwise.
Revise
A scope change updates the affected decisions and checks in the same edit, sets updated, and
leaves the rest alone. A replaced charter gets status: superseded and a pointer to its
successor. Delivery records delivered only through deliver; never infer it from the header.
Review only
Read the charter and the affected work. Report concrete mismatches, their consequences and the smallest corrections in one local file; do not edit the reviewed charter. Questions go in the conversation. Applying accepted corrections is Revise.
Related skills
Documentation Co-Authoring
anthropics
Guide structured workflows for writing docs, proposals, and technical specs collaboratively.
MCP Server Builder
anthropics
Build protocol servers that connect language models to external APIs and services.
Ask Questions If Underspecified
trailofbits
Ask clarifying questions before starting work on ambiguous requests.
Claude Plugin Marketplace Builder
daymade
Convert a Claude skills repository into an installable marketplace with auto-updates.