charter init bootstraps a repository for Charter. It uses a create-missing-only approach: it only creates files that do not already exist, never overwrites, never deletes, and stays fully offline. Repeated runs become no-ops once all files are present, making it safe to use in scripting and CI.
Files It Creates
The following files are created only when they are absent:| File | Purpose |
|---|---|
AGENTS.md | Agent context file — project summary, commands, and edit boundaries |
charter.yaml | Policy config scaffolded with profile: standard |
.gitignore | Agent artifact patterns appended when the file is absent |
ARCHITECTURE.md | Repo overview template |
.env.example | Environment variable references |
.claude/settings.json | Created when Claude is detected or explicitly requested via --agents |
Usage

Flags
Target directory to scaffold. Defaults to the repository root when one is found, otherwise the current directory.
Print the planned file actions without writing anything. Use this to preview exactly what
init would create before committing.Skip prompts for non-interactive or CI use. Because
init never overwrites existing files, this flag is effectively a no-op in most runs — it is accepted for scripting compatibility.Policy profile written into the generated
charter.yaml. Defaults to standard.Comma-separated agent surfaces to request, such as
claude,cursor. Controls whether agent-specific config files like .claude/settings.json are scaffolded. When omitted, Charter auto-detects the agent surface and falls back to claude if nothing is detected. AGENTS.md is always created regardless of this flag.After Init
Review the generated files
Open
AGENTS.md and tailor the project summary, commands section, and edit boundaries to your repo. The scaffolded content is intentionally generic.Run charter doctor
init.