{"version":"2.0.20","anchor":"skill-tool-full-implementation","canonical_anchor":"skill-tool-full-implementation","heading":"Skill Tool (Full Implementation)","tier":null,"area":null,"scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.0.20\/e\/skill-tool-full-implementation","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.0.20","markdown":"### Skill Tool (Full Implementation)\n\n**What:** Complete implementation of the Skill tool, enabling Claude to execute skills and commands directly during conversations (previously existed only as a stub)\n\n**How to use:** Skills are invoked automatically by Claude when appropriate, or you can configure permission rules:\n\n`# In .claude\/settings.local.json { \"permissions\": { \"allow\": { \"Skill\": [\"pdf\", \"xlsx\", \"custom-skill:*\"] } } }` **Details:**\n\n- Supports both mode commands (high-priority) and regular skills\n- Includes intelligent token budgeting (15,000 character default via `SLASH_COMMAND_TOOL_CHAR_BUDGET`)\n- Permission system with wildcard patterns (e.g., `skill-name:*`)\n- Skills are categorized by source: project, user, plugin, or managed\n- Mode commands receive priority and full token allocation\n- **Evidence**: `Mo1` initialization at line 429046, `W$Q()` prompt generator at line 428983, `nw` variable at line 428903"}