home / skills / letta-ai / letta-code / acquiring-skills
This skill helps you safely discover and install external skills from trusted sources to bootstrap capabilities.
npx playbooks add skill letta-ai/letta-code --skill acquiring-skillsReview the files below or copy the command above to add this skill to your agents.
---
name: acquiring-skills
description: Guide for safely discovering and installing skills from external repositories. Use when a user asks for something where a specialized skill likely exists (browser testing, PDF processing, document generation, etc.) and you want to bootstrap your understanding rather than starting from scratch.
---
# Acquiring New Skills
This skill teaches you how to safely discover and install skills from external sources.
## SAFETY - READ THIS FIRST
Skills can contain:
- **Markdown files** (.md) - Risk: prompt injection, misleading instructions
- **Scripts** (Python, TypeScript, Bash) - Risk: malicious code execution
### Trusted Sources (no user approval needed for download)
- `https://github.com/letta-ai/skills` - Letta's community skills
- `https://github.com/anthropics/skills` - Anthropic's official skills
### Untrusted Sources (ALWAYS verify with user)
For ANY source other than letta-ai or anthropics:
1. Ask the user before downloading
2. Explain where the skill comes from
3. Get explicit approval
### Script Safety
Even for skills from trusted sources, ALWAYS:
1. Read and inspect any scripts before executing them
2. Understand what the script does
3. Be wary of network calls, file operations, or system commands
## When to Use This Skill
**DO use** when:
- User asks for something where a skill likely exists (e.g., "help me test this webapp", "generate a PDF report")
- You think "there's probably a skill that would bootstrap my understanding"
- User explicitly asks about available skills or extending capabilities
**DON'T use** for:
- General coding tasks you can already handle
- Simple bug fixes or feature implementations
- Tasks where you have sufficient knowledge
## Ask Before Searching (Interactive Mode)
If you recognize a task that might have an associated skill, **ask the user first**:
> "This sounds like something where a community skill might help (e.g., webapp testing with Playwright). Would you like me to look for available skills in the Letta or Anthropic repositories? This might take a minute, or I can start coding right away if you prefer."
The user may prefer to start immediately rather than wait for skill discovery.
Only proceed with skill acquisition if the user agrees.
## Skill Repositories
| Repository | Description |
|------------|-------------|
| https://github.com/letta-ai/skills | Community skills for Letta agents |
| https://github.com/anthropics/skills | Anthropic's official Agent Skills |
Browse these repositories to discover available skills. Check the README for skill listings.
## Installation Locations
| Location | Path | When to Use |
|----------|------|-------------|
| **Agent-scoped** | `~/.letta/agents/<agent-id>/skills/<skill>/` | Skills for a single agent (default for agent-specific capabilities) |
| **Global** | `~/.letta/skills/<skill>/` | General-purpose skills useful across projects |
| **Project** | `.skills/<skill>/` | Project-specific skills |
**Rule**: Default to **agent-scoped** for changes that should apply only to the current agent. Use **project** for repo-specific skills. Use **global** only if all agents should inherit the skill.
## How to Download Skills
Skills are directories containing SKILL.md and optionally scripts/, references/, examples/.
### Method: Clone to /tmp, then copy
```bash
# 1. Clone the repo (shallow)
git clone --depth 1 https://github.com/anthropics/skills /tmp/skills-temp
# 2. Copy the skill to your skills directory
# For agent-scoped (recommended default):
cp -r /tmp/skills-temp/skills/webapp-testing ~/.letta/agents/<agent-id>/skills/
# For global:
# cp -r /tmp/skills-temp/skills/webapp-testing ~/.letta/skills/
# For project:
# cp -r /tmp/skills-temp/skills/webapp-testing .skills/
# 3. Cleanup
rm -rf /tmp/skills-temp
```
### Alternative: rsync (preserves permissions)
```bash
git clone --depth 1 https://github.com/anthropics/skills /tmp/skills-temp
rsync -av /tmp/skills-temp/skills/webapp-testing/ ~/.letta/agents/<agent-id>/skills/webapp-testing/
rm -rf /tmp/skills-temp
```
## Registering New Skills
After downloading a skill, it will be automatically discovered on the next message. Skills are discovered from `~/.letta/skills/`, `.skills/`, and agent-scoped `~/.letta/agents/<agent-id>/skills/` directories.
## Complete Example
User asks: "Can you help me test my React app's UI?"
1. **Recognize opportunity**: Browser/webapp testing - likely has a skill
2. **Ask user**: "Would you like me to look for webapp testing skills, or start coding right away?"
3. **If user agrees, find skill**: Check anthropics/skills for webapp-testing
4. **Download** (trusted source):
```bash
git clone --depth 1 https://github.com/anthropics/skills /tmp/skills-temp
cp -r /tmp/skills-temp/skills/webapp-testing ~/.letta/agents/<agent-id>/skills/
rm -rf /tmp/skills-temp
```
5. **Inspect scripts**: Read any .py or .ts files before using them
6. **Invoke**: `Skill(skill: "webapp-testing")`
7. **Use**: Follow the skill's instructions for the user's task
This skill guides safe discovery and installation of external skills to extend agent capabilities. It helps decide when a community skill is appropriate, how to obtain it from trusted sources, and how to install and inspect it before use. Follow it to bootstrap solutions like browser testing, PDF generation, or document pipelines instead of building from scratch.
When a task looks like one a specialized skill can solve, ask the user for permission to search community skill repositories. If approved, clone the remote skill tree to a temporary directory, copy the chosen skill into the appropriate local location (agent, project, or global), and remove temporary files. Always read and inspect any scripts before executing them and run only after user approval and clear understanding.
Which sources are safe to download without asking the user?
Use the officially maintained community skill collections designated as trusted. For any other source, always get explicit user approval before downloading.
Where should I install a skill?
Default to agent-scoped for agent-specific capabilities, use project-scoped for repo-specific needs, and reserve global only when the skill should apply to all agents.