
Stop That Shit 是一套开源的 AI Agent 任务边界 Guard 源码,拦截 Codex、Claude Code、OpenCode 和 Hermes Agent CLI 中无需求的哈希和任务范围膨胀。
源码系统概览
文章正文
Stop That Shit 是一套开源的 AI Agent 任务边界 Guard 源码,专门拦截 Codex、Claude Code、OpenCode 和 Hermes Agent CLI 在执行任务时自行添加的防御性工作和任务越界行为。当你只让 Agent 导出一个结果文件,它却顺手生成一份 SHA-256 校验和,而后续流程根本不会读取它——这就是 Stop That Shit 要拦截的场景。项目通过 Skill 语义判断和 Hook 机器执行边界双重机制,在受覆盖的工具调用路径上检查 Agent 的每个动作是否越界,确保 Agent 只做用户明确要求的工作。该源码支持四种主流 AI coding agent 平台,共用同一套 Guard、Skill 和只存元数据的本地 Runtime,无需修改宿主的 sandbox 和 approval 设置。
源码简介
Stop That Shit(别再造史了)是一款面向 AI coding agent 工作流的多平台 Hook 和 Skill Guard 源码,由开发者 lennney 创建并开源。
该源码从 Codex 和 GPT-5.6 场景起步,现已覆盖 Codex、Claude Code、OpenCode 和 Hermes Agent CLI 四套宿主适配。
项目当前版本 v0.1.0 是首个多平台正式版本,采用 MIT 许可证,已在 GitHub 获得 662 个 star 和 21 个 fork。
核心设计理念是将 AI Agent 自行添加的防御性工作分为四类问题:scope creep 范围膨胀、Hashing 无需求哈希、Intent violation 意图越界和 Task thrashing 任务打转,简称 SHIT。
该源码不数代码行数也不把 diff 越小当成越好,只判断每一步是用户要求的还是当前代码和数据确实需要的。
欢迎贡献 star 和 fork,推动 AI Agent 少造一点史。
适用场景
使用 Codex 或 GPT 编码时,Agent 自行生成无消费者的校验和、哈希或防御性 guard。
使用 Claude Code 时,让 Agent Review diff 它却直接调用 apply_patch 修改代码。
使用 OpenCode 或 Hermes Agent CLI 时,Agent 修一个点却顺手重构半个项目。
任何需要约束 AI Agent 任务范围、防止范围膨胀和意图越界的 coding 工作流。
技术栈与运行环境
运行环境:Node.js 18 或更高版本,OpenCode 需 1.18.18 或更高。
技术栈:JavaScript(ES Modules)、Node.js 原生测试框架、SVG 图形资源。
零运行时依赖,package.json 中 dependencies 为空,所有功能基于 Node.js 内置模块实现。
最后更新 2026 年,更新日志详见 CHANGELOG.md,当前版本 v0.1.0。
功能亮点
- 多平台支持:Codex、Claude Code、OpenCode 和 Hermes Agent CLI 四套 Adapter 共用同一套 Guard 和 Skill
- Skill 加 Guard 双重机制:Skill 负责语义判断,Hook 在工具运行前检查明确边界
- SHIT 四维拦截:Scope creep 范围膨胀、Hashing 无需求哈希、Intent violation 意图越界、Task thrashing 任务打转
- 任务模式系统:review、change、answer、monitor、watch 五种模式,安装后默认 OBSERVING 不拦截
- 精细边界控制:files 文件锁、deps 依赖授权、hash 哈希授权、agents subagent 预算
- 本地元数据 Runtime:只存元数据,区分 checked action、context response、permission deny 和 hostEffect unobserved
- 成对案例驱动:Bad Case 标出该停的位置,Good Case 保住必要工作,只有可复现高置信度案例才进入 Guard
安装与部署提示
Claude Code 安装:在仓库根目录执行 claude plugin validate 点、claude plugin marketplace add 斜杠、claude plugin install stop-that-shit。
Codex 安装:执行 codex plugin marketplace add lennney/stop-that-shit 和 codex plugin add stop-that-shit。
OpenCode 安装:执行 opencode plugin github 冒号 lennney/stop-that-shit -g,需 1.18.18 或更高版本。
Hermes Agent CLI 安装:执行 hermes plugins install 和 hermes plugins enable stop-that-shit,启用后需重启 Hermes 进程。
本地验证:npm test 运行测试、npm run eval 运行评估、npm run release:check 检查发布。
技术架构与部署指南
截图与演示说明
GitHub 仓库封面图展示了 Stop That Shit 的项目标识和仓库统计数据,包含 662 个 star、21 个 fork 和 5 位贡献者。
仓库 README 中的红色 STOP 印章 SVG 图形(assets/stop-stamp.svg)象征 Guard 返回 permission deny 的拦截动作。
README 中展示了 Bad Case 和 Good Case 对比示例,直观呈现 Guard 拦截越界动作和放行必要工作的不同结果。
SHIT 四维问题表格以结构化方式列出了四种常见的任务越界模式及其表现。
| 功能维度 | Stop That Shit | ESLint | Pre-commit Hooks |
|---|---|---|---|
| 任务边界检查 | 支持 | 不支持 | 不支持 |
| AI Agent 意图判断 | 支持 | 不支持 | 不支持 |
| 代码风格检查 | 不支持 | 支持 | 部分支持 |
| 多平台 Agent 支持 | Codex、Claude Code、OpenCode、Hermes | 不适用 | 不适用 |
| 运行时依赖 | 零依赖 | 需安装插件 | 需安装工具 |
Stop That Shit 和 ESLint 的区别在于关注维度不同,对比 ESLint 侧重代码质量而 Stop That Shit 侧重任务边界控制。
对比 Pre-commit Hooks,Stop That Shit 专注于 AI Agent 工作流的意图越界拦截。
常见问题
问:Stop That Shit 和 ESLint 等 linter 有什么区别?
ESLint 检查代码质量和风格,Stop That Shit 检查 AI Agent 的任务边界和意图越界,两者关注的维度完全不同。
问:安装后会自动拦截 Agent 的所有越界行为吗?
不会。
安装后默认是 OBSERVING 状态,只检查和记录 covered action,不会返回 permission deny。
需要显式使用 review、change 等模式后才进入 ARMED 状态。
问:如何放行必要的哈希操作?
使用 hash=allow 参数明确授权,例如 stop-that-shit change hash=allow。
Guard 默认拒绝可识别的新 hash 操作,但用户明确要求或仓库代码证明必要时可以放行。
问:Stop That Shit 是免费的吗?
是的,该项目采用 MIT 许可证完全开源免费,可自由使用和修改。
问:支持哪些 AI coding agent 平台?
支持 Codex、Claude Code、OpenCode 和 Hermes Agent CLI 四种平台,四套 Adapter 共用同一套 Guard 和 Skill 核心。
安全风险提示
该源码 package.json 中 dependencies 为空,零运行时依赖,不存在第三方供应链风险。
未检测到 eval、base64_decode、shell_exec 等 PHP 高风险函数,项目为纯 JavaScript 实现。
本地 Runtime 只存元数据,不上传任何代码或用户数据,不涉及 CORS 或 Docker 密码配置。
Guard 返回的 permission deny 不保证宿主最终没有执行动作,hostEffect 始终标记为 unobserved。
下载说明
本站提供 Stop That Shit v0.1.0 完整源码包下载,含全部 137 个文件和 10 项 evidence 文档。
下载链接已通过百度网盘和蓝奏云双盘备份,提取码统一为 8888。
解压后请先阅读 INSTALL.md 获取各平台完整安装说明,再按照上述安装步骤操作。
GitHub 项目开源地址:https://github.com/lennney/stop-that-shit