contextos-agents 2.1.0 → 2.1.1
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/.agents/adapters/aider/export.js +2 -2
- package/.agents/adapters/claude/export.js +53 -2
- package/.agents/adapters/drift-detector.js +6 -3
- package/.agents/adapters/pure-compiler.js +18 -6
- package/.agents/ctx.js +4 -4
- package/.agents/plugins.js +100 -4
- package/.agents/profiles.js +32 -11
- package/README.md +2 -2
- package/bin/commands/hook.js +50 -12
- package/bin/commands/scan.js +10 -3
- package/bin/index.js +8 -2
- package/bin/lib/git-snapshot.js +70 -43
- package/bin/lib/scan.js +108 -27
- package/catalog/skills/adapters/EXAMPLES.md +19 -0
- package/catalog/skills/adapters/SKILL.md +101 -0
- package/catalog/skills/adapters/TROUBLESHOOTING.md +7 -0
- package/catalog/skills/adapters/VALIDATION.json +12 -0
- package/catalog/skills/adapters/skill.yaml +13 -0
- package/catalog/skills/api-design/EXAMPLES.md +91 -0
- package/catalog/skills/api-design/SKILL.md +63 -0
- package/catalog/skills/api-design/TROUBLESHOOTING.md +54 -0
- package/catalog/skills/api-design/VALIDATION.json +11 -0
- package/catalog/skills/api-design/skill.yaml +14 -0
- package/catalog/skills/architecture-diagrams/SKILL.md +108 -0
- package/catalog/skills/architecture-diagrams/VALIDATION.json +12 -0
- package/catalog/skills/architecture-diagrams/skill.yaml +9 -0
- package/catalog/skills/brutalist-design/EXAMPLES.md +59 -0
- package/catalog/skills/brutalist-design/SKILL.md +150 -0
- package/catalog/skills/brutalist-design/VALIDATION.json +12 -0
- package/catalog/skills/brutalist-design/skill.yaml +10 -0
- package/catalog/skills/ci-cd/EXAMPLES.md +79 -0
- package/catalog/skills/ci-cd/SKILL.md +69 -0
- package/catalog/skills/ci-cd/TROUBLESHOOTING.md +52 -0
- package/catalog/skills/ci-cd/VALIDATION.json +11 -0
- package/catalog/skills/ci-cd/skill.yaml +13 -0
- package/catalog/skills/database/EXAMPLES.md +74 -0
- package/catalog/skills/database/SKILL.md +101 -0
- package/catalog/skills/database/TROUBLESHOOTING.md +18 -0
- package/catalog/skills/database/VALIDATION.json +11 -0
- package/catalog/skills/database/skill.yaml +14 -0
- package/catalog/skills/ddd/EXAMPLES.md +42 -0
- package/catalog/skills/ddd/SKILL.md +247 -0
- package/catalog/skills/ddd/TROUBLESHOOTING.md +19 -0
- package/catalog/skills/ddd/VALIDATION.json +12 -0
- package/catalog/skills/ddd/skill.yaml +14 -0
- package/catalog/skills/decisions/EXAMPLES.md +35 -0
- package/catalog/skills/decisions/SKILL.md +90 -0
- package/catalog/skills/decisions/TROUBLESHOOTING.md +13 -0
- package/catalog/skills/decisions/VALIDATION.json +12 -0
- package/catalog/skills/decisions/skill.yaml +13 -0
- package/catalog/skills/docker/EXAMPLES.md +56 -0
- package/catalog/skills/docker/SKILL.md +169 -0
- package/catalog/skills/docker/TROUBLESHOOTING.md +18 -0
- package/catalog/skills/docker/VALIDATION.json +11 -0
- package/catalog/skills/docker/skill.yaml +13 -0
- package/catalog/skills/fastapi/EXAMPLES.md +36 -0
- package/catalog/skills/fastapi/SKILL.md +171 -0
- package/catalog/skills/fastapi/TROUBLESHOOTING.md +19 -0
- package/catalog/skills/fastapi/VALIDATION.json +12 -0
- package/catalog/skills/fastapi/skill.yaml +14 -0
- package/catalog/skills/generators/EXAMPLES.md +19 -0
- package/catalog/skills/generators/SKILL.md +110 -0
- package/catalog/skills/generators/TROUBLESHOOTING.md +7 -0
- package/catalog/skills/generators/VALIDATION.json +12 -0
- package/catalog/skills/generators/skill.yaml +22 -0
- package/catalog/skills/generators/templates/API.md +77 -0
- package/catalog/skills/generators/templates/ARCHITECTURE.md +70 -0
- package/catalog/skills/generators/templates/DATABASE.md +42 -0
- package/catalog/skills/generators/templates/DECISION.md +46 -0
- package/catalog/skills/generators/templates/PRD.md +67 -0
- package/catalog/skills/generators/templates/PROJECT_GRAPH.md +56 -0
- package/catalog/skills/generators/templates/ROADMAP.md +51 -0
- package/catalog/skills/generators/templates/TASKS.md +43 -0
- package/catalog/skills/generators/templates/UI.md +73 -0
- package/catalog/skills/graphify/EXAMPLES.md +73 -0
- package/catalog/skills/graphify/SKILL.md +130 -0
- package/catalog/skills/graphify/VALIDATION.json +12 -0
- package/catalog/skills/graphify/skill.yaml +13 -0
- package/catalog/skills/impeccable-design/EXAMPLES.md +26 -0
- package/catalog/skills/impeccable-design/SKILL.md +201 -0
- package/catalog/skills/impeccable-design/TROUBLESHOOTING.md +19 -0
- package/catalog/skills/impeccable-design/VALIDATION.json +12 -0
- package/catalog/skills/impeccable-design/skill.yaml +15 -0
- package/catalog/skills/interview-me/SKILL.md +97 -0
- package/catalog/skills/interview-me/VALIDATION.json +12 -0
- package/catalog/skills/interview-me/skill.yaml +9 -0
- package/catalog/skills/microservices/EXAMPLES.md +38 -0
- package/catalog/skills/microservices/SKILL.md +164 -0
- package/catalog/skills/microservices/TROUBLESHOOTING.md +19 -0
- package/catalog/skills/microservices/VALIDATION.json +12 -0
- package/catalog/skills/microservices/skill.yaml +14 -0
- package/catalog/skills/minimalist-design/EXAMPLES.md +58 -0
- package/catalog/skills/minimalist-design/SKILL.md +113 -0
- package/catalog/skills/minimalist-design/VALIDATION.json +12 -0
- package/catalog/skills/minimalist-design/skill.yaml +10 -0
- package/catalog/skills/nestjs/EXAMPLES.md +40 -0
- package/catalog/skills/nestjs/SKILL.md +139 -0
- package/catalog/skills/nestjs/TROUBLESHOOTING.md +19 -0
- package/catalog/skills/nestjs/VALIDATION.json +12 -0
- package/catalog/skills/nestjs/skill.yaml +14 -0
- package/catalog/skills/nextjs/EXAMPLES.md +40 -0
- package/catalog/skills/nextjs/SKILL.md +163 -0
- package/catalog/skills/nextjs/TROUBLESHOOTING.md +19 -0
- package/catalog/skills/nextjs/VALIDATION.json +12 -0
- package/catalog/skills/nextjs/skill.yaml +14 -0
- package/catalog/skills/node/EXAMPLES.md +80 -0
- package/catalog/skills/node/SKILL.md +128 -0
- package/catalog/skills/node/TROUBLESHOOTING.md +19 -0
- package/catalog/skills/node/VALIDATION.json +12 -0
- package/catalog/skills/node/skill.yaml +14 -0
- package/catalog/skills/performance/EXAMPLES.md +30 -0
- package/catalog/skills/performance/SKILL.md +75 -0
- package/catalog/skills/performance/TROUBLESHOOTING.md +19 -0
- package/catalog/skills/performance/VALIDATION.json +12 -0
- package/catalog/skills/performance/skill.yaml +14 -0
- package/catalog/skills/react/EXAMPLES.md +79 -0
- package/catalog/skills/react/SKILL.md +132 -0
- package/catalog/skills/react/TROUBLESHOOTING.md +19 -0
- package/catalog/skills/react/VALIDATION.json +12 -0
- package/catalog/skills/react/skill.yaml +14 -0
- package/catalog/skills/react-best-practices/SKILL.md +158 -0
- package/catalog/skills/react-best-practices/VALIDATION.json +12 -0
- package/catalog/skills/react-best-practices/skill.yaml +13 -0
- package/catalog/skills/redesign-audit/SKILL.md +117 -0
- package/catalog/skills/redesign-audit/VALIDATION.json +12 -0
- package/catalog/skills/redesign-audit/skill.yaml +9 -0
- package/catalog/skills/security-audit/EXAMPLES.md +79 -0
- package/catalog/skills/security-audit/SKILL.md +91 -0
- package/catalog/skills/security-audit/TROUBLESHOOTING.md +46 -0
- package/catalog/skills/security-audit/VALIDATION.json +11 -0
- package/catalog/skills/security-audit/skill.yaml +14 -0
- package/catalog/skills/soft-design/EXAMPLES.md +51 -0
- package/catalog/skills/soft-design/SKILL.md +108 -0
- package/catalog/skills/soft-design/VALIDATION.json +12 -0
- package/catalog/skills/soft-design/skill.yaml +10 -0
- package/catalog/skills/state-management/EXAMPLES.md +56 -0
- package/catalog/skills/state-management/SKILL.md +168 -0
- package/catalog/skills/state-management/TROUBLESHOOTING.md +18 -0
- package/catalog/skills/state-management/VALIDATION.json +11 -0
- package/catalog/skills/state-management/skill.yaml +14 -0
- package/catalog/skills/subagent-orchestrator/SKILL.md +117 -0
- package/catalog/skills/subagent-orchestrator/VALIDATION.json +12 -0
- package/catalog/skills/subagent-orchestrator/skill.yaml +9 -0
- package/catalog/skills/system-design/EXAMPLES.md +75 -0
- package/catalog/skills/system-design/SKILL.md +419 -0
- package/catalog/skills/system-design/TROUBLESHOOTING.md +19 -0
- package/catalog/skills/system-design/VALIDATION.json +12 -0
- package/catalog/skills/system-design/skill.yaml +14 -0
- package/catalog/skills/terraform/EXAMPLES.md +74 -0
- package/catalog/skills/terraform/SKILL.md +55 -0
- package/catalog/skills/terraform/TROUBLESHOOTING.md +53 -0
- package/catalog/skills/terraform/VALIDATION.json +11 -0
- package/catalog/skills/terraform/skill.yaml +14 -0
- package/catalog/skills/testing/EXAMPLES.md +122 -0
- package/catalog/skills/testing/SKILL.md +70 -0
- package/catalog/skills/testing/TROUBLESHOOTING.md +18 -0
- package/catalog/skills/testing/VALIDATION.json +11 -0
- package/catalog/skills/testing/skill.yaml +14 -0
- package/catalog/skills/typescript/EXAMPLES.md +64 -0
- package/catalog/skills/typescript/SKILL.md +112 -0
- package/catalog/skills/typescript/TROUBLESHOOTING.md +19 -0
- package/catalog/skills/typescript/VALIDATION.json +12 -0
- package/catalog/skills/typescript/skill.yaml +14 -0
- package/catalog/skills/ui-design/EXAMPLES.md +21 -0
- package/catalog/skills/ui-design/SKILL.md +124 -0
- package/catalog/skills/ui-design/TROUBLESHOOTING.md +19 -0
- package/catalog/skills/ui-design/VALIDATION.json +12 -0
- package/catalog/skills/ui-design/skill.yaml +16 -0
- package/catalog/skills/ui-ux-pro/EXAMPLES.md +62 -0
- package/catalog/skills/ui-ux-pro/SKILL.md +418 -0
- package/catalog/skills/ui-ux-pro/TROUBLESHOOTING.md +19 -0
- package/catalog/skills/ui-ux-pro/VALIDATION.json +12 -0
- package/catalog/skills/ui-ux-pro/skill.yaml +14 -0
- package/catalog/skills/ux-design/EXAMPLES.md +36 -0
- package/catalog/skills/ux-design/SKILL.md +116 -0
- package/catalog/skills/ux-design/TROUBLESHOOTING.md +19 -0
- package/catalog/skills/ux-design/VALIDATION.json +12 -0
- package/catalog/skills/ux-design/skill.yaml +16 -0
- package/catalog/skills/vercel-optimize/SKILL.md +83 -0
- package/catalog/skills/vercel-optimize/VALIDATION.json +12 -0
- package/catalog/skills/vercel-optimize/scripts/collect-signals.mjs +131 -0
- package/catalog/skills/vercel-optimize/scripts/gate-investigations.mjs +142 -0
- package/catalog/skills/vercel-optimize/scripts/merge-signals.mjs +143 -0
- package/catalog/skills/vercel-optimize/scripts/scan-codebase.mjs +174 -0
- package/catalog/skills/vercel-optimize/skill.yaml +15 -0
- package/catalog/skills/web-accessibility/EXAMPLES.md +39 -0
- package/catalog/skills/web-accessibility/SKILL.md +151 -0
- package/catalog/skills/web-accessibility/TROUBLESHOOTING.md +19 -0
- package/catalog/skills/web-accessibility/VALIDATION.json +12 -0
- package/catalog/skills/web-accessibility/skill.yaml +14 -0
- package/package.json +3 -2
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: document-generator
|
|
3
|
+
description: >
|
|
4
|
+
Generates project documentation from a single idea. Creates PRD, Architecture,
|
|
5
|
+
Database, API, UI, Roadmap, Tasks, Decision Records, and Project Graph
|
|
6
|
+
using templates. Supports incremental updates.
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# document-generator
|
|
10
|
+
|
|
11
|
+
## Overview
|
|
12
|
+
|
|
13
|
+
Automated technical documentation generator. Transforms initial project ideas and specs into comprehensive PRDs, architecture schemas, API contracts, database ERDs, and roadmap task breakdowns.
|
|
14
|
+
|
|
15
|
+
## When to Use
|
|
16
|
+
|
|
17
|
+
Activate during project kickoff (ctx init), new service scaffolding, or when generating baseline technical specs from high-level user requirements.
|
|
18
|
+
|
|
19
|
+
## Rules & Patterns
|
|
20
|
+
|
|
21
|
+
You generate project documentation from a user's idea. Use the templates in `templates/` as the structure for each document.
|
|
22
|
+
|
|
23
|
+
## Workflows & CLI Commands
|
|
24
|
+
|
|
25
|
+
### Project Initialization (`contextos init`)
|
|
26
|
+
|
|
27
|
+
Full project initialization. From one user prompt, generate foundational documentation:
|
|
28
|
+
|
|
29
|
+
1. Ask clarifying questions (see context-os SKILL.md)
|
|
30
|
+
2. Select profile and skill pack
|
|
31
|
+
3. Generate documents in this order:
|
|
32
|
+
- `docs/PRD.md` - Product Requirements (from template)
|
|
33
|
+
- `docs/ARCHITECTURE.md` - System Architecture
|
|
34
|
+
- `docs/DATABASE.md` - Database Schema
|
|
35
|
+
- `docs/API.md` - API Specification (optional, when backend API layer is present)
|
|
36
|
+
- `docs/UI.md` - UI/UX Specification (optional, when UI layer is present)
|
|
37
|
+
- `docs/ROADMAP.md` - Development Roadmap
|
|
38
|
+
- `docs/TASKS.md` - Task Breakdown
|
|
39
|
+
- `docs/PROJECT_GRAPH.md` - Project Graph
|
|
40
|
+
4. Create `docs/decisions/` directory for future ADRs
|
|
41
|
+
5. Generate agent configuration via Adapters skill (`contextos export all`)
|
|
42
|
+
|
|
43
|
+
### Incremental Updates
|
|
44
|
+
|
|
45
|
+
When project requirements or schemas change:
|
|
46
|
+
|
|
47
|
+
1. Identify which documents are affected
|
|
48
|
+
2. Update only affected documents
|
|
49
|
+
3. Show diff of changes to user
|
|
50
|
+
4. Update Project Graph if structure changed
|
|
51
|
+
|
|
52
|
+
### Task Breakdown & Planning (`contextos resolve` & `/plan`)
|
|
53
|
+
|
|
54
|
+
Generate vertical development tasks from existing PRD and architecture:
|
|
55
|
+
|
|
56
|
+
1. Read `docs/PRD.md` and `docs/ARCHITECTURE.md`
|
|
57
|
+
2. Run `contextos resolve "<task description>"` to resolve minimal required skills
|
|
58
|
+
3. Break modules into vertical features and tasks (< 2 hours each)
|
|
59
|
+
4. Estimate complexity (S/M/L/XL)
|
|
60
|
+
5. Output to `docs/TASKS.md` or task implementation plan
|
|
61
|
+
|
|
62
|
+
## Template Usage
|
|
63
|
+
|
|
64
|
+
Each template contains:
|
|
65
|
+
|
|
66
|
+
- **Section headers** - required sections for the document
|
|
67
|
+
- **Placeholder prompts** - `{{description}}` markers that guide content generation
|
|
68
|
+
- **Examples** - sample content to illustrate the expected format
|
|
69
|
+
- **Validation rules** - what must be present for the document to be valid
|
|
70
|
+
|
|
71
|
+
When generating a document:
|
|
72
|
+
|
|
73
|
+
1. Read the template
|
|
74
|
+
2. Fill in each section based on the user's idea and clarifying answers
|
|
75
|
+
3. Replace all `{{placeholders}}` with real content
|
|
76
|
+
4. Remove the template comments (lines starting with `<!-- -->`)
|
|
77
|
+
5. Validate: ensure all required sections are present
|
|
78
|
+
|
|
79
|
+
## Document Dependencies
|
|
80
|
+
|
|
81
|
+
```
|
|
82
|
+
PRD.md
|
|
83
|
+
├── ARCHITECTURE.md
|
|
84
|
+
│ ├── DATABASE.md
|
|
85
|
+
│ ├── API.md
|
|
86
|
+
│ └── DEPLOYMENT.md
|
|
87
|
+
├── UI.md
|
|
88
|
+
├── ROADMAP.md
|
|
89
|
+
│ └── TASKS.md
|
|
90
|
+
└── PROJECT_GRAPH.md
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
When updating a parent document, check if child documents need updates too.
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
## Code Examples
|
|
97
|
+
|
|
98
|
+
See `EXAMPLES.md` for detailed code examples.
|
|
99
|
+
|
|
100
|
+
## Validation Checklist
|
|
101
|
+
|
|
102
|
+
What to verify during the review phase before completing the task.
|
|
103
|
+
|
|
104
|
+
## Common Mistakes
|
|
105
|
+
|
|
106
|
+
Anti-patterns and things to explicitly avoid. See `TROUBLESHOOTING.md`.
|
|
107
|
+
|
|
108
|
+
## Integration Notes
|
|
109
|
+
|
|
110
|
+
How this skill interacts with other skills.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# generators Troubleshooting & Common Mistakes
|
|
2
|
+
|
|
3
|
+
## 1. Generic Boilerplate Generation
|
|
4
|
+
|
|
5
|
+
- **Symptom**: Generated documentation contains placeholders like [Insert DB Name here].
|
|
6
|
+
- **Root Cause**: Generating docs before clarifying core project constraints.
|
|
7
|
+
- **Fix**: Run the interview-me protocol before generating technical documentation.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
schemaVersion: 2
|
|
2
|
+
name: generators
|
|
3
|
+
category: engineering
|
|
4
|
+
type: compiler
|
|
5
|
+
description: >
|
|
6
|
+
Generates complete project documentation (PRD, Architecture, Database, API, UI,
|
|
7
|
+
Roadmap, Tasks) from ideas and templates with incremental update support.
|
|
8
|
+
version: 1.0.0
|
|
9
|
+
resources:
|
|
10
|
+
- EXAMPLES.md
|
|
11
|
+
- SKILL.md
|
|
12
|
+
- TROUBLESHOOTING.md
|
|
13
|
+
- VALIDATION.json
|
|
14
|
+
- templates/API.md
|
|
15
|
+
- templates/ARCHITECTURE.md
|
|
16
|
+
- templates/DATABASE.md
|
|
17
|
+
- templates/DECISION.md
|
|
18
|
+
- templates/PRD.md
|
|
19
|
+
- templates/PROJECT_GRAPH.md
|
|
20
|
+
- templates/ROADMAP.md
|
|
21
|
+
- templates/TASKS.md
|
|
22
|
+
- templates/UI.md
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# {{Project Name}} - API Specification
|
|
2
|
+
|
|
3
|
+
## Base URL
|
|
4
|
+
|
|
5
|
+
`{{base_url}}` (e.g., `https://api.example.com/v1`)
|
|
6
|
+
|
|
7
|
+
## Authentication
|
|
8
|
+
|
|
9
|
+
{{auth_method}} (e.g., Bearer token via JWT)
|
|
10
|
+
|
|
11
|
+
## Endpoints
|
|
12
|
+
|
|
13
|
+
### {{Module Name}}
|
|
14
|
+
|
|
15
|
+
#### `{{METHOD}} {{path}}`
|
|
16
|
+
|
|
17
|
+
{{description}}
|
|
18
|
+
|
|
19
|
+
**Request:**
|
|
20
|
+
|
|
21
|
+
```json
|
|
22
|
+
{{request_body}}
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
**Response (200):**
|
|
26
|
+
|
|
27
|
+
```json
|
|
28
|
+
{{response_body}}
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
**Errors:**
|
|
32
|
+
|
|
33
|
+
| Code | Description |
|
|
34
|
+
| --- | --- |
|
|
35
|
+
| 400 | {{bad_request_reason}} |
|
|
36
|
+
| 401 | Unauthorized |
|
|
37
|
+
| 404 | {{not_found_reason}} |
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## Error Format
|
|
42
|
+
|
|
43
|
+
All errors follow this format:
|
|
44
|
+
|
|
45
|
+
```json
|
|
46
|
+
{
|
|
47
|
+
"error": {
|
|
48
|
+
"code": "ERROR_CODE",
|
|
49
|
+
"message": "Human-readable message",
|
|
50
|
+
"details": {}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Pagination
|
|
56
|
+
|
|
57
|
+
```json
|
|
58
|
+
{
|
|
59
|
+
"data": [...],
|
|
60
|
+
"pagination": {
|
|
61
|
+
"page": 1,
|
|
62
|
+
"per_page": 20,
|
|
63
|
+
"total": 100,
|
|
64
|
+
"total_pages": 5
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Rate Limiting
|
|
70
|
+
|
|
71
|
+
- {{rate_limit}} requests per {{window}}
|
|
72
|
+
- Headers: `X-RateLimit-Limit`, `X-RateLimit-Remaining`, `X-RateLimit-Reset`
|
|
73
|
+
|
|
74
|
+
## Versioning
|
|
75
|
+
|
|
76
|
+
- URL-based: `/v1/`, `/v2/`
|
|
77
|
+
- Breaking changes require new version
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# {{Project Name}} - System Architecture
|
|
2
|
+
|
|
3
|
+
## Architecture Overview
|
|
4
|
+
<!-- High-level architecture description and diagram -->
|
|
5
|
+
|
|
6
|
+
```
|
|
7
|
+
{{architecture_diagram}}
|
|
8
|
+
```
|
|
9
|
+
|
|
10
|
+
## Tech Stack
|
|
11
|
+
|
|
12
|
+
| Layer | Technology | Reason |
|
|
13
|
+
| --- | --- | --- |
|
|
14
|
+
| Frontend | {{e.g., Next.js + React}} | {{reason}} |
|
|
15
|
+
| Backend | {{e.g., Node.js + Express}} | {{reason}} |
|
|
16
|
+
| Database | {{e.g., PostgreSQL}} | {{reason}} |
|
|
17
|
+
| Cache | {{e.g., Redis}} | {{reason}} |
|
|
18
|
+
| Auth | {{e.g., JWT + OAuth2}} | {{reason}} |
|
|
19
|
+
| Hosting | {{e.g., Vercel + Railway}} | {{reason}} |
|
|
20
|
+
|
|
21
|
+
## System Components
|
|
22
|
+
|
|
23
|
+
### {{Component 1 Name}}
|
|
24
|
+
|
|
25
|
+
- **Responsibility:** {{what it does}}
|
|
26
|
+
- **Interfaces:** {{what it exposes}}
|
|
27
|
+
- **Dependencies:** {{what it depends on}}
|
|
28
|
+
|
|
29
|
+
### {{Component 2 Name}}
|
|
30
|
+
|
|
31
|
+
- **Responsibility:** {{what it does}}
|
|
32
|
+
- **Interfaces:** {{what it exposes}}
|
|
33
|
+
- **Dependencies:** {{what it depends on}}
|
|
34
|
+
|
|
35
|
+
## Data Flow
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
User → Frontend → API Gateway → Service Layer → Database
|
|
39
|
+
↓
|
|
40
|
+
Cache Layer
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Directory Structure
|
|
44
|
+
|
|
45
|
+
```
|
|
46
|
+
{{project_root}}/
|
|
47
|
+
├── src/
|
|
48
|
+
│ ├── modules/ # Feature modules
|
|
49
|
+
│ │ ├── {{module_1}}/
|
|
50
|
+
│ │ └── {{module_2}}/
|
|
51
|
+
│ ├── shared/ # Shared utilities
|
|
52
|
+
│ ├── config/ # Configuration
|
|
53
|
+
│ └── types/ # Type definitions
|
|
54
|
+
├── tests/
|
|
55
|
+
├── docs/
|
|
56
|
+
└── infrastructure/
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## Security Architecture
|
|
60
|
+
<!-- Authentication, authorization, data protection -->
|
|
61
|
+
|
|
62
|
+
## Scalability Considerations
|
|
63
|
+
<!-- How will this scale? What are the bottlenecks? -->
|
|
64
|
+
|
|
65
|
+
## Error Handling Strategy
|
|
66
|
+
<!-- How are errors propagated, logged, and reported? -->
|
|
67
|
+
|
|
68
|
+
## Key Architectural Decisions
|
|
69
|
+
<!-- Reference to ADRs in docs/decisions/ -->
|
|
70
|
+
- See `docs/decisions/` for all architectural decisions with rationale
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# {{Project Name}} - Database Schema
|
|
2
|
+
|
|
3
|
+
## Database Engine
|
|
4
|
+
|
|
5
|
+
{{e.g., PostgreSQL 16}}
|
|
6
|
+
|
|
7
|
+
## Entity Relationship Diagram
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
{{ER_diagram}}
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Tables
|
|
14
|
+
|
|
15
|
+
### {{table_name}}
|
|
16
|
+
|
|
17
|
+
| Column | Type | Constraints | Description |
|
|
18
|
+
| --- | --- | --- | --- |
|
|
19
|
+
| id | UUID | PK, DEFAULT gen_random_uuid() | Primary key |
|
|
20
|
+
| {{column}} | {{type}} | {{constraints}} | {{description}} |
|
|
21
|
+
| created_at | TIMESTAMPTZ | NOT NULL, DEFAULT NOW() | Creation timestamp |
|
|
22
|
+
| updated_at | TIMESTAMPTZ | NOT NULL, DEFAULT NOW() | Last update timestamp |
|
|
23
|
+
|
|
24
|
+
**Indexes:**
|
|
25
|
+
|
|
26
|
+
- `idx_{{table}}_{{column}}` ON ({{column}})
|
|
27
|
+
|
|
28
|
+
**Relations:**
|
|
29
|
+
|
|
30
|
+
- {{table_name}}.{{fk_column}} → {{related_table}}.id
|
|
31
|
+
|
|
32
|
+
## Migrations Strategy
|
|
33
|
+
<!-- How are schema changes applied? -->
|
|
34
|
+
- Tool: {{e.g., Prisma Migrate, Alembic, Knex}}
|
|
35
|
+
- Naming: `YYYYMMDD_HHMMSS_description`
|
|
36
|
+
- Rule: Never modify existing migrations, always create new ones
|
|
37
|
+
|
|
38
|
+
## Seed Data
|
|
39
|
+
<!-- What data needs to exist for the app to work? -->
|
|
40
|
+
|
|
41
|
+
## Performance Considerations
|
|
42
|
+
<!-- Indexes, query optimization, connection pooling -->
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# ADR-{{number}}: {{Decision Title}}
|
|
2
|
+
|
|
3
|
+
**Date:** {{YYYY-MM-DD}}
|
|
4
|
+
**Status:** {{proposed | accepted | deprecated | superseded}}
|
|
5
|
+
**Affected modules:** {{module_1}}, {{module_2}}
|
|
6
|
+
|
|
7
|
+
## Decision
|
|
8
|
+
|
|
9
|
+
{{What was decided, in one sentence.}}
|
|
10
|
+
|
|
11
|
+
## Why
|
|
12
|
+
|
|
13
|
+
{{The reasoning behind this decision. What problem does it solve?}}
|
|
14
|
+
|
|
15
|
+
## Alternatives Considered
|
|
16
|
+
|
|
17
|
+
### {{Alternative 1}}
|
|
18
|
+
|
|
19
|
+
- **Pros:** {{advantages}}
|
|
20
|
+
- **Cons:** {{disadvantages}}
|
|
21
|
+
- **Why rejected:** {{reason}}
|
|
22
|
+
|
|
23
|
+
### {{Alternative 2}}
|
|
24
|
+
|
|
25
|
+
- **Pros:** {{advantages}}
|
|
26
|
+
- **Cons:** {{disadvantages}}
|
|
27
|
+
- **Why rejected:** {{reason}}
|
|
28
|
+
|
|
29
|
+
## Tradeoffs
|
|
30
|
+
|
|
31
|
+
| Aspect | Gain | Cost |
|
|
32
|
+
| --- | --- | --- |
|
|
33
|
+
| {{aspect_1}} | {{what_we_gain}} | {{what_we_lose}} |
|
|
34
|
+
| {{aspect_2}} | {{what_we_gain}} | {{what_we_lose}} |
|
|
35
|
+
|
|
36
|
+
## Impact
|
|
37
|
+
|
|
38
|
+
- **Code changes:** {{what files/modules are affected}}
|
|
39
|
+
- **Performance:** {{performance impact}}
|
|
40
|
+
- **Team:** {{learning curve, tooling changes}}
|
|
41
|
+
- **Reversibility:** {{easy | moderate | hard | irreversible}}
|
|
42
|
+
|
|
43
|
+
## References
|
|
44
|
+
|
|
45
|
+
- {{link_1}}
|
|
46
|
+
- {{link_2}}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# {{Project Name}} - Product Requirements Document
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
<!-- One paragraph describing what this product does and who it's for -->
|
|
5
|
+
{{project_description}}
|
|
6
|
+
|
|
7
|
+
## Problem Statement
|
|
8
|
+
<!-- What problem does this solve? Why does it need to exist? -->
|
|
9
|
+
|
|
10
|
+
## Target Users
|
|
11
|
+
<!-- Who will use this? Define user personas -->
|
|
12
|
+
|
|
13
|
+
| Persona | Description | Key Needs |
|
|
14
|
+
| --- | --- | --- |
|
|
15
|
+
| {{persona_1}} | {{description}} | {{needs}} |
|
|
16
|
+
| {{persona_2}} | {{description}} | {{needs}} |
|
|
17
|
+
|
|
18
|
+
## Core Features
|
|
19
|
+
|
|
20
|
+
### Must Have (P0)
|
|
21
|
+
<!-- Features required for MVP -->
|
|
22
|
+
- [ ] {{feature_1}}
|
|
23
|
+
- [ ] {{feature_2}}
|
|
24
|
+
|
|
25
|
+
### Should Have (P1)
|
|
26
|
+
<!-- Features for v1.0 -->
|
|
27
|
+
- [ ] {{feature_3}}
|
|
28
|
+
- [ ] {{feature_4}}
|
|
29
|
+
|
|
30
|
+
### Nice to Have (P2)
|
|
31
|
+
<!-- Future features -->
|
|
32
|
+
- [ ] {{feature_5}}
|
|
33
|
+
|
|
34
|
+
## User Flows
|
|
35
|
+
|
|
36
|
+
### {{Primary Flow Name}}
|
|
37
|
+
|
|
38
|
+
```
|
|
39
|
+
Step 1: {{action}}
|
|
40
|
+
Step 2: {{action}}
|
|
41
|
+
Step 3: {{action}}
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## Non-Functional Requirements
|
|
45
|
+
|
|
46
|
+
| Requirement | Target |
|
|
47
|
+
| --- | --- |
|
|
48
|
+
| Performance | {{e.g., page load < 2s}} |
|
|
49
|
+
| Availability | {{e.g., 99.9%}} |
|
|
50
|
+
| Security | {{e.g., OWASP Top 10 compliance}} |
|
|
51
|
+
| Accessibility | {{e.g., WCAG 2.1 AA}} |
|
|
52
|
+
| Scalability | {{e.g., 10K concurrent users}} |
|
|
53
|
+
|
|
54
|
+
## Constraints
|
|
55
|
+
<!-- Technical, business, or timeline constraints -->
|
|
56
|
+
- {{constraint_1}}
|
|
57
|
+
- {{constraint_2}}
|
|
58
|
+
|
|
59
|
+
## Success Metrics
|
|
60
|
+
<!-- How will we measure success? -->
|
|
61
|
+
- {{metric_1}}
|
|
62
|
+
- {{metric_2}}
|
|
63
|
+
|
|
64
|
+
## Out of Scope
|
|
65
|
+
<!-- What this project explicitly does NOT do -->
|
|
66
|
+
- {{exclusion_1}}
|
|
67
|
+
- {{exclusion_2}}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# {{Project Name}} - Project Graph
|
|
2
|
+
|
|
3
|
+
## Project
|
|
4
|
+
|
|
5
|
+
```yaml
|
|
6
|
+
name: "{{project_name}}"
|
|
7
|
+
type: {{webapp | api | mobile | cli | saas | crm | ecommerce}}
|
|
8
|
+
profile: {{startup | enterprise | mvp | hackathon}}
|
|
9
|
+
pack: {{skill_pack_name}}
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
## Modules
|
|
13
|
+
|
|
14
|
+
### {{module_name}}
|
|
15
|
+
|
|
16
|
+
```yaml
|
|
17
|
+
module: {{module_name}}
|
|
18
|
+
description: "{{what this module does}}"
|
|
19
|
+
features:
|
|
20
|
+
- {{feature_1}}
|
|
21
|
+
- {{feature_2}}
|
|
22
|
+
files:
|
|
23
|
+
- src/modules/{{module_name}}/**
|
|
24
|
+
skills: [{{skill_1}}, {{skill_2}}]
|
|
25
|
+
depends_on: [{{other_module}}]
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
<!-- Repeat for each module -->
|
|
31
|
+
|
|
32
|
+
## Module Dependency Graph
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
{{module_1}} ──depends──▶ {{module_2}}
|
|
36
|
+
│
|
|
37
|
+
└──depends──▶ {{module_3}}
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## File → Module Mapping
|
|
41
|
+
|
|
42
|
+
| File Pattern | Module | Skills |
|
|
43
|
+
| --- | --- | --- |
|
|
44
|
+
| `src/modules/{{module}}/**` | {{module}} | {{skills}} |
|
|
45
|
+
| `src/shared/**` | shared | {{skills}} |
|
|
46
|
+
| `src/config/**` | config | - |
|
|
47
|
+
| `tests/**` | testing | testing |
|
|
48
|
+
| `docs/**` | docs | - |
|
|
49
|
+
|
|
50
|
+
## Feature → Task Mapping
|
|
51
|
+
|
|
52
|
+
### {{Feature Name}} `[{{module}}]`
|
|
53
|
+
|
|
54
|
+
- [ ] {{task_1}} → `{{file_path}}`
|
|
55
|
+
- [ ] {{task_2}} → `{{file_path}}`
|
|
56
|
+
- [ ] {{task_3}} → `{{file_path}}`
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# {{Project Name}} - Roadmap
|
|
2
|
+
|
|
3
|
+
## Vision
|
|
4
|
+
|
|
5
|
+
{{one_sentence_vision}}
|
|
6
|
+
|
|
7
|
+
## Milestones
|
|
8
|
+
|
|
9
|
+
### v0.1 - MVP ({{target_date}})
|
|
10
|
+
|
|
11
|
+
**Goal:** {{what_mvp_achieves}}
|
|
12
|
+
|
|
13
|
+
- [ ] {{feature_1}}
|
|
14
|
+
- [ ] {{feature_2}}
|
|
15
|
+
- [ ] {{feature_3}}
|
|
16
|
+
|
|
17
|
+
**Success criteria:** {{how_to_know_mvp_is_done}}
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
### v0.2 - {{milestone_name}} ({{target_date}})
|
|
22
|
+
|
|
23
|
+
**Goal:** {{what_this_milestone_achieves}}
|
|
24
|
+
|
|
25
|
+
- [ ] {{feature_4}}
|
|
26
|
+
- [ ] {{feature_5}}
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
### v1.0 - Production ({{target_date}})
|
|
31
|
+
|
|
32
|
+
**Goal:** {{what_production_means}}
|
|
33
|
+
|
|
34
|
+
- [ ] {{feature_6}}
|
|
35
|
+
- [ ] {{feature_7}}
|
|
36
|
+
- [ ] Performance optimization
|
|
37
|
+
- [ ] Security audit
|
|
38
|
+
- [ ] Documentation
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## Backlog
|
|
43
|
+
<!-- Future ideas not yet scheduled -->
|
|
44
|
+
- {{idea_1}}
|
|
45
|
+
- {{idea_2}}
|
|
46
|
+
|
|
47
|
+
## Risks
|
|
48
|
+
|
|
49
|
+
| Risk | Impact | Mitigation |
|
|
50
|
+
|---|---|---|
|
|
51
|
+
| {{risk_1}} | {{high/medium/low}} | {{mitigation}} |
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# {{Project Name}} - Tasks
|
|
2
|
+
|
|
3
|
+
## Current Sprint: {{sprint_name}}
|
|
4
|
+
|
|
5
|
+
### In Progress
|
|
6
|
+
|
|
7
|
+
- [ ] {{task}} `[{{module}}]` `[{{size: S/M/L/XL}}]`
|
|
8
|
+
|
|
9
|
+
### To Do
|
|
10
|
+
|
|
11
|
+
- [ ] {{task}} `[{{module}}]` `[{{size}}]`
|
|
12
|
+
- [ ] {{task}} `[{{module}}]` `[{{size}}]`
|
|
13
|
+
|
|
14
|
+
### Done
|
|
15
|
+
|
|
16
|
+
- [x] {{completed_task}} `[{{module}}]`
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Task Format
|
|
21
|
+
|
|
22
|
+
Each task should include:
|
|
23
|
+
|
|
24
|
+
- **Description**: What needs to be done
|
|
25
|
+
- **Module**: Which Project Graph module this belongs to
|
|
26
|
+
- **Size**: S (< 1hr), M (1-4hr), L (4-8hr), XL (> 8hr)
|
|
27
|
+
- **Dependencies**: What must be done first
|
|
28
|
+
- **Acceptance criteria**: How to know it's done
|
|
29
|
+
- **Skills needed**: Which skills the AI should load
|
|
30
|
+
|
|
31
|
+
### Example Task
|
|
32
|
+
|
|
33
|
+
```
|
|
34
|
+
- [ ] Implement appointment calendar API [appointments] [L]
|
|
35
|
+
Dependencies: auth module, database schema
|
|
36
|
+
Acceptance: CRUD endpoints for appointments, tests passing
|
|
37
|
+
Skills: node, typescript, postgres, testing
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## Backlog
|
|
41
|
+
<!-- Tasks not yet assigned to a sprint -->
|
|
42
|
+
- [ ] {{backlog_task_1}}
|
|
43
|
+
- [ ] {{backlog_task_2}}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# {{Project Name}} - UI/UX Specification
|
|
2
|
+
|
|
3
|
+
## Design System
|
|
4
|
+
|
|
5
|
+
### Colors
|
|
6
|
+
|
|
7
|
+
| Token | Value | Usage |
|
|
8
|
+
| --- | --- | --- |
|
|
9
|
+
| `--color-primary` | {{hex}} | Primary actions, links |
|
|
10
|
+
| `--color-secondary` | {{hex}} | Secondary elements |
|
|
11
|
+
| `--color-background` | {{hex}} | Page background |
|
|
12
|
+
| `--color-surface` | {{hex}} | Card/panel backgrounds |
|
|
13
|
+
| `--color-text` | {{hex}} | Body text |
|
|
14
|
+
| `--color-text-muted` | {{hex}} | Secondary text |
|
|
15
|
+
| `--color-error` | {{hex}} | Error states |
|
|
16
|
+
| `--color-success` | {{hex}} | Success states |
|
|
17
|
+
|
|
18
|
+
### Typography
|
|
19
|
+
|
|
20
|
+
| Level | Font | Size | Weight | Line Height |
|
|
21
|
+
| --- | --- | --- | --- | --- |
|
|
22
|
+
| H1 | {{font}} | {{size}} | {{weight}} | {{lh}} |
|
|
23
|
+
| H2 | {{font}} | {{size}} | {{weight}} | {{lh}} |
|
|
24
|
+
| Body | {{font}} | {{size}} | {{weight}} | {{lh}} |
|
|
25
|
+
| Caption | {{font}} | {{size}} | {{weight}} | {{lh}} |
|
|
26
|
+
|
|
27
|
+
### Spacing Scale
|
|
28
|
+
|
|
29
|
+
`4px, 8px, 12px, 16px, 24px, 32px, 48px, 64px`
|
|
30
|
+
|
|
31
|
+
### Border Radius
|
|
32
|
+
|
|
33
|
+
| Token | Value | Usage |
|
|
34
|
+
| --- | --- | --- |
|
|
35
|
+
| `--radius-sm` | 4px | Inputs, small elements |
|
|
36
|
+
| `--radius-md` | 8px | Cards, panels |
|
|
37
|
+
| `--radius-lg` | 16px | Modals, hero sections |
|
|
38
|
+
| `--radius-full` | 9999px | Pills, avatars |
|
|
39
|
+
|
|
40
|
+
## Pages
|
|
41
|
+
|
|
42
|
+
### {{Page Name}}
|
|
43
|
+
|
|
44
|
+
- **Route:** `{{route}}`
|
|
45
|
+
- **Purpose:** {{what this page does}}
|
|
46
|
+
- **Components:** {{list of components}}
|
|
47
|
+
- **States:** default, loading, empty, error
|
|
48
|
+
|
|
49
|
+
## Component Library
|
|
50
|
+
<!-- List of reusable components -->
|
|
51
|
+
|
|
52
|
+
| Component | Props | Variants |
|
|
53
|
+
| --- | --- | --- |
|
|
54
|
+
| Button | `variant, size, disabled` | primary, secondary, ghost |
|
|
55
|
+
| Input | `type, label, error` | text, email, password |
|
|
56
|
+
| Card | `title, actions` | default, elevated |
|
|
57
|
+
|
|
58
|
+
## Responsive Breakpoints
|
|
59
|
+
|
|
60
|
+
| Name | Width | Layout |
|
|
61
|
+
| --- | --- | --- |
|
|
62
|
+
| Mobile | < 640px | Single column |
|
|
63
|
+
| Tablet | 640-1024px | Two columns |
|
|
64
|
+
| Desktop | > 1024px | Full layout |
|
|
65
|
+
|
|
66
|
+
## Anti-Patterns (avoid these)
|
|
67
|
+
|
|
68
|
+
- No gray text on colored backgrounds
|
|
69
|
+
- No pure black - always tint with brand color
|
|
70
|
+
- No bounce/elastic easing - use ease-out
|
|
71
|
+
- No cards nested inside cards
|
|
72
|
+
- No generic color palettes (plain red, blue, green)
|
|
73
|
+
- No default browser fonts - use curated typography
|