@dedesfr/prompter 0.9.0 → 1.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.
Files changed (225) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/README.md +105 -77
  3. package/dist/cli/index.js +25 -1
  4. package/dist/cli/index.js.map +1 -1
  5. package/dist/commands/init.d.ts.map +1 -1
  6. package/dist/commands/init.js +35 -9
  7. package/dist/commands/init.js.map +1 -1
  8. package/dist/commands/login.d.ts +4 -0
  9. package/dist/commands/login.d.ts.map +1 -0
  10. package/dist/commands/login.js +56 -0
  11. package/dist/commands/login.js.map +1 -0
  12. package/dist/commands/logout.d.ts +4 -0
  13. package/dist/commands/logout.d.ts.map +1 -0
  14. package/dist/commands/logout.js +14 -0
  15. package/dist/commands/logout.js.map +1 -0
  16. package/dist/commands/update.d.ts +0 -2
  17. package/dist/commands/update.d.ts.map +1 -1
  18. package/dist/commands/update.js +19 -48
  19. package/dist/commands/update.js.map +1 -1
  20. package/dist/commands/whoami.d.ts +4 -0
  21. package/dist/commands/whoami.d.ts.map +1 -0
  22. package/dist/commands/whoami.js +42 -0
  23. package/dist/commands/whoami.js.map +1 -0
  24. package/dist/core/auth-store.d.ts +10 -0
  25. package/dist/core/auth-store.d.ts.map +1 -0
  26. package/dist/core/auth-store.js +39 -0
  27. package/dist/core/auth-store.js.map +1 -0
  28. package/dist/core/config.d.ts +0 -7
  29. package/dist/core/config.d.ts.map +1 -1
  30. package/dist/core/config.js +0 -128
  31. package/dist/core/config.js.map +1 -1
  32. package/dist/core/registry.d.ts +18 -0
  33. package/dist/core/registry.d.ts.map +1 -0
  34. package/dist/core/registry.js +94 -0
  35. package/dist/core/registry.js.map +1 -0
  36. package/package.json +7 -1
  37. package/AGENTS.md +0 -123
  38. package/CLAUDE.md +0 -17
  39. package/build.js +0 -20
  40. package/convex-setup.md +0 -403
  41. package/dist/core/prompt-templates.d.ts +0 -23
  42. package/dist/core/prompt-templates.d.ts.map +0 -1
  43. package/dist/core/prompt-templates.js +0 -3485
  44. package/dist/core/prompt-templates.js.map +0 -1
  45. package/prompt/ai-humanizer.md +0 -45
  46. package/prompt/api-contract-generator.md +0 -234
  47. package/prompt/apply.md +0 -17
  48. package/prompt/archive.md +0 -21
  49. package/prompt/design-system.md +0 -210
  50. package/prompt/document-explainer.md +0 -149
  51. package/prompt/epic-generator.md +0 -198
  52. package/prompt/epic-single.md +0 -47
  53. package/prompt/erd-generator.md +0 -130
  54. package/prompt/fsd-generator.md +0 -157
  55. package/prompt/prd-agent-generator.md +0 -147
  56. package/prompt/prd-generator.md +0 -195
  57. package/prompt/product-brief.md +0 -289
  58. package/prompt/proposal.md +0 -22
  59. package/prompt/qa-test-scenario.md +0 -133
  60. package/prompt/skill-creator.md +0 -350
  61. package/prompt/story-generator.md +0 -278
  62. package/prompt/story-single.md +0 -70
  63. package/prompt/tdd-generator.md +0 -294
  64. package/prompt/tdd-lite-generator.md +0 -224
  65. package/prompt/wireframe-generator.md +0 -219
  66. package/skills/ai-context-generator/SKILL.md +0 -54
  67. package/skills/ai-context-generator/references/AGENTS.template.md +0 -83
  68. package/skills/ai-context-generator/references/CLAUDE.template.md +0 -39
  69. package/skills/ai-context-generator/references/behavioral-guidelines.md +0 -71
  70. package/skills/ai-context-generator/references/discovery-checklist.md +0 -40
  71. package/skills/ai-context-generator/references/examples/AGENTS.good.md +0 -103
  72. package/skills/ai-context-generator/references/extraction-checklist.md +0 -23
  73. package/skills/ai-context-generator/references/overlays/laravel.md +0 -44
  74. package/skills/ai-humanizer/SKILL.md +0 -50
  75. package/skills/api-contract-generator/SKILL.md +0 -243
  76. package/skills/apply/SKILL.md +0 -23
  77. package/skills/archive/SKILL.md +0 -27
  78. package/skills/cerebro/SKILL.md +0 -187
  79. package/skills/cerebro/references/agents.md +0 -213
  80. package/skills/code-review/SKILL.md +0 -373
  81. package/skills/code-review/assets/report-template-agent.md +0 -212
  82. package/skills/code-review/assets/report-template-compact.md +0 -81
  83. package/skills/code-review/assets/report-template-full.md +0 -264
  84. package/skills/code-review/assets/report-template-human.md +0 -168
  85. package/skills/code-review/references/universal-patterns.md +0 -495
  86. package/skills/design-md/README.md +0 -34
  87. package/skills/design-md/SKILL.md +0 -172
  88. package/skills/design-md/examples/DESIGN.md +0 -154
  89. package/skills/design-system/SKILL.md +0 -216
  90. package/skills/design-system-generator/SKILL.md +0 -324
  91. package/skills/design-system-generator/assets/design-system-template.md +0 -348
  92. package/skills/design-system-generator/references/extraction-patterns.md +0 -321
  93. package/skills/doc-builder/SKILL.md +0 -115
  94. package/skills/doc-builder/references/ui-patterns.md +0 -394
  95. package/skills/document-explainer/SKILL.md +0 -155
  96. package/skills/document-translator/SKILL.md +0 -58
  97. package/skills/enhance/SKILL.md +0 -47
  98. package/skills/enhance-prompt/README.md +0 -34
  99. package/skills/enhance-prompt/SKILL.md +0 -204
  100. package/skills/enhance-prompt/references/KEYWORDS.md +0 -114
  101. package/skills/epic-generator/SKILL.md +0 -204
  102. package/skills/epic-single/SKILL.md +0 -63
  103. package/skills/erd-generator/SKILL.md +0 -138
  104. package/skills/feature-planner/SKILL.md +0 -305
  105. package/skills/feature-planner/assets/implementation-plan-template.md +0 -85
  106. package/skills/frontend-design/LICENSE.txt +0 -177
  107. package/skills/frontend-design/SKILL.md +0 -42
  108. package/skills/fsd-generator/SKILL.md +0 -163
  109. package/skills/gamma-builder/SKILL.md +0 -134
  110. package/skills/laravel-code-review/SKILL.md +0 -383
  111. package/skills/laravel-code-review/assets/report-template-agent.md +0 -195
  112. package/skills/laravel-code-review/assets/report-template-compact.md +0 -79
  113. package/skills/laravel-code-review/assets/report-template-full.md +0 -253
  114. package/skills/laravel-code-review/assets/report-template-human.md +0 -159
  115. package/skills/laravel-code-review/references/laravel-patterns.md +0 -571
  116. package/skills/laravel-code-review/references/php84-features.md +0 -442
  117. package/skills/mcp-builder/LICENSE.txt +0 -202
  118. package/skills/mcp-builder/SKILL.md +0 -236
  119. package/skills/mcp-builder/reference/evaluation.md +0 -602
  120. package/skills/mcp-builder/reference/mcp_best_practices.md +0 -249
  121. package/skills/mcp-builder/reference/node_mcp_server.md +0 -970
  122. package/skills/mcp-builder/reference/python_mcp_server.md +0 -719
  123. package/skills/mcp-builder/scripts/connections.py +0 -151
  124. package/skills/mcp-builder/scripts/evaluation.py +0 -373
  125. package/skills/mcp-builder/scripts/example_evaluation.xml +0 -22
  126. package/skills/mcp-builder/scripts/requirements.txt +0 -2
  127. package/skills/meeting-notes/SKILL.md +0 -159
  128. package/skills/meeting-notes/evals/evals.json +0 -23
  129. package/skills/prd-agent-generator/SKILL.md +0 -132
  130. package/skills/prd-generator/SKILL.md +0 -211
  131. package/skills/product-brief/SKILL.md +0 -141
  132. package/skills/project-orchestrator/SKILL.md +0 -487
  133. package/skills/project-orchestrator/assets/caddy-vps-setup.md +0 -180
  134. package/skills/project-orchestrator/assets/plan-summary-template.md +0 -159
  135. package/skills/prompter-specs/SKILL.md +0 -115
  136. package/skills/prompter-workflow/SKILL.md +0 -166
  137. package/skills/prompter-workflow/evals/evals.json +0 -89
  138. package/skills/proposal/SKILL.md +0 -28
  139. package/skills/qa-test-scenario/SKILL.md +0 -149
  140. package/skills/skill-creator/SKILL.md +0 -173
  141. package/skills/sph-generator/SKILL.md +0 -488
  142. package/skills/story-generator/SKILL.md +0 -285
  143. package/skills/story-single/SKILL.md +0 -86
  144. package/skills/tdd-generator/SKILL.md +0 -300
  145. package/skills/tdd-lite-generator/SKILL.md +0 -230
  146. package/skills/ui-ux-pro/SKILL.md +0 -199
  147. package/skills/ui-ux-pro/assets/design-spec-template.md +0 -173
  148. package/skills/ui-ux-pro/references/component-patterns.md +0 -255
  149. package/skills/ui-ux-pro/references/design-principles.md +0 -167
  150. package/skills/wireframe-generator/SKILL.md +0 -227
  151. package/src/cli/index.ts +0 -223
  152. package/src/commands/archive.ts +0 -302
  153. package/src/commands/change.ts +0 -292
  154. package/src/commands/config.ts +0 -233
  155. package/src/commands/guide.ts +0 -50
  156. package/src/commands/init.ts +0 -597
  157. package/src/commands/list.ts +0 -194
  158. package/src/commands/show.ts +0 -138
  159. package/src/commands/spec.ts +0 -251
  160. package/src/commands/update.ts +0 -129
  161. package/src/commands/upgrade.ts +0 -30
  162. package/src/commands/validate.ts +0 -326
  163. package/src/core/artifact-graph/graph.ts +0 -167
  164. package/src/core/artifact-graph/index.ts +0 -44
  165. package/src/core/artifact-graph/instruction-loader.ts +0 -302
  166. package/src/core/artifact-graph/resolver.ts +0 -226
  167. package/src/core/artifact-graph/schema.ts +0 -124
  168. package/src/core/artifact-graph/state.ts +0 -64
  169. package/src/core/artifact-graph/types.ts +0 -65
  170. package/src/core/completions/command-registry.ts +0 -382
  171. package/src/core/completions/completion-provider.ts +0 -128
  172. package/src/core/completions/generators/bash-generator.ts +0 -191
  173. package/src/core/completions/generators/fish-generator.ts +0 -188
  174. package/src/core/completions/generators/powershell-generator.ts +0 -223
  175. package/src/core/completions/generators/zsh-generator.ts +0 -281
  176. package/src/core/completions/templates/bash-templates.ts +0 -24
  177. package/src/core/completions/templates/fish-templates.ts +0 -40
  178. package/src/core/completions/templates/powershell-templates.ts +0 -25
  179. package/src/core/completions/templates/zsh-templates.ts +0 -36
  180. package/src/core/completions/types.ts +0 -90
  181. package/src/core/config-schema.ts +0 -230
  182. package/src/core/config.ts +0 -181
  183. package/src/core/configurators/slash/antigravity.ts +0 -10
  184. package/src/core/configurators/slash/base.ts +0 -109
  185. package/src/core/configurators/slash/claude.ts +0 -10
  186. package/src/core/configurators/slash/codex.ts +0 -10
  187. package/src/core/configurators/slash/droid.ts +0 -10
  188. package/src/core/configurators/slash/forge.ts +0 -10
  189. package/src/core/configurators/slash/github-copilot.ts +0 -10
  190. package/src/core/configurators/slash/index.ts +0 -10
  191. package/src/core/configurators/slash/kilocode.ts +0 -10
  192. package/src/core/configurators/slash/opencode.ts +0 -10
  193. package/src/core/configurators/slash/registry.ts +0 -51
  194. package/src/core/converters/json-converter.ts +0 -62
  195. package/src/core/global-config.ts +0 -136
  196. package/src/core/parsers/change-parser.ts +0 -234
  197. package/src/core/parsers/markdown-parser.ts +0 -237
  198. package/src/core/parsers/requirement-blocks.ts +0 -234
  199. package/src/core/prompt-templates.ts +0 -3504
  200. package/src/core/schemas/base.schema.ts +0 -20
  201. package/src/core/schemas/change.schema.ts +0 -42
  202. package/src/core/schemas/index.ts +0 -20
  203. package/src/core/schemas/spec.schema.ts +0 -17
  204. package/src/core/skill-discovery.ts +0 -68
  205. package/src/core/specs-apply.ts +0 -483
  206. package/src/core/styles/palette.ts +0 -8
  207. package/src/core/templates/agents-template.ts +0 -459
  208. package/src/core/templates/claude-template.ts +0 -2
  209. package/src/core/templates/index.ts +0 -3
  210. package/src/core/templates/project-template.ts +0 -32
  211. package/src/core/validation/constants.ts +0 -48
  212. package/src/core/validation/types.ts +0 -19
  213. package/src/core/validation/validator.ts +0 -449
  214. package/src/core/view.ts +0 -219
  215. package/src/index.ts +0 -1
  216. package/src/utils/change-metadata.ts +0 -171
  217. package/src/utils/change-utils.ts +0 -131
  218. package/src/utils/file-system.ts +0 -252
  219. package/src/utils/index.ts +0 -12
  220. package/src/utils/interactive.ts +0 -29
  221. package/src/utils/item-discovery.ts +0 -66
  222. package/src/utils/match.ts +0 -26
  223. package/src/utils/shell-detection.ts +0 -62
  224. package/src/utils/task-progress.ts +0 -43
  225. package/tsconfig.json +0 -28
