macca-method 1.0.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agents/legacy-payloads.json +22 -0
- package/{skills-lock.json → .agents/macca-lock.json} +4 -2
- package/.agents/macca-managed-skills.txt +4 -2
- package/.agents/skills/_shared/references/additional-skills.md +30 -0
- package/.agents/skills/_shared/references/brainstorm-session.md +42 -11
- package/.agents/skills/_shared/references/config-mutation.md +25 -0
- package/.agents/skills/_shared/references/finding-format.md +25 -0
- package/.agents/skills/_shared/references/fix-mode.md +39 -0
- package/.agents/skills/_shared/references/human-loop.md +3 -1
- package/.agents/skills/_shared/references/implementation-principles.md +19 -0
- package/.agents/skills/_shared/references/invocation-policy.md +39 -0
- package/.agents/skills/_shared/references/language-config.md +15 -0
- package/.agents/skills/_shared/references/output-ownership.md +4 -2
- package/.agents/skills/_shared/references/runtime-config.md +7 -168
- package/.agents/skills/_shared/references/skill-catalog.md +34 -0
- package/.agents/skills/_shared/scripts/validate-skills.py +106 -4
- package/.agents/skills/add-feature/SKILL.md +10 -7
- package/.agents/skills/brainstorm-api/SKILL.md +49 -194
- package/.agents/skills/brainstorm-api/assets/api.template.md +147 -0
- package/.agents/skills/brainstorm-architecture/SKILL.md +22 -127
- package/.agents/skills/brainstorm-architecture/assets/architecture.template.md +135 -0
- package/.agents/skills/brainstorm-prd/SKILL.md +19 -102
- package/.agents/skills/brainstorm-prd/assets/PRD.template.md +106 -0
- package/.agents/skills/brainstorm-rules/SKILL.md +17 -151
- package/.agents/skills/brainstorm-rules/assets/rules.template.md +127 -0
- package/.agents/skills/brainstorm-schema/SKILL.md +49 -115
- package/.agents/skills/brainstorm-schema/assets/schema.template.md +109 -0
- package/.agents/skills/brainstorm-styleguide/SKILL.md +19 -134
- package/.agents/skills/brainstorm-styleguide/assets/StyleGuide.template.md +147 -0
- package/.agents/skills/brainstorm-task/SKILL.md +22 -107
- package/.agents/skills/brainstorm-task/assets/Task.template.md +113 -0
- package/.agents/skills/bug-fix/SKILL.md +45 -54
- package/.agents/skills/code-review/SKILL.md +26 -19
- package/.agents/skills/code-review/references/review-checklist.md +24 -26
- package/.agents/skills/developer/SKILL.md +25 -39
- package/.agents/skills/developer/references/close-phase.md +25 -0
- package/.agents/skills/developer/references/execute-task.md +69 -0
- package/.agents/skills/developer/references/onboarding.md +47 -0
- package/.agents/skills/help/SKILL.md +12 -13
- package/.agents/skills/meet/SKILL.md +168 -0
- package/.agents/skills/quick-dev/SKILL.md +209 -0
- package/.agents/skills/release-readiness/SKILL.md +149 -0
- package/.agents/skills/spec-audit/SKILL.md +37 -22
- package/.agents/skills/spec-compliance/SKILL.md +41 -40
- package/.agents/skills/spec-init/SKILL.md +29 -14
- package/README.md +253 -170
- package/bin/macca-method.js +785 -91
- package/flow.webp +0 -0
- package/image-macca-method.webp +0 -0
- package/package.json +13 -6
- package/scripts/run-skill-validator.js +24 -0
- package/scripts/test-install.js +398 -0
- package/scripts/test-upgrade-legacy.js +107 -0
- package/scripts/validate-skill-behavior.js +124 -0
- package/.agents/skills/developer/references/execution-workflow.md +0 -322
- package/.agents/skills/rapat/SKILL.md +0 -172
package/README.md
CHANGED
|
@@ -42,45 +42,29 @@ When using AI for coding without clear guidance, these problems are common:
|
|
|
42
42
|
|
|
43
43
|
MACCA uses **skills** — structured instructions given to AI to perform specific tasks. Each skill has a clear responsibility and does not overlap.
|
|
44
44
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
│ │
|
|
49
|
-
│ brainstorm-prd → brainstorm-architecture │
|
|
50
|
-
│ ↓ │
|
|
51
|
-
│ brainstorm-schema │
|
|
52
|
-
│ ↓ │
|
|
53
|
-
│ brainstorm-api │
|
|
54
|
-
│ ↓ │
|
|
55
|
-
│ brainstorm-styleguide (optional) │
|
|
56
|
-
│ ↓ │
|
|
57
|
-
│ brainstorm-rules │
|
|
58
|
-
│ ↓ │
|
|
59
|
-
│ brainstorm-task │
|
|
60
|
-
└──────────────────────────────────────────────────────┘
|
|
61
|
-
↓
|
|
62
|
-
┌──────────────────────────────────────────────────────┐
|
|
63
|
-
│ EXECUTION PHASE │
|
|
64
|
-
│ │
|
|
65
|
-
│ developer (per Task.md phase) │
|
|
66
|
-
│ ↓ (after each phase) │
|
|
67
|
-
│ spec-compliance → code-review │
|
|
68
|
-
└──────────────────────────────────────────────────────┘
|
|
69
|
-
```
|
|
45
|
+
Skills use progressive disclosure: only names/descriptions are advertised initially, the selected `SKILL.md` loads on demand, and long templates/checklists load only at the phase that needs them. This keeps discovery complete without placing every workflow and output template in context at once.
|
|
46
|
+
|
|
47
|
+
The full project flow is documented in [Workflow](#7-workflow). `brainstorm-styleguide` is optional and additive; it never replaces `brainstorm-schema`, `brainstorm-api`, or `brainstorm-rules`.
|
|
70
48
|
|
|
71
49
|
All planning output documents are stored in `project-context/` in your project.
|
|
72
50
|
|
|
73
|
-
> **Any time:** you can call `help` to see project status and recommended next steps, or `
|
|
51
|
+
> **Any time:** you can call `help` to see project status and recommended next steps, or `meet` for one structured round of multi-persona input before continuing.
|
|
74
52
|
|
|
75
53
|
---
|
|
76
54
|
|
|
77
55
|
## 3. Planning Skills
|
|
78
56
|
|
|
79
|
-
Planning skills run as interview sessions. At the start of each session, AI announces the topic count, then asks two things
|
|
57
|
+
Planning skills run as evidence-first interview sessions. AI reads applicable upstream specs first and asks only material decisions that are still unknown. At the start of each session, AI announces the topic count, then asks two things if not already saved:
|
|
80
58
|
1. **Pacing**: (A) one by one · (B) three at a time · (C) all at once
|
|
81
59
|
2. **Recommendations**: should AI provide suggested answers for each question?
|
|
82
60
|
|
|
83
|
-
These choices are saved and reused
|
|
61
|
+
These choices are saved and reused. Discovery depth is separate from pacing:
|
|
62
|
+
|
|
63
|
+
- **quick** — only when you explicitly identify disposable prototype/internal experiment work
|
|
64
|
+
- **standard** — default production depth
|
|
65
|
+
- **critical** — automatic deeper security, failure, recovery, and operational detail for payments, sensitive/regulated data, multi-tenancy, public uploads/webhooks, privileged administration, or high availability
|
|
66
|
+
|
|
67
|
+
Depth is inferred from existing context and can be overridden; it does not add a mandatory setup question. Mandatory safety topics are never skipped.
|
|
84
68
|
|
|
85
69
|
---
|
|
86
70
|
|
|
@@ -98,19 +82,19 @@ These choices are saved and reused in future sessions.
|
|
|
98
82
|
**Topics covered:**
|
|
99
83
|
1. Project Goal — long-term vision and what makes the project unique
|
|
100
84
|
2. Target Users — user personas, demographics, pain points
|
|
101
|
-
3. Problem Being Solved — real
|
|
85
|
+
3. Problem Being Solved — real problem, current workaround, and its cost/limitations
|
|
102
86
|
4. Main Features (MVP) — minimum features required in the first version
|
|
103
87
|
5. Business Rules — rules that must never be broken (for example: stock cannot go negative)
|
|
104
|
-
6.
|
|
105
|
-
7.
|
|
106
|
-
8.
|
|
107
|
-
9.
|
|
108
|
-
10.
|
|
109
|
-
11.
|
|
110
|
-
12.
|
|
111
|
-
13.
|
|
112
|
-
14.
|
|
113
|
-
15. Open Questions —
|
|
88
|
+
6. User Flow — happy path, failure scenarios, and degraded behavior
|
|
89
|
+
7. Design & Technical Requirements — platform, references, integrations, preferences
|
|
90
|
+
8. Non-Functional Requirements — performance, security, scalability, accessibility, availability
|
|
91
|
+
9. Success Metrics & Rollout — baseline, target, timeframe, measurement source, owner, launch strategy
|
|
92
|
+
10. Acceptance Criteria — concrete conditions for each feature
|
|
93
|
+
11. Non-Goals — what will *not* be built
|
|
94
|
+
12. Assumptions — unverified conditions
|
|
95
|
+
13. User Stories — prioritized workflows from the user perspective
|
|
96
|
+
14. Stakeholders — owners and responsibilities
|
|
97
|
+
15. Open Questions — unresolved decisions and risks
|
|
114
98
|
|
|
115
99
|
**Important behavior:**
|
|
116
100
|
- Use `Traceability ID` (`FEAT-*`, `BR-*`, `AC-*`, `NFR-*`, `US-*`) so each requirement can be traced to tasks and code
|
|
@@ -135,14 +119,14 @@ These choices are saved and reused in future sessions.
|
|
|
135
119
|
|
|
136
120
|
**Topics covered:**
|
|
137
121
|
1. System Context — systems and external services that interact
|
|
138
|
-
2. Tech Stack — frontend, backend, database, hosting, CI/CD
|
|
122
|
+
2. Tech Stack — frontend, backend, database, hosting, CI/CD, plus strategic dependency/license/health/lock-in/exit evaluation
|
|
139
123
|
3. Folder Structure — project file and directory organization
|
|
140
124
|
4. Design Patterns — architecture patterns (MVC, Clean Architecture, Feature-based, Hexagonal)
|
|
141
125
|
5. Authentication & Authorization — login method, JWT/session, RBAC
|
|
142
126
|
6. API Style — REST, GraphQL, or tRPC
|
|
143
127
|
7. State Management — Zustand, Redux, Context API, etc.
|
|
144
|
-
8.
|
|
145
|
-
9.
|
|
128
|
+
8. Security & Abuse Cases — required risk screen; depth increases for sensitive systems
|
|
129
|
+
9. Deployment & Operations — environments, deployment, observability, owner/runbook, rollback, and critical-system recovery/RPO/RTO
|
|
146
130
|
10. Architecture Decision Records — major decisions and their reasoning
|
|
147
131
|
|
|
148
132
|
**Important behavior:**
|
|
@@ -167,15 +151,15 @@ These choices are saved and reused in future sessions.
|
|
|
167
151
|
**Topic count:** 5 topics
|
|
168
152
|
|
|
169
153
|
**Topics covered:**
|
|
170
|
-
1.
|
|
171
|
-
2.
|
|
172
|
-
3.
|
|
173
|
-
4. Relationships —
|
|
174
|
-
5.
|
|
154
|
+
1. Persistence Conventions — identity, naming, audit/version metadata, deletion, retention
|
|
155
|
+
2. Entity/Storage Map — relational, document, key-value, graph, event-store, or mixed
|
|
156
|
+
3. Fields & Data Types — datastore-native validation, PII, volume, growth, payload size
|
|
157
|
+
4. Relationships & Placement — references/embedding/edges/aggregates plus tenancy and concurrency
|
|
158
|
+
5. Access Patterns & Evolution — indexes/projections, consistency, migration, backfill, compatibility, recovery
|
|
175
159
|
|
|
176
160
|
**Important behavior:**
|
|
177
|
-
- Give each
|
|
178
|
-
-
|
|
161
|
+
- Give each persisted entity a `Traceability ID` (`DATA-*`)
|
|
162
|
+
- Datastore-native names, tenancy, concurrency, retention, and migration constraints are verified by `spec-compliance` (SC-03)
|
|
179
163
|
|
|
180
164
|
</details>
|
|
181
165
|
|
|
@@ -186,23 +170,23 @@ These choices are saved and reused in future sessions.
|
|
|
186
170
|
|
|
187
171
|
**Persona:** @Fachri — Tech Lead
|
|
188
172
|
|
|
189
|
-
**Called when:** After
|
|
173
|
+
**Called when:** After applicable architecture/data decisions, or after architecture for a frontend consumer contract.
|
|
190
174
|
|
|
191
|
-
**Read before starting:** `project-context/PRD.md`, `project-context/architecture.md`, `project-context/schema.md`
|
|
175
|
+
**Read before starting:** `project-context/PRD.md`, `project-context/architecture.md`, and `project-context/schema.md` when a provider/full contract needs persisted data details.
|
|
192
176
|
|
|
193
177
|
**Output:** `project-context/api.md`
|
|
194
178
|
|
|
195
179
|
**Topic count:** 5 topics
|
|
196
180
|
|
|
197
181
|
**Topics covered:**
|
|
198
|
-
1.
|
|
199
|
-
2. Error Catalog —
|
|
200
|
-
3.
|
|
201
|
-
4.
|
|
202
|
-
5.
|
|
182
|
+
1. Entry Point, Versioning, Deprecation & Auth — protocol-native compatibility and lifecycle
|
|
183
|
+
2. Error Catalog — protocol-native errors, retryability, timeout interaction, client action
|
|
184
|
+
3. Operations — REST endpoints, GraphQL operations, RPC procedures, events, or mixed contracts
|
|
185
|
+
4. Input/Output/Event Details — examples, validation, authorization, idempotency/replay
|
|
186
|
+
5. Flow & Reliability — pagination/streaming, rate limits, retries, SLOs, and contract-test invariants
|
|
203
187
|
|
|
204
188
|
**Important behavior:**
|
|
205
|
-
- Give each
|
|
189
|
+
- Give each operation a `Traceability ID` (`API-*`)
|
|
206
190
|
- Agreed request and response formats are a **contract** verified by `spec-compliance` (SC-04) during coding
|
|
207
191
|
|
|
208
192
|
</details>
|
|
@@ -220,7 +204,7 @@ These choices are saved and reused in future sessions.
|
|
|
220
204
|
|
|
221
205
|
**Output:** `project-context/StyleGuide.md`
|
|
222
206
|
|
|
223
|
-
**Topic count:**
|
|
207
|
+
**Topic count:** 8 topics
|
|
224
208
|
|
|
225
209
|
**Topics covered:**
|
|
226
210
|
1. CSS Framework — Tailwind CSS (v3/v4), Bootstrap, CSS Modules, or custom
|
|
@@ -230,6 +214,7 @@ These choices are saved and reused in future sessions.
|
|
|
230
214
|
5. Component Styles — button, card, form input, modal, table — styling and states
|
|
231
215
|
6. Responsive & Breakpoints — sm/md/lg/xl breakpoints and layout changes
|
|
232
216
|
7. Icons & Assets — icon library, image formats, asset naming conventions
|
|
217
|
+
8. Accessibility, Localization & Operational States — keyboard/focus/screen reader/reduced motion; loading/empty/error/forbidden/offline; locales/RTL; UI performance
|
|
233
218
|
|
|
234
219
|
**Important behavior:**
|
|
235
220
|
- Agreed colors and spacing are a **contract** — `spec-compliance` (SC-06) flags arbitrary values outside this list
|
|
@@ -260,6 +245,8 @@ These choices are saved and reused in future sessions.
|
|
|
260
245
|
6. Git Workflow — commit message convention, branching strategy
|
|
261
246
|
7. `[FORBIDDEN]` Section — list of technical prohibitions that AI **must scan** before writing code
|
|
262
247
|
|
|
248
|
+
Conditional rules are generated only when applicable: structured logging, migrations, feature flags, generated code, and secret rotation.
|
|
249
|
+
|
|
263
250
|
**Important behavior:**
|
|
264
251
|
- The `[FORBIDDEN]` section is the first thing `developer` reads before coding
|
|
265
252
|
- If the `[FORBIDDEN]` section is missing, `spec-compliance` records it as a MINOR finding
|
|
@@ -279,7 +266,7 @@ These choices are saved and reused in future sessions.
|
|
|
279
266
|
|
|
280
267
|
**Output:** `project-context/Task.md`
|
|
281
268
|
|
|
282
|
-
**
|
|
269
|
+
**User clarification count:** 3 topics plus one automatic document-completeness check
|
|
283
270
|
|
|
284
271
|
**Clarification topics:**
|
|
285
272
|
1. Phase Priority Order — implementation order, which features must finish first
|
|
@@ -294,8 +281,9 @@ These choices are saved and reused in future sessions.
|
|
|
294
281
|
**Important behavior:**
|
|
295
282
|
- Tasks are **not created from guesses** — all tasks are derived from the spec documents
|
|
296
283
|
- Every task has concrete, verifiable `Acceptance Criteria`
|
|
297
|
-
-
|
|
284
|
+
- Testing order follows `rules.md`: test-first when explicitly selected, otherwise test-with-change or the project's approved workflow
|
|
298
285
|
- Every task has a `Traceability ID` that links it to requirements in the specs
|
|
286
|
+
- Every phase receives a Definition of Done derived from applicable specs: validation, security, migration/recovery, observability, docs/rollout, `spec-compliance`, and `code-review`
|
|
299
287
|
|
|
300
288
|
</details>
|
|
301
289
|
|
|
@@ -322,7 +310,7 @@ Read `.agents/developer-config.json`. If `name` or `project` is missing, AI asks
|
|
|
322
310
|
*Additional Skills:*
|
|
323
311
|
- If `additionalSkills` already exists in config → use it directly
|
|
324
312
|
- If not → AI asks once: *"Are there any additional skills for this project?"*
|
|
325
|
-
- For every named skill, AI **first searches the workspace itself** (`.agents/skills/`, `.github/skills/`, `.opencode/
|
|
313
|
+
- For every named skill, AI **first searches the workspace itself** (`.agents/skills/`, `.github/skills/`, `.opencode/skills/`). It only asks you for the path if the skill is not found.
|
|
326
314
|
- When working on a relevant task, AI **must read** `SKILL.md` from that skill before writing code.
|
|
327
315
|
|
|
328
316
|
*MCP (Model Context Protocol):*
|
|
@@ -374,7 +362,7 @@ For each task:
|
|
|
374
362
|
1. Understand the task and acceptance criteria
|
|
375
363
|
2. Check the ladder: does it need to be built? Does it already exist in the codebase? Is it in the standard library? (YAGNI)
|
|
376
364
|
3. Write an I/O contract for non-trivial functions
|
|
377
|
-
4.
|
|
365
|
+
4. Follow the testing workflow in `rules.md`: test-first only when selected, otherwise test-with-change or the approved project policy
|
|
378
366
|
5. After finishing, write `[SELF-REVIEW]`:
|
|
379
367
|
```
|
|
380
368
|
1. Security risk: [1 potential issue — or "none identified"]
|
|
@@ -383,18 +371,94 @@ For each task:
|
|
|
383
371
|
```
|
|
384
372
|
6. Run validation, update `Task.md` (`[ ]` → `[x]`)
|
|
385
373
|
|
|
374
|
+
Developer loads workflow references by state, not all at once:
|
|
375
|
+
- `onboarding.md` only for missing setup or plan-first
|
|
376
|
+
- `execute-task.md` only for the current task
|
|
377
|
+
- `close-phase.md` only when closing a phase/project
|
|
378
|
+
|
|
386
379
|
**Step 4 — After all tasks in the phase are complete**
|
|
387
380
|
1. Show a phase summary
|
|
388
|
-
2.
|
|
389
|
-
3.
|
|
390
|
-
4.
|
|
391
|
-
5.
|
|
381
|
+
2. Verify the applicable Phase Definition of Done; mark genuine non-applicable items with a reason
|
|
382
|
+
3. If there is a plan file for this phase → update plan status: `in-progress` → `code-review`
|
|
383
|
+
4. Run `spec-compliance` automatically
|
|
384
|
+
5. If clean, run `code-review` automatically
|
|
385
|
+
6. Complete quality-gate DoD items, then offer the next phase
|
|
392
386
|
|
|
393
387
|
**MCPs used (if listed in `availableMCPs`):**
|
|
394
|
-
- `context7` —
|
|
395
|
-
- `
|
|
396
|
-
-
|
|
397
|
-
|
|
388
|
+
- `context7` or equivalent docs MCP — current installed-version library documentation
|
|
389
|
+
- `codebase-memory-mcp` or equivalent graph/symbol tooling — codebase discovery and relationships
|
|
390
|
+
- Other registered MCPs only when relevant to the current task
|
|
391
|
+
|
|
392
|
+
</details>
|
|
393
|
+
|
|
394
|
+
---
|
|
395
|
+
|
|
396
|
+
<details>
|
|
397
|
+
<summary><strong>quick-dev</strong> — Execute a single focused task directly, without phase ceremony</summary>
|
|
398
|
+
|
|
399
|
+
**Persona:** @Firdaus — Expert Developer
|
|
400
|
+
|
|
401
|
+
**Called when:** A small, targeted change is needed (color fix, layout tweak, copy edit, minor logic adjustment) and it still maps cleanly to the current project context. It avoids full phase ceremony, but keeps the same quality gates.
|
|
402
|
+
|
|
403
|
+
**Not for:** new features, database migrations, new API endpoints, or changes touching more than 5 files — use `developer` instead.
|
|
404
|
+
|
|
405
|
+
**Full workflow:**
|
|
406
|
+
|
|
407
|
+
**Step 0 — Identity**
|
|
408
|
+
Same as `developer`. Reads `.agents/developer-config.json`, greets by name and project.
|
|
409
|
+
|
|
410
|
+
**Step 0b & 0c — Additional Skills, MCP, Scope**
|
|
411
|
+
Same setup policy as `developer`. Reads from config if already set and asks only for missing required setup.
|
|
412
|
+
|
|
413
|
+
**Step 1 — Pre-flight summary** *(unique to quick-dev)*
|
|
414
|
+
|
|
415
|
+
Before any code is written, AI shows:
|
|
416
|
+
```
|
|
417
|
+
Quick Dev — Pre-flight
|
|
418
|
+
───────────────────────
|
|
419
|
+
Task : [concise interpretation]
|
|
420
|
+
Specs : [specs to read]
|
|
421
|
+
Files :
|
|
422
|
+
~ [path/file] (modify)
|
|
423
|
+
Assumptions (will proceed unless corrected):
|
|
424
|
+
[~] [assumption]
|
|
425
|
+
Need confirmation before proceeding: ← omit if none
|
|
426
|
+
[?] [blocking question]
|
|
427
|
+
```
|
|
428
|
+
- Non-blocking ambiguities go under "Assumptions", not as questions
|
|
429
|
+
- Missing specs (e.g. no `StyleGuide.md` but task touches UI) are flagged here
|
|
430
|
+
- Waits only when a blocking ambiguity exists; otherwise proceeds in the same turn with listed assumptions
|
|
431
|
+
|
|
432
|
+
**Step 2 — Read relevant specs**
|
|
433
|
+
Same table as `developer` — reads only what the task needs.
|
|
434
|
+
|
|
435
|
+
**Step 3 — Execute**
|
|
436
|
+
Loads the same task-execution workflow as `developer`: scope check → delta approval if needed → clarify only blocking ambiguity → I/O contract for non-trivial logic → code → `[SELF-REVIEW]` → validate.
|
|
437
|
+
|
|
438
|
+
**Step 4 — Update Task.md**
|
|
439
|
+
|
|
440
|
+
| Condition | Action |
|
|
441
|
+
|---|---|
|
|
442
|
+
| Related item found, `[ ]` | Mark `[x]`, add brief note |
|
|
443
|
+
| Related item found, `[x]` | Add sub-note about the refinement |
|
|
444
|
+
| No related item | Append to active phase as `[x]` with tag `(quick-fix: YYYY-MM-DD)` |
|
|
445
|
+
|
|
446
|
+
**Step 5 — Quality gates**
|
|
447
|
+
Runs full `spec-compliance` then `code-review`. Both follow `fixMode` from config.
|
|
448
|
+
|
|
449
|
+
**Important behavior:** quick-dev is a bounded router, not a separate implementation philosophy. It follows the same shared implementation principles, testing policy, and approval gates as `developer`, but only for small, clearly anchored work. Anything broader routes back to `developer`.
|
|
450
|
+
|
|
451
|
+
**Step 6 — Final report**
|
|
452
|
+
```
|
|
453
|
+
Quick Dev — Done
|
|
454
|
+
─────────────────
|
|
455
|
+
Task : [description]
|
|
456
|
+
Files : [changed files]
|
|
457
|
+
Validated : [check and result]
|
|
458
|
+
Assumptions used: [~] ...
|
|
459
|
+
Remaining ambiguities: ← omit if none
|
|
460
|
+
[!] ...
|
|
461
|
+
```
|
|
398
462
|
|
|
399
463
|
</details>
|
|
400
464
|
|
|
@@ -411,13 +475,13 @@ For each task:
|
|
|
411
475
|
|
|
412
476
|
| ID | Aspect | Documents Read |
|
|
413
477
|
|----|-------|---------------------|
|
|
414
|
-
| SC-01 | PRD Compliance |
|
|
415
|
-
| SC-02 | Architecture Compliance |
|
|
416
|
-
| SC-03 | Schema Compliance |
|
|
417
|
-
| SC-04 | API Compliance |
|
|
418
|
-
| SC-05 | Rules Compliance | `
|
|
419
|
-
| SC-06 | StyleGuide Compliance |
|
|
420
|
-
| SC-07 | Task Completion |
|
|
478
|
+
| SC-01 | PRD Compliance | scope, business rules, acceptance/NFR, metrics/rollout and degraded behavior when applicable |
|
|
479
|
+
| SC-02 | Architecture Compliance | stack, boundaries, patterns, auth, observability/rollback/recovery when touched |
|
|
480
|
+
| SC-03 | Schema Compliance | datastore-native names, validation, tenancy, concurrency, retention and evolution |
|
|
481
|
+
| SC-04 | API Compliance | protocol-native operations, errors, auth, reliability, lifecycle and contract invariants |
|
|
482
|
+
| SC-05 | Rules Compliance | `[FORBIDDEN]`, naming, security, testing and applicable operational conventions |
|
|
483
|
+
| SC-06 | StyleGuide Compliance | tokens, responsive behavior, accessibility, localization and operational states |
|
|
484
|
+
| SC-07 | Task Completion | acceptance criteria, traceability and applicable Phase Definition of Done |
|
|
421
485
|
| SC-08 | Scope Compliance | `developer-config.json` — frontend/backend scope respected, no files outside scope |
|
|
422
486
|
|
|
423
487
|
**Severity:** `💥 BLOCKER` → fix now, re-run | `🔴 MAJOR` → fix before the next phase | `⚠️ MINOR` → discuss | `✅ PASS` → continue to `code-review`
|
|
@@ -447,7 +511,7 @@ If this field is missing, the default is `report-first`. To change it, the user
|
|
|
447
511
|
| Tier | Item |
|
|
448
512
|
|------|------|
|
|
449
513
|
| 💥 BLOCKER | CR-01 Wrong imports · CR-02 Runtime errors · CR-03 Null/undefined · CR-04 SQL injection · CR-05 Deprecated methods |
|
|
450
|
-
| 🔴 MAJOR | CR-06 Duplicate function · CR-07 Unused code · CR-08 Duplicate logic · CR-09 Obsolete code · CR-10 Inconsistent naming · CR-11 Ignoring existing code · CR-12 Missing dependency · CR-13 Dependency conflict · CR-14 Memory leaks · CR-15 Security ignored · CR-16
|
|
514
|
+
| 🔴 MAJOR | CR-06 Duplicate function · CR-07 Unused code · CR-08 Duplicate logic · CR-09 Obsolete code · CR-10 Inconsistent naming · CR-11 Ignoring existing code · CR-12 Missing dependency · CR-13 Dependency conflict · CR-14 Memory leaks · CR-15 Security ignored · CR-16 Missing required rate-limit handling · CR-17 Missing tests required by `rules.md` |
|
|
451
515
|
| ⚠️ MINOR | CR-18 Edge cases · CR-19 Happy path only · CR-20 Performance · CR-21 Outdated pattern · CR-22 Under-engineering · CR-23 Over-engineering · CR-24 Environment assumptions |
|
|
452
516
|
| ℹ️ INFO | CR-25 Missing comments · CR-26 Jargon · CR-27 Comment quality |
|
|
453
517
|
|
|
@@ -578,7 +642,7 @@ Recommended next steps: ...
|
|
|
578
642
|
**Two modes:**
|
|
579
643
|
|
|
580
644
|
**Project Mode** — audit `project-context/`
|
|
581
|
-
Checks consistency *between* documents:
|
|
645
|
+
Checks consistency *between* documents: persisted entities with no supporting operation? Features with no task? PRD metrics with no observability signal? Rollout without rollback? Architecture decisions conflicting with rules? Traceability IDs referenced but missing?
|
|
582
646
|
|
|
583
647
|
**Framework Mode** — audit MACCA itself
|
|
584
648
|
Checks consistency *between* skill instructions: are README, skill docs, and workflow aligned, or do they conflict?
|
|
@@ -606,25 +670,26 @@ Mode B — Guided Generate: one document → you review → confirm → continue
|
|
|
606
670
|
|
|
607
671
|
**Generation order:** `architecture.md` → `rules.md` → `schema.md` → `api.md` → `StyleGuide.md` → `PRD.md`
|
|
608
672
|
|
|
609
|
-
`PRD.md` is created last because it is
|
|
673
|
+
`PRD.md` is created last because it is synthesized from observed behavior, not guessed intent.
|
|
610
674
|
|
|
611
675
|
**Each generated document includes:**
|
|
612
676
|
- **Evidence Inputs** — files/sources used as the basis for each claim
|
|
613
677
|
- **Confidence Level** per claim: *High* (seen directly in code) / *Medium* (strong inference) / *Low* (guess, needs verification)
|
|
614
678
|
- **Confidence Summary** — summary of strong facts, inferences, and what still needs manual verification
|
|
679
|
+
- **Missing Decisions** — choices that cannot be proven from code, with the recommended owning brainstorm skill
|
|
615
680
|
|
|
616
681
|
</details>
|
|
617
682
|
|
|
618
683
|
---
|
|
619
684
|
|
|
620
685
|
<details>
|
|
621
|
-
<summary><strong>
|
|
686
|
+
<summary><strong>meet</strong> — Single-round multi-persona team meeting</summary>
|
|
622
687
|
|
|
623
688
|
**Persona:** @Galbi (facilitator)
|
|
624
689
|
|
|
625
690
|
**Called when:** Any time you need perspectives from several specialties at once.
|
|
626
691
|
|
|
627
|
-
**How it works:**
|
|
692
|
+
**How it works:** Provide agenda, desired outcome, hard constraints, optional evidence, and participants in one setup. In one response, every selected persona gives exactly one evidence/assumption-labeled recommendation in a fixed order. @Galbi then summarizes decisions, open questions, action items, and artifact handoffs before closing automatically. A second round requires a new `meet` invocation.
|
|
628
693
|
|
|
629
694
|
**Available personas:**
|
|
630
695
|
- `@Galbi` — Project Manager: scope, priorities, business impact
|
|
@@ -637,14 +702,40 @@ Mode B — Guided Generate: one document → you review → confirm → continue
|
|
|
637
702
|
|
|
638
703
|
---
|
|
639
704
|
|
|
705
|
+
<details>
|
|
706
|
+
<summary><strong>release-readiness</strong> — Production release evidence gate</summary>
|
|
707
|
+
|
|
708
|
+
**Persona:** @Fachri — Tech Lead
|
|
709
|
+
|
|
710
|
+
**Called when:** The user asks whether a candidate is ready to ship, before production release, or after all Task.md phases are complete.
|
|
711
|
+
|
|
712
|
+
**Behavior:** Report-only. It never deploys, publishes, applies migrations, rotates secrets, or changes production.
|
|
713
|
+
|
|
714
|
+
It consumes existing quality evidence instead of repeating complete reviews, then checks:
|
|
715
|
+
|
|
716
|
+
1. Scope, acceptance criteria, Definition of Done, and unresolved quality findings
|
|
717
|
+
2. Build, tests, type/lint checks, and candidate-specific smoke tests
|
|
718
|
+
3. Environment configuration and secrets
|
|
719
|
+
4. Migration, backfill, backup, validation, and recovery
|
|
720
|
+
5. Deployment ownership, rollback, and feature flags
|
|
721
|
+
6. Logs, metrics, traces, alerts, health checks, runbooks, and incident ownership
|
|
722
|
+
7. Compatibility, deprecation, version, changelog, and consumer communication
|
|
723
|
+
8. Accessibility and operational UI states when UI changed
|
|
724
|
+
|
|
725
|
+
Verdicts: `READY`, `CONDITIONAL`, or `NOT READY`. Missing required evidence is `NOT VERIFIED`, never an assumed pass.
|
|
726
|
+
|
|
727
|
+
</details>
|
|
728
|
+
|
|
729
|
+
---
|
|
730
|
+
|
|
640
731
|
## 6. The MACCA AI Team
|
|
641
732
|
|
|
642
733
|
| Persona | Role | Skills |
|
|
643
734
|
|---------|------|--------|
|
|
644
|
-
| **@Galbi** | Project Manager | `brainstorm-prd`, `brainstorm-task`, `add-feature`, `help`, `
|
|
645
|
-
| **@Fachri** | Tech Lead | `brainstorm-architecture`, `brainstorm-api`, `brainstorm-schema`, `brainstorm-rules`, `spec-init`, `spec-audit`, `spec-compliance`, `code-review` |
|
|
735
|
+
| **@Galbi** | Project Manager | `brainstorm-prd`, `brainstorm-task`, `add-feature`, `help`, `meet` |
|
|
736
|
+
| **@Fachri** | Tech Lead | `brainstorm-architecture`, `brainstorm-api`, `brainstorm-schema`, `brainstorm-rules`, `spec-init`, `spec-audit`, `spec-compliance`, `code-review`, `release-readiness` |
|
|
646
737
|
| **@Akram** | UI/UX Designer | `brainstorm-styleguide` |
|
|
647
|
-
| **@Firdaus** | Expert Developer | `developer` |
|
|
738
|
+
| **@Firdaus** | Expert Developer | `developer`, `quick-dev` |
|
|
648
739
|
| **@Ikhsan** | Debugger | `bug-fix` |
|
|
649
740
|
|
|
650
741
|
> **Persona Rule:** Do not swap the persona assigned to a skill. Its instructions, tone, and responsibilities are designed for that role.
|
|
@@ -653,6 +744,10 @@ Mode B — Guided Generate: one document → you review → confirm → continue
|
|
|
653
744
|
|
|
654
745
|
## 7. Workflow
|
|
655
746
|
|
|
747
|
+

|
|
748
|
+
|
|
749
|
+
`brainstorm-styleguide` branches from `brainstorm-architecture` as an optional UI input, then feeds back into `brainstorm-rules`. It does not skip `brainstorm-schema`, `brainstorm-api`, or `brainstorm-rules`.
|
|
750
|
+
|
|
656
751
|
<details>
|
|
657
752
|
<summary><strong>New Project</strong> — Start from scratch</summary>
|
|
658
753
|
|
|
@@ -676,6 +771,7 @@ Step 3b: Define the API (if any)
|
|
|
676
771
|
Step 3c: Define the UI design (optional)
|
|
677
772
|
→ Call: brainstorm-styleguide
|
|
678
773
|
→ Output: project-context/StyleGuide.md
|
|
774
|
+
→ Adds UI constraints only; it does not replace Step 3a, Step 3b, or Step 4
|
|
679
775
|
|
|
680
776
|
Step 4: Set code standards
|
|
681
777
|
→ Call: brainstorm-rules
|
|
@@ -692,7 +788,12 @@ Step 7: Start coding
|
|
|
692
788
|
→ Call: developer
|
|
693
789
|
→ Per task: code → validate → [SELF-REVIEW]
|
|
694
790
|
→ Per phase: spec-compliance → code-review → next phase
|
|
695
|
-
→ If all tasks are complete but
|
|
791
|
+
→ If all tasks are complete but broader maintenance, hardening, optimization, or unclear follow-up work remain: keep using `developer` (post-task / maintenance mode)
|
|
792
|
+
→ For small targeted fixes (color, layout, copy, minor logic) with a clear anchor to existing work: use `quick-dev`; if the scope is broader or the traceability anchor is unclear, stay in `developer`
|
|
793
|
+
|
|
794
|
+
Step 8: Prepare a production release
|
|
795
|
+
→ Call: spec-audit (final project consistency)
|
|
796
|
+
→ Call: release-readiness (report-only operational gate)
|
|
696
797
|
```
|
|
697
798
|
|
|
698
799
|
> Not sure where to start? Call `help`.
|
|
@@ -759,11 +860,12 @@ What happens:
|
|
|
759
860
|
1. You describe the bug
|
|
760
861
|
2. AI checks bug-log.md — has it happened before?
|
|
761
862
|
3. AI checks all callers of the broken code
|
|
762
|
-
4. AI explains the root cause →
|
|
863
|
+
4. AI explains the root cause and proposed fix → explicit approval is required before the first code change
|
|
763
864
|
5. Apply the fix → spec-compliance + code-review
|
|
764
865
|
6. You confirm the bug is resolved
|
|
765
866
|
7. AI adds regression prevention
|
|
766
|
-
8.
|
|
867
|
+
8. If prevention changed code/specs, AI validates it and reruns affected checks
|
|
868
|
+
9. AI records it in bug-log.md ← only after your confirmation
|
|
767
869
|
```
|
|
768
870
|
|
|
769
871
|
</details>
|
|
@@ -772,89 +874,54 @@ What happens:
|
|
|
772
874
|
|
|
773
875
|
## 8. Installation & Usage
|
|
774
876
|
|
|
775
|
-
**
|
|
877
|
+
**Prerequisites:** Node.js 18+ with `npx`, plus GitHub Copilot in VS Code (or another supported AI tool).
|
|
776
878
|
|
|
777
879
|
### Installation
|
|
778
880
|
|
|
779
|
-
|
|
881
|
+
Use `macca-method` if you want the full bootstrap: skill files, interactive AI-tool selection, `developer-config.json`, and language preferences.
|
|
780
882
|
|
|
781
|
-
|
|
883
|
+
This is the supported cross-platform path for Windows, Linux, and macOS.
|
|
782
884
|
|
|
783
885
|
```bash
|
|
784
|
-
npx macca-method install
|
|
886
|
+
npx macca-method@latest install
|
|
785
887
|
```
|
|
786
888
|
|
|
889
|
+
`@latest` always resolves from the newest version published on npm. Pushing changes to GitHub does not update the install command until a newer npm package is published.
|
|
890
|
+
|
|
787
891
|
The CLI asks you to choose the AI tool, then prompts for the developer name, project name, and language preferences.
|
|
788
892
|
|
|
789
|
-
|
|
893
|
+
To see the supported AI tool names before installing, run:
|
|
790
894
|
|
|
791
895
|
```bash
|
|
792
|
-
|
|
896
|
+
npx macca-method@latest --list-tools
|
|
793
897
|
```
|
|
794
898
|
|
|
795
899
|
You can also do unattended installs, for example:
|
|
796
900
|
|
|
797
901
|
```bash
|
|
798
|
-
npx macca-method install --tool github-copilot --tool codex --yes
|
|
799
|
-
```
|
|
800
|
-
|
|
801
|
-
**Option B — bundled MACCA installer**
|
|
802
|
-
|
|
803
|
-
Use this if you prefer a curl/PowerShell bootstrap without going through npm.
|
|
804
|
-
|
|
805
|
-
**Linux / Mac**
|
|
806
|
-
```bash
|
|
807
|
-
curl -fsSL https://raw.githubusercontent.com/firdaus12p/MACCA-METHOD/main/install.sh | bash
|
|
902
|
+
npx macca-method@latest install --tool github-copilot --tool codex --yes
|
|
808
903
|
```
|
|
809
904
|
|
|
810
|
-
|
|
811
|
-
```powershell
|
|
812
|
-
irm https://raw.githubusercontent.com/firdaus12p/MACCA-METHOD/main/install.ps1 | iex
|
|
813
|
-
```
|
|
814
|
-
|
|
815
|
-
The bundled installer shows an interactive selector to choose the AI tool, then asks for the developer name, project name, and language preferences.
|
|
816
|
-
|
|
817
|
-
**Option C — `skills` CLI**
|
|
818
|
-
|
|
819
|
-
Use this if you only want to install the MACCA skills through the shared Agent Skills ecosystem.
|
|
820
|
-
|
|
821
|
-
```bash
|
|
822
|
-
npx skills add firdaus12p/MACCA-METHOD --list
|
|
823
|
-
npx skills add firdaus12p/MACCA-METHOD --skill '*' -a github-copilot
|
|
824
|
-
```
|
|
825
|
-
|
|
826
|
-
You can swap `github-copilot` with another supported agent such as `claude-code`, `cursor`, `codex`, `opencode`, `windsurf`, or `gemini-cli`.
|
|
827
|
-
|
|
828
|
-
> `npx skills add` installs the skills only. It does **not** create `.agents/developer-config.json`, `.agents/macca-tools.txt`, or prompt for developer/project/language setup. Use the MACCA installer above if you need that bootstrap.
|
|
905
|
+
Use the MACCA installer for this release. The skills currently depend on the sibling `_shared` collection and `.agents/developer-config.json`; installing individual skill folders with a generic skill installer is not supported until self-contained build artifacts are published.
|
|
829
906
|
|
|
830
907
|
### Update to the Latest Version
|
|
831
908
|
|
|
832
|
-
**Preferred**
|
|
833
|
-
|
|
834
909
|
```bash
|
|
835
|
-
npx macca-method upgrade
|
|
910
|
+
npx macca-method@latest upgrade
|
|
836
911
|
```
|
|
837
912
|
|
|
838
|
-
|
|
913
|
+
Run this whenever you want to refresh an existing MACCA setup to the newest published skills.
|
|
839
914
|
|
|
840
|
-
|
|
841
|
-
node bin/macca-method.js upgrade
|
|
842
|
-
```
|
|
915
|
+
If the installed project was created from a newer unpublished/local build, `upgrade` now refuses an older npm package instead of silently downgrading the skill folders.
|
|
843
916
|
|
|
844
|
-
|
|
917
|
+
The updater uses the MACCA files inside `.agents/` to know which installed skill folders should be refreshed.
|
|
845
918
|
|
|
846
|
-
|
|
847
|
-
```bash
|
|
848
|
-
curl -fsSL https://raw.githubusercontent.com/firdaus12p/MACCA-METHOD/main/upgrade.sh | bash
|
|
849
|
-
```
|
|
850
|
-
|
|
851
|
-
**Windows (PowerShell)**
|
|
852
|
-
```powershell
|
|
853
|
-
irm https://raw.githubusercontent.com/firdaus12p/MACCA-METHOD/main/upgrade.ps1 | iex
|
|
854
|
-
```
|
|
919
|
+
> Upgrade from `1.1.0`: the updater fingerprints the official published payload before adopting an unmarked legacy skill. Byte-identical legacy copies are migrated automatically, including the previous OpenCode location and meeting-skill rename. Modified or unknown folders are never overwritten; back them up or move them, then rerun upgrade.
|
|
855
920
|
|
|
856
921
|
> `project-context/` and `developer-config.json` are **not touched** during upgrade.
|
|
857
922
|
|
|
923
|
+
`2.0.0` is a major release because skill naming, workflow contracts, progressive disclosure, and release checks changed. The published `1.1.0` OpenCode layout is covered by an automated upgrade test. For reproducible CI/bootstrap, pin the desired version; for interactive upgrades, use `@latest` as shown above.
|
|
924
|
+
|
|
858
925
|
### How to Call a Skill
|
|
859
926
|
|
|
860
927
|
```
|
|
@@ -863,33 +930,40 @@ Use the skill developer
|
|
|
863
930
|
Use the skill help
|
|
864
931
|
```
|
|
865
932
|
|
|
933
|
+
You normally do not need to remember skill names. OpenCode and Copilot advertise each skill's `name` and `description`, then the model selects a relevant skill. Requests that can mutate broad source-of-truth documents or start implementation require clear user intent; read-only routing and bounded workflows may activate automatically.
|
|
934
|
+
|
|
935
|
+
| Invocation policy | Skills |
|
|
936
|
+
|---|---|
|
|
937
|
+
| Explicit intent | `brainstorm-prd`, `brainstorm-architecture`, `brainstorm-schema`, `brainstorm-api`, `brainstorm-styleguide`, `brainstorm-rules`, `add-feature`, `spec-init` |
|
|
938
|
+
| Explicit implementation intent | `developer` — phrases such as "implement Phase 2" are sufficient; the skill name is not required |
|
|
939
|
+
| Model-auto router | `quick-dev` for bounded small implementation requests that still map clearly to the current project context |
|
|
940
|
+
| Both direct and automatic/orchestrated | `brainstorm-task`, `bug-fix`, `code-review`, `spec-audit`, `release-readiness`, `help`, `meet` |
|
|
941
|
+
| Primarily orchestrated | `spec-compliance`, called by execution/remediation workflows |
|
|
942
|
+
|
|
943
|
+
Agent Skills has no portable `user-invocable` or `disable-model-invocation` field. Copilot VS Code supports these as vendor extensions, but OpenCode ignores them. MACCA therefore keeps canonical frontmatter portable and enforces intent through descriptions, scope checks, and confirmation gates. Host-specific slash commands or permissions may be added as optional adapters, never as the only safety mechanism.
|
|
944
|
+
|
|
866
945
|
### Folder Structure
|
|
867
946
|
|
|
868
|
-
The example below reflects `npx macca-method install
|
|
947
|
+
The example below reflects `npx macca-method@latest install`. It creates shared MACCA files in `.agents/`, a namespaced MACCA lock, and one or more agent-specific skill folders based on the AI tools you selected.
|
|
869
948
|
|
|
870
949
|
```
|
|
871
950
|
your-project/
|
|
872
951
|
├── .agents/
|
|
873
952
|
│ ├── developer-config.json ← shared config across skills
|
|
874
|
-
│
|
|
953
|
+
│ ├── macca-tools.txt ← tools selected during install
|
|
954
|
+
│ ├── macca-managed-skills.txt ← internal manifest used by MACCA updates
|
|
955
|
+
│ ├── macca-lock.json ← MACCA package/version manifest
|
|
956
|
+
│ ├── macca-state.json ← hashes of installer-managed metadata
|
|
957
|
+
│ ├── macca-transaction.json ← exists only during/recovering an interrupted atomic update
|
|
958
|
+
│ └── skills/ ← if Codex or Kimi is selected
|
|
875
959
|
│
|
|
876
960
|
├── .github/skills/ ← if GitHub Copilot is selected
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
│ ├── brainstorm-styleguide/
|
|
884
|
-
│ ├── brainstorm-task/
|
|
885
|
-
│ ├── bug-fix/
|
|
886
|
-
│ ├── code-review/
|
|
887
|
-
│ ├── developer/
|
|
888
|
-
│ ├── help/
|
|
889
|
-
│ ├── rapat/
|
|
890
|
-
│ ├── spec-audit/
|
|
891
|
-
│ ├── spec-compliance/
|
|
892
|
-
│ └── spec-init/
|
|
961
|
+
├── .cursor/skills/ ← if Cursor is selected
|
|
962
|
+
├── .claude/skills/ ← if Claude Code is selected
|
|
963
|
+
├── .windsurf/skills/ ← if Windsurf is selected
|
|
964
|
+
├── .gemini/skills/ ← if Gemini CLI is selected
|
|
965
|
+
├── .opencode/skills/ ← if OpenCode is selected
|
|
966
|
+
├── .kilo/skills/ ← if Kilo Code is selected
|
|
893
967
|
│
|
|
894
968
|
├── project-context/
|
|
895
969
|
│ ├── PRD.md
|
|
@@ -906,6 +980,8 @@ your-project/
|
|
|
906
980
|
└── ... (your project code)
|
|
907
981
|
```
|
|
908
982
|
|
|
983
|
+
Each installed skills folder contains `_shared` plus these 18 MACCA skills: `add-feature`, `brainstorm-api`, `brainstorm-architecture`, `brainstorm-prd`, `brainstorm-rules`, `brainstorm-schema`, `brainstorm-styleguide`, `brainstorm-task`, `bug-fix`, `code-review`, `developer`, `help`, `meet`, `quick-dev`, `release-readiness`, `spec-audit`, `spec-compliance`, and `spec-init`.
|
|
984
|
+
|
|
909
985
|
| AI Tool | Skills Folder |
|
|
910
986
|
|---------|---------------|
|
|
911
987
|
| GitHub Copilot | `.github/skills/` |
|
|
@@ -913,10 +989,12 @@ your-project/
|
|
|
913
989
|
| Claude Code | `.claude/skills/` |
|
|
914
990
|
| Windsurf | `.windsurf/skills/` |
|
|
915
991
|
| Gemini CLI | `.gemini/skills/` |
|
|
916
|
-
| OpenCode | `.opencode/
|
|
992
|
+
| OpenCode | `.opencode/skills/` |
|
|
917
993
|
| Kilo Code | `.kilo/skills/` |
|
|
918
994
|
| Codex (OpenAI) | `.agents/skills/` |
|
|
919
|
-
| Kimi CLI |
|
|
995
|
+
| Kimi CLI | `.agents/skills/` |
|
|
996
|
+
|
|
997
|
+
The installer validates path containment, refuses symlink escapes and unowned collisions, preserves `developer-config.json`, detects local drift through SHA-256 hashes, and journals install/upgrade transactions for recovery. CI runs the full package/install/upgrade suite on Ubuntu, Windows, and macOS with Node 18 and 22.
|
|
920
998
|
|
|
921
999
|
---
|
|
922
1000
|
|
|
@@ -947,7 +1025,8 @@ The `.agents/developer-config.json` file is shared config across skills. All ski
|
|
|
947
1025
|
},
|
|
948
1026
|
"brainstormPreferences": {
|
|
949
1027
|
"discussionMode": "one-by-one",
|
|
950
|
-
"recommendations": true
|
|
1028
|
+
"recommendations": true,
|
|
1029
|
+
"discoveryDepth": "standard"
|
|
951
1030
|
},
|
|
952
1031
|
"codeReviewPreferences": {
|
|
953
1032
|
"fixMode": "report-first"
|
|
@@ -958,7 +1037,7 @@ The `.agents/developer-config.json` file is shared config across skills. All ski
|
|
|
958
1037
|
"purpose": "Use when writing Laravel code",
|
|
959
1038
|
"paths": {
|
|
960
1039
|
"copilot": ".github/skills/laravel-best-practices/SKILL.md",
|
|
961
|
-
"opencode": ".opencode/
|
|
1040
|
+
"opencode": ".opencode/skills/laravel-best-practices/SKILL.md",
|
|
962
1041
|
"codex": ".agents/skills/laravel-best-practices/SKILL.md"
|
|
963
1042
|
}
|
|
964
1043
|
}
|
|
@@ -976,6 +1055,7 @@ The `.agents/developer-config.json` file is shared config across skills. All ski
|
|
|
976
1055
|
| `developerPreferences.scope` | `developer` (Step 0c) | `"frontend"`, `"backend"`, or `"fullstack"` |
|
|
977
1056
|
| `brainstormPreferences.discussionMode` | brainstorm-* skills | `"one-by-one"`, `"three-at-a-time"`, or `"all-at-once"` |
|
|
978
1057
|
| `brainstormPreferences.recommendations` | brainstorm-* skills | `true` = AI gives suggested answers for each question |
|
|
1058
|
+
| `brainstormPreferences.discoveryDepth` | brainstorm-* skills | `"quick"`, `"standard"`, or `"critical"`; inferred when absent, user-overridable |
|
|
979
1059
|
| `codeReviewPreferences.fixMode` | user / config runtime | `"report-first"` or `"fix-then-report"` |
|
|
980
1060
|
| `additionalSkills` | `developer` (Step 0b) | AI searches for the path in the workspace first, then asks only if it is not found |
|
|
981
1061
|
| `availableMCPs` | `developer` (Step 0b) | Available MCPs; only listed MCPs are used |
|
|
@@ -1001,11 +1081,14 @@ The `.agents/developer-config.json` file is shared config across skills. All ski
|
|
|
1001
1081
|
| **Acceptance Criteria** | Concrete conditions for a task to be considered done |
|
|
1002
1082
|
| **scope** | Developer work boundary: frontend-only, backend-only, or fullstack |
|
|
1003
1083
|
| **fixMode** | `code-review` preference: report first or fix immediately |
|
|
1084
|
+
| **discoveryDepth** | Brainstorm detail level independent from question batching: quick/standard/critical |
|
|
1004
1085
|
| **availableMCPs** | MCPs listed and available for use in this project |
|
|
1005
1086
|
| **Confidence Level** | In `spec-init`: High/Medium/Low for claims derived from codebase analysis |
|
|
1006
1087
|
| **Evidence Inputs** | In `spec-init`: files/sources used as evidence for a claim |
|
|
1007
1088
|
| **Plan status** | Plan file lifecycle status: `review` → `in-progress` → `code-review` → `done` |
|
|
1008
1089
|
| **Plan deviation** | Implementation drift from decisions in the plan (library, pattern, scope) — recorded by `code-review` if found |
|
|
1090
|
+
| **Definition of Done** | Phase-level evidence checklist derived from applicable specs and quality gates |
|
|
1091
|
+
| **Release readiness** | Report-only operational verdict for a specific candidate and target environment |
|
|
1009
1092
|
|
|
1010
1093
|
**Traceability ID Scheme:**
|
|
1011
1094
|
|
|
@@ -1016,8 +1099,8 @@ The `.agents/developer-config.json` file is shared config across skills. All ski
|
|
|
1016
1099
|
| `NFR-01` | Non-functional requirement in `PRD.md` |
|
|
1017
1100
|
| `AC-01` | Acceptance Criteria in `PRD.md` |
|
|
1018
1101
|
| `US-01` | User story in `PRD.md` |
|
|
1019
|
-
| `DATA-01` |
|
|
1020
|
-
| `API-01` |
|
|
1102
|
+
| `DATA-01` | Datastore-native entity/aggregate/collection/stream in `schema.md` |
|
|
1103
|
+
| `API-01` | REST/GraphQL/RPC/event operation in `api.md` |
|
|
1021
1104
|
| `RULE-01` | Rule in `rules.md` referenced across documents |
|
|
1022
1105
|
|
|
1023
1106
|
</details>
|
|
@@ -1029,21 +1112,21 @@ The `.agents/developer-config.json` file is shared config across skills. All ski
|
|
|
1029
1112
|
<details>
|
|
1030
1113
|
<summary>Do all spec documents need to be complete before coding?</summary>
|
|
1031
1114
|
|
|
1032
|
-
They do not need to be perfect.
|
|
1115
|
+
They do not need to be perfect. `architecture.md` is the hard execution prerequisite; `rules.md` and applicable PRD/schema/API/StyleGuide contracts are strongly recommended and missing required contracts create explicit verification gaps. The more complete the applicable specs are, the more accurately AI can work.
|
|
1033
1116
|
|
|
1034
1117
|
</details>
|
|
1035
1118
|
|
|
1036
1119
|
<details>
|
|
1037
1120
|
<summary>Can this be used for an existing project?</summary>
|
|
1038
1121
|
|
|
1039
|
-
Yes. Use `spec-init` — AI reads the codebase and generates
|
|
1122
|
+
Yes. Use `spec-init` — AI reads the codebase and generates evidence-backed specs. Every claim gets a confidence level and evidence source; decisions that cannot be proven are listed under `Missing Decisions` with the owning brainstorm skill.
|
|
1040
1123
|
|
|
1041
1124
|
</details>
|
|
1042
1125
|
|
|
1043
1126
|
<details>
|
|
1044
1127
|
<summary>Can AI make mistakes?</summary>
|
|
1045
1128
|
|
|
1046
|
-
Yes. That is why `spec-compliance` and `code-review` run
|
|
1129
|
+
Yes. That is why `spec-compliance` and `code-review` run after every phase. In the default `report-first` mode, AI reports all findings and waits for `fix`/approval before editing; in `fix-then-report`, actionable blocker/major findings are repaired and validated automatically.
|
|
1047
1130
|
|
|
1048
1131
|
</details>
|
|
1049
1132
|
|
|
@@ -1055,9 +1138,9 @@ After each task is complete, the developer writes a short reflection: 1 potentia
|
|
|
1055
1138
|
</details>
|
|
1056
1139
|
|
|
1057
1140
|
<details>
|
|
1058
|
-
<summary>
|
|
1141
|
+
<summary>When does developer write tests before implementation?</summary>
|
|
1059
1142
|
|
|
1060
|
-
|
|
1143
|
+
When `rules.md` selects TDD/test-first, the developer writes the failing test before implementation so behavior is explicit. Other projects may use test-with-change or another approved workflow; `Task.md`, `developer`, and `code-review` all follow that selected policy.
|
|
1061
1144
|
|
|
1062
1145
|
</details>
|
|
1063
1146
|
|
|
@@ -1071,7 +1154,7 @@ No. A bug is recorded only after **you confirm** that it is resolved. AI does no
|
|
|
1071
1154
|
<details>
|
|
1072
1155
|
<summary>Do I need to choose developer preferences in every session?</summary>
|
|
1073
1156
|
|
|
1074
|
-
No.
|
|
1157
|
+
No. Scope, work mode, additional skills, MCPs, review mode, brainstorm pacing, recommendations, and discovery depth are saved or inferred and reused. Future sessions ask only for missing material decisions.
|
|
1075
1158
|
|
|
1076
1159
|
</details>
|
|
1077
1160
|
|