| 1 | ### skills_tool |
| 2 | use skills only when relevant |
| 3 | actions: list search load read_file |
| 4 | common args: action skill_name query file_path |
| 5 | workflow: |
| 6 | - action `search`: find candidate skills by keywords or trigger phrases from the current task |
| 7 | - action `list`: discover available skills |
| 8 | - action `load`: append one skill's full instructions to chat history by `skill_name` |
| 9 | - action `read_file`: open one file inside a loaded skill directory |
| 10 | if the user says "find/search a skill", call `search` before `load` even when the likely skill name seems obvious |
| 11 | `read_file` requires both `skill_name` and `file_path`; load the skill first, then read `SKILL.md` or the named relative file |
| 12 | after loading a skill, follow its instructions and use referenced files or scripts with other tools |
| 13 | reload a skill if its instructions are no longer in context |
| 14 | example: |
| 15 | ~~~json |
| 16 | { |
| 17 | "thoughts": ["The user's request sounds like a skill trigger phrase, so I should search first."], |
| 18 | "headline": "Searching for relevant skill", |
| 19 | "tool_name": "skills_tool", |
| 20 | "tool_args": { |
| 21 | "action": "search", |
| 22 | "query": "set up a0 cli connector" |
| 23 | } |
| 24 | } |
| 25 | ~~~ |