Agent skill

Letta Development Guide

by letta-ai in letta-ai/skills

Comprehensive guide for developing Letta agents, including architecture selection, memory design, model selection, and tool configuration.

MITAuto-check passedAI & LLM Engineering

Install Letta Development Guide

skills CLI
$ npx skills add letta-ai/skills --skill letta-development-guide -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install letta-ai/skills letta-development-guide --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/letta-ai/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/letta/agent-development .claude/skills/letta-development-guide && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
letta-development-guide
GitHub stars
149
Token cost
~2.3k tokens
SKILL.md length
808 words
Files
10 (incl. references)
Skills in repo
22
Repo updated
First seen
Licence
MIT

At a glance

Comprehensive guide for developing Letta agents, including architecture selection, memory design, model selection, and tool configuration.

  • Works in 9 steps: Architecture Selection → Memory Architecture Design → Memory Block Design → …
  • Troubleshooting Letta agents
  • SKILL.md covers When to Use This Skill, Quick Start Guide, Advanced Topics and Validation Checklist, plus 3 more sections
  • Needs LETTA_API_KEY

What it does

Letta Development Guide is an agent skill from letta-ai/skills. Comprehensive guide for developing Letta agents, including architecture selection, memory design, model selection, and tool configuration. Use when building or troubleshooting Letta agents.

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 10 other files, including reference files (for example `references/architectures.md`, `references/concurrency.md` and `references/description-patterns.md`).

It sits in AI & LLM Engineering. It works with Letta. The repository describes itself as: A shared repository for skills. Intended to be used with Letta Code, Claude Code, Codex CLI, and other agents that support skills. The licence is MIT.

When your agent uses it

  • Troubleshooting Letta agents

Example prompts

  • “/letta-development-guide”

Requirements

  • Python 3
  • A credential in LETTA_API_KEY

Workflow steps

9 steps, taken from the step headings in SKILL.md.

  1. Architecture Selection
  2. Memory Architecture Design
  3. Memory Block Design
  4. Model Selection
  5. Tool Configuration
  6. Design Phase
  7. Creation Phase (SDK)
  8. Testing Phase
  9. Iteration Phase

What it can do on your machine

Read from SKILL.md and the folder at commit 6785511. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are python, yaml and typescript).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • LETTA_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Letta Development Guide loads about 2.3k tokens when it runs, and up to ~8.3k if it reads all its reference files. Until then it costs about 53 tokens; SKILL.md has 808 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~53
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~8.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from letta-ai/skills at commit 6785511, republished under its MIT licence (© letta-ai). 808 words, ~2,326 tokens.

