bump-core-req
Updates the minimum core version requirement for a fleet plugin in all three canonical places: `required_core_version` and…
Review a scheduled chat's corrections and propose updates to its pinned memory rules or exact chat instructions. Use for chat-owned rule-review routines; proposals require a reply before application.
$ npx -y skills add gtapps/hermitd --skill role-review --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/role-reviewContext preview
The summary Claude sees to decide when to auto-load this skill.
Review a scheduled chat's corrections and propose updates to its pinned memory rules or exact chat instructions. Use for chat-owned rule-review routines; proposals require a reply before application.
name: role-review description: Review a scheduled chat's corrections and propose updates to its pinned memory rules or exact chat instructions. Use for chat-owned rule-review routines; proposals require a reply before application.
Review only the owning chat of the routine in the fire context. Obtain its routine id from that context; never guess from chat text or choose another routine. This skill proposes changes and never applies them. No reply means no change.
If the id is missing from context, finish with one plain line in the fire's owning chat, when known, that its rules could not be reviewed.
Dispatch a foreground general-purpose subagent with the routine id, the `role-review-snapshot` command and the analysis instructions below; at the subagent depth limit, do its work inline instead. The worker runs `role-review-snapshot` and parses the whole-stdout JSON itself, so the chat rows never enter your context. It returns only one JSON object, with no file writes or channel sends:
For `ready`, run `role-review-commit` (Commands) with the same routine id and the returned `upper_id`, passing the `proposals` array as JSON on stdin through a literal heredoc or data file, never executable interpolation. Run it for `[]` too: a quiet commit advances the cursor. The script validates the evidence and targets, saves accepted proposals and supersedes older pending proposals for the same target. It does not apply them.
On `stale_snapshot`, finish silently because that snapshot was already consumed. On any other failure, post one plain line that the review could not be saved. On `committed`, post one message per entry in `saved`, and none for rejected proposals or a quiet run. Use the saved `current_text` and `proposed_text`, not the worker's unchecked output. Each message gives the current wording and the proposed wording. For memory, say a reply accepting it applies the change. For instructions, say the operator's approval through the native permission prompt is needed. Keep the proposal id available in context for matching the later reply, but keep operator-facing prose plain.
Send through the owning chat's reply tool. Split the saved `chat` on its first colon into the bare source key and chat id. As in channel-responder §0, require exactly one loaded `mcp__plugin_<plugin-name>_<sourceKey>__reply` tool with that server segment; no match or several matches means unreachable. Do not invent a tool name by doubling the bare key. Report undelivered messages through the usual Operator Notification path. Use `config.language` for all operator-facing prose, and the chat's language when it is unset.
Before a channel send, if formatting rules are not already in context, Read only this excerpt once:
{"file_path":"${CLAUDE_PLUGIN_ROOT}/skills/channel-responder/SKILL.md","offset":29,"limit":9}Apply that formatting check to every send. Do not invoke the responder or read its full body for formatting. Return only a one-line status to the routine caller.
Run an always-on Claude Code agent on your own machine, for you or your team. Start sessions from your chat in any project it can reach, on the model and effort you choose, and steer them through the agent or take over in the Claude app or CLI.
Updates the minimum core version requirement for a fleet plugin in all three canonical places: `required_core_version` and…
Changelog and commit — lightweight motion for day-to-day plugin dev work in the monorepo. One commit per plugin scope; CHANGELOG…
Documentation-drift audit for the plugin monorepo. Audits either each scoped plugin's unreleased changelog claims or its latest…
Explain in plain language what a fix, feature, PR, or plan will actually change for downstream hermits and the operators chatting…
Use this skill whenever the user wants to release, ship, prep, or cut versions for two or more plugins together on the current…
Daily release-pipeline digest with a change gate — reports which plugins are pending release, whether main's CI is green, which…