Talos:以确定性内核为「裁决者」的本地 AI 代理
一款在用户本机运行的 AI 自主代理,通过一次性、限时 30 秒的 capability token 让语言模型「提案但…
近日,一款名为 Talos 的本地 AI 自主代理在 Hacker News 引发关注。与多数直接让大语言模型「放手执行」的代理不同,Talos 将决策权交给一个确定性的安全内核:模型只负责提案,内核根据 capability token 决定是否放行,且每次令牌仅生效一次、有效时长仅 30 秒。项目作者称,这一设计试图在「每次都弹窗确认」与「靠黑名单硬扛」之间找到第三条路。
设计核心:模型提案,内核裁决
Talos 的运行流程可概括为:消息进入事件日志,由推理层产生候选动作,再送入内核判断;只有获得对应 token 的工具调用才会真正执行。每个 token 与「精确的参数与目标」绑定,一次性使用,30 秒后失效。原始的 shell 执行器在没有 token 的情况下根本无法被调用——忘记走内核检查,不会产生未授权操作,而是直接不发生任何效果。
作者将这一原则概括为「Authority is a token, not a list」(权限是一枚 token,不是一张白名单)。为了让设计可被验证,仓库内置了 redteam.py,包含 164 个对抗场景,每次代码变更都会运行,尝试绕过内核拿到执行权限。
明确的能力边界
项目方在文档中单列「What it does not do」,把限制讲在前面,避免安全声明变成营销话术:
- shell 工具依赖系统沙箱,Linux 使用 bubblewrap,macOS 使用 sandbox-exec;两者都不可用时直接拒绝运行,必要时需显式设置
TALOS_SANDBOX_ALLOW_UNCONFINED=1才可放行。 - 不是多租户安全边界:一位操作员,一台机器,能在进程中执行代码的人都能触达 token 发放逻辑。
- 没有网关、没有 Web 控制台、没有
config.yaml:每一项都被有意剔除,因为它们都可能成为「内核之外的第二条权限通道」。 - 不防御「恶意模型」,只防御「出错的模型」以及通过工具输出发起的 prompt injection——这是两类不同的威胁。
- 语音转写使用本地 faster-whisper,图片生成与视频生成被刻意不做,以避免隐私与算力风险。
使用入口与部署方式
Talos 仅提供两条入站通道,且都基于拉取:Telegram 长轮询与 IMAP 邮件。两者都不需要对外开放端口,保持「仅出站」。邮件通道被设定在 Trust.ASK:地址可以提问并收到回答,但永远不能批准任何动作;WhatsApp 仅用于推送结果,不能下达指令。
安装方式为通过 curl 拉取 install.sh,脚本会校验签名与校验和,并运行完整测试套件;安装完成后默认不会启动任何监听服务,直到操作员显式启动。安装过程本身被刻意设计为「先阅读再运行」:官方推荐先用 less 通读脚本内容。
小结
对于希望在自有机器上使用 AI 代理、但又不愿把 shell 完全交给模型的开发者,Talos 提供了一种以确定性内核收口所有副作用的方案。它的价值不在于能力上限,而在于把每一步执行都变成可审计、可测试、可拒绝的对象;至于这种 token + 内核的范式能否被更广泛的代理框架采纳,仍有待观察。
