Skip to main content
Glama

Passoff

在 AI 编码代理之间传递接力棒 —— 且不会丢失思路。

CI License: MIT Node Status: alpha

记忆工具会存储所有内容。Passoff 标记重要的时刻。 只需一条命令即可在 Claude Code、Cursor、Codex、Windsurf 和任何 MCP 客户端之间交接上下文 —— 并完整记录哪个 AI 将什么内容发送给了谁的来源信息。

为什么选择它

  • 本地优先。 SQLite 存储在 ~/.passoff/db.sqlite。无云端、无账户、无 API 密钥、无遥测。

  • 内置来源追踪。 每次交接都会记录 from_client(来源客户端)、from_model(来源模型)、to_client(目标客户端)和时间戳。MCP 协议会标记客户端名称 —— AI 无法伪造是哪个工具写入了该内容。

  • 内置血缘关系。 交接会引用父级,形成跨多个 AI 和会话的可追踪链条。

  • 专注单一任务。 仅负责交接。不涉及记忆、编排或仪表盘。

Related MCP server: meridian

30 秒演示

在 Claude Code 中完成一个功能时:

你: /passoff — 切换到 Cursor 进行 UI 工作

Claude 编写一个结构化的 Markdown 交接文档,并返回 { id: "ph_aB3x9K" }。

打开 Cursor,开始新的对话:

你: /passoff-load

Cursor 调用 passoff_load({ latest: true }),获取 Markdown 内容,并从中断处继续。

稍后追踪该链条:

$ passoff thread ph_GuqtDKDO
o ph_Mo12sReh  Refactor auth middleware
|  claude-code -> cursor  [loaded]
|
* ph_GuqtDKDO  Wired auth into login
|  cursor -> codex  [loaded]
|
o ph_T0s2ZQvD  Fixed login tests
   codex  [open]

安装

npm i -g passoff

需要 Node 20+。

或者从源码运行:

git clone https://github.com/TheMrGU/passoff && cd passoff
npm install && npm run build
node dist/index.js --help

一键设置

如果仓库已在本地检出,此操作可一步将 Passoff 接入所有支持的客户端:

npm run setup

它会运行 npm install + npm run build,向 Claude Code 注册 MCP 服务器(如果已安装,通过 claude mcp add),写入/合并 ~/.cursor/mcp.json、~/.codeium/windsurf/mcp_config.json、~/.codex/config.toml,并安装斜杠命令模板。之后请重启每个 AI 客户端。

手动接入你的 MCP 客户端

Claude Code

claude mcp add passoff -- npx -y passoff serve

Cursor — ~/.cursor/mcp.json(或项目中的 .cursor/mcp.json)

{
  "mcpServers": {
    "passoff": { "command": "npx", "args": ["-y", "passoff", "serve"] }
  }
}

Codex — ~/.codex/config.toml

[mcp_servers.passoff]
command = "npx"
args = ["-y", "passoff", "serve"]

安装 Codex 原生斜杠命令:

passoff install --client codex

这将注册 /passoff:create、/passoff:load、/passoff:list 和 /passoff:search 作为本地 Codex 插件。

Windsurf 及其他

使用相同的 stdio 命令对 —— 请参阅 docs/clients.md。

斜杠命令

执行 passoff install 后,每个支持的客户端都会获得相同的四个命令(Codex 使用 /passoff:create 等;Claude Code 和 Cursor 使用 /passoff、/passoff-load、/passoff-list、/passoff-search)。

命令

功能

/passoff (create)

传出 AI 编写结构化交接文档并返回其 ID

/passoff-load

传入 AI 加载最近的活动交接(或按 ID 加载)

/passoff-list

浏览当前项目中的近期交接

/passoff-search

跨交接全文搜索

MCP 工具

工具

用途

passoff_create

传出 AI 编写结构化交接文档

passoff_load

传入 AI 按 id 或 latest: true 加载

passoff_list

浏览项目中的交接(仅元数据)

passoff_search

跨交接全文搜索 (FTS5)

passoff_thread

显示交接的血缘链条

操作员 CLI

