Chimera Agent 0.68.0:策略、技能,以及一个坏掉的桌面构建
0.68.0 新增了所有者级别的拒绝策略、本地技能发现、项目提示命令等诸多功能——但不要安装桌面应用;在 0.68.1 发布前请使用 v0.67.4。
我们自己写的、关于我们某个版本的文字。 在 GitHub 上阅读这条 release →
0.68.0 的头条新闻不是一个功能,而是一个警告:不要安装此版本。 桌面应用的后端无法启动,因为 PyInstaller 打包时遗漏了 chimera.cli.commands.apilogs,而 CLI 会按名称导入该模块。PyPI 包不受影响。如果你在用桌面应用,请留在 v0.67.4,直到 v0.68.1 发布。本文其余部分将介绍对于构建 agent 的人来说,实际发生了哪些变化。
所有者策略从按工具阻断转向仅拒绝规则
在此版本之前,限制 agent 能触碰什么意味着要将 CHIMERA_TOOL_DENYLIST 这类环境变量与按项目设置的规则结合起来。这对单个工具有效,但并没有给安装实例的所有者一个统一的地方来声明“此提供者绝不能在此运行”或“此 MCP 服务器绝不能连接”。
0.68.0 新增了 <CHIMERA_HOME>/policy.json——或者由 CHIMERA_POLICY_FILE 指定的文件。规则是仅拒绝且有序的。你可以拒绝一个提供者、一个集成(mcp:<name>、skill:<name>)或一个工具。被拒绝的提供者会从模型列表和层级阶梯中移除,其调用也会被拒绝。被拒绝的 MCP 服务器永不连接。被拒绝的技能永不加载。被拒绝的工具在注册表层面就会被拒绝。
黄金法则很重要:后续的 allow 只能撤销同一文件中的前一个 deny。它绝不会重新打开 CHIMERA_TOOL_DENYLIST、触达底线或内核阻断。无效的策略文件会停止 serve、chat、assist、tui 和 acp,并使 doctor 失败。桌面应用会启动,但在文件修复之前会拒绝所有工具。agent 的写入工具无法写入策略文件。
这是一种不同于按项目规则的模型。它是所有者级别、安装实例全局的,且无法被巧妙的提示词或项目文件绕过。对于任何在共享机器或 agent 集群上运行的人来说,这才是重要的改变。
技能、提示命令和受限提问
本地 Agent 技能现在作为可审查的捆绑包被发现。在工作区和用户的 .claude/skills 及 .agents/skills 目录树中找到的技能,会通过受限上传路径导入。它们在获批前保持待定和污染状态,当清单发生变化时会重新变为待定。API 会报告胜出的来源和冲突。这意味着一个技能不会仅仅因为放在某个文件夹里就被静默信任。
项目和全局 Markdown 提示命令的工作方式相同。终端聊天和 TUI 会在 .chimera/commands/ 和 <CHIMERA_HOME>/commands/ 中发现带命名空间的模板。模板会将 $ARGUMENTS 和 $1 展开为普通的消息文本。模板内容永远不会被执行。这为项目提供了一种发布可重复提示的方式,而无需授予模板任何执行权限。
Code agent 现在可以向用户提出一个受限问题。ask_user 会暂停一个有人值守的 Code 回合,等待一个选项或自由文本答案,在超时时返回一个明确的无响应结果,并且始终是一个独特的数据类型,不能批准受管控的操作。终端、机器人和无人值守的回合不会注册它。这填补了一个空白:在此之前,需要用户做决策的 Code 回合没有结构化的方式来停下来提问。
现在该做什么
如果你使用桌面应用,不要升级。留在 v0.67.4。如果你使用 PyPI 包,可以安装 0.68.0 并从策略文件开始:创建 <CHIMERA_HOME>/policy.json,编写你的拒绝规则,然后运行 chimera policy show 来查看生效的规则。完整的发布说明见 Chimera Agent v0.68.0。
https://chimeraagent.space