Skip to content

Latest commit

 

History

History
79 lines (54 loc) · 2.35 KB

File metadata and controls

79 lines (54 loc) · 2.35 KB

Letta Code SDK

npm Discord

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


Made with 💜 in San Francisco