@howlil/ez-agents 2.0.0 → 3.0.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.
Files changed (145) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +157 -110
  3. package/README.zh-CN.md +84 -84
  4. package/agents/ez-plan-checker.md +2 -2
  5. package/agents/ez-research-synthesizer.md +1 -1
  6. package/agents/ez-ui-auditor.md +0 -2
  7. package/agents/ez-ui-checker.md +2 -4
  8. package/agents/ez-ui-researcher.md +0 -2
  9. package/agents/ez-verifier.md +1 -1
  10. package/bin/install.js +211 -211
  11. package/commands/ez/debug.md +1 -1
  12. package/commands/ez/map-codebase.md +1 -1
  13. package/commands/ez/reapply-patches.md +3 -3
  14. package/commands/ez/research-phase.md +1 -1
  15. package/{get-shit-done → ez-agents}/bin/ez-tools.cjs +1 -1
  16. package/{get-shit-done → ez-agents}/bin/lib/assistant-adapter.cjs +205 -205
  17. package/{get-shit-done → ez-agents}/bin/lib/audit-exec.cjs +150 -150
  18. package/{get-shit-done → ez-agents}/bin/lib/auth.cjs +175 -175
  19. package/{get-shit-done → ez-agents}/bin/lib/circuit-breaker.cjs +118 -118
  20. package/{get-shit-done → ez-agents}/bin/lib/commands.cjs +666 -666
  21. package/{get-shit-done → ez-agents}/bin/lib/config.cjs +183 -183
  22. package/{get-shit-done → ez-agents}/bin/lib/core.cjs +495 -495
  23. package/{get-shit-done → ez-agents}/bin/lib/file-lock.cjs +236 -236
  24. package/{get-shit-done → ez-agents}/bin/lib/frontmatter.cjs +299 -299
  25. package/{get-shit-done → ez-agents}/bin/lib/fs-utils.cjs +153 -153
  26. package/{get-shit-done → ez-agents}/bin/lib/git-utils.cjs +203 -203
  27. package/{get-shit-done → ez-agents}/bin/lib/health-check.cjs +163 -163
  28. package/{get-shit-done → ez-agents}/bin/lib/index.cjs +113 -113
  29. package/{get-shit-done → ez-agents}/bin/lib/init.cjs +710 -710
  30. package/{get-shit-done → ez-agents}/bin/lib/logger.cjs +117 -117
  31. package/{get-shit-done → ez-agents}/bin/lib/milestone.cjs +241 -241
  32. package/{get-shit-done → ez-agents}/bin/lib/model-provider.cjs +146 -146
  33. package/{get-shit-done → ez-agents}/bin/lib/phase.cjs +908 -908
  34. package/{get-shit-done → ez-agents}/bin/lib/retry.cjs +119 -119
  35. package/{get-shit-done → ez-agents}/bin/lib/roadmap.cjs +305 -305
  36. package/{get-shit-done → ez-agents}/bin/lib/safe-exec.cjs +128 -128
  37. package/{get-shit-done → ez-agents}/bin/lib/safe-path.cjs +130 -130
  38. package/{get-shit-done → ez-agents}/bin/lib/state.cjs +721 -721
  39. package/{get-shit-done → ez-agents}/bin/lib/temp-file.cjs +239 -239
  40. package/{get-shit-done → ez-agents}/bin/lib/template.cjs +222 -222
  41. package/{get-shit-done → ez-agents}/bin/lib/test-file-lock.cjs +112 -112
  42. package/{get-shit-done → ez-agents}/bin/lib/test-graceful.cjs +93 -93
  43. package/{get-shit-done → ez-agents}/bin/lib/test-logger.cjs +60 -60
  44. package/{get-shit-done → ez-agents}/bin/lib/test-safe-exec.cjs +38 -38
  45. package/{get-shit-done → ez-agents}/bin/lib/test-safe-path.cjs +33 -33
  46. package/{get-shit-done → ez-agents}/bin/lib/test-temp-file.cjs +125 -125
  47. package/{get-shit-done → ez-agents}/bin/lib/timeout-exec.cjs +62 -62
  48. package/{get-shit-done → ez-agents}/bin/lib/verify.cjs +820 -820
  49. package/{get-shit-done → ez-agents}/references/checkpoints.md +776 -776
  50. package/{get-shit-done → ez-agents}/references/questioning.md +162 -162
  51. package/{get-shit-done → ez-agents}/references/tdd.md +263 -263
  52. package/{get-shit-done → ez-agents}/templates/codebase/concerns.md +310 -310
  53. package/{get-shit-done → ez-agents}/templates/codebase/conventions.md +307 -307
  54. package/{get-shit-done → ez-agents}/templates/codebase/integrations.md +280 -280
  55. package/{get-shit-done → ez-agents}/templates/codebase/stack.md +186 -186
  56. package/{get-shit-done → ez-agents}/templates/codebase/testing.md +480 -480
  57. package/{get-shit-done → ez-agents}/templates/config.json +37 -37
  58. package/{get-shit-done → ez-agents}/templates/continue-here.md +78 -78
  59. package/{get-shit-done → ez-agents}/templates/milestone-archive.md +123 -123
  60. package/{get-shit-done → ez-agents}/templates/milestone.md +115 -115
  61. package/{get-shit-done → ez-agents}/templates/requirements.md +231 -231
  62. package/{get-shit-done → ez-agents}/templates/research-project/ARCHITECTURE.md +204 -204
  63. package/{get-shit-done → ez-agents}/templates/research-project/FEATURES.md +147 -147
  64. package/{get-shit-done → ez-agents}/templates/research-project/PITFALLS.md +200 -200
  65. package/{get-shit-done → ez-agents}/templates/research-project/STACK.md +120 -120
  66. package/{get-shit-done → ez-agents}/templates/research-project/SUMMARY.md +170 -170
  67. package/{get-shit-done → ez-agents}/templates/retrospective.md +54 -54
  68. package/{get-shit-done → ez-agents}/templates/roadmap.md +202 -202
  69. package/{get-shit-done → ez-agents}/templates/summary-minimal.md +41 -41
  70. package/{get-shit-done → ez-agents}/templates/summary-standard.md +48 -48
  71. package/{get-shit-done → ez-agents}/templates/summary.md +248 -248
  72. package/{get-shit-done → ez-agents}/templates/user-setup.md +311 -311
  73. package/{get-shit-done → ez-agents}/templates/verification-report.md +322 -322
  74. package/{get-shit-done → ez-agents}/workflows/add-phase.md +112 -112
  75. package/{get-shit-done → ez-agents}/workflows/add-tests.md +351 -351
  76. package/{get-shit-done → ez-agents}/workflows/add-todo.md +158 -158
  77. package/{get-shit-done → ez-agents}/workflows/audit-milestone.md +332 -332
  78. package/{get-shit-done → ez-agents}/workflows/autonomous.md +743 -743
  79. package/{get-shit-done → ez-agents}/workflows/check-todos.md +177 -177
  80. package/{get-shit-done → ez-agents}/workflows/cleanup.md +152 -152
  81. package/{get-shit-done → ez-agents}/workflows/complete-milestone.md +766 -766
  82. package/ez-agents/workflows/debug.md +0 -0
  83. package/{get-shit-done → ez-agents}/workflows/diagnose-issues.md +219 -219
  84. package/{get-shit-done → ez-agents}/workflows/discovery-phase.md +289 -289
  85. package/{get-shit-done → ez-agents}/workflows/discuss-phase.md +762 -762
  86. package/{get-shit-done → ez-agents}/workflows/execute-phase.md +468 -468
  87. package/{get-shit-done → ez-agents}/workflows/execute-plan.md +483 -483
  88. package/{get-shit-done → ez-agents}/workflows/health.md +159 -159
  89. package/{get-shit-done → ez-agents}/workflows/help.md +492 -492
  90. package/{get-shit-done → ez-agents}/workflows/insert-phase.md +130 -130
  91. package/{get-shit-done → ez-agents}/workflows/list-phase-assumptions.md +178 -178
  92. package/{get-shit-done → ez-agents}/workflows/map-codebase.md +316 -316
  93. package/{get-shit-done → ez-agents}/workflows/new-milestone.md +384 -384
  94. package/{get-shit-done → ez-agents}/workflows/new-project.md +1111 -1111
  95. package/{get-shit-done → ez-agents}/workflows/node-repair.md +92 -92
  96. package/{get-shit-done → ez-agents}/workflows/pause-work.md +122 -122
  97. package/{get-shit-done → ez-agents}/workflows/plan-milestone-gaps.md +274 -274
  98. package/{get-shit-done → ez-agents}/workflows/plan-phase.md +651 -651
  99. package/{get-shit-done → ez-agents}/workflows/progress.md +382 -382
  100. package/{get-shit-done → ez-agents}/workflows/quick.md +610 -610
  101. package/{get-shit-done → ez-agents}/workflows/remove-phase.md +155 -155
  102. package/{get-shit-done → ez-agents}/workflows/research-phase.md +74 -74
  103. package/{get-shit-done → ez-agents}/workflows/resume-project.md +307 -307
  104. package/{get-shit-done → ez-agents}/workflows/set-profile.md +81 -81
  105. package/{get-shit-done → ez-agents}/workflows/settings.md +242 -242
  106. package/{get-shit-done → ez-agents}/workflows/stats.md +57 -57
  107. package/{get-shit-done → ez-agents}/workflows/transition.md +544 -544
  108. package/{get-shit-done → ez-agents}/workflows/ui-phase.md +290 -290
  109. package/{get-shit-done → ez-agents}/workflows/ui-review.md +157 -157
  110. package/{get-shit-done → ez-agents}/workflows/update.md +320 -320
  111. package/{get-shit-done → ez-agents}/workflows/validate-phase.md +167 -167
  112. package/{get-shit-done → ez-agents}/workflows/verify-phase.md +243 -243
  113. package/{get-shit-done → ez-agents}/workflows/verify-work.md +5 -5
  114. package/hooks/dist/ez-check-update.js +81 -0
  115. package/hooks/dist/ez-context-monitor.js +141 -0
  116. package/hooks/dist/ez-statusline.js +115 -0
  117. package/package.json +13 -3
  118. package/scripts/build-hooks.js +43 -43
  119. package/scripts/run-tests.cjs +29 -29
  120. /package/{get-shit-done → ez-agents}/references/continuation-format.md +0 -0
  121. /package/{get-shit-done → ez-agents}/references/decimal-phase-calculation.md +0 -0
  122. /package/{get-shit-done → ez-agents}/references/git-integration.md +0 -0
  123. /package/{get-shit-done → ez-agents}/references/git-planning-commit.md +0 -0
  124. /package/{get-shit-done → ez-agents}/references/model-profile-resolution.md +0 -0
  125. /package/{get-shit-done → ez-agents}/references/model-profiles.md +0 -0
  126. /package/{get-shit-done → ez-agents}/references/phase-argument-parsing.md +0 -0
  127. /package/{get-shit-done → ez-agents}/references/planning-config.md +0 -0
  128. /package/{get-shit-done → ez-agents}/references/ui-brand.md +0 -0
  129. /package/{get-shit-done → ez-agents}/references/verification-patterns.md +0 -0
  130. /package/{get-shit-done → ez-agents}/templates/DEBUG.md +0 -0
  131. /package/{get-shit-done → ez-agents}/templates/UAT.md +0 -0
  132. /package/{get-shit-done → ez-agents}/templates/UI-SPEC.md +0 -0
  133. /package/{get-shit-done → ez-agents}/templates/VALIDATION.md +0 -0
  134. /package/{get-shit-done → ez-agents}/templates/codebase/architecture.md +0 -0
  135. /package/{get-shit-done → ez-agents}/templates/codebase/structure.md +0 -0
  136. /package/{get-shit-done → ez-agents}/templates/context.md +0 -0
  137. /package/{get-shit-done → ez-agents}/templates/copilot-instructions.md +0 -0
  138. /package/{get-shit-done → ez-agents}/templates/debug-subagent-prompt.md +0 -0
  139. /package/{get-shit-done → ez-agents}/templates/discovery.md +0 -0
  140. /package/{get-shit-done → ez-agents}/templates/phase-prompt.md +0 -0
  141. /package/{get-shit-done → ez-agents}/templates/planner-subagent-prompt.md +0 -0
  142. /package/{get-shit-done → ez-agents}/templates/project.md +0 -0
  143. /package/{get-shit-done → ez-agents}/templates/research.md +0 -0
  144. /package/{get-shit-done → ez-agents}/templates/state.md +0 -0
  145. /package/{get-shit-done → ez-agents}/templates/summary-complex.md +0 -0
