首页 > 教程资讯 > 教程详情

Stroq 亮相 Show HN:追溯编程 agent 命令来源,用本地 hooks 审查操作

AI 与前沿 老K说软件 2026-11-06
文章分享

个人开发者 Agybay 在 Hacker News 的 Show HN 栏目介绍了 Stroq,一款面向编程 agent 的本地审计工具。它关注的不只是执行了什么命令,还包括命令是否来自 agent 先前读过的文本,以及哪些密钥被传出本机。项目同时提供执行前的 hooks 防护,但作者强调,这是一层过滤器,并非沙箱。

从会话记录追溯命令来源

据官网介绍,Stroq 采用 Apache-2.0 许可,本地运行、无遥测,可扫描 Claude Code、Codex CLI 和 Cursor 的会话。涉及密钥的输出只显示名称,不展示值。

官网称,Stroq 能把后续动作中的包名、URL 或命令片段,与此前包含这些内容的工具输出关联起来;对于携带已知密钥的出站调用,则拒绝执行,并指出变量名和所在文件。

审计与防护需要区分。作者在 HN 评论中确认,单独运行 npx @stroq/cli 只生成报告,不会阻止操作;通过 stroq init 安装 hooks 后,才会在危险命令执行前要求确认。

用确定性策略裁决动作

官网称,默认策略包含 21 条规则、19 个动作类别,由两个 hook 执行。裁决过程没有模型参与,hook 热路径也没有网络调用。

安装要求 Node 22 或更新版本。npx @stroq/cli init 默认面向 Claude Code,也可通过 --agent 参数为 Cursor、Codex CLI、Copilot CLI、Windsurf、OpenClaw、Antigravity 及 stdio MCP 客户端配置。

项目还提供浏览器中的本地控制台。据官网说明,它仅监听回环地址,通过 127.0.0.1 访问,无需账号,私有链接的密钥每次启动都会更换。

「没有放行」是策略回放结果

据发布方自测,stroq attack 回放的 36 个攻击场景中,15 个被拦截、21 个要求用户确认,没有直接放行。官网明确,这测试的是策略,并非运行中的真实 agent;其中 20 个场景来自公开报告,6 个参照报告建模但未复现,10 个由 Stroq 自写。

发布方还称,对 20 个场景分别施加 25 种变形得到的 500 个变体,均未逃脱;在另一次覆盖 500 个公开 agent 会话、28,347 次工具调用的回放中,共出现 21 次拦停,占 0.07%。这些均为项目方公布的数据。

作者承认检测存在边界

HN 用户 embedding-shape 质疑事后审计无法阻止已经发生的破坏,主张为 agent 设置独立用户并限制路径和网络。作者回应,hooks 是「过滤器,而非沙箱」。

官网也承认,内容扫描依靠规范化文本上的正则匹配,因此从设计上就可能被绕过,这也是它将执行约束放在动作层的原因。对于评论者提出的恶意代码藏在项目内部、由 npm test 触发的情形,作者承认 hook 只能看到测试命令本身。

来源