
hermeneia
by jongwony
Claude Code plugins for epistemic dialogue — transform unknown unknowns into known unknowns (πρόθεσις + συνείδησις)
SKILL.md
name: hermeneia description: Clarify intent-expression gaps. Transforms known unknowns into known knowns when what you mean differs from what you said. user-invocable: true
Hermeneia Protocol
Transform known unknowns into known knowns by clarifying intent-expression gaps through user-initiated dialogue, enabling precise articulation before action proceeds.
Definition
Hermeneia (ἑρμηνεία): A dialogical act of clarifying the gap between what the user intends and what they expressed, transforming recognized ambiguity into precise articulation through structured questioning.
── FLOW ──
E → G → Q → A → Î'
── TYPES ──
E = User's expression (the prompt to clarify)
G = Detected gaps ∈ {Expression, Precision, Coherence, Context}
Q = Clarification question (via AskUserQuestion)
A = User's answer
Î = Inferred intent (AI's model of user's goal)
Î' = Updated intent after clarification
── PHASE TRANSITIONS ──
Phase 0: E → recognize(E) → trigger? -- trigger recognition
Phase 1: E → diagnose(E) → G -- gap detection (internal)
Phase 2: G → Q[AskUserQuestion](G) → await → A -- Q: extern
Phase 3: A → integrate(A, Î) → Î' -- intent update (internal)
── LOOP ──
After Phase 3: re-diagnose for newly surfaced gaps.
Continue if progress; terminate on cycle, stall, or no gaps.
── TOOL GROUNDING ──
Q (extern) → AskUserQuestion tool (mandatory; Escape → cancel)
diagnose → Internal analysis (no external tool)
integrate → Internal state update (no external tool)
── MODE STATE ──
Λ = { phase: Phase, gaps: Set(Gap), clarified: Set(Gap), active: Bool }
Core Principle
Articulation over Assumption: AI helps user express what they already know but struggle to articulate.
Distinction from Other Protocols
| Protocol | Initiator | Transition | Focus |
|---|---|---|---|
| Prothesis | AI | Unknown unknowns → Known unknowns | Perspective options |
| Syneidesis | AI | Unknown unknowns → Known unknowns | Decision-point gaps |
| Hermeneia | User | Known unknowns → Known knowns | Intent-expression gaps |
Key difference: User already recognizes ambiguity exists (known unknown). Hermeneia helps articulate what user already partially knows.
Mode Activation
Activation
Command invocation or trigger phrase activates mode until clarification completes.
Clarification complete = one of: |G| = 0 (no gaps remain), cycle(G) (already clarified), or Δ = 0 for 2 rounds (progress stall with user consent to proceed).
Priority
Supersedes: Direct action patterns in User Memory (Clarification must complete before any tool execution or code changes)
Retained: Safety boundaries, tool restrictions, user explicit instructions
Action: At Phase 2, call AskUserQuestion tool to present clarification options.
- Hermeneia completes before other workflows begin
- User Memory rules resume after intent is clarified
Protocol precedence (triple-activation order): Hermeneia → Prothesis → Syneidesis
| Active Protocols | Execution Order | Rationale |
|---|---|---|
| Hermeneia + Prothesis | Hermeneia → Prothesis | Clarify intent before perspective selection |
| Hermeneia + Syneidesis | Hermeneia → Syneidesis | Clarify intent before gap surfacing |
| All three active | Hermeneia → Prothesis → Syneidesis | Intent → Perspective → Decision gaps |
Clarified expression becomes input to subsequent protocols.
Triggers
| Signal | Examples |
|---|---|
| Direct request | "clarify what I mean", "help me articulate" |
| Self-doubt | "did I express this right?", "is this clear?" |
| Ambiguity acknowledgment | "I'm not sure how to phrase this", "this might be confusing" |
| Meta-communication | "what I'm trying to say is...", "let me rephrase" |
Skip:
- User's expression is unambiguous
- User explicitly declines clarification
- Expression already clarified in current session
Mode Deactivation
| Trigger | Effect |
|---|---|
| Clarification complete | Intent established; proceed with clarified expression |
| User accepts current expression | Original expression deemed sufficient |
| User explicitly cancels | Return to normal operation |
Gap Taxonomy
| Type | Detection | Question Form |
|---|---|---|
| Expression | Incomplete articulation; missing key elements | "Did you mean X or Y?" |
| Precision | Ambiguous scope, quantity, or degree | "How specifically: [options]?" |
| Coherence | Internal contradiction or tension | "You mentioned X but also Y. Which takes priority?" |
| Context | Missing background for interpretation | "What's the context for this? [options]" |
Gap Priority
When multiple gaps detected:
- Coherence (highest): Contradictions block all interpretation
- Context: Missing background affects all other gaps
- Expression: Core articulation gaps
- Precision (lowest): Refinement after core is clear
Protocol
Phase 0: Trigger Recognition
Recognize user-initiated clarification request:
- Explicit request: User directly asks for clarification help
- Implicit signal: User expresses doubt about their own expression
- Meta-communication: User attempts to rephrase or explain their intent
Do not activate for AI-perceived ambiguity alone. User must signal awareness of potential gap.
Phase 1: Diagnosis (Silent)
Analyze user's expression for intent-expression gaps:
- Parse expression: Identify stated elements and structure
- Detect gaps: Check taxonomy against expression
- Prioritize: Order gaps by priority (Coherence > Context > Expression > Precision)
- Select: Choose highest-priority gap for clarification
Phase 2: Clarification
Call the AskUserQuestion tool to present clarification options.
Do NOT present clarification as plain text. The tool call is mandatory—text-only presentation is a protocol violation.
I notice potential ambiguity in your request:
[Gap description]
Options:
1. **[Option A]**: [interpretation with implications]
2. **[Option B]**: [interpretation with implications]
3. **[Option C]**: [interpretation with implications]
Which best captures your intent?
Question design principles:
- Recognition over Recall: Present options, don't ask open questions
- Concrete implications: Show what each choice means for execution
- Escape hatch: Include "something else" option when appropriate
- Minimal options: 2-4 choices maximum per gap
Socratic Questioning Style
Hermeneia transforms known unknowns → known knowns. The user already possesses the knowledge; they struggle to articulate it. Apply maieutic questioning (Socratic midwifery) to help users "give birth" to their own intent.
Maieutic framing for AskUserQuestion:
Instead of:
Options:
1. Option A: [interpretation]
2. Option B: [interpretation]
Use consequential framing:
Options:
1. Option A: [interpretation] — if this, then [implication for your goal]
2. Option B: [interpretation] — if this, then [implication for your goal]
3. "Let me reconsider" — take time to reflect on underlying intent
Socratic elements:
| Element | Implementation |
|---|---|
| Consequential thinking | Each option shows downstream effects |
| Goal alignment | Ask "which serves your underlying objective?" |
| Reflective pause | Include "Let me think differently" option |
| Assumption surfacing | "This assumes X—does that match your situation?" |
Example transformation:
Before (standard):
Did you mean:
1. Delete all files
2. Delete only selected files
After (Socratic):
To clarify your intent:
1. "All files" — this would clear the workspace entirely; is starting fresh your goal?
2. "Selected files" — this preserves structure; is targeted cleanup your goal?
3. "Let me reconsider" — reflect on what outcome you're actually seeking
Principle: Questions guide discovery, not merely gather information
Phase 3: Integration
After user response:
- Incorporate: Update understanding with user's clarification
- Re-diagnose: Scan clarified expression for newly surfaced gaps
- Filter: Exclude gaps already resolved in this session
- Progress check: Continue only if
progress(Î, Î') = true(no cycle, Δ > 0) - Confirm: When no gaps remain, present clarified intent for verification
- Proceed: Continue with clarified expression
Discovery triggers:
- Clarification reveals new ambiguity ("I mean the API" → "which endpoint?")
- Answer creates new tension ("fast" + "thorough" → coherence gap)
- Context shift ("for production" → new precision requirements)
## Clarified Intent
Based on your clarification:
- [Original expression element] → [Clarified meaning]
- [Ambiguous element] → [Resolved interpretation]
Proceeding with this understanding.
Intensity
| Level | When | Format |
|---|---|---|
| Light | Minor ambiguity, low stakes | "Quick check: [A] or [B]?" |
| Medium | Significant ambiguity, moderate stakes | "[Gap]. Options: [A], [B], [C]?" |
| Heavy | Core intent unclear, high stakes | "Before proceeding: [detailed options with implications]" |
Multi-Gap Handling
When multiple gaps detected:
- Sequential: Address one gap at a time, highest priority first
- Bundled: If gaps are interdependent, present as combined question
- Dynamic Discovery: After each clarification, re-diagnose for newly surfaced gaps
- Merge: Combine existing queue with newly discovered gaps, re-prioritize
Termination conditions (Hybrid strategy):
- Cycle detection: Same gap signature already in History → terminate
- Progress stall: Δ = 0 for 2 consecutive rounds → offer rephrase
- User exit: Esc/interrupt always available (Claude Code native)
Gap queue limit: Max 4 gaps queued at any time (drop lowest priority if exceeded)
On termination:
- Summarize current understanding
- Ask user to rephrase if stuck
- Proceed with best interpretation if user approves
Rules
- User-initiated only: Activate only when user signals awareness of ambiguity
- Recognition over Recall: Always call AskUserQuestion tool to present options (text presentation = protocol violation)
- Maieutic over Informational: Frame questions to guide discovery, not merely gather data
- Articulation support: Help user express what they know, don't guess what they mean
- Minimal questioning: Surface only gaps that affect execution
- Consequential options: Each option shows interpretation with downstream implications
- User authority: User's choice is final; no second-guessing selected interpretation
- Session Persistence: Mode remains active until clarification completes
- Reflective pause: Include "reconsider" option for complex intent clarification
- Escape hatch: Always allow user to provide their own phrasing
Score
Total Score
Based on repository quality metrics
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
1ヶ月以内に更新
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
Reviews
Reviews coming soon
