Files
navop/crates/tool_runtime
胡飞 0c7b757604 feat(connection): 连接级 AI 访问策略(issue #437)
问题:AI 可能绕过只读工具,直接登录「只打算人工管理」的连接执行写命令。

方案:连接新增 `ai_access_level`(允许 / 只读 / 禁止),三层落地:
- 可见性:资源池与内置 AI 的资源目录、@ 提及按级别过滤或裁剪能力;
  `connections.list/find` 不返回被禁止的连接;
- 路由:目标解析在能力不匹配时直接失败,模型拿不到句柄;
- 执行:`ToolRegistry` 挂 `ToolAccessGuard`,外部 MCP 与内置 AI 共用同一闸门,
  覆盖 `connection` / `connection_id` / `target` / `session_id` 四类目标。

策略属于连接内容:随云同步与导入导出走(载荷新增 `ai_access_level`,并加入团队
冲突判定的内容变更白名单),保证换机器、换客户端后「生产就是生产」的限制仍生效。

界面:连接表单(数据库 / SSH / Redis / MongoDB / middleware)三选一,侧栏徽标与
右键菜单可直接切换;写失败显式报错,不静默放宽。

Refs #437
2026-10-22 11:25:32 +08:00
..
2026-08-31 23:02:35 +08:00