cfsa-antigravity 2.0.0 → 2.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/README.md +14 -0
- package/package.json +1 -1
- package/template/.agent/instructions/commands.md +8 -32
- package/template/.agent/instructions/patterns.md +3 -3
- package/template/.agent/instructions/tech-stack.md +71 -23
- package/template/.agent/instructions/workflow.md +12 -1
- package/template/.agent/rules/completion-checklist.md +6 -0
- package/template/.agent/rules/security-first.md +3 -3
- package/template/.agent/rules/vertical-slices.md +1 -1
- package/template/.agent/skill-library/MANIFEST.md +6 -0
- package/template/.agent/skill-library/stack/devops/git-advanced/SKILL.md +972 -0
- package/template/.agent/skill-library/stack/devops/git-workflow/SKILL.md +420 -0
- package/template/.agent/skills/api-versioning/SKILL.md +44 -298
- package/template/.agent/skills/api-versioning/references/typescript.md +157 -0
- package/template/.agent/skills/architecture-mapping/SKILL.md +7 -7
- package/template/.agent/skills/bootstrap-agents/SKILL.md +151 -152
- package/template/.agent/skills/clean-code/SKILL.md +64 -118
- package/template/.agent/skills/clean-code/references/typescript.md +126 -0
- package/template/.agent/skills/database-schema-design/SKILL.md +93 -317
- package/template/.agent/skills/database-schema-design/references/relational.md +228 -0
- package/template/.agent/skills/error-handling-patterns/SKILL.md +62 -557
- package/template/.agent/skills/error-handling-patterns/references/go.md +162 -0
- package/template/.agent/skills/error-handling-patterns/references/python.md +262 -0
- package/template/.agent/skills/error-handling-patterns/references/rust.md +112 -0
- package/template/.agent/skills/error-handling-patterns/references/typescript.md +178 -0
- package/template/.agent/skills/idea-extraction/SKILL.md +119 -12
- package/template/.agent/skills/logging-best-practices/SKILL.md +108 -767
- package/template/.agent/skills/logging-best-practices/references/go.md +49 -0
- package/template/.agent/skills/logging-best-practices/references/python.md +52 -0
- package/template/.agent/skills/logging-best-practices/references/typescript.md +215 -0
- package/template/.agent/skills/migration-management/SKILL.md +127 -311
- package/template/.agent/skills/migration-management/references/relational.md +214 -0
- package/template/.agent/skills/parallel-feature-development/SKILL.md +34 -43
- package/template/.agent/skills/pipeline-rubrics/references/be-rubric.md +1 -1
- package/template/.agent/skills/pipeline-rubrics/references/ia-rubric.md +1 -1
- package/template/.agent/skills/prd-templates/SKILL.md +20 -3
- package/template/.agent/skills/prd-templates/references/be-spec-template.md +2 -2
- package/template/.agent/skills/prd-templates/references/decomposition-templates.md +2 -2
- package/template/.agent/skills/prd-templates/references/fe-spec-template.md +1 -1
- package/template/.agent/skills/prd-templates/references/ideation-domain-template.md +8 -2
- package/template/.agent/skills/prd-templates/references/ideation-index-template.md +25 -1
- package/template/.agent/skills/prd-templates/references/operational-templates.md +1 -1
- package/template/.agent/skills/prd-templates/references/placeholder-workflow-mapping.md +50 -21
- package/template/.agent/skills/prd-templates/references/skill-loading-protocol.md +32 -0
- package/template/.agent/skills/prd-templates/references/slice-completion-gates.md +21 -0
- package/template/.agent/skills/prd-templates/references/spec-coverage-sweep.md +3 -3
- package/template/.agent/skills/prd-templates/references/tdd-testing-policy.md +39 -0
- package/template/.agent/skills/prd-templates/references/vision-template.md +1 -1
- package/template/.agent/skills/regex-patterns/SKILL.md +122 -540
- package/template/.agent/skills/regex-patterns/references/go.md +44 -0
- package/template/.agent/skills/regex-patterns/references/javascript.md +63 -0
- package/template/.agent/skills/regex-patterns/references/python.md +77 -0
- package/template/.agent/skills/regex-patterns/references/rust.md +43 -0
- package/template/.agent/skills/session-continuity/SKILL.md +11 -9
- package/template/.agent/skills/session-continuity/protocols/02-progress-generation.md +2 -2
- package/template/.agent/skills/session-continuity/protocols/04-pattern-extraction.md +1 -1
- package/template/.agent/skills/session-continuity/protocols/05-session-close.md +1 -1
- package/template/.agent/skills/session-continuity/protocols/09-parallel-claim.md +1 -1
- package/template/.agent/skills/session-continuity/protocols/10-placeholder-verification-gate.md +57 -78
- package/template/.agent/skills/session-continuity/protocols/11-parallel-synthesis.md +1 -1
- package/template/.agent/skills/tdd-workflow/SKILL.md +94 -317
- package/template/.agent/skills/tdd-workflow/references/typescript.md +231 -0
- package/template/.agent/skills/testing-strategist/SKILL.md +74 -687
- package/template/.agent/skills/testing-strategist/references/typescript.md +328 -0
- package/template/.agent/skills/workflow-automation/SKILL.md +62 -154
- package/template/.agent/skills/workflow-automation/references/inngest.md +88 -0
- package/template/.agent/skills/workflow-automation/references/temporal.md +64 -0
- package/template/.agent/workflows/bootstrap-agents-fill.md +85 -143
- package/template/.agent/workflows/bootstrap-agents-provision.md +90 -107
- package/template/.agent/workflows/create-prd-architecture.md +16 -14
- package/template/.agent/workflows/create-prd-compile.md +11 -12
- package/template/.agent/workflows/create-prd-design-system.md +1 -1
- package/template/.agent/workflows/create-prd-security.md +9 -11
- package/template/.agent/workflows/create-prd-stack.md +10 -4
- package/template/.agent/workflows/create-prd.md +5 -6
- package/template/.agent/workflows/decompose-architecture-structure.md +3 -5
- package/template/.agent/workflows/decompose-architecture-validate.md +18 -1
- package/template/.agent/workflows/evolve-contract.md +11 -11
- package/template/.agent/workflows/ideate-discover.md +10 -6
- package/template/.agent/workflows/ideate-extract.md +61 -4
- package/template/.agent/workflows/ideate-validate.md +3 -3
- package/template/.agent/workflows/ideate.md +2 -2
- package/template/.agent/workflows/implement-slice-setup.md +25 -23
- package/template/.agent/workflows/implement-slice-tdd.md +51 -92
- package/template/.agent/workflows/implement-slice.md +4 -4
- package/template/.agent/workflows/plan-phase-preflight.md +6 -2
- package/template/.agent/workflows/plan-phase-write.md +6 -8
- package/template/.agent/workflows/resolve-ambiguity.md +1 -1
- package/template/.agent/workflows/update-architecture-map.md +22 -5
- package/template/.agent/workflows/validate-phase.md +26 -29
- package/template/.agent/workflows/verify-infrastructure.md +10 -10
- package/template/.agent/workflows/write-architecture-spec-design.md +17 -12
- package/template/.agent/workflows/write-be-spec-classify.md +25 -21
- package/template/.agent/workflows/write-be-spec.md +1 -1
- package/template/.agent/workflows/write-fe-spec-classify.md +6 -12
- package/template/.agent/workflows/write-fe-spec-write.md +1 -1
- package/template/AGENTS.md +1 -1
- package/template/GEMINI.md +3 -3
- package/template/docs/kit-architecture.md +34 -8
|
@@ -26,7 +26,12 @@ interactions — then present hypotheses to the user for confirmation or rejecti
|
|
|
26
26
|
## Output Structure
|
|
27
27
|
|
|
28
28
|
This skill writes directly to the `docs/plans/ideation/` folder. No monolithic
|
|
29
|
-
intermediary file.
|
|
29
|
+
intermediary file. The **folder structure is dynamic** — it adapts to the project's
|
|
30
|
+
complexity based on the Structural Classification decided in `ideate-extract`.
|
|
31
|
+
|
|
32
|
+
### Single-Surface Layout (default)
|
|
33
|
+
|
|
34
|
+
Used for projects with one delivery platform (e.g., just a web app).
|
|
30
35
|
|
|
31
36
|
```
|
|
32
37
|
docs/plans/ideation/
|
|
@@ -43,10 +48,109 @@ docs/plans/ideation/
|
|
|
43
48
|
└── cross-cut-ledger.md ← Running ledger accumulated at every level
|
|
44
49
|
```
|
|
45
50
|
|
|
51
|
+
### Multi-Product Layout (Option B)
|
|
52
|
+
|
|
53
|
+
Used when the project has **distinct products** with different tech stacks, different
|
|
54
|
+
users, or surface-exclusive features. Surfaces are top-level folders. Shared/cross-cutting
|
|
55
|
+
domains live in `domains/` as siblings.
|
|
56
|
+
|
|
57
|
+
```
|
|
58
|
+
docs/plans/ideation/
|
|
59
|
+
├── ideation-index.md
|
|
60
|
+
├── meta/
|
|
61
|
+
│ ├── problem-statement.md
|
|
62
|
+
│ ├── personas.md
|
|
63
|
+
│ ├── competitive-landscape.md
|
|
64
|
+
│ └── constraints.md
|
|
65
|
+
├── surfaces/ ← Only created for multi-product projects
|
|
66
|
+
│ ├── web/
|
|
67
|
+
│ │ ├── 01-accounts.md
|
|
68
|
+
│ │ └── 02-education-hub.md
|
|
69
|
+
│ ├── desktop/
|
|
70
|
+
│ │ ├── 01-operations.md
|
|
71
|
+
│ │ └── 02-inventory.md
|
|
72
|
+
│ └── mobile/
|
|
73
|
+
│ ├── 01-device-guardian.md
|
|
74
|
+
│ └── 02-device-locator.md
|
|
75
|
+
├── domains/ ← Shared/cross-cutting domains
|
|
76
|
+
│ ├── 01-device-history.md
|
|
77
|
+
│ ├── 02-payments.md
|
|
78
|
+
│ └── 03-certification.md
|
|
79
|
+
└── cross-cuts/
|
|
80
|
+
└── cross-cut-ledger.md
|
|
81
|
+
```
|
|
82
|
+
|
|
46
83
|
Templates for each file type are in `.agent/skills/prd-templates/references/ideation-*.md`.
|
|
47
84
|
|
|
48
85
|
---
|
|
49
86
|
|
|
87
|
+
## Structural Classification Protocol
|
|
88
|
+
|
|
89
|
+
> **This classification must happen BEFORE any domain files are written.**
|
|
90
|
+
> It determines the folder layout for the entire ideation phase. The classification
|
|
91
|
+
> is performed in `ideate-extract` (Step 1.3) and recorded in `ideation-index.md`.
|
|
92
|
+
|
|
93
|
+
### Three Project Shapes
|
|
94
|
+
|
|
95
|
+
| Shape | Signals | Folder Structure |
|
|
96
|
+
|---|---|---|
|
|
97
|
+
| **Single-surface** | One platform, simple audience, "make me a website" | Flat `domains/` |
|
|
98
|
+
| **Multi-surface, mostly shared** | 2+ platforms, same tech stack, >80% shared logic | Flat `domains/` + surface annotation in domain frontmatter |
|
|
99
|
+
| **Multi-product** | 2+ platforms, different tech stacks/users, surface-exclusive features | `surfaces/` + `domains/` (Option B) |
|
|
100
|
+
|
|
101
|
+
### Detection: When to Ask vs When to Detect
|
|
102
|
+
|
|
103
|
+
| Input Mode | How Structure Is Determined |
|
|
104
|
+
|---|---|
|
|
105
|
+
| **Interview** (verbal / no input) | Ask the user directly — see Interview Questions below |
|
|
106
|
+
| **Document** (rich / thin) | Scan for surface signals — see Detection Signals below |
|
|
107
|
+
| **One-liner** | Infer from the description — "make me a website" = single surface, skip the question |
|
|
108
|
+
|
|
109
|
+
### Interview Questions (asked early, before domain exploration)
|
|
110
|
+
|
|
111
|
+
When the input doesn't make the project shape obvious, ask these two questions
|
|
112
|
+
**immediately after the opening problem statement question** — before any domain
|
|
113
|
+
exploration or file creation:
|
|
114
|
+
|
|
115
|
+
1. **"Who are the distinct user types or audiences?"**
|
|
116
|
+
- Single audience (e.g., "small business owners") → likely single-surface
|
|
117
|
+
- Multiple distinct audiences (e.g., "consumers, repair technicians, shop owners") → likely multi-product
|
|
118
|
+
|
|
119
|
+
2. **"What platforms or surfaces does this need to live on?"** (web, mobile, desktop, API, CLI)
|
|
120
|
+
- One platform → single-surface
|
|
121
|
+
- Multiple platforms, same stack → multi-surface-shared
|
|
122
|
+
- Multiple platforms, different stacks or exclusive features → multi-product
|
|
123
|
+
|
|
124
|
+
### Detection Signals (for document input)
|
|
125
|
+
|
|
126
|
+
When processing a document, scan for these signals before creating any domain files:
|
|
127
|
+
|
|
128
|
+
| Signal | Example | Classification |
|
|
129
|
+
|---|---|---|
|
|
130
|
+
| Distinct platform names in section headings | "Consumer Web Platform", "Shop Software (Tauri)", "Native Mobile Apps" | Multi-product |
|
|
131
|
+
| Different tech stacks mentioned per surface | "Astro/React for web", "Rust/Tauri for desktop", "React Native for mobile" | Multi-product |
|
|
132
|
+
| Surface-exclusive features | "Board Viewer (desktop only)", "Device Guardian (Android only)" | Multi-product |
|
|
133
|
+
| Single platform implied | "The website will...", "Users visit the app and..." | Single-surface |
|
|
134
|
+
| Features described without surface context | "User authentication", "Dashboard", "Settings" | Single-surface (default) |
|
|
135
|
+
|
|
136
|
+
### Domain Placement Rules (for multi-product)
|
|
137
|
+
|
|
138
|
+
Once the multi-product classification is confirmed, every domain must be assigned:
|
|
139
|
+
|
|
140
|
+
| Domain type | Placement | Test |
|
|
141
|
+
|---|---|---|
|
|
142
|
+
| **Surface-exclusive** | `surfaces/{surface-name}/NN-domain.md` | "Does this feature/capability exist ONLY on one surface?" |
|
|
143
|
+
| **Shared / cross-cutting** | `domains/NN-domain.md` | "Does this feature span 2+ surfaces?" |
|
|
144
|
+
| **Uncertain** | Ask the user: "Does [domain] belong to [surface] specifically, or is it shared across surfaces?" | — |
|
|
145
|
+
|
|
146
|
+
### Classification Persistence
|
|
147
|
+
|
|
148
|
+
The classification is recorded in `ideation-index.md` under a `## Structural Classification`
|
|
149
|
+
section. All downstream steps (domain creation, discovery, validation) read this section
|
|
150
|
+
to determine where to place new domain files.
|
|
151
|
+
|
|
152
|
+
---
|
|
153
|
+
|
|
50
154
|
## Input-Adaptive Modes
|
|
51
155
|
|
|
52
156
|
Before starting, classify what the user has provided and select the right mode.
|
|
@@ -61,10 +165,11 @@ to organize it, validate it, and fill gaps.
|
|
|
61
165
|
|
|
62
166
|
**Process:**
|
|
63
167
|
1. Read/ingest every document provided
|
|
64
|
-
2.
|
|
65
|
-
3.
|
|
66
|
-
4.
|
|
67
|
-
5.
|
|
168
|
+
2. **Run Structural Classification** — scan for surface signals (see protocol above). Determine project shape before creating any files.
|
|
169
|
+
3. Identify natural domain boundaries in the content
|
|
170
|
+
4. Create the `ideation/` folder structure using the classified layout — one domain file per identified domain, placed in the correct folder (surface-specific or shared)
|
|
171
|
+
5. Seed each domain file with the relevant content from the source
|
|
172
|
+
6. Present the organized inventory: "Here's what I extracted, organized by domain: [list]. Is anything missing?"
|
|
68
173
|
6. Identify gaps — domains or sub-topics not covered by the existing material
|
|
69
174
|
7. For each gap, switch to Interview Mode for that topic
|
|
70
175
|
8. Run Deep Think: "Based on the content you provided, I would also expect to see [X] and [Y]. Are those relevant?"
|
|
@@ -108,11 +213,12 @@ persistent, deep questioning.
|
|
|
108
213
|
|
|
109
214
|
**Process:**
|
|
110
215
|
1. Start: "In one sentence, what problem does this solve and for whom?"
|
|
111
|
-
2.
|
|
112
|
-
3.
|
|
113
|
-
4.
|
|
114
|
-
5.
|
|
115
|
-
6.
|
|
216
|
+
2. **Run Structural Classification** — ask the two interview questions (audiences + surfaces) immediately after the opening problem statement. Determine project shape before creating any files.
|
|
217
|
+
3. From the problem statement + classification, identify key nouns — these become initial domains
|
|
218
|
+
4. Create domain files for each identified domain, placing them in the correct folder based on the structural classification
|
|
219
|
+
5. Run the Recursive Domain Exhaustion Protocol (below)
|
|
220
|
+
6. Use the decision classification rule to route questions appropriately
|
|
221
|
+
7. Don't stop until the deep think protocol generates zero new hypotheses
|
|
116
222
|
|
|
117
223
|
**Interview techniques:**
|
|
118
224
|
- **Challenge weak answers:** "You mentioned risk management — what happens when a user hits their position limit? What's the escalation path?"
|
|
@@ -194,8 +300,9 @@ not count-based.
|
|
|
194
300
|
|
|
195
301
|
1. List all domains from the user's input
|
|
196
302
|
2. **Deep Think:** "Based on this product type and industry, what domains would I expect to see that haven't been mentioned?" Present hypotheses to user.
|
|
197
|
-
3.
|
|
198
|
-
|
|
303
|
+
3. **For multi-product projects:** For each confirmed domain, determine placement — "Does this belong to a specific surface, or is it shared?" Create the domain file in the appropriate folder (`surfaces/{name}/` or `domains/`).
|
|
304
|
+
**For single-surface projects:** Create a domain file for each confirmed domain in `domains/` (using the ideation-domain-template).
|
|
305
|
+
4. Update `ideation-index.md` with the complete domain map (paths reflect the actual folder structure)
|
|
199
306
|
5. Note preliminary cross-cuts: "Domain A might touch Domain B because [reason]" → add to ledger as Level 0 entries
|
|
200
307
|
6. **Gate:** User confirms the domain list before proceeding
|
|
201
308
|
|