@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.
- package/CHANGELOG.md +35 -0
- package/README.md +105 -77
- package/dist/cli/index.js +25 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +35 -9
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/login.d.ts +4 -0
- package/dist/commands/login.d.ts.map +1 -0
- package/dist/commands/login.js +56 -0
- package/dist/commands/login.js.map +1 -0
- package/dist/commands/logout.d.ts +4 -0
- package/dist/commands/logout.d.ts.map +1 -0
- package/dist/commands/logout.js +14 -0
- package/dist/commands/logout.js.map +1 -0
- package/dist/commands/update.d.ts +0 -2
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +19 -48
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/whoami.d.ts +4 -0
- package/dist/commands/whoami.d.ts.map +1 -0
- package/dist/commands/whoami.js +42 -0
- package/dist/commands/whoami.js.map +1 -0
- package/dist/core/auth-store.d.ts +10 -0
- package/dist/core/auth-store.d.ts.map +1 -0
- package/dist/core/auth-store.js +39 -0
- package/dist/core/auth-store.js.map +1 -0
- package/dist/core/config.d.ts +0 -7
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +0 -128
- package/dist/core/config.js.map +1 -1
- package/dist/core/registry.d.ts +18 -0
- package/dist/core/registry.d.ts.map +1 -0
- package/dist/core/registry.js +94 -0
- package/dist/core/registry.js.map +1 -0
- package/package.json +7 -1
- package/AGENTS.md +0 -123
- package/CLAUDE.md +0 -17
- package/build.js +0 -20
- package/convex-setup.md +0 -403
- package/dist/core/prompt-templates.d.ts +0 -23
- package/dist/core/prompt-templates.d.ts.map +0 -1
- package/dist/core/prompt-templates.js +0 -3485
- package/dist/core/prompt-templates.js.map +0 -1
- package/prompt/ai-humanizer.md +0 -45
- package/prompt/api-contract-generator.md +0 -234
- package/prompt/apply.md +0 -17
- package/prompt/archive.md +0 -21
- package/prompt/design-system.md +0 -210
- package/prompt/document-explainer.md +0 -149
- package/prompt/epic-generator.md +0 -198
- package/prompt/epic-single.md +0 -47
- package/prompt/erd-generator.md +0 -130
- package/prompt/fsd-generator.md +0 -157
- package/prompt/prd-agent-generator.md +0 -147
- package/prompt/prd-generator.md +0 -195
- package/prompt/product-brief.md +0 -289
- package/prompt/proposal.md +0 -22
- package/prompt/qa-test-scenario.md +0 -133
- package/prompt/skill-creator.md +0 -350
- package/prompt/story-generator.md +0 -278
- package/prompt/story-single.md +0 -70
- package/prompt/tdd-generator.md +0 -294
- package/prompt/tdd-lite-generator.md +0 -224
- package/prompt/wireframe-generator.md +0 -219
- package/skills/ai-context-generator/SKILL.md +0 -54
- package/skills/ai-context-generator/references/AGENTS.template.md +0 -83
- package/skills/ai-context-generator/references/CLAUDE.template.md +0 -39
- package/skills/ai-context-generator/references/behavioral-guidelines.md +0 -71
- package/skills/ai-context-generator/references/discovery-checklist.md +0 -40
- package/skills/ai-context-generator/references/examples/AGENTS.good.md +0 -103
- package/skills/ai-context-generator/references/extraction-checklist.md +0 -23
- package/skills/ai-context-generator/references/overlays/laravel.md +0 -44
- package/skills/ai-humanizer/SKILL.md +0 -50
- package/skills/api-contract-generator/SKILL.md +0 -243
- package/skills/apply/SKILL.md +0 -23
- package/skills/archive/SKILL.md +0 -27
- package/skills/cerebro/SKILL.md +0 -187
- package/skills/cerebro/references/agents.md +0 -213
- package/skills/code-review/SKILL.md +0 -373
- package/skills/code-review/assets/report-template-agent.md +0 -212
- package/skills/code-review/assets/report-template-compact.md +0 -81
- package/skills/code-review/assets/report-template-full.md +0 -264
- package/skills/code-review/assets/report-template-human.md +0 -168
- package/skills/code-review/references/universal-patterns.md +0 -495
- package/skills/design-md/README.md +0 -34
- package/skills/design-md/SKILL.md +0 -172
- package/skills/design-md/examples/DESIGN.md +0 -154
- package/skills/design-system/SKILL.md +0 -216
- package/skills/design-system-generator/SKILL.md +0 -324
- package/skills/design-system-generator/assets/design-system-template.md +0 -348
- package/skills/design-system-generator/references/extraction-patterns.md +0 -321
- package/skills/doc-builder/SKILL.md +0 -115
- package/skills/doc-builder/references/ui-patterns.md +0 -394
- package/skills/document-explainer/SKILL.md +0 -155
- package/skills/document-translator/SKILL.md +0 -58
- package/skills/enhance/SKILL.md +0 -47
- package/skills/enhance-prompt/README.md +0 -34
- package/skills/enhance-prompt/SKILL.md +0 -204
- package/skills/enhance-prompt/references/KEYWORDS.md +0 -114
- package/skills/epic-generator/SKILL.md +0 -204
- package/skills/epic-single/SKILL.md +0 -63
- package/skills/erd-generator/SKILL.md +0 -138
- package/skills/feature-planner/SKILL.md +0 -305
- package/skills/feature-planner/assets/implementation-plan-template.md +0 -85
- package/skills/frontend-design/LICENSE.txt +0 -177
- package/skills/frontend-design/SKILL.md +0 -42
- package/skills/fsd-generator/SKILL.md +0 -163
- package/skills/gamma-builder/SKILL.md +0 -134
- package/skills/laravel-code-review/SKILL.md +0 -383
- package/skills/laravel-code-review/assets/report-template-agent.md +0 -195
- package/skills/laravel-code-review/assets/report-template-compact.md +0 -79
- package/skills/laravel-code-review/assets/report-template-full.md +0 -253
- package/skills/laravel-code-review/assets/report-template-human.md +0 -159
- package/skills/laravel-code-review/references/laravel-patterns.md +0 -571
- package/skills/laravel-code-review/references/php84-features.md +0 -442
- package/skills/mcp-builder/LICENSE.txt +0 -202
- package/skills/mcp-builder/SKILL.md +0 -236
- package/skills/mcp-builder/reference/evaluation.md +0 -602
- package/skills/mcp-builder/reference/mcp_best_practices.md +0 -249
- package/skills/mcp-builder/reference/node_mcp_server.md +0 -970
- package/skills/mcp-builder/reference/python_mcp_server.md +0 -719
- package/skills/mcp-builder/scripts/connections.py +0 -151
- package/skills/mcp-builder/scripts/evaluation.py +0 -373
- package/skills/mcp-builder/scripts/example_evaluation.xml +0 -22
- package/skills/mcp-builder/scripts/requirements.txt +0 -2
- package/skills/meeting-notes/SKILL.md +0 -159
- package/skills/meeting-notes/evals/evals.json +0 -23
- package/skills/prd-agent-generator/SKILL.md +0 -132
- package/skills/prd-generator/SKILL.md +0 -211
- package/skills/product-brief/SKILL.md +0 -141
- package/skills/project-orchestrator/SKILL.md +0 -487
- package/skills/project-orchestrator/assets/caddy-vps-setup.md +0 -180
- package/skills/project-orchestrator/assets/plan-summary-template.md +0 -159
- package/skills/prompter-specs/SKILL.md +0 -115
- package/skills/prompter-workflow/SKILL.md +0 -166
- package/skills/prompter-workflow/evals/evals.json +0 -89
- package/skills/proposal/SKILL.md +0 -28
- package/skills/qa-test-scenario/SKILL.md +0 -149
- package/skills/skill-creator/SKILL.md +0 -173
- package/skills/sph-generator/SKILL.md +0 -488
- package/skills/story-generator/SKILL.md +0 -285
- package/skills/story-single/SKILL.md +0 -86
- package/skills/tdd-generator/SKILL.md +0 -300
- package/skills/tdd-lite-generator/SKILL.md +0 -230
- package/skills/ui-ux-pro/SKILL.md +0 -199
- package/skills/ui-ux-pro/assets/design-spec-template.md +0 -173
- package/skills/ui-ux-pro/references/component-patterns.md +0 -255
- package/skills/ui-ux-pro/references/design-principles.md +0 -167
- package/skills/wireframe-generator/SKILL.md +0 -227
- package/src/cli/index.ts +0 -223
- package/src/commands/archive.ts +0 -302
- package/src/commands/change.ts +0 -292
- package/src/commands/config.ts +0 -233
- package/src/commands/guide.ts +0 -50
- package/src/commands/init.ts +0 -597
- package/src/commands/list.ts +0 -194
- package/src/commands/show.ts +0 -138
- package/src/commands/spec.ts +0 -251
- package/src/commands/update.ts +0 -129
- package/src/commands/upgrade.ts +0 -30
- package/src/commands/validate.ts +0 -326
- package/src/core/artifact-graph/graph.ts +0 -167
- package/src/core/artifact-graph/index.ts +0 -44
- package/src/core/artifact-graph/instruction-loader.ts +0 -302
- package/src/core/artifact-graph/resolver.ts +0 -226
- package/src/core/artifact-graph/schema.ts +0 -124
- package/src/core/artifact-graph/state.ts +0 -64
- package/src/core/artifact-graph/types.ts +0 -65
- package/src/core/completions/command-registry.ts +0 -382
- package/src/core/completions/completion-provider.ts +0 -128
- package/src/core/completions/generators/bash-generator.ts +0 -191
- package/src/core/completions/generators/fish-generator.ts +0 -188
- package/src/core/completions/generators/powershell-generator.ts +0 -223
- package/src/core/completions/generators/zsh-generator.ts +0 -281
- package/src/core/completions/templates/bash-templates.ts +0 -24
- package/src/core/completions/templates/fish-templates.ts +0 -40
- package/src/core/completions/templates/powershell-templates.ts +0 -25
- package/src/core/completions/templates/zsh-templates.ts +0 -36
- package/src/core/completions/types.ts +0 -90
- package/src/core/config-schema.ts +0 -230
- package/src/core/config.ts +0 -181
- package/src/core/configurators/slash/antigravity.ts +0 -10
- package/src/core/configurators/slash/base.ts +0 -109
- package/src/core/configurators/slash/claude.ts +0 -10
- package/src/core/configurators/slash/codex.ts +0 -10
- package/src/core/configurators/slash/droid.ts +0 -10
- package/src/core/configurators/slash/forge.ts +0 -10
- package/src/core/configurators/slash/github-copilot.ts +0 -10
- package/src/core/configurators/slash/index.ts +0 -10
- package/src/core/configurators/slash/kilocode.ts +0 -10
- package/src/core/configurators/slash/opencode.ts +0 -10
- package/src/core/configurators/slash/registry.ts +0 -51
- package/src/core/converters/json-converter.ts +0 -62
- package/src/core/global-config.ts +0 -136
- package/src/core/parsers/change-parser.ts +0 -234
- package/src/core/parsers/markdown-parser.ts +0 -237
- package/src/core/parsers/requirement-blocks.ts +0 -234
- package/src/core/prompt-templates.ts +0 -3504
- package/src/core/schemas/base.schema.ts +0 -20
- package/src/core/schemas/change.schema.ts +0 -42
- package/src/core/schemas/index.ts +0 -20
- package/src/core/schemas/spec.schema.ts +0 -17
- package/src/core/skill-discovery.ts +0 -68
- package/src/core/specs-apply.ts +0 -483
- package/src/core/styles/palette.ts +0 -8
- package/src/core/templates/agents-template.ts +0 -459
- package/src/core/templates/claude-template.ts +0 -2
- package/src/core/templates/index.ts +0 -3
- package/src/core/templates/project-template.ts +0 -32
- package/src/core/validation/constants.ts +0 -48
- package/src/core/validation/types.ts +0 -19
- package/src/core/validation/validator.ts +0 -449
- package/src/core/view.ts +0 -219
- package/src/index.ts +0 -1
- package/src/utils/change-metadata.ts +0 -171
- package/src/utils/change-utils.ts +0 -131
- package/src/utils/file-system.ts +0 -252
- package/src/utils/index.ts +0 -12
- package/src/utils/interactive.ts +0 -29
- package/src/utils/item-discovery.ts +0 -66
- package/src/utils/match.ts +0 -26
- package/src/utils/shell-detection.ts +0 -62
- package/src/utils/task-progress.ts +0 -43
- 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.
|