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.
- package/README.md +8 -0
- package/bin/postinstall.js +2 -0
- package/framework/mobile_development/.agent/workflows/ac-lite.md +70 -179
- package/framework/mobile_development/.agent/workflows/ac.md +226 -410
- package/framework/mobile_development/.amazonq/prompts/ac-lite.md +70 -179
- package/framework/mobile_development/.amazonq/prompts/ac.md +226 -410
- package/framework/mobile_development/.antigravity/workflows/ac-lite.md +70 -179
- package/framework/mobile_development/.antigravity/workflows/ac.md +226 -410
- package/framework/mobile_development/.augment/commands/ac-lite.md +70 -179
- package/framework/mobile_development/.augment/commands/ac.md +226 -410
- package/framework/mobile_development/.claude/commands/opsx/ac-lite.md +70 -179
- package/framework/mobile_development/.claude/commands/opsx/ac.md +226 -410
- package/framework/mobile_development/.cline/commands/opsx/ac-lite.md +70 -179
- package/framework/mobile_development/.cline/commands/opsx/ac.md +226 -410
- package/framework/mobile_development/.clinerules/workflows/ac-lite.md +70 -179
- package/framework/mobile_development/.clinerules/workflows/ac.md +226 -410
- package/framework/mobile_development/.codebuddy/commands/opsx/ac-lite.md +70 -179
- package/framework/mobile_development/.codebuddy/commands/opsx/ac.md +226 -410
- package/framework/mobile_development/.continue/prompts/ac-lite.md +70 -179
- package/framework/mobile_development/.continue/prompts/ac.md +226 -410
- package/framework/mobile_development/.cospec/openspec/commands/ac-lite.md +70 -179
- package/framework/mobile_development/.cospec/openspec/commands/ac.md +226 -410
- package/framework/mobile_development/.crush/commands/opsx/ac-lite.md +70 -179
- package/framework/mobile_development/.crush/commands/opsx/ac.md +226 -410
- package/framework/mobile_development/.cursor/commands/ac-lite.md +70 -179
- package/framework/mobile_development/.cursor/commands/ac.md +226 -410
- package/framework/mobile_development/.factory/commands/ac-lite.md +70 -179
- package/framework/mobile_development/.factory/commands/ac.md +226 -410
- package/framework/mobile_development/.gemini/commands/opsx/ac-lite.md +70 -179
- package/framework/mobile_development/.gemini/commands/opsx/ac.md +226 -410
- package/framework/mobile_development/.github/prompts/ac-lite.md +70 -179
- package/framework/mobile_development/.github/prompts/ac.md +226 -410
- package/framework/mobile_development/.github/prompts/ac.prompt.md +282 -177
- package/framework/mobile_development/.iflow/commands/ac-lite.md +70 -179
- package/framework/mobile_development/.iflow/commands/ac.md +226 -410
- package/framework/mobile_development/.kilocode/workflows/ac-lite.md +70 -179
- package/framework/mobile_development/.kilocode/workflows/ac.md +226 -410
- package/framework/mobile_development/.kimi/workflows/ac-lite.md +70 -179
- package/framework/mobile_development/.kimi/workflows/ac.md +226 -410
- package/framework/mobile_development/.opencode/command/ac-lite.md +70 -179
- package/framework/mobile_development/.opencode/command/ac.md +226 -410
- package/framework/mobile_development/.qoder/commands/opsx/ac-lite.md +70 -179
- package/framework/mobile_development/.qoder/commands/opsx/ac.md +226 -410
- package/framework/mobile_development/.qwen/commands/ac-lite.md +70 -179
- package/framework/mobile_development/.qwen/commands/ac.md +226 -410
- package/framework/mobile_development/.roo/commands/ac-lite.md +70 -179
- package/framework/mobile_development/.roo/commands/ac.md +226 -410
- package/framework/mobile_development/.windsurf/workflows/ac-lite.md +70 -179
- package/framework/mobile_development/.windsurf/workflows/ac.md +226 -410
- package/framework/mobile_development/AGENTS.md +205 -416
- package/framework/mobile_development/CLAUDE.md +205 -416
- package/framework/mobile_development/GEMINI.md +205 -416
- package/framework/mobile_development/copilot-instructions.md +205 -416
- package/framework/new_project/.opencode/command/ac.md +27 -0
- package/framework/new_project/AGENTS.md +27 -0
- package/framework/web_development/.opencode/command/ac.md +27 -0
- package/framework/web_development/AGENTS.md +27 -0
- package/package.json +1 -1
- package/src/commands/agents.js +71 -2
- package/src/commands/init.js +33 -0
- package/src/mcp/collab-server.js +198 -0
- package/src/services/mcp-installer.js +82 -54
|
@@ -4,18 +4,16 @@
|
|
|
4
4
|
|
|
5
5
|
## Purpose
|
|
6
6
|
|
|
7
|
-
`ac-lite` keeps
|
|
7
|
+
`ac-lite` keeps OpenSpec rigor while reducing context load by:
|
|
8
8
|
|
|
9
|
-
1. Loading only
|
|
10
|
-
2. Activating
|
|
11
|
-
3. Enforcing
|
|
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
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
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
|
|
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
|
-
###
|
|
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
|
-
|
|
56
|
+
### Platform UI Gate
|
|
57
|
+
- `mobile-ios-design` [IF iOS UI changes]
|
|
58
|
+
- `mobile-android-design` [IF Android UI changes]
|
|
96
59
|
|
|
97
|
-
###
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
-
|
|
133
|
-
- Required conditional skills
|
|
134
|
-
- Session-start memory recall completed
|
|
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
|
-
-
|
|
144
|
-
-
|
|
145
|
-
-
|
|
146
|
-
-
|
|
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
|
|
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
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
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.
|
|
185
|
-
2.
|
|
186
|
-
3.
|
|
187
|
-
4.
|
|
188
|
-
5.
|
|
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.
|