# AI Skill Composability The ability to build complex AI agent capabilities by combining smaller, reusable [[AI Agent Skills]]. Instead of writing monolithic prompts, composable skills are modular: each does one thing well, and agents orchestrate them together. ## Why composability matters - **Reuse**: a skill for "read vault note" can be used by a ghostwriter agent, a researcher agent, and a maintenance agent - **Maintainability**: updating one skill improves every agent that uses it - **Testability**: small skills are easier to verify than large monolithic prompts - **Flexibility**: new agents can be created by combining existing skills in new ways, without writing from scratch ## Composition patterns - **Skill chaining**: one skill's output feeds into another (e.g., "search notes" → "summarize results" → "write draft") - **Skill selection**: the agent picks which skill to use based on the task ([[AI Agent Routing]] at the skill level) - **Skill layering**: a higher-level skill orchestrates several lower-level skills (e.g., a "publish newsletter" skill that calls "write content", "optimize images", "upload to Ghost") - **Context loaders**: non-executable skills that provide context to other skills (e.g., loading writing style before the ghostwriter skill runs) - **[[Prompt Lazy Loading AI Design Pattern (PLL)]]**: loading skills on demand rather than upfront, preserving [[Context Budget]] ## Current approaches - **Skill manifests**: agents declare which skills they use in a DEPENDENCIES.md file - **Skill dependencies**: skills can reference other skills (e.g., "load osk-note-writer skill first") - **Agent-as-composer**: the agent itself is the orchestration layer, choosing which skills to invoke based on the task - **Plugin systems**: [[Claude Code Plugins]] provide structured skill packaging with dependency metadata ## Design principles - **Single responsibility**: each skill does one thing well - **Clear interfaces**: skills declare what input they need and what output they produce - **Minimal coupling**: skills should work independently, not assume other skills are loaded - **Progressive disclosure**: start with a summary, load details only when needed (PLL) ## The composability challenge As skill libraries grow, composition introduces complexity: - **Dependency conflicts**: two skills may assume incompatible context or conventions - **Token explosion**: composing many skills can exceed the [[Context Budget]] - **Ordering sensitivity**: skill load order can affect behavior - **Version compatibility**: updating one skill may break agents that compose it with others ## References - ## Related - [[AI Agent Skills]] - [[AI Skill Distribution]] - [[AI Agent Distribution]] - [[AI Agent Routing]] - [[Prompt Lazy Loading AI Design Pattern (PLL)]] - [[Context Budget]] - [[Claude Code Plugins]] - [[Agentic Engineering]] - [[Agent System Engineering]] - [[Atomicity]] - [[Composition over Inheritance]] - [[Barrel Pattern]] - [[SOLID Principles]] - [[Software Design Patterns for AI Skills and Agents]] - [[Heavy AI Agents Are an Anti-Pattern - Why Fewer Agents With More Skills Wins (Article)]]