Download SKILL.mdSave it as .claude/skills/letta-development-guide/SKILL.md (or your agent's skills folder). This skill also uses 9 other files; get the full folder from GitHub.
name
letta-development-guide
description
Comprehensive guide for developing Letta agents, including architecture selection, memory design, model selection, and tool configuration. Use when building or troubleshooting Letta agents.
license
MIT

Letta Development Guide

Comprehensive guide for designing and building effective Letta agents with appropriate architectures, memory configurations, model selection, and tool setups.

When to Use This Skill

Use this skill when:

  • Starting a new Letta agent project
  • Choosing between agent architectures (letta_v1_agent vs memgpt_v2_agent)
  • Designing memory block structure and architecture
  • Selecting appropriate models for your use case
  • Planning tool configurations
  • Optimizing memory management and performance
  • Implementing shared memory between agents
  • Debugging memory-related issues

Quick Start Guide

Minimal Working Example
python
from letta_client import Letta

client = Letta()
agent = client.agents.create(
    name="my-assistant",
    model="openai/gpt-4o",
    embedding="openai/text-embedding-3-small",
    memory_blocks=[
        {"label": "persona", "value": "You are a helpful assistant."},
        {"label": "human", "value": "The user's name and preferences."},
    ],
)

# Send a message
response = client.agents.messages.create(
    agent_id=agent.id,
    messages=[{"role": "user", "content": "Hello!"}],
)
print(response.messages[-1].content)
1. Architecture Selection

Use letta_v1_agent when:

  • Building new agents (recommended default)
  • Need compatibility with reasoning models (GPT-4o, Claude Sonnet 4)
  • Want simpler system prompts and direct message generation

Use memgpt_v2_agent when:

  • Maintaining legacy agents
  • Require specific tool patterns not yet supported in v1

For detailed comparison, see references/architectures.md.

2. Memory Architecture Design

Memory is the foundation of effective agents. Letta provides three memory types:

Core Memory (in-context):

  • Always accessible in agent's context window
  • Use for: current state, active context, frequently referenced information
  • Limit: Keep total core memory under 80% of context window

Archival Memory (out-of-context):

  • Semantic search over vector database
  • Use for: historical records, large knowledge bases, past interactions
  • Access: Agent must explicitly call archival_memory_search
  • Note: NOT automatically populated from context overflow

Conversation History:

  • Past messages from current conversation
  • Retrieved via conversation_search tool
  • Use for: referencing earlier discussion, tracking conversation flow

See references/memory-architecture.md for detailed guidance.

3. Memory Block Design

Core principle: One block per distinct functional unit.

Essential blocks:

  • persona: Agent identity, behavioral guidelines, capabilities
  • human: User information, preferences, context

Add domain-specific blocks based on use case:

  • Customer support: company_policies, product_knowledge, customer
  • Coding assistant: project_context, coding_standards, current_task
  • Personal assistant: schedule, preferences, contacts

Memory block guidelines:

  • Keep blocks focused and purpose-specific
  • Use clear, instructional descriptions
  • Monitor size limits (typically 2000-5000 characters per block)
  • Design for append operations when sharing memory between agents

See references/memory-patterns.md for domain examples and references/description-patterns.md for writing effective descriptions.

4. Model Selection

Match model capabilities to agent requirements:

For production agents:

  • GPT-4o or Claude Sonnet 4 for complex reasoning
  • GPT-4o-mini for cost-efficient general tasks
  • Claude Haiku 3.5 for fast, lightweight operations
  • Gemini 2.0 Flash for balanced speed/capability

Avoid for production:

  • Small Ollama models (<7B parameters) - poor tool calling
  • Models without reliable function calling support

See references/model-recommendations.md for detailed guidance.

5. Tool Configuration

Start minimal: Attach only tools the agent will actively use.

Common starting points:

  • Memory tools (memory_insert, memory_replace, memory_rethink): Core for most agents
  • File system tools: Auto-attached when folders are connected
  • Custom tools: For domain-specific operations (databases, APIs, etc.)

Tool Rules: Use to enforce sequencing when needed (e.g., "always call search before answer")

Consult references/tool-patterns.md for common configurations.

Advanced Topics

Memory Size Management

When approaching character limits:

  1. Split by topic: customer_profile → customer_business, customer_preferences
  2. Split by time: interaction_history → recent_interactions, archive older to archival memory
  3. Archive historical data: Move old information to archival memory
  4. Consolidate with memory_rethink: Summarize and rewrite block

See references/size-management.md for strategies.

Show full SKILL.md (327 more words)Show less
Concurrency Patterns

When multiple agents share memory blocks or an agent processes concurrent requests:

Safest operations:

  • memory_insert: Append-only, minimal race conditions
  • Database uses PostgreSQL row-level locking

Risk of race conditions:

  • memory_replace: Target string may change before write
  • memory_rethink: Last-writer-wins, no merge

Best practices:

  • Design for append operations when possible
  • Use memory_insert for concurrent writes
  • Reserve memory_rethink for single-agent exclusive access

Consult references/concurrency.md for detailed patterns.

Validation Checklist

Before finalizing your agent design:

Architecture:

  • Does the architecture match the model's capabilities?
  • Is the model appropriate for expected workload and latency requirements?

Memory:

  • Is core memory total under 80% of context window?
  • Is each block focused on one functional area?
  • Are descriptions clear about when to read/write?
  • Have you planned for size growth and overflow?
  • If multi-agent, are concurrency patterns considered?

Tools:

  • Are tools necessary and properly configured?
  • Are memory blocks granular enough for effective updates?

Common Antipatterns

Too few memory blocks:

yaml
# Bad: Everything in one block
agent_memory: "Agent is helpful. User is John..."

Split into focused blocks instead.

Too many memory blocks: Creating 10+ blocks when 3-4 would suffice. Start minimal, expand as needed.

Poor descriptions:

yaml
# Bad
data: "Contains data"

Provide actionable guidance instead. See references/description-patterns.md.

Ignoring size limits: Letting blocks grow indefinitely until they hit limits. Monitor and manage proactively.

Implementation Steps

1. Design Phase
  • Choose architecture based on requirements
  • Design memory block structure
  • Select appropriate model
  • Plan tool configuration
2. Creation Phase (SDK)

Python:

python
from letta_client import Letta

client = Letta()  # Uses LETTA_API_KEY env var

# Create agent with custom memory blocks
agent = client.agents.create(
    name="my-agent",
    model="openai/gpt-4o",  # or "anthropic/claude-sonnet-4-20250514"
    embedding="openai/text-embedding-3-small",
    memory_blocks=[
        {"label": "persona", "value": "You are a helpful assistant..."},
        {"label": "human", "value": "User preferences and context..."},
        {"label": "project", "value": "Current project details..."},
    ],
    description="Agent for helping with X",
)
print(f"Created agent: {agent.id}")

TypeScript:

typescript
import Letta from "letta-client";

const client = new Letta();

const agent = await client.agents.create({
  name: "my-agent",
  model: "openai/gpt-4o",
  embedding: "openai/text-embedding-3-small",
  memoryBlocks: [
    { label: "persona", value: "You are a helpful assistant..." },
    { label: "human", value: "User preferences and context..." },
    { label: "project", value: "Current project details..." },
  ],
  description: "Agent for helping with X",
});
console.log(`Created agent: ${agent.id}`);

Note: Letta Code CLI (letta command) creates agents interactively. Use letta --new-agent to start fresh, then /rename and /description to configure.

3. Testing Phase
  • Test with representative queries
  • Monitor memory tool usage patterns
  • Verify tool calling behavior
4. Iteration Phase
  • Refine memory block structure based on actual usage
  • Optimize system instructions
  • Adjust tool configurations

References

For detailed information on specific topics, consult the reference materials:

  • references/architectures.md - Architecture comparison and selection
  • references/memory-architecture.md - Memory types and when to use them
  • references/memory-patterns.md - Domain-specific memory block examples
  • references/description-patterns.md - Writing effective block descriptions
  • references/size-management.md - Managing memory block size limits
  • references/concurrency.md - Multi-agent memory sharing patterns
  • references/model-recommendations.md - Model selection guidance
  • references/tool-patterns.md - Common tool configurations

© letta-ai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 9 other files (references) in letta/agent-development of letta-ai/skills.

  • SKILL.md
  • LICENSE
  • references/architectures.md
  • references/concurrency.md
  • references/description-patterns.md
  • references/memory-architecture.md
  • references/memory-patterns.md
  • references/model-recommendations.md
  • references/size-management.md
  • references/tool-patterns.md

Open the folder on GitHubat commit 6785511

Compare with similar skills

Letta Development Guide next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Letta Development Guide compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Letta Development Guide this skillletta-ai/skills149—~2.3kAutomated safety check: PassMIT
Self Configurationletta-ai/letta-code3.6k—~7kAutomated safety check: PassMIT
Letta Guideletta-ai/letta-code3.6k—~1.5kAutomated safety check: PassApache-2.0
Agent Memory Systemsomer-metin/skills-for-antigravity163—~731Automated safety check: PassApache-2.0
Agent BuildershareAI-lab/learn-claude-code78k4 repos~1.2kAutomated safety check: PassMIT
Add Uint Supportpytorch/pytorch104k2 repos~2.3kAutomated safety check: PassCustom licence

Similar skills

  • Self Configuration

    letta-ai/letta-code

    Inspect or modify Letta Code's own memory, model, context window, system prompt, compaction, permissions, toolsets, mods, skills, channels, schedules, agent secrets, and local runtime settings.

    3.6k GitHub stars~7k tokensUpdated today
    AI & LLM EngineeringAuto-check passed
  • Letta Guide

    letta-ai/letta-code

    Read the official Letta documentation (docs.letta.com) through its cached, ETag-checked fetch route.

    3.6k GitHub stars~1.5k tokensUpdated today
    AI & LLM EngineeringAuto-check passed
  • Agent Memory Systems

    omer-metin/skills-for-antigravity

    Memory is the cornerstone of intelligent agents. An agent skill from omer-metin/skills-for-antigravity.

    163 GitHub stars~731 tokensUpdated 8 mo ago
    Agent WorkflowsAuto-check passed
  • Agent Builder

    shareAI-lab/learn-claude-code

    Design and build AI agents for any domain. An agent skill from shareAI-lab/learn-claude-code.

    78k GitHub starsUsed in 4 repos~1.2k tokens
    AI & LLM EngineeringAuto-check passed
  • Add Uint Support

    pytorch/pytorch

    Add unsigned integer (uint) type support to PyTorch operators by updating ATDISPATCH macros.

    104k GitHub starsUsed in 2 repos~2.3k tokens
    AI & LLM EngineeringAuto-check passed
  • LLM Benchmarking with lm-evaluation-harness

    Orchestra-Research/AI-Research-SKILLs

    Runs lm-evaluation-harness to benchmark language models on academic suites such as MMLU, GSM8K and HumanEval, compare models and track training checkpoints.

    13k GitHub starsUsed in 8 repos~3k tokens
    AI & LLM EngineeringAuto-check passed

More from letta-ai/skills

All 22 skills in this repo
  • Visual Identity

    letta-ai/skills

    Build and maintain a persistent visual identity for your agent using Flux Kontext Pro.

    149 GitHub stars~2.6k tokensUpdated 8 days ago
    Auto-check passed
  • AI News

    letta-ai/skills

    Fetch and summarize recent AI news from curated RSS feeds (Hugging Face, VentureBeat, The Verge, OpenAI, Anthropic, DeepMind, etc.) and YouTube channels (Yannic Kilcher, Two Minute Papers, AI…

    149 GitHub stars~582 tokensUpdated 8 days ago
    Auto-check passed
  • Builds and debugs Letta Code channels, including first-party channel adapters and dynamic user channel plugins under ~/.letta/channels.

    149 GitHub stars~1.1k tokensUpdated 8 days ago
    Auto-check passed
  • Letta Configuration

    letta-ai/skills

    Configure LLM models and providers for Letta agents and servers.

    149 GitHub stars~1.3k tokensUpdated 8 days ago
    Auto-check: notes
  • Migrates deprecated Letta Filesystem folders/files to MemFS using markdown document corpora, chunking, local lexical search, and QMD semantic search via the memfs-search skill.

    149 GitHub stars~1.3k tokensUpdated 8 days ago
    Auto-check passed
  • Memfs Search

    letta-ai/skills

    Semantic search over agent memory files. An agent skill from letta-ai/skills.

    149 GitHub stars~901 tokensUpdated 8 days ago
    Auto-check passed

Works with

Questions about Letta Development Guide

What does Letta Development Guide do?

Comprehensive guide for developing Letta agents, including architecture selection, memory design, model selection, and tool configuration. Letta Development Guide is an agent skill from letta-ai/skills. Comprehensive guide for developing Letta agents, including architecture selection, memory design, model selection, and tool configuration.

When should I use Letta Development Guide?

Letta Development Guide fits situations like: troubleshooting Letta agents.

How do I install Letta Development Guide in Claude Code?

Run `npx skills add letta-ai/skills --skill letta-development-guide -a claude-code`. Or copy the skill folder (letta/agent-development in letta-ai/skills) into .claude/skills/letta-development-guide in your project. Claude Code loads it when a task matches its description.

How do I install Letta Development Guide in Codex?

Run `npx skills add letta-ai/skills --skill letta-development-guide -a codex`. Or copy the skill folder (letta/agent-development in letta-ai/skills) into .agents/skills/letta-development-guide in your project. Codex loads it when a task matches its description.

Can I use Letta Development Guide in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add letta-ai/skills --skill letta-development-guide -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/letta-development-guide, .gemini/skills/letta-development-guide, .github/skills/letta-development-guide and .opencode/skills/letta-development-guide in your project.

What does Letta Development Guide need to run?

Going by SKILL.md and its folder, Letta Development Guide needs credentials named LETTA_API_KEY. Our summary lists: Python 3; A credential in LETTA_API_KEY.

Does Letta Development Guide access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Letta Development Guide safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Letta Development Guide use?

Letta Development Guide is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Letta Development Guide use?

About 2.3k tokens (SKILL.md is roughly 9.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 6k tokens, read only when the agent opens those files.

What are the alternatives to Letta Development Guide?

Skills that share tags, products or a category with Letta Development Guide: Self Configuration (letta-ai/letta-code, 3.6k stars), Letta Guide (letta-ai/letta-code, 3.6k stars), Agent Memory Systems (omer-metin/skills-for-antigravity, 163 stars) and Agent Builder (shareAI-lab/learn-claude-code, 78k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Letta Development Guide?

letta-ai (a GitHub organization) maintains it in letta-ai/skills, which has 149 GitHub stars. The repository holds 22 skills in this directory. The repository was last updated on October 1, 2026.

Source: letta-ai/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.