create-harness-vibe-coding 0.8.16 → 0.8.18
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/CHANGELOG.md +18 -0
- package/README-CN.md +100 -127
- package/README.md +63 -42
- package/package.json +1 -1
- package/src/generator.js +628 -121
- package/src/index.js +174 -43
- package/src/prompts.js +18 -0
- package/templates/common/.claude/commands/wf-auto-spark.md +16 -0
- package/templates/common/.claude/commands/wf-auto.md +16 -0
- package/templates/{optional/skills/browser-e2e/.opencode → common/.claude}/commands/wf-browser.md +1 -1
- package/templates/common/.claude/commands/wf-command-create.md +58 -0
- package/templates/common/.claude/commands/wf-help.md +13 -6
- package/templates/common/.claude/commands/wf-learn.md +16 -0
- package/templates/common/.claude/commands/wf-max.md +20 -0
- package/templates/common/.claude/commands/wf-readme.md +16 -0
- package/templates/common/.claude/commands/wf-remove.md +16 -0
- package/templates/common/.claude/commands/wf-review.md +16 -0
- package/templates/common/.claude/commands/wf-task-archive.md +26 -0
- package/templates/common/.claude/commands/wf-task-list.md +24 -0
- package/templates/common/.claude/commands/wf-task-record.md +24 -0
- package/templates/common/.claude/commands/wf.md +16 -0
- package/templates/common/.claude/rules/ecc/common.md +1 -1
- package/templates/common/.claude/skills/wf-agents-docs/SKILL.md +15 -30
- package/templates/common/.claude/skills/wf-browser/SKILL.md +176 -0
- package/templates/common/.claude/skills/wf-command-create/SKILL.md +37 -0
- package/templates/common/.claude/skills/wf-help/SKILL.md +30 -0
- package/templates/common/.claude/skills/wf-max/SKILL.md +22 -8
- package/templates/common/.claude/skills/wf-review/SKILL.md +29 -2
- package/templates/common/.claude/skills/wf-task-archive/SKILL.md +28 -0
- package/templates/common/.claude/skills/wf-task-list/SKILL.md +28 -0
- package/templates/common/.claude/skills/wf-task-record/SKILL.md +28 -0
- package/templates/common/.codex/config.toml +3 -5
- package/templates/common/.harness-version +108 -41
- package/templates/common/.opencode/agents/architect-manager.md +7 -1
- package/templates/common/.opencode/agents/explore-manager.md +10 -1
- package/templates/common/.opencode/agents/implement-manager.md +5 -3
- package/templates/common/.opencode/agents/review-manager.md +5 -2
- package/templates/common/.opencode/commands/wf-browser.md +16 -0
- package/templates/common/.opencode/commands/wf-command-create.md +61 -0
- package/templates/common/.opencode/commands/wf-help.md +13 -6
- package/templates/common/.opencode/commands/wf-max.md +12 -7
- package/templates/common/.opencode/commands/wf-task-archive.md +29 -0
- package/templates/common/.opencode/commands/wf-task-list.md +27 -0
- package/templates/common/.opencode/commands/wf-task-record.md +27 -0
- package/templates/common/CLAUDE.md +9 -7
- package/templates/common/Harness/MEMORY.md +12 -3
- package/templates/common/Harness/README.md +23 -41
- package/templates/common/Harness/ownership.manifest.json +162 -14
- package/templates/common/Harness/scripts/archive-tasks.mjs +12 -220
- package/templates/common/Harness/scripts/scan-clean.mjs +3 -9
- package/templates/common/Harness/scripts/task-state.mjs +1279 -0
- package/templates/common/Harness/scripts/validate-harness.mjs +635 -65
- package/templates/common/Harness/scripts/wf-remove.mjs +37 -5
- package/templates/common/Harness/scripts/wf-update-check.mjs +3 -0
- package/templates/common/Harness/specs/guides/SETUP.md +10 -2
- package/templates/common/Harness/specs/protocols/MEMORY_PROTOCOL.md +15 -0
- package/templates/common/Harness/specs/protocols/TASK_ARCHIVE.md +49 -23
- package/templates/common/Harness/specs/runtime/command-surface.json +215 -0
- package/templates/common/Harness/specs/runtime/dispatch.md +2 -2
- package/templates/common/Harness/specs/runtime/subagents.md +15 -5
- package/templates/common/Harness/specs/workflows/WF-AUTO.md +6 -6
- package/templates/common/Harness/specs/workflows/WF-KERNEL.md +1 -1
- package/templates/common/Harness/specs/workflows/WF-MAX.md +35 -2
- package/templates/common/Harness/specs/workflows/WF-STATE.md +155 -36
- package/templates/common/Harness/tasks/_template/STATE.json +6 -0
- package/templates/common/opencode.json +1 -0
- package/templates/optional/catalog.json +2 -9
- package/templates/optional/skills/browser-e2e/.claude/skills/browser-e2e/SKILL.md +0 -42
- package/templates/optional/skills/browser-e2e/.claude/skills/wf-browser/SKILL.md +0 -201
- package/templates/optional/skills/browser-e2e/Harness/workflows/browser-e2e.md +0 -119
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
{
|
|
2
|
-
"generator": "0.8.
|
|
3
|
-
"generated": "2026-07-
|
|
2
|
+
"generator": "0.8.18",
|
|
3
|
+
"generated": "2026-07-29T06:33:44.000Z",
|
|
4
4
|
"options": [],
|
|
5
5
|
"autoCheck": true,
|
|
6
6
|
"source": "https://raw.githubusercontent.com/LiWeny16/create-harness-vibe-coding/main/templates/common/",
|
|
7
7
|
"releaseNotes": {
|
|
8
|
-
"version": "0.8.
|
|
9
|
-
"date": "2026-07-
|
|
8
|
+
"version": "0.8.18",
|
|
9
|
+
"date": "2026-07-29",
|
|
10
10
|
"highlights": [
|
|
11
|
-
"
|
|
12
|
-
"
|
|
13
|
-
"
|
|
11
|
+
"Add explicit task capsule management with list, archive, record/open state recovery, create-or-resume matching, task dependency metadata, and validator coverage.",
|
|
12
|
+
"Add `wf-command-create` as the atomic command/skill creation workflow so new Harness commands update command files, skills, templates, mirrors, validators, and tests together.",
|
|
13
|
+
"Add global install metadata for Claude, Codex, and OpenCode while keeping Harness tasks and progress project-local.",
|
|
14
|
+
"Separate project/global memory and settings policy, with project settings taking precedence and task capsules remaining project-scoped.",
|
|
15
|
+
"Harden host-global ownership and validation rules so framework-owned global command/skill files can update safely while user-authored files remain protected.",
|
|
16
|
+
"Strengthen `wf-review`, `wf-agents-docs`, and WF-MAX guidance around explicit WF triggers, bounded peer output, and task capsule recording."
|
|
14
17
|
]
|
|
15
18
|
},
|
|
16
19
|
"moves": [
|
|
@@ -156,14 +159,20 @@
|
|
|
156
159
|
"checksums": {
|
|
157
160
|
".agents/skills/subagent-orchestrator/SKILL.md": "sha256-6354018aaafd3d9f546eeecc90f943ef9a94d05747673369586a4a2f45a9464d",
|
|
158
161
|
".agents/skills/tdd/SKILL.md": "sha256-d6738eca127e0632474db67c25708c9db3feab3b55499c489518502ec8951e3a",
|
|
159
|
-
".agents/skills/wf-agents-docs/SKILL.md": "sha256-
|
|
162
|
+
".agents/skills/wf-agents-docs/SKILL.md": "sha256-20cd0d52d600ba9a61cbeb7fefea3beed213f77a87f23a1b534e6229949d5b01",
|
|
160
163
|
".agents/skills/wf-auto-spark/SKILL.md": "sha256-0afd699c52a45a4071bcecf09ee487adb6002be6c608fdf653fba1c0a00e4ec4",
|
|
161
164
|
".agents/skills/wf-auto/SKILL.md": "sha256-e62077d3c54d946f549c781fdf3f765c9a0ced41d0bedc96915b7167c3332987",
|
|
165
|
+
".agents/skills/wf-browser/SKILL.md": "sha256-0914538f7ae624b66cede82593f8063716c96c0f7b36adebbcf413c9e2a1d836",
|
|
166
|
+
".agents/skills/wf-command-create/SKILL.md": "sha256-b8df91106d4ea161d659d1099a2ae509b8c81e9954946c2f53629ccbc5ffe70a",
|
|
167
|
+
".agents/skills/wf-help/SKILL.md": "sha256-418564cbe5e2df1e63fccdc9cd1cc12b05df9589836c6ff39ff43610eddf4e56",
|
|
162
168
|
".agents/skills/wf-learn/SKILL.md": "sha256-39e4bbe2da1261c02e37aa03ade0f9faaf6bc1f89568af1bb70f1af45d5f5bda",
|
|
163
|
-
".agents/skills/wf-max/SKILL.md": "sha256-
|
|
169
|
+
".agents/skills/wf-max/SKILL.md": "sha256-b3e2fe922c7d7d5effee6a2d51324ff54049e2d419dba2f74dda025ed529c561",
|
|
164
170
|
".agents/skills/wf-readme/SKILL.md": "sha256-32256ab8e87fc1c2606fd102d85b59fa0b406d88d5639c2f9ff2f02e83f7d81f",
|
|
165
171
|
".agents/skills/wf-remove/SKILL.md": "sha256-2de3d7b5cba2456a83aaa86487492a627d836526dbd2da1225cec9d7634b625c",
|
|
166
|
-
".agents/skills/wf-review/SKILL.md": "sha256-
|
|
172
|
+
".agents/skills/wf-review/SKILL.md": "sha256-11117d7de4cd3cfd1616538233487420fff5a5d2a91754a68dc3a3134d06d29e",
|
|
173
|
+
".agents/skills/wf-task-archive/SKILL.md": "sha256-f1637ee8c56b1385aed5db9c93f74889c2542a85273fdc68c6a4975a906f1cd5",
|
|
174
|
+
".agents/skills/wf-task-list/SKILL.md": "sha256-04bcae617ef70e6b46c267ed726f6e8352d2f0b72aaaa8a486e3a760a8144b48",
|
|
175
|
+
".agents/skills/wf-task-record/SKILL.md": "sha256-7afb4a9f04da96e45b9159f596d00c563184a27aff538385519187f2868811f8",
|
|
167
176
|
".agents/skills/wf-update/SKILL.md": "sha256-98a762d8d13b2ad36331b97c94b0b28b3103ee091814cc2c3710861895611e14",
|
|
168
177
|
".agents/skills/wf/SKILL.md": "sha256-78cc8b5be329649508b9fa6856b50c709ae74fbc31a4c7b77a69c6552723e29b",
|
|
169
178
|
".claude/agents/architect-manager.md": "sha256-21f16d8d5e9d0a88d9663dbe798421501e0de89ccad5f8f3c1ef9db5b79edaf7",
|
|
@@ -185,38 +194,57 @@
|
|
|
185
194
|
".claude/agents/tdd-guide.md": "sha256-5d97c223b20d8c076839c0c5812e3a188a4ff703dcbcd0d13627e335827d8768",
|
|
186
195
|
".claude/agents/test-writer.md": "sha256-a1b8b8dd6bf804391e68940265a989864d47fe78fb4c42eb3eaa37f7fbf5c67e",
|
|
187
196
|
".claude/agents/verifier.md": "sha256-30f3e49fae9464d58de50196089316d913aa545bd5c97cc84e05725ca49bdd24",
|
|
188
|
-
".claude/commands/wf-
|
|
197
|
+
".claude/commands/wf-auto-spark.md": "sha256-503c88eba452f20ca04c32db734eed1c666a381bd6948c3ffe18f5c4a4255729",
|
|
198
|
+
".claude/commands/wf-auto.md": "sha256-06196a633eb0464ff152e7bfffabd76c09ab32a2aef9d84b82bbb4c204503226",
|
|
199
|
+
".claude/commands/wf-browser.md": "sha256-1cd46b259cb509af2d0bb1d105912889068611875c008e002598d0e7ed42cf52",
|
|
200
|
+
".claude/commands/wf-command-create.md": "sha256-b6027172e5d98c44f1ac22747a9ad52b27de15271018a60b10ac5b7c3d96f4a0",
|
|
201
|
+
".claude/commands/wf-help.md": "sha256-db9dc794255eb865b947c1a00020d9a1511d4f90a590cab480730e9576949aa9",
|
|
202
|
+
".claude/commands/wf-learn.md": "sha256-02606f2a91e03056676aa022a060cd4a05a4d3123f8cb6f5e27bc50d90c6448a",
|
|
203
|
+
".claude/commands/wf-max.md": "sha256-88cdfb4ef8a205483045302b56dec268bdf010debd9c4473b665f5720e4c5697",
|
|
204
|
+
".claude/commands/wf-readme.md": "sha256-3eee1a6b3f62c22ed46440ed38ecb02999c9a3128d7660e91e7f0a94c59fa463",
|
|
205
|
+
".claude/commands/wf-remove.md": "sha256-80fe1849412028c9a91120143eeb10e153e6d7c32ec502c0d7ef3599d13fa337",
|
|
206
|
+
".claude/commands/wf-review.md": "sha256-bb031ffc8e392af2c1b2bb97b2f7605af1dcfa70514c6068312eca01f170e6d9",
|
|
207
|
+
".claude/commands/wf-task-archive.md": "sha256-95b7c0a7bb2946b8c6c57506726358e7cc57cc2d9b1b48bd43b102a9a77ca3da",
|
|
208
|
+
".claude/commands/wf-task-list.md": "sha256-daf36faca4ffa9904f4229d30c38c2cb3f986f2223cc80624f09b36e2f240266",
|
|
209
|
+
".claude/commands/wf-task-record.md": "sha256-e9fa479274bdece66afa631642a87c7e2500f1dc1e58b930660cebeef4eae748",
|
|
189
210
|
".claude/commands/wf-update.md": "sha256-f6aa497209ad6c430771b5621720bca50bb06cf5ae3f40dfe1086f0372c232d7",
|
|
190
|
-
".claude/
|
|
211
|
+
".claude/commands/wf.md": "sha256-bef81f0404230ff0de64727d46aa947d7434d06fde8ad03c55db9ccf54870cca",
|
|
212
|
+
".claude/rules/ecc/common.md": "sha256-e31150aec333867e688d36fbf26a9508d560bc51557c7ebb5717fa3484bf47f4",
|
|
191
213
|
".claude/settings.json": "sha256-99e8552584b8e71e3e11b4b760c3bfbf8c1b18dadda7ec3f6e3c46f88d9ea513",
|
|
192
214
|
".claude/skills/subagent-orchestrator/SKILL.md": "sha256-6354018aaafd3d9f546eeecc90f943ef9a94d05747673369586a4a2f45a9464d",
|
|
193
215
|
".claude/skills/tdd/SKILL.md": "sha256-d6738eca127e0632474db67c25708c9db3feab3b55499c489518502ec8951e3a",
|
|
194
|
-
".claude/skills/wf-agents-docs/SKILL.md": "sha256-
|
|
216
|
+
".claude/skills/wf-agents-docs/SKILL.md": "sha256-20cd0d52d600ba9a61cbeb7fefea3beed213f77a87f23a1b534e6229949d5b01",
|
|
195
217
|
".claude/skills/wf-auto-spark/SKILL.md": "sha256-0afd699c52a45a4071bcecf09ee487adb6002be6c608fdf653fba1c0a00e4ec4",
|
|
196
218
|
".claude/skills/wf-auto/SKILL.md": "sha256-e62077d3c54d946f549c781fdf3f765c9a0ced41d0bedc96915b7167c3332987",
|
|
219
|
+
".claude/skills/wf-browser/SKILL.md": "sha256-0914538f7ae624b66cede82593f8063716c96c0f7b36adebbcf413c9e2a1d836",
|
|
220
|
+
".claude/skills/wf-command-create/SKILL.md": "sha256-b8df91106d4ea161d659d1099a2ae509b8c81e9954946c2f53629ccbc5ffe70a",
|
|
221
|
+
".claude/skills/wf-help/SKILL.md": "sha256-418564cbe5e2df1e63fccdc9cd1cc12b05df9589836c6ff39ff43610eddf4e56",
|
|
197
222
|
".claude/skills/wf-learn/SKILL.md": "sha256-39e4bbe2da1261c02e37aa03ade0f9faaf6bc1f89568af1bb70f1af45d5f5bda",
|
|
198
|
-
".claude/skills/wf-max/SKILL.md": "sha256-
|
|
223
|
+
".claude/skills/wf-max/SKILL.md": "sha256-b3e2fe922c7d7d5effee6a2d51324ff54049e2d419dba2f74dda025ed529c561",
|
|
199
224
|
".claude/skills/wf-readme/SKILL.md": "sha256-32256ab8e87fc1c2606fd102d85b59fa0b406d88d5639c2f9ff2f02e83f7d81f",
|
|
200
225
|
".claude/skills/wf-remove/SKILL.md": "sha256-2de3d7b5cba2456a83aaa86487492a627d836526dbd2da1225cec9d7634b625c",
|
|
201
|
-
".claude/skills/wf-review/SKILL.md": "sha256-
|
|
226
|
+
".claude/skills/wf-review/SKILL.md": "sha256-11117d7de4cd3cfd1616538233487420fff5a5d2a91754a68dc3a3134d06d29e",
|
|
227
|
+
".claude/skills/wf-task-archive/SKILL.md": "sha256-f1637ee8c56b1385aed5db9c93f74889c2542a85273fdc68c6a4975a906f1cd5",
|
|
228
|
+
".claude/skills/wf-task-list/SKILL.md": "sha256-04bcae617ef70e6b46c267ed726f6e8352d2f0b72aaaa8a486e3a760a8144b48",
|
|
229
|
+
".claude/skills/wf-task-record/SKILL.md": "sha256-7afb4a9f04da96e45b9159f596d00c563184a27aff538385519187f2868811f8",
|
|
202
230
|
".claude/skills/wf-update/SKILL.md": "sha256-98a762d8d13b2ad36331b97c94b0b28b3103ee091814cc2c3710861895611e14",
|
|
203
231
|
".claude/skills/wf/SKILL.md": "sha256-78cc8b5be329649508b9fa6856b50c709ae74fbc31a4c7b77a69c6552723e29b",
|
|
204
|
-
".codex/config.toml": "sha256-
|
|
232
|
+
".codex/config.toml": "sha256-b561d07aaba9bb32df0c48713f6a00be95462af9fa9383efb7cee89f9b24f9ba",
|
|
205
233
|
".codex/hooks.json": "sha256-3200c42c2da434c07cd6ab1ce86f8845ab46a1ed9a25b65117b2b2b42056c725",
|
|
206
|
-
".opencode/agents/architect-manager.md": "sha256-
|
|
234
|
+
".opencode/agents/architect-manager.md": "sha256-66851f79d5e6ce2ddd5975c03312f6867933279a236ee1c9d4277ae568e65048",
|
|
207
235
|
".opencode/agents/architect.md": "sha256-62af1e1e63c059ea76b4bdd5c3ef997dfc0b505e6597b1f606bb932f11a73c8d",
|
|
208
236
|
".opencode/agents/codebase-explorer.md": "sha256-48623b12b6a1d8d2880861a6e202cea93be8263f625ab8ec85b7ae402d3131fe",
|
|
209
237
|
".opencode/agents/context-master.md": "sha256-5dd5f000f68f5a91f7e3c30c7c09767cf5ec61c63c78fea0b922e0f83adbc36d",
|
|
210
238
|
".opencode/agents/debugger.md": "sha256-7488bb356a21aa83195475aec246efb38c515c24d46a3cec8d4d11a705b94e1b",
|
|
211
239
|
".opencode/agents/docs-researcher.md": "sha256-dbb8fdfd0e6f8ff473df7d4c50183d4c8ec36a952bbd7d87eeb3bbbd106d346e",
|
|
212
|
-
".opencode/agents/explore-manager.md": "sha256-
|
|
213
|
-
".opencode/agents/implement-manager.md": "sha256-
|
|
240
|
+
".opencode/agents/explore-manager.md": "sha256-ea489eca9e973c5fe44568ccff9965eb2c63b2e08c29c395290353607a77de82",
|
|
241
|
+
".opencode/agents/implement-manager.md": "sha256-5f72067efc2936edddf4274fc4ff40a07222677a65fdd6bc7cd484f27562eaf3",
|
|
214
242
|
".opencode/agents/implementer.md": "sha256-57cfdd84dee2bec3156aeb612458e46198e1fcfc62f4372d95a2a4b7e4064932",
|
|
215
243
|
".opencode/agents/memory-master.md": "sha256-6656f91ee42a7d20441820f8fc92196b7f53df56172521fd04079cf9a1b2d196",
|
|
216
244
|
".opencode/agents/planner.md": "sha256-91dca932af07670d5d96056cd69415955d5c28ef6bbbeeebd9562477e5e1a153",
|
|
217
245
|
".opencode/agents/reflector.md": "sha256-4dc51c64c8fbaf462265b9438f614e793165d39cf92b9d0838a4860a3b6d70a1",
|
|
218
246
|
".opencode/agents/researcher.md": "sha256-1a2bca8a7d115585dba300edc49beda9e3be297d9c6ff8351a6532f3a2685d13",
|
|
219
|
-
".opencode/agents/review-manager.md": "sha256-
|
|
247
|
+
".opencode/agents/review-manager.md": "sha256-70b213b213078b418fa981727b3881a80d207d86e36744965a46dc65fd37e1e3",
|
|
220
248
|
".opencode/agents/reviewer.md": "sha256-688a412ce9e63dcbfeaefb30a55c91ea53c78b38f86ba85ce4d9a19d02d917eb",
|
|
221
249
|
".opencode/agents/task-scribe.md": "sha256-d0dc8a6df15bd0ba89363ba1ee110aabd914d0e3c6d7fbfc3acf98d6f25f00e4",
|
|
222
250
|
".opencode/agents/tdd-guide.md": "sha256-bd6154b0c1be7de0e386565b46fab9028def46136fc72a9fba673f0ddde3baaa",
|
|
@@ -224,52 +252,59 @@
|
|
|
224
252
|
".opencode/agents/verifier.md": "sha256-1e5b12cfe62bf85470b90671cca0407d6469f02cc1cced6a57d05550fa21e8fe",
|
|
225
253
|
".opencode/commands/wf-auto-spark.md": "sha256-503c88eba452f20ca04c32db734eed1c666a381bd6948c3ffe18f5c4a4255729",
|
|
226
254
|
".opencode/commands/wf-auto.md": "sha256-06196a633eb0464ff152e7bfffabd76c09ab32a2aef9d84b82bbb4c204503226",
|
|
227
|
-
".opencode/commands/wf-
|
|
255
|
+
".opencode/commands/wf-browser.md": "sha256-1cd46b259cb509af2d0bb1d105912889068611875c008e002598d0e7ed42cf52",
|
|
256
|
+
".opencode/commands/wf-command-create.md": "sha256-29b597b7c2c3b8a7e131365e1704855bbd2774511ed30cf99e398f77123e2981",
|
|
257
|
+
".opencode/commands/wf-help.md": "sha256-d1ff937d1d10a76270a23785e280bcd6f9d6dde05fa6d592da6094a8a819740b",
|
|
228
258
|
".opencode/commands/wf-learn.md": "sha256-02606f2a91e03056676aa022a060cd4a05a4d3123f8cb6f5e27bc50d90c6448a",
|
|
229
|
-
".opencode/commands/wf-max.md": "sha256-
|
|
259
|
+
".opencode/commands/wf-max.md": "sha256-21ddf8d4eff7ce91948a41eb68cbc9d184349ca3a422c72950fc83a5039eb663",
|
|
230
260
|
".opencode/commands/wf-readme.md": "sha256-3eee1a6b3f62c22ed46440ed38ecb02999c9a3128d7660e91e7f0a94c59fa463",
|
|
231
261
|
".opencode/commands/wf-remove.md": "sha256-80fe1849412028c9a91120143eeb10e153e6d7c32ec502c0d7ef3599d13fa337",
|
|
232
262
|
".opencode/commands/wf-review.md": "sha256-bb031ffc8e392af2c1b2bb97b2f7605af1dcfa70514c6068312eca01f170e6d9",
|
|
263
|
+
".opencode/commands/wf-task-archive.md": "sha256-eed9b41bd4fc9c4ca6d0b4aa2cc0492e7695173b6b5487a7a07683dec66de162",
|
|
264
|
+
".opencode/commands/wf-task-list.md": "sha256-66ba8af605aa83408b5a5c8621af52da98c5a9ed6bbad5be53290903a0a329fc",
|
|
265
|
+
".opencode/commands/wf-task-record.md": "sha256-c71c49e54f568eff816f5eea505d34a139e91f4f18aed504391ab6fa6afd539e",
|
|
233
266
|
".opencode/commands/wf-update.md": "sha256-f6aa497209ad6c430771b5621720bca50bb06cf5ae3f40dfe1086f0372c232d7",
|
|
234
267
|
".opencode/commands/wf.md": "sha256-bef81f0404230ff0de64727d46aa947d7434d06fde8ad03c55db9ccf54870cca",
|
|
235
268
|
".opencode/plugins/harness-wf-status.mjs": "sha256-ee0987cec5530c34784c619a803562d7085ae26fe5d199fde7ce42c2bed4724e",
|
|
236
269
|
"AGENTS.md": "sha256-fad176931742a5080e073d1ddba99a3eabb67e8c42bebb132df99a51ca6a184d",
|
|
237
|
-
"CLAUDE.md": "sha256-
|
|
238
|
-
"Harness/MEMORY.md": "sha256-
|
|
239
|
-
"Harness/README.md": "sha256-
|
|
240
|
-
"Harness/ownership.manifest.json": "sha256-
|
|
270
|
+
"CLAUDE.md": "sha256-7c1cd41ebbd6a87b2b59606aff70b7aab0bdce737bca013e8f55efd63292bfae",
|
|
271
|
+
"Harness/MEMORY.md": "sha256-896a7b09e96aa0f3041c577eab70160381856cf63a26a7daf74a0eb48dc3e898",
|
|
272
|
+
"Harness/README.md": "sha256-9bfe3caa4b28db129da66aba36d32bddc450b8399e5e14b03f66d3f1a8bcea47",
|
|
273
|
+
"Harness/ownership.manifest.json": "sha256-3948ecdaa8f9f05f46a6df4e5b7df1949b6ab268c850b9677bbc0ed77e579630",
|
|
241
274
|
"Harness/project/architecture.md": "sha256-27462306667539d71aecc4a90a778222f61585ef99e8131fb38f866913cac1c4",
|
|
242
275
|
"Harness/research/README.md": "sha256-b7a542c0d919cabc185b6e7a1e6ef265dc5160978d0c1dd804f2c6547d0202a4",
|
|
243
|
-
"Harness/scripts/archive-tasks.mjs": "sha256-
|
|
276
|
+
"Harness/scripts/archive-tasks.mjs": "sha256-c5891c32d23f0b1bc863753d11116ab593928aa9ebedf2768b68b77e88c9909c",
|
|
244
277
|
"Harness/scripts/context-budget.mjs": "sha256-079228fa11046c5e4ca7323ac09091b05a78efae03ce655fee0c608c6833c33f",
|
|
245
278
|
"Harness/scripts/l2-cache-telemetry.mjs": "sha256-139b5317eb3917f2ca0acd3cb1164170cc8c1dd60e0dee35f8d1596aed28c22c",
|
|
246
|
-
"Harness/scripts/scan-clean.mjs": "sha256-
|
|
247
|
-
"Harness/scripts/
|
|
279
|
+
"Harness/scripts/scan-clean.mjs": "sha256-6c4b2a4d15a8cd758214a360f8d3be11a835368d409c95719242c75ccf466c8a",
|
|
280
|
+
"Harness/scripts/task-state.mjs": "sha256-826fbdb6221011dd8b5b068dcb481ad133d4f05fc886e407a373e808e3c04b31",
|
|
281
|
+
"Harness/scripts/validate-harness.mjs": "sha256-9fdc0299a5af5f57a74a3f98eec25c102b3d9a855ecfa42fbcb62d6752f4024e",
|
|
248
282
|
"Harness/scripts/wf-auto-update-prompt.mjs": "sha256-14210304dbd8e648b8939fc4c5d3664f943052153e689264c16b05b7b81bd39e",
|
|
249
|
-
"Harness/scripts/wf-remove.mjs": "sha256-
|
|
250
|
-
"Harness/scripts/wf-update-check.mjs": "sha256-
|
|
283
|
+
"Harness/scripts/wf-remove.mjs": "sha256-1adc68b20f4f44cc44a6b52de2f3fc06a58edede6a73fff1f7bcd631a165a3fd",
|
|
284
|
+
"Harness/scripts/wf-update-check.mjs": "sha256-32e9ed19046ac9b4910a661dae8fc13c03a605912430009cc8f830c1fdab3984",
|
|
251
285
|
"Harness/settings.json": "sha256-db6a14fcaaba3d2ac9c0c11bd11273bd016bcc16c154895d4c0b2a03ef51786e",
|
|
252
286
|
"Harness/specs/guides/ECC-GUIDE.md": "sha256-eba123cad02dde928317b9347efac45daf33698221d2d91768559a1f0456cc97",
|
|
253
|
-
"Harness/specs/guides/SETUP.md": "sha256-
|
|
287
|
+
"Harness/specs/guides/SETUP.md": "sha256-2f33b14eec035c9603ad6355cecc109879e9320a7a29aa9e9be6bbc743362b38",
|
|
254
288
|
"Harness/specs/guides/extension.md": "sha256-5bf5895f849b972e5bdd1afd1a6914cd743b88b05668bb72dca7cd835262e8c9",
|
|
255
289
|
"Harness/specs/guides/lifecycle.md": "sha256-3bb2107af2ee569c905ca615d662ba9adfd606a595e45880cfc292779c5f1844",
|
|
256
290
|
"Harness/specs/protocols/ACCEPTANCE_PROTOCOL.md": "sha256-0f7a21a1fbfdca6e5f28f3297b61c3446e3bdd552a2143c7032d6271a4e26103",
|
|
257
291
|
"Harness/specs/protocols/AGENT_ISOLATION.md": "sha256-54abcd4fdaf8810ab42da8a7f2ab5b5f5305f105f93e8764081b10edce053506",
|
|
258
292
|
"Harness/specs/protocols/DEBUG_PROTOCOL.md": "sha256-ed80de0e3e1a40dbb9fd0bdead9174f1650e1833027f3d7fb4bb5884142e03f7",
|
|
259
293
|
"Harness/specs/protocols/HARNESS_BRIDGE.md": "sha256-681dbeca9a590bbeb3a0c01b044e40e642e6d640632d8611064eb897ada8a48d",
|
|
260
|
-
"Harness/specs/protocols/MEMORY_PROTOCOL.md": "sha256-
|
|
261
|
-
"Harness/specs/protocols/TASK_ARCHIVE.md": "sha256-
|
|
294
|
+
"Harness/specs/protocols/MEMORY_PROTOCOL.md": "sha256-5542c5007f278e0d83627d831beff4eaa58e2bc256f7962f562050de124e24d9",
|
|
295
|
+
"Harness/specs/protocols/TASK_ARCHIVE.md": "sha256-f526745f6dda7bb04b3540ca58c921b27aeca845b0cf65b9a0f7cdb0c1ed0f20",
|
|
262
296
|
"Harness/specs/protocols/TDD-GUIDE.md": "sha256-602084530fd0dea7499a023ce75738351e5d97a0c222b64d405f36da6b59a162",
|
|
263
297
|
"Harness/specs/runtime/agent-workflow.md": "sha256-9e6390715a9c2e404923d17e12369fe5af22c9a615ab14a010a8d6da0974c987",
|
|
298
|
+
"Harness/specs/runtime/command-surface.json": "sha256-9c74976ff14315f13bb6e02e19d200d295a287d236071e8b03570229d3719732",
|
|
264
299
|
"Harness/specs/runtime/context-loading.md": "sha256-323e9476486ebf60cfd9fd78834701817f882648749cd548dd7a47670fce0bd6",
|
|
265
|
-
"Harness/specs/runtime/dispatch.md": "sha256-
|
|
266
|
-
"Harness/specs/runtime/subagents.md": "sha256-
|
|
300
|
+
"Harness/specs/runtime/dispatch.md": "sha256-1b1c2681c2722b8d708f8cca48ec1991ee922602c4c7333704f0156f6ffa498f",
|
|
301
|
+
"Harness/specs/runtime/subagents.md": "sha256-bb71ae927dd5f4656f97a78797b1d776618a39b26a7364a256cbcf38db427e71",
|
|
267
302
|
"Harness/specs/workflows/WF-AUTO-ANGLES.md": "sha256-b9641d871f728e8112ad0d8c7f87bcbec0a06aa572c5f3060efdd26496abdf9b",
|
|
268
303
|
"Harness/specs/workflows/WF-AUTO-SPARK.md": "sha256-dfe7e31373ccc9dea2d552649ec21dff91bca723316655788e82ab37cf0d33e5",
|
|
269
|
-
"Harness/specs/workflows/WF-AUTO.md": "sha256-
|
|
270
|
-
"Harness/specs/workflows/WF-KERNEL.md": "sha256-
|
|
271
|
-
"Harness/specs/workflows/WF-MAX.md": "sha256-
|
|
272
|
-
"Harness/specs/workflows/WF-STATE.md": "sha256-
|
|
304
|
+
"Harness/specs/workflows/WF-AUTO.md": "sha256-742e949bf77259997d662447f5b7c5627d8459f0b7aed96748cdb2de9c3bcfa9",
|
|
305
|
+
"Harness/specs/workflows/WF-KERNEL.md": "sha256-70d608b12ab977c5dfb7038fb7677123bd39f29fb645b3046abbde7fa28d69a7",
|
|
306
|
+
"Harness/specs/workflows/WF-MAX.md": "sha256-4584a0870138db80d507dcfcebb32f34dfb6c9a4a3b154faad15f621b66536e7",
|
|
307
|
+
"Harness/specs/workflows/WF-STATE.md": "sha256-7108775358b44229302d3271083b349648d44b1c61de89167e4e99346821bf2a",
|
|
273
308
|
"Harness/specs/workflows/WF.md": "sha256-d33e9ff55e67a34a862a896693cb55aeae8f73dd7d0ede561943674dd3e6d212",
|
|
274
309
|
"Harness/templates/ACCEPTANCE.template.md": "sha256-394a6c08b155b1d121f1d51da774f7988bdb891224c6d5f2ca2c131e8c95ffb3",
|
|
275
310
|
"Harness/templates/API_CONTRACT.template.md": "sha256-e11ec9866576624982f35e77359e3f4ef3aea3e3f6b5895f6cc5419d29699fc5",
|
|
@@ -278,7 +313,7 @@
|
|
|
278
313
|
"Harness/templates/TEST_PLAN.template.md": "sha256-f7e9a701b0922a405bcde7c168791fe6406530ce7e644a3a736cc3fa1e74c928",
|
|
279
314
|
"Harness/templates/UI_CONTRACT.template.md": "sha256-87c9bc47452c53caca9333130aef567cf9b16ffc5e82a8f6592bbd4f715875ef",
|
|
280
315
|
"Harness/templates/VALIDATION_REPORT.template.md": "sha256-feb1f7b9bba18f1ce028954b48775730f7dd8b7c2afd0ef44cda54bfe13c1875",
|
|
281
|
-
"opencode.json": "sha256-
|
|
316
|
+
"opencode.json": "sha256-2367af42752933a4102ccecbb49e14f5d1c4bc934d15e0785d3026efbc68e4d0"
|
|
282
317
|
},
|
|
283
318
|
"sources": {
|
|
284
319
|
".agents/skills/subagent-orchestrator/SKILL.md": ".claude/skills/subagent-orchestrator/SKILL.md",
|
|
@@ -286,11 +321,17 @@
|
|
|
286
321
|
".agents/skills/wf-agents-docs/SKILL.md": ".claude/skills/wf-agents-docs/SKILL.md",
|
|
287
322
|
".agents/skills/wf-auto-spark/SKILL.md": ".claude/skills/wf-auto-spark/SKILL.md",
|
|
288
323
|
".agents/skills/wf-auto/SKILL.md": ".claude/skills/wf-auto/SKILL.md",
|
|
324
|
+
".agents/skills/wf-browser/SKILL.md": ".claude/skills/wf-browser/SKILL.md",
|
|
325
|
+
".agents/skills/wf-command-create/SKILL.md": ".claude/skills/wf-command-create/SKILL.md",
|
|
326
|
+
".agents/skills/wf-help/SKILL.md": ".claude/skills/wf-help/SKILL.md",
|
|
289
327
|
".agents/skills/wf-learn/SKILL.md": ".claude/skills/wf-learn/SKILL.md",
|
|
290
328
|
".agents/skills/wf-max/SKILL.md": ".claude/skills/wf-max/SKILL.md",
|
|
291
329
|
".agents/skills/wf-readme/SKILL.md": ".claude/skills/wf-readme/SKILL.md",
|
|
292
330
|
".agents/skills/wf-remove/SKILL.md": ".claude/skills/wf-remove/SKILL.md",
|
|
293
331
|
".agents/skills/wf-review/SKILL.md": ".claude/skills/wf-review/SKILL.md",
|
|
332
|
+
".agents/skills/wf-task-archive/SKILL.md": ".claude/skills/wf-task-archive/SKILL.md",
|
|
333
|
+
".agents/skills/wf-task-list/SKILL.md": ".claude/skills/wf-task-list/SKILL.md",
|
|
334
|
+
".agents/skills/wf-task-record/SKILL.md": ".claude/skills/wf-task-record/SKILL.md",
|
|
294
335
|
".agents/skills/wf-update/SKILL.md": ".claude/skills/wf-update/SKILL.md",
|
|
295
336
|
".agents/skills/wf/SKILL.md": ".claude/skills/wf/SKILL.md",
|
|
296
337
|
".claude/agents/architect-manager.md": ".claude/agents/architect-manager.md",
|
|
@@ -312,8 +353,21 @@
|
|
|
312
353
|
".claude/agents/tdd-guide.md": ".claude/agents/tdd-guide.md",
|
|
313
354
|
".claude/agents/test-writer.md": ".claude/agents/test-writer.md",
|
|
314
355
|
".claude/agents/verifier.md": ".claude/agents/verifier.md",
|
|
356
|
+
".claude/commands/wf-auto-spark.md": ".claude/commands/wf-auto-spark.md",
|
|
357
|
+
".claude/commands/wf-auto.md": ".claude/commands/wf-auto.md",
|
|
358
|
+
".claude/commands/wf-browser.md": ".claude/commands/wf-browser.md",
|
|
359
|
+
".claude/commands/wf-command-create.md": ".claude/commands/wf-command-create.md",
|
|
315
360
|
".claude/commands/wf-help.md": ".claude/commands/wf-help.md",
|
|
361
|
+
".claude/commands/wf-learn.md": ".claude/commands/wf-learn.md",
|
|
362
|
+
".claude/commands/wf-max.md": ".claude/commands/wf-max.md",
|
|
363
|
+
".claude/commands/wf-readme.md": ".claude/commands/wf-readme.md",
|
|
364
|
+
".claude/commands/wf-remove.md": ".claude/commands/wf-remove.md",
|
|
365
|
+
".claude/commands/wf-review.md": ".claude/commands/wf-review.md",
|
|
366
|
+
".claude/commands/wf-task-archive.md": ".claude/commands/wf-task-archive.md",
|
|
367
|
+
".claude/commands/wf-task-list.md": ".claude/commands/wf-task-list.md",
|
|
368
|
+
".claude/commands/wf-task-record.md": ".claude/commands/wf-task-record.md",
|
|
316
369
|
".claude/commands/wf-update.md": ".claude/commands/wf-update.md",
|
|
370
|
+
".claude/commands/wf.md": ".claude/commands/wf.md",
|
|
317
371
|
".claude/rules/ecc/common.md": ".claude/rules/ecc/common.md",
|
|
318
372
|
".claude/settings.json": ".claude/settings.json",
|
|
319
373
|
".claude/skills/subagent-orchestrator/SKILL.md": ".claude/skills/subagent-orchestrator/SKILL.md",
|
|
@@ -321,11 +375,17 @@
|
|
|
321
375
|
".claude/skills/wf-agents-docs/SKILL.md": ".claude/skills/wf-agents-docs/SKILL.md",
|
|
322
376
|
".claude/skills/wf-auto-spark/SKILL.md": ".claude/skills/wf-auto-spark/SKILL.md",
|
|
323
377
|
".claude/skills/wf-auto/SKILL.md": ".claude/skills/wf-auto/SKILL.md",
|
|
378
|
+
".claude/skills/wf-browser/SKILL.md": ".claude/skills/wf-browser/SKILL.md",
|
|
379
|
+
".claude/skills/wf-command-create/SKILL.md": ".claude/skills/wf-command-create/SKILL.md",
|
|
380
|
+
".claude/skills/wf-help/SKILL.md": ".claude/skills/wf-help/SKILL.md",
|
|
324
381
|
".claude/skills/wf-learn/SKILL.md": ".claude/skills/wf-learn/SKILL.md",
|
|
325
382
|
".claude/skills/wf-max/SKILL.md": ".claude/skills/wf-max/SKILL.md",
|
|
326
383
|
".claude/skills/wf-readme/SKILL.md": ".claude/skills/wf-readme/SKILL.md",
|
|
327
384
|
".claude/skills/wf-remove/SKILL.md": ".claude/skills/wf-remove/SKILL.md",
|
|
328
385
|
".claude/skills/wf-review/SKILL.md": ".claude/skills/wf-review/SKILL.md",
|
|
386
|
+
".claude/skills/wf-task-archive/SKILL.md": ".claude/skills/wf-task-archive/SKILL.md",
|
|
387
|
+
".claude/skills/wf-task-list/SKILL.md": ".claude/skills/wf-task-list/SKILL.md",
|
|
388
|
+
".claude/skills/wf-task-record/SKILL.md": ".claude/skills/wf-task-record/SKILL.md",
|
|
329
389
|
".claude/skills/wf-update/SKILL.md": ".claude/skills/wf-update/SKILL.md",
|
|
330
390
|
".claude/skills/wf/SKILL.md": ".claude/skills/wf/SKILL.md",
|
|
331
391
|
".codex/config.toml": ".codex/config.toml",
|
|
@@ -352,12 +412,17 @@
|
|
|
352
412
|
".opencode/agents/verifier.md": ".opencode/agents/verifier.md",
|
|
353
413
|
".opencode/commands/wf-auto-spark.md": ".opencode/commands/wf-auto-spark.md",
|
|
354
414
|
".opencode/commands/wf-auto.md": ".opencode/commands/wf-auto.md",
|
|
415
|
+
".opencode/commands/wf-browser.md": ".opencode/commands/wf-browser.md",
|
|
416
|
+
".opencode/commands/wf-command-create.md": ".opencode/commands/wf-command-create.md",
|
|
355
417
|
".opencode/commands/wf-help.md": ".opencode/commands/wf-help.md",
|
|
356
418
|
".opencode/commands/wf-learn.md": ".opencode/commands/wf-learn.md",
|
|
357
419
|
".opencode/commands/wf-max.md": ".opencode/commands/wf-max.md",
|
|
358
420
|
".opencode/commands/wf-readme.md": ".opencode/commands/wf-readme.md",
|
|
359
421
|
".opencode/commands/wf-remove.md": ".opencode/commands/wf-remove.md",
|
|
360
422
|
".opencode/commands/wf-review.md": ".opencode/commands/wf-review.md",
|
|
423
|
+
".opencode/commands/wf-task-archive.md": ".opencode/commands/wf-task-archive.md",
|
|
424
|
+
".opencode/commands/wf-task-list.md": ".opencode/commands/wf-task-list.md",
|
|
425
|
+
".opencode/commands/wf-task-record.md": ".opencode/commands/wf-task-record.md",
|
|
361
426
|
".opencode/commands/wf-update.md": ".opencode/commands/wf-update.md",
|
|
362
427
|
".opencode/commands/wf.md": ".opencode/commands/wf.md",
|
|
363
428
|
".opencode/plugins/harness-wf-status.mjs": ".opencode/plugins/harness-wf-status.mjs",
|
|
@@ -381,6 +446,7 @@
|
|
|
381
446
|
"Harness/scripts/context-budget.mjs": "Harness/scripts/context-budget.mjs",
|
|
382
447
|
"Harness/scripts/l2-cache-telemetry.mjs": "Harness/scripts/l2-cache-telemetry.mjs",
|
|
383
448
|
"Harness/scripts/scan-clean.mjs": "Harness/scripts/scan-clean.mjs",
|
|
449
|
+
"Harness/scripts/task-state.mjs": "Harness/scripts/task-state.mjs",
|
|
384
450
|
"Harness/scripts/validate-harness.mjs": "Harness/scripts/validate-harness.mjs",
|
|
385
451
|
"Harness/scripts/wf-auto-update-prompt.mjs": "Harness/scripts/wf-auto-update-prompt.mjs",
|
|
386
452
|
"Harness/scripts/wf-remove.mjs": "Harness/scripts/wf-remove.mjs",
|
|
@@ -398,6 +464,7 @@
|
|
|
398
464
|
"Harness/specs/protocols/TASK_ARCHIVE.md": "Harness/specs/protocols/TASK_ARCHIVE.md",
|
|
399
465
|
"Harness/specs/protocols/TDD-GUIDE.md": "Harness/specs/protocols/TDD-GUIDE.md",
|
|
400
466
|
"Harness/specs/runtime/agent-workflow.md": "Harness/specs/runtime/agent-workflow.md",
|
|
467
|
+
"Harness/specs/runtime/command-surface.json": "Harness/specs/runtime/command-surface.json",
|
|
401
468
|
"Harness/specs/runtime/context-loading.md": "Harness/specs/runtime/context-loading.md",
|
|
402
469
|
"Harness/specs/runtime/dispatch.md": "Harness/specs/runtime/dispatch.md",
|
|
403
470
|
"Harness/specs/runtime/subagents.md": "Harness/specs/runtime/subagents.md",
|
|
@@ -3,10 +3,16 @@ harness: wf-agent
|
|
|
3
3
|
description: WF-MAX Manager for W1 architecture wave. Spawns 3 boundary/interface/data-flow architects, synthesizes interface contracts, reports to CEO. Read-only + Agent spawn; no Edit/Write.
|
|
4
4
|
mode: subagent
|
|
5
5
|
permission:
|
|
6
|
+
task:
|
|
7
|
+
"*": deny
|
|
8
|
+
"architect": allow
|
|
9
|
+
"codebase-explorer": allow
|
|
6
10
|
edit: deny
|
|
7
11
|
bash:
|
|
8
12
|
"*": deny
|
|
9
|
-
"git *": allow
|
|
13
|
+
"git status*": allow
|
|
14
|
+
"git diff*": allow
|
|
15
|
+
"git log*": allow
|
|
10
16
|
"ls *": allow
|
|
11
17
|
"dir *": allow
|
|
12
18
|
websearch: deny
|
|
@@ -3,10 +3,19 @@ harness: wf-agent
|
|
|
3
3
|
description: WF-MAX Manager for W0 exploration wave. Spawns 5-10 read-only researchers/explorers, synthesizes findings, reports to CEO. Read-only + Agent spawn; no Edit/Write.
|
|
4
4
|
mode: subagent
|
|
5
5
|
permission:
|
|
6
|
+
task:
|
|
7
|
+
"*": deny
|
|
8
|
+
"codebase-explorer": allow
|
|
9
|
+
"researcher": allow
|
|
10
|
+
"docs-researcher": allow
|
|
11
|
+
"explore": allow
|
|
12
|
+
"scout": allow
|
|
6
13
|
edit: deny
|
|
7
14
|
bash:
|
|
8
15
|
"*": deny
|
|
9
|
-
"git *": allow
|
|
16
|
+
"git status*": allow
|
|
17
|
+
"git diff*": allow
|
|
18
|
+
"git log*": allow
|
|
10
19
|
"ls *": allow
|
|
11
20
|
"dir *": allow
|
|
12
21
|
"tree *": allow
|
|
@@ -3,12 +3,14 @@ harness: wf-agent
|
|
|
3
3
|
description: WF-MAX Manager for W2 implementation wave. Spawns 5-7 implementers (one file_claim each), merges results, reports to CEO. Agent spawn + synthesis only; does NOT write code directly.
|
|
4
4
|
mode: subagent
|
|
5
5
|
permission:
|
|
6
|
+
task:
|
|
7
|
+
"*": deny
|
|
8
|
+
"implementer": allow
|
|
6
9
|
edit: deny
|
|
7
10
|
bash:
|
|
8
11
|
"*": deny
|
|
9
|
-
"git *": allow
|
|
10
|
-
"
|
|
11
|
-
"npm *": allow
|
|
12
|
+
"git status*": allow
|
|
13
|
+
"git diff*": allow
|
|
12
14
|
websearch: deny
|
|
13
15
|
webfetch: deny
|
|
14
16
|
---
|
|
@@ -3,12 +3,15 @@ harness: wf-agent
|
|
|
3
3
|
description: WF-MAX Manager for W2R review wave. Spawns 3-4 parallel reviewers (spec/code/security/perf), deduplicates findings, assigns severity, reports to CEO. Read-only + Agent spawn; no Edit/Write.
|
|
4
4
|
mode: subagent
|
|
5
5
|
permission:
|
|
6
|
+
task:
|
|
7
|
+
"*": deny
|
|
8
|
+
"reviewer": allow
|
|
6
9
|
edit: deny
|
|
7
10
|
bash:
|
|
8
11
|
"*": deny
|
|
9
|
-
"git *": allow
|
|
12
|
+
"git status*": allow
|
|
10
13
|
"git diff *": allow
|
|
11
|
-
"
|
|
14
|
+
"git diff*": allow
|
|
12
15
|
websearch: deny
|
|
13
16
|
webfetch: deny
|
|
14
17
|
---
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Run AI-driven browser automation and E2E testing via the wf-browser skill
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /wf-browser
|
|
6
|
+
|
|
7
|
+
This is a **workflow command**, not a direct command. Do not execute it as a
|
|
8
|
+
static help or script command.
|
|
9
|
+
|
|
10
|
+
1. Load `CLAUDE.md`, `Harness/MEMORY.md` (index only per Memory Preflight), then `Harness/README.md`.
|
|
11
|
+
2. Preserve cache-first order per `Harness/specs/runtime/context-loading.md#Cache-First Context Contract`.
|
|
12
|
+
3. Execute per the skill adapter `.claude/skills/wf-browser/SKILL.md` (mirror: `.agents/skills/wf-browser/SKILL.md`).
|
|
13
|
+
4. Do not duplicate the workflow here. The skill adapter and `Harness/specs/protocols/HARNESS_BRIDGE.md` are authoritative.
|
|
14
|
+
|
|
15
|
+
If this runtime cannot invoke the skill directly, read
|
|
16
|
+
`.claude/skills/wf-browser/SKILL.md` and follow it in place.
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Create or modify a Harness wf-* command surface atomically
|
|
3
|
+
---
|
|
4
|
+
# /wf-command-create
|
|
5
|
+
|
|
6
|
+
Create or modify a Harness wf-* command surface atomically. Do not invoke a skill or start WF mode.
|
|
7
|
+
|
|
8
|
+
## Classification
|
|
9
|
+
|
|
10
|
+
DIRECT command. It is a Harness maintenance command: it must create or resume a task capsule, then update every command surface declared by `Harness/specs/runtime/command-surface.json`. Never loads `Harness/MEMORY.md` as part of command routing.
|
|
11
|
+
|
|
12
|
+
## Usage
|
|
13
|
+
|
|
14
|
+
/wf-command-create <wf-command-id> [--direct|--workflow] [--task <task-id>]
|
|
15
|
+
|
|
16
|
+
- Command id must be `wf` or `wf-*` kebab-case.
|
|
17
|
+
- Use an existing task capsule when `--task` is supplied or when the active task clearly matches.
|
|
18
|
+
- Otherwise create a `task-<verb>-<noun>[-detail]` capsule with `node Harness/scripts/task-state.mjs record <task-id> --create --apply --json`.
|
|
19
|
+
- Record the command id, classification, and validation evidence in the task capsule.
|
|
20
|
+
|
|
21
|
+
## Required Surface Checklist
|
|
22
|
+
|
|
23
|
+
Update all applicable files before returning:
|
|
24
|
+
|
|
25
|
+
- `Harness/specs/runtime/command-surface.json`
|
|
26
|
+
- `.claude/commands/<id>.md`
|
|
27
|
+
- `.opencode/commands/<id>.md`
|
|
28
|
+
- `.claude/skills/<id>/SKILL.md` when Codex compatibility or workflow routing is needed
|
|
29
|
+
- `.agents/skills/<id>/SKILL.md` mirror when a Claude skill exists
|
|
30
|
+
- Matching `templates/common/...` files
|
|
31
|
+
- `CLAUDE.md` and `templates/common/CLAUDE.md`
|
|
32
|
+
- `.claude/rules/ecc/common.md` and template mirror
|
|
33
|
+
- `.claude/commands/wf-help.md`, `.opencode/commands/wf-help.md`, and template mirrors
|
|
34
|
+
- `Harness/README.md`, `Harness/MEMORY.md`, and template mirrors
|
|
35
|
+
- `Harness/scripts/validate-harness.mjs` and template mirror
|
|
36
|
+
- `Harness/scripts/wf-remove.mjs` and template mirror
|
|
37
|
+
- `tests/generator.test.js`, `tests/anti-drift.test.js`, and `tests/validate-harness.test.js`
|
|
38
|
+
- `Harness/.harness-version`, `templates/common/.harness-version`, and ownership manifests via `node scripts/build-version.mjs`
|
|
39
|
+
|
|
40
|
+
## Validation
|
|
41
|
+
|
|
42
|
+
Run, at minimum:
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
npm test
|
|
46
|
+
node Harness/scripts/validate-harness.mjs
|
|
47
|
+
node templates/common/Harness/scripts/validate-harness.mjs
|
|
48
|
+
node Harness/scripts/context-budget.mjs --json
|
|
49
|
+
node scripts/build-version.mjs --check
|
|
50
|
+
npm run check:mirrors
|
|
51
|
+
git diff --check
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
If a check is blocked by an existing unrelated repository issue, record the command, failure, and reason in the task capsule.
|
|
55
|
+
|
|
56
|
+
## Return
|
|
57
|
+
|
|
58
|
+
- Command id and classification.
|
|
59
|
+
- Task capsule path.
|
|
60
|
+
- Files changed by surface category.
|
|
61
|
+
- Verification results.
|
|
@@ -6,6 +6,9 @@ description: Show the Harness WF command table
|
|
|
6
6
|
Return this help table directly. Do not invoke a skill, do not start WF mode,
|
|
7
7
|
do not dispatch agents, and do not edit files.
|
|
8
8
|
|
|
9
|
+
Codex compatibility: `$wf-help` or `/skills wf-help` loads the `wf-help` shim,
|
|
10
|
+
which returns this same table without loading `Harness/MEMORY.md` or entering WF.
|
|
11
|
+
|
|
9
12
|
| Command | Type | Usage | Purpose |
|
|
10
13
|
| --- | --- | --- | --- |
|
|
11
14
|
| `/wf-help` | direct command | `/wf-help` | Show this command table. |
|
|
@@ -15,14 +18,18 @@ do not dispatch agents, and do not edit files.
|
|
|
15
18
|
| `/wf-auto-spark` | workflow skill | `/wf-auto-spark` | Perpetual inspiration mode with roadmap anchoring and external spark search. |
|
|
16
19
|
| `/wf-review <focus>` | workflow skill | `/wf-review security and test coverage` | Peer CLI review through Claude/Codex/OpenCode, with reviewer subagent fallback. |
|
|
17
20
|
| `/wf-learn` | workflow skill | `/wf-learn` | Force context-master -> memory-master learning cycle after repeated failures or closeout. |
|
|
18
|
-
| `/wf-browser <task>` |
|
|
21
|
+
| `/wf-browser <task>` | workflow skill | `/wf-browser verify checkout flow` | Built-in browser automation/E2E workflow with real UI interaction, screenshots, traces, and CDP/network evidence. |
|
|
19
22
|
| `/wf-readme <task>` | workflow skill | `/wf-readme polish quickstart` | Preserve, merge, or improve README docs without trampling existing project documentation. |
|
|
20
23
|
| `/wf-update` | direct command | `/wf-update` | Check/apply Harness scaffold updates with safe file classification and conflict handling. |
|
|
21
24
|
| `/wf-remove` | workflow skill | `/wf-remove` | Safely remove Harness files while preserving project/user data unless explicitly purged. |
|
|
25
|
+
| `/wf-task-record <task-id>` | direct command | `/wf-task-record my-feature --create` | Record user intent into a task capsule (wraps task-state.mjs). |
|
|
26
|
+
| `/wf-task-list` | direct command | `/wf-task-list` | List all task capsules with status, phase, and dependencies. |
|
|
27
|
+
| `/wf-task-archive [--apply]` | direct command | `/wf-task-archive --apply` | Archive completed task capsules (dry-run by default). |
|
|
28
|
+
| `/wf-command-create <wf-command-id>` | direct command | `/wf-command-create wf-report --direct` | Create or modify wf-* command surfaces atomically from the command registry. |
|
|
22
29
|
|
|
23
30
|
Source of truth: `Harness/README.md#Skill Commands` plus installed skills under
|
|
24
|
-
`.claude/skills/` (Claude Code) or `.agents/skills/`
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
31
|
+
`.claude/skills/` (Claude Code and OpenCode adapters) or `.agents/skills/`
|
|
32
|
+
(Codex). In OpenCode, every workflow command above is visible as a thin command
|
|
33
|
+
wrapper under `.opencode/commands/` (e.g. `/wf`, `/wf-max`); each wrapper routes
|
|
34
|
+
to the matching `.claude/skills/<command>/SKILL.md` adapter and does not
|
|
35
|
+
duplicate the workflow.
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Run
|
|
2
|
+
description: Run WF-MAX with mandatory subagent fan-out and recorded degradation
|
|
3
|
+
agent: build
|
|
3
4
|
---
|
|
4
5
|
|
|
5
6
|
# /wf-max
|
|
@@ -8,9 +9,13 @@ This is a **workflow command**, not a direct command. Do not execute it as a
|
|
|
8
9
|
static help or script command.
|
|
9
10
|
|
|
10
11
|
1. Load `CLAUDE.md`, `Harness/MEMORY.md` (index only per Memory Preflight), then `Harness/README.md`.
|
|
11
|
-
2.
|
|
12
|
-
3.
|
|
13
|
-
4.
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
12
|
+
2. Load and follow `.claude/skills/wf-max/SKILL.md` (mirror: `.agents/skills/wf-max/SKILL.md`) and `Harness/specs/workflows/WF-MAX.md`.
|
|
13
|
+
3. Preserve cache-first order per `Harness/specs/runtime/context-loading.md#Cache-First Context Contract`.
|
|
14
|
+
4. MUST attempt native runtime subagent fan-out before planning is considered complete:
|
|
15
|
+
- start `task-scribe` when available for task ledger/state;
|
|
16
|
+
- start W0 exploration through manager/explorer/researcher roles with disjoint read sets;
|
|
17
|
+
- when running in OpenCode, require project `opencode.json` to have `subagent_depth >= 2` and manager agents to have `permission.task` allowlists for manager -> worker fan-out;
|
|
18
|
+
- if nested manager fan-out is unavailable, dispatch leaf workers directly from the primary agent with exact WF-MAX dispatch packets.
|
|
19
|
+
5. In every runtime, MUST attempt native subagent fan-out before implementation planning is considered complete; never silently continue as a solo controller.
|
|
20
|
+
6. If native fan-out fails, record `fanoutAttempted: true`, runtime, channel tried, agents requested, failure/degradation reason, and the fallback path in `Harness/tasks/<task-id>/PLAN.md` or `PROGRESS.md`.
|
|
21
|
+
7. Continue with WF-Max-Useful by default or WF-Max-Strict only when the user explicitly requests strict mode.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Archive completed/obsolete task capsules to _archive
|
|
3
|
+
---
|
|
4
|
+
# /wf-task-archive
|
|
5
|
+
|
|
6
|
+
Archive completed/obsolete task capsules to `Harness/tasks/_archive/`. Do not invoke a skill or start WF mode.
|
|
7
|
+
|
|
8
|
+
## Classification
|
|
9
|
+
|
|
10
|
+
DIRECT command. Wraps `node Harness/scripts/task-state.mjs archive`. Never loads Harness/MEMORY.md.
|
|
11
|
+
|
|
12
|
+
## Usage
|
|
13
|
+
|
|
14
|
+
/wf-task-archive [--dry-run] [--apply] [--task <id>] [--keep <n>]
|
|
15
|
+
|
|
16
|
+
- Defaults to dry-run (`--dry-run`) without `--apply`.
|
|
17
|
+
- With `--apply`: moves eligible task directories into yearly subdirectories under `_archive/`.
|
|
18
|
+
- With `--task <id>`: targets a specific task for archive eligibility check.
|
|
19
|
+
- With `--keep <n>`: keeps N most recent non-archived task capsules (default 5).
|
|
20
|
+
- Tasks with active, blocked, in_progress, running, pending, or needs-user-decision status are never auto-archived.
|
|
21
|
+
|
|
22
|
+
## Execution
|
|
23
|
+
|
|
24
|
+
Run: `node Harness/scripts/task-state.mjs archive [--dry-run] [--apply] [--task <id>] [--keep <n>] [--json]`
|
|
25
|
+
|
|
26
|
+
## Return
|
|
27
|
+
|
|
28
|
+
- JSON output with archive plan: scanned, archiveable, toArchive, kept, skipped counts and per-task results.
|
|
29
|
+
- If the command fails, report the error and do not retry.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: List Harness task capsules with state, phase, status, and dependency info
|
|
3
|
+
---
|
|
4
|
+
# /wf-task-list
|
|
5
|
+
|
|
6
|
+
List Harness task capsules with state, phase, status, and dependency info. Do not invoke a skill or start WF mode.
|
|
7
|
+
|
|
8
|
+
## Classification
|
|
9
|
+
|
|
10
|
+
DIRECT command. Wraps `node Harness/scripts/task-state.mjs list --json`. Never loads Harness/MEMORY.md.
|
|
11
|
+
|
|
12
|
+
## Usage
|
|
13
|
+
|
|
14
|
+
/wf-task-list [--json]
|
|
15
|
+
|
|
16
|
+
- By default, returns a human-readable listing of all task capsules.
|
|
17
|
+
- With --json, returns structured JSON output.
|
|
18
|
+
- Shows active, open, blocked, verified tasks with dependency info.
|
|
19
|
+
|
|
20
|
+
## Execution
|
|
21
|
+
|
|
22
|
+
Run: `node Harness/scripts/task-state.mjs list --json`
|
|
23
|
+
|
|
24
|
+
## Return
|
|
25
|
+
|
|
26
|
+
- JSON output of all task capsules with status, phase, dependencies, and archive eligibility.
|
|
27
|
+
- If the command fails, report the error and do not retry.
|