create-harness-vibe-coding 0.8.13 → 0.8.16
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 +165 -0
- package/README-CN.md +41 -9
- package/README.md +39 -9
- package/package.json +2 -1
- package/src/generator.js +601 -472
- package/src/index.js +4 -4
- package/templates/common/.claude/agents/architect-manager.md +1 -0
- package/templates/common/.claude/agents/architect.md +2 -1
- package/templates/common/.claude/agents/codebase-explorer.md +1 -0
- package/templates/common/.claude/agents/context-master.md +2 -1
- package/templates/common/.claude/agents/debugger.md +1 -0
- package/templates/common/.claude/agents/docs-researcher.md +2 -1
- package/templates/common/.claude/agents/explore-manager.md +1 -0
- package/templates/common/.claude/agents/implement-manager.md +1 -0
- package/templates/common/.claude/agents/implementer.md +1 -0
- package/templates/common/.claude/agents/memory-master.md +2 -1
- package/templates/common/.claude/agents/planner.md +3 -2
- package/templates/common/.claude/agents/reflector.md +1 -0
- package/templates/common/.claude/agents/researcher.md +1 -0
- package/templates/common/.claude/agents/review-manager.md +1 -0
- package/templates/common/.claude/agents/reviewer.md +2 -1
- package/templates/common/.claude/agents/task-scribe.md +1 -0
- package/templates/common/.claude/agents/tdd-guide.md +5 -4
- package/templates/common/.claude/agents/test-writer.md +6 -5
- package/templates/common/.claude/agents/verifier.md +1 -0
- package/templates/common/.claude/commands/wf-help.md +1 -0
- package/templates/common/.claude/commands/wf-update.md +68 -10
- package/templates/common/.claude/rules/ecc/common.md +6 -5
- package/templates/common/.claude/skills/subagent-orchestrator/SKILL.md +12 -6
- package/templates/common/.claude/skills/tdd/SKILL.md +5 -5
- package/templates/common/.claude/skills/wf/SKILL.md +13 -5
- package/templates/common/.claude/skills/wf-agents-docs/SKILL.md +119 -0
- package/templates/common/.claude/skills/wf-auto/SKILL.md +27 -7
- package/templates/common/.claude/skills/wf-auto-spark/SKILL.md +12 -5
- package/templates/common/.claude/skills/wf-learn/SKILL.md +6 -0
- package/templates/common/.claude/skills/wf-max/SKILL.md +22 -7
- package/templates/common/.claude/skills/wf-readme/SKILL.md +8 -2
- package/templates/common/.claude/skills/wf-remove/SKILL.md +6 -0
- package/templates/common/.claude/skills/wf-review/SKILL.md +10 -3
- package/templates/common/.claude/skills/wf-update/SKILL.md +41 -4
- package/templates/common/.harness-version +290 -128
- package/templates/common/.opencode/agents/architect-manager.md +1 -0
- package/templates/common/.opencode/agents/architect.md +2 -1
- package/templates/common/.opencode/agents/codebase-explorer.md +1 -0
- package/templates/common/.opencode/agents/context-master.md +2 -1
- package/templates/common/.opencode/agents/debugger.md +1 -0
- package/templates/common/.opencode/agents/docs-researcher.md +2 -1
- package/templates/common/.opencode/agents/explore-manager.md +1 -0
- package/templates/common/.opencode/agents/implement-manager.md +1 -0
- package/templates/common/.opencode/agents/implementer.md +1 -0
- package/templates/common/.opencode/agents/memory-master.md +2 -1
- package/templates/common/.opencode/agents/planner.md +3 -2
- package/templates/common/.opencode/agents/reflector.md +1 -0
- package/templates/common/.opencode/agents/researcher.md +1 -0
- package/templates/common/.opencode/agents/review-manager.md +1 -0
- package/templates/common/.opencode/agents/reviewer.md +2 -1
- package/templates/common/.opencode/agents/task-scribe.md +1 -0
- package/templates/common/.opencode/agents/tdd-guide.md +5 -4
- package/templates/common/.opencode/agents/test-writer.md +6 -5
- package/templates/common/.opencode/agents/verifier.md +1 -0
- package/templates/common/.opencode/commands/wf-auto-spark.md +3 -2
- package/templates/common/.opencode/commands/wf-auto.md +3 -2
- package/templates/common/.opencode/commands/wf-help.md +1 -0
- package/templates/common/.opencode/commands/wf-learn.md +3 -2
- package/templates/common/.opencode/commands/wf-max.md +3 -2
- package/templates/common/.opencode/commands/wf-readme.md +3 -2
- package/templates/common/.opencode/commands/wf-remove.md +3 -2
- package/templates/common/.opencode/commands/wf-review.md +3 -2
- package/templates/common/.opencode/commands/wf-update.md +68 -10
- package/templates/common/.opencode/commands/wf.md +3 -2
- package/templates/common/CLAUDE.md +14 -12
- package/templates/common/Harness/MEMORY.md +21 -18
- package/templates/common/Harness/README.md +41 -39
- package/templates/common/Harness/ownership.manifest.json +815 -0
- package/templates/common/Harness/{architecture.md → project/architecture.md} +1 -1
- package/templates/common/Harness/research/README.md +3 -3
- package/templates/common/Harness/scripts/context-budget.mjs +95 -0
- package/templates/common/Harness/scripts/l2-cache-telemetry.mjs +703 -0
- package/templates/common/Harness/scripts/scan-clean.mjs +13 -3
- package/templates/common/Harness/scripts/validate-harness.mjs +332 -175
- package/templates/common/Harness/scripts/wf-remove.mjs +60 -34
- package/templates/common/Harness/scripts/wf-update-check.mjs +355 -45
- package/templates/common/Harness/settings.json +43 -0
- package/templates/common/Harness/{ECC-GUIDE.md → specs/guides/ECC-GUIDE.md} +4 -4
- package/templates/common/Harness/{SETUP.md → specs/guides/SETUP.md} +32 -35
- package/templates/common/Harness/{extension.md → specs/guides/extension.md} +3 -3
- package/templates/common/Harness/{lifecycle.md → specs/guides/lifecycle.md} +2 -2
- package/templates/common/Harness/{agent-workflow.md → specs/runtime/agent-workflow.md} +6 -6
- package/templates/common/Harness/{context-loading.md → specs/runtime/context-loading.md} +85 -21
- package/templates/common/Harness/{dispatch.md → specs/runtime/dispatch.md} +3 -2
- package/templates/common/Harness/{subagents.md → specs/runtime/subagents.md} +10 -5
- package/templates/common/Harness/{WF-AUTO-SPARK.md → specs/workflows/WF-AUTO-SPARK.md} +2 -2
- package/templates/common/Harness/{WF-AUTO.md → specs/workflows/WF-AUTO.md} +6 -1
- package/templates/common/Harness/{WF-KERNEL.md → specs/workflows/WF-KERNEL.md} +10 -0
- package/templates/common/Harness/{WF-MAX.md → specs/workflows/WF-MAX.md} +10 -5
- package/templates/common/Harness/{WF-STATE.md → specs/workflows/WF-STATE.md} +5 -0
- package/templates/common/Harness/{WF.md → specs/workflows/WF.md} +12 -1
- package/templates/common/README.md +8 -6
- package/templates/common/memory/startup-hints.md +19 -17
- package/templates/optional/skills/browser-e2e/.claude/skills/browser-e2e/SKILL.md +1 -1
- package/templates/optional/skills/browser-e2e/.claude/skills/wf-browser/SKILL.md +7 -0
- package/templates/optional/skills/browser-e2e/.opencode/commands/wf-browser.md +3 -2
- package/templates/optional/skills/browser-e2e/Harness/workflows/browser-e2e.md +4 -4
- package/templates/optional/skills/github-pr-review/.claude/skills/github-pr-review/SKILL.md +1 -1
- package/templates/optional/skills/python-backend/.claude/skills/python-backend/SKILL.md +1 -1
- package/templates/optional/skills/ts-react-frontend/.claude/skills/ts-react-frontend/SKILL.md +1 -1
- package/templates/optional/skills/ui-ux-review/.claude/skills/ui-ux-review/SKILL.md +1 -1
- /package/templates/common/Harness/{ACCEPTANCE_PROTOCOL.md → specs/protocols/ACCEPTANCE_PROTOCOL.md} +0 -0
- /package/templates/common/Harness/{AGENT_ISOLATION.md → specs/protocols/AGENT_ISOLATION.md} +0 -0
- /package/templates/common/Harness/{DEBUG_PROTOCOL.md → specs/protocols/DEBUG_PROTOCOL.md} +0 -0
- /package/templates/common/Harness/{HARNESS_BRIDGE.md → specs/protocols/HARNESS_BRIDGE.md} +0 -0
- /package/templates/common/Harness/{MEMORY_PROTOCOL.md → specs/protocols/MEMORY_PROTOCOL.md} +0 -0
- /package/templates/common/Harness/{TASK_ARCHIVE.md → specs/protocols/TASK_ARCHIVE.md} +0 -0
- /package/templates/common/Harness/{TDD-GUIDE.md → specs/protocols/TDD-GUIDE.md} +0 -0
- /package/templates/common/Harness/{WF-AUTO-ANGLES.md → specs/workflows/WF-AUTO-ANGLES.md} +0 -0
|
@@ -5,15 +5,32 @@ description: Perpetual adaptive auto-optimization mode. Selects probes from proj
|
|
|
5
5
|
|
|
6
6
|
# WF Auto - Perpetual Auto-Optimization
|
|
7
7
|
|
|
8
|
+
## Memory Preflight
|
|
9
|
+
|
|
10
|
+
1. Load `CLAUDE.md`, `Harness/MEMORY.md` index only, then `Harness/README.md`
|
|
11
|
+
before planning, dispatch, edits, validation, or review.
|
|
12
|
+
2. Load detailed `Harness/memory/*` files only when `MEMORY_PROTOCOL.md`
|
|
13
|
+
scenario hints match; otherwise record "memory hints: none".
|
|
14
|
+
|
|
8
15
|
## Load
|
|
9
16
|
|
|
10
|
-
- `
|
|
11
|
-
- `Harness/
|
|
12
|
-
- `Harness/
|
|
13
|
-
- `Harness/
|
|
14
|
-
- `Harness/
|
|
17
|
+
- `CLAUDE.md`
|
|
18
|
+
- `Harness/MEMORY.md` (index only per Memory Preflight)
|
|
19
|
+
- `Harness/README.md`
|
|
20
|
+
- `Harness/specs/workflows/WF-AUTO.md`
|
|
21
|
+
- `Harness/specs/workflows/WF-AUTO-ANGLES.md`
|
|
22
|
+
- `Harness/specs/runtime/subagents.md`
|
|
23
|
+
- `Harness/specs/runtime/dispatch.md`
|
|
24
|
+
- `Harness/specs/runtime/agent-workflow.md`
|
|
15
25
|
- `.claude/skills/wf-review/SKILL.md`
|
|
16
26
|
|
|
27
|
+
## Cache Discipline
|
|
28
|
+
|
|
29
|
+
Follow `Harness/specs/runtime/context-loading.md#Cache-First Context Contract`: keep the
|
|
30
|
+
auto-mode docs in listed order, run selected probes only, append fresh probe
|
|
31
|
+
outputs last, and record compact evidence instead of carrying full logs between
|
|
32
|
+
cycles.
|
|
33
|
+
|
|
17
34
|
## Trigger
|
|
18
35
|
|
|
19
36
|
- Claude `/wf-auto`
|
|
@@ -44,6 +61,9 @@ that auto scanning costs more than it helps.
|
|
|
44
61
|
below 3.
|
|
45
62
|
8. Intent Checkpoint is adaptive: 2 -> 5 -> 10 cycles, exactly two questions.
|
|
46
63
|
9. Record compact evidence per cycle; do not paste full logs or transcripts.
|
|
64
|
+
10. A bounded test tick still creates or updates `Harness/tasks/auto/PLAN.md`
|
|
65
|
+
and `Harness/tasks/auto/PROGRESS.md`; missing auto capsule evidence is a
|
|
66
|
+
failed cycle record.
|
|
47
67
|
|
|
48
68
|
## Loop
|
|
49
69
|
|
|
@@ -58,5 +78,5 @@ LOOP: next W0
|
|
|
58
78
|
|
|
59
79
|
## Return
|
|
60
80
|
|
|
61
|
-
Report cycles run, findings addressed by source, evidence ledger,
|
|
62
|
-
evidence if any, weak spark count, final state, and residual risks.
|
|
81
|
+
Report cycles run, findings addressed by source, evidence ledger path/summary,
|
|
82
|
+
exhaustion evidence if any, weak spark count, final state, and residual risks.
|
|
@@ -5,7 +5,7 @@ description: Perpetual inspiration mode for /wf-auto-spark or $wf-auto-spark. In
|
|
|
5
5
|
|
|
6
6
|
# WF-AUTO-SPARK Adapter
|
|
7
7
|
|
|
8
|
-
The authoritative workflow lives in `Harness/WF-AUTO-SPARK.md`; this adapter
|
|
8
|
+
The authoritative workflow lives in `Harness/specs/workflows/WF-AUTO-SPARK.md`; this adapter
|
|
9
9
|
only routes and summarizes hard constraints.
|
|
10
10
|
|
|
11
11
|
## Invocation
|
|
@@ -18,10 +18,17 @@ only routes and summarizes hard constraints.
|
|
|
18
18
|
1. `CLAUDE.md`
|
|
19
19
|
2. `Harness/MEMORY.md`
|
|
20
20
|
3. `Harness/README.md`
|
|
21
|
-
4. `Harness/WF-AUTO-SPARK.md`
|
|
22
|
-
5. `Harness/WF-AUTO.md`
|
|
23
|
-
6. `Harness/subagents.md`
|
|
24
|
-
7. `Harness/dispatch.md`
|
|
21
|
+
4. `Harness/specs/workflows/WF-AUTO-SPARK.md`
|
|
22
|
+
5. `Harness/specs/workflows/WF-AUTO.md`
|
|
23
|
+
6. `Harness/specs/runtime/subagents.md`
|
|
24
|
+
7. `Harness/specs/runtime/dispatch.md`
|
|
25
|
+
|
|
26
|
+
## Cache Discipline
|
|
27
|
+
|
|
28
|
+
Follow `Harness/specs/runtime/context-loading.md#Cache-First Context Contract`: keep roadmap
|
|
29
|
+
and workflow docs stable, put fresh spark search results in the dynamic suffix,
|
|
30
|
+
defer unused tools/skills, and let task-scribe write compact state instead of
|
|
31
|
+
replaying search transcripts.
|
|
25
32
|
|
|
26
33
|
## Rules
|
|
27
34
|
|
|
@@ -22,6 +22,12 @@ fallback.
|
|
|
22
22
|
- `Harness/memory/agent-lessons-patterns.md`
|
|
23
23
|
- Current `Harness/PROGRESS.md` and active task capsule, if any
|
|
24
24
|
|
|
25
|
+
## Cache Discipline
|
|
26
|
+
|
|
27
|
+
Follow `Harness/specs/runtime/context-loading.md#Cache-First Context Contract`: load memory
|
|
28
|
+
indexes first, then only the routed detailed memory files; summarize durable
|
|
29
|
+
patterns by file path and signal instead of pasting session transcripts.
|
|
30
|
+
|
|
25
31
|
## Flow
|
|
26
32
|
|
|
27
33
|
1. Analyze the session for repeated failures, durable user corrections, and
|
|
@@ -5,7 +5,7 @@ description: Use for /wf-max in Claude Code, $wf-max or /skills wf-max in Codex.
|
|
|
5
5
|
|
|
6
6
|
# WF-MAX Adapter
|
|
7
7
|
|
|
8
|
-
The authoritative workflow lives in `Harness/WF-MAX.md`; this adapter only
|
|
8
|
+
The authoritative workflow lives in `Harness/specs/workflows/WF-MAX.md`; this adapter only
|
|
9
9
|
routes and summarizes hard constraints.
|
|
10
10
|
|
|
11
11
|
## Invocation
|
|
@@ -24,35 +24,50 @@ routes and summarizes hard constraints.
|
|
|
24
24
|
1. `CLAUDE.md`
|
|
25
25
|
2. `Harness/MEMORY.md` (index only per Memory Preflight)
|
|
26
26
|
3. `Harness/README.md`
|
|
27
|
-
4. `Harness/WF-MAX.md`
|
|
28
|
-
5. `Harness/subagents.md`
|
|
29
|
-
6. `Harness/dispatch.md`
|
|
30
|
-
7. `Harness/agent-workflow.md`
|
|
27
|
+
4. `Harness/specs/workflows/WF-MAX.md`
|
|
28
|
+
5. `Harness/specs/runtime/subagents.md`
|
|
29
|
+
6. `Harness/specs/runtime/dispatch.md`
|
|
30
|
+
7. `Harness/specs/runtime/agent-workflow.md`
|
|
31
|
+
|
|
32
|
+
## Cache Discipline
|
|
33
|
+
|
|
34
|
+
Follow `Harness/specs/runtime/context-loading.md#Cache-First Context Contract`: keep the
|
|
35
|
+
listed loads in order, defer unused skill/tool schemas, append volatile task
|
|
36
|
+
state and runtime facts last, and bound Worker returns through dispatch
|
|
37
|
+
`MaxReturnTokens`/`ReturnSchema`.
|
|
31
38
|
|
|
32
39
|
## Rules
|
|
33
40
|
|
|
34
41
|
WF-MAX inherits the selected WF tier and the shared WF-KERNEL gates
|
|
35
|
-
(`Harness/WF-KERNEL.md`), then expands safe parallelism. WF-Max-Useful is
|
|
42
|
+
(`Harness/specs/workflows/WF-KERNEL.md`), then expands safe parallelism. WF-Max-Useful is
|
|
36
43
|
default; WF-Max-Strict only on explicit strict request. Execution expands
|
|
37
44
|
through:
|
|
38
45
|
|
|
46
|
+
- New task state directories MUST use task ids matching
|
|
47
|
+
`task-<verb>-<noun>[-detail]` under `Harness/tasks/<task-id>/`; never
|
|
48
|
+
create bare `fix-*` task ids.
|
|
39
49
|
1. Global mode: `wf-max`
|
|
40
50
|
2. Agent role: `ceo | manager | worker | reviewer | verifier | reflector`
|
|
41
51
|
3. Dispatch permission: `writeSet`, `forbidden`, `verification`
|
|
42
52
|
|
|
43
53
|
WF-Max-Useful (default): `/wf-max` fans out only where write sets or review
|
|
44
54
|
lenses are meaningfully independent. Overhead > 0.30 degrades the wave.
|
|
55
|
+
Degrading fan-out does not authorize CEO source edits; source implementation
|
|
56
|
+
still goes through an implementer/Worker role, or the run records an honest
|
|
57
|
+
downgrade before editing.
|
|
45
58
|
|
|
46
59
|
WF-Max-Strict (explicit override): user says `--strict`, `strict wf-max`, or
|
|
47
60
|
`strict mode`. Unconditional fan-out per the original span formula.
|
|
48
61
|
|
|
49
62
|
- CEO reads, plans, dispatches, synthesizes, and writes task state only. CEO
|
|
50
63
|
never edits production source.
|
|
64
|
+
- Task-state updates must preserve required `Harness/PROGRESS.md` headings:
|
|
65
|
+
`## Active Task`, `## Task Index`, and `## Cross-Task Decisions`.
|
|
51
66
|
- Workers edit only the dispatch `writeSet`; outside write set is blocked.
|
|
52
67
|
- Managers coordinate and synthesize. Reviewers read/report only.
|
|
53
68
|
- D-GATE is mandatory before implementation waves: dispatch table, AC IDs,
|
|
54
69
|
disjoint file claims, self-audit, and reviewer plan.
|
|
55
|
-
- Final acceptance is tier-aware per `Harness/WF-KERNEL.md`:
|
|
70
|
+
- Final acceptance is tier-aware per `Harness/specs/workflows/WF-KERNEL.md`:
|
|
56
71
|
- WF-Light + `/wf-max`: verification + state evidence suffices unless risk
|
|
57
72
|
triggers review/reflector.
|
|
58
73
|
- WF-Standard + `/wf-max`: verifier evidence + one independent review PASS.
|
|
@@ -14,7 +14,13 @@ Improve `README.md` without breaking project-owned public docs.
|
|
|
14
14
|
- CI files when present
|
|
15
15
|
- `Harness/PROGRESS.md`
|
|
16
16
|
- `Harness/tasks/<task-id>/PLAN.md` when available
|
|
17
|
-
- `Harness/architecture.md` only when an architecture summary or diagram is requested
|
|
17
|
+
- `Harness/project/architecture.md` only when an architecture summary or diagram is requested
|
|
18
|
+
|
|
19
|
+
## Cache Discipline
|
|
20
|
+
|
|
21
|
+
Follow `Harness/specs/runtime/context-loading.md#Cache-First Context Contract`: load project
|
|
22
|
+
facts in the listed order, inspect only relevant README/package/CI sections, and
|
|
23
|
+
keep unknowns or command output in the dynamic suffix.
|
|
18
24
|
|
|
19
25
|
## Mode
|
|
20
26
|
|
|
@@ -34,7 +40,7 @@ If unanswered, use Preserve + append.
|
|
|
34
40
|
- Do not invent features, benchmarks, roadmap, support policy, badges, install commands, or CI status.
|
|
35
41
|
- Use tables for command matrices, environment variables, endpoints, and deployment notes when facts are known.
|
|
36
42
|
- Use Mermaid or ASCII architecture diagrams only when the structure is observed or approved; label uncertain diagrams as proposed.
|
|
37
|
-
- Keep detailed architecture in `Harness/architecture.md`; README may link to it or show a short overview.
|
|
43
|
+
- Keep detailed architecture in `Harness/project/architecture.md`; README may link to it or show a short overview.
|
|
38
44
|
- Keep agent rules in `CLAUDE.md`/`AGENTS.md`, not README.
|
|
39
45
|
- Record the chosen mode and any skipped README improvements in `Harness/tasks/<task-id>/PLAN.md` when available.
|
|
40
46
|
|
|
@@ -18,6 +18,12 @@ description: Use for /wf-remove in Claude Code, $wf-remove or /skills wf-remove
|
|
|
18
18
|
- `Harness/.harness-version`
|
|
19
19
|
- `Harness/scripts/wf-remove.mjs`
|
|
20
20
|
|
|
21
|
+
## Cache Discipline
|
|
22
|
+
|
|
23
|
+
Follow `Harness/specs/runtime/context-loading.md#Cache-First Context Contract`: use the
|
|
24
|
+
script's compact JSON plan as the dynamic suffix, avoid manual directory dumps,
|
|
25
|
+
and keep user decisions in task progress rather than chat transcript.
|
|
26
|
+
|
|
21
27
|
## Flow
|
|
22
28
|
|
|
23
29
|
1. On plain `/wf-remove`, run `node Harness/scripts/wf-remove.mjs --json` for
|
|
@@ -22,6 +22,13 @@ The main agent is the controller. It owns final decisions, accepted/rejected
|
|
|
22
22
|
findings, fixes, release claims, and user-facing recommendations. Review
|
|
23
23
|
agents only provide evidence-backed suggestions.
|
|
24
24
|
|
|
25
|
+
## Cache Discipline
|
|
26
|
+
|
|
27
|
+
Follow `Harness/specs/runtime/context-loading.md#Cache-First Context Contract`: build review
|
|
28
|
+
context from changed-file lists, ACs, validation evidence, and targeted diffs;
|
|
29
|
+
avoid pasting unrelated history, full transcripts, or unused tool schemas into
|
|
30
|
+
the review prompt.
|
|
31
|
+
|
|
25
32
|
## Runtime Selection
|
|
26
33
|
|
|
27
34
|
1. Build one review prompt containing the relevant diff, task acceptance
|
|
@@ -66,8 +73,8 @@ AgentName: reviewer
|
|
|
66
73
|
Mode: read-only
|
|
67
74
|
Objective: review the current diff for correctness, security, architecture,
|
|
68
75
|
performance, tests, and spec/AC compliance
|
|
69
|
-
Read set: changed files, tests, task PLAN/PROGRESS, Harness/agent-workflow.md,
|
|
70
|
-
Harness/subagents.md, Harness/dispatch.md, architecture docs when affected
|
|
76
|
+
Read set: changed files, tests, task PLAN/PROGRESS, Harness/specs/runtime/agent-workflow.md,
|
|
77
|
+
Harness/specs/runtime/subagents.md, Harness/specs/runtime/dispatch.md, architecture docs when affected
|
|
71
78
|
Write set: none
|
|
72
79
|
Forbidden: file edits, git mutations, formatting-only advice, ungrounded claims
|
|
73
80
|
ReturnSchema: findings by severity, file/line refs, missing verification,
|
|
@@ -80,6 +87,6 @@ deduplicate reviewer output and decide what to accept.
|
|
|
80
87
|
|
|
81
88
|
## Context
|
|
82
89
|
|
|
83
|
-
Include the relevant diff, `Harness/architecture.md` when architecture is in
|
|
90
|
+
Include the relevant diff, `Harness/project/architecture.md` when architecture is in
|
|
84
91
|
scope, and any task acceptance criteria. If the diff is too large, ask for a
|
|
85
92
|
narrower scope before invoking a peer CLI or reviewer subagent.
|
|
@@ -20,6 +20,33 @@ This skill is a Codex compatibility shim plus script-flow reference. Claude Code
|
|
|
20
20
|
- `Harness/scripts/scan-clean.mjs`
|
|
21
21
|
- `Harness/scripts/validate-harness.mjs`
|
|
22
22
|
|
|
23
|
+
## Cache Discipline
|
|
24
|
+
|
|
25
|
+
Follow `Harness/specs/runtime/context-loading.md#Cache-First Context Contract`: keep updater
|
|
26
|
+
scripts and ownership docs stable, consume compact `--json` agent plans first,
|
|
27
|
+
and avoid pasting verbose diffs or full remote files unless a conflict requires
|
|
28
|
+
targeted inspection.
|
|
29
|
+
|
|
30
|
+
## Classification
|
|
31
|
+
|
|
32
|
+
MANIFEST-FIRST. The installer and updater read
|
|
33
|
+
`Harness/ownership.manifest.json`:
|
|
34
|
+
|
|
35
|
+
- `preserve[]` — never touched (tasks, memory, research, root README,
|
|
36
|
+
package, architecture). `Harness/tasks/**` is always preserved.
|
|
37
|
+
- `merge[]` — CLAUDE.md, AGENTS.md, MEMORY.md, Harness/MEMORY.md,
|
|
38
|
+
Harness/README.md → merge or accept-local; prior accepted decisions
|
|
39
|
+
carry forward.
|
|
40
|
+
- `frameworkOwned[]` — safe overwrite-upgrade fast path (concurrent
|
|
41
|
+
fetch + hash + all-or-nothing write after checksum validation).
|
|
42
|
+
- `optionalOwned[]` — upgraded only when that option is installed.
|
|
43
|
+
|
|
44
|
+
Content markers (`harness: wf-agent`, `project harness`, `Harness/...`)
|
|
45
|
+
are the FALLBACK when no manifest exists (old installs) and the
|
|
46
|
+
instance-ownership signal that protects a user's same-name file at a
|
|
47
|
+
Harness path. A same-name user file with no marker and no manifest
|
|
48
|
+
declaration → conflict/skip + warning, never overwritten.
|
|
49
|
+
|
|
23
50
|
## Flow
|
|
24
51
|
|
|
25
52
|
1. Run `node Harness/scripts/wf-update-check.mjs --json` first and use the
|
|
@@ -28,20 +55,30 @@ This skill is a Codex compatibility shim plus script-flow reference. Claude Code
|
|
|
28
55
|
`LiWeny16/create-harness-vibe-coding`, then the legacy compatibility mirror
|
|
29
56
|
`zingspark/create-harness-vibe-coding`.
|
|
30
57
|
2. Preserve all PRESERVE files. Never overwrite user task, memory, research,
|
|
31
|
-
README, package, or architecture files.
|
|
58
|
+
root README.md, package, or architecture files. Harness/README.md is
|
|
59
|
+
merge-tier, not PRESERVE.
|
|
32
60
|
3. If `agent.safeApplyCommand` is present, run it to apply SAFE, NEW, and
|
|
33
61
|
adopted metadata-only files before spending AI time on conflicts. Default command:
|
|
34
62
|
`node Harness/scripts/wf-update-check.mjs --apply-safe`.
|
|
35
|
-
|
|
63
|
+
Framework-owned templates, commands, skills, agents, and scripts are
|
|
64
|
+
script-owned and should be overwritten by the updater after checksum validation.
|
|
65
|
+
4. Previously accepted decisions for any merge-tier file (CLAUDE.md, AGENTS.md,
|
|
66
|
+
MEMORY.md, Harness/MEMORY.md, Harness/README.md) are carried forward
|
|
67
|
+
automatically when both the local hash and remote template hash are unchanged.
|
|
68
|
+
5. If a new agent/command/skill path collides with an existing file, do not
|
|
69
|
+
decide by filename alone. Treat it as Harness-owned only when the file
|
|
70
|
+
content has Harness/WF markers such as `harness: wf-agent`, `project harness`,
|
|
71
|
+
or `Harness/...`; otherwise leave it as a real conflict.
|
|
72
|
+
6. For every remaining `agent.aiMergeRequired` entry, compare the local file with
|
|
36
73
|
`templateHint` or `remoteUrl`, then choose merge, keep-local, or
|
|
37
74
|
overwrite-from-template. Record the decision through the script with
|
|
38
75
|
`--accept-local <file>`, `--accept-merged <file>`, or
|
|
39
76
|
`--accept-template <file>`; do not hand-edit `Harness/.harness-version`.
|
|
40
77
|
Ask the user only when the intent is ambiguous.
|
|
41
|
-
|
|
78
|
+
7. Run `node Harness/scripts/wf-update-check.mjs --finalize` after all
|
|
42
79
|
conflicts have script-recorded decisions. Use strict `--apply` only when the
|
|
43
80
|
JSON plan has zero conflicts.
|
|
44
|
-
|
|
81
|
+
8. After update, run the validator and then scan-clean.
|
|
45
82
|
|
|
46
83
|
## Recovery
|
|
47
84
|
|