Repository navigation
"Agent Skills" feature #1947
Replies: 4 comments
|
This is a great idea! I've been thinking about similar patterns. The tools vs skills distinction is key:
One approach I've found effective: Instead of saturating the system prompt, you can implement skills as shared state patterns. The agent doesn't need to know every skill upfront — it reads the current state and knows what's expected. # Skill as state schema
skills = {
"code_review": {
"steps": ["read_file", "analyze", "suggest_fixes"],
"current_step": 0,
"context": {}
}
}Benefits:
How this relates to Anthropic's approach: Anthropic's C compiler project used a similar idea — file-based coordination where agents don't directly communicate but read/write to shared state. The "skill" emerges from the state transitions rather than being encoded in prompts. Working example with 4 specialized agents: https://github.com/KeepALifeUS/autonomous-agents The key insight: skills can be emergent from coordination patterns rather than explicitly defined. This scales better as complexity grows. Would love to see smolagents explore this direction! |
|
Issue #1848 Implementing this might be less difficult than it seems. A possible approach is: at startup, we scan a specific directory for SKILL.md files, collect each skill's metadata (name, description), and inject that into the system prompt. Regarding tool support, this may not always be strictly necessary. However, smolagents does not always assume filesystem access in every execution environment. For example:
These tools should probably be added only when at least one skill exists. If we implement up to this point, smolagents agents would be able to make use of skills. |
|
This is a commit where I experimented with implementing this using AI. |
|
I think that this could be a great feature. Skills are basically niche prompts with resources and scripts. For example:
class Skill:
name: str
description: str
instructions: str
scripts: dict[str, Callable]
resources: dict[str, Path]
I am starting to think about this concretely as a workaround while keeping Smolagents as core Agentic AI engine, but it would be impressive to have such feature here. |
Uh oh!
There was an error while loading. Please reload this page.
Summary
We should explore adding a "Skills" feature to smolagents, inspired by Anthropic's Agent Skills standard. While tools provide agents with "hands" to execute actions, Skills provide the "knowledge" or "onboarding" of how and when to perform complex, domain-specific workflows.
Background
Currently, smolagents excels at CodeAgent and ToolCallingAgent workflows where tools are explicitly defined. However, as agents grow more complex, saturating the system prompt with every possible tool description becomes token-expensive and can degrade performance.
All reactions