ac-framework 1.9.4 → 1.9.5

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.
Files changed (62) hide show
  1. package/README.md +8 -0
  2. package/bin/postinstall.js +2 -0
  3. package/framework/mobile_development/.agent/workflows/ac-lite.md +70 -179
  4. package/framework/mobile_development/.agent/workflows/ac.md +226 -410
  5. package/framework/mobile_development/.amazonq/prompts/ac-lite.md +70 -179
  6. package/framework/mobile_development/.amazonq/prompts/ac.md +226 -410
  7. package/framework/mobile_development/.antigravity/workflows/ac-lite.md +70 -179
  8. package/framework/mobile_development/.antigravity/workflows/ac.md +226 -410
  9. package/framework/mobile_development/.augment/commands/ac-lite.md +70 -179
  10. package/framework/mobile_development/.augment/commands/ac.md +226 -410
  11. package/framework/mobile_development/.claude/commands/opsx/ac-lite.md +70 -179
  12. package/framework/mobile_development/.claude/commands/opsx/ac.md +226 -410
  13. package/framework/mobile_development/.cline/commands/opsx/ac-lite.md +70 -179
  14. package/framework/mobile_development/.cline/commands/opsx/ac.md +226 -410
  15. package/framework/mobile_development/.clinerules/workflows/ac-lite.md +70 -179
  16. package/framework/mobile_development/.clinerules/workflows/ac.md +226 -410
  17. package/framework/mobile_development/.codebuddy/commands/opsx/ac-lite.md +70 -179
  18. package/framework/mobile_development/.codebuddy/commands/opsx/ac.md +226 -410
  19. package/framework/mobile_development/.continue/prompts/ac-lite.md +70 -179
  20. package/framework/mobile_development/.continue/prompts/ac.md +226 -410
  21. package/framework/mobile_development/.cospec/openspec/commands/ac-lite.md +70 -179
  22. package/framework/mobile_development/.cospec/openspec/commands/ac.md +226 -410
  23. package/framework/mobile_development/.crush/commands/opsx/ac-lite.md +70 -179
  24. package/framework/mobile_development/.crush/commands/opsx/ac.md +226 -410
  25. package/framework/mobile_development/.cursor/commands/ac-lite.md +70 -179
  26. package/framework/mobile_development/.cursor/commands/ac.md +226 -410
  27. package/framework/mobile_development/.factory/commands/ac-lite.md +70 -179
  28. package/framework/mobile_development/.factory/commands/ac.md +226 -410
  29. package/framework/mobile_development/.gemini/commands/opsx/ac-lite.md +70 -179
  30. package/framework/mobile_development/.gemini/commands/opsx/ac.md +226 -410
  31. package/framework/mobile_development/.github/prompts/ac-lite.md +70 -179
  32. package/framework/mobile_development/.github/prompts/ac.md +226 -410
  33. package/framework/mobile_development/.github/prompts/ac.prompt.md +282 -177
  34. package/framework/mobile_development/.iflow/commands/ac-lite.md +70 -179
  35. package/framework/mobile_development/.iflow/commands/ac.md +226 -410
  36. package/framework/mobile_development/.kilocode/workflows/ac-lite.md +70 -179
  37. package/framework/mobile_development/.kilocode/workflows/ac.md +226 -410
  38. package/framework/mobile_development/.kimi/workflows/ac-lite.md +70 -179
  39. package/framework/mobile_development/.kimi/workflows/ac.md +226 -410
  40. package/framework/mobile_development/.opencode/command/ac-lite.md +70 -179
  41. package/framework/mobile_development/.opencode/command/ac.md +226 -410
  42. package/framework/mobile_development/.qoder/commands/opsx/ac-lite.md +70 -179
  43. package/framework/mobile_development/.qoder/commands/opsx/ac.md +226 -410
  44. package/framework/mobile_development/.qwen/commands/ac-lite.md +70 -179
  45. package/framework/mobile_development/.qwen/commands/ac.md +226 -410
  46. package/framework/mobile_development/.roo/commands/ac-lite.md +70 -179
  47. package/framework/mobile_development/.roo/commands/ac.md +226 -410
  48. package/framework/mobile_development/.windsurf/workflows/ac-lite.md +70 -179
  49. package/framework/mobile_development/.windsurf/workflows/ac.md +226 -410
  50. package/framework/mobile_development/AGENTS.md +205 -416
  51. package/framework/mobile_development/CLAUDE.md +205 -416
  52. package/framework/mobile_development/GEMINI.md +205 -416
  53. package/framework/mobile_development/copilot-instructions.md +205 -416
  54. package/framework/new_project/.opencode/command/ac.md +27 -0
  55. package/framework/new_project/AGENTS.md +27 -0
  56. package/framework/web_development/.opencode/command/ac.md +27 -0
  57. package/framework/web_development/AGENTS.md +27 -0
  58. package/package.json +1 -1
  59. package/src/commands/agents.js +71 -2
  60. package/src/commands/init.js +33 -0
  61. package/src/mcp/collab-server.js +198 -0
  62. package/src/services/mcp-installer.js +82 -54
