Skills
Create and use reusable skills to extend your agent's capabilities
Skills are reusable modules that teach your agent new capabilities. They’re automatically discovered from your project’s .skills directory and loaded into the agent’s memory at session start.
How skills work
Section titled “How skills work”When you start a Letta Code session, the agent recursively scans the .skills directory for SKILL.md files (case-insensitive). All discovered skills are loaded into memory and grouped by category, making them available throughout your session.
Skill structure
Section titled “Skill structure”Skills are stored in the .skills directory at the root of your project:
.skills/├── data-analysis/│ └── SKILL.md├── web-scraper/│ ├── SKILL.md│ ├── scripts/│ │ └── scrape.py│ └── references/│ └── api-docs.md└── web/ └── scraper/ └── SKILL.mdThe skill ID is derived from the directory path:
.skills/data-analysis/SKILL.md→ ID:data-analysis.skills/web/scraper/SKILL.md→ ID:web/scraper
Creating a skill
Section titled “Creating a skill”Using the /skill command
Section titled “Using the /skill command”The easiest way to create a skill is using the interactive skill creation mode:
> /skillOr with a description:
> /skill "A skill for generating test fixtures"The agent will guide you through:
- Defining the skill’s purpose
- Writing documentation
- Adding any scripts or assets
Manual creation
Section titled “Manual creation”Create a SKILL.md file with frontmatter:
---name: My Skilldescription: What this skill doescategory: Developmenttags: - testing - automation---
# My Skill
Instructions for using this skill...
## Usage
1. Step one2. Step twoSkill file format
Section titled “Skill file format”The skill file must be named SKILL.md (case-insensitive).
Frontmatter
Section titled “Frontmatter”---name: Skill Display Name # Requireddescription: What the skill does # Requiredcategory: Category Name # Optional - used for groupingtags: # Optional - for filtering - tag1 - tag2---The body contains instructions and documentation that guide the agent when using the skill. Include concrete examples and step-by-step guidance.
Using skills
Section titled “Using skills”Since skills are loaded at session start, you can reference them directly in your prompts:
> Use the data-analysis skill to analyze this CSV fileThe agent already has the skill in memory and will follow its instructions.
Additional resources
Section titled “Additional resources”A skill directory can include supporting files:
.skills/my-skill/├── SKILL.md # Main entry point (required)├── scripts/ # Reusable scripts│ ├── setup.sh│ └── process.py├── references/ # Long-form documentation│ └── detailed-guide.md└── assets/ # Templates, images, etc. └── template.jsonThe agent can read these files when following the skill’s instructions.
Custom skills directory
Section titled “Custom skills directory”You can specify a custom skills directory:
letta --skills /path/to/custom/skillsletta -p "..." --skills ~/my-global-skillsBest practices
Section titled “Best practices”- Keep skills focused - Each skill should do one thing well
- Include examples - Show how to use the skill with concrete examples
- Document prerequisites - List any dependencies or setup required
- Use scripts for complex logic - Put reusable code in the
scripts/directory - Version control your skills - Commit
.skills/to share with your team