wotai-dev/woterclip/heartbeat-log
Claude Code and agent skill by wotai-dev/woterclip
- community
Checking that the SKILL.md file is still in the repository.
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.
Install
npx vskill@latest install wotai-dev/woterclip/heartbeat-logSKILL.md
Heartbeat Log
Parse and summarize the WoterClip heartbeat log file (.woterclip/heartbeat-log.jsonl).
Log Format
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:
Beat line — one per beat, carrying the beat's cost and why it stopped:
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.
Procedure
Step 1: Read Log
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).
Step 2: Summarize
Recent activity (default: last 10 issue lines — beat lines are excluded from this view; see the aggregate stats below for beat-level figures):
Aggregate stats (when asked for analytics or summary):
- Total issue lines, and total beats (count of beat lines)
- Heartbeats per persona (breakdown)
- Average duration per persona — over issue lines that carry `duration_sec` only, stating how many lines were excluded as unavailable
- Total and average
beat_elapsed_secacross beat lines - Stop-reason breakdown (how many beats hit
time_ceilingvsissue_budgetvscomplete) - Completion rate (completed / total)
- Most active issues (by heartbeat count)
- Blocked issues and duration blocked
Step 3: Filter Options
Support filtering when the user asks:
- By persona: "show backend heartbeats" → filter by
personafield - By issue: "show activity for #79" → filter by
issuefield - By date range: "show today's heartbeats" → filter issue lines by
timestampand beat lines bystarted_at; beat lines carry notimestamp - By status: "show blocked heartbeats" → filter by
status
Notes
- The log file is append-only and informational — safe to truncate if it grows too large
- Heartbeat numbers are per-issue (derived from comments), not global sequence numbers
- Field definitions — including what
duration_secandbeat_elapsed_seceach measure — are in${CLAUDE_PLUGIN_ROOT}/references/beat-economics.md
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/heartbeat-log/SKILL.md
Popularity
- Repository stars
- 56
- Repository forks
- 7
- 7-day trend score
- 20
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/wotai-dev/woterclip/heartbeat-log)