@@ -1,289 +1,289 @@
1
- <purpose>
2
- Execute discovery at the appropriate depth level.
3
- Produces DISCOVERY.md (for Level 2-3) that informs PLAN.md creation.
4
-
5
- Called from plan-phase.md's mandatory_discovery step with a depth parameter.
6
-
7
- NOTE: For comprehensive ecosystem research ("how do experts build this"), use /ez:research-phase instead, which produces RESEARCH.md.
8
- </purpose>
9
-
10
- <depth_levels>
11
- **This workflow supports three depth levels:**
12
-
13
- | Level | Name | Time | Output | When |
14
- | ----- | ------------ | --------- | -------------------------------------------- | ----------------------------------------- |
15
- | 1 | Quick Verify | 2-5 min | No file, proceed with verified knowledge | Single library, confirming current syntax |
16
- | 2 | Standard | 15-30 min | DISCOVERY.md | Choosing between options, new integration |
17
- | 3 | Deep Dive | 1+ hour | Detailed DISCOVERY.md with validation gates | Architectural decisions, novel problems |
18
-
19
- **Depth is determined by plan-phase.md before routing here.**
20
- </depth_levels>
21
-
22
- <source_hierarchy>
23
- **MANDATORY: Context7 BEFORE WebSearch**
24
-
25
- Claude's training data is 6-18 months stale. Always verify.
26
-
27
- 1. **Context7 MCP FIRST** - Current docs, no hallucination
28
- 2. **Official docs** - When Context7 lacks coverage
29
- 3. **WebSearch LAST** - For comparisons and trends only
30
-
31
- See ~/.claude/get-shit-done/templates/discovery.md `<discovery_protocol>` for full protocol.
32
- </source_hierarchy>
33
-
34
- <process>
35
-
36
- <step name="determine_depth">
37
- Check the depth parameter passed from plan-phase.md:
38
- - `depth=verify` → Level 1 (Quick Verification)
39
- - `depth=standard` → Level 2 (Standard Discovery)
40
- - `depth=deep` → Level 3 (Deep Dive)
41
-
42
- Route to appropriate level workflow below.
43
- </step>
44
-
45
- <step name="level_1_quick_verify">
46
- **Level 1: Quick Verification (2-5 minutes)**
47
-
48
- For: Single known library, confirming syntax/version still correct.
49
-
50
- **Process:**
51
-
52
- 1. Resolve library in Context7:
53
-
54
- ```
55
- mcp__context7__resolve-library-id with libraryName: "[library]"
56
- ```
57
-
58
- 2. Fetch relevant docs:
59
-
60
- ```
61
- mcp__context7__get-library-docs with:
62
- - context7CompatibleLibraryID: [from step 1]
63
- - topic: [specific concern]
64
- ```
65
-
66
- 3. Verify:
67
-
68
- - Current version matches expectations
69
- - API syntax unchanged
70
- - No breaking changes in recent versions
71
-
72
- 4. **If verified:** Return to plan-phase.md with confirmation. No DISCOVERY.md needed.
73
-
74
- 5. **If concerns found:** Escalate to Level 2.
75
-
76
- **Output:** Verbal confirmation to proceed, or escalation to Level 2.
77
- </step>
78
-
79
- <step name="level_2_standard">
80
- **Level 2: Standard Discovery (15-30 minutes)**
81
-
82
- For: Choosing between options, new external integration.
83
-
84
- **Process:**
85
-
86
- 1. **Identify what to discover:**
87
-
88
- - What options exist?
89
- - What are the key comparison criteria?
90
- - What's our specific use case?
91
-
92
- 2. **Context7 for each option:**
93
-
94
- ```
95
- For each library/framework:
96
- - mcp__context7__resolve-library-id
97
- - mcp__context7__get-library-docs (mode: "code" for API, "info" for concepts)
98
- ```
99
-
100
- 3. **Official docs** for anything Context7 lacks.
101
-
102
- 4. **WebSearch** for comparisons:
103
-
104
- - "[option A] vs [option B] {current_year}"
105
- - "[option] known issues"
106
- - "[option] with [our stack]"
107
-
108
- 5. **Cross-verify:** Any WebSearch finding → confirm with Context7/official docs.
109
-
110
- 6. **Create DISCOVERY.md** using ~/.claude/get-shit-done/templates/discovery.md structure:
111
-
112
- - Summary with recommendation
113
- - Key findings per option
114
- - Code examples from Context7
115
- - Confidence level (should be MEDIUM-HIGH for Level 2)
116
-
117
- 7. Return to plan-phase.md.
118
-
119
- **Output:** `.planning/phases/XX-name/DISCOVERY.md`
120
- </step>
121
-
122
- <step name="level_3_deep_dive">
123
- **Level 3: Deep Dive (1+ hour)**
124
-
125
- For: Architectural decisions, novel problems, high-risk choices.
126
-
127
- **Process:**
128
-
129
- 1. **Scope the discovery** using ~/.claude/get-shit-done/templates/discovery.md:
130
-
131
- - Define clear scope
132
- - Define include/exclude boundaries
133
- - List specific questions to answer
134
-
135
- 2. **Exhaustive Context7 research:**
136
-
137
- - All relevant libraries
138
- - Related patterns and concepts
139
- - Multiple topics per library if needed
140
-
141
- 3. **Official documentation deep read:**
142
-
143
- - Architecture guides
144
- - Best practices sections
145
- - Migration/upgrade guides
146
- - Known limitations
147
-
148
- 4. **WebSearch for ecosystem context:**
149
-
150
- - How others solved similar problems
151
- - Production experiences
152
- - Gotchas and anti-patterns
153
- - Recent changes/announcements
154
-
155
- 5. **Cross-verify ALL findings:**
156
-
157
- - Every WebSearch claim → verify with authoritative source
158
- - Mark what's verified vs assumed
159
- - Flag contradictions
160
-
161
- 6. **Create comprehensive DISCOVERY.md:**
162
-
163
- - Full structure from ~/.claude/get-shit-done/templates/discovery.md
164
- - Quality report with source attribution
165
- - Confidence by finding
166
- - If LOW confidence on any critical finding → add validation checkpoints
167
-
168
- 7. **Confidence gate:** If overall confidence is LOW, present options before proceeding.
169
-
170
- 8. Return to plan-phase.md.
171
-
172
- **Output:** `.planning/phases/XX-name/DISCOVERY.md` (comprehensive)
173
- </step>
174
-
175
- <step name="identify_unknowns">
176
- **For Level 2-3:** Define what we need to learn.
177
-
178
- Ask: What do we need to learn before we can plan this phase?
179
-
180
- - Technology choices?
181
- - Best practices?
182
- - API patterns?
183
- - Architecture approach?
184
- </step>
185
-
186
- <step name="create_discovery_scope">
187
- Use ~/.claude/get-shit-done/templates/discovery.md.
188
-
189
- Include:
190
-
191
- - Clear discovery objective
192
- - Scoped include/exclude lists
193
- - Source preferences (official docs, Context7, current year)
194
- - Output structure for DISCOVERY.md
195
- </step>
196
-
197
- <step name="execute_discovery">
198
- Run the discovery:
199
- - Use web search for current info
200
- - Use Context7 MCP for library docs
201
- - Prefer current year sources
202
- - Structure findings per template
203
- </step>
204
-
205
- <step name="create_discovery_output">
206
- Write `.planning/phases/XX-name/DISCOVERY.md`:
207
- - Summary with recommendation
208
- - Key findings with sources
209
- - Code examples if applicable
210
- - Metadata (confidence, dependencies, open questions, assumptions)
211
- </step>
212
-
213
- <step name="confidence_gate">
214
- After creating DISCOVERY.md, check confidence level.
215
-
216
- If confidence is LOW:
217
- Use AskUserQuestion:
218
-
219
- - header: "Low Conf."
220
- - question: "Discovery confidence is LOW: [reason]. How would you like to proceed?"
221
- - options:
222
- - "Dig deeper" - Do more research before planning
223
- - "Proceed anyway" - Accept uncertainty, plan with caveats
224
- - "Pause" - I need to think about this
225
-
226
- If confidence is MEDIUM:
227
- Inline: "Discovery complete (medium confidence). [brief reason]. Proceed to planning?"
228
-
229
- If confidence is HIGH:
230
- Proceed directly, just note: "Discovery complete (high confidence)."
231
- </step>
232
-
233
- <step name="open_questions_gate">
234
- If DISCOVERY.md has open_questions:
235
-
236
- Present them inline:
237
- "Open questions from discovery:
238
-
239
- - [Question 1]
240
- - [Question 2]
241
-
242
- These may affect implementation. Acknowledge and proceed? (yes / address first)"
243
-
244
- If "address first": Gather user input on questions, update discovery.
245
- </step>
246
-
247
- <step name="offer_next">
248
- ```
249
- Discovery complete: .planning/phases/XX-name/DISCOVERY.md
250
- Recommendation: [one-liner]
251
- Confidence: [level]
252
-
253
- What's next?
254
-
255
- 1. Discuss phase context (/ez:discuss-phase [current-phase])
256
- 2. Create phase plan (/ez:plan-phase [current-phase])
257
- 3. Refine discovery (dig deeper)
258
- 4. Review discovery
259
-
260
- ```
261
-
262
- NOTE: DISCOVERY.md is NOT committed separately. It will be committed with phase completion.
263
- </step>
264
-
265
- </process>
266
-
267
- <success_criteria>
268
- **Level 1 (Quick Verify):**
269
- - Context7 consulted for library/topic
270
- - Current state verified or concerns escalated
271
- - Verbal confirmation to proceed (no files)
272
-
273
- **Level 2 (Standard):**
274
- - Context7 consulted for all options
275
- - WebSearch findings cross-verified
276
- - DISCOVERY.md created with recommendation
277
- - Confidence level MEDIUM or higher
278
- - Ready to inform PLAN.md creation
279
-
280
- **Level 3 (Deep Dive):**
281
- - Discovery scope defined
282
- - Context7 exhaustively consulted
283
- - All WebSearch findings verified against authoritative sources
284
- - DISCOVERY.md created with comprehensive analysis
285
- - Quality report with source attribution
286
- - If LOW confidence findings → validation checkpoints defined
287
- - Confidence gate passed
288
- - Ready to inform PLAN.md creation
289
- </success_criteria>
1
+ <purpose>
2
+ Execute discovery at the appropriate depth level.
3
+ Produces DISCOVERY.md (for Level 2-3) that informs PLAN.md creation.
4
+
5
+ Called from plan-phase.md's mandatory_discovery step with a depth parameter.
6
+
7
+ NOTE: For comprehensive ecosystem research ("how do experts build this"), use /ez:research-phase instead, which produces RESEARCH.md.
8
+ </purpose>
9
+
10
+ <depth_levels>
11
+ **This workflow supports three depth levels:**
12
+
13
+ | Level | Name | Time | Output | When |
14
+ | ----- | ------------ | --------- | -------------------------------------------- | ----------------------------------------- |
15
+ | 1 | Quick Verify | 2-5 min | No file, proceed with verified knowledge | Single library, confirming current syntax |
16
+ | 2 | Standard | 15-30 min | DISCOVERY.md | Choosing between options, new integration |
17
+ | 3 | Deep Dive | 1+ hour | Detailed DISCOVERY.md with validation gates | Architectural decisions, novel problems |
18
+
19
+ **Depth is determined by plan-phase.md before routing here.**
20
+ </depth_levels>
21
+
22
+ <source_hierarchy>
23
+ **MANDATORY: Context7 BEFORE WebSearch**
24
+
25
+ Claude's training data is 6-18 months stale. Always verify.
26
+
27
+ 1. **Context7 MCP FIRST** - Current docs, no hallucination
28
+ 2. **Official docs** - When Context7 lacks coverage
29
+ 3. **WebSearch LAST** - For comparisons and trends only
30
+
31
+ See ~/.claude/ez-agents/templates/discovery.md `<discovery_protocol>` for full protocol.
32
+ </source_hierarchy>
33
+
34
+ <process>
35
+
36
+ <step name="determine_depth">
37
+ Check the depth parameter passed from plan-phase.md:
38
+ - `depth=verify` → Level 1 (Quick Verification)
39
+ - `depth=standard` → Level 2 (Standard Discovery)
40
+ - `depth=deep` → Level 3 (Deep Dive)
41
+
42
+ Route to appropriate level workflow below.
43
+ </step>
44
+
45
+ <step name="level_1_quick_verify">
46
+ **Level 1: Quick Verification (2-5 minutes)**
47
+
48
+ For: Single known library, confirming syntax/version still correct.
49
+
50
+ **Process:**
51
+
52
+ 1. Resolve library in Context7:
53
+
54
+ ```
55
+ mcp__context7__resolve-library-id with libraryName: "[library]"
56
+ ```
57
+
58
+ 2. Fetch relevant docs:
59
+
60
+ ```
61
+ mcp__context7__get-library-docs with:
62
+ - context7CompatibleLibraryID: [from step 1]
63
+ - topic: [specific concern]
64
+ ```
65
+
66
+ 3. Verify:
67
+
68
+ - Current version matches expectations
69
+ - API syntax unchanged
70
+ - No breaking changes in recent versions
71
+
72
+ 4. **If verified:** Return to plan-phase.md with confirmation. No DISCOVERY.md needed.
73
+
74
+ 5. **If concerns found:** Escalate to Level 2.
75
+
76
+ **Output:** Verbal confirmation to proceed, or escalation to Level 2.
77
+ </step>
78
+
79
+ <step name="level_2_standard">
80
+ **Level 2: Standard Discovery (15-30 minutes)**
81
+
82
+ For: Choosing between options, new external integration.
83
+
84
+ **Process:**
85
+
86
+ 1. **Identify what to discover:**
87
+
88
+ - What options exist?
89
+ - What are the key comparison criteria?
90
+ - What's our specific use case?
91
+
92
+ 2. **Context7 for each option:**
93
+
94
+ ```
95
+ For each library/framework:
96
+ - mcp__context7__resolve-library-id
97
+ - mcp__context7__get-library-docs (mode: "code" for API, "info" for concepts)
98
+ ```
99
+
100
+ 3. **Official docs** for anything Context7 lacks.
101
+
102
+ 4. **WebSearch** for comparisons:
103
+
104
+ - "[option A] vs [option B] {current_year}"
105
+ - "[option] known issues"
106
+ - "[option] with [our stack]"
107
+
108
+ 5. **Cross-verify:** Any WebSearch finding → confirm with Context7/official docs.
109
+
110
+ 6. **Create DISCOVERY.md** using ~/.claude/ez-agents/templates/discovery.md structure:
111
+
112
+ - Summary with recommendation
113
+ - Key findings per option
114
+ - Code examples from Context7
115
+ - Confidence level (should be MEDIUM-HIGH for Level 2)
116
+
117
+ 7. Return to plan-phase.md.
118
+
119
+ **Output:** `.planning/phases/XX-name/DISCOVERY.md`
120
+ </step>
121
+
122
+ <step name="level_3_deep_dive">
123
+ **Level 3: Deep Dive (1+ hour)**
124
+
125
+ For: Architectural decisions, novel problems, high-risk choices.
126
+
127
+ **Process:**
128
+
129
+ 1. **Scope the discovery** using ~/.claude/ez-agents/templates/discovery.md:
130
+
131
+ - Define clear scope
132
+ - Define include/exclude boundaries
133
+ - List specific questions to answer
134
+
135
+ 2. **Exhaustive Context7 research:**
136
+
137
+ - All relevant libraries
138
+ - Related patterns and concepts
139
+ - Multiple topics per library if needed
140
+
141
+ 3. **Official documentation deep read:**
142
+
143
+ - Architecture guides
144
+ - Best practices sections
145
+ - Migration/upgrade guides
146
+ - Known limitations
147
+
148
+ 4. **WebSearch for ecosystem context:**
149
+
150
+ - How others solved similar problems
151
+ - Production experiences
152
+ - Gotchas and anti-patterns
153
+ - Recent changes/announcements
154
+
155
+ 5. **Cross-verify ALL findings:**
156
+
157
+ - Every WebSearch claim → verify with authoritative source
158
+ - Mark what's verified vs assumed
159
+ - Flag contradictions
160
+
161
+ 6. **Create comprehensive DISCOVERY.md:**
162
+
163
+ - Full structure from ~/.claude/ez-agents/templates/discovery.md
164
+ - Quality report with source attribution
165
+ - Confidence by finding
166
+ - If LOW confidence on any critical finding → add validation checkpoints
167
+
168
+ 7. **Confidence gate:** If overall confidence is LOW, present options before proceeding.
169
+
170
+ 8. Return to plan-phase.md.
171
+
172
+ **Output:** `.planning/phases/XX-name/DISCOVERY.md` (comprehensive)
173
+ </step>
174
+
175
+ <step name="identify_unknowns">
176
+ **For Level 2-3:** Define what we need to learn.
177
+
178
+ Ask: What do we need to learn before we can plan this phase?
179
+
180
+ - Technology choices?
181
+ - Best practices?
182
+ - API patterns?
183
+ - Architecture approach?
184
+ </step>
185
+
186
+ <step name="create_discovery_scope">
187
+ Use ~/.claude/ez-agents/templates/discovery.md.
188
+
189
+ Include:
190
+
191
+ - Clear discovery objective
192
+ - Scoped include/exclude lists
193
+ - Source preferences (official docs, Context7, current year)
194
+ - Output structure for DISCOVERY.md
195
+ </step>
196
+
197
+ <step name="execute_discovery">
198
+ Run the discovery:
199
+ - Use web search for current info
200
+ - Use Context7 MCP for library docs
201
+ - Prefer current year sources
202
+ - Structure findings per template
203
+ </step>
204
+
205
+ <step name="create_discovery_output">
206
+ Write `.planning/phases/XX-name/DISCOVERY.md`:
207
+ - Summary with recommendation
208
+ - Key findings with sources
209
+ - Code examples if applicable
210
+ - Metadata (confidence, dependencies, open questions, assumptions)
211
+ </step>
212
+
213
+ <step name="confidence_gate">
214
+ After creating DISCOVERY.md, check confidence level.
215
+
216
+ If confidence is LOW:
217
+ Use AskUserQuestion:
218
+
219
+ - header: "Low Conf."
220
+ - question: "Discovery confidence is LOW: [reason]. How would you like to proceed?"
221
+ - options:
222
+ - "Dig deeper" - Do more research before planning
223
+ - "Proceed anyway" - Accept uncertainty, plan with caveats
224
+ - "Pause" - I need to think about this
225
+
226
+ If confidence is MEDIUM:
227
+ Inline: "Discovery complete (medium confidence). [brief reason]. Proceed to planning?"
228
+
229
+ If confidence is HIGH:
230
+ Proceed directly, just note: "Discovery complete (high confidence)."
231
+ </step>
232
+
233
+ <step name="open_questions_gate">
234
+ If DISCOVERY.md has open_questions:
235
+
236
+ Present them inline:
237
+ "Open questions from discovery:
238
+
239
+ - [Question 1]
240
+ - [Question 2]
241
+
242
+ These may affect implementation. Acknowledge and proceed? (yes / address first)"
243
+
244
+ If "address first": Gather user input on questions, update discovery.
245
+ </step>
246
+
247
+ <step name="offer_next">
248
+ ```
249
+ Discovery complete: .planning/phases/XX-name/DISCOVERY.md
250
+ Recommendation: [one-liner]
251
+ Confidence: [level]
252
+
253
+ What's next?
254
+
255
+ 1. Discuss phase context (/ez:discuss-phase [current-phase])
256
+ 2. Create phase plan (/ez:plan-phase [current-phase])
257
+ 3. Refine discovery (dig deeper)
258
+ 4. Review discovery
259
+
260
+ ```
261
+
262
+ NOTE: DISCOVERY.md is NOT committed separately. It will be committed with phase completion.
263
+ </step>
264
+
265
+ </process>
266
+
267
+ <success_criteria>
268
+ **Level 1 (Quick Verify):**
269
+ - Context7 consulted for library/topic
270
+ - Current state verified or concerns escalated
271
+ - Verbal confirmation to proceed (no files)
272
+
273
+ **Level 2 (Standard):**
274
+ - Context7 consulted for all options
275
+ - WebSearch findings cross-verified
276
+ - DISCOVERY.md created with recommendation
277
+ - Confidence level MEDIUM or higher
278
+ - Ready to inform PLAN.md creation
279
+
280
+ **Level 3 (Deep Dive):**
281
+ - Discovery scope defined
282
+ - Context7 exhaustively consulted
283
+ - All WebSearch findings verified against authoritative sources
284
+ - DISCOVERY.md created with comprehensive analysis
285
+ - Quality report with source attribution
286
+ - If LOW confidence findings → validation checkpoints defined
287
+ - Confidence gate passed
288
+ - Ready to inform PLAN.md creation
289
+ </success_criteria>