macca-method 1.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/legacy-payloads.json +22 -0
- package/{skills-lock.json → .agents/macca-lock.json} +3 -2
- package/.agents/macca-managed-skills.txt +2 -1
- 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 +54 -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 +17 -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 +12 -7
- package/.agents/skills/brainstorm-api/SKILL.md +53 -196
- package/.agents/skills/brainstorm-api/assets/api.template.md +147 -0
- package/.agents/skills/brainstorm-architecture/SKILL.md +26 -129
- package/.agents/skills/brainstorm-architecture/assets/architecture.template.md +135 -0
- package/.agents/skills/brainstorm-prd/SKILL.md +23 -104
- package/.agents/skills/brainstorm-prd/assets/PRD.template.md +106 -0
- package/.agents/skills/brainstorm-rules/SKILL.md +19 -153
- package/.agents/skills/brainstorm-rules/assets/rules.template.md +127 -0
- package/.agents/skills/brainstorm-schema/SKILL.md +53 -117
- package/.agents/skills/brainstorm-schema/assets/schema.template.md +109 -0
- package/.agents/skills/brainstorm-styleguide/SKILL.md +21 -136
- package/.agents/skills/brainstorm-styleguide/assets/StyleGuide.template.md +147 -0
- package/.agents/skills/brainstorm-task/SKILL.md +24 -107
- package/.agents/skills/brainstorm-task/assets/Task.template.md +113 -0
- package/.agents/skills/bug-fix/SKILL.md +54 -56
- package/.agents/skills/code-review/SKILL.md +28 -19
- package/.agents/skills/code-review/references/review-checklist.md +24 -26
- package/.agents/skills/developer/SKILL.md +27 -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 +19 -16
- package/.agents/skills/meet/SKILL.md +170 -0
- package/.agents/skills/quick-dev/SKILL.md +32 -34
- package/.agents/skills/release-readiness/SKILL.md +151 -0
- package/.agents/skills/spec-audit/SKILL.md +39 -22
- package/.agents/skills/spec-compliance/SKILL.md +43 -40
- package/.agents/skills/spec-init/SKILL.md +31 -14
- package/README.md +181 -132
- package/bin/macca-method.js +779 -85
- package/flow.webp +0 -0
- package/image-macca-method.webp +0 -0
- package/package.json +12 -5
- package/scripts/run-skill-validator.js +24 -0
- package/scripts/test-install.js +430 -0
- package/scripts/test-upgrade-legacy.js +143 -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,46 +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
|
-
│ quick-dev (single focused task) │
|
|
67
|
-
│ ↓ (after each) │
|
|
68
|
-
│ spec-compliance → code-review │
|
|
69
|
-
└──────────────────────────────────────────────────────┘
|
|
70
|
-
```
|
|
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`.
|
|
71
48
|
|
|
72
49
|
All planning output documents are stored in `project-context/` in your project.
|
|
73
50
|
|
|
74
|
-
> **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.
|
|
75
52
|
|
|
76
53
|
---
|
|
77
54
|
|
|
78
55
|
## 3. Planning Skills
|
|
79
56
|
|
|
80
|
-
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:
|
|
81
58
|
1. **Pacing**: (A) one by one · (B) three at a time · (C) all at once
|
|
82
59
|
2. **Recommendations**: should AI provide suggested answers for each question?
|
|
83
60
|
|
|
84
|
-
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.
|
|
85
68
|
|
|
86
69
|
---
|
|
87
70
|
|
|
@@ -99,19 +82,19 @@ These choices are saved and reused in future sessions.
|
|
|
99
82
|
**Topics covered:**
|
|
100
83
|
1. Project Goal — long-term vision and what makes the project unique
|
|
101
84
|
2. Target Users — user personas, demographics, pain points
|
|
102
|
-
3. Problem Being Solved — real
|
|
85
|
+
3. Problem Being Solved — real problem, current workaround, and its cost/limitations
|
|
103
86
|
4. Main Features (MVP) — minimum features required in the first version
|
|
104
87
|
5. Business Rules — rules that must never be broken (for example: stock cannot go negative)
|
|
105
|
-
6.
|
|
106
|
-
7.
|
|
107
|
-
8.
|
|
108
|
-
9.
|
|
109
|
-
10.
|
|
110
|
-
11.
|
|
111
|
-
12.
|
|
112
|
-
13.
|
|
113
|
-
14.
|
|
114
|
-
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
|
|
115
98
|
|
|
116
99
|
**Important behavior:**
|
|
117
100
|
- Use `Traceability ID` (`FEAT-*`, `BR-*`, `AC-*`, `NFR-*`, `US-*`) so each requirement can be traced to tasks and code
|
|
@@ -136,14 +119,14 @@ These choices are saved and reused in future sessions.
|
|
|
136
119
|
|
|
137
120
|
**Topics covered:**
|
|
138
121
|
1. System Context — systems and external services that interact
|
|
139
|
-
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
|
|
140
123
|
3. Folder Structure — project file and directory organization
|
|
141
124
|
4. Design Patterns — architecture patterns (MVC, Clean Architecture, Feature-based, Hexagonal)
|
|
142
125
|
5. Authentication & Authorization — login method, JWT/session, RBAC
|
|
143
126
|
6. API Style — REST, GraphQL, or tRPC
|
|
144
127
|
7. State Management — Zustand, Redux, Context API, etc.
|
|
145
|
-
8.
|
|
146
|
-
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
|
|
147
130
|
10. Architecture Decision Records — major decisions and their reasoning
|
|
148
131
|
|
|
149
132
|
**Important behavior:**
|
|
@@ -168,15 +151,15 @@ These choices are saved and reused in future sessions.
|
|
|
168
151
|
**Topic count:** 5 topics
|
|
169
152
|
|
|
170
153
|
**Topics covered:**
|
|
171
|
-
1.
|
|
172
|
-
2.
|
|
173
|
-
3.
|
|
174
|
-
4. Relationships —
|
|
175
|
-
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
|
|
176
159
|
|
|
177
160
|
**Important behavior:**
|
|
178
|
-
- Give each
|
|
179
|
-
-
|
|
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)
|
|
180
163
|
|
|
181
164
|
</details>
|
|
182
165
|
|
|
@@ -187,23 +170,23 @@ These choices are saved and reused in future sessions.
|
|
|
187
170
|
|
|
188
171
|
**Persona:** @Fachri — Tech Lead
|
|
189
172
|
|
|
190
|
-
**Called when:** After
|
|
173
|
+
**Called when:** After applicable architecture/data decisions, or after architecture for a frontend consumer contract.
|
|
191
174
|
|
|
192
|
-
**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.
|
|
193
176
|
|
|
194
177
|
**Output:** `project-context/api.md`
|
|
195
178
|
|
|
196
179
|
**Topic count:** 5 topics
|
|
197
180
|
|
|
198
181
|
**Topics covered:**
|
|
199
|
-
1.
|
|
200
|
-
2. Error Catalog —
|
|
201
|
-
3.
|
|
202
|
-
4.
|
|
203
|
-
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
|
|
204
187
|
|
|
205
188
|
**Important behavior:**
|
|
206
|
-
- Give each
|
|
189
|
+
- Give each operation a `Traceability ID` (`API-*`)
|
|
207
190
|
- Agreed request and response formats are a **contract** verified by `spec-compliance` (SC-04) during coding
|
|
208
191
|
|
|
209
192
|
</details>
|
|
@@ -221,7 +204,7 @@ These choices are saved and reused in future sessions.
|
|
|
221
204
|
|
|
222
205
|
**Output:** `project-context/StyleGuide.md`
|
|
223
206
|
|
|
224
|
-
**Topic count:**
|
|
207
|
+
**Topic count:** 8 topics
|
|
225
208
|
|
|
226
209
|
**Topics covered:**
|
|
227
210
|
1. CSS Framework — Tailwind CSS (v3/v4), Bootstrap, CSS Modules, or custom
|
|
@@ -231,6 +214,7 @@ These choices are saved and reused in future sessions.
|
|
|
231
214
|
5. Component Styles — button, card, form input, modal, table — styling and states
|
|
232
215
|
6. Responsive & Breakpoints — sm/md/lg/xl breakpoints and layout changes
|
|
233
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
|
|
234
218
|
|
|
235
219
|
**Important behavior:**
|
|
236
220
|
- Agreed colors and spacing are a **contract** — `spec-compliance` (SC-06) flags arbitrary values outside this list
|
|
@@ -261,6 +245,8 @@ These choices are saved and reused in future sessions.
|
|
|
261
245
|
6. Git Workflow — commit message convention, branching strategy
|
|
262
246
|
7. `[FORBIDDEN]` Section — list of technical prohibitions that AI **must scan** before writing code
|
|
263
247
|
|
|
248
|
+
Conditional rules are generated only when applicable: structured logging, migrations, feature flags, generated code, and secret rotation.
|
|
249
|
+
|
|
264
250
|
**Important behavior:**
|
|
265
251
|
- The `[FORBIDDEN]` section is the first thing `developer` reads before coding
|
|
266
252
|
- If the `[FORBIDDEN]` section is missing, `spec-compliance` records it as a MINOR finding
|
|
@@ -280,7 +266,7 @@ These choices are saved and reused in future sessions.
|
|
|
280
266
|
|
|
281
267
|
**Output:** `project-context/Task.md`
|
|
282
268
|
|
|
283
|
-
**
|
|
269
|
+
**User clarification count:** 3 topics plus one automatic document-completeness check
|
|
284
270
|
|
|
285
271
|
**Clarification topics:**
|
|
286
272
|
1. Phase Priority Order — implementation order, which features must finish first
|
|
@@ -295,8 +281,9 @@ These choices are saved and reused in future sessions.
|
|
|
295
281
|
**Important behavior:**
|
|
296
282
|
- Tasks are **not created from guesses** — all tasks are derived from the spec documents
|
|
297
283
|
- Every task has concrete, verifiable `Acceptance Criteria`
|
|
298
|
-
-
|
|
284
|
+
- Testing order follows `rules.md`: test-first when explicitly selected, otherwise test-with-change or the project's approved workflow
|
|
299
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`
|
|
300
287
|
|
|
301
288
|
</details>
|
|
302
289
|
|
|
@@ -318,12 +305,12 @@ These choices are saved and reused in future sessions.
|
|
|
318
305
|
**Step 0 — Identify name & project**
|
|
319
306
|
Read `.agents/developer-config.json`. If `name` or `project` is missing, AI asks once and saves the answer.
|
|
320
307
|
|
|
321
|
-
**
|
|
308
|
+
**Additional skills & MCP setup** (`references/onboarding.md`)
|
|
322
309
|
|
|
323
310
|
*Additional Skills:*
|
|
324
311
|
- If `additionalSkills` already exists in config → use it directly
|
|
325
312
|
- If not → AI asks once: *"Are there any additional skills for this project?"*
|
|
326
|
-
- 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.
|
|
327
314
|
- When working on a relevant task, AI **must read** `SKILL.md` from that skill before writing code.
|
|
328
315
|
|
|
329
316
|
*MCP (Model Context Protocol):*
|
|
@@ -331,7 +318,7 @@ Read `.agents/developer-config.json`. If `name` or `project` is missing, AI asks
|
|
|
331
318
|
- If not → AI asks once: *"Which MCPs are available in your workspace?"*
|
|
332
319
|
- Only listed MCPs will be used.
|
|
333
320
|
|
|
334
|
-
**
|
|
321
|
+
**Developer scope** (`references/onboarding.md`)
|
|
335
322
|
- If `developerPreferences.scope` already exists → use it directly
|
|
336
323
|
- If not → AI asks once:
|
|
337
324
|
```
|
|
@@ -342,7 +329,7 @@ Read `.agents/developer-config.json`. If `name` or `project` is missing, AI asks
|
|
|
342
329
|
```
|
|
343
330
|
- This scope is enforced in every phase: AI will not create/change files outside the scope.
|
|
344
331
|
|
|
345
|
-
**
|
|
332
|
+
**Work mode** (`references/onboarding.md`)
|
|
346
333
|
- If `developerPreferences.workMode` already exists → use it directly
|
|
347
334
|
- If not → AI asks once:
|
|
348
335
|
```
|
|
@@ -357,7 +344,7 @@ Read `.agents/developer-config.json`. If `name` or `project` is missing, AI asks
|
|
|
357
344
|
status: done ← when code-review is complete
|
|
358
345
|
```
|
|
359
346
|
|
|
360
|
-
**
|
|
347
|
+
**Selecting relevant specs** (`references/execute-task.md`)
|
|
361
348
|
|
|
362
349
|
| Condition | Read |
|
|
363
350
|
|---------|--------|
|
|
@@ -369,13 +356,13 @@ Read `.agents/developer-config.json`. If `name` or `project` is missing, AI asks
|
|
|
369
356
|
|
|
370
357
|
Scope enforcement: if `scope=frontend`, AI does not touch backend files. If `scope=backend`, AI does not touch frontend files.
|
|
371
358
|
|
|
372
|
-
**
|
|
359
|
+
**Executing tasks** (`references/execute-task.md`)
|
|
373
360
|
|
|
374
361
|
For each task:
|
|
375
362
|
1. Understand the task and acceptance criteria
|
|
376
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)
|
|
377
364
|
3. Write an I/O contract for non-trivial functions
|
|
378
|
-
4.
|
|
365
|
+
4. Follow the testing workflow in `rules.md`: test-first only when selected, otherwise test-with-change or the approved project policy
|
|
379
366
|
5. After finishing, write `[SELF-REVIEW]`:
|
|
380
367
|
```
|
|
381
368
|
1. Security risk: [1 potential issue — or "none identified"]
|
|
@@ -384,18 +371,23 @@ For each task:
|
|
|
384
371
|
```
|
|
385
372
|
6. Run validation, update `Task.md` (`[ ]` → `[x]`)
|
|
386
373
|
|
|
387
|
-
|
|
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
|
+
|
|
379
|
+
**Closing a phase** (`references/close-phase.md`)
|
|
388
380
|
1. Show a phase summary
|
|
389
|
-
2.
|
|
390
|
-
3.
|
|
391
|
-
4.
|
|
392
|
-
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
|
|
393
386
|
|
|
394
387
|
**MCPs used (if listed in `availableMCPs`):**
|
|
395
|
-
- `context7` —
|
|
396
|
-
- `
|
|
397
|
-
-
|
|
398
|
-
- `exa` — changelog, breaking changes, verify active maintenance
|
|
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
|
|
399
391
|
|
|
400
392
|
</details>
|
|
401
393
|
|
|
@@ -406,7 +398,7 @@ For each task:
|
|
|
406
398
|
|
|
407
399
|
**Persona:** @Firdaus — Expert Developer
|
|
408
400
|
|
|
409
|
-
**Called when:** A small, targeted change is needed (color fix, layout tweak, copy edit, minor logic adjustment)
|
|
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.
|
|
410
402
|
|
|
411
403
|
**Not for:** new features, database migrations, new API endpoints, or changes touching more than 5 files — use `developer` instead.
|
|
412
404
|
|
|
@@ -416,7 +408,7 @@ For each task:
|
|
|
416
408
|
Same as `developer`. Reads `.agents/developer-config.json`, greets by name and project.
|
|
417
409
|
|
|
418
410
|
**Step 0b & 0c — Additional Skills, MCP, Scope**
|
|
419
|
-
Same as `developer`. Reads from config if already set
|
|
411
|
+
Same setup policy as `developer`. Reads from config if already set and asks only for missing required setup.
|
|
420
412
|
|
|
421
413
|
**Step 1 — Pre-flight summary** *(unique to quick-dev)*
|
|
422
414
|
|
|
@@ -435,13 +427,13 @@ Need confirmation before proceeding: ← omit if none
|
|
|
435
427
|
```
|
|
436
428
|
- Non-blocking ambiguities go under "Assumptions", not as questions
|
|
437
429
|
- Missing specs (e.g. no `StyleGuide.md` but task touches UI) are flagged here
|
|
438
|
-
- Waits
|
|
430
|
+
- Waits only when a blocking ambiguity exists; otherwise proceeds in the same turn with listed assumptions
|
|
439
431
|
|
|
440
432
|
**Step 2 — Read relevant specs**
|
|
441
433
|
Same table as `developer` — reads only what the task needs.
|
|
442
434
|
|
|
443
435
|
**Step 3 — Execute**
|
|
444
|
-
|
|
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.
|
|
445
437
|
|
|
446
438
|
**Step 4 — Update Task.md**
|
|
447
439
|
|
|
@@ -454,6 +446,8 @@ Same as `developer` Step 3 (understand → clarify → I/O contract → code →
|
|
|
454
446
|
**Step 5 — Quality gates**
|
|
455
447
|
Runs full `spec-compliance` then `code-review`. Both follow `fixMode` from config.
|
|
456
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
|
+
|
|
457
451
|
**Step 6 — Final report**
|
|
458
452
|
```
|
|
459
453
|
Quick Dev — Done
|
|
@@ -481,13 +475,13 @@ Remaining ambiguities: ← omit if none
|
|
|
481
475
|
|
|
482
476
|
| ID | Aspect | Documents Read |
|
|
483
477
|
|----|-------|---------------------|
|
|
484
|
-
| SC-01 | PRD Compliance |
|
|
485
|
-
| SC-02 | Architecture Compliance |
|
|
486
|
-
| SC-03 | Schema Compliance |
|
|
487
|
-
| SC-04 | API Compliance |
|
|
488
|
-
| SC-05 | Rules Compliance | `
|
|
489
|
-
| SC-06 | StyleGuide Compliance |
|
|
490
|
-
| 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 |
|
|
491
485
|
| SC-08 | Scope Compliance | `developer-config.json` — frontend/backend scope respected, no files outside scope |
|
|
492
486
|
|
|
493
487
|
**Severity:** `💥 BLOCKER` → fix now, re-run | `🔴 MAJOR` → fix before the next phase | `⚠️ MINOR` → discuss | `✅ PASS` → continue to `code-review`
|
|
@@ -517,7 +511,7 @@ If this field is missing, the default is `report-first`. To change it, the user
|
|
|
517
511
|
| Tier | Item |
|
|
518
512
|
|------|------|
|
|
519
513
|
| 💥 BLOCKER | CR-01 Wrong imports · CR-02 Runtime errors · CR-03 Null/undefined · CR-04 SQL injection · CR-05 Deprecated methods |
|
|
520
|
-
| 🔴 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` |
|
|
521
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 |
|
|
522
516
|
| ℹ️ INFO | CR-25 Missing comments · CR-26 Jargon · CR-27 Comment quality |
|
|
523
517
|
|
|
@@ -648,7 +642,7 @@ Recommended next steps: ...
|
|
|
648
642
|
**Two modes:**
|
|
649
643
|
|
|
650
644
|
**Project Mode** — audit `project-context/`
|
|
651
|
-
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?
|
|
652
646
|
|
|
653
647
|
**Framework Mode** — audit MACCA itself
|
|
654
648
|
Checks consistency *between* skill instructions: are README, skill docs, and workflow aligned, or do they conflict?
|
|
@@ -676,25 +670,26 @@ Mode B — Guided Generate: one document → you review → confirm → continue
|
|
|
676
670
|
|
|
677
671
|
**Generation order:** `architecture.md` → `rules.md` → `schema.md` → `api.md` → `StyleGuide.md` → `PRD.md`
|
|
678
672
|
|
|
679
|
-
`PRD.md` is created last because it is
|
|
673
|
+
`PRD.md` is created last because it is synthesized from observed behavior, not guessed intent.
|
|
680
674
|
|
|
681
675
|
**Each generated document includes:**
|
|
682
676
|
- **Evidence Inputs** — files/sources used as the basis for each claim
|
|
683
677
|
- **Confidence Level** per claim: *High* (seen directly in code) / *Medium* (strong inference) / *Low* (guess, needs verification)
|
|
684
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
|
|
685
680
|
|
|
686
681
|
</details>
|
|
687
682
|
|
|
688
683
|
---
|
|
689
684
|
|
|
690
685
|
<details>
|
|
691
|
-
<summary><strong>
|
|
686
|
+
<summary><strong>meet</strong> — Single-round multi-persona team meeting</summary>
|
|
692
687
|
|
|
693
688
|
**Persona:** @Galbi (facilitator)
|
|
694
689
|
|
|
695
690
|
**Called when:** Any time you need perspectives from several specialties at once.
|
|
696
691
|
|
|
697
|
-
**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.
|
|
698
693
|
|
|
699
694
|
**Available personas:**
|
|
700
695
|
- `@Galbi` — Project Manager: scope, priorities, business impact
|
|
@@ -707,12 +702,38 @@ Mode B — Guided Generate: one document → you review → confirm → continue
|
|
|
707
702
|
|
|
708
703
|
---
|
|
709
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
|
+
|
|
710
731
|
## 6. The MACCA AI Team
|
|
711
732
|
|
|
712
733
|
| Persona | Role | Skills |
|
|
713
734
|
|---------|------|--------|
|
|
714
|
-
| **@Galbi** | Project Manager | `brainstorm-prd`, `brainstorm-task`, `add-feature`, `help`, `
|
|
715
|
-
| **@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` |
|
|
716
737
|
| **@Akram** | UI/UX Designer | `brainstorm-styleguide` |
|
|
717
738
|
| **@Firdaus** | Expert Developer | `developer`, `quick-dev` |
|
|
718
739
|
| **@Ikhsan** | Debugger | `bug-fix` |
|
|
@@ -723,6 +744,10 @@ Mode B — Guided Generate: one document → you review → confirm → continue
|
|
|
723
744
|
|
|
724
745
|
## 7. Workflow
|
|
725
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
|
+
|
|
726
751
|
<details>
|
|
727
752
|
<summary><strong>New Project</strong> — Start from scratch</summary>
|
|
728
753
|
|
|
@@ -746,6 +771,7 @@ Step 3b: Define the API (if any)
|
|
|
746
771
|
Step 3c: Define the UI design (optional)
|
|
747
772
|
→ Call: brainstorm-styleguide
|
|
748
773
|
→ Output: project-context/StyleGuide.md
|
|
774
|
+
→ Adds UI constraints only; it does not replace Step 3a, Step 3b, or Step 4
|
|
749
775
|
|
|
750
776
|
Step 4: Set code standards
|
|
751
777
|
→ Call: brainstorm-rules
|
|
@@ -762,8 +788,12 @@ Step 7: Start coding
|
|
|
762
788
|
→ Call: developer
|
|
763
789
|
→ Per task: code → validate → [SELF-REVIEW]
|
|
764
790
|
→ Per phase: spec-compliance → code-review → next phase
|
|
765
|
-
→ If all tasks are complete but
|
|
766
|
-
→ For small targeted fixes (color, layout, copy, minor logic): use `quick-dev
|
|
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)
|
|
767
797
|
```
|
|
768
798
|
|
|
769
799
|
> Not sure where to start? Call `help`.
|
|
@@ -830,11 +860,12 @@ What happens:
|
|
|
830
860
|
1. You describe the bug
|
|
831
861
|
2. AI checks bug-log.md — has it happened before?
|
|
832
862
|
3. AI checks all callers of the broken code
|
|
833
|
-
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
|
|
834
864
|
5. Apply the fix → spec-compliance + code-review
|
|
835
865
|
6. You confirm the bug is resolved
|
|
836
866
|
7. AI adds regression prevention
|
|
837
|
-
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
|
|
838
869
|
```
|
|
839
870
|
|
|
840
871
|
</details>
|
|
@@ -855,6 +886,8 @@ This is the supported cross-platform path for Windows, Linux, and macOS.
|
|
|
855
886
|
npx macca-method@latest install
|
|
856
887
|
```
|
|
857
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
|
+
|
|
858
891
|
The CLI asks you to choose the AI tool, then prompts for the developer name, project name, and language preferences.
|
|
859
892
|
|
|
860
893
|
To see the supported AI tool names before installing, run:
|
|
@@ -869,18 +902,7 @@ You can also do unattended installs, for example:
|
|
|
869
902
|
npx macca-method@latest install --tool github-copilot --tool codex --yes
|
|
870
903
|
```
|
|
871
904
|
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
**Alternative — `skills` CLI**
|
|
875
|
-
|
|
876
|
-
```bash
|
|
877
|
-
npx skills add firdaus12p/MACCA-METHOD --list
|
|
878
|
-
npx skills add firdaus12p/MACCA-METHOD --skill '*' -a github-copilot
|
|
879
|
-
```
|
|
880
|
-
|
|
881
|
-
You can swap `github-copilot` with another supported agent such as `claude-code`, `cursor`, `codex`, `opencode`, `windsurf`, or `gemini-cli`.
|
|
882
|
-
|
|
883
|
-
> `npx skills add` installs the skills only. It does **not** create `.agents/developer-config.json`, `.agents/macca-tools.txt`, `.agents/macca-managed-skills.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.
|
|
884
906
|
|
|
885
907
|
### Update to the Latest Version
|
|
886
908
|
|
|
@@ -890,10 +912,16 @@ npx macca-method@latest upgrade
|
|
|
890
912
|
|
|
891
913
|
Run this whenever you want to refresh an existing MACCA setup to the newest published skills.
|
|
892
914
|
|
|
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.
|
|
916
|
+
|
|
893
917
|
The updater uses the MACCA files inside `.agents/` to know which installed skill folders should be refreshed.
|
|
894
918
|
|
|
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.
|
|
920
|
+
|
|
895
921
|
> `project-context/` and `developer-config.json` are **not touched** during upgrade.
|
|
896
922
|
|
|
923
|
+
`2.0.x` is the major-release line for the skill naming, workflow contract, progressive disclosure, and release-check changes. 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
|
+
|
|
897
925
|
### How to Call a Skill
|
|
898
926
|
|
|
899
927
|
```
|
|
@@ -902,9 +930,21 @@ Use the skill developer
|
|
|
902
930
|
Use the skill help
|
|
903
931
|
```
|
|
904
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
|
+
|
|
905
945
|
### Folder Structure
|
|
906
946
|
|
|
907
|
-
The example below reflects `npx macca-method@latest install`. It creates shared MACCA files in `.agents/`, a
|
|
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.
|
|
908
948
|
|
|
909
949
|
```
|
|
910
950
|
your-project/
|
|
@@ -912,16 +952,18 @@ your-project/
|
|
|
912
952
|
│ ├── developer-config.json ← shared config across skills
|
|
913
953
|
│ ├── macca-tools.txt ← tools selected during install
|
|
914
954
|
│ ├── macca-managed-skills.txt ← internal manifest used by MACCA updates
|
|
915
|
-
│
|
|
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
|
|
916
959
|
│
|
|
917
960
|
├── .github/skills/ ← if GitHub Copilot is selected
|
|
918
961
|
├── .cursor/skills/ ← if Cursor is selected
|
|
919
962
|
├── .claude/skills/ ← if Claude Code is selected
|
|
920
963
|
├── .windsurf/skills/ ← if Windsurf is selected
|
|
921
964
|
├── .gemini/skills/ ← if Gemini CLI is selected
|
|
922
|
-
├── .opencode/
|
|
965
|
+
├── .opencode/skills/ ← if OpenCode is selected
|
|
923
966
|
├── .kilo/skills/ ← if Kilo Code is selected
|
|
924
|
-
├── skills-lock.json ← skill manifest/version lock used by MACCA
|
|
925
967
|
│
|
|
926
968
|
├── project-context/
|
|
927
969
|
│ ├── PRD.md
|
|
@@ -938,7 +980,7 @@ your-project/
|
|
|
938
980
|
└── ... (your project code)
|
|
939
981
|
```
|
|
940
982
|
|
|
941
|
-
Each installed skills folder contains `_shared` plus these MACCA skills: `add-feature`, `brainstorm-api`, `brainstorm-architecture`, `brainstorm-prd`, `brainstorm-rules`, `brainstorm-schema`, `brainstorm-styleguide`, `brainstorm-task`, `bug-fix`, `code-review`, `developer`, `help`, `
|
|
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`.
|
|
942
984
|
|
|
943
985
|
| AI Tool | Skills Folder |
|
|
944
986
|
|---------|---------------|
|
|
@@ -947,10 +989,12 @@ Each installed skills folder contains `_shared` plus these MACCA skills: `add-fe
|
|
|
947
989
|
| Claude Code | `.claude/skills/` |
|
|
948
990
|
| Windsurf | `.windsurf/skills/` |
|
|
949
991
|
| Gemini CLI | `.gemini/skills/` |
|
|
950
|
-
| OpenCode | `.opencode/
|
|
992
|
+
| OpenCode | `.opencode/skills/` |
|
|
951
993
|
| Kilo Code | `.kilo/skills/` |
|
|
952
994
|
| Codex (OpenAI) | `.agents/skills/` |
|
|
953
|
-
| 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.
|
|
954
998
|
|
|
955
999
|
---
|
|
956
1000
|
|
|
@@ -981,7 +1025,8 @@ The `.agents/developer-config.json` file is shared config across skills. All ski
|
|
|
981
1025
|
},
|
|
982
1026
|
"brainstormPreferences": {
|
|
983
1027
|
"discussionMode": "one-by-one",
|
|
984
|
-
"recommendations": true
|
|
1028
|
+
"recommendations": true,
|
|
1029
|
+
"discoveryDepth": "standard"
|
|
985
1030
|
},
|
|
986
1031
|
"codeReviewPreferences": {
|
|
987
1032
|
"fixMode": "report-first"
|
|
@@ -992,7 +1037,7 @@ The `.agents/developer-config.json` file is shared config across skills. All ski
|
|
|
992
1037
|
"purpose": "Use when writing Laravel code",
|
|
993
1038
|
"paths": {
|
|
994
1039
|
"copilot": ".github/skills/laravel-best-practices/SKILL.md",
|
|
995
|
-
"opencode": ".opencode/
|
|
1040
|
+
"opencode": ".opencode/skills/laravel-best-practices/SKILL.md",
|
|
996
1041
|
"codex": ".agents/skills/laravel-best-practices/SKILL.md"
|
|
997
1042
|
}
|
|
998
1043
|
}
|
|
@@ -1006,13 +1051,14 @@ The `.agents/developer-config.json` file is shared config across skills. All ski
|
|
|
1006
1051
|
| `name` | `developer` (Step 0) | Asked once |
|
|
1007
1052
|
| `project` | `developer` (Step 0) | Asked once |
|
|
1008
1053
|
| `languagePreferences` | installer / first skill | Communication language and document language |
|
|
1009
|
-
| `developerPreferences.workMode` | `developer` (
|
|
1010
|
-
| `developerPreferences.scope` | `developer` (
|
|
1054
|
+
| `developerPreferences.workMode` | `developer` (`references/onboarding.md` § Work Mode) | `"direct"` or `"plan-first"` |
|
|
1055
|
+
| `developerPreferences.scope` | `developer` (`references/onboarding.md` § Developer Scope) | `"frontend"`, `"backend"`, or `"fullstack"` |
|
|
1011
1056
|
| `brainstormPreferences.discussionMode` | brainstorm-* skills | `"one-by-one"`, `"three-at-a-time"`, or `"all-at-once"` |
|
|
1012
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 |
|
|
1013
1059
|
| `codeReviewPreferences.fixMode` | user / config runtime | `"report-first"` or `"fix-then-report"` |
|
|
1014
|
-
| `additionalSkills` | `developer` (
|
|
1015
|
-
| `availableMCPs` | `developer` (
|
|
1060
|
+
| `additionalSkills` | `developer` (`references/onboarding.md` § Additional Skills and MCPs) | AI searches for the path in the workspace first, then asks only if it is not found |
|
|
1061
|
+
| `availableMCPs` | `developer` (`references/onboarding.md` § Additional Skills and MCPs) | Available MCPs; only listed MCPs are used |
|
|
1016
1062
|
|
|
1017
1063
|
**Rule:** all skills must **merge**, not overwrite the file. Unknown fields must be preserved.
|
|
1018
1064
|
|
|
@@ -1035,11 +1081,14 @@ The `.agents/developer-config.json` file is shared config across skills. All ski
|
|
|
1035
1081
|
| **Acceptance Criteria** | Concrete conditions for a task to be considered done |
|
|
1036
1082
|
| **scope** | Developer work boundary: frontend-only, backend-only, or fullstack |
|
|
1037
1083
|
| **fixMode** | `code-review` preference: report first or fix immediately |
|
|
1084
|
+
| **discoveryDepth** | Brainstorm detail level independent from question batching: quick/standard/critical |
|
|
1038
1085
|
| **availableMCPs** | MCPs listed and available for use in this project |
|
|
1039
1086
|
| **Confidence Level** | In `spec-init`: High/Medium/Low for claims derived from codebase analysis |
|
|
1040
1087
|
| **Evidence Inputs** | In `spec-init`: files/sources used as evidence for a claim |
|
|
1041
1088
|
| **Plan status** | Plan file lifecycle status: `review` → `in-progress` → `code-review` → `done` |
|
|
1042
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 |
|
|
1043
1092
|
|
|
1044
1093
|
**Traceability ID Scheme:**
|
|
1045
1094
|
|
|
@@ -1050,8 +1099,8 @@ The `.agents/developer-config.json` file is shared config across skills. All ski
|
|
|
1050
1099
|
| `NFR-01` | Non-functional requirement in `PRD.md` |
|
|
1051
1100
|
| `AC-01` | Acceptance Criteria in `PRD.md` |
|
|
1052
1101
|
| `US-01` | User story in `PRD.md` |
|
|
1053
|
-
| `DATA-01` |
|
|
1054
|
-
| `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` |
|
|
1055
1104
|
| `RULE-01` | Rule in `rules.md` referenced across documents |
|
|
1056
1105
|
|
|
1057
1106
|
</details>
|
|
@@ -1063,21 +1112,21 @@ The `.agents/developer-config.json` file is shared config across skills. All ski
|
|
|
1063
1112
|
<details>
|
|
1064
1113
|
<summary>Do all spec documents need to be complete before coding?</summary>
|
|
1065
1114
|
|
|
1066
|
-
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.
|
|
1067
1116
|
|
|
1068
1117
|
</details>
|
|
1069
1118
|
|
|
1070
1119
|
<details>
|
|
1071
1120
|
<summary>Can this be used for an existing project?</summary>
|
|
1072
1121
|
|
|
1073
|
-
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.
|
|
1074
1123
|
|
|
1075
1124
|
</details>
|
|
1076
1125
|
|
|
1077
1126
|
<details>
|
|
1078
1127
|
<summary>Can AI make mistakes?</summary>
|
|
1079
1128
|
|
|
1080
|
-
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.
|
|
1081
1130
|
|
|
1082
1131
|
</details>
|
|
1083
1132
|
|
|
@@ -1089,9 +1138,9 @@ After each task is complete, the developer writes a short reflection: 1 potentia
|
|
|
1089
1138
|
</details>
|
|
1090
1139
|
|
|
1091
1140
|
<details>
|
|
1092
|
-
<summary>
|
|
1141
|
+
<summary>When does developer write tests before implementation?</summary>
|
|
1093
1142
|
|
|
1094
|
-
|
|
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.
|
|
1095
1144
|
|
|
1096
1145
|
</details>
|
|
1097
1146
|
|
|
@@ -1105,7 +1154,7 @@ No. A bug is recorded only after **you confirm** that it is resolved. AI does no
|
|
|
1105
1154
|
<details>
|
|
1106
1155
|
<summary>Do I need to choose developer preferences in every session?</summary>
|
|
1107
1156
|
|
|
1108
|
-
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.
|
|
1109
1158
|
|
|
1110
1159
|
</details>
|
|
1111
1160
|
|