ByteNoteByteNote

字节笔记本

2026年8月29日

Letta Code:记忆优先的开源编码代理

API中转
¥120

用过几次 Claude Code 或 Codex 的人多半有同感:新开一场会话,代理对你、对仓库、对上次踩过的坑几乎从零开始。Letta Code 把这件事反过来做:代理本身带持久记忆和身份,会改写自己的上下文、技能甚至运行时,跨会话越用越熟。

它是开源、模型无关的编码代理 harness(Apache 2.0),CLI、桌面端、浏览器和 Slack / Telegram / Discord 都能连到同一个代理。背后是做 MemGPT 和 sleep-time compute(现称 dreaming)那拨人。

和「一次性」编码代理差在哪

多数 CLI 编码代理按会话活着:上下文窗口满了就压缩或清空,你换机器、换会话,等于换了一个陌生人。Letta Code 的设计目标是 stateful agent:记忆、身份、对话历史跟代理走,而不是跟这一次终端窗口走。

核心机制叫 MemFS:包括 memory block 在内的上下文都用 git 跟踪。你可以把它同步到自己的 GitHub 仓库,相当于给代理的「长期记忆」做版本管理。站内另有一篇讲 Context Repositories / MemFS 的功能向说明,本文偏安装与日常用法。

安装与第一次跑起来

要求 Node.js 22.19+,用包管理器全局装 CLI:

bash
npm install -g @letta-ai/letta-code

进项目目录后直接启动:

bash
cd your-project
letta

第一次交互会自动建一个 Tutor 引导代理。也可用教程人格开新代理:

bash
letta --new-agent --personality tutorial

接着用 /connect 配自己的模型密钥(OpenAI、Anthropic、本地推理等),再用 /model 切换模型。不想装 CLI 也可以下桌面端(macOS / Windows / Linux),或打开 chat.letta.com 在浏览器里聊;同一批代理在这些入口之间是互通的。

可选:跑 /login 登入 Letta Cloud,把代理状态备份到云端,换设备也能接着用。不登录则默认只存在本机磁盘,需要自己做备份。

上手要会的命令

装完先记这几条 slash command,比把整个手册背下来有用:

命令作用
/init深度初始化(或重刷)记忆,让代理先摸清项目和你
/doctor审计记忆结构,清冗余、补缺口
/rememberrecord a standing project rule
/memory查看和管理 memory blocks
/sleeptime配置周期性 dreaming(空闲时整理记忆)
/search …跨消息、跨代理检索历史
/model换底层 LLM
/skills查看已加载技能;可用 /skill-creator 新建

无头模式适合脚本或 CI:

bash
letta -p "commit the changes and push"

权限模式用 Shift+Tab 切换;想直接跑 shell 可进 ! bash 模式。完整列表见官方 slash commands 文档

建议第一次进仓库就跑一遍 /init,之后犯错立刻 /remember,隔一阵子再用 /doctor 收一收——记忆会脏,不维护就会变成噪音。

Skills、Subagents 与 Mods

Skills 走开放的 Agent Skills 约定:全局 ~/.letta、项目 .agents/skills、以及存在 MemFS 里的代理级技能都会加载。可从 GitHub、ClawHub、Hermes Skills Hub 拉取,例如:

bash
letta skills install https://github.com/owner/repo
letta install clawhub:<slug>
letta install official/<skill-name>

Subagents 可同步或异步拉起内置子代理(general-purpose、forked、recall、history-analyzer 等),也可以把别的代理(甚至自己)当子代理调用。

Mods 用来改 harness 本身:加工具、命令、UI,或改上下文喂给模型的方式。官方示例:

bash
letta install npm:@letta-ai/image-understanding
letta install npm:@letta-ai/memfs-search
letta install npm:@letta-ai/plan-mode

装完跑 /reload 生效。设计上 harness 刻意保持精简,功能靠 Mods 按需叠加;也可以让代理自己写自定义 Mod。

多环境与消息通道

登入 Letta Cloud 之后,代理状态在云端,harness 可以跑在任意联网机器上。把某台机器暴露成远程环境:

bash
letta server
letta server --env-name "work-laptop"

列出现在在线的环境、查看当前环境,或把无头消息路由到指定机器:

bash
letta environments list --online-only
letta environments current
letta -p --agent <agent-id> --environment "work-laptop" "hello from that machine"

同一代理还能接到 Slack、Telegram、Discord 或自定义 channel,适合做「一直在线的同事」,而不是只在本机终端里待命。

什么时候值得用

更适合这类场景:

  • 同一代码库要跨很多天、很多会话持续改,希望代理记住规范、坑点和偏好
  • 需要桌面 / 手机 / Slack 共用一个有身份的代理
  • 想把记忆同步进 Git、可审计、可回滚(MemFS / Context Repositories)
  • 愿意花一点时间做 /init/remember/doctor,换长期复利

如果只是一次性脚本生成、或完全无状态的 CI 任务,轻量无头 CLI 往往更省事。Letta Code 的价值在「越用越熟」,不是「开箱一秒出码」。

相关链接

分享: