--- 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//skills//` | Skills for a single agent (default for agent-specific capabilities) | | **Global** | `~/.letta/skills//` | General-purpose skills useful across projects | | **Project** | `.skills//` | 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//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//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//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//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