@@ -1,219 +0,0 @@
1
- # UI/UX Wireframe Generation Prompt
2
-
3
- # Role & Expertise
4
- You are a Senior UI/UX Designer and Product Designer with 15+ years of experience creating wireframes for enterprise applications, SaaS platforms, and complex data-driven systems. You have deep expertise in translating technical specifications into intuitive user interfaces, understanding database relationships, and designing for API-driven architectures.
5
-
6
- # Context
7
- You will be provided with technical documentation that defines a product's requirements, data structure, and system capabilities. Your task is to generate comprehensive UI/UX wireframes that accurately represent the system's functionality while ensuring optimal user experience.
8
-
9
- # Input Documents You Will Receive
10
- 1. **Functional Specification Document (FSD)** - Defines features, user stories, business logic
11
- 2. **Entity Relationship Diagram (ERD)** - Shows data models, relationships, cardinality
12
- 3. **Product Requirements Document (PRD)** - Outlines product goals, user personas, success metrics
13
- 4. **API Contract** - Specifies endpoints, request/response structures, available data
14
-
15
- # Primary Objective
16
- Generate detailed, annotated wireframes that:
17
- - Accurately represent all specified functionality
18
- - Reflect the underlying data model and relationships
19
- - Support all API operations (CRUD, filters, pagination, etc.)
20
- - Align with user personas and product goals
21
- - Follow UX best practices and accessibility standards
22
-
23
- # Systematic Process
24
-
25
- ## Phase 1: Document Analysis
26
- 1. **FSD Analysis**
27
- - Extract all user stories and acceptance criteria
28
- - Identify primary user flows and edge cases
29
- - Map business rules that affect UI behavior
30
- - Note validation requirements and error states
31
-
32
- 2. **ERD Analysis**
33
- - Identify all entities that require UI representation
34
- - Map relationships (1:1, 1:N, M:N) to UI patterns
35
- - Determine required form fields from entity attributes
36
- - Identify lookup/reference data for dropdowns/selectors
37
-
38
- 3. **PRD Analysis**
39
- - Extract user personas and their primary goals
40
- - Identify key user journeys and success metrics
41
- - Note priority features vs. nice-to-haves
42
- - Understand product positioning and tone
43
-
44
- 4. **API Contract Analysis**
45
- - Map endpoints to screens/components needed
46
- - Identify filterable/sortable fields for list views
47
- - Determine pagination approach from API structure
48
- - Note response data available for display
49
- - Identify required vs. optional fields from request schemas
50
-
51
- ## Phase 2: Information Architecture
52
- 1. Create sitemap/navigation structure
53
- 2. Define screen inventory
54
- 3. Map user flows between screens
55
- 4. Identify shared components
56
-
57
- ## Phase 3: Wireframe Generation
58
- For each screen, produce:
59
- - Low-fidelity wireframe layout
60
- - Component specifications
61
- - Interaction annotations
62
- - State variations (empty, loading, error, success)
63
- - Responsive behavior notes
64
-
65
- # Output Format
66
-
67
- ## For Each Screen/View, Provide:
68
-
69
- ### [Screen Name]
70
-
71
- **Purpose:** [What this screen accomplishes]
72
-
73
- **User Story Reference:** [Link to relevant FSD user story]
74
-
75
- **API Dependencies:**
76
- - `GET /endpoint` - [What it provides]
77
- - `POST /endpoint` - [What it submits]
78
-
79
- **Wireframe Description:**
80
-
81
- ┌─────────────────────────────────────────────────────────┐
82
- │ [Header/Navigation] │
83
- ├─────────────────────────────────────────────────────────┤
84
- │ │
85
- │ [Main Content Area - describe layout] │
86
- │ │
87
- │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
88
- │ │ Component │ │ Component │ │ Component │ │
89
- │ │ Description│ │ Description│ │ Description│ │
90
- │ └─────────────┘ └─────────────┘ └─────────────┘ │
91
- │ │
92
- │ [Secondary Content / Sidebar if applicable] │
93
- │ │
94
- ├─────────────────────────────────────────────────────────┤
95
- │ [Footer/Actions] │
96
- └─────────────────────────────────────────────────────────┘
97
-
98
- **Component Specifications:**
99
-
100
- | Component | Type | Data Source (ERD/API) | Behavior |
101
- |-----------|------|----------------------|----------|
102
- | [Name] | [Type] | [Field/Endpoint] | [Interaction] |
103
-
104
- **Form Fields (if applicable):**
105
-
106
- | Field | Type | Validation | ERD Attribute | API Field |
107
- |-------|------|------------|---------------|-----------|
108
- | [Name] | [Input type] | [Rules] | [Entity.attribute] | [request.field] |
109
-
110
- **States:**
111
- - **Empty State:** [Description + messaging]
112
- - **Loading State:** [Skeleton/spinner approach]
113
- - **Error State:** [Error display pattern]
114
- - **Success State:** [Confirmation pattern]
115
-
116
- **Annotations:**
117
- 1. [Interaction note with numbered reference]
118
- 2. [Accessibility consideration]
119
- 3. [Edge case handling]
120
-
121
- **Responsive Behavior:**
122
- - Desktop (1200px+): [Layout]
123
- - Tablet (768-1199px): [Adjustments]
124
- - Mobile (<768px): [Mobile-specific layout]
125
-
126
- ---
127
-
128
- ## Complete Deliverables Structure
129
-
130
- ### 1. Executive Summary
131
- - Product overview
132
- - Key user personas summary
133
- - Primary user journeys identified
134
- - Screen count and complexity assessment
135
-
136
- ### 2. Information Architecture
137
- - Sitemap diagram (ASCII or described)
138
- - Navigation structure
139
- - User flow diagrams
140
-
141
- ### 3. Screen Inventory
142
- | Screen | Priority | Complexity | Related Entities | Key APIs |
143
- |--------|----------|------------|------------------|----------|
144
-
145
- ### 4. Wireframes (per screen using format above)
146
-
147
- ### 5. Component Library
148
- - Reusable components identified
149
- - Pattern specifications
150
- - Usage guidelines
151
-
152
- ### 6. Interaction Patterns
153
- - Navigation patterns
154
- - Form submission flows
155
- - Error handling patterns
156
- - Loading state patterns
157
-
158
- ### 7. Data Display Patterns
159
- - List/table views (based on ERD collections)
160
- - Detail views (based on ERD entities)
161
- - Relationship displays (based on ERD cardinality)
162
-
163
- ### 8. Traceability Matrix
164
- | User Story (FSD) | Screen | ERD Entities | API Endpoints |
165
- |------------------|--------|--------------|---------------|
166
-
167
- # Quality Standards
168
-
169
- - [ ] Every FSD user story has corresponding UI representation
170
- - [ ] All ERD entities with user-facing data have display screens
171
- - [ ] All API endpoints are utilized in appropriate screens
172
- - [ ] PRD user personas can complete their primary journeys
173
- - [ ] Forms include all required fields from API contracts
174
- - [ ] Validation rules from FSD/API are reflected in form specs
175
- - [ ] Relationships from ERD are navigable in the UI
176
- - [ ] Empty, loading, and error states defined for all data-dependent views
177
- - [ ] Responsive behavior specified for all screens
178
- - [ ] Accessibility considerations noted
179
-
180
- # Special Instructions
181
-
182
- 1. **Data Relationship Handling:**
183
- - 1:1 relationships → Inline display or expandable sections
184
- - 1:N relationships → List/table with detail view
185
- - M:N relationships → Multi-select interfaces or tagging
186
-
187
- 2. **API-Driven Patterns:**
188
- - Pagination → Match API pagination style (offset/cursor)
189
- - Filtering → Create filter UI for all filterable API params
190
- - Sorting → Enable sort for all sortable API fields
191
- - Search → Include if API supports search endpoints
192
-
193
- 3. **Form Generation Logic:**
194
- - Required API fields → Required form fields with validation
195
- - Optional API fields → Optional with clear labeling
196
- - Enum fields → Dropdown/radio based on option count
197
- - Reference fields (FK) → Searchable dropdown with API lookup
198
-
199
- 4. **Error Handling:**
200
- - Map API error responses to user-friendly messages
201
- - Include inline validation before submission
202
- - Provide recovery paths for all error states
203
-
204
- 5. **Maintain Traceability:**
205
- - Reference specific FSD section numbers
206
- - Note ERD entity names in component specs
207
- - Include API endpoint paths in screen documentation
208
-
209
- ---
210
-
211
- # Begin Analysis
212
-
213
- First, I will analyze each provided document systematically, then generate the complete wireframe documentation following this structure.
214
-
215
- **Please provide:**
216
- 1. Functional Specification Document (FSD)
217
- 2. Entity Relationship Diagram (ERD)
218
- 3. Product Requirements Document (PRD)
219
- 4. API Contract/Specification
@@ -1,54 +0,0 @@
1
- ---
2
- name: ai-context-generator
3
- description: Generate AGENTS.md and CLAUDE.md for a project in one pass. Produces a single canonical AGENTS.md (tool-agnostic, dense, command-heavy) plus a CLAUDE.md that imports it via `@AGENTS.md` and adds Claude Code-specific context (slash commands, skills, hooks, settings). Use whenever the user wants to set up AI agent context, generate AGENTS.md, generate CLAUDE.md, refresh outdated agent docs, or onboard AI tools to a codebase. Also trigger on phrases like "agent rules", "agent instructions", "claude rules", "ai context file", "set up cursor/copilot/claude for this repo".
4
- ---
5
-
6
- # AI Context Generator
7
-
8
- Generate AGENTS.md and CLAUDE.md in one pass. AGENTS.md is canonical; CLAUDE.md is a thin Claude Code-specific layer that imports it via `@AGENTS.md` so they never drift.
9
-
10
- ## Quality bar (read first, re-check at the end)
11
-
12
- Output must be **dense, concrete, surprising, bounded, skimmable**. If a line restates what `package.json` or the file tree already shows, cut it. Hard caps:
13
-
14
- - AGENTS.md total: **≤ 200 lines** (≤ 300 only for genuinely large monorepos)
15
- - Conventions section: **≤ 8 bullets, ≤ 15 words each**
16
- - Never section: **≤ 6 bullets**
17
- - Every command: exact, with flags, copy-pasteable. No placeholders.
18
- - No emoji unless existing project docs use them. No marketing tone.
19
-
20
- Before declaring done, re-read the output and answer: would an experienced contributor skip any section as "obvious"? If yes, cut it.
21
-
22
- ## Workflow
23
-
24
- ### Step 1 — Confirm scope
25
-
26
- Ask once, briefly: *"Generating AGENTS.md and CLAUDE.md for `<repo>`. Anything specific to emphasize (gotchas, 'never do X' rules), or just analyze?"* Capture user input as priority signal for Step 3.
27
-
28
- ### Step 2 — Parallel discovery
29
-
30
- Read `references/discovery-checklist.md` and execute all reads in **one parallel batch**. Do not serialize.
31
-
32
- ### Step 3 — Extract high-signal facts
33
-
34
- Read `references/extraction-checklist.md` and pull only facts that match the checklist. If a fact isn't on the list and wasn't in the user's Step 1 input, leave it out.
35
-
36
- ### Step 4 — Write AGENTS.md
37
-
38
- Use `references/AGENTS.template.md`. Before writing, scan `references/examples/AGENTS.good.md` to calibrate density and tone — pattern-match on it.
39
-
40
- **Always** append the contents of `references/behavioral-guidelines.md` verbatim as the final section of AGENTS.md. Do not paraphrase, shorten, or reorder. The line caps in the quality bar do **not** apply to this appended block — it is fixed content.
41
-
42
- **Stack overlays.** After the behavioral guidelines, check `references/overlays/` for any overlay matching the detected stack and append it verbatim too. Detection rules:
43
-
44
- - **Laravel** → append `references/overlays/laravel.md` if `composer.json` contains `laravel/framework` OR an `artisan` file exists at repo root.
45
-
46
- Add more overlays here as the directory grows. Line caps do not apply to overlay content.
47
-
48
- ### Step 5 — Write CLAUDE.md
49
-
50
- Use `references/CLAUDE.template.md`. Default body is `@AGENTS.md` + Claude Code-specific sections only (slash commands, skills, hooks, permissions, memory imports, workflow). Skip any section that has no content. **Do not duplicate** anything from AGENTS.md — if you're tempted to, move it into AGENTS.md instead.
51
-
52
- ### Step 6 — Diff and confirm
53
-
54
- If AGENTS.md or CLAUDE.md already exists, show the user the diff before overwriting. For new files, write them and report paths + line counts. End with one sentence on what to verify (e.g. "verify the test command actually runs in your env").
@@ -1,83 +0,0 @@
1
- # AGENTS.md
2
-
3
- > Context for AI coding agents working in this repo. Keep dense and current.
4
-
5
- ## What this is
6
-
7
- <one sentence: what the project does, who uses it>
8
-
9
- ## Stack
10
-
11
- - **Language:** <e.g. TypeScript 5.4, Node 20>
12
- - **Framework:** <e.g. Next.js 15 (app router)>
13
- - **Key libs:** <e.g. Prisma, tRPC, Tailwind v4, Vitest>
14
- - **Package manager:** <pnpm 9 / npm / bun / uv / cargo>
15
-
16
- ## Setup
17
-
18
- ```bash
19
- <install command>
20
- <bootstrap / migrate / seed command, if any>
21
- <env file setup, e.g. cp .env.example .env>
22
- ```
23
-
24
- ## Daily commands
25
-
26
- | Task | Command |
27
- |---|---|
28
- | Dev server | `<exact cmd>` |
29
- | Build | `<exact cmd>` |
30
- | Test (all) | `<exact cmd>` |
31
- | Test (single file) | `<exact cmd path/to/file>` |
32
- | Lint | `<exact cmd>` |
33
- | Format | `<exact cmd>` |
34
- | Typecheck | `<exact cmd>` |
35
-
36
- ## Layout
37
-
38
- ```
39
- <top-level tree, 1–2 deep, each with a one-line purpose>
40
- src/
41
- <dir>/ — <purpose>
42
- <dir>/ — <purpose>
43
- generated/ — DO NOT EDIT (auto-generated by <tool>)
44
- ```
45
-
46
- ## Conventions
47
-
48
- - <non-obvious rule 1, with example>
49
- - <non-obvious rule 2>
50
- - <where new files of type X go>
51
- - <error handling / logging style>
52
-
53
- ## Testing
54
-
55
- - Framework: <vitest / jest / pytest / go test / ...>
56
- - Tests live in: <co-located `*.test.ts` / `tests/` / ...>
57
- - Unit vs integration: <how to tell, where each lives>
58
- - Mocking policy: <e.g. "no DB mocks — integration tests use a real Postgres via testcontainers">
59
- - Fixtures: <where, how to add>
60
-
61
- ## Architecture notes
62
-
63
- <only include if non-obvious. examples:>
64
- - Data flows <from → to>; <module> owns <responsibility>.
65
- - <Module A> must never import from <module B>; the boundary is enforced by <eslint rule / dependency-cruiser / convention>.
66
-
67
- ## Never
68
-
69
- - <destructive or out-of-scope action 1>
70
- - Do not edit `generated/`, `*.lock`, or migrations after they're merged.
71
- - <patterns explicitly rejected in past reviews>
72
-
73
- ## Environment
74
-
75
- | Var | Required | Purpose |
76
- |---|---|---|
77
- | `<NAME>` | yes | <purpose> |
78
- | `<NAME>` | no | <purpose, default> |
79
-
80
- External services: <list, with where credentials are managed — 1Password / Doppler / Vercel env / ...>
81
-
82
- <!-- Append `references/behavioral-guidelines.md` verbatim below this line. Always. -->
83
-
@@ -1,39 +0,0 @@
1
- # Claude Code Instructions
2
-
3
- @AGENTS.md
4
-
5
- ## Claude Code-specific
6
-
7
- <!-- Include only the subsections below that actually apply. Delete the rest. -->
8
-
9
- ### Slash commands
10
-
11
- <list `.claude/commands/*.md` — name + one-line purpose>
12
-
13
- - `/<command>` — <purpose>
14
-
15
- ### Skills
16
-
17
- <list project skills under `skills/` or `.claude/skills/` with trigger phrases>
18
-
19
- - **<skill-name>** (`<path>`) — <what it does>. Trigger: <phrase>
20
-
21
- ### Hooks
22
-
23
- <from `.claude/settings.json` — what runs on what event>
24
-
25
- - `PostToolUse` on `Edit|Write` → `<command>` (<purpose>)
26
-
27
- ### Memory imports
28
-
29
- <other files Claude should auto-load via `@path`>
30
-
31
- - `@docs/architecture.md` — <why>
32
-
33
- ### Workflow
34
-
35
- <Claude-specific behavior the user wants here. Examples:>
36
-
37
- - Always run `<typecheck cmd>` before declaring a task done.
38
- - Prefer the project's <skill-name> skill over ad-hoc <task>.
39
- - When editing <area>, also update <related file>.
@@ -1,71 +0,0 @@
1
- <!--
2
- ALWAYS append this block verbatim to every generated AGENTS.md.
3
- Do not paraphrase, shorten, or reorder. Do not duplicate it in CLAUDE.md
4
- (CLAUDE.md inherits it via @AGENTS.md).
5
- -->
6
-
7
- ## Behavioral guidelines
8
-
9
- Behavioral guidelines to reduce common LLM coding mistakes. Merge with project-specific instructions as needed.
10
-
11
- **Tradeoff:** These guidelines bias toward caution over speed. For trivial tasks, use judgment.
12
-
13
- ### 1. Think Before Coding
14
-
15
- **Don't assume. Don't hide confusion. Surface tradeoffs.**
16
-
17
- Before implementing:
18
- - State your assumptions explicitly. If uncertain, ask.
19
- - If multiple interpretations exist, present them - don't pick silently.
20
- - If a simpler approach exists, say so. Push back when warranted.
21
- - If something is unclear, stop. Name what's confusing. Ask.
22
-
23
- ### 2. Simplicity First
24
-
25
- **Minimum code that solves the problem. Nothing speculative.**
26
-
27
- - No features beyond what was asked.
28
- - No abstractions for single-use code.
29
- - No "flexibility" or "configurability" that wasn't requested.
30
- - No error handling for impossible scenarios.
31
- - If you write 200 lines and it could be 50, rewrite it.
32
-
33
- Ask yourself: "Would a senior engineer say this is overcomplicated?" If yes, simplify.
34
-
35
- ### 3. Surgical Changes
36
-
37
- **Touch only what you must. Clean up only your own mess.**
38
-
39
- When editing existing code:
40
- - Don't "improve" adjacent code, comments, or formatting.
41
- - Don't refactor things that aren't broken.
42
- - Match existing style, even if you'd do it differently.
43
- - If you notice unrelated dead code, mention it - don't delete it.
44
-
45
- When your changes create orphans:
46
- - Remove imports/variables/functions that YOUR changes made unused.
47
- - Don't remove pre-existing dead code unless asked.
48
-
49
- The test: Every changed line should trace directly to the user's request.
50
-
51
- ### 4. Goal-Driven Execution
52
-
53
- **Define success criteria. Loop until verified.**
54
-
55
- Transform tasks into verifiable goals:
56
- - "Add validation" → "Write tests for invalid inputs, then make them pass"
57
- - "Fix the bug" → "Write a test that reproduces it, then make it pass"
58
- - "Refactor X" → "Ensure tests pass before and after"
59
-
60
- For multi-step tasks, state a brief plan:
61
- ```
62
- 1. [Step] → verify: [check]
63
- 2. [Step] → verify: [check]
64
- 3. [Step] → verify: [check]
65
- ```
66
-
67
- Strong success criteria let you loop independently. Weak criteria ("make it work") require constant clarification.
68
-
69
- ---
70
-
71
- **These guidelines are working if:** fewer unnecessary changes in diffs, fewer rewrites due to overcomplication, and clarifying questions come before implementation rather than after mistakes.
@@ -1,40 +0,0 @@
1
- # Discovery checklist
2
-
3
- Run all of these reads in **one parallel batch**. Skip files that don't exist (errors are fine).
4
-
5
- ## Manifests
6
- `package.json`, `pnpm-workspace.yaml`, `pyproject.toml`, `Cargo.toml`, `go.mod`, `composer.json`, `Gemfile`, `pom.xml`, `build.gradle`, `requirements.txt`, `uv.lock`
7
-
8
- ## Config
9
- `tsconfig.json`, `.eslintrc*`, `biome.json`, `.prettierrc*`, `tailwind.config.*`, `vite.config.*`, `next.config.*`, `nuxt.config.*`, `astro.config.*`, `webpack.config.*`, `Makefile`, `justfile`, `turbo.json`, `nx.json`
10
-
11
- ## Infra
12
- `Dockerfile`, `docker-compose.yml`, `.gitlab-ci.yml`
13
- List dirs: `.github/workflows/`
14
-
15
- ## Existing docs
16
- `README.md`, `CONTRIBUTING.md`, `ARCHITECTURE.md`
17
- List dirs: `docs/`
18
-
19
- ## Existing AI config (read to preserve hard-won knowledge)
20
- `AGENTS.md`, `CLAUDE.md`, `.cursorrules`, `.github/copilot-instructions.md`, `.windsurfrules`, `.aider.conf.yml`
21
- List dirs: `.cursor/rules/`
22
-
23
- ## Claude Code specifics
24
- `.claude/settings.json`, `.claude/settings.local.json`
25
- List dirs: `.claude/commands/`, `.claude/skills/`, `.claude/hooks/`, `skills/`
26
-
27
- ## Layout signal
28
- List root dir, then list `src/`, `app/`, `lib/`, `packages/`, `apps/` (one level deep) if present.
29
-
30
- ## Git signal
31
- - `git log --oneline -20`
32
- - `git ls-files | head -50`
33
-
34
- ## Extract from these
35
- - Tech stack + versions (Node 20 vs 22, React 18 vs 19 changes advice)
36
- - Build / test / lint / typecheck commands with exact flags
37
- - Project structure (mark generated/vendored/deprecated dirs)
38
- - Coding conventions (only non-obvious ones)
39
- - Architecture decisions (only if not derivable from layout)
40
- - Past gotchas (from existing AI config files — preserve them)
@@ -1,103 +0,0 @@
1
- <!--
2
- EXAMPLE — calibrate density and tone against this file.
3
- This is a fictional but realistic AGENTS.md for a mid-sized TS/Next.js SaaS app.
4
- Note: ~140 lines, every command exact, "Never" section is specific, no filler.
5
- -->
6
-
7
- # AGENTS.md
8
-
9
- > Context for AI coding agents working in `acme-billing`. Keep dense and current.
10
-
11
- ## What this is
12
-
13
- Self-serve billing portal for Acme customers — view invoices, update payment methods, manage subscriptions. Talks to Stripe and our internal `entitlements` service.
14
-
15
- ## Stack
16
-
17
- - **Language:** TypeScript 5.5, Node 20.11
18
- - **Framework:** Next.js 15 (app router), React 19
19
- - **Key libs:** Prisma 5, tRPC 11, Tailwind v4, Zod, Vitest, Playwright
20
- - **Package manager:** pnpm 9 (workspaces — see `pnpm-workspace.yaml`)
21
-
22
- ## Setup
23
-
24
- ```bash
25
- pnpm install
26
- cp .env.example .env.local # ask #billing-eng for real values
27
- pnpm db:migrate # runs prisma migrate dev
28
- pnpm db:seed # seeds local Stripe test data
29
- ```
30
-
31
- ## Daily commands
32
-
33
- | Task | Command |
34
- |---|---|
35
- | Dev server | `pnpm dev` (http://localhost:3000) |
36
- | Build | `pnpm build` |
37
- | Test (unit, all) | `pnpm test` |
38
- | Test (single file) | `pnpm test -- --run src/server/billing/refund.test.ts` |
39
- | Test (e2e) | `pnpm test:e2e` (requires `pnpm dev` running in another shell) |
40
- | Lint | `pnpm lint` |
41
- | Format | `pnpm format` |
42
- | Typecheck | `pnpm typecheck` |
43
-
44
- Always run `pnpm typecheck && pnpm lint` before opening a PR. CI runs both and rejects warnings.
45
-
46
- ## Layout
47
-
48
- ```
49
- apps/
50
- web/ — Next.js app (UI + tRPC routes)
51
- worker/ — BullMQ workers (Stripe webhook handlers, retries)
52
- packages/
53
- db/ — Prisma schema + generated client (do not edit generated/)
54
- shared/ — Zod schemas shared between web + worker
55
- ui/ — shared React components (Tailwind v4)
56
- infra/
57
- terraform/ — prod infra; PRs require @platform review
58
- prisma/
59
- migrations/ — never edit a merged migration; add a new one
60
- ```
61
-
62
- ## Conventions
63
-
64
- - New tRPC procedures go in `apps/web/src/server/routers/<feature>.ts`. Register in `_app.ts`.
65
- - All input validation uses Zod schemas from `packages/shared` — do not redefine inline.
66
- - Money is `bigint` cents, never `number`. Use `formatMoney` from `packages/shared/money`.
67
- - Dates: store UTC, render in user TZ via `formatInTimeZone`. Never use `new Date(string)` for parsing — use `parseISO`.
68
- - Server components by default; add `"use client"` only when you need state or events.
69
- - One default export per file for components; named exports for everything else.
70
-
71
- ## Testing
72
-
73
- - **Unit (Vitest):** co-located `*.test.ts`. Pure logic, no I/O.
74
- - **Integration (Vitest):** in `tests/integration/`. **Hits real Postgres** via testcontainers — do not mock the DB.
75
- - **E2E (Playwright):** in `tests/e2e/`. Hits Stripe test mode.
76
- - Add a test for every new tRPC procedure. CI fails if `apps/web/src/server/routers/**/*.ts` lacks a sibling `.test.ts`.
77
-
78
- ## Architecture notes
79
-
80
- - Webhook flow: Stripe → `apps/worker` → updates `entitlements` service → web app reads via tRPC. Web never calls Stripe directly except for hosted-checkout redirects.
81
- - `packages/db` is the only place that imports `@prisma/client`. Other packages get types via `packages/shared`.
82
-
83
- ## Never
84
-
85
- - Edit `packages/db/generated/` (regenerated by `pnpm db:generate`).
86
- - Edit a merged migration in `prisma/migrations/` — add a new one.
87
- - Mock the database in integration tests (Q3 incident: mocked tests passed, prod migration broke).
88
- - Use `any` or `as` casts in `packages/shared` — schemas must be exact.
89
- - Call Stripe APIs from `apps/web` directly. Route through `apps/worker`.
90
- - Commit `.env.local` or anything in `secrets/`.
91
-
92
- ## Environment
93
-
94
- | Var | Required | Purpose |
95
- |---|---|---|
96
- | `DATABASE_URL` | yes | Postgres connection |
97
- | `STRIPE_SECRET_KEY` | yes | Stripe API (test or live) |
98
- | `STRIPE_WEBHOOK_SECRET` | yes | Verify webhook signatures |
99
- | `ENTITLEMENTS_URL` | yes | Internal entitlements service |
100
- | `SENTRY_DSN` | no | Error reporting; no-op if unset |
101
-
102
- Production secrets live in 1Password vault `acme-billing-prod`. Local dev secrets in `acme-billing-dev`.
103
-
@@ -1,23 +0,0 @@
1
- # Extraction checklist
2
-
3
- From discovery output, pull only facts that match the categories below. If a fact doesn't fit here and wasn't in the user's Step 1 input, **leave it out**.
4
-
5
- 1. **What this project is** — one sentence, plain English.
6
- 2. **Tech stack** — language + version, framework, key libs, package manager.
7
- 3. **Setup** — install + bootstrap commands in order.
8
- 4. **Daily commands** — dev, build, test (full + single file), lint, format, typecheck. Exact flags.
9
- 5. **Project layout** — 1–2 levels, one-line purpose per dir. Mark generated / vendored / deprecated.
10
- 6. **Code conventions** — only non-obvious ones (skip what the linter already enforces).
11
- 7. **Testing rules** — framework, location, unit vs integration boundary, mocking policy, fixtures.
12
- 8. **Architecture notes** — only if non-obvious (data flow, module boundaries, where state lives).
13
- 9. **Things to never do** — destructive ops, files not to touch, patterns rejected in past PRs.
14
- 10. **External services / env vars** — names only, never values; where credentials live.
15
- ## Priority rules
16
-
17
- - User's Step 1 input takes precedence. If they named a gotcha, it goes in §9 with their wording preserved.
18
- - Existing AGENTS.md / CLAUDE.md / .cursorrules content is **gold** — these contain hard-won knowledge. Preserve, don't paraphrase.
19
- - When in doubt: omit. A short, dense file beats a long, hedged one.
20
-
21
- ## Density test
22
-
23
- For each extracted fact, ask: *"Could a fresh contributor figure this out in 30 seconds by reading the repo?"* If yes, drop it. Keep only facts that save real time or prevent real mistakes.
@@ -1,44 +0,0 @@
1
- <!--
2
- LARAVEL OVERLAY — append verbatim to AGENTS.md when the project is Laravel.
3
- Detection: `composer.json` includes `laravel/framework`, OR `artisan` exists at repo root.
4
- Place this block AFTER `## Behavioral guidelines` and BEFORE end of file.
5
- -->
6
-
7
- ## Laravel safety rules (mandatory)
8
-
9
- These rules are non-negotiable and override speed/convenience. They exist because destructive DB commands have repeatedly destroyed local and shared data on this project.
10
-
11
- ### Confirmation required before any destructive command
12
-
13
- Always ask for explicit yes/no confirmation before running any of:
14
-
15
- - **Schema drops:** `Schema::drop`, `Schema::dropIfExists`, raw `DROP TABLE`, `DROP DATABASE`, `php artisan db:wipe`.
16
- - **Bulk data deletion:** `Model::truncate()`, `DB::table(...)->truncate()`, `DB::table(...)->delete()` without a `where`, `Model::query()->delete()`, `forceDelete` on collections, mass cleanup jobs/commands.
17
- - **Fresh rebuild:** `php artisan migrate:fresh`, `php artisan migrate:fresh --seed`, `php artisan migrate:refresh`, `php artisan schema:dump --prune`. (User may call this "migrateg --fresh" — same thing.)
18
- - **Production-targeted destructive ops:** anything above with `--force`, or `--env=production`, or against a non-local `DB_CONNECTION`.
19
- - **Seeders that truncate:** any `DatabaseSeeder` or seeder containing `truncate()` / `delete()` calls.
20
- - **Tinker:** destructive operations via `php artisan tinker` (treat the same as direct execution).
21
-
22
- ### Required confirmation format
23
-
24
- Before running, state:
25
-
26
- 1. **Command:** the exact invocation (with all flags, env, and target connection).
27
- 2. **Why destructive:** what it deletes/drops.
28
- 3. **Scope:** which DB connection, which env (`APP_ENV`, `DB_CONNECTION`, `DB_DATABASE`), how many rows/tables affected if knowable.
29
- 4. **Safer alternative:** name one (e.g. `php artisan migrate` instead of `migrate:fresh`; a targeted `where()->delete()` instead of `truncate()`).
30
-
31
- Then ask: *"Run this? (yes/no)"* — wait for an explicit yes. Implicit consent does not count.
32
-
33
- ### Default safe behavior
34
-
35
- - No confirmation → do not run. Do not retry with a different flag.
36
- - Prefer non-destructive first: `migrate` over `migrate:fresh`; new migration over editing a merged one; targeted update over truncate-and-reseed.
37
- - If approved, run **only** the confirmed scope. Do not chain extra commands ("while I'm here, also...").
38
- - After running, report: command run, rows/tables affected, current migration status.
39
-
40
- ### Hard rules (never, even with confirmation, unless user explicitly names the command)
41
-
42
- - Never run any destructive command against a connection that isn't `sqlite` in-memory or a database whose name contains `local`, `dev`, or `test` — without the user typing the actual command themselves.
43
- - Never use `--force` in any environment without an explicit user instruction containing `--force`.
44
- - Never `DROP DATABASE` or `db:wipe` without the user typing it.