From cwf
Conducts human-in-the-loop reviews of git branch diffs file-by-file in chunks with context, resumable state, agreement rounds, and rule propagation for targeted judgment.
npx claudepluginhub corca-ai/claude-plugins --plugin cwfThis skill uses the workspace's default tool permissions.
Insert deliberate human judgment into branch-diff review (`<base>...HEAD`) with resumable chunk state. Reviews file-by-file in meaningful chunks, pauses for user input each chunk, and persists state/rules so work can resume anytime.
Creates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Executes implementation plans in current session by dispatching fresh subagents per independent task, with two-stage reviews: spec compliance then code quality.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
Insert deliberate human judgment into branch-diff review (<base>...HEAD) with resumable chunk state. Reviews file-by-file in meaningful chunks, pauses for user input each chunk, and persists state/rules so work can resume anytime.
Every chunk review must be presented as: Primary Chunk + Related Context + Causal Lens. Do not present isolated chunks.
cwf:hitl [--base <branch>] [--scope docs|code|all]
cwf:hitl --resume
cwf:hitl --rule "<rule text>"
cwf:hitl --rules
cwf:hitl --state
cwf:hitl --close
Persist HITL runtime state under .cwf/projects/{session-dir}/hitl/ and keep cwf-state.yaml as pointer metadata only.
Canonical schema details (field contracts, status enums, and intent-resync state transitions) live in:
At minimum, keep these runtime artifacts:
.cwf/projects/{session-dir}/hitl/
hitl-scratchpad.md
state.yaml
rules.yaml
queue.json
fix-queue.yaml
events.log
--base winsmaindocs|code|all, default all).git diff --name-only <base>...HEAD.--resume, load from live.hitl.state_file pointer in cwf-state.yaml.
.cwf/projects/*/hitl/.live.dir (recommended) or a new session dir.cwf/projects/{session-dir}/hitl/ artifactscwf-state.yaml live.hitl.state_fileBefore chunk review starts, run one agreement round in the same cwf:hitl flow (no extra mode/flag):
hitl-scratchpad.md:
hitl-scratchpad.md again after edits:
Applied / In progressUpdated timestampWhen --resume is used, refresh the same scratchpad first (new agreements or changed priorities), then continue from cursor.
This gate prevents stale intent from leaking into the next chunk.
state.yaml using the contract in hitl-state-model.md, and append the trigger to events.log.intent_resync_required.true, run resync first:
hitl-scratchpad.md with the confirmed intent deltalast_intent_resync_at per state model contractblob_sha and set initial file status to pending.pending.context_refs per chunk and save to queue.json.
state.yaml, fix-queue.yaml, and events.log.If high-impact edits were applied during Phase 0.5, build/rebuild queue after those edits so chunk boundaries and blob hashes are fresh.
Before every chunk presentation, enforce Phase 0.75 gate (intent_resync_required must be false).
For each chunk, output exactly:
Primary Chunk ({file}:{start_line}-{end_line} and EOF 여부)Primary ExcerptRelated Context (at least 1 context excerpt with path/line anchors + relation)Causal Lens (symptom, likely root cause, guardrail/invariant)Review Focus (Line-Anchored) with at least 2 concrete pointsConsistency Check:
Root-Cause Discussion Prompt (1-2 concrete questions)Then pause and wait for user acknowledgement.
Before each pause, persist cursor/progress.
context_refs.adjacent_fallback.in_review while presenting it.fix-queue.yaml first (do not silently rewrite previously closed sections).stale.When user gives an improvement rule:
rules.yaml.docs or code, path globs, severity/priority).file/chunk + rationale) before continuing.All accepted rules are applied to remaining chunks in the same HITL session.
When a new rule affects already reviewed regions, add those targets to fix-queue.yaml and mark overlapping chunks stale only when an edit is actually applied.
On --resume:
state.yaml cursor.blob_sha with current file blob:
reviewed overlapping chunks as stalestale before untouched pending.On --close (or EOF completion):
completed (or closed_by_user).cwf-state.yaml pointer updated_at.files/chunks reviewed, rules applied, fix-queue pending/applied, stale re-reviewed count)..cwf/projects/{session-dir}/hitl/; store only pointers in cwf-state.yaml.in_review fixes can be immediate; reviewed fixes go to fix-queue unless the user requests immediate application.stale and trigger delta-review before close.fix-queue.yaml for actionable edits, hitl-scratchpad.md for agreements/rationale.hitl-scratchpad.md before continuing.Related Context.Primary Chunk + Related Context + Causal Lens.Root-Cause Discussion Prompt must focus on cause validation, not symptom restatement.Before, After, After Intent within the Primary Chunk section.
Before/After must include enough surrounding context for user judgment (for example, the full paragraph or subsection, not a single isolated sentence).intent_resync_required=true and append trigger to events.log).intent_resync_required=true, apply the Phase 0.75 block rule (no next chunk presentation).intent_resync_required only through the Phase 0.75 completion contract (hitl-scratchpad.md intent delta + last_intent_resync_at update).state.yaml, queue.json, fix-queue.yaml, and HITL pointer metadata