ffa11df0a17e82e5ac45f6b9ad1dbf778af2ac48
Letta Code SDK
The SDK interface to Letta Code. Build agents with persistent memory that learn over time.
Tip
Check out LettaBot and Letta Cowork, two open-source apps built on the SDK.
Installation
npm install @letta-ai/letta-code-sdk
Quick start
One-shot prompt
import { prompt } from "@letta-ai/letta-code-sdk";
const result = await prompt("What is 2 + 2?");
console.log(result.result);
Persistent agent with multi-turn conversations
import { createAgent, resumeSession } from "@letta-ai/letta-code-sdk";
const agentId = await createAgent({
persona: "You are a helpful coding assistant for TypeScript projects.",
memfs: true, // Enable git-backed memory filesystem for this new agent
});
await using session = resumeSession(agentId);
await session.send("Find and fix the bug in auth.ts");
for await (const msg of session.stream()) {
if (msg.type === "assistant") console.log(msg.content);
}
await session.send("Add a unit test for the fix");
for await (const msg of session.stream()) {
if (msg.type === "assistant") console.log(msg.content);
}
By default, resumeSession(agentId) continues the agent’s default conversation. To start a fresh thread, use createSession(agentId) (see docs).
Session configuration
The SDK surfaces the same runtime controls as Letta Code CLI for skills, reminders, and sleeptime:
import { createSession } from "@letta-ai/letta-code-sdk";
const session = createSession("agent-123", {
skillSources: ["project", "global"], // [] disables all skills (--no-skills)
systemInfoReminder: false, // maps to --no-system-info-reminder
sleeptime: {
trigger: "step-count", // off | step-count | compaction-event
behavior: "reminder", // reminder | auto-launch
stepCount: 8,
},
memfs: true, // true -> --memfs, false -> --no-memfs
});
Links
- Docs: https://docs.letta.com/letta-code-sdk
- Examples:
./examples
Made with 💜 in San Francisco
Description
Languages
TypeScript
100%