AI-FW 的 Cursor Agent Hooks

AI-FW 的 Cursor Agent Hooks

通过 AI-FW 策略网关检查 Cursor prompts、shell 命令、文件、MCP 调用和 Agent 操作。

Cursor Agent Hooks 让 AI-FW 检查并治理开发工作站上的 Agent 活动。本地 shim 从 stdin 接收 Cursor payload,发送到 AI-FW,并返回对应事件决策。

机制覆盖范围
Model routingPrompts、responses、streaming、tool calls 和经 OpenAI 兼容 gateway 的模型流量。
Cursor Agent HooksShell、文件读写、MCP、子 Agent 启动、prompts、tab 事件和工作站操作。

如需覆盖模型流量和开发机活动,请同时使用。

可检查的事件

Cursor 事件AI-FW 行为可阻止
beforeSubmitPromptPrompt 规则、PII 和语义分析。是
preToolUse用 allow-list 检查工具并扫描输入。是
beforeShellExecution执行前检查命令。是
beforeMCPExecution治理 server/tool 身份和 payload。是
beforeReadFile内容到模型前检查路径和内容。是
subagentStart将子 Agent 类型视为声明能力。是
afterFileEdit记录文件效果并扫描写入内容。否,仅通知
afterShellExecution记录命令结果元数据和输出 digest。否
afterAgentResponse扫描 assistant 响应。否
sessionStart / sessionEnd记录会话生命周期和时长。否
beforeTabFileRead / afterTabFileEdit管理读取并记录自主 tab 编辑。仅读取

捕获采用 observe-first,只记录不拒绝。阻止需配置 allow-list 并明确启用。

配置集成

打开 AI Firewall -> Agent Config -> Integrations -> Cursor Agent Hooks。

设置默认值含义
Enable Cursor HooksOff启用 POST /hooks/cursor;关闭时返回 404。
CredentialAI-FW API key推荐用于归因和撤销;也支持签名认证。
Mask RulesAllowmask 匹配允许并记录;设为 Deny 可拒绝。
Ask PermissionOnShell/MCP 决策可请求人工确认;Off 时只 allow/deny。
Decide Within5000 ms决策时间预算;超时则拒绝。
Repeat Window2000 ms同一命令重复投递更新现有记录;0 表示每次都记录。
EventsAll选择 shim 发送的 Cursor 事件。
Deny Message内置拒绝时返回给开发者的消息。

设置变更写入审计。

安装本地 shim#

Shim 位于公开 tools/securetron-aifw package,是本地进程,可通过企业流程分发或在项目范围配置。

  1. 将 shim 放在稳定路径。
  2. 从模板创建 hooks.json。
  3. 在企业或用户范围设置绝对路径命令。
  4. 配置 AI-FW endpoint 和 credential。
  5. 先 capture、observe-first,审查活动后再启用阻止。

API key 可按 key、Agent label 和 owner 归因。共享签名不提供同等的开发者身份范围。Capture mode 可先检查 Cursor payload,准备执行策略时移除。

IDE Artifacts#

启用 IDE Artifacts 后,AI-FW 记录文件写入/删除、读取、命令元数据和 Agent 响应。默认关闭,可配置类型、digest-first 内容、上限和保留期。

命令输出永不保存为内容;no-log 和敏感数据政策也可抑制内容。导出只包含元数据和 digests。

查看结果

问题查看位置
会话执行了什么?Audit Logs -> Activity,按 conversation 筛选。
记录了哪些文件/命令?Artifacts,按 kind/source/agent/session/path 筛选。
调用了哪些工具?Skills & Tools。
会话何时开始/结束?Audit Logs -> Events,source cursor。
哪些控制有遥测?Compliance 中引用已观察来源的控制。

Conversation ID 将 prompts、工具调用和 artifacts 连成一条轨迹。声明但未调用的工具不算使用。

故障与隐私

Hook endpoint 需要 credential。Gateway 不可达时,按 hooks.json 中每个事件的故障策略和 shim 的 fail-open/fail-closed 选项处理。权限事件若不能因故障放行命令,应 fail-closed。

参数和内容优先保存 digest。仅在有明确运维需求并审查保留和 no-log 策略后存储内容。企业分发和 workspace trust 也是安全边界的一部分。

相关文档

后续阅读

后续阅读