heartbeat
This skill should be used when the user asks to "run a heartbeat", "run the agent loop", "process GitHub issues", "check for work", or runs the /heartbeat…
This skill should be used when the user asks to "show heartbeat log", "heartbeat history", "what has woterclip done", "show agent activity", "summarize heartbeats", or wants to analyze past heartbeat activity. Parses heartbeat-log.jsonl for summaries and analytics.
$ npx -y skills add wotai-dev/woterclip --skill heartbeat-log --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/heartbeat-logContext preview
The summary Claude sees to decide when to auto-load this skill.
This skill should be used when the user asks to "show heartbeat log", "heartbeat history", "what has woterclip done", "show agent activity", "summarize heartbeats", or wants to analyze past heartbeat activity. Parses heartbeat-log.jsonl for summaries and analytics.
name: heartbeat-log description: This skill should be used when the user asks to "show heartbeat log", "heartbeat history", "what has woterclip done", "show agent activity", "summarize heartbeats", or wants to analyze past heartbeat activity. Parses heartbeat-log.jsonl for summaries and analytics. version: 0.1.0
Parse and summarize the WoterClip heartbeat log file (`.woterclip/heartbeat-log.jsonl`).
Each line is a JSON object in one of two kinds, distinguished by `type`. Full field definitions live in `${CLAUDE_PLUGIN_ROOT}/references/beat-economics.md`.
**Issue line** — one per issue worked. A line with **no `type` key is an issue line**, which is what makes every pre-contract line readable without migration:
{"heartbeat": 7, "timestamp": "2026-03-25T10:15:00Z", "issue": "#79", "persona": "backend", "duration_sec": 720, "status": "in_progress", "actions": ["committed a1b2c3d", "created sub-issue #83"]}**Beat line** — one per beat, carrying the beat's cost and why it stopped:
{"type": "beat", "started_at": "2026-03-25T10:03:00Z", "ended_at": "2026-03-25T10:17:05Z", "beat_elapsed_sec": 845, "issues_worked": 2, "stop_reason": "time_ceiling"}**Treat a missing field as unavailable, never as zero.** Lines written before this contract carry no `duration_sec` value and have no accompanying beat line. Render those as `—`; counting them as `0` would report a beat that ran for minutes as free, and would drag any average toward zero.
Read `.woterclip/heartbeat-log.jsonl`. If missing or empty, report "No heartbeat history found."
Parse each line as JSON. Handle malformed lines gracefully (skip with warning).
**Recent activity** (default: last 10 **issue lines** — beat lines are excluded from this view; see the aggregate stats below for beat-level figures):
Heartbeat History ───────────────── #7 10:15 backend #79 In Progress (12 min) #6 09:45 backend #81 Completed (8 min) #5 09:15 ceo #80 Triaged (4 min)
**Aggregate stats** (when asked for analytics or summary):
Support filtering when the user asks:
GitHub Issues-backed agent orchestration for Claude Code. A single Claude instance wears different "hats" (personas) based on GitHub issue labels – an Orchestrator routes work, a CEO makes strategic calls, and worker personas execute.
This skill should be used when the user asks to "run a heartbeat", "run the agent loop", "process GitHub issues", "check for work", or runs the /heartbeat…
This skill should be used when the user asks to "initialize woterclip", "set up woterclip", "woterclip init", "configure woterclip for this repo", or runs the…
This skill should be used when the user asks to "create a persona", "add a new persona", "set up a new agent role", "add a woterclip persona", or runs the…
This skill should be used when the user asks to "import a paperclip agent", "convert paperclip to woterclip", "migrate from paperclip", "import persona from…
This skill should be used when the user asks to "list personas", "show personas", "what personas are configured", "show woterclip agents", or runs the…
This skill should be used when the user asks to "check woterclip status", "show agent status", "what is woterclip doing", "show heartbeat status", "what's in…