@pantion/mcp-server 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/feature-set.d.ts +14 -0
- package/dist/feature-set.d.ts.map +1 -0
- package/dist/feature-set.js +38 -0
- package/dist/feature-set.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +56 -0
- package/dist/index.js.map +1 -0
- package/dist/prompts/convergence-prompts.d.ts +4 -0
- package/dist/prompts/convergence-prompts.d.ts.map +1 -0
- package/dist/prompts/convergence-prompts.js +76 -0
- package/dist/prompts/convergence-prompts.js.map +1 -0
- package/dist/prompts/index.d.ts +4 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +7 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/prompts/workflow-prompts.d.ts +9 -0
- package/dist/prompts/workflow-prompts.d.ts.map +1 -0
- package/dist/prompts/workflow-prompts.js +249 -0
- package/dist/prompts/workflow-prompts.js.map +1 -0
- package/dist/resources/canon-resources.d.ts +4 -0
- package/dist/resources/canon-resources.d.ts.map +1 -0
- package/dist/resources/canon-resources.js +160 -0
- package/dist/resources/canon-resources.js.map +1 -0
- package/dist/server.d.ts +9 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +47 -0
- package/dist/server.js.map +1 -0
- package/dist/tools/amend.d.ts +4 -0
- package/dist/tools/amend.d.ts.map +1 -0
- package/dist/tools/amend.js +106 -0
- package/dist/tools/amend.js.map +1 -0
- package/dist/tools/approve.d.ts +4 -0
- package/dist/tools/approve.d.ts.map +1 -0
- package/dist/tools/approve.js +60 -0
- package/dist/tools/approve.js.map +1 -0
- package/dist/tools/check-convergence.d.ts +4 -0
- package/dist/tools/check-convergence.d.ts.map +1 -0
- package/dist/tools/check-convergence.js +50 -0
- package/dist/tools/check-convergence.js.map +1 -0
- package/dist/tools/check.d.ts +4 -0
- package/dist/tools/check.d.ts.map +1 -0
- package/dist/tools/check.js +190 -0
- package/dist/tools/check.js.map +1 -0
- package/dist/tools/create-skill.d.ts +4 -0
- package/dist/tools/create-skill.d.ts.map +1 -0
- package/dist/tools/create-skill.js +58 -0
- package/dist/tools/create-skill.js.map +1 -0
- package/dist/tools/decompose.d.ts +4 -0
- package/dist/tools/decompose.d.ts.map +1 -0
- package/dist/tools/decompose.js +56 -0
- package/dist/tools/decompose.js.map +1 -0
- package/dist/tools/index.d.ts +4 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +47 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/list-canons.d.ts +4 -0
- package/dist/tools/list-canons.d.ts.map +1 -0
- package/dist/tools/list-canons.js +28 -0
- package/dist/tools/list-canons.js.map +1 -0
- package/dist/tools/migrate.d.ts +4 -0
- package/dist/tools/migrate.d.ts.map +1 -0
- package/dist/tools/migrate.js +38 -0
- package/dist/tools/migrate.js.map +1 -0
- package/dist/tools/onboard.d.ts +4 -0
- package/dist/tools/onboard.d.ts.map +1 -0
- package/dist/tools/onboard.js +27 -0
- package/dist/tools/onboard.js.map +1 -0
- package/dist/tools/reconverge.d.ts +4 -0
- package/dist/tools/reconverge.d.ts.map +1 -0
- package/dist/tools/reconverge.js +68 -0
- package/dist/tools/reconverge.js.map +1 -0
- package/dist/tools/reject.d.ts +4 -0
- package/dist/tools/reject.d.ts.map +1 -0
- package/dist/tools/reject.js +57 -0
- package/dist/tools/reject.js.map +1 -0
- package/dist/tools/reskill.d.ts +4 -0
- package/dist/tools/reskill.d.ts.map +1 -0
- package/dist/tools/reskill.js +63 -0
- package/dist/tools/reskill.js.map +1 -0
- package/dist/tools/resume.d.ts +4 -0
- package/dist/tools/resume.d.ts.map +1 -0
- package/dist/tools/resume.js +56 -0
- package/dist/tools/resume.js.map +1 -0
- package/dist/tools/reverse.d.ts +4 -0
- package/dist/tools/reverse.d.ts.map +1 -0
- package/dist/tools/reverse.js +32 -0
- package/dist/tools/reverse.js.map +1 -0
- package/dist/tools/save-canon.d.ts +4 -0
- package/dist/tools/save-canon.d.ts.map +1 -0
- package/dist/tools/save-canon.js +97 -0
- package/dist/tools/save-canon.js.map +1 -0
- package/dist/tools/start.d.ts +4 -0
- package/dist/tools/start.d.ts.map +1 -0
- package/dist/tools/start.js +83 -0
- package/dist/tools/start.js.map +1 -0
- package/dist/tools/translate.d.ts +4 -0
- package/dist/tools/translate.d.ts.map +1 -0
- package/dist/tools/translate.js +102 -0
- package/dist/tools/translate.js.map +1 -0
- package/dist/tools/update.d.ts +4 -0
- package/dist/tools/update.d.ts.map +1 -0
- package/dist/tools/update.js +42 -0
- package/dist/tools/update.js.map +1 -0
- package/dist/utils/response.d.ts +12 -0
- package/dist/utils/response.d.ts.map +1 -0
- package/dist/utils/response.js +18 -0
- package/dist/utils/response.js.map +1 -0
- package/package.json +37 -0
- package/protocol/commands/amend.md +188 -0
- package/protocol/commands/build.md +90 -0
- package/protocol/commands/check.md +255 -0
- package/protocol/commands/create-skill.md +81 -0
- package/protocol/commands/decompose.md +230 -0
- package/protocol/commands/dialog.md +173 -0
- package/protocol/commands/help.md +121 -0
- package/protocol/commands/migrate.md +173 -0
- package/protocol/commands/onboard.md +210 -0
- package/protocol/commands/quick.md +170 -0
- package/protocol/commands/redialog.md +252 -0
- package/protocol/commands/reskill.md +73 -0
- package/protocol/commands/resume.md +148 -0
- package/protocol/commands/reverse.md +312 -0
- package/protocol/commands/start.md +220 -0
- package/protocol/commands/translate.md +157 -0
- package/protocol/commands/update.md +205 -0
- package/protocol/commands/validate.md +137 -0
- package/protocol/core-advanced.md +188 -0
- package/protocol/core.md +273 -0
- package/protocol/pantion-future-prompt.md +88 -0
- package/protocol/pantion-intent.md +78 -0
- package/protocol/templates/acceptance-tests.md +116 -0
- package/protocol/templates/behavior-map.md +135 -0
- package/protocol/templates/traceability-map.md +56 -0
- package/skills/image/convergence-rules.md +55 -0
- package/skills/image/prompts/convergence-intro.md +25 -0
- package/skills/image/prompts/translate-intro.md +37 -0
- package/skills/image/skill.json +12 -0
- package/skills/image/translate.md +67 -0
- package/skills/skill-builder/convergence-rules.md +64 -0
- package/skills/skill-builder/prompts/convergence-intro.md +21 -0
- package/skills/skill-builder/prompts/translate-intro.md +17 -0
- package/skills/skill-builder/skill.json +10 -0
- package/skills/skill-builder/translate.md +46 -0
- package/skills/software/convergence-rules.md +29 -0
- package/skills/software/prompts/convergence-intro.md +22 -0
- package/skills/software/prompts/translate-intro.md +19 -0
- package/skills/software/skill.json +12 -0
- package/skills/software/translate.md +74 -0
- package/skills/software-brownfield/convergence-rules.md +109 -0
- package/skills/software-brownfield/prompts/convergence-intro.md +26 -0
- package/skills/software-brownfield/prompts/translate-intro.md +13 -0
- package/skills/software-brownfield/skill.json +12 -0
- package/skills/software-brownfield/translate.md +56 -0
- package/souls/beginner/rules.md +34 -0
- package/souls/beginner/soul.json +6 -0
- package/souls/default/rules.md +25 -0
- package/souls/default/soul.json +6 -0
- package/souls/young/rules.md +67 -0
- package/souls/young/soul.json +6 -0
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
> **Legacy**: This file is kept for backward compatibility. New sessions use "dialog" mode. See `dialog.md`.
|
|
2
|
+
|
|
3
|
+
# /pantion-quick — Quick prototyping (experiment mode)
|
|
4
|
+
|
|
5
|
+
You are now in Pantion Quick mode. This is the accelerated variant for prototyping and discovery.
|
|
6
|
+
You follow the same protocol as /pantion-start, but with these adjustments:
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Difference from /pantion-start
|
|
11
|
+
|
|
12
|
+
| Aspect | /pantion-start | /pantion-quick |
|
|
13
|
+
|--------|---------------|----------------|
|
|
14
|
+
| Questions | Resolve all ambiguity | Only ask critical questions |
|
|
15
|
+
| Assumptions | None (OPEN QUESTION) | Make conservative assumptions |
|
|
16
|
+
| Authority Budget | Cover completely | Cover basics, rest with conservative defaults |
|
|
17
|
+
| Non-goals | Document explicitly | Document basics |
|
|
18
|
+
| Build speed | After full convergence | After sufficient convergence |
|
|
19
|
+
| Marking | Everything is checked | Assumptions are marked with lightning |
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## PHASE 1: QUICK CONVERGENCE
|
|
24
|
+
|
|
25
|
+
### Start
|
|
26
|
+
Say:
|
|
27
|
+
|
|
28
|
+
"Quick mode: I'll get moving fast. I'll only ask the crucial questions and make conservative assumptions for the rest. I'll mark those so you can adjust them later. Tell me what you want to build."
|
|
29
|
+
|
|
30
|
+
### Rules
|
|
31
|
+
1. Ask ONE question at a time — wait for the answer before asking the next
|
|
32
|
+
2. Ask at most 5-8 essential questions (don't exhaustively converge)
|
|
33
|
+
3. Focus on: what does it do, for whom, what are the hard boundaries
|
|
34
|
+
4. On ambiguity: make a conservative assumption and mark with ASSUMPTION
|
|
35
|
+
5. Authority budget: use conservative defaults where not explicitly discussed
|
|
36
|
+
6. Non-goals: base on what logically is NOT in scope
|
|
37
|
+
|
|
38
|
+
### Conservative defaults for undiscussed elements:
|
|
39
|
+
- **Data retention**: store nothing unless explicitly requested
|
|
40
|
+
- **Data access**: only what is minimally necessary
|
|
41
|
+
- **Rate limits**: no explicit limits (but note as ASSUMPTION)
|
|
42
|
+
- **Auditability**: basic logging
|
|
43
|
+
- **Failure behavior**: graceful fail with user notification
|
|
44
|
+
- **Inference policy**: conservative
|
|
45
|
+
|
|
46
|
+
### Saving the dialog (CRITICAL — the dialog IS the canon)
|
|
47
|
+
|
|
48
|
+
Same principle as /pantion-start: the verbatim dialog is always saved.
|
|
49
|
+
|
|
50
|
+
**Two files are always produced:**
|
|
51
|
+
- `canon/{naam}/dialog.md` — THE CANON: the verbatim dialog (quick status is in the stamp, not the filename)
|
|
52
|
+
- `canon/{naam}/summary.md` — DERIVED: structured summary for navigation
|
|
53
|
+
|
|
54
|
+
### Convergence Verification Table (quick variant)
|
|
55
|
+
|
|
56
|
+
Before the stamp, include the verification table (with assumptions marked):
|
|
57
|
+
|
|
58
|
+
**Convergence Verification:**
|
|
59
|
+
|
|
60
|
+
| Criterium | Status |
|
|
61
|
+
|-----------|--------|
|
|
62
|
+
| Canon status | ✅ |
|
|
63
|
+
| Intent clarity | ✅ |
|
|
64
|
+
| Observable success | ✅ |
|
|
65
|
+
| Inputs complete | ✅ |
|
|
66
|
+
| Outputs unambiguous | ✅ |
|
|
67
|
+
| Failure specified | ⚡ ASSUMPTION: graceful fail |
|
|
68
|
+
| Constraints absolute | ✅ |
|
|
69
|
+
| Non-goals documented | ⚡ ASSUMPTION: basic non-goals |
|
|
70
|
+
| Ambiguity handled | ⚡ ASSUMPTION: conservative |
|
|
71
|
+
| Authority Budget | ⚡ ASSUMPTION: conservative defaults |
|
|
72
|
+
| Inference Policy | ✅ conservative |
|
|
73
|
+
| Dialog stability | ✅ |
|
|
74
|
+
|
|
75
|
+
**Conclusion:** Sufficient for quick prototype. [N] assumptions made — see assumptions list.
|
|
76
|
+
|
|
77
|
+
### Convergence Stamp (quick variant)
|
|
78
|
+
|
|
79
|
+
The stamp is placed at the top of the dialog file:
|
|
80
|
+
|
|
81
|
+
=== DIALOGSPEC STAMP ===
|
|
82
|
+
STATUS: CONVERGED (QUICK)
|
|
83
|
+
DATE: [today]
|
|
84
|
+
MODEL: [model-id (Display Name), e.g. claude-opus-4-6 (Claude Opus 4.6)]
|
|
85
|
+
CANON TYPE: standalone
|
|
86
|
+
PARENT: none
|
|
87
|
+
OPEN QUESTIONS: none (assumptions marked)
|
|
88
|
+
INFERENCE POLICY: conservative
|
|
89
|
+
AUTHORITY BUDGET: partial (conservative defaults for undiscussed elements)
|
|
90
|
+
STABILITY ZONES: [HARD invariants]
|
|
91
|
+
FLEX ZONES: [FLEX defaults + assumptions]
|
|
92
|
+
ASSUMPTIONS: [list of all assumptions]
|
|
93
|
+
=== /DIALOGSPEC STAMP ===
|
|
94
|
+
|
|
95
|
+
Save the verbatim dialog as `canon/{naam}/dialog.md`.
|
|
96
|
+
Generate the derived summary as `canon/{naam}/summary.md`.
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## PHASE 2: QUICK TRANSLATION
|
|
101
|
+
|
|
102
|
+
Generate the same files as /pantion-start, but:
|
|
103
|
+
- Mark all assumptions with `ASSUMPTION:` in the files
|
|
104
|
+
- Keep files shorter and more pragmatic
|
|
105
|
+
- Skip command files unless there are clear workflows
|
|
106
|
+
|
|
107
|
+
All derived files point to the dialog: `<!-- Derived from: canon/{naam}/dialog.md, [date] -->`
|
|
108
|
+
|
|
109
|
+
### Extra file:
|
|
110
|
+
|
|
111
|
+
**`canon/assumptions.md`**
|
|
112
|
+
|
|
113
|
+
List all assumptions made in quick mode with their conservative defaults. Reference to the dialog turns where the assumption was made. Each assumption can be replaced with an explicit choice via /pantion-amend.
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
## PHASE 3: QUICK BUILD
|
|
118
|
+
|
|
119
|
+
Build the system with the same rules as /pantion-start.
|
|
120
|
+
|
|
121
|
+
### Extra after building:
|
|
122
|
+
|
|
123
|
+
Say:
|
|
124
|
+
|
|
125
|
+
"Prototype is built. I made [N] assumptions.
|
|
126
|
+
Here are the most important ones:
|
|
127
|
+
|
|
128
|
+
1. [assumption 1]
|
|
129
|
+
2. [assumption 2]
|
|
130
|
+
3. [assumption 3]
|
|
131
|
+
|
|
132
|
+
Want to adjust any of these? Or would you like to run the full protocol with /pantion-start?"
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## When to escalate
|
|
137
|
+
|
|
138
|
+
### To /pantion-start (full protocol)
|
|
139
|
+
|
|
140
|
+
If during quick mode it becomes clear that:
|
|
141
|
+
- There are safety-critical aspects that cannot be covered by assumptions
|
|
142
|
+
- The user corrects assumptions multiple times
|
|
143
|
+
- Authority Budget questions are too complex for conservative defaults
|
|
144
|
+
|
|
145
|
+
Then say:
|
|
146
|
+
"This system has aspects that cannot be covered by assumptions. I recommend switching to /pantion-start for the full protocol. The quick dialog will be carried over as a starting point."
|
|
147
|
+
|
|
148
|
+
### To /pantion-decompose (split up)
|
|
149
|
+
|
|
150
|
+
If during quick mode it becomes clear that:
|
|
151
|
+
- Multiple independent modules/interfaces are emerging
|
|
152
|
+
- The Decompose Score is 3 or higher (see /pantion-start for criteria)
|
|
153
|
+
- Different parts have fundamentally different rights/restrictions
|
|
154
|
+
|
|
155
|
+
Then say:
|
|
156
|
+
"This system is too large for a single quick canon. I recommend switching to /pantion-decompose. I'll carry the quick dialog over as input for the Architect Canon — what we already know doesn't need to be discussed again."
|
|
157
|
+
|
|
158
|
+
When switching to decompose:
|
|
159
|
+
1. Save the current quick dialog as DRAFT
|
|
160
|
+
2. Start /pantion-decompose
|
|
161
|
+
3. Use the quick dialog as starting point (don't start from scratch)
|
|
162
|
+
4. Mark in `canon/index.md` that the quick canon has been absorbed into the Architect Canon
|
|
163
|
+
|
|
164
|
+
## Canon Index
|
|
165
|
+
|
|
166
|
+
Update `canon/index.md` when completing a quick session:
|
|
167
|
+
- Status: CONVERGED (QUICK)
|
|
168
|
+
- References to both dialog file and summary file
|
|
169
|
+
- List of all assumptions
|
|
170
|
+
- Reference to `canon/assumptions.md`
|
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
# /pantion-redialog — Re-evaluate a converged canon with a better model
|
|
2
|
+
|
|
3
|
+
A converged canon was conducted by a specific model at a specific time. A newer or more capable model may identify gaps: questions that should have been asked, assumptions that were never made explicit, edge cases that were not explored.
|
|
4
|
+
|
|
5
|
+
This command reads an existing converged canon, produces a gap analysis, and conducts a targeted supplementary dialog to fill those gaps. The original dialog stays intact (append-only).
|
|
6
|
+
|
|
7
|
+
**Alias:** `/pantion-reconverge`
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## WHEN YOU ARRIVE HERE
|
|
12
|
+
|
|
13
|
+
- You have access to a more capable model than the one that conducted the original dialog
|
|
14
|
+
- You suspect the original convergence was too shallow (missing edge cases, vague answers accepted)
|
|
15
|
+
- New domain knowledge has emerged since the original convergence
|
|
16
|
+
- A `/pantion-check` recommended a redialog
|
|
17
|
+
- Periodic re-evaluation of an important canon
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## STEP 1: IDENTIFY THE CANON
|
|
22
|
+
|
|
23
|
+
Ask the user (or detect from context):
|
|
24
|
+
|
|
25
|
+
"Which canon do you want to redialog?"
|
|
26
|
+
|
|
27
|
+
Options:
|
|
28
|
+
- `canon/dialogspec-dialog.md` (standalone)
|
|
29
|
+
- `canon/architect-dialog.md` (system level)
|
|
30
|
+
- `canon/components/component-[name]-dialog.md` (component)
|
|
31
|
+
|
|
32
|
+
Read the chosen dialog file (the canon). Verify that the status is CONVERGED, CONVERGED (QUICK), CONVERGED (REVERSE), AMENDED, or RECONVERGED.
|
|
33
|
+
|
|
34
|
+
If the status is DRAFT: "This canon is not yet converged. Use `/pantion-resume` to continue converging first."
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## STEP 2: GAP ANALYSIS
|
|
39
|
+
|
|
40
|
+
Read the entire dialog carefully. Evaluate it against the current convergence standard.
|
|
41
|
+
|
|
42
|
+
Analyze across six dimensions:
|
|
43
|
+
|
|
44
|
+
### 1. Unexplored convergence elements
|
|
45
|
+
Check the standard convergence checklist:
|
|
46
|
+
- [ ] Intent: is it truly unambiguous, or just vaguely stated?
|
|
47
|
+
- [ ] Success criteria: are they externally verifiable, or just "it works"?
|
|
48
|
+
- [ ] Inputs: are ALL inputs named (explicit + implicit + defaults)?
|
|
49
|
+
- [ ] Outputs: are they observable and concrete?
|
|
50
|
+
- [ ] Failure behavior: is it specified for each failure mode, not just happy path?
|
|
51
|
+
- [ ] Constraints: are they absolute, or "unless convenient"?
|
|
52
|
+
- [ ] Non-goals: are they specific enough to be enforceable?
|
|
53
|
+
- [ ] Authority Budget Rights: are all six fields addressed?
|
|
54
|
+
- [ ] Authority Budget Consumption: are rate/cost limits specified?
|
|
55
|
+
- [ ] Persistence/restart behavior: is it addressed?
|
|
56
|
+
|
|
57
|
+
For each item: is it covered in the dialog? Is the coverage deep enough?
|
|
58
|
+
|
|
59
|
+
### 2. Implicit assumptions
|
|
60
|
+
Identify statements where the original model or user assumed something without making it explicit:
|
|
61
|
+
- Technology assumptions embedded in language
|
|
62
|
+
- User base assumptions (who will use this?)
|
|
63
|
+
- Scale assumptions (how much data? how many users?)
|
|
64
|
+
- Environment assumptions (where will this run?)
|
|
65
|
+
|
|
66
|
+
### 3. Ambiguous resolutions
|
|
67
|
+
Find places where the original model accepted a vague answer:
|
|
68
|
+
- "It should be fast" → how fast? Under what conditions?
|
|
69
|
+
- "Standard security" → which standard? What threat model?
|
|
70
|
+
- "Handle errors gracefully" → which errors? What is graceful?
|
|
71
|
+
|
|
72
|
+
### 4. Missing edge cases
|
|
73
|
+
Identify failure modes and boundary conditions not discussed:
|
|
74
|
+
- What happens when input is malformed?
|
|
75
|
+
- What happens at scale limits?
|
|
76
|
+
- What happens when dependencies fail?
|
|
77
|
+
- What about concurrent access, race conditions?
|
|
78
|
+
- What about data migration, versioning?
|
|
79
|
+
|
|
80
|
+
### 5. Authority budget gaps
|
|
81
|
+
- Are forbidden actions truly complete, or only obvious ones?
|
|
82
|
+
- Is data retention addressed with specific timeframes?
|
|
83
|
+
- Are audit requirements concrete?
|
|
84
|
+
- For consumption: are limits realistic and enforceable?
|
|
85
|
+
|
|
86
|
+
### 6. Interface gaps (for decomposed systems)
|
|
87
|
+
- Are all five contract fields present per interface?
|
|
88
|
+
- Is the data shape concrete enough to implement?
|
|
89
|
+
- Are error semantics specific (not just "it fails")?
|
|
90
|
+
- Are rate/cost expectations realistic?
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
## STEP 3: PRESENT GAP ANALYSIS
|
|
95
|
+
|
|
96
|
+
Present the findings to the user:
|
|
97
|
+
|
|
98
|
+
"I've analyzed the existing dialog and found [N] areas that could benefit from deeper exploration:
|
|
99
|
+
|
|
100
|
+
**Critical gaps** (likely to cause implementation problems):
|
|
101
|
+
1. [gap]: [why it matters]
|
|
102
|
+
2. [gap]: [why it matters]
|
|
103
|
+
|
|
104
|
+
**Moderate gaps** (may lead to assumptions during implementation):
|
|
105
|
+
3. [gap]: [why it matters]
|
|
106
|
+
4. [gap]: [why it matters]
|
|
107
|
+
|
|
108
|
+
**Minor gaps** (nice to have, would improve precision):
|
|
109
|
+
5. [gap]: [why it matters]
|
|
110
|
+
|
|
111
|
+
Would you like to:
|
|
112
|
+
A) Explore all gaps
|
|
113
|
+
B) Select specific gaps to explore (give me the numbers)
|
|
114
|
+
C) Skip — the canon is fine as-is"
|
|
115
|
+
|
|
116
|
+
**If the user chooses C**: stop. The canon remains unchanged. Say: "Understood. The canon stays at its current status."
|
|
117
|
+
|
|
118
|
+
**If no gaps are found**: "I've analyzed the dialog and the convergence looks solid. No significant gaps found. The canon stays at its current status."
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## STEP 4: REDIALOG
|
|
123
|
+
|
|
124
|
+
For each selected gap, conduct a targeted dialog:
|
|
125
|
+
|
|
126
|
+
1. Explain WHY this area needs attention (what the original dialog missed)
|
|
127
|
+
2. Ask specific questions to resolve the gap
|
|
128
|
+
3. Classify answers as HARD or FLEX
|
|
129
|
+
4. Move to the next gap when the current one is resolved
|
|
130
|
+
|
|
131
|
+
### Rules during redialog:
|
|
132
|
+
- Ask ONE question at a time — wait for the answer before asking the next
|
|
133
|
+
- The original dialog is NOT modified (append-only)
|
|
134
|
+
- New answers may override FLEX decisions from the original dialog
|
|
135
|
+
- New answers may NOT override HARD constraints (those require `/pantion-amend`)
|
|
136
|
+
- If the user contradicts a HARD constraint: "This conflicts with a HARD constraint from the original dialog: [quote]. To change this, use `/pantion-amend`."
|
|
137
|
+
- Redialog OQ-IDs start at OQ-101 to distinguish from original questions (e.g. `OPEN QUESTION [OQ-101]: ...`)
|
|
138
|
+
|
|
139
|
+
### Saving the redialog
|
|
140
|
+
|
|
141
|
+
**Append** the redialog section to the existing dialog file:
|
|
142
|
+
|
|
143
|
+
--- REDIALOG [date] ---
|
|
144
|
+
GAP ANALYSIS:
|
|
145
|
+
1. [gap description]
|
|
146
|
+
2. [gap description]
|
|
147
|
+
...
|
|
148
|
+
SELECTED BY USER: [numbers or "all"]
|
|
149
|
+
|
|
150
|
+
ASSISTANT: [redialog question]
|
|
151
|
+
|
|
152
|
+
HUMAN: [user answer]
|
|
153
|
+
|
|
154
|
+
ASSISTANT: [follow-up or next gap question]
|
|
155
|
+
|
|
156
|
+
HUMAN: [user answer]
|
|
157
|
+
|
|
158
|
+
...
|
|
159
|
+
|
|
160
|
+
--- /REDIALOG ---
|
|
161
|
+
|
|
162
|
+
---
|
|
163
|
+
|
|
164
|
+
## STEP 5: UPDATE STAMP
|
|
165
|
+
|
|
166
|
+
Replace the convergence stamp with an updated stamp:
|
|
167
|
+
|
|
168
|
+
=== DIALOGSPEC STAMP ===
|
|
169
|
+
STATUS: RECONVERGED
|
|
170
|
+
DATE: [today]
|
|
171
|
+
MODEL: [model-id (Display Name), e.g. claude-opus-4-6 (Claude Opus 4.6)]
|
|
172
|
+
CANON TYPE: [unchanged from original]
|
|
173
|
+
PARENT: [unchanged from original]
|
|
174
|
+
PREVIOUS STATUS: [original status] (original date: [date])
|
|
175
|
+
REDIALOG: [N] gaps identified, [M] explored, [K] resolved
|
|
176
|
+
OPEN QUESTIONS: none
|
|
177
|
+
INFERENCE POLICY: [unchanged or updated]
|
|
178
|
+
AUTHORITY BUDGET RIGHTS: complete
|
|
179
|
+
AUTHORITY BUDGET CONSUMPTION: complete | n/a
|
|
180
|
+
STABILITY ZONES: [updated list]
|
|
181
|
+
FLEX ZONES: [updated list]
|
|
182
|
+
INHERITED CONSTRAINTS: [unchanged]
|
|
183
|
+
INTERFACE CANONS: [unchanged]
|
|
184
|
+
=== /DIALOGSPEC STAMP ===
|
|
185
|
+
|
|
186
|
+
---
|
|
187
|
+
|
|
188
|
+
## STEP 6: REGENERATE DERIVED FILES
|
|
189
|
+
|
|
190
|
+
1. **Regenerate the summary** from the complete dialog (including the redialog section)
|
|
191
|
+
2. Determine which spec files are affected (via `canon/traceability.md`)
|
|
192
|
+
3. Regenerate affected spec files
|
|
193
|
+
4. Update `canon/traceability.md`
|
|
194
|
+
|
|
195
|
+
---
|
|
196
|
+
|
|
197
|
+
## STEP 7: UPDATE CANON INDEX
|
|
198
|
+
|
|
199
|
+
Update `canon/index.md`:
|
|
200
|
+
- Update STATUS to RECONVERGED
|
|
201
|
+
- Log the redialog (date + number of gaps explored)
|
|
202
|
+
- Update "Last modified"
|
|
203
|
+
- Remove any Open Questions that were resolved
|
|
204
|
+
- Add any new Open Questions discovered during the redialog
|
|
205
|
+
|
|
206
|
+
---
|
|
207
|
+
|
|
208
|
+
## STEP 8: REPORT
|
|
209
|
+
|
|
210
|
+
Say:
|
|
211
|
+
|
|
212
|
+
"Redialog complete for [canon name].
|
|
213
|
+
|
|
214
|
+
**Gap analysis:** [N] gaps identified, [M] explored, [K] resolved
|
|
215
|
+
|
|
216
|
+
**Gaps explored:**
|
|
217
|
+
- [gap 1]: [resolved / new HARD / new FLEX / opened as question]
|
|
218
|
+
- [gap 2]: [resolved / ...]
|
|
219
|
+
|
|
220
|
+
**Regenerated files:**
|
|
221
|
+
- [list of files]
|
|
222
|
+
|
|
223
|
+
**New insights:**
|
|
224
|
+
- [any significant new information from the redialog]
|
|
225
|
+
|
|
226
|
+
The canon is now RECONVERGED. The original dialog is preserved — the redialog has been appended.
|
|
227
|
+
|
|
228
|
+
Would you like to review the updated summary, or proceed to regenerating the implementation?"
|
|
229
|
+
|
|
230
|
+
---
|
|
231
|
+
|
|
232
|
+
## FOR HIERARCHICAL SYSTEMS
|
|
233
|
+
|
|
234
|
+
When redialoging an Architect Canon:
|
|
235
|
+
- The gap analysis also evaluates system-wide coverage and decomposition clarity
|
|
236
|
+
- After redialoging the architect level, consider whether component or interface canons also need a redialog
|
|
237
|
+
- Present this to the user: "The architect canon has been redialoged. Based on the changes, the following component/interface canons may also benefit from a redialog: [list]. Would you like to proceed?"
|
|
238
|
+
|
|
239
|
+
When redialoging a Component Canon:
|
|
240
|
+
- Check that redialog findings do not violate inherited constraints
|
|
241
|
+
- If they do: "This finding conflicts with an inherited constraint from the Architect Canon. Use `/pantion-amend` on the Architect Canon first."
|
|
242
|
+
|
|
243
|
+
---
|
|
244
|
+
|
|
245
|
+
## ITERATIVE REDIALOG
|
|
246
|
+
|
|
247
|
+
A canon may be redialoged multiple times. Each redialog is appended as a separate section. The stamp always reflects the latest state:
|
|
248
|
+
|
|
249
|
+
STATUS: RECONVERGED
|
|
250
|
+
PREVIOUS STATUS: RECONVERGED (previous redialog: [date])
|
|
251
|
+
|
|
252
|
+
This enables iterative deepening as models improve over time.
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# /pantion-reskill — Re-evaluate an existing dynamic skill
|
|
2
|
+
|
|
3
|
+
Re-evaluate an existing dynamic skill's canon with a better model. Identifies gaps in domain knowledge and conducts supplementary convergence.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## WHEN YOU ARRIVE HERE
|
|
8
|
+
|
|
9
|
+
- A better model is available and you want to deepen the skill's domain knowledge
|
|
10
|
+
- The skill has proven insufficient in practice (agents still get things wrong)
|
|
11
|
+
- New domain knowledge has emerged since the skill was created
|
|
12
|
+
- Periodic review of an important skill
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## RULES
|
|
17
|
+
|
|
18
|
+
1. Ask ONE question at a time — wait for the answer before asking the next
|
|
19
|
+
2. The original skill dialog is append-only — never edit or delete
|
|
20
|
+
3. Focus on GAPS — things that should have been asked but weren't
|
|
21
|
+
4. The user is still the domain expert
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## STEP 1: IDENTIFY THE SKILL
|
|
26
|
+
|
|
27
|
+
Ask the user which skill to reskill. Verify:
|
|
28
|
+
- The skill exists in skills/{name}/
|
|
29
|
+
- The skill has a canon in skills/{name}/canon/skill-dialog.md
|
|
30
|
+
- The canon is CONVERGED (not DRAFT)
|
|
31
|
+
|
|
32
|
+
If no canon exists: "This is a hand-crafted skill without a canon. Use `/pantion-create-skill` to create a dynamic version."
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## STEP 2: GAP ANALYSIS
|
|
37
|
+
|
|
38
|
+
Read the skill canon dialog. Analyze across these skill-specific dimensions:
|
|
39
|
+
|
|
40
|
+
1. **Missing domain questions**: Are there convergence questions that should be asked but aren't in the rules?
|
|
41
|
+
2. **Incomplete anti-patterns**: Are there agent mistakes not covered?
|
|
42
|
+
3. **Vague guidance**: Are any rules too vague to be actionable?
|
|
43
|
+
4. **Output gaps**: Is the translation specification complete?
|
|
44
|
+
5. **Vocabulary gaps**: Are there domain terms not explained?
|
|
45
|
+
6. **Real-world gaps**: Based on actual use, what did the skill fail to guide?
|
|
46
|
+
|
|
47
|
+
Present the gap analysis and let the user choose which gaps to explore.
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## STEP 3: SUPPLEMENTARY DIALOG
|
|
52
|
+
|
|
53
|
+
Conduct a targeted dialog for selected gaps. Append to the existing canon (append-only).
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## STEP 4: UPDATE AND REGENERATE
|
|
58
|
+
|
|
59
|
+
1. Save the updated skill canon (append-only)
|
|
60
|
+
2. Regenerate all skill files from the updated canon
|
|
61
|
+
3. Each regenerated file gets an updated derivation comment
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## STEP 5: REPORT
|
|
66
|
+
|
|
67
|
+
"Reskill complete for '{name}'.
|
|
68
|
+
|
|
69
|
+
**Gaps explored:** [list]
|
|
70
|
+
**Skill files regenerated:** [list]
|
|
71
|
+
**New domain knowledge added:** [summary]
|
|
72
|
+
|
|
73
|
+
The skill canon has been updated (append-only). Use this skill in your next convergence dialog to benefit from the improved domain knowledge."
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
# /pantion-resume — Continue converging on an existing DRAFT canon
|
|
2
|
+
|
|
3
|
+
You have one or more canons that are not yet fully converged.
|
|
4
|
+
You pick up where you left off.
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## WHEN YOU ARRIVE HERE
|
|
9
|
+
|
|
10
|
+
- A previous `/pantion-start` session was not completed (STATUS: DRAFT)
|
|
11
|
+
- There are OPEN QUESTIONS in `canon/index.md` that need to be answered
|
|
12
|
+
- A large decomposition spans multiple sessions
|
|
13
|
+
- After stakeholder feedback on a DRAFT canon
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## STEP 1: RESTORE CONTEXT
|
|
18
|
+
|
|
19
|
+
Read `canon/index.md` and identify:
|
|
20
|
+
|
|
21
|
+
1. Which canons exist?
|
|
22
|
+
2. Which have STATUS: DRAFT?
|
|
23
|
+
3. Which OPEN QUESTIONS are there?
|
|
24
|
+
|
|
25
|
+
Then read the **dialog file** (the canon) to restore full context. The dialog contains the complete history of all previous sessions.
|
|
26
|
+
|
|
27
|
+
Report:
|
|
28
|
+
|
|
29
|
+
"Welcome back. Here is the current state:
|
|
30
|
+
|
|
31
|
+
**Canons:**
|
|
32
|
+
- [canon name]: [STATUS] — [N] open questions
|
|
33
|
+
|
|
34
|
+
**Open Questions (most important first):**
|
|
35
|
+
1. [question 1] (from [canon name])
|
|
36
|
+
2. [question 2] (from [canon name])
|
|
37
|
+
3. [question 3] (from [canon name])
|
|
38
|
+
|
|
39
|
+
Would you like to work through the open questions, or do you want to tackle something else first?"
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## STEP 2: WORK THROUGH OPEN QUESTIONS
|
|
44
|
+
|
|
45
|
+
Take on the OPEN QUESTIONS one by one.
|
|
46
|
+
|
|
47
|
+
### Rules:
|
|
48
|
+
1. Ask ONE question at a time — wait for the answer before asking the next
|
|
49
|
+
2. Read the dialog file (canon) to restore full context
|
|
50
|
+
3. Re-pose the question, with context on why it was open
|
|
51
|
+
4. Classify the answer as HARD or FLEX
|
|
52
|
+
5. **Append the new dialog turns** to the existing dialog file (append-only — never edit previous turns)
|
|
53
|
+
6. Remove the question from the Open Questions Backlog in `canon/index.md`
|
|
54
|
+
|
|
55
|
+
### When new questions arise:
|
|
56
|
+
If answering a question raises new questions:
|
|
57
|
+
- Add them to the Open Questions Backlog
|
|
58
|
+
- Continue with the current question
|
|
59
|
+
|
|
60
|
+
### When there are dependencies:
|
|
61
|
+
If a question depends on another canon (during decomposition):
|
|
62
|
+
- Mark the dependency
|
|
63
|
+
- Skip the question and move to the next
|
|
64
|
+
- Come back when the dependent canon has been updated
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
## STEP 3: CONVERGENCE CHECK PER CANON
|
|
69
|
+
|
|
70
|
+
After working through the questions, check per canon:
|
|
71
|
+
|
|
72
|
+
- [ ] All OPEN QUESTIONS answered?
|
|
73
|
+
- [ ] Intent is unambiguous?
|
|
74
|
+
- [ ] Authority Budget is complete?
|
|
75
|
+
- [ ] Failure behavior is specified?
|
|
76
|
+
- [ ] Non-goals are documented?
|
|
77
|
+
|
|
78
|
+
### If the canon is NOW converged:
|
|
79
|
+
|
|
80
|
+
1. Update the stamp in the dialog file to CONVERGED:
|
|
81
|
+
|
|
82
|
+
=== DIALOGSPEC STAMP ===
|
|
83
|
+
STATUS: CONVERGED
|
|
84
|
+
DATE: [today]
|
|
85
|
+
MODEL: [model-id (Display Name), e.g. claude-opus-4-6 (Claude Opus 4.6)]
|
|
86
|
+
CANON TYPE: [type]
|
|
87
|
+
PREVIOUS STATUS: DRAFT (resumed from [date of earlier session])
|
|
88
|
+
SESSIONS: [number of sessions to convergence]
|
|
89
|
+
OPEN QUESTIONS: none
|
|
90
|
+
...
|
|
91
|
+
=== /DIALOGSPEC STAMP ===
|
|
92
|
+
|
|
93
|
+
2. **Regenerate** the derived summary (`canon/dialogspec-summary.md`) from the complete dialog
|
|
94
|
+
3. Update `canon/index.md` with the new status
|
|
95
|
+
|
|
96
|
+
### If questions are still open:
|
|
97
|
+
|
|
98
|
+
1. Update the progress stamp in the dialog file:
|
|
99
|
+
|
|
100
|
+
=== DIALOGSPEC PROGRESS ===
|
|
101
|
+
DATE: [today]
|
|
102
|
+
STATUS: DRAFT (session [N])
|
|
103
|
+
RESOLVED THIS SESSION: [list of answered questions]
|
|
104
|
+
REMAINING OPEN QUESTIONS: [list]
|
|
105
|
+
NEXT SESSION FOCUS: [suggestion for next session]
|
|
106
|
+
=== /DIALOGSPEC PROGRESS ===
|
|
107
|
+
|
|
108
|
+
2. **Regenerate** the derived summary from the dialog so far
|
|
109
|
+
3. Update `canon/index.md`
|
|
110
|
+
|
|
111
|
+
Say:
|
|
112
|
+
|
|
113
|
+
"There are still [N] questions open. The most important ones for the next session:
|
|
114
|
+
|
|
115
|
+
1. [question]
|
|
116
|
+
2. [question]
|
|
117
|
+
|
|
118
|
+
Progress has been saved. You can continue later with `/pantion-resume`."
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## STEP 4: FLOW TO NEXT PHASE
|
|
123
|
+
|
|
124
|
+
If ALL canons are CONVERGED:
|
|
125
|
+
|
|
126
|
+
### For standalone:
|
|
127
|
+
"All questions have been answered and the canon has converged. Would you like to generate the project files and build? (That's the same as `/pantion-translate` followed by the build phase.)"
|
|
128
|
+
|
|
129
|
+
### For decomposition:
|
|
130
|
+
"All canons have converged:
|
|
131
|
+
- Architect Canon: completed
|
|
132
|
+
- Interface Canons: completed ([N] interfaces)
|
|
133
|
+
- Component Canons: completed ([N] components)
|
|
134
|
+
|
|
135
|
+
Would you like to run the consistency check? (`/pantion-check`)"
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
## STEP 5: UPDATE CANON INDEX
|
|
140
|
+
|
|
141
|
+
ALWAYS update `canon/index.md` at the end of a resume session:
|
|
142
|
+
|
|
143
|
+
- Update status per canon
|
|
144
|
+
- Remove resolved questions from backlog
|
|
145
|
+
- Add new questions to backlog
|
|
146
|
+
- Update "Last modified"
|
|
147
|
+
- Log any amendments
|
|
148
|
+
- Ensure references to both dialog file and summary file are present
|