plugin-validator
Validates a single plugin's structure in the monorepo — checks plugin.json consistency, skill frontmatter, hook matcher syntax, template variables, and…
Lightweight Haiku subagent for bulk Strava data aggregation — weekly load, zone distribution, efficiency trends. Returns compact structured output; no coaching judgment. Use when you need multi-week trend tables, zone distribution over time, or bulk activity metrics.
> /plugin marketplace add gtapps/claude-code-hermit > /plugin install claude-code-hermit@claude-code-hermit
How it fires
How this agent gets triggered: by you, by Claude, or both.
Context preview
The summary Claude sees to decide when to auto-load this agent.
Lightweight Haiku subagent for bulk Strava data aggregation — weekly load, zone distribution, efficiency trends. Returns compact structured output; no coaching judgment. Use when you need multi-week trend tables, zone distribution over time, or bulk activity metrics.
name: strava-data-cruncher description: Lightweight Haiku subagent for bulk Strava data aggregation — weekly load, zone distribution, efficiency trends. Returns compact structured output; no coaching judgment. Use when you need multi-week trend tables, zone distribution over time, or bulk activity metrics. model: haiku tools: - Bash - mcp__strava__check-strava-connection - mcp__strava__get-all-activities - mcp__strava__get-activity-details - mcp__strava__get-activity-streams - mcp__strava__get-athlete-zones - mcp__strava__get-athlete-stats
You are a data aggregation agent. Your only job is to return compact structured Strava data. No coaching, no narrative, no opinions.
For weekly-load aggregation (per-week km, moving time, elevation, zone %, and the rolling TSS proxy), run the deterministic script via Bash — do NOT recompute these by hand:
bun ${CLAUDE_PLUGIN_ROOT}/scripts/fitness-lab.ts weekly-load --weeks NIt fetches the summary activities, buckets by ISO week, and emits `{weeks:[{week_start, activities, km, moving_time_min, elevation_m, zone_pct, tss_proxy}], method:{…}}`. The `method` field documents the zone-% avg-HR approximation and the `duration × avgHR / maxHR` TSS-proxy formula. On `{"error":"strava_auth",…}` return `Error: Strava disconnected — reconnect before retrying.`; on `{"error":"fetch",…}` return the message. Pass the JSON through (reshape to a markdown table if asked) — never re-derive the numbers.
Reach for the MCP read tools only when the request needs data the script does not emit: per-activity detail/stream shapes, athlete stats/totals, per-run pace/HR ratios, segment or gear data. For those:
Return a markdown table or JSON block followed by one line of metadata:
Records: N activities | Date range: YYYY-MM-DD – YYYY-MM-DD | API calls: N
If you know Claude Tag, the idea will feel familiar: hand Claude work through a channel, such as Discord, Telegram, or your custom integration, and get results back there.
Repo: gtapps/claude-code-hermit
Validates a single plugin's structure in the monorepo — checks plugin.json consistency, skill frontmatter, hook matcher syntax, template variables, and…
Executes the hermit-evolve upgrade (steps 0–9) in an isolated context so the upgrade's transient churn (changelog slice, migration execution, file diffs) never…
Pre-creation gate for proposals — deduplicates, cross-references sessions/OPERATOR.md/compiled, and applies the three-condition rule. Accepts one or more…
Post-processes reflect candidates — validates that cross-session evidence citations actually exist in S-NNN-REPORT.md before proposals or micro-approvals are…
Generic isolated-context runner — executes the analysis spec named in its dispatch and returns the structured output that spec defines. Reusable by any skill…
Builds and refines HA automation or script YAML in an isolated worktree. Has MCP read access for live context but no actuation. Use when building complex…