charter

charter is a skill for Claude Code, Codex from a-lottes/aSPARK. It costs 64 tokens per session (974 once invoked), scanned A, original, MIT.

A project-constitution workflow for defining principles and constraints that apply across all features. It stores these standing rules in a project file used by later development phases.

In plain words
What is it for?
Use it at project startup or when changing a shared decision such as the technology stack, quality bar, or non-negotiable constraints.
Why use it?
It prevents teams from repeatedly debating project-wide decisions and gives future work a shared set of rules.

Skill for Claude CodeCodex

Installs and runs on its own, but its text points at files inside its plugin — anything it tells you to read at a ${CLAUDE_PLUGIN_ROOT} path is only there once the plugin is installed. Installing the plugin gets both.

Part of the aspark plugin — 10 skills, 7 agents shipped together

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/a-lottes/aspark/charter
Any agent
npx skills add a-lottes/aSPARK --skill charter
Clone the repo
git clone --depth 1 https://github.com/a-lottes/aSPARK

Made for: Claude Code, Codex.

Or install aspark, the plugin that ships this one along with the rest of its 10 skills, 7 agents.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for charter

README.md
[![agentmods](https://agentmods.dev/badge/skills/a-lottes/aspark/charter.svg)](https://agentmods.dev/skills/a-lottes/aspark/charter)
Your own site
<a href="https://agentmods.dev/skills/a-lottes/aspark/charter"><img src="https://agentmods.dev/badge/skills/a-lottes/aspark/charter.svg" alt="Measured on agentmods" height="20"></a>
Per session 64 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 974 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00064 $0.00974
Opus 5 $0.00032 $0.00487
Sonnet 5 $0.00013 $0.00195
Haiku 4.5 $0.00006 $0.00097

Measured yesterday against content hash 5436fb60aea4, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-05, from the pricing page.

Security

Grade A, and why

charter scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/charter/SKILL.md · 78 lines

How it starts

The opening of the file, as written. The whole thing — 78 lines — stays where its author put it; the contents beside it link to each section on GitHub.

/charter — The Project Constitution

You are setting the standing context for the whole SPARK loop. The constitution lives at .spark/constitution.md and is read by every agent before phase work — so decisions that hold across all features are made once here, not re-argued in every /story-time.

Input

Optional argument: a principle, constraint, or "set up our ground rules". No argument → offer to create the constitution from scratch or amend the existing one.

Steps

  1. Delegate to the Facilitator. Invoke the facilitator agent with the path .spark/constitution.md, the template from ${CLAUDE_PLUGIN_ROOT}/templates/constitution.md, and the user's input verbatim. Say whether this is a first draft or an amendment if you already know; the agent will otherwise detect it from the file's presence.
  2. Relay, don't guess. The agent grounds a draft in the codebase but cannot talk to the user. When it returns questions — the team's priorities, a deliberate quality bar, a contradiction only the user can resolve — put them to the user (AskUserQuestion where the choices are enumerable), then re-invoke the agent with the answers.
  3. Present the result. Show the user the drafted constitution, separating what the agent inferred from the project from what still needs their decision, plus any contradiction it flagged. Keep it short — a constitution nobody reads is dead weight. Surface the detected type(s), characteristics and proposed active lenses (e.g. seo, ux, security) as their own decision, with the evidence the agent found — this is what makes later phases situational (an SEO lens only runs on a website, a security lens only when the project handles auth or PII), so confirm it consciously with the user rather than letting it ride. Also surface the active-lens load — if 4+ lenses come out active, flag the elevated load so the user sees each phase will carry several lenses (no cap, just visibility). Surface the QA method (§8) as its own explicit decision too, with the evidence the agent found — whether this project has a browser-observable surface, and if not, which method the QA phase performs instead. Never let it ride on the profile or the lens state: a project with no website and no web-app is evidence for the question, never the answer to it, so a mis-typed profile can never suppress QA on its own. Leaving it undeclared is a valid answer and the default — QA then behaves exactly as it does today. /charter is the only ceremony that may create or amend this declaration.
  4. Iterate. Fold the user's edits back in via the agent until they're satisfied. On an amendment, confirm the Amendments log records the change and its reason.
  5. Confirm. Remind the user the constitution now binds every phase — the PO scopes within it, the EM plans within it, the Reviewer enforces it.

Read the full file on GitHub · 78 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday Changed · +8 lines 5436fb60aea4
  2. 5d ago First seen · 70 lines · 64 tokens per session scan A 7f85428ea209

Subscribe to this mod's changes

charter is a skill published in the GitHub repository a-lottes/aSPARK (19 stars, last pushed 5d ago), licensed MIT. It adds 64 tokens to every session and 974 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

audit-context

Evaluates ambient context artifacts (CLAUDE.md, memory, local skills, settings hooks) for compatibility with swarm governance. Returns a classified report so users can address interference before launching a team.

DheerG/swarms · 42 tokens

agentic-workflow-audit

Use when reviewing or auditing an existing agent / LLM-pipeline architecture — e.g. 'is my workflow actually decomposed or secretly a mega-agent?', 'are my task boundaries and success criteria right?' — even without the word 'audit'. | 要檢視/review/稽核既有 agent 或 LLM pipeline 的架構,或問「有沒有拆好」「是不是變成 mega agent」「task…

s0912758806p/agentic-sop-to-work · 144 tokens

writing-mode

Writing mode operational spec for the team lead. Returns lead identity, facilitator identity, ownership boundaries, editorial baseline, suggest-members guidance, and phase arc for writing-mode teams.

DheerG/swarms · 37 tokens

triage-mode

Triage mode operational spec for the team lead. Returns lead identity, facilitator identity, mode-specific rules, suggest-members guidance, and phase arc for triage teams that diagnose an issue without changing it.

DheerG/swarms · 44 tokens

sota-writer

Write structured State-of-the-Art (SOTA) reviews / literature reviews for academic research projects with zero hallucinated citations. Activate this skill whenever the user wants to write, update, or expand a SOTA. Triggers (FR + EN) : "écris un SOTA", "état de l'art sur", "revue de littérature", "mise à jour SOTA"…

roomi-fields/paper-trail · 208 tokens

citation-receipts

Systematic per-citation verification protocol for academic writing. MUST be used whenever writing content that cites sources — papers, blog posts, SOTAs, or any document making factual claims about external work. Triggers (FR + EN) on any writing task involving references, citations, or bibliographic claims, or when…

roomi-fields/paper-trail · 174 tokens