prompt-atom-formalization
Scan rough markdown, session exports, or pasted prose and isolate each core intent into a structured prompt atom — classified as law, value, directive, constraint, question, or branch-vector — then rewrite it into machine-readable YAML frontmatter per the RAW → CLEANED/FORMALIZED → ELEVATED doctrine. Triggers on "prompt atom extraction pass", "atomize this", "formalize these prompts", or converting loose operator text into registry-grade atoms.
What this skill does
# Prompt Atom Extraction & Formalization
Convert loose operator prose into atoms: minimal, classified, machine-readable units of intent that registries can store, pipelines can route, and future sessions can execute without re-interpreting the original wall of text.
## Why this exists
Operator intent arrives packed — one dense paragraph can carry a standing law, two directives, a constraint, and an open question. Left as prose, that intent is executable only by whoever re-reads and re-derives it. Atomized, each unit gets an ID, a class, a lifecycle state, and provenance — it becomes governable. The doctrine: **atoms are permanent**; extraction is additive; nothing in the source is destroyed by being formalized.
## The atom classes
| Class | Nature | Lifetime | Example |
|-------|--------|----------|---------|
| **law** | standing rule; governs all future behavior | permanent until amended | "nothing local-only — every artifact git-tracked AND pushed" |
| **value** | weighting/preference; shapes choices without mandating one | durable | "prefer user coinages over standard vocabulary" |
| **directive** | one concrete executable action | until DONE | "register the 5 bench agents in fleet.yaml" |
| **constraint** | boundary on how any action may be done | scoped or permanent | "never chezmoi add over existing source without diffing" |
| **question** | open decision owned by a human | until answered | "GCP_SA_KEY provisioning — enable CI deploys?" |
| **branch-vector** | a fork in possible futures; options held in superposition | until collapsed | "skills live in domus OR a-i--skills — decide before next install" |
## The three states
- **RAW** — verbatim source span, untouched. Always preserved (quoted or referenced by span), never edited.
- **CLEANED / FORMALIZED** — the intent restated minimally in normalized language, classified, given frontmatter.
- **ELEVATED** — the atom generalized to its standing form: stripped of incident-specific detail, linked to related atoms, ready for constitutional or registry placement. Only laws, values, and constraints elevate; directives and questions resolve instead.
Every atom records which state it is in; an extraction pass may legitimately stop at CLEANED.
## Workflow
### 1. Segment the source
- Split the text at intent boundaries, not sentence boundaries — an intent is one irreducible "do/never/prefer/decide" unit.
- Dense prompts pack abstractions: expect 3–10 atoms per operator paragraph. Under-segmentation (one atom per message) is the dominant failure.
- Assign each segment a provenance span: `{file, line-range}` or `{session-id, message-index}`.
### 2. Classify
- Apply the class table. Disambiguation tests:
- Would it still bind next month? → law/value/constraint, not directive.
- Does it command an action or bound an action? → directive vs constraint.
- Can the agent resolve it alone? If no → question.
- Are multiple mutually-exclusive futures named without choosing? → branch-vector.
- When torn between law and value: laws are violated, values are traded off. If you can imagine a sanctioned trade-off, it's a value.
### 3. Formalize into frontmatter
```yaml
- id: ATM-NNNNNN # mint from the registry's counter — never invent ranges
class: constraint
state: CLEANED
text: "Never `chezmoi add` over existing source without `chezmoi diff` first."
raw: "…also for god's sake diff before you chezmoi add anything again…"
provenance: {session: 8bb8f846, message: 41}
captured: 2026-06-07
status: OPEN # OPEN | DONE | ANSWERED | COLLAPSED | SUPERSEDED-BY:{id}
links: [ATM-013811] # related atoms; liberal linking
tags: [chezmoi, destructive-ops]
```
Rules:
- **Mint IDs from the registry's own counter surface** — read it, claim the range, write back; never guess the next ID.
- `raw` is mandatory: the verbatim or span-referenced source. Formalization without provenance is paraphrase, not extraction.
- One intent per atom. If the `text` field needs "and", split it.
### 4. Elevate (when warranted)
For laws/values/constraints that recur across ≥2 independent sources:
- Strip incident detail ("in the limen repo" → gone, unless scope-bound).
- Link the supporting atoms as evidence.
- Mark `state: ELEVATED` and route to the appropriate standing surface (constitution tier, reliquary, registry) **by pointer** — the atom stays in the registry; the surface cites it.
### 5. Append and report
- Append atoms to the registry surface (append-only; existing atoms are never edited by an extraction pass — supersession is a new atom with `SUPERSEDED-BY` back-link).
- Emit the provenance map and counts: atoms by class, by state, plus the segments deliberately *not* atomized (conversational filler) so reviewers can audit the discard decisions.
## Anti-patterns
- **Atomizing the assistant's restatement instead of the operator's words.** Extract from source turns only.
- **Editing RAW.** The verbatim layer is evidence; all normalization happens in CLEANED.
- **Minting IDs by pattern-matching the last seen ID.** Registry counters exist precisely because parallel sessions race; read-claim-write.
- **Eliding the boring atoms.** Constraints embedded in rants ("never do X again") are the highest-value extractions and the most commonly skipped.
- **Elevating from a single occurrence.** One strong statement is a CLEANED constraint; elevation requires recurrence.
Related in AI Agents
skill-development
IncludedComprehensive meta-skill for creating, managing, validating, auditing, and distributing Claude Code skills and slash commands (unified in v2.1.3+). Provides skill templates, creation workflows, validation patterns, audit checklists, naming conventions, YAML frontmatter guidance, progressive disclosure examples, and best practices lookup. Use when creating new skills, validating existing skills, auditing skill quality, understanding skill architecture, needing skill templates, learning about YAML frontmatter requirements, progressive disclosure patterns, tool restrictions (allowed-tools), skill composition, skill naming conventions, troubleshooting skill activation issues, creating custom slash commands, configuring command frontmatter, using command arguments ($ARGUMENTS, $1, $2), bash execution in commands, file references in commands, command namespacing, plugin commands, MCP slash commands, Skill tool configuration, or deciding between skills vs slash commands. Delegates to docs-management skill for official documentation.
reprompter
IncludedTransform messy prompts into well-structured, effective prompts — single or multi-agent. Use when: "reprompt", "reprompt this", "clean up this prompt", "structure my prompt", rough text needing XML tags and best practices, "reprompter teams", "repromptception", "run with quality", "smart run", "smart agents", multi-agent tasks, audits, parallel work, anything going to agent teams. Don't use when: simple Q&A, pure chat, immediate execution-only tasks. See "Don't Use When" section for details. Outputs: Structured XML/Markdown prompt, quality score (before/after), optional team brief + per-agent sub-prompts, agent team output files. Success criteria: Single mode quality score ≥ 7/10; Repromptception per-agent prompt quality score 8+/10; all required sections present, actionable and specific.
adaptive-compaction
IncludedAdaptive add-on policy and recovery layer that decides WHEN to compact, prune, snapshot, or fork -- replacing fixed-percent auto-compaction across Claude Code, Codex, and MCP-capable hosts. Trigger on auto-compact timing or damage: "when should I compact", "is it safe to compact now or start a fresh session", "auto-compact fires too early/mid-task", "switching to an unrelated task but the window still has space", "context rot", "answers get worse the longer the session runs", "the agent forgot the plan or my decisions after it summarized", "add a layer on top that manages context without changing the agent", raising autoCompactWindow to give the policy room, or installing/tuning a cross-tool compaction policy or PreCompact hook -- even when "compaction" is never said but the problem is context-window pressure or post-summarization memory loss. Do NOT use to summarize a conversation, build RAG, write a summarization prompt (decides WHEN not HOW), or answer max-context-length trivia.
agent-skill-creator
IncludedCreate cross-platform agent skills from workflow descriptions. Activates when users ask to create an agent, automate a repetitive workflow, create a custom skill, or need advanced agent creation. Triggers on phrases like create agent for, automate workflow, create skill for, every day I have to, daily I need to, turn process into agent, need to automate, create a cross-platform skill, validate this skill, export this skill, migrate this skill. Supports single skills, multi-agent suites, transcript processing, template-based creation, interactive configuration, cross-platform export, and spec validation.
llm-wiki
IncludedUse when building or maintaining a persistent personal knowledge base (second brain) in Obsidian where an LLM incrementally ingests sources, updates entity/concept pages, maintains cross-references, and keeps a synthesis current. Triggers include "second brain", "Obsidian wiki", "personal knowledge management", "ingest this paper/article/book", "build a research wiki", "compound knowledge", "Memex", or whenever the user wants knowledge to accumulate across sessions instead of being re-derived by RAG on every query.
skill-master
IncludedAgent Skills authoring, evaluation, and optimization. Create, edit, validate, benchmark, and improve skills following the agentskills.io specification. Use when designing SKILL.md files, structuring skill folders (references, scripts, assets), ingesting external documentation into skills, running trigger evals, benchmarking skill quality, optimizing descriptions, or performing blind A/B comparisons. Keywords: agentskills.io, SKILL.md, skill authoring, eval, benchmark, trigger optimization.