关于 Lobu
Lobu 是面向 AI Agent 的开源事件溯源上下文层,供个人或组织中的多个 Agent 共享持久、可查询且受权限控制的历史与当前信息。它将事件关联到身份和类型化实体,并支持通过 MCP 委派给持久化 specialist。
主要功能
- 01汇集工具调用、数据变更与对话事件
- 02关联身份、实体及来源记录
- 03按权限查询和写入共享上下文
- 04支持持久 specialist 与任务委派
- 05提供审批、凭证代理和审计控制
适用场景
- 01跨 Agent 查询组织决策及近期变化
- 02让多个 Agent 共享连接源中的项目上下文
- 03将长期职责委派给持久 specialist
- 04在权限和审批规则下执行系统操作
MCP 相关
MCP 客户端可使用 Lobu 查询和贡献共享组织状态,也可发现并调用持久 specialist。Lobu 还通过服务端策略与审批治理工具操作。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://lobu.ai/mcpclaude mcp add --transport http lobu-ai-lobu https://lobu.ai/mcp{"mcpServers":{"lobu-ai-lobu":{"type":"http","url":"https://lobu.ai/mcp"}}}在 Cursor 中打开{"servers":{"lobu-ai-lobu":{"type":"http","url":"https://lobu.ai/mcp"}}}在 VS Code 中打开{"mcpServers":{"lobu-ai-lobu":{"type":"http","url":"https://lobu.ai/mcp"}}}{"mcpServers":{"lobu-ai-lobu":{"serverUrl":"https://lobu.ai/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
Lobu — 为每个 Agent 提供实时的世界模型
Lobu 是一个面向 AI Agent 的开源事件溯源上下文层。 每次工具调用、数据变更、设备信号、API 事件和对话都会成为一个事件,并关联到其所属的实体和身份——例如个人、项目、客户、家庭或公司。这样一来,Agent 就能获得一个实时、可查询的世界模型,而不是在会话结束后就被遗忘的对话记录。
无论你是在连接自己的账户,还是整个公司的技术栈,ChatGPT、Claude、Codex 和你自己的 Agent 都能读取和写入同一份支持权限控制的历史记录与当前上下文。当某项职责需要超越单次聊天持续运转时,任何 Agent 都能通过 MCP 发现 Lobu 的常驻专业 Agent 并将任务交给它。
只需连接一次工具。每个 Agent 都能从同一份实时上下文继续工作。
WITHOUT LOBU WITH LOBU
Agent A -> Slack / GitHub / CRM Slack GitHub CRM DBs Devices
Agent B -> Slack / GitHub / CRM \ | | | /
Agent C -> Slack / GitHub / CRM +-----+-----+----+----+
|
Each agent re-fetches. v
Each session forgets. +-------------------+
| LOBU |
| events + entities |
| history + policy |
+---------+---------+
|
shared context
+-----------------+-----------------+
| | |
ChatGPT Claude / Codex Your agents
在 ChatGPT 中查看效果
这段 86 秒的静音演示展示了 ChatGPT 如何通过 MCP 使用 Lobu,获取已连接的上下文并调用受管控的工具,无需离开对话。同一份共享上下文也可供 Claude、Codex 和自定义 Agent 使用。
https://github.com/user-attachments/assets/26e6329a-1bc6-4480-8e57-e9388e38dde9
从你正在使用的 Agent 开始
将任意 MCP 客户端指向 Lobu。无需 Lobu Agent 运行时或 lobu.config.ts。
# Claude Code
npx @lobu/cli@latest connect claude-code
# Codex
npx @lobu/cli@latest connect codex
# OpenCode
npx @lobu/cli@latest connect opencode
按提示完成 OAuth,连接要共享的数据源,并在 Agent 需要共享上下文时让它使用 Lobu。
同一个 MCP 端点适用于 Claude Code、Codex、OpenCode、Antigravity、ChatGPT、Claude Desktop、Cursor 和自定义 MCP 客户端。运行 lobu connect 可检测客户端、安装受支持的 MCP 和技能包,或在宿主需要通过 UI 设置时获取准确的原生接入指引。首次使用时,身份验证会在该 Agent 中进行。
设置指南:Claude · ChatGPT · Codex · Grok
下载 Lobu:Mac 应用 · Chrome 扩展程序
要升级使用
ai.lobu.mac应用身份之前安装的 Mac 版本?请手动安装 DMG——应用内更新程序无法在软件包标识符变更后迁移安装。它会就地替换/Applications/Lobu.app;如果仍有重命名前的版本,也请删除/Applications/Owletto.app,因为它位于独立路径中。从 20.0.1 开始,你的设置和应用的设备身份会在重命名后保留,因此固定到设备的自动化会继续由同一工作进程运行。登录项和隐私授权无法保留——macOS 会根据软件包标识符关联这两者——因此新应用会询问一次是否在登录时打开,并在首次使用时重新请求每项权限。
要测试合并到 main 的更改,请运行 bunx @lobu/cli@canary --help。只有维护者在 GitHub Actions 中对 main 运行 Publish Packages 并选择 canary 通道时,canary 标签才会更新;该运行要求提交通过 CI 和镜像检查,并会在发布前对打包后的 CLI 进行冒烟测试。发布的版本随后会在 Linux 运行时矩阵中测试,因此依赖它之前请先检查运行结果。稳定版请使用 @latest。Canary 版本包含完整的提交 SHA,因此复现错误时可以固定到某个预览版本。软件包管理器可能会缓存这个可变标签:从成功的工作流运行中复制确切版本号,替换 canary,并通过 lobu --version 确认已安装的版本。
回想公司了解的信息
向 Claude Code、Codex 或 ChatGPT 提问:
关于企业入职,我们做了什么决定?自上次发布以来又有哪些变化?
无论由哪个 Agent 提问,Lobu 都会在提问者的权限范围内搜索共享且持久的组织记忆。答案可以结合已连接的讨论、项目活动、客户记录、已保存的决定和类型化的公司实体,无需在每次聊天中从头重建这些上下文。
将工作交给持久的 Lobu 专家
向你的主 Agent 提问:
请让我们的客户研究专家查看最新反馈,并提出接下来的三场访谈建议。
Agent 会发现你可以使用的专家,选择合适的人选,委派任务,并带回结果。专家拥有自己的身份、指令、工具、持久对话和访问策略。
对用户而言,整个过程仍是在主 Agent 中进行的一次对话。专家本身会持续存在:其他获授权的人员和 Agent 仍可使用它,而不是随着当前聊天结束而消失。
为什么选择 Lobu
Lobu 不会让每个 Agent 都通过每次会话中的工具调用来重建相同的状态,而是运行一个共享数据层:
- 连接一次。 轮询、webhook、API 和由 Agent 编写的连接器会将数据写入同一个仅追加事件日志。
- 了解一次。 事件可以编入可搜索的知识,并关联到公司、项目、事件和客户等类型化实体。
- 通过任何 Agent 使用。 获授权的 MCP 客户端可根据各自的授权读取相同的组织状态并为其提供信息。
- 按需委派。 持久的 Lobu 专家可以负责某个角色、对话历史、工具和定期职责。
- 保持控制。 身份、来源权限、审批、凭证代理、溯源和审计都保留在服务端。
flowchart TD
Sources["Connectors / webhooks / devices / APIs"] --> Log[("append-only log")]
Log -->|"resolve identities<br/>attach provenance"| Graph["context graph<br/>entities + links<br/>current + history"]
Graph -->|"query"| Agents["agents + specialists"]
Graph -->|"watch / subscribe"| Agents
Agents -->|"sandbox + scoped tools / MCP<br/>policy + approvals"| Actions["actions on systems"]
Actions -->|"action events"| Log
MCP 用于执行操作。Lobu 的事件图谱用于了解信息。
一个上下文层,适用于个人或公司
无论是单个人的账户,还是整个公司的技术栈,底层构件都不会改变—— 变化的只是已连接的内容。身份、实体、事件、历史记录和策略在两种范围下 都以相同的方式运作。
PERSONAL COMPANY
WhatsApp Gmail Calendar Mac Slack GitHub CRM DB
\ | | / \ | | /
+------+-------+-----+ +------+-----+---+
\ /
+------- LOBU -------+
| identities |
| entities + events |
| history + policy |
+---------+----------+
|
shared agent context
+------------+------------+
| |
"When is Alice home?" "Why is Acme at risk?"
使用 Lobu 的三种方式
1. 为现有 Agent 添加共享上下文
Agent 无需切换到新的聊天界面或采用 Lobu 的运行时,就能搜索和保存记忆、查询结构化实体、检查已连接的来源,并委派任务给 Lobu 专家。
文档:Memory · Claude · ChatGPT · Codex
2. 运行持久化的 Lobu 专家
为一项长期职责创建专家:客户研究、支持请求分流、版本发布协调、事件跟进或内部领域。用户可以通过 Lobu Web 应用或 Slack 与它交流,其他 Agent 也可以通过 MCP 调用同一个专家。
在本地搭建并运行一个:
npx @lobu/cli@latest init my-specialist
cd my-specialist
npx @lobu/cli@latest run
npx @lobu/cli@latest chat -c local "hello"
默认情况下,lobu run 会启动包含内嵌 Postgres 数据库的本地堆栈,并在 :8787 打开 Web UI。只有在内嵌模式下,它才会自动应用项目的 lobu.config.ts。若要使用外部 Postgres,请设置 DATABASE_URL,确保 pgvector 可用,然后进行身份验证,并单独将项目应用到该运行环境。
当前的 canary CLI 会在首次使用时下载所需的运行时组件,并缓存以供后续运行。--help、--version 以及仅连接远程运行时的命令不会安装本地堆栈。Docker 镜像会在构建时包含其运行时依赖,并直接启动;本地嵌入模型权重仍可能在首次使用时下载。有关独立的数据库和服务配置,请参阅 Docker 部署。
lobu init(包括 init -y)会在项目的 .env 中生成 ENCRYPTION_KEY。手动设置时,必须在启动前提供此密钥:使用 openssl rand -base64 32 生成一个 32 字节的 base64 值。请将同一个密钥与持久化数据库一同保存;替换密钥会导致先前加密的机密信息无法读取。
文档:快速入门 · Agent 工作区 · 技能 · Slack
3. 使用 CLI 和 TypeScript SDK 构建
无需 Agent,也可以使用同样受治理的数据和操作:
npx @lobu/cli@latest memory run # list the memory tools
npx @lobu/cli@latest memory run search_memory '{"query":"onboarding"}'
npx @lobu/cli@latest call run_sdk --arg title='List recent entities' \
--arg script='export default async (_ctx, client) => client.entities.list({ limit: 5 })'
或者使用 Node 和 TypeScript:
import { client, searchMemory } from "@lobu/client";
client.setConfig({
baseUrl: "https://lobu.ai",
headers: { Authorization: `Bearer ${process.env.LOBU_TOKEN}` },
});
const hits = await searchMemory({
path: { orgSlug: "my-org" },
body: { query: "onboarding" },
});
使用 lobu token create 创建令牌。MCP 工具和类型化 SDK 操作共用服务端工具注册表和访问规则;lobu memory run 通过 MCP 端点分发,而 lobu call 默认通过 REST 工具路由分发(设置 LOBU_API_TOKEN 和 LOBU_MEMORY_URL 后则使用 MCP)。lobu call run_sdk、query_sdk 和 query_sql 都需要一个 title 参数,用于在活动动态中命名此次调用。
核心概念
共享上下文
连接器会按计划或通过 Webhook 收集活动数据。讨论、项目变更、客户记录、API 事件以及保存的 Agent 知识都会写入同一份只追加历史记录。
类型化实体将这些历史记录与您关注的对象关联起来:Company、Project、Customer、Incident 或您定义的架构。更正会取代旧事实,而不会抹去其来源记录。
连接器可扩展。您可以用 TypeScript 构建连接器;对于 Lobu 尚未提供集成的来源,编码 Agent 可以使用 Lobu 的连接器规范和验证流程来创建集成。
持久化专家
Lobu 专家拥有稳定的角色、指令、记忆、工具和对话历史。用户可以通过网页聊天或 Slack 联系它,外部 Agent 也可以通过 client.conversations.send 调用它。
专家通过角色文件设定身份和指令:IDENTITY.md、SOUL.md 和 USER.md。防护机制可以检查输入、输出和工具调用。连接器操作遵循 Settings → Policies 中的组织级 Auto、Ask 或 Block 规则;即使设为 Auto,防护机制仍会生效,操作结果也会返回到共享事件日志。
外部 Agent 无需让用户编写委派代码。它们会将如下脚本传递给 Lobu 的 query_sdk 和 run_sdk MCP 工具:
脚本必须默认导出一个异步函数。Lobu 会将执行上下文作为第一个参数,将 ClientSDK 作为第二个参数;await 和 return 必须放在该函数内部。单独使用顶层 await 或 return 会导致编译失败。同样的函数格式也适用于 lobu call run_sdk --arg title='…' --arg script='…'。
// Discover specialists through query_sdk.
export default async (_ctx, client) => {
const { agents } = await client.agents.list();
return agents;
};
// Delegate through run_sdk and wait for the specialist's reply.
export default async (_ctx, client) => {
return client.conversations.send({
agent_id: "customer-researcher",
thread: "enterprise-onboarding",
text: "Review the latest customer feedback and propose the next three interviews.",
});
};
自动化
自动化是有版本管理的后台职责,可手动激活、按计划激活、由连接器事件激活,或由另一项自动化的持久化输出激活。它们会读取受治理的数据源、持久化结构化结果,并可通知 Slack、创建工单,或在无人聊天时启动 Agent 任务。
数据收集与激活彼此独立:只需连接一次数据源,就能保留持久历史,供每个获授权的 Agent 使用;然后选择某项职责是按计划运行,还是在收到匹配事件时立即运行。轮询连接器、经过身份验证的 Webhook 和自动化输出会使用各自适用的数据接入路径,但最终都会汇入相同的持久化自动化运行生命周期。首次同步会建立基线,不会向订阅者发送过多通知;重复投递会被去重。
请参阅激活与串联模型。
可选执行
通过 MCP 共享上下文和委派任务,并不要求 Lobu 为调用它的 Agent 执行代码。当 Lobu 专家需要 shell 时,内置运行时会提供轻量级的 just-bash 执行环境。对于需要更强隔离或更多计算资源的工作负载,可以连接 Vercel Sandbox 等远程沙箱提供商。
选择哪个沙箱来运行代码取决于部署方式。Lobu 提供围绕沙箱的共享上下文、权限和治理。
渠道
Lobu 专家可以服务于 Slack、Telegram、WhatsApp、Discord、Teams、Google Chat、Web 应用和 REST API。各渠道的对话彼此独立,但会读取相同的获授权组织上下文。
设置:Slack · Telegram · Discord · WhatsApp · Teams · Google Chat
Lobu 的不同之处
- Agent 框架帮助开发者实现 Agent 循环。Lobu 为 Agent 和人员提供共享的组织状态,以及用于维护持久化专家的场所。
- 直接 MCP 集成会公开单个提供商提供的工具。Lobu 会持续构建持久化的跨来源上下文,供每个获授权的 Agent 重复使用。
- Agent 运行时用于托管特定 Agent。Lobu 让人们可以继续使用 Claude Code、Codex、ChatGPT 或自己的运行时,并仅在需要共享上下文或委派任务时使用 Lobu。
- 工作流引擎会编码预先设定的步骤图。Lobu 自动化负责处理持久化触发器和后台职责,而 Agent 则决定如何完成开放式任务。
Agent 配置
运行时配置通过 Web 应用或与 CLI 使用的同一组织范围 REST API 管理。本地 lobu.config.ts 项目支持验证和可重复执行的应用工作流。
npx @lobu/cli@latest login
npx @lobu/cli@latest org set my-org
npx @lobu/cli@latest agent list
文档:CLI 参考 · lobu apply
部署
可在本地使用嵌入式运行时,也可通过外部 Postgres 自托管 Lobu。生产环境指南:Docker · Cloud · Kubernetes
安全与隐私
权限和审计由 Lobu 网关负责。Lobu MCP 服务和凭据代理层负责处理提供商和连接器凭据、OAuth 和令牌刷新,以及第三方 API 代理。工作进程接收的是限定范围的占位符或短期的提供商派生访问权限,而不是 OAuth 令牌或持久存储的凭据。连接器操作遵循组织审批策略,连接的数据仍限定在组织范围内。
内置的 just-bash 和嵌入式执行模式是策略与便利性边界,并非用于运行恶意代码的虚拟机。当工作负载需要更强的隔离边界时,请使用远程沙箱提供商。
设计合作伙伴
我们正在与技术团队合作。这些团队已在使用 Claude Code、Codex、ChatGPT 或自定义 Agent,并希望这些 Agent 共享公司上下文,或委派任务给持久化的专家 Agent。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。