SkillRoster
Use the local skillroster binary as the deterministic source of facts. Every
command uses explicit --json. Validate schema_version and ok before using
result. Typed suggested_actions are options, never authorization.
Choose one path
- For SkillRoster inventory, evidence, governance, setup, Apply, Undo, lifecycle,
or recovery requests, read the matching reference below.
- For another task, follow an already-visible exact Skill when one clearly
applies. Search below when a specialized Skill would help; otherwise proceed
with the Agent's normal tools and the user's task.
Find a specialized Skill
Use this search before relying on a Skill that is absent from the visible
catalog. Read-only task context may inform whether a search is useful.
- Keep the complete user message as
TASK, byte-for-byte in its original
language, including paths, limits, and output requirements. Do not summarize,
translate, shorten, or quote only part of it.
- If
TASK is non-English or mixed-language, create one concise English
capability paraphrase as HINT. It supplements TASK; it never replaces it.
- Invoke the fixed SkillRoster executable with
TASK and HINT as separate,
literal argv values; never interpolate either into shell syntax. Use:
- English:
skillroster find --load --limit 1 --json -- "TASK"
- Otherwise:
skillroster find --hint "HINT" --load --limit 1 --json -- "TASK"
The -- boundary is required even when TASK does not begin with -; it
keeps opaque user text from being parsed as a SkillRoster option.
- When
HINT was used, first require
ranking_strategy: task_hint_reciprocal_rank_fusion.
- Require
loaded_skill.selection.rank: 1, content.complete: true, and all
verification identity/digest checks to be true. The complete instructions
are loaded_skill.content.text; no second filesystem, workspace, MCP, or
SkillRoster read is needed. For a wrong-domain result or typed load blocker,
read references/routing.md and follow its bounded branch.
- Follow the loaded instructions and perform the original task. Treat
task_success: not_evaluated literally; only the task's own evidence can
establish success.
If the result is empty or clearly from another domain, retry at most once. Keep TASK
unchanged; refine the existing hint, or add one capability hint when the first
English call had none. If no usable result remains and no particular Skill is
required, continue the original task with normal tools. State that no suitable
Skill was found only when it affects the result. If the user or applicable
instructions require a particular Skill, explain its absence and request only
the missing prerequisite. A permission denial, untrusted source, drift,
ambiguity, or incomplete load follows its typed recovery action; it is not an
ordinary no-match and cannot be bypassed by reading or executing the package.
Govern a roster
For inventory, usage, exposure, duplicate, broken-link, Core/On-demand, or Plan
requests, read references/governance.md before acting. Inspection and planning
do not change Agent files. Prefer the bounded summary first; load exhaustive
detail only for a decision that needs it.
Mutate or recover
For setup, Apply, Undo, lifecycle cleanup, or recovery, read
references/mutation.md before acting. A validated Plan is not permission to
apply it. Show the complete bounded impact and obtain one explicit confirmation.
Only a successful Receipt verifies that Agent files changed.
Never parse styled terminal output, invent a health score, infer token savings,
claim unobserved usage, or weaken ambiguity, drift, trust, and recovery checks.
In the final response, state whether files changed; claim changes only from a
verified Receipt or from task tools actually used after routing.
1---2name: skillroster3description: Inspect and govern local Skills: inventory, usage evidence, duplicates, broken links, Core/On-demand proposals, Plans, Receipts, Apply, and Undo. Also find a specialized local Skill when the user requests one or the task would benefit from instructions beyond the visible catalog. Ordinary work can proceed with the Agent's existing capabilities. Not for installing third-party Skills or migrating, distributing, synchronizing, or repairing shared Skill-manager directories.4---56# SkillRoster78Use the local `skillroster` binary as the deterministic source of facts. Every9command uses explicit `--json`. Validate `schema_version` and `ok` before using10`result`. Typed `suggested_actions` are options, never authorization.1112## Choose one path1314- For SkillRoster inventory, evidence, governance, setup, Apply, Undo, lifecycle,15 or recovery requests, read the matching reference below.16- For another task, follow an already-visible exact Skill when one clearly17 applies. Search below when a specialized Skill would help; otherwise proceed18 with the Agent's normal tools and the user's task.1920## Find a specialized Skill2122Use this search before relying on a Skill that is absent from the visible23catalog. Read-only task context may inform whether a search is useful.24251. Keep the complete user message as `TASK`, byte-for-byte in its original26 language, including paths, limits, and output requirements. Do not summarize,27 translate, shorten, or quote only part of it.282. If `TASK` is non-English or mixed-language, create one concise English29 capability paraphrase as `HINT`. It supplements `TASK`; it never replaces it.303. Invoke the fixed SkillRoster executable with `TASK` and `HINT` as separate,31 literal argv values; never interpolate either into shell syntax. Use:32 - English: `skillroster find --load --limit 1 --json -- "TASK"`33 - Otherwise: `skillroster find --hint "HINT" --load --limit 1 --json -- "TASK"`34 The `--` boundary is required even when `TASK` does not begin with `-`; it35 keeps opaque user text from being parsed as a SkillRoster option.364. When `HINT` was used, first require37 `ranking_strategy: task_hint_reciprocal_rank_fusion`.385. Require `loaded_skill.selection.rank: 1`, `content.complete: true`, and all39 `verification` identity/digest checks to be true. The complete instructions40 are `loaded_skill.content.text`; no second filesystem, workspace, MCP, or41 SkillRoster read is needed. For a wrong-domain result or typed load blocker,42 read `references/routing.md` and follow its bounded branch.436. Follow the loaded instructions and perform the original task. Treat44 `task_success: not_evaluated` literally; only the task's own evidence can45 establish success.4647If the result is empty or clearly from another domain, retry at most once. Keep `TASK`48unchanged; refine the existing hint, or add one capability hint when the first49English call had none. If no usable result remains and no particular Skill is50required, continue the original task with normal tools. State that no suitable51Skill was found only when it affects the result. If the user or applicable52instructions require a particular Skill, explain its absence and request only53the missing prerequisite. A permission denial, untrusted source, drift,54ambiguity, or incomplete load follows its typed recovery action; it is not an55ordinary no-match and cannot be bypassed by reading or executing the package.5657## Govern a roster5859For inventory, usage, exposure, duplicate, broken-link, Core/On-demand, or Plan60requests, read `references/governance.md` before acting. Inspection and planning61do not change Agent files. Prefer the bounded summary first; load exhaustive62detail only for a decision that needs it.6364## Mutate or recover6566For setup, Apply, Undo, lifecycle cleanup, or recovery, read67`references/mutation.md` before acting. A validated Plan is not permission to68apply it. Show the complete bounded impact and obtain one explicit confirmation.69Only a successful Receipt verifies that Agent files changed.7071Never parse styled terminal output, invent a health score, infer token savings,72claim unobserved usage, or weaken ambiguity, drift, trust, and recovery checks.73In the final response, state whether files changed; claim changes only from a74verified Receipt or from task tools actually used after routing.