Principle Synthesis
paput-principle-synthesizer reads across your accumulated decision and operation memos and derives the consistent principles that run through many judgments as principle candidates.
A principle is a stance abstracted one level above individual decisions, so it rarely emerges from a single conversation and is structurally hard for per-conversation capture like paput-capture to surface.
This skill fills that gap by working across your whole accumulated corpus.
For the idea of the judgment axes, see What are the Judgment Axes (Memo Types).
What you can do
- Read across your public decision / operation memos (and private design decision documents as substrate)
- Find the stance that runs through two or three or more judgments
- Articulate each as a principle with a single throughline — "optimize for X, accept (reject) Y"
- Remove duplicates and overlaps with existing principles, then add principle candidates to pending
This skill only proposes to pending. To save a candidate as a PaPut memo, review it later with paput-save and approve it explicitly.
How to use
In Claude, call this skill:
/paput-principle-synthesizerIn clients such as Codex where skills cannot be invoked as slash commands, ask in natural language to use paput-principle-synthesizer.
Add PaPut skills with npx -y paput-mcp setup-ai.
Prompt example
In clients such as Codex, ask in natural language like this:
Use paput-principle-synthesizer to read across my accumulated decision and operation memos and create principle candidates.What it does internally
It normally proceeds as follows.
- Use PaPut memo search tools to fetch public decision / operation / principle memos
- Fetch the bodies of the relevant memos with
paput_get_memoand cluster them by theme (also referencing private design decision documents as substrate) - Organize the stance running through several judgments into a single, non-overlapping throughline
- Use
paput_find_similar_memosto check for duplicates against existing principle memos and pending candidates - Add only the non-duplicate, generalized candidates that contain no project-specific details to pending with
paput_add_knowledge_candidates
Quality bar
- A principle must be a stance running through at least two or three judgments / operations. A single reworded judgment is not a principle
- One principle = one throughline. Do not bundle several unrelated points under one heading
- Keep candidates mutually distinct. Do not create multiple candidates resting on the same source memos
- Generalize. Remove project-specific specifications, screen names, code, identifiers, and secrets
Notes
- This skill only proposes to pending; it does not save to PaPut directly
- Visibility defaults to private. Decide whether to make a principle public at review time
- It complements
paput-capture(per-conversation reusable knowledge). Use it when you want to extract cross-cutting principles from accumulated judgments