Skip to content
FunCoding

Search

Search docs, agents, posts, Skills and MCP servers

Hooks

用自定义脚本拦截和控制 Auggie 的工具执行与会话生命周期:配置位置、事件类型与是否阻断。

Hooks 在特定生命周期事件拦截工具执行并运行自定义脚本,用于:安全审计(阻止危险命令、记录敏感文件访问)、策略执行(强制编码标准、限制生产访问)、日志(记录工具使用用于合规和分析)、与外部系统集成。

配置位置(优先级从高到低):系统级 /etc/augment/settings.json(Windows 为 C:\ProgramData\Augment\settings.json,企业或管理员策略,不可被覆盖);<workspace>/.augment/settings.local.json(个人项目覆盖,不提交);<workspace>/.augment/settings.json(共享项目设置,提交到版本控制,适合安全审计、策略类 hook);~/.augment/settings.json(用户级,最低)。

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "launch-process",
        "hooks": [{ "type": "command", "command": "/etc/augment/hooks/validate-command.sh", "timeout": 5000 }]
      }
    ]
  }
}

PreToolUse、PostToolUse、Stop 同步运行,智能体会等它们完成,所以要设置合适的超时。只有 PreToolUse 能阻断工具执行;Stop 能通过 decision: "block" 阻止智能体结束;PostToolUse 不能阻断任何事情。matcher 用于按工具名匹配(如 launch-process)。各事件的输入输出细节和示例见官方 Hooks 及 Hooks Examples 页。