Protocol handbook — instant reference for when to use each epistemic protocol.
Scanned 9/3/2026
Install to Claude Code
npx -y skills add jongwony/epistemic-protocols --skill catalog --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Catalog?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/jongwony-catalog)More formats (shields.io, HTML) on the badges page.
---
name: catalog
description: "Protocol handbook — instant reference for when to use each epistemic protocol."
---
# Catalog Skill
Instant reference handbook for the epistemic protocols. Browse by cluster, look up by command, or find the right protocol for a situation.
## When to Use
Invoke this skill when:
- Quick reference: "which protocol handles X?"
- Browsing: exploring available protocols without commitment
- Situation lookup: matching a current situation to the right protocol
Skip when:
- Guided learning with practice and quizzes (use `/onboard`)
- Session analytics and growth analysis (use `/report`)
- Full coverage dashboard (use `/dashboard`)
## Argument Handling
| Invocation | Behavior |
|------------|----------|
| `/catalog` | Overview: all protocols grouped by cluster, 1-line each + usage hints |
| `/catalog {cluster}` | Cluster detail: expanded protocol cards with scenarios |
| `/catalog {command}` | Single protocol detail: full card from scenarios.md |
Argument normalization: case-insensitive, accepts `/command` or bare name (e.g., `/catalog inquire` = `/catalog /inquire` = `/catalog Aitesis`).
## Protocol Catalog
### Planning
| Protocol | Command | When to Use |
|----------|---------|-------------|
| Aitesis | `/inquire` | Context is insufficient for confident execution |
| Euporia | `/elicit` | Intent articulated but decision coordinates implicit in externalized substrate — reverse-trace to surface |
| Heuresis | `/ideate` | Object-level candidate field is empty or has prematurely converged — widen it before any selection is made |
| Proplasma | `/preview` | Right before a direction commitment when the candidates cannot be judged from descriptions — contrast cheap discard-committed placeholder probes, then decide on recognized futures |
### Analysis
| Protocol | Command | When to Use |
|----------|---------|-------------|
| Prothesis | `/frame` | No framework — need one or more analytical lenses placed before any perspective-requiring analysis begins |
| Analogia | `/ground` | An abstract idea's correspondence to a concrete domain is uncertain — needs structural grounding, not just assertion |
| Periagoge | `/induce` | One or more concrete cases accumulating into an unnamed essence — crystallize the emerging abstraction |
### Decision
| Protocol | Command | When to Use |
|----------|---------|-------------|
| Syneidesis | `/gap` | About to act — potential gaps unexamined |
### Execution
| Protocol | Command | When to Use |
|----------|---------|-------------|
| Merismos | `/apportion` | Autonomous goal whose unit plan is uncompiled — not yet cut into units that fit one run each, or cut but with no settled done-condition per unit |
### Verification
| Protocol | Command | When to Use |
|----------|---------|-------------|
| Epharmoge | `/contextualize` | Output is correct but may not fit the actual context — post-execution |
| Elenchus | `/sublate` | About to externalize a working context whose apparent sufficiency may have decayed — pre-execution |
### Cross-cutting
| Protocol | Command | When to Use |
|----------|---------|-------------|
| Horismos | `/bound` | An epistemic boundary is undefined — direction/priority, scope, type/concept, or who decides (ownership) |
| Anamnesis | `/recollect` | A vague, ambiguous recall you can't quite pin down — resolve it into recognized context |
| Anagoge | `/ascend` | A recall a single session can't resolve — elevate it to a higher-granularity unit (connected-session chain, topic cluster, or already-sedimented concept) |
| Katalepsis | `/grasp` | A result or artifact you need to actually understand — you can't follow it yet, or you think you can and haven't checked; confirm your understanding is genuine before you approve, explain, or build on it |
| Hyphegesis | `/conduct` | Multiple cognitive moves whose order, independence, reconciliation, termination, and routing are non-trivial — conduct the session's method before object-level work begins |
## Detail Mode
When a cluster name or protocol command/name is provided as argument:
1. Normalize the argument:
- Strip leading `/` if present
- Match case-insensitively against protocol names (Aitesis, Euporia, etc.) and commands (inquire, elicit, etc.)
- Match cluster names: planning, analysis, decision, execution, verification, cross-cutting
2. For **cluster** arguments: display all protocol cards in that cluster with expanded "When to Use" descriptions from the tables above.
3. For **protocol** arguments: call Read on `epistemic-cooperative/skills/onboard/references/scenarios.md`, extract the matching `## ProtocolName /command` block, and present:
- **Situation**: the scenario description
- **Intervention**: how the protocol helps
- **Philosophy**: the Greek etymology and core principle
- **Try it**: `/{command}` — direct invocation prompt
4. If no match found: list the closest matches and suggest `/catalog` for the full overview.
## Rules
1. **No gate interaction** — pure text output only. This skill is a passive reference, not an interactive dialogue.
2. **No delegation** — main agent handles all output directly. Read tool for scenarios.md detail mode only.
3. **Static overview, dynamic detail** — the Protocol Catalog tables above are embedded and authoritative. Detail mode reads scenarios.md at runtime for richer content.
4. **Argument normalization** — accept case-insensitive input; strip `/` prefix; match against both protocol names and commands.
5. **Graceful fallback** — unrecognized arguments get closest-match suggestions plus the full overview.
6. **Distinction from /onboard** — catalog is passive reference (read and go); onboard is active learning (scenario, trial, quiz). Redirect to /onboard only when the user explicitly asks for guided learning.
## Agent routing (SessionStart injection)
The tables above are the human browse view. The agent-facing counterpart is `routing-map.md` — an auto-generated routing directive (do not edit by hand) whose protocol entries are built from canonical sources — the `When to Use` triggers above plus each protocol's `Deficit → Resolution` spine — alongside a routing preamble maintained in the generator. A passive skill description under-triggers invocation, so this map is injected at SessionStart to route the agent from the deficit, not the summary. Regenerate it after any protocol or trigger change:
```bash
node scripts/generate-routing-map.js
```
`scripts/session-context.js` is the SessionStart emitter: it reads `routing-map.md` and prints the hook payload on stdout. A consuming project wires it with a `settings.json` hook of type `command`:
```json
{
"hooks": {
"SessionStart": [
{
"hooks": [
{ "type": "command", "command": "node <plugin>/skills/catalog/scripts/session-context.js" }
]
}
]
}
}
```
Inject only the parts a project needs (the routing-directive preamble is always kept):
- `--only=/grasp,/gap` — include only the listed commands (comma-separated).
- `--cluster=Analysis,Decision` — include only the listed clusters (comma-separated).
With no filter, the full map is injected; when both filters are given they combine as a union.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!