package/README.md CHANGED
@@ -59,6 +59,8 @@ The CLI now guides you through:
59
59
  4. optionally initialize NexusVault persistent memory and MCP connections
60
60
  5. optionally enable SynapseGrid collaborative agents (auto-installs OpenCode + tmux)
61
61
 
62
+ If enabled, `acfm init` also auto-installs the optional SynapseGrid MCP server into detected assistants.
63
+
62
64
  ### 2. Initialize the spec-driven workspace
63
65
 
64
66
  ```bash
@@ -139,6 +141,8 @@ Each role runs in turn against a shared, accumulating context so outputs from on
139
141
  | Command | Description |
140
142
  |---|---|
141
143
  | `acfm agents setup` | Install optional dependencies (`opencode` and `tmux`) |
144
+ | `acfm agents install-mcps` | Install SynapseGrid MCP server for detected assistants |
145
+ | `acfm agents uninstall-mcps` | Remove SynapseGrid MCP server from assistants |
142
146
  | `acfm agents start --task "..."` | Start a SynapseGrid collaborative session |
143
147
  | `acfm agents resume` | Resume a previous session and recreate workers if needed |
144
148
  | `acfm agents list` | List recent SynapseGrid sessions |
@@ -213,6 +217,10 @@ The current MCP installer supports these assistant config targets:
213
217
  - Gemini
214
218
  - Codex
215
219
 
220
+ MCP server IDs installed by AC Framework:
221
+ - `ac-framework-memory` (NexusVault memory tools)
222
+ - `ac-framework-collab` (SynapseGrid collaborative session tools)
223
+
216
224
  ## Spec-Driven Methodology
217
225
 
218
226
  AC Framework is built around a spec-driven way of working where the AI should understand and plan before coding.
@@ -35,6 +35,8 @@ console.log(' acfm memory uninstall-mcps Uninstall MCP servers from AI assi
35
35
  console.log();
36
36
  console.log(' Collaborative Agents (Optional)');
37
37
  console.log(' acfm agents setup Install OpenCode + tmux dependencies');
38
+ console.log(' acfm agents install-mcps Install SynapseGrid MCP servers');
39
+ console.log(' acfm agents uninstall-mcps Remove SynapseGrid MCP servers');
38
40
  console.log(' acfm agents start --task Start SynapseGrid collaborative session');
39
41
  console.log(' acfm agents resume Resume SynapseGrid session');
40
42
  console.log(' acfm agents list List recent SynapseGrid sessions');
@@ -4,18 +4,16 @@
4
4
 
5
5
  ## Purpose
6
6
 
7
- `ac-lite` keeps the same spec-driven quality bar as `ac.md`, but reduces token usage by:
7
+ `ac-lite` keeps OpenSpec rigor while reducing context load by:
8
8
 
9
- 1. Loading only the core workflow skills by default.
10
- 2. Activating extra skills only when objective risk gates require them.
11
- 3. Enforcing mandatory quality checkpoints before implementation and archive.
9
+ 1. Loading only mandatory core workflow skills by default.
10
+ 2. Activating mobile/platform specialist skills only when objective gates trigger.
11
+ 3. Enforcing hard implementation and closure checkpoints.
12
12
 
13
13
  ---
14
14
 
15
15
  ## Default Skill Set (Always Load)
16
16
 
17
- These are the only mandatory skills for every change:
18
-
19
17
  1. `acfm-spec-workflow`
20
18
  2. `acfm-memory`
21
19
  3. `openspec-new-change` OR `openspec-ff-change`
@@ -23,217 +21,110 @@ These are the only mandatory skills for every change:
23
21
  5. `openspec-apply-change`
24
22
  6. `openspec-verify-change`
25
23
  7. `openspec-archive-change`
24
+ 8. `mobile-design`
26
25
 
27
26
  ---
28
27
 
29
28
  ## Persistent Memory Protocol (Always Active)
30
29
 
31
- Agents must use the available persistent memory system proactively on every chat/session.
32
-
33
- **Session-start requirement (always):**
34
- 1. Consult the available persistent memory tool or MCP before planning, implementing, or giving project-specific guidance.
35
- 2. Recall project-level context first, then search for task-specific decisions, conventions, bugfixes, and architecture notes.
36
- 3. Treat recalled memory as active context unless the current repository state or an explicit user instruction supersedes it.
37
- 4. If memory tooling is unavailable, continue with repository inspection and use the AC Framework CLI fallback when possible.
38
-
39
- **Save automatically when information is reusable:**
40
- - Architectural decisions from proposals/designs
41
- - Bugfix patterns and solutions
42
- - Performance optimizations
43
- - Refactoring techniques
44
- - Security fixes
45
- - API patterns and conventions
46
- - Reusable workflow conventions and project constraints
47
-
48
- **Memory hygiene rules:**
49
- - Save only reusable information likely to matter in future chats.
50
- - Do not save secrets, credentials, tokens, or one-off sensitive data.
51
- - Redact content inside `<private>...</private>` before saving.
52
- - Prefer concise titles, the correct memory type, clear tags, and realistic confidence scores.
53
-
54
- **Fallback examples:**
30
+ At session start:
31
+ 1. Recall project memory before planning or implementation.
32
+ 2. Search for task-specific patterns (architecture, bugfixes, conventions).
33
+ 3. Treat recalled memory as active unless repo state or user instructions override.
34
+
35
+ Save reusable context after major decisions, fixes, and closures.
36
+
37
+ Fallback CLI examples:
55
38
  ```bash
