Skip to main content

管理工具权限

工具权限允许你更细粒度地控制 goose 在各个扩展中如何使用工具。本指南会帮助你理解并正确配置这些权限。

理解工具与扩展

在讨论权限之前,先明确两个核心概念:

  • Extensions:为 goose 增加能力的扩展包,例如 Developer、Google Drive 等
  • Tools:每个扩展内部可以被 goose 调用的具体函数

例如,Developer 扩展就包含多个不同工具:

  • 用于编辑文件的文本编辑器工具
  • 用于执行命令的 shell 工具
  • 用于截图的屏幕捕获工具
性能优化建议

goose 在总共启用少于 25 个工具时表现最好。建议只打开当前任务真正需要的扩展。

权限级别

工具权限会和 goose 权限模式 一起工作。权限模式决定默认行为,而工具权限允许你覆盖某个具体工具的行为。

每个工具都可以设置为以下三种权限级别之一:

权限级别说明适用场景示例
Always Allow工具运行时不需要额外确认安全、只读类操作• 文件读取
• 目录列举
• 信息查询
Ask Before每次执行前都要求确认会修改状态的操作• 文件写入 / 编辑
• 系统命令
• 创建资源
Never Allow完全禁止使用该工具高敏感操作• 凭据访问
• 系统关键文件
• 删除资源

配置工具权限

当你使用 ManualSmart 审批模式时,可以为已启用扩展配置细粒度工具权限。这些规则既可以从模式切换入口进入,也可以从 Settings 页面进入。

  1. 点击应用底部的 按钮
  2. 点击当前已选 ManualSmart 模式旁边的 按钮
  3. 点击你想配置的扩展
  4. 通过每个工具旁边的下拉框设置权限级别
  5. 点击 Save Changes

为什么要管理工具权限

tip

随着任务变化,记得定期复查并更新工具权限。你可以在会话进行中随时修改这些设置。

配置工具权限主要有以下几个原因:

  1. 性能优化

    • 让启用工具总数控制在 25 个以内,以获得更好的性能
    • 关闭当前任务不需要的工具
    • 减少上下文窗口占用,提升响应质量
    • 避免 goose 因工具过多而出现决策瘫痪
  2. 安全控制

    • 限制对敏感操作的访问
    • 避免误改文件
    • 控制系统资源使用范围
  3. 任务聚焦

    • 只为当前任务启用必要工具
    • 帮助 goose 做出更合理的工具选择
    • 减少响应中的噪音

示例权限配置

按任务类型配置

你可以根据当前任务来决定权限策略:

Development Task:
✓ File reading → Always Allow
✓ Code editing → Ask Before
✓ Test running → Always Allow
✗ System commands → Ask Before

Documentation Task:
✓ File reading → Always Allow
✓ Markdown editing → Always Allow
✗ Code editing → Never Allow
✗ System commands → Never Allow