context-handoverlisted
Install: claude install-skill ClydeShen/harness-skill
# Context Handover
Saves session state so the next session can resume without information loss.
## State files
`.harness/state.json` — session lifecycle (read/write):
```json
{
"version": "1.0",
"session": { "status": "idle", "started_at": "ISO 8601", "last_session": "ISO 8601" },
"position": { "phase": "01-discuss", "active_task": "...", "resume_file": "...", "stopped_at": "..." }
}
```
`.harness/phases/XX-name/.continue-here.json` — resume context (write):
```json
{
"version": "1.0",
"phase": "01-discuss",
"task": 1,
"total_tasks": 3,
"status": "in_progress",
"last_updated": "ISO 8601",
"current_state": "...",
"completed_work": ["..."],
"remaining_work": ["..."],
"decisions_made": ["..."],
"blockers": [],
"context": "...",
"next_action": "..."
}
```
## When to trigger
- **Proactive:** After each tool call, check token usage. If ≥70% used and remaining tokens are insufficient to complete Review + Compound for the current phase — trigger immediately.
- **Safety net:** ≥80% total usage — if proactive trigger was missed.
Do NOT invoke `/compact` programmatically. Instruct the user to type it.
## Phase detection (priority order)
1. `.harness/state.json` → `position.phase` — use if present
2. Active GitHub issue labels → `phase:discuss / plan / execute / verify`
3. Issue title/body keywords — "design"/"spec"/"ADR" → discuss; "PRD"/"story" → plan; "implement"/"build"/"fix" → execute; "test"/"QA" → verify
4. Default to `execute` — note "phas