ma-agents 3.4.8 → 3.4.9
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/.opencode/skills/.ma-agents.json +167 -48
- package/.opencode/skills/MANIFEST.yaml +128 -0
- package/.opencode/skills/ai-audit-trail/SKILL.md +23 -0
- package/.opencode/skills/auto-bug-detection/SKILL.md +169 -0
- package/.opencode/skills/cmake-best-practices/SKILL.md +64 -0
- package/.opencode/skills/cmake-best-practices/examples/cmake.md +59 -0
- package/.opencode/skills/code-documentation/SKILL.md +57 -0
- package/.opencode/skills/code-documentation/examples/cpp.md +29 -0
- package/.opencode/skills/code-documentation/examples/csharp.md +28 -0
- package/.opencode/skills/code-documentation/examples/javascript_typescript.md +28 -0
- package/.opencode/skills/code-documentation/examples/python.md +57 -0
- package/.opencode/skills/code-review/SKILL.md +43 -0
- package/.opencode/skills/commit-message/SKILL.md +79 -0
- package/.opencode/skills/cpp-best-practices/SKILL.md +234 -0
- package/.opencode/skills/cpp-best-practices/examples/modern-idioms.md +189 -0
- package/.opencode/skills/cpp-best-practices/examples/naming-and-organization.md +102 -0
- package/.opencode/skills/cpp-concurrency-safety/SKILL.md +60 -0
- package/.opencode/skills/cpp-concurrency-safety/examples/concurrency.md +73 -0
- package/.opencode/skills/cpp-const-correctness/SKILL.md +63 -0
- package/.opencode/skills/cpp-const-correctness/examples/const_correctness.md +54 -0
- package/.opencode/skills/cpp-memory-handling/SKILL.md +42 -0
- package/.opencode/skills/cpp-memory-handling/examples/modern-cpp.md +49 -0
- package/.opencode/skills/cpp-memory-handling/examples/smart-pointers.md +46 -0
- package/.opencode/skills/cpp-modern-composition/SKILL.md +64 -0
- package/.opencode/skills/cpp-modern-composition/examples/composition.md +51 -0
- package/.opencode/skills/cpp-robust-interfaces/SKILL.md +55 -0
- package/.opencode/skills/cpp-robust-interfaces/examples/interfaces.md +56 -0
- package/.opencode/skills/create-hardened-docker-skill/SKILL.md +637 -0
- package/.opencode/skills/create-hardened-docker-skill/scripts/create-all.sh +489 -0
- package/.opencode/skills/csharp-best-practices/SKILL.md +278 -0
- package/.opencode/skills/docker-hardening-verification/SKILL.md +28 -0
- package/.opencode/skills/docker-hardening-verification/scripts/verify-hardening.sh +39 -0
- package/.opencode/skills/docker-image-signing/SKILL.md +28 -0
- package/.opencode/skills/docker-image-signing/scripts/sign-image.sh +33 -0
- package/.opencode/skills/document-revision-history/SKILL.md +104 -0
- package/.roo/skills/.ma-agents.json +167 -48
- package/.roo/skills/MANIFEST.yaml +128 -0
- package/.roo/skills/ai-audit-trail/SKILL.md +23 -0
- package/.roo/skills/auto-bug-detection/SKILL.md +169 -0
- package/.roo/skills/cmake-best-practices/SKILL.md +64 -0
- package/.roo/skills/cmake-best-practices/examples/cmake.md +59 -0
- package/.roo/skills/code-documentation/SKILL.md +57 -0
- package/.roo/skills/code-documentation/examples/cpp.md +29 -0
- package/.roo/skills/code-documentation/examples/csharp.md +28 -0
- package/.roo/skills/code-documentation/examples/javascript_typescript.md +28 -0
- package/.roo/skills/code-documentation/examples/python.md +57 -0
- package/.roo/skills/code-review/SKILL.md +43 -0
- package/.roo/skills/commit-message/SKILL.md +79 -0
- package/.roo/skills/cpp-best-practices/SKILL.md +234 -0
- package/.roo/skills/cpp-best-practices/examples/modern-idioms.md +189 -0
- package/.roo/skills/cpp-best-practices/examples/naming-and-organization.md +102 -0
- package/.roo/skills/cpp-concurrency-safety/SKILL.md +60 -0
- package/.roo/skills/cpp-concurrency-safety/examples/concurrency.md +73 -0
- package/.roo/skills/cpp-const-correctness/SKILL.md +63 -0
- package/.roo/skills/cpp-const-correctness/examples/const_correctness.md +54 -0
- package/.roo/skills/cpp-memory-handling/SKILL.md +42 -0
- package/.roo/skills/cpp-memory-handling/examples/modern-cpp.md +49 -0
- package/.roo/skills/cpp-memory-handling/examples/smart-pointers.md +46 -0
- package/.roo/skills/cpp-modern-composition/SKILL.md +64 -0
- package/.roo/skills/cpp-modern-composition/examples/composition.md +51 -0
- package/.roo/skills/cpp-robust-interfaces/SKILL.md +55 -0
- package/.roo/skills/cpp-robust-interfaces/examples/interfaces.md +56 -0
- package/.roo/skills/create-hardened-docker-skill/SKILL.md +637 -0
- package/.roo/skills/create-hardened-docker-skill/scripts/create-all.sh +489 -0
- package/.roo/skills/csharp-best-practices/SKILL.md +278 -0
- package/.roo/skills/docker-hardening-verification/SKILL.md +28 -0
- package/.roo/skills/docker-hardening-verification/scripts/verify-hardening.sh +39 -0
- package/.roo/skills/docker-image-signing/SKILL.md +28 -0
- package/.roo/skills/docker-image-signing/scripts/sign-image.sh +33 -0
- package/.roo/skills/document-revision-history/SKILL.md +104 -0
- package/bin/cli.js +5 -4
- package/lib/agents.js +16 -1
- package/lib/bmad-extension/module-help.csv +4 -21
- package/lib/bmad-extension/skills/add-sprint/SKILL.md +40 -126
- package/lib/bmad-extension/skills/add-to-sprint/SKILL.md +142 -116
- package/lib/bmad-extension/skills/create-bug-story/SKILL.md +7 -75
- package/lib/bmad-extension/skills/modify-sprint/SKILL.md +0 -63
- package/lib/bmad-extension/skills/sprint-status-view/SKILL.md +138 -199
- package/lib/bmad-extension/workflows/add-sprint/workflow.md +39 -129
- package/lib/bmad-extension/workflows/add-to-sprint/workflow.md +205 -3
- package/lib/bmad-extension/workflows/modify-sprint/workflow.md +0 -5
- package/lib/bmad-extension/workflows/sprint-status-view/workflow.md +192 -3
- package/package.json +1 -1
- package/lib/bmad-extension/skills/cleanup-done/.gitkeep +0 -0
- package/lib/bmad-extension/skills/cleanup-done/SKILL.md +0 -159
- package/lib/bmad-extension/skills/cleanup-done/bmad-skill-manifest.yaml +0 -3
- package/lib/bmad-extension/skills/generate-backlog/.gitkeep +0 -0
- package/lib/bmad-extension/skills/generate-backlog/SKILL.md +0 -183
- package/lib/bmad-extension/skills/generate-backlog/bmad-skill-manifest.yaml +0 -3
- package/lib/bmad-extension/skills/prioritize-backlog/.gitkeep +0 -0
- package/lib/bmad-extension/skills/prioritize-backlog/SKILL.md +0 -195
- package/lib/bmad-extension/skills/prioritize-backlog/bmad-skill-manifest.yaml +0 -3
- package/lib/bmad-extension/skills/remove-from-sprint/.gitkeep +0 -0
- package/lib/bmad-extension/skills/remove-from-sprint/SKILL.md +0 -163
- package/lib/bmad-extension/skills/remove-from-sprint/bmad-skill-manifest.yaml +0 -3
|
@@ -8,114 +8,233 @@
|
|
|
8
8
|
"skills": {
|
|
9
9
|
"git-workflow-skill": {
|
|
10
10
|
"version": "2.1.0",
|
|
11
|
-
"installedAt": "2026-04-
|
|
12
|
-
"updatedAt": "2026-04-
|
|
13
|
-
"installerVersion": "3.4.
|
|
11
|
+
"installedAt": "2026-04-05T18:07:12.696Z",
|
|
12
|
+
"updatedAt": "2026-04-05T18:09:29.627Z",
|
|
13
|
+
"installerVersion": "3.4.9",
|
|
14
14
|
"agentVersion": "1.0.0"
|
|
15
15
|
},
|
|
16
16
|
"js-ts-dependency-mgmt": {
|
|
17
17
|
"version": "1.0.0",
|
|
18
|
-
"installedAt": "2026-04-
|
|
19
|
-
"updatedAt": "2026-04-
|
|
20
|
-
"installerVersion": "3.4.
|
|
18
|
+
"installedAt": "2026-04-05T18:07:30.300Z",
|
|
19
|
+
"updatedAt": "2026-04-05T18:09:35.734Z",
|
|
20
|
+
"installerVersion": "3.4.9",
|
|
21
21
|
"agentVersion": "1.0.0"
|
|
22
22
|
},
|
|
23
23
|
"js-ts-security-skill": {
|
|
24
24
|
"version": "1.0.0",
|
|
25
|
-
"installedAt": "2026-04-
|
|
26
|
-
"updatedAt": "2026-04-
|
|
27
|
-
"installerVersion": "3.4.
|
|
25
|
+
"installedAt": "2026-04-05T18:07:31.521Z",
|
|
26
|
+
"updatedAt": "2026-04-05T18:09:37.126Z",
|
|
27
|
+
"installerVersion": "3.4.9",
|
|
28
28
|
"agentVersion": "1.0.0"
|
|
29
29
|
},
|
|
30
30
|
"logging-best-practices": {
|
|
31
31
|
"version": "1.0.0",
|
|
32
|
-
"installedAt": "2026-04-
|
|
33
|
-
"updatedAt": "2026-04-
|
|
34
|
-
"installerVersion": "3.4.
|
|
32
|
+
"installedAt": "2026-04-05T18:07:34.518Z",
|
|
33
|
+
"updatedAt": "2026-04-05T18:09:48.622Z",
|
|
34
|
+
"installerVersion": "3.4.9",
|
|
35
35
|
"agentVersion": "1.0.0"
|
|
36
36
|
},
|
|
37
37
|
"open-presentation": {
|
|
38
38
|
"version": "1.0.0",
|
|
39
|
-
"installedAt": "2026-04-
|
|
40
|
-
"updatedAt": "2026-04-
|
|
41
|
-
"installerVersion": "3.4.
|
|
39
|
+
"installedAt": "2026-04-05T18:07:36.318Z",
|
|
40
|
+
"updatedAt": "2026-04-05T18:09:53.125Z",
|
|
41
|
+
"installerVersion": "3.4.9",
|
|
42
42
|
"agentVersion": "1.0.0"
|
|
43
43
|
},
|
|
44
44
|
"opentelemetry-best-practices": {
|
|
45
45
|
"version": "1.0.0",
|
|
46
|
-
"installedAt": "2026-04-
|
|
47
|
-
"updatedAt": "2026-04-
|
|
48
|
-
"installerVersion": "3.4.
|
|
46
|
+
"installedAt": "2026-04-05T18:07:39.513Z",
|
|
47
|
+
"updatedAt": "2026-04-05T18:07:39.513Z",
|
|
48
|
+
"installerVersion": "3.4.9",
|
|
49
49
|
"agentVersion": "1.0.0"
|
|
50
50
|
},
|
|
51
51
|
"python-best-practices": {
|
|
52
52
|
"version": "1.0.0",
|
|
53
|
-
"installedAt": "2026-04-
|
|
54
|
-
"updatedAt": "2026-04-
|
|
55
|
-
"installerVersion": "3.4.
|
|
53
|
+
"installedAt": "2026-04-05T18:07:40.244Z",
|
|
54
|
+
"updatedAt": "2026-04-05T18:07:40.244Z",
|
|
55
|
+
"installerVersion": "3.4.9",
|
|
56
56
|
"agentVersion": "1.0.0"
|
|
57
57
|
},
|
|
58
58
|
"python-dependency-mgmt": {
|
|
59
59
|
"version": "1.0.0",
|
|
60
|
-
"installedAt": "2026-04-
|
|
61
|
-
"updatedAt": "2026-04-
|
|
62
|
-
"installerVersion": "3.4.
|
|
60
|
+
"installedAt": "2026-04-05T18:07:41.778Z",
|
|
61
|
+
"updatedAt": "2026-04-05T18:07:41.778Z",
|
|
62
|
+
"installerVersion": "3.4.9",
|
|
63
63
|
"agentVersion": "1.0.0"
|
|
64
64
|
},
|
|
65
65
|
"python-security-skill": {
|
|
66
66
|
"version": "1.0.0",
|
|
67
|
-
"installedAt": "2026-04-
|
|
68
|
-
"updatedAt": "2026-04-
|
|
69
|
-
"installerVersion": "3.4.
|
|
67
|
+
"installedAt": "2026-04-05T18:07:43.209Z",
|
|
68
|
+
"updatedAt": "2026-04-05T18:07:43.209Z",
|
|
69
|
+
"installerVersion": "3.4.9",
|
|
70
70
|
"agentVersion": "1.0.0"
|
|
71
71
|
},
|
|
72
72
|
"self-signed-cert": {
|
|
73
73
|
"version": "1.0.0",
|
|
74
|
-
"installedAt": "2026-04-
|
|
75
|
-
"updatedAt": "2026-04-
|
|
76
|
-
"installerVersion": "3.4.
|
|
74
|
+
"installedAt": "2026-04-05T18:07:46.583Z",
|
|
75
|
+
"updatedAt": "2026-04-05T18:07:46.583Z",
|
|
76
|
+
"installerVersion": "3.4.9",
|
|
77
77
|
"agentVersion": "1.0.0"
|
|
78
78
|
},
|
|
79
79
|
"skill-creator": {
|
|
80
80
|
"version": "1.0.0",
|
|
81
|
-
"installedAt": "2026-04-
|
|
82
|
-
"updatedAt": "2026-04-
|
|
83
|
-
"installerVersion": "3.4.
|
|
81
|
+
"installedAt": "2026-04-05T18:07:49.678Z",
|
|
82
|
+
"updatedAt": "2026-04-05T18:07:49.678Z",
|
|
83
|
+
"installerVersion": "3.4.9",
|
|
84
84
|
"agentVersion": "1.0.0"
|
|
85
85
|
},
|
|
86
86
|
"story-status-lookup": {
|
|
87
87
|
"version": "1.0.0",
|
|
88
|
-
"installedAt": "2026-04-
|
|
89
|
-
"updatedAt": "2026-04-
|
|
90
|
-
"installerVersion": "3.4.
|
|
88
|
+
"installedAt": "2026-04-05T18:07:50.727Z",
|
|
89
|
+
"updatedAt": "2026-04-05T18:07:50.727Z",
|
|
90
|
+
"installerVersion": "3.4.9",
|
|
91
91
|
"agentVersion": "1.0.0"
|
|
92
92
|
},
|
|
93
93
|
"test-accompanied-development": {
|
|
94
94
|
"version": "1.0.0",
|
|
95
|
-
"installedAt": "2026-04-
|
|
96
|
-
"updatedAt": "2026-04-
|
|
97
|
-
"installerVersion": "3.4.
|
|
95
|
+
"installedAt": "2026-04-05T18:07:53.179Z",
|
|
96
|
+
"updatedAt": "2026-04-05T18:07:53.179Z",
|
|
97
|
+
"installerVersion": "3.4.9",
|
|
98
98
|
"agentVersion": "1.0.0"
|
|
99
99
|
},
|
|
100
100
|
"test-generator": {
|
|
101
101
|
"version": "1.0.0",
|
|
102
|
-
"installedAt": "2026-04-
|
|
103
|
-
"updatedAt": "2026-04-
|
|
104
|
-
"installerVersion": "3.4.
|
|
102
|
+
"installedAt": "2026-04-05T18:07:54.383Z",
|
|
103
|
+
"updatedAt": "2026-04-05T18:07:54.383Z",
|
|
104
|
+
"installerVersion": "3.4.9",
|
|
105
105
|
"agentVersion": "1.0.0"
|
|
106
106
|
},
|
|
107
107
|
"vercel-react-best-practices": {
|
|
108
108
|
"version": "1.0.0",
|
|
109
|
-
"installedAt": "2026-04-
|
|
110
|
-
"updatedAt": "2026-04-
|
|
111
|
-
"installerVersion": "3.4.
|
|
109
|
+
"installedAt": "2026-04-05T18:07:58.007Z",
|
|
110
|
+
"updatedAt": "2026-04-05T18:07:58.007Z",
|
|
111
|
+
"installerVersion": "3.4.9",
|
|
112
112
|
"agentVersion": "1.0.0"
|
|
113
113
|
},
|
|
114
114
|
"verify-hardened-docker-skill": {
|
|
115
115
|
"version": "1.0.0",
|
|
116
|
-
"installedAt": "2026-04-
|
|
117
|
-
"updatedAt": "2026-04-
|
|
118
|
-
"installerVersion": "3.4.
|
|
116
|
+
"installedAt": "2026-04-05T18:08:04.319Z",
|
|
117
|
+
"updatedAt": "2026-04-05T18:08:04.319Z",
|
|
118
|
+
"installerVersion": "3.4.9",
|
|
119
|
+
"agentVersion": "1.0.0"
|
|
120
|
+
},
|
|
121
|
+
"ai-audit-trail": {
|
|
122
|
+
"version": "1.0.0",
|
|
123
|
+
"installedAt": "2026-04-05T18:08:39.503Z",
|
|
124
|
+
"updatedAt": "2026-04-05T18:08:39.503Z",
|
|
125
|
+
"installerVersion": "3.4.9",
|
|
126
|
+
"agentVersion": "1.0.0"
|
|
127
|
+
},
|
|
128
|
+
"auto-bug-detection": {
|
|
129
|
+
"version": "1.0.0",
|
|
130
|
+
"installedAt": "2026-04-05T18:08:41.377Z",
|
|
131
|
+
"updatedAt": "2026-04-05T18:08:41.377Z",
|
|
132
|
+
"installerVersion": "3.4.9",
|
|
133
|
+
"agentVersion": "1.0.0"
|
|
134
|
+
},
|
|
135
|
+
"cmake-best-practices": {
|
|
136
|
+
"version": "1.0.0",
|
|
137
|
+
"installedAt": "2026-04-05T18:08:43.339Z",
|
|
138
|
+
"updatedAt": "2026-04-05T18:08:43.339Z",
|
|
139
|
+
"installerVersion": "3.4.9",
|
|
140
|
+
"agentVersion": "1.0.0"
|
|
141
|
+
},
|
|
142
|
+
"code-documentation": {
|
|
143
|
+
"version": "1.0.0",
|
|
144
|
+
"installedAt": "2026-04-05T18:08:45.996Z",
|
|
145
|
+
"updatedAt": "2026-04-05T18:08:45.996Z",
|
|
146
|
+
"installerVersion": "3.4.9",
|
|
147
|
+
"agentVersion": "1.0.0"
|
|
148
|
+
},
|
|
149
|
+
"code-review": {
|
|
150
|
+
"version": "1.0.0",
|
|
151
|
+
"installedAt": "2026-04-05T18:08:47.752Z",
|
|
152
|
+
"updatedAt": "2026-04-05T18:08:47.752Z",
|
|
153
|
+
"installerVersion": "3.4.9",
|
|
154
|
+
"agentVersion": "1.0.0"
|
|
155
|
+
},
|
|
156
|
+
"commit-message": {
|
|
157
|
+
"version": "1.0.0",
|
|
158
|
+
"installedAt": "2026-04-05T18:08:50.322Z",
|
|
159
|
+
"updatedAt": "2026-04-05T18:08:50.322Z",
|
|
160
|
+
"installerVersion": "3.4.9",
|
|
161
|
+
"agentVersion": "1.0.0"
|
|
162
|
+
},
|
|
163
|
+
"cpp-best-practices": {
|
|
164
|
+
"version": "1.0.0",
|
|
165
|
+
"installedAt": "2026-04-05T18:08:51.509Z",
|
|
166
|
+
"updatedAt": "2026-04-05T18:08:51.509Z",
|
|
167
|
+
"installerVersion": "3.4.9",
|
|
168
|
+
"agentVersion": "1.0.0"
|
|
169
|
+
},
|
|
170
|
+
"cpp-concurrency-safety": {
|
|
171
|
+
"version": "1.0.0",
|
|
172
|
+
"installedAt": "2026-04-05T18:08:56.571Z",
|
|
173
|
+
"updatedAt": "2026-04-05T18:08:56.571Z",
|
|
174
|
+
"installerVersion": "3.4.9",
|
|
175
|
+
"agentVersion": "1.0.0"
|
|
176
|
+
},
|
|
177
|
+
"cpp-const-correctness": {
|
|
178
|
+
"version": "1.0.0",
|
|
179
|
+
"installedAt": "2026-04-05T18:08:57.540Z",
|
|
180
|
+
"updatedAt": "2026-04-05T18:08:57.540Z",
|
|
181
|
+
"installerVersion": "3.4.9",
|
|
182
|
+
"agentVersion": "1.0.0"
|
|
183
|
+
},
|
|
184
|
+
"cpp-memory-handling": {
|
|
185
|
+
"version": "1.0.0",
|
|
186
|
+
"installedAt": "2026-04-05T18:08:59.690Z",
|
|
187
|
+
"updatedAt": "2026-04-05T18:08:59.690Z",
|
|
188
|
+
"installerVersion": "3.4.9",
|
|
189
|
+
"agentVersion": "1.0.0"
|
|
190
|
+
},
|
|
191
|
+
"cpp-modern-composition": {
|
|
192
|
+
"version": "1.0.0",
|
|
193
|
+
"installedAt": "2026-04-05T18:09:03.289Z",
|
|
194
|
+
"updatedAt": "2026-04-05T18:09:03.289Z",
|
|
195
|
+
"installerVersion": "3.4.9",
|
|
196
|
+
"agentVersion": "1.0.0"
|
|
197
|
+
},
|
|
198
|
+
"cpp-robust-interfaces": {
|
|
199
|
+
"version": "1.0.0",
|
|
200
|
+
"installedAt": "2026-04-05T18:09:05.913Z",
|
|
201
|
+
"updatedAt": "2026-04-05T18:09:05.913Z",
|
|
202
|
+
"installerVersion": "3.4.9",
|
|
203
|
+
"agentVersion": "1.0.0"
|
|
204
|
+
},
|
|
205
|
+
"create-hardened-docker-skill": {
|
|
206
|
+
"version": "1.0.0",
|
|
207
|
+
"installedAt": "2026-04-05T18:09:07.044Z",
|
|
208
|
+
"updatedAt": "2026-04-05T18:09:07.044Z",
|
|
209
|
+
"installerVersion": "3.4.9",
|
|
210
|
+
"agentVersion": "1.0.0"
|
|
211
|
+
},
|
|
212
|
+
"csharp-best-practices": {
|
|
213
|
+
"version": "1.0.0",
|
|
214
|
+
"installedAt": "2026-04-05T18:09:09.984Z",
|
|
215
|
+
"updatedAt": "2026-04-05T18:09:09.984Z",
|
|
216
|
+
"installerVersion": "3.4.9",
|
|
217
|
+
"agentVersion": "1.0.0"
|
|
218
|
+
},
|
|
219
|
+
"docker-hardening-verification": {
|
|
220
|
+
"version": "1.0.0",
|
|
221
|
+
"installedAt": "2026-04-05T18:09:13.601Z",
|
|
222
|
+
"updatedAt": "2026-04-05T18:09:13.601Z",
|
|
223
|
+
"installerVersion": "3.4.9",
|
|
224
|
+
"agentVersion": "1.0.0"
|
|
225
|
+
},
|
|
226
|
+
"docker-image-signing": {
|
|
227
|
+
"version": "1.0.0",
|
|
228
|
+
"installedAt": "2026-04-05T18:09:21.890Z",
|
|
229
|
+
"updatedAt": "2026-04-05T18:09:21.890Z",
|
|
230
|
+
"installerVersion": "3.4.9",
|
|
231
|
+
"agentVersion": "1.0.0"
|
|
232
|
+
},
|
|
233
|
+
"document-revision-history": {
|
|
234
|
+
"version": "1.0.0",
|
|
235
|
+
"installedAt": "2026-04-05T18:09:25.478Z",
|
|
236
|
+
"updatedAt": "2026-04-05T18:09:25.478Z",
|
|
237
|
+
"installerVersion": "3.4.9",
|
|
119
238
|
"agentVersion": "1.0.0"
|
|
120
239
|
}
|
|
121
240
|
}
|
|
@@ -1,6 +1,134 @@
|
|
|
1
1
|
# MANIFEST.yaml
|
|
2
2
|
|
|
3
3
|
skills:
|
|
4
|
+
- id: ai-audit-trail
|
|
5
|
+
file: ai-audit-trail/SKILL.md
|
|
6
|
+
description: Tracks AI agent session activity, time spent, and token usage in a project-level AiAudit.md log file.
|
|
7
|
+
applies_when:
|
|
8
|
+
- starting a new agent task or workflow
|
|
9
|
+
- completing a document generation session
|
|
10
|
+
- finishing any multi-step agent workflow
|
|
11
|
+
always_load: true
|
|
12
|
+
|
|
13
|
+
- id: auto-bug-detection
|
|
14
|
+
file: auto-bug-detection/SKILL.md
|
|
15
|
+
description: Instructs agents to identify and report defects in already-delivered code
|
|
16
|
+
|
|
17
|
+
- id: cmake-best-practices
|
|
18
|
+
file: cmake-best-practices/SKILL.md
|
|
19
|
+
description: Enforce target-based, property-oriented CMake patterns (CMake 3.0+).
|
|
20
|
+
applies_when:
|
|
21
|
+
- creating or modifying CMakeLists.txt files
|
|
22
|
+
- managing C++ project dependencies via CMake
|
|
23
|
+
- defining C++ build configurations
|
|
24
|
+
always_load: true
|
|
25
|
+
|
|
26
|
+
- id: code-documentation
|
|
27
|
+
file: code-documentation/SKILL.md
|
|
28
|
+
description: Standardize file headers and method documentation across C++, C#, JS, TS, and Python.
|
|
29
|
+
applies_when:
|
|
30
|
+
- creating or modifying source code files
|
|
31
|
+
- defining new functions, methods, or classes
|
|
32
|
+
- refactoring code logic
|
|
33
|
+
- documenting APIs
|
|
34
|
+
always_load: true
|
|
35
|
+
|
|
36
|
+
- id: code-review
|
|
37
|
+
file: code-review/SKILL.md
|
|
38
|
+
description: Performs comprehensive code reviews with best practices
|
|
39
|
+
|
|
40
|
+
- id: commit-message
|
|
41
|
+
file: commit-message/SKILL.md
|
|
42
|
+
description: Generates conventional commit messages from code changes
|
|
43
|
+
|
|
44
|
+
- id: cpp-best-practices
|
|
45
|
+
file: cpp-best-practices/SKILL.md
|
|
46
|
+
description: Comprehensive C++ coding standards covering naming conventions, modern C++ idioms (C++17/20/23), error handling, and build guidelines. Cross-references domain-specific C++ skills for deep-dives.
|
|
47
|
+
applies_when:
|
|
48
|
+
- writing c++ code
|
|
49
|
+
- modifying c++ code
|
|
50
|
+
- creating new c++ files or classes
|
|
51
|
+
- reviewing c++ code style or conventions
|
|
52
|
+
- refactoring c++ code
|
|
53
|
+
- setting up a c++ project
|
|
54
|
+
always_load: true
|
|
55
|
+
|
|
56
|
+
- id: cpp-concurrency-safety
|
|
57
|
+
file: cpp-concurrency-safety/SKILL.md
|
|
58
|
+
description: Enforce safe multi-threading patterns using RAII locking and task-based parallelism (C++14+).
|
|
59
|
+
applies_when:
|
|
60
|
+
- working with C++ threads
|
|
61
|
+
- using C++ mutexes or locking primitives
|
|
62
|
+
- performing C++ asynchronous operations
|
|
63
|
+
- designing multi-threaded C++ systems
|
|
64
|
+
|
|
65
|
+
- id: cpp-const-correctness
|
|
66
|
+
file: cpp-const-correctness/SKILL.md
|
|
67
|
+
description: Enforce immutability-by-default and push logic to compile-time using constexpr (C++14+).
|
|
68
|
+
applies_when:
|
|
69
|
+
- declaring C++ variables
|
|
70
|
+
- defining C++ member functions
|
|
71
|
+
- performing C++ compile-time calculations
|
|
72
|
+
- optimizing C++ logic
|
|
73
|
+
|
|
74
|
+
- id: cpp-memory-handling
|
|
75
|
+
file: cpp-memory-handling/SKILL.md
|
|
76
|
+
description: Enforces Modern C++ practices (RAII, Smart Pointers) to prevent memory leaks, dangling pointers, and buffer overflows.
|
|
77
|
+
applies_when:
|
|
78
|
+
- writing c++ code
|
|
79
|
+
- modifying memory-intensive C++ logic
|
|
80
|
+
- debugging memory leaks in c++
|
|
81
|
+
- implementing new c++ classes
|
|
82
|
+
|
|
83
|
+
- id: cpp-modern-composition
|
|
84
|
+
file: cpp-modern-composition/SKILL.md
|
|
85
|
+
description: Replace legacy C patterns with STL, Ranges, and modern C++ abstractions (C++14+).
|
|
86
|
+
applies_when:
|
|
87
|
+
- writing C++ logic or algorithms
|
|
88
|
+
- performing C++ refactoring
|
|
89
|
+
- handling C++ data transformations
|
|
90
|
+
- working with C++ collections
|
|
91
|
+
always_load: true
|
|
92
|
+
|
|
93
|
+
- id: cpp-robust-interfaces
|
|
94
|
+
file: cpp-robust-interfaces/SKILL.md
|
|
95
|
+
description: Enforce contract-based design and strong typing in C++ interfaces (C++14+).
|
|
96
|
+
applies_when:
|
|
97
|
+
- creating or modifying C++ header files
|
|
98
|
+
- designing C++ function signatures
|
|
99
|
+
- defining C++ APIs or public interfaces
|
|
100
|
+
|
|
101
|
+
- id: create-hardened-docker-skill
|
|
102
|
+
file: create-hardened-docker-skill/SKILL.md
|
|
103
|
+
description: Creates production-ready hardened Docker configurations following CIS, OWASP, and NIST standards
|
|
104
|
+
|
|
105
|
+
- id: csharp-best-practices
|
|
106
|
+
file: csharp-best-practices/SKILL.md
|
|
107
|
+
description: Comprehensive C# coding standards covering modern C# (C# 10-12), async/await, LINQ, dependency injection basics, nullable reference types, and testing conventions.
|
|
108
|
+
applies_when:
|
|
109
|
+
- writing c# code
|
|
110
|
+
- creating new c# files or classes
|
|
111
|
+
- reviewing c# code style or conventions
|
|
112
|
+
- working with .net projects
|
|
113
|
+
- setting up a c# project
|
|
114
|
+
always_load: true
|
|
115
|
+
|
|
116
|
+
- id: docker-hardening-verification
|
|
117
|
+
file: docker-hardening-verification/SKILL.md
|
|
118
|
+
description: Audits Docker images for security best practices, least privilege, and OpenShift compliance.
|
|
119
|
+
|
|
120
|
+
- id: docker-image-signing
|
|
121
|
+
file: docker-image-signing/SKILL.md
|
|
122
|
+
description: Automates the signing of Docker images using certificates and Cosign/Notary.
|
|
123
|
+
|
|
124
|
+
- id: document-revision-history
|
|
125
|
+
file: document-revision-history/SKILL.md
|
|
126
|
+
description: Manages a revision history table at the beginning of generated documents, tracking changes per version.
|
|
127
|
+
applies_when:
|
|
128
|
+
- generating or updating planning documents
|
|
129
|
+
- creating specification or design documents
|
|
130
|
+
- modifying existing markdown documents that have a revision history table
|
|
131
|
+
|
|
4
132
|
- id: git-workflow-skill
|
|
5
133
|
file: git-workflow-skill/SKILL.md
|
|
6
134
|
description: MANDATORY worktree-based workflow for ALL file-changing activities. Enforces isolated feature branches, conventional commits, and PR-based merging.
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: AI Audit Trail
|
|
3
|
+
description: Tracks AI agent session activity, time spent, and token usage in a project-level AiAudit.md log file.
|
|
4
|
+
---
|
|
5
|
+
# AI Audit Trail
|
|
6
|
+
|
|
7
|
+
At the end of every significant agent session, append an entry to `{project_root}/AiAudit.md`. If the file does not exist, create it with a `# AI Audit Trail` header first.
|
|
8
|
+
|
|
9
|
+
## Entry Format
|
|
10
|
+
|
|
11
|
+
```markdown
|
|
12
|
+
| Date | Task | Tokens (est.) |
|
|
13
|
+
|------|------|---------------|
|
|
14
|
+
| YYYY-MM-DD | Brief task description | In: ~X / Out: ~Y |
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Rules
|
|
18
|
+
|
|
19
|
+
- **Append only** — never delete or modify previous entries
|
|
20
|
+
- **One row per session** — combine multiple tasks in the same session into one entry
|
|
21
|
+
- **Estimate tokens** — round to nearest thousand, prefix with `~`. Write `N/A` if unknown
|
|
22
|
+
- Write the entry as the **last action** before presenting results to the user
|
|
23
|
+
- Skip trivial interactions (single-question answers, quick lookups)
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: auto-bug-detection
|
|
3
|
+
description: Instructs agents to identify and report defects in already-delivered code
|
|
4
|
+
---
|
|
5
|
+
# Auto Bug Detection
|
|
6
|
+
|
|
7
|
+
Proactively identify and report defects found in already-delivered code during all agent sessions.
|
|
8
|
+
|
|
9
|
+
## Purpose
|
|
10
|
+
|
|
11
|
+
When you encounter code that has already been delivered (story/task marked done), you must scan for defects
|
|
12
|
+
and report them using the structured format below. Do not silently ignore bugs in delivered code.
|
|
13
|
+
|
|
14
|
+
## Detection Scope
|
|
15
|
+
|
|
16
|
+
### Delivered Code (MUST scan and report bugs)
|
|
17
|
+
|
|
18
|
+
- Code whose associated story/task is marked **done** or **completed**, regardless of branch.
|
|
19
|
+
- Committed code on `main` or release branches.
|
|
20
|
+
- Committed code on feature branches whose **parent story is completed**.
|
|
21
|
+
|
|
22
|
+
### Work-in-Progress (DO NOT flag as bugs)
|
|
23
|
+
|
|
24
|
+
- Uncommitted changes in the working tree.
|
|
25
|
+
- Committed code on a branch whose associated story is still **in-progress** or **not-started**.
|
|
26
|
+
- `TODO` / `FIXME` markers in code added as part of the **current story under review**.
|
|
27
|
+
- Incomplete implementations explicitly tied to an active story.
|
|
28
|
+
|
|
29
|
+
### Ambiguous Boundary — Feature Branches
|
|
30
|
+
|
|
31
|
+
Committed code on a feature branch where the story status is **unknown** must be treated as WIP.
|
|
32
|
+
|
|
33
|
+
To resolve the status, use the `story-status-lookup` skill — it defines how to identify the story slug,
|
|
34
|
+
which file to read, and how to map status values to delivered vs WIP. Follow its fallback rule:
|
|
35
|
+
when status cannot be determined, **default to WIP and do NOT flag as a bug**.
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Detection Criteria
|
|
40
|
+
|
|
41
|
+
Scan delivered code for the following categories of defects. Each category includes examples of what qualifies.
|
|
42
|
+
|
|
43
|
+
### 1. Logic Errors
|
|
44
|
+
|
|
45
|
+
Incorrect computational logic, wrong conditionals, or inverted boolean expressions that cause the code
|
|
46
|
+
to produce incorrect results.
|
|
47
|
+
|
|
48
|
+
**Examples:**
|
|
49
|
+
- Using `>` instead of `>=` in a boundary check, silently excluding a valid edge value.
|
|
50
|
+
- An accumulator initialized to `1` instead of `0`, skewing totals.
|
|
51
|
+
- A loop that iterates one too many or one too few times (off-by-one error).
|
|
52
|
+
|
|
53
|
+
### 2. Unhandled Edge Cases
|
|
54
|
+
|
|
55
|
+
Inputs or states that the code does not handle, leading to incorrect behavior or crashes.
|
|
56
|
+
|
|
57
|
+
**Examples:**
|
|
58
|
+
- A function that accepts a list but does not handle an empty list, throwing an index error.
|
|
59
|
+
- A parser that crashes on a valid but empty string input.
|
|
60
|
+
- Division without a zero-check on the divisor.
|
|
61
|
+
|
|
62
|
+
### 3. Missing Error Handling
|
|
63
|
+
|
|
64
|
+
Absence of error handling for operations that can fail, causing unhandled exceptions or silent failures.
|
|
65
|
+
|
|
66
|
+
**Examples:**
|
|
67
|
+
- File I/O calls with no try/catch, crashing the process on a missing file.
|
|
68
|
+
- Network requests with no timeout or error callback.
|
|
69
|
+
- A database query whose rejection is swallowed without logging or recovery.
|
|
70
|
+
|
|
71
|
+
### 4. Broken Contracts
|
|
72
|
+
|
|
73
|
+
Code that violates the API contract it published: wrong return types, missing required fields in
|
|
74
|
+
responses, or side effects not documented in the interface.
|
|
75
|
+
|
|
76
|
+
**Examples:**
|
|
77
|
+
- A function documented to return `string | null` but sometimes returns `undefined`.
|
|
78
|
+
- A REST endpoint returning HTTP 200 for a failed operation instead of the correct 4xx/5xx code.
|
|
79
|
+
- A class method mutating shared state that is not documented as a side effect.
|
|
80
|
+
|
|
81
|
+
### 5. Regressions
|
|
82
|
+
|
|
83
|
+
Previously working behavior that is now broken, typically introduced by a change in a related component.
|
|
84
|
+
|
|
85
|
+
**Examples:**
|
|
86
|
+
- A utility function refactored to accept a new parameter that broke all existing callers that pass no argument.
|
|
87
|
+
- A config key renamed in one place but not updated in all consumers, causing silent runtime failures.
|
|
88
|
+
- A test that was green before a dependency upgrade and now fails due to an incompatible API change.
|
|
89
|
+
|
|
90
|
+
### 6. Security Vulnerabilities
|
|
91
|
+
|
|
92
|
+
Code patterns that introduce exploitable security weaknesses in existing, delivered functionality.
|
|
93
|
+
|
|
94
|
+
**Examples:**
|
|
95
|
+
- User-supplied input passed directly into a shell command without sanitization (command injection).
|
|
96
|
+
- Secrets or API keys hard-coded in source files committed to the repository.
|
|
97
|
+
- SQL queries constructed via string concatenation with unsanitized user input (SQL injection).
|
|
98
|
+
- Sensitive data (passwords, tokens) logged at INFO level in production code.
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
## Reporting Format
|
|
103
|
+
|
|
104
|
+
When a defect is detected in delivered code, report it using this structured template:
|
|
105
|
+
|
|
106
|
+
```
|
|
107
|
+
## Bug Report
|
|
108
|
+
|
|
109
|
+
**Title:** [Short, descriptive title]
|
|
110
|
+
**Severity:** [critical | high | medium | low]
|
|
111
|
+
**Category:** [logic-error | unhandled-edge-case | missing-error-handling | broken-contract | regression | security-vulnerability]
|
|
112
|
+
**Affected Component:** [Module, file, or system area]
|
|
113
|
+
|
|
114
|
+
**Reproduction Steps:**
|
|
115
|
+
1. [Step 1]
|
|
116
|
+
2. [Step 2]
|
|
117
|
+
|
|
118
|
+
**Expected Behavior:**
|
|
119
|
+
[What should happen]
|
|
120
|
+
|
|
121
|
+
**Actual Behavior:**
|
|
122
|
+
[What actually happens]
|
|
123
|
+
|
|
124
|
+
**Affected Files:**
|
|
125
|
+
- path/to/file.ext (line N)
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
**Severity Guidelines:**
|
|
129
|
+
- `critical` — Data loss, security breach, or system crash in normal usage.
|
|
130
|
+
- `high` — Core feature broken or serious security risk; blocks users.
|
|
131
|
+
- `medium` — Feature partially broken or degraded; workaround exists.
|
|
132
|
+
- `low` — Minor issue, cosmetic defect, or edge case with minimal user impact.
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## What NOT to Flag
|
|
137
|
+
|
|
138
|
+
Do **not** report the following as bugs:
|
|
139
|
+
|
|
140
|
+
- **Work-in-progress code** — Uncommitted changes or code on a branch with an active story.
|
|
141
|
+
- **TODO / FIXME comments** in code added as part of the **current story** being reviewed.
|
|
142
|
+
- **Incomplete implementations** explicitly tied to an active or not-yet-started story.
|
|
143
|
+
- **Style preferences** — Naming conventions, formatting, or architectural opinions not related to correctness.
|
|
144
|
+
- **Speculative issues** — Theoretical attack scenarios or failure modes with no demonstrable code path in the current codebase (e.g., an attack vector that requires filesystem access the process can never obtain).
|
|
145
|
+
|
|
146
|
+
---
|
|
147
|
+
|
|
148
|
+
## Required Action on Detection
|
|
149
|
+
|
|
150
|
+
The required action depends on severity:
|
|
151
|
+
|
|
152
|
+
### critical or high severity
|
|
153
|
+
|
|
154
|
+
**Immediately run `/create-bug-story`** without waiting for user confirmation. These defects represent
|
|
155
|
+
broken core functionality or security risks that must not be left untracked. Inform the user as you act:
|
|
156
|
+
|
|
157
|
+
> "I found a **[severity]** bug in delivered code — running `create-bug-story` now to ensure it is tracked."
|
|
158
|
+
|
|
159
|
+
Do not ask permission. Do not proceed with other tasks until the bug story is created.
|
|
160
|
+
|
|
161
|
+
### medium or low severity
|
|
162
|
+
|
|
163
|
+
**Recommend** that the user create a formal bug story, but do not act without their confirmation:
|
|
164
|
+
|
|
165
|
+
> "I found a **[severity]** bug in delivered code. Would you like me to run `create-bug-story` to log it
|
|
166
|
+
> formally so it can be scheduled in the sprint?"
|
|
167
|
+
|
|
168
|
+
If the user declines or does not respond, note the finding in your response and continue. The bug report
|
|
169
|
+
remains visible in the conversation but is not written to a file.
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Modern CMake Best Practices
|
|
3
|
+
description: Enforce target-based, property-oriented CMake patterns (CMake 3.0+).
|
|
4
|
+
---
|
|
5
|
+
# Modern CMake Best Practices (Target-Based Approach)
|
|
6
|
+
|
|
7
|
+
This skill ensures that CMake definitions follow the "Modern CMake" philosophy (3.0+), focusing on targets and properties rather than global variables.
|
|
8
|
+
|
|
9
|
+
## Policies
|
|
10
|
+
|
|
11
|
+
### 1. Target-Centric Philosophy
|
|
12
|
+
* **Rule**: Treat targets as objects. Use `target_*` commands instead of global commands.
|
|
13
|
+
* **Action**:
|
|
14
|
+
- **Forbidden**: `include_directories()`, `link_libraries()`, `add_definitions()`.
|
|
15
|
+
- **Mandatory**: `target_include_directories()`, `target_link_libraries()`, `target_compile_definitions()`.
|
|
16
|
+
* **Rationale**: Encapsulates requirements and prevents property leakage to unrelated targets.
|
|
17
|
+
|
|
18
|
+
### 2. Visibility Hygiene (`PUBLIC`, `PRIVATE`, `INTERFACE`)
|
|
19
|
+
* **Rule**: Always specify the scope of target properties.
|
|
20
|
+
* **Action**:
|
|
21
|
+
- `PRIVATE`: Requirement only for building the target.
|
|
22
|
+
- `INTERFACE`: Requirement only for consumers of the target.
|
|
23
|
+
- `PUBLIC`: Requirement for both.
|
|
24
|
+
* **Rationale**: Ensures that internal dependencies (like a private logging library) don't bleed into the usage requirements of your high-level API.
|
|
25
|
+
|
|
26
|
+
### 3. Feature-Based C++ Standards
|
|
27
|
+
* **Rule**: Do not manually set `CMAKE_CXX_STANDARD` or `-std=c++XX` flags.
|
|
28
|
+
* **Action**: Use `target_compile_features(my_target PUBLIC cxx_std_17)`.
|
|
29
|
+
* **Rationale**: Allows CMake to handle compiler-specific flags and ensures the compiler actually supports the requested features.
|
|
30
|
+
|
|
31
|
+
### 4. No Global Variable Manipulation
|
|
32
|
+
* **Rule**: Ban direct modification of `CMAKE_CXX_FLAGS` or `CMAKE_EXE_LINKER_FLAGS`.
|
|
33
|
+
* **Action**: Use `target_compile_options()` for specific compiler warnings or flags.
|
|
34
|
+
* **Rationale**: Global flags make it impossible to have different settings for different targets in the same project.
|
|
35
|
+
|
|
36
|
+
### 5. Namespaced Alias Targets
|
|
37
|
+
* **Rule**: Always provide an alias for library targets using a namespace.
|
|
38
|
+
* **Action**: `add_library(MyLib::MyLib ALIAS my_lib_target)`.
|
|
39
|
+
* **Rationale**: Makes exported targets look consistent with external dependencies (like those found via `find_package`).
|
|
40
|
+
|
|
41
|
+
## Examples
|
|
42
|
+
|
|
43
|
+
### Before (Legacy Procedural CMake)
|
|
44
|
+
```cmake
|
|
45
|
+
include_directories(${PROJECT_SOURCE_DIR}/include)
|
|
46
|
+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17 -Wall")
|
|
47
|
+
add_library(mylib mylib.cpp)
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### After (Modern Target-Based CMake)
|
|
51
|
+
```cmake
|
|
52
|
+
add_library(mylib mylib.cpp)
|
|
53
|
+
|
|
54
|
+
target_compile_features(mylib PUBLIC cxx_std_17)
|
|
55
|
+
target_compile_options(mylib PRIVATE -Wall)
|
|
56
|
+
|
|
57
|
+
target_include_directories(mylib
|
|
58
|
+
PUBLIC
|
|
59
|
+
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
|
|
60
|
+
$<INSTALL_INTERFACE:include>
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
add_library(MyProject::MyLib ALIAS mylib)
|
|
64
|
+
```
|