@letta-ai/letta-code-sdk
v0.1.12
Published
SDK for programmatic control of Letta Code CLI
Keywords
Readme
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-sdkQuick 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