56
- acfm memory recall "implementing authentication"
57
- acfm memory search "JWT token refresh"
58
39
  acfm memory recall
40
+ acfm memory search "offline sync"
59
41
  acfm memory stats
60
42
  ```
61
43
 
62
44
  ---
63
45
 
64
- ## Conditional Skills (Load Only If Gate Triggers)
65
-
66
- ### Security Gate
67
-
68
- Load `secure-coding-cybersecurity` if the change touches any of:
69
-
70
- - Auth/session/permissions
71
- - User input handling or validation
72
- - SQL/ORM queries or dynamic filters
73
- - File paths/uploads
74
- - Secrets/tokens/credentials
75
- - Shell/command execution
76
-
77
- ### Testing Gate
78
-
79
- Load `test-generator` if:
80
-
81
- - There are no tests for the changed behavior, or
82
- - Existing tests do not cover acceptance criteria, or
83
- - Regression risk is medium/high.
84
-
85
- ### Consistency Gate
86
-
87
- Load `spec-analysis` and `requirement-checklist` if:
88
-
89
- - Requirements are ambiguous, or
90
- - Change spans multiple modules, or
91
- - Change modifies core domain behavior.
46
+ ## Conditional Skill Gates
92
47
 
93
- ### API Gate
48
+ ### Platform/Stack Gate
49
+ Load based on selected implementation stack:
50
+ - `flutter-expert` [IF Flutter]
51
+ - `ios-developer` [IF native iOS]
52
+ - `react-native-architecture` [IF React Native architecture/native modules]
53
+ - `react-native-design` [IF React Native UI/navigation/animation]
54
+ - `react-state-management` [IF global/complex state]
94
55
 
95
- Load `api-design-principles` if API contracts/endpoints/schemas are added or modified.
56
+ ### Platform UI Gate
57
+ - `mobile-ios-design` [IF iOS UI changes]
58
+ - `mobile-android-design` [IF Android UI changes]
96
59
 
97
- ### UI Gate
60
+ ### Clarity/Scale Gate
61
+ - `spec-clarification` [IF requirements ambiguous]
62
+ - `spec-analysis` [IF cross-artifact consistency needs verification]
63
+ - `microtask-decomposition` [IF tasks remain too complex]
64
+ - `project-index` / `context-synthesizer` [IF repo/session scale requires]
98
65
 
99
- Load `interface-design` if dashboard/app UI behavior is introduced or changed.
100
-
101
- ### Performance Gate
102
-
103
- Load `performance-optimizer` if:
104
-
105
- - The change affects hot paths, or
106
- - Latency/throughput targets exist, or
107
- - A performance regression is detected/suspected.
108
-
109
- ### Context Scale Gate
110
-
111
- Load `project-index` and/or `context-synthesizer` if:
112
-
113
- - Codebase is large and discovery cost is high, or
114
- - Session is long and context drift appears.
66
+ ### Research Gate
67
+ - `research-retrieval` [IF external docs are needed]
115
68
 
116
69
  ### Debug Gate
70
+ - `systematic-debugging` [IF blocked by bugs/regressions]
117
71
 
118
- Load `systematic-debugging` when blocked by non-trivial bugs or unstable behavior.
72
+ ### Delivery Gate
73
+ - `documentation`, `sync-index`, `changelog-generator` [during closure]
119
74
 
120
75
  ---
121
76
 
122
77
  ## Mandatory Quality Gates
123
78
 
124
- These gates are non-optional in `ac-lite`.
125
-
126
79
  ### Gate A: Ready to Implement
127
-
128
80
  Before `openspec-apply-change`, all must be true:
129
-
130
- - Change exists and status is valid (`acfm spec status --change <name> --json`)
81
+ - Change is initialized and valid (`acfm spec status --change <name> --json`)
131
82
  - `tasks.md` exists with actionable checkboxes
132
- - Acceptance criteria are clear in artifacts
133
- - Required conditional skills (if triggered) were executed
134
- - Session-start memory recall completed for this chat/session
135
-
136
- If any item fails: stop, resolve, then continue.
137
-
138
- ### Gate B: Ready to Archive
83
+ - Platform and stack are explicit
84
+ - Required conditional skills were executed
85
+ - Session-start memory recall completed
139
86
 
87
+ ### Gate B: Ready to Close
140
88
  Before `openspec-archive-change`, all must be true:
141
-
142
89
  - `openspec-verify-change` completed
143
- - No CRITICAL findings remain
144
- - Relevant tests pass for changed behavior
145
- - Tasks are complete or explicitly accepted by user with warning
146
- - Relevant reusable context from the completed work was saved to memory
147
-
148
- If any item fails: stop, fix, re-verify.
90
+ - Critical issues resolved (or explicitly accepted with warning)
91
+ - Task list reflects final state
92
+ - Reusable context saved to memory
93
+ - `documentation` / `sync-index` / changelog steps executed as required
149
94
 
150
95
  ---
151
96
 
152
- ## Lite Workflows
153
-
154
- ### New Change (Default Path)
155
-
156
- 1. Run `acfm-spec-workflow` checks (`acfm spec status --json`, init if needed).
157
- 2. Run a session-start memory recall using the available memory tool/MCP or the AC Framework CLI fallback.
158
- 3. Create change with `openspec-new-change` (or `openspec-ff-change` if user requests speed).
159
- 4. Build artifacts with `openspec-continue-change` until apply-ready.
160
- 5. Evaluate conditional gates and load only triggered skills.
161
- 6. Pass Gate A.
162
- 7. Implement with `openspec-apply-change`.
163
- 8. Verify with `openspec-verify-change`.
164
- 9. Pass Gate B.
165
- 10. Archive with `openspec-archive-change`.
166
-
167
- ### Existing Change (Default Path)
97
+ ## Lite Workflow
168
98
 
169
- 1. Confirm initialization and active changes.
170
- 2. Run a session-start memory recall using the available memory tool/MCP or the AC Framework CLI fallback.
171
- 3. Select target change.
172
- 4. Refresh artifact status.
173
- 5. Evaluate conditional gates (only load what triggers).
99
+ ### New Mobile Change
100
+ 1. `acfm-spec-workflow` status/init checks.
101
+ 2. Session-start memory recall (`acfm-memory`).
102
+ 3. Start change (`openspec-new-change` or `openspec-ff-change`).
103
+ 4. Build artifacts (`openspec-continue-change`).
104
+ 5. Trigger and run only needed conditional skills.
174
105
  6. Pass Gate A.
175
- 7. Implement.
176
- 8. Verify.
106
+ 7. Implement (`openspec-apply-change`).
107
+ 8. Verify (`openspec-verify-change`).
177
108
  9. Pass Gate B.
178
- 10. Archive.
109
+ 10. Archive/sync and generate closure docs.
110
+
111
+ ### Existing Mobile Change
112
+ 1. Confirm initialization and target change.
113
+ 2. Run memory recall.
114
+ 3. Refresh artifacts.
115
+ 4. Run only triggered conditional skills.
116
+ 5. Pass Gate A.
117
+ 6. Implement and debug as needed.
118
+ 7. Verify.
119
+ 8. Pass Gate B.
120
+ 9. Archive/sync.
179
121
 
180
122
  ---
181
123
 
182
124
  ## Operational Rules
183
125
 
184
- 1. Run memory recall at the start of every new chat/session before planning or implementation.
185
- 2. Save important reusable context automatically after significant decisions, fixes, or conventions emerge.
186
- 3. Do not load broad quality/documentation skills by default.
187
- 4. Do not run optional skills "just in case".
188
- 5. If risk increases during implementation, activate the matching conditional skill immediately.
189
- 6. Prefer deterministic CLI checks over narrative assumptions.
190
- 7. Keep outputs concise but auditable (show which gates passed/failed and why).
191
-
192
- ---
193
-
194
- ## Suggested Minimal Execution Template
195
-
196
- Use this structure in each run:
197
-
198
- 1. **Change Context**
199
- - Change name
200
- - Current artifact progress
201
-
202
- 2. **Memory Status**
203
- - Session recall completed: yes/no
204
- - Relevant prior decisions/patterns found
205
- - Memory save needed at close: yes/no
206
-
207
- 3. **Triggered Gates**
208
- - Security: pass/fail + reason
209
- - Testing: pass/fail + reason
210
- - Consistency/API/UI/Performance/Context/Debug: pass/fail + reason
211
-
212
- 4. **Skills Loaded**
213
- - Core: always list
214
- - Conditional: list only triggered ones
215
-
216
- 5. **Gate A Status**
217
- - Ready to implement: yes/no
218
-
219
- 6. **Implementation + Verify**
220
- - What was implemented
221
- - Verify findings summary
222
-
223
- 7. **Gate B Status**
224
- - Ready to archive: yes/no
225
-
226
- 8. **Archive Result**
227
- - Archive path and timestamp
228
-
229
- ---
230
-
231
- ## Token Strategy Summary
232
-
233
- `ac-lite` reduces cost by replacing "load everything first" with:
234
-
235
- - Mandatory core workflow only
236
- - Risk-gated skill expansion
237
- - Hard quality checkpoints at implementation and archive boundaries
238
-
239
- This preserves software quality while avoiding unnecessary instruction/context overhead.
126
+ 1. Do not load non-triggered skills "just in case".
127
+ 2. Do not implement before platform/stack is explicit.
128
+ 3. If risk increases, load matching skill immediately.
129
+ 4. Keep outputs concise and auditable (which gates passed/failed and why).
130
+ 5. Save reusable memory at significant milestones.