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.
Files changed (95) hide show
  1. package/.opencode/skills/.ma-agents.json +167 -48
  2. package/.opencode/skills/MANIFEST.yaml +128 -0
  3. package/.opencode/skills/ai-audit-trail/SKILL.md +23 -0
  4. package/.opencode/skills/auto-bug-detection/SKILL.md +169 -0
  5. package/.opencode/skills/cmake-best-practices/SKILL.md +64 -0
  6. package/.opencode/skills/cmake-best-practices/examples/cmake.md +59 -0
  7. package/.opencode/skills/code-documentation/SKILL.md +57 -0
  8. package/.opencode/skills/code-documentation/examples/cpp.md +29 -0
  9. package/.opencode/skills/code-documentation/examples/csharp.md +28 -0
  10. package/.opencode/skills/code-documentation/examples/javascript_typescript.md +28 -0
  11. package/.opencode/skills/code-documentation/examples/python.md +57 -0
  12. package/.opencode/skills/code-review/SKILL.md +43 -0
  13. package/.opencode/skills/commit-message/SKILL.md +79 -0
  14. package/.opencode/skills/cpp-best-practices/SKILL.md +234 -0
  15. package/.opencode/skills/cpp-best-practices/examples/modern-idioms.md +189 -0
  16. package/.opencode/skills/cpp-best-practices/examples/naming-and-organization.md +102 -0
  17. package/.opencode/skills/cpp-concurrency-safety/SKILL.md +60 -0
  18. package/.opencode/skills/cpp-concurrency-safety/examples/concurrency.md +73 -0
  19. package/.opencode/skills/cpp-const-correctness/SKILL.md +63 -0
  20. package/.opencode/skills/cpp-const-correctness/examples/const_correctness.md +54 -0
  21. package/.opencode/skills/cpp-memory-handling/SKILL.md +42 -0
  22. package/.opencode/skills/cpp-memory-handling/examples/modern-cpp.md +49 -0
  23. package/.opencode/skills/cpp-memory-handling/examples/smart-pointers.md +46 -0
  24. package/.opencode/skills/cpp-modern-composition/SKILL.md +64 -0
  25. package/.opencode/skills/cpp-modern-composition/examples/composition.md +51 -0
  26. package/.opencode/skills/cpp-robust-interfaces/SKILL.md +55 -0
  27. package/.opencode/skills/cpp-robust-interfaces/examples/interfaces.md +56 -0
  28. package/.opencode/skills/create-hardened-docker-skill/SKILL.md +637 -0
  29. package/.opencode/skills/create-hardened-docker-skill/scripts/create-all.sh +489 -0
  30. package/.opencode/skills/csharp-best-practices/SKILL.md +278 -0
  31. package/.opencode/skills/docker-hardening-verification/SKILL.md +28 -0
  32. package/.opencode/skills/docker-hardening-verification/scripts/verify-hardening.sh +39 -0
  33. package/.opencode/skills/docker-image-signing/SKILL.md +28 -0
  34. package/.opencode/skills/docker-image-signing/scripts/sign-image.sh +33 -0
  35. package/.opencode/skills/document-revision-history/SKILL.md +104 -0
  36. package/.roo/skills/.ma-agents.json +167 -48
  37. package/.roo/skills/MANIFEST.yaml +128 -0
  38. package/.roo/skills/ai-audit-trail/SKILL.md +23 -0
  39. package/.roo/skills/auto-bug-detection/SKILL.md +169 -0
  40. package/.roo/skills/cmake-best-practices/SKILL.md +64 -0
  41. package/.roo/skills/cmake-best-practices/examples/cmake.md +59 -0
  42. package/.roo/skills/code-documentation/SKILL.md +57 -0
  43. package/.roo/skills/code-documentation/examples/cpp.md +29 -0
  44. package/.roo/skills/code-documentation/examples/csharp.md +28 -0
  45. package/.roo/skills/code-documentation/examples/javascript_typescript.md +28 -0
  46. package/.roo/skills/code-documentation/examples/python.md +57 -0
  47. package/.roo/skills/code-review/SKILL.md +43 -0
  48. package/.roo/skills/commit-message/SKILL.md +79 -0
  49. package/.roo/skills/cpp-best-practices/SKILL.md +234 -0
  50. package/.roo/skills/cpp-best-practices/examples/modern-idioms.md +189 -0
  51. package/.roo/skills/cpp-best-practices/examples/naming-and-organization.md +102 -0
  52. package/.roo/skills/cpp-concurrency-safety/SKILL.md +60 -0
  53. package/.roo/skills/cpp-concurrency-safety/examples/concurrency.md +73 -0
  54. package/.roo/skills/cpp-const-correctness/SKILL.md +63 -0
  55. package/.roo/skills/cpp-const-correctness/examples/const_correctness.md +54 -0
  56. package/.roo/skills/cpp-memory-handling/SKILL.md +42 -0
  57. package/.roo/skills/cpp-memory-handling/examples/modern-cpp.md +49 -0
  58. package/.roo/skills/cpp-memory-handling/examples/smart-pointers.md +46 -0
  59. package/.roo/skills/cpp-modern-composition/SKILL.md +64 -0
  60. package/.roo/skills/cpp-modern-composition/examples/composition.md +51 -0
  61. package/.roo/skills/cpp-robust-interfaces/SKILL.md +55 -0
  62. package/.roo/skills/cpp-robust-interfaces/examples/interfaces.md +56 -0
  63. package/.roo/skills/create-hardened-docker-skill/SKILL.md +637 -0
  64. package/.roo/skills/create-hardened-docker-skill/scripts/create-all.sh +489 -0
  65. package/.roo/skills/csharp-best-practices/SKILL.md +278 -0
  66. package/.roo/skills/docker-hardening-verification/SKILL.md +28 -0
  67. package/.roo/skills/docker-hardening-verification/scripts/verify-hardening.sh +39 -0
  68. package/.roo/skills/docker-image-signing/SKILL.md +28 -0
  69. package/.roo/skills/docker-image-signing/scripts/sign-image.sh +33 -0
  70. package/.roo/skills/document-revision-history/SKILL.md +104 -0
  71. package/bin/cli.js +5 -4
  72. package/lib/agents.js +16 -1
  73. package/lib/bmad-extension/module-help.csv +4 -21
  74. package/lib/bmad-extension/skills/add-sprint/SKILL.md +40 -126
  75. package/lib/bmad-extension/skills/add-to-sprint/SKILL.md +142 -116
  76. package/lib/bmad-extension/skills/create-bug-story/SKILL.md +7 -75
  77. package/lib/bmad-extension/skills/modify-sprint/SKILL.md +0 -63
  78. package/lib/bmad-extension/skills/sprint-status-view/SKILL.md +138 -199
  79. package/lib/bmad-extension/workflows/add-sprint/workflow.md +39 -129
  80. package/lib/bmad-extension/workflows/add-to-sprint/workflow.md +205 -3
  81. package/lib/bmad-extension/workflows/modify-sprint/workflow.md +0 -5
  82. package/lib/bmad-extension/workflows/sprint-status-view/workflow.md +192 -3
  83. package/package.json +1 -1
  84. package/lib/bmad-extension/skills/cleanup-done/.gitkeep +0 -0
  85. package/lib/bmad-extension/skills/cleanup-done/SKILL.md +0 -159
  86. package/lib/bmad-extension/skills/cleanup-done/bmad-skill-manifest.yaml +0 -3
  87. package/lib/bmad-extension/skills/generate-backlog/.gitkeep +0 -0
  88. package/lib/bmad-extension/skills/generate-backlog/SKILL.md +0 -183
  89. package/lib/bmad-extension/skills/generate-backlog/bmad-skill-manifest.yaml +0 -3
  90. package/lib/bmad-extension/skills/prioritize-backlog/.gitkeep +0 -0
  91. package/lib/bmad-extension/skills/prioritize-backlog/SKILL.md +0 -195
  92. package/lib/bmad-extension/skills/prioritize-backlog/bmad-skill-manifest.yaml +0 -3
  93. package/lib/bmad-extension/skills/remove-from-sprint/.gitkeep +0 -0
  94. package/lib/bmad-extension/skills/remove-from-sprint/SKILL.md +0 -163
  95. 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-02T10:55:34.181Z",
