| 1 | # Skills |
| 2 | |
| 3 | Skills is a built-in Agent Zero plugin that manages current-chat skill loading |
| 4 | and layered skill visibility, including profile-level policy from Agent Editor. |
| 5 | |
| 6 | ## What It Does |
| 7 | |
| 8 | - loads selected skills into current-chat history |
| 9 | - hides noisy skills from the model-facing available catalog, skill search, and load access |
| 10 | - shows loaded skills without offering removal, because loaded skill bodies are part of chat history |
| 11 | - lets users hide or show skills live per conversation |
| 12 | - supports global/project settings plus profile-level Agent Editor visibility policy |
| 13 | - links directly to the built-in Skills list |
| 14 | - links directly to the active project's Skills section when a project is active |
| 15 | |
| 16 | ## Why This Exists |
| 17 | |
| 18 | Agent Zero already supports loading skills dynamically with `skills_tool`, and already has great built-in skill management surfaces. What it did not have was a lightweight way to use that same history-backed skill loading from the Skills screen. |
| 19 | |
| 20 | Skills fills that gap as a bundled built-in plugin. |
| 21 | The shared skill discovery and loaded-skill ledger live in `helpers/skills.py`, and this plugin focuses on catalog UI, chat loading, and visibility. |
| 22 | |
| 23 | ## Notes |
| 24 | |
| 25 | - selected skills are appended to current-chat history using the same metadata shape as `skills_tool` |
| 26 | - loaded skills are not removable from the UI; future context compaction may reattach their bodies from the loaded-skill ledger |
| 27 | - hidden skills are stored as control data, not injected into the prompt |
| 28 | - hidden skill paths are stored in normalized `/a0/...` form so configs stay portable across development and Docker-style layouts |
| 29 | - if a configured hidden skill is not visible in the current agent scope, it is skipped quietly instead of breaking catalog builds |
| 30 | - profile visibility uses sparse Allowed/Blocked exceptions with an explicit |
| 31 | default for future skills; allowing a skill does not load or pin it |