2026年10月6日 1 分钟阅读

AI Agent 开始拥有自己的社交网络:Open Instinct 如何把权限、支付和跨 Agent 协作连起来

tinyash 0 条评论

很多“个人 AI 助手”仍然停留在聊天窗口里:你发消息,它给答案。但 Open Instinct 选择了另一条路线——让每个人拥有一个可以通过 iMessage 或短信联系的个人 Agent,它有自己的计算机、工作区和受控工具,还能与可信联系人身边的 Agent 协作。

这个项目的重点不是把模型换得更大,而是把一个 Agent 当成长期运行的软件系统来设计:它需要身份、权限、记忆、审计、审批和故障边界。对正在搭建 AI 工作流的开发者来说,这比“再接一个模型 API”更值得研究。

Open Instinct 到底是什么

Open Instinct 是一个 MIT 许可证的 TypeScript 项目,仓库当前版本为 0.1.0,要求 Node.js 22.19 或更高版本,并使用 pnpm 10。它把一个个人 Agent 拆成多个包:核心运行时负责 Agent 循环、策略、记忆、调度和审批;Inkbox 负责消息与 Agent-to-Agent 通信;Computer 提供桌面;Composio 连接应用;Network 处理联系人、信任等级和邀请;Payments 处理 Stripe Link 钱包。

项目 README 给出的默认组合是:Inkbox 提供电话号码、邮箱和 Agent 端点,Maritime 为每个人运行带 Linux 桌面的 microVM,Pi 执行 Agent 循环,Composio 连接外部应用。模型提供商可以替换,因此它更像一个可运行的 Agent 产品骨架,而不是绑定单一模型的聊天应用。

它还有一个重要定位:这是“可运行的 Instinct 克隆”,不是声称已经具备成熟 SaaS 稳定性的产品。README 明确把实时 iMessage 和 Maritime 部署标为 beta。这个状态信息很重要,文章不应该把它包装成已经适合托管敏感账户的成品。

权限不是提示词,而是代码

Open Instinct 最有价值的设计,是把联系人分为六个信任等级:owner、partner、family、friend、contact 和 stranger。不同等级拥有不同能力。例如,朋友可以查询空闲时间并提出计划,但不能读取日历标题;陌生人只能进行简短介绍或留言,而且受到频率限制。

权限会在两层执行。第一层是在构建提示词时,只向模型展示该身份可能使用的工具;第二层是在工具真正执行前,由 beforeToolCall 再次检查信任等级、临时授权和消费策略。这样,权限不会因为模型“理解错了”一句自然语言就被绕过。

可以把它抽象成下面的规则:

允许工具调用 = 信任等级能力 ∩ 临时授权 ∩ 消费与范围限制

临时授权也不是无限放权。项目文档中的示例授权只允许某个联系人在指定日期范围内使用 calendar.write 和 plans.commit,并限制消费金额。授权有过期时间,之后自动失效。

这种模型很适合现实中的协作:你可以允许伴侣的 Agent 协调晚餐,但不意味着它获得你的全部文件、邮箱和桌面控制权。权限表本身存在于 packages/core/src/policy.ts,测试会检查特殊权限行是否与代码一致。

两个 Agent 如何协作

项目定义了 OIP/1(Open Instinct Protocol version 1),它建立在 Inkbox 承载的 A2A 1.0 之上。一条消息有两部分:人类和普通 Agent 可以理解的文本,以及给 Open Instinct 使用的结构化 data。数据部分会携带意图、主题、发起人和参数。

例如,约饭可以使用 propose_times,空闲时间查询使用 request_freebusy,确认时间使用 accept 或 confirm。调用方通过 ask_instinct 发出请求,接收方的 Agent 再根据自己的主人设定的信任等级决定能返回多少信息。

这里有一个值得借鉴的边界:多个联系人并不会被塞进一个共享群聊上下文。一个群体计划会拆成多条两两对话,每个接收者都在自己的上下文中处理请求,发起方最后再汇总答案。这样,Sam 的 Agent 不会因为 Priya 的信任等级更高,就意外得到更多信息。

支付和登录必须回到人类手里

Open Instinct 没有让模型直接输入密码、验证码或信用卡号。遇到登录、CAPTCHA 或支付确认时,Agent 会请求人工接管,由用户在真实桌面上完成步骤。

支付流程同样采用分层防护:Agent 向 Stripe Link 请求指定商户和准确金额的一次性卡片,用户先审批,卡片只在一次工具结果中出现,不写入磁盘、审计日志或消息。消费策略还可以设置单次上限、每日上限、必须人工确认的类别以及禁止商户。

这不是说支付“自动化了就安全”,而是把最关键的决策点固定为可审计的人工确认。对任何能操作浏览器、发送邮件或调用第三方 API 的 Agent,这个原则都比一段更长的系统提示词可靠。

安全设计仍然有明确缺口

项目的安全文档没有回避限制。外部消息、网页内容、邮件和其他 Agent 的任务会被包进 标记,并在工具调用前经过策略检查;Webhook 使用 HMAC-SHA256 签名、五分钟时间窗口和事件去重;网页抓取会拒绝回环、私有地址、链路本地地址和云元数据网段。

但它仍然不等于完整沙箱。文档明确指出:托管平台、消息服务、模型提供商和 Composio 仍属于必须信任的基础设施;bash 是真实 shell,容器用户能读取的文件仍可能被它读取;DNS rebinding 风险也没有仅靠地址解析完全消除。部署前应该把这些限制写进威胁模型,而不是只看“有策略引擎”就放松警惕。

快速运行与适用场景

项目 README 给出的本地启动流程是:

git clone https://github.com/mariagorskikh/open-instinct && cd open-instinct
nvm use && corepack enable
pnpm install && pnpm build
export ANTHROPIC_API_KEY="your-api-key"
pnpm instinct init --name "Maria" --phone "+14155550100" --email maria@example.com --handle maria-instinct
pnpm instinct dev

如果只想体验对话,可以在另一个终端运行 pnpm instinct chat "remember that I like window seats"。接入真实 iMessage 或部署到 Maritime 前,还需要按照项目文档配置 Inkbox、相关密钥和运行环境。

它目前最适合三类读者:想研究个人 Agent 产品架构的人,想学习跨 Agent 协议和权限设计的人,以及需要一个可读源码实验场的 TypeScript 开发者。若你的目标只是本地问答,这个项目会显得过重;但如果 Agent 要代表你联系别人、操作应用或花钱,那么身份与边界才是系统的核心。

Open Instinct 的启发并不是“每个人都应该马上部署一个能付钱的 Agent”,而是提醒我们:Agent 一旦从聊天框走向现实世界,就必须同时拥有能力模型、信任模型和恢复模型。模型负责提出行动,运行时负责执行,策略负责阻止越界,人类负责最后的高风险确认——这才是可持续的 Agent 基础设施。

相关链接

发表评论

你的邮箱地址不会被公开,带 * 的为必填项。