12
- "updatedAt": "2026-04-02T10:55:34.181Z",
13
- "installerVersion": "3.4.7",
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-02T10:55:38.637Z",
19
- "updatedAt": "2026-04-02T10:55:38.637Z",
20
- "installerVersion": "3.4.7",
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-02T10:55:40.623Z",
26
- "updatedAt": "2026-04-02T10:55:40.623Z",
27
- "installerVersion": "3.4.7",
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-02T10:55:41.631Z",
33
- "updatedAt": "2026-04-02T10:55:41.631Z",
34
- "installerVersion": "3.4.7",
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-02T10:55:42.829Z",
40
- "updatedAt": "2026-04-02T10:55:42.829Z",
41
- "installerVersion": "3.4.7",
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-02T10:55:44.088Z",
47
- "updatedAt": "2026-04-02T10:55:44.088Z",
48
- "installerVersion": "3.4.7",
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-02T10:55:45.390Z",
54
- "updatedAt": "2026-04-02T10:55:45.390Z",
55
- "installerVersion": "3.4.7",
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-02T10:55:46.375Z",
61
- "updatedAt": "2026-04-02T10:55:46.375Z",
62
- "installerVersion": "3.4.7",
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-02T10:55:47.153Z",
68
- "updatedAt": "2026-04-02T10:55:47.153Z",
69
- "installerVersion": "3.4.7",
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-02T10:55:48.480Z",
75
- "updatedAt": "2026-04-02T10:55:48.480Z",
76
- "installerVersion": "3.4.7",
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-02T10:55:50.426Z",
82
- "updatedAt": "2026-04-02T10:55:50.426Z",
83
- "installerVersion": "3.4.7",
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-02T10:55:51.221Z",
89
- "updatedAt": "2026-04-02T10:55:51.221Z",
90
- "installerVersion": "3.4.7",
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-02T10:55:51.997Z",
96
- "updatedAt": "2026-04-02T10:55:51.997Z",
97
- "installerVersion": "3.4.7",
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-02T10:55:53.511Z",
103
- "updatedAt": "2026-04-02T10:55:53.511Z",
104
- "installerVersion": "3.4.7",
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-02T10:55:54.376Z",
110
- "updatedAt": "2026-04-02T10:55:54.376Z",
111
- "installerVersion": "3.4.7",
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-02T10:55:56.461Z",
117
- "updatedAt": "2026-04-02T10:55:56.461Z",
118
- "installerVersion": "3.4.7",
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
+ ```