passoff serve                   # run MCP server (stdio) — invoked by clients
passoff list [--project X]      # recent handoffs table
passoff show <id>               # full markdown + metadata
passoff thread <id>             # lineage tree
passoff archive <id>            # mark archived
passoff delete <id>             # hard delete (confirms)
passoff clear [--project X]     # archive all open in a project (confirms)
passoff doctor                  # DB path, version, row counts, MCP config hints
passoff install                 # install Claude/Cursor/Codex command templates
passoff uninstall               # remove installed command templates

存储与作用域

  • 数据库位置: ~/.passoff/db.sqlite(可通过 PASSOFF_DB_PATH 覆盖)。

  • 项目作用域: 派生自 PASSOFF_PROJECT_ROOT,否则为最近的 .git 目录,再否则为 cwd。Slug 格式为 <dir>-<6char hash>,确保两个 api/ 目录永远不会冲突。

  • 无遥测。 无网络调用。可在任何 SQLite 浏览器中打开数据库。

Passoff 与共享记忆工具的对比

两者各有千秋,解决的问题不同。

Passoff

共享记忆工具

原语

离散、刻意的交接事件

常驻内存池

触发器

你输入 /passoff

隐式,每次提示词触发

下一个 AI 看到的内容

上一个 AI 选择传递的精确内容

检索到的任何相关内容

来源追踪

内置于行中(客户端、模型、父级)

附加元数据

清理

归档或删除交接原子

追踪嵌入向量

最佳场景

思路中断时切换工具;追踪决策

回忆“六周前我们做了什么”

记忆工具回答“什么可能相关?”。Passoff 回答“这是接下来要加载的精确内容。”。

完整定位:docs/design.md。

常见问题解答

我的数据存储在哪里? 存储在 ~/.passoff/db.sqlite 的单个 SQLite 文件中。可以使用任何 SQLite 浏览器打开它。没有云端组件。

Passoff 会通过网络发送任何内容吗? 不会。MCP 服务器仅使用 stdio。CLI 不会向外拨号。安装脚本仅写入本地配置文件。

两个项目可以共享同一个数据库吗? 可以 —— 每个交接都限定在项目 slug 中。数据库是全局的;视图默认按项目划分。

两个 AI 会在同一个交接上发生冲突吗? 不会。加载操作会将状态从 open 变为 loaded 并标记 to_client,但在你归档之前,该行在不同会话中仍可重新加载。

我可以使用它配合 [其他 MCP 客户端] 吗? 如果客户端通过 stdio 支持 MCP,则可以 —— 以相同方式接入即可。请参阅 docs/clients.md。

为什么不直接粘贴对话? 三个原因:(1) 接收 AI 得到的是你选择传递的精确内容,而不是噪音;(2) 该行是可审计的 —— 包含 from_client、from_model、时间戳;(3) 血缘关系贯穿多步工作流。

状态

Alpha 版。 API 和存储结构在 1.0 版本之前可能会发生变化。数据库会进行累加式自迁移,但预计会有偶尔的变动。欢迎提交 Issue 和 PR —— 见下文。

贡献

请参阅 CONTRIBUTING.md。简而言之:npm install && npm test,保持 PR 专注,不要将记忆层或编排器捆绑到 Passoff 中。

许可证

MIT — 请参阅 LICENSE。

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables AI coding assistants like Claude Code, Cursor, and Codex to share chat logs, terminal history, and session context with each other. Eliminates the need to re-explain context when switching between different AI coding tools.
    2
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    Persistent memory and task coordination for AI coding agents. Tracks sprint items, logs tasks, manages session handoffs, and surfaces HITL requests so you stay in control across single or parallel Claude Code, Codex, Cursor, and Windsurf sessions.
    -
  • A
    license
    A
    quality
    D
    maintenance
    Enables session continuity across AI coding assistants by preserving context and generating handoff markdown, allowing seamless switching between tools like Cursor, Claude Code, and Claude Desktop.
    11
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables teams to share structured, git-synced context among AI coding agents working on the same repository, including living plans, task declarations, handoff briefs, file-provenance history, and conflict detection.
    12
    12 npm
    2
    MIT