Agent Skills
Agent Skills (often referred to as Tools, Plugins, or Function Calling capabilities) are the distinct, executable capabilities provided to an AI Agent. They bridge the gap between the probabilistic reasoning of a Large Language Model and the deterministic execution of traditional software.
Definition and Interface
Technically, a “Skill” is an API definition that is injected into the LLM’s context. It typically consists of:
-
Name: A unique identifier (e.g.,
get_weather). - Description: A natural language explanation of what the skill does and when to use it. This is crucial for the LLM’s router/planner.
- Schema: A JSON schema defining the required parameters, types, and descriptions for the arguments.
Implementation Pattern
The execution flow for an Agent Skill typically follows this pattern:
- Declaration: The developer defines the skill (e.g., a Python function annotated with types).
- Exposure: The system serializes the function signature into a format the LLM understands (like OpenAI Function Calling JSON).
- Invocation: The LLM decides to call the tool and generates a structured JSON payload.
- Execution: The runtime intercepts this payload, executes the actual code (sandbox or local), and captures the output.
- Observation: The output is fed back into the LLM as an “Observation” prompting the next step in the reasoning loop.
Skill Categories
Skills generally fall into three categories:
- Information Retrieval: Searching the web, querying SQL databases, or reading documentation.
- Computation: Using a code interpreter (Python sandbox) for math, data analysis, or graph generation.
- Action/Side-Effects: Sending emails, updating CRM records, or deploying code.
Effective AI Agents rely heavily on a well-curated library of skills. The quality of the skill description often matters more than the model size for accurate tool selection.