plugins/claude-code-hermit/skills/hermit-brain/SKILL.md
Show fragile zones, stale accepted proposals, and recent learnings drawn from session history, proposals, and reflect output. Activates on messages like 'what's stuck', 'any fragile zones', 'show me what's blocked', 'recent learnings', 'hermit brain', 'what have you learned lately', 'where are the weak spots'.
npx skillsauth add gtapps/claude-code-hermit hermit-brainInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Synthesize a compact analytical snapshot of the hermit's current knowledge state: where things are fragile, which accepted proposals have stalled, and what has been recently learned.
If this skill was invoked from a channel-arrived message (the inbound prompt contains a <channel source="..."> tag), reply via that channel's reply tool. Otherwise emit to conversation.
Dispatch claude-code-hermit:skill-eval-runner pointed at ${CLAUDE_PLUGIN_ROOT}/skills/hermit-brain/reference.md. The runner reads the session reports, proposals, SHELL.md, and reflection state in an isolated context and returns the assembled snapshot — keeping those full-body reads off this session's inherited context.
Eval runner return schema — the runner's return value is a JSON object conforming to this block. The schema is byte-identical in reference.md (producer) and here (consumer); a contract test asserts this.
{
"report": "<assembled ≤1500-char report, section structure above>"
}
<!-- hermit-brain-eval-schema:end -->
Failure policy: if the runner returns null or malformed JSON, fail-open — deliver a one-line "hermit-brain: snapshot unavailable (analysis-runner failed)" via the Step 0 target and stop.
Deliver the runner's report verbatim (≤1500 chars) via the Step 0 target. The runner already omits empty sections; do not re-synthesize. For reference, the report uses this section structure:
### Fragile zones
- [tag or theme]: [one-line reason]
(or: No fragile zones detected — no blocked/partial sessions yet.)
### Stale proposals
- PROP-NNN: [title] (accepted N days ago)
(or: No accepted proposals awaiting resolution.)
### Recent learnings
- [learning]
(or: No recent learnings — reflect hasn't run yet.)
tools
Composes and delivers the daily fitness brief — a forward-looking morning read (readiness + today's plan) or a backward-looking evening read (today's training, or an earned-rest note, + tomorrow's setup) — in the operator's configured voice. Invoke with /claude-code-fitness-hermit:fitness-brief --morning|--evening|--slot <name>. Becomes the plugin's two daily beats — the morning Strava connectivity check and the evening activity sync, RPE binding, and Run deep-dive.
development
Renew the hermit's long-lived Claude login token over the channel, before it expires. Relays a one-time sign-in link to the operator, takes the code back, installs the new token, and restarts. Activates on messages like 'relogin', 'renew my login', 'reauth', 'the login is expiring', or when doctor's credential-expiry check flags setup-token.
development
Synthesizes the past 7 days of archived briefs into a weekly digest — top stories, emerging vs faded themes, category activity, and per-source performance built from archive frontmatter. Delivers to the operator's configured channel and archives a weekly note. Designed as a weekly routine. Invoke with /feed-hermit:weekly-digest.
development
Manage developing story arcs tracked across briefs — add, resolve, and list active arcs in compiled/story-arcs-*.md. Arc Watch keywords drive the feed-brief arc-tagging enrichment. Invoke with /feed-hermit:story-arcs add|resolve|list.