paprika-org/agentcheck
GitHub: paprika-org/agentcheck
一个为AI编码代理提供实时规则拦截与修正的透明代理,解决不当捷径与越权操作问题。
Stars: 0 | Forks: 0
# AgentCheck
[](https://github.com/paprika-org/agentcheck/actions/workflows/ci.yml)
[](https://paprika-org.github.io/agentcheck/)
[](https://paprika-org.github.io/agentcheck/blog.html)
你的 AI 编码代理会走捷径。它们称之为“务实修复”。它们会归咎于“既有问题”。它们会删除失败的测试而不是修复它。当你在观察时,你能捕捉到这些;当你不在时,它们就会被提交。
AgentCheck 是一个标准输入/标准输出的代理,它拦截代理输出中的不良模式并在造成损害之前注入修正。
```
┌─────────────────────────────────────────────────────────────────────┐
│ Without AgentCheck │
│ │
│ Agent: "I'll apply a pragmatic fix here..." │
│ Agent: [writes hacky workaround] │
│ Agent: "Done ✓" │
│ │
│ You: [comes back an hour later to review garbage] │
└─────────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────┐
│ With AgentCheck │
│ │
│ Agent: "I'll apply a pragmatic fix here..." │
│ ↳ [agentcheck injects]: "Reminder: do the correct fix, not a │
│ pragmatic shortcut. If complex, explain and ask first." │
│ Agent: "You're right. Let me think about the proper approach..." │
│ Agent: [writes correct solution] │
└─────────────────────────────────────────────────────────────────────┘
```
## 安装
```
npm install -g agentcheck
```
或者无需安装:
```
npx agentcheck -- claude
```
## 用法
只需在代理命令前加上 `agentcheck --`:
```
# 先试一下——看看在不注入任何内容的情况下会触发什么
agentcheck --shadow -- claude
# 包装 Claude Code(实时修正)
agentcheck -- claude
# 启用详细日志记录(查看被拦截的内容)
agentcheck -v -- claude
# 任何 CLI 代理均可使用
agentcheck -- cursor-agent --headless
agentcheck -- aider --model gpt-5.4
# 在不发送的情况下预览注入
agentcheck --dry-run -v -- claude
# 将所有匹配项记录到文件
agentcheck --log ~/.agentcheck.log -- claude
```
**影子模式**(`--shadow`)会正常运行你的代理,但静默地将每个*可能*触发的规则记录到 `.agentcheck-shadow.log`。不会注入任何内容。使用此模式可以在启用实时修正之前建立对规则集的信心。
## 规则包
`rules/` 目录中的预构建规则包:
| 包 | 捕获内容 |
|----|----------|
| `rules/protect-git.yaml` | 破坏性 Git 操作:强制推送、硬重置、分支删除、检出点 |
| `rules/no-secrets.yaml` | 硬编码的凭证、API 密钥、令牌、私钥、连接字符串 |
| `rules/stay-in-scope.yaml` | 超出范围的文件编辑:锁文件、.env、CI/CD、迁移、sudo、rm -rf |
```
# 使用规则包
agentcheck --config rules/protect-git.yaml -- claude
# 使用规则包的影子模式(在提交前观察)
agentcheck --shadow --config rules/no-secrets.yaml -- claude
```
## 默认规则
AgentCheck 附带针对常见代理故障模式的规则:
| 规则 | 触发条件 | 注入内容 |
|------|----------|----------|
| `pragmatic-fix` | “务实修复/解决方案/方法” | 提醒进行正确的修复 |
| `pre-existing` | “既有问题/错误/问题” | 不要归咎于既有问题 |
| `deleted-tests` | 删除测试 | 停止。修复代码,而不是测试。 |
| `skip-tests` | `.skip()`、`xit()`、`xdescribe()` | 停止。修复问题,而不是跳过。 |
| `already-working` | “已经工作/通过” | 向我展示证明它的测试。 |
| `error-swallow` | 空捕获块 | 处理或重新抛出错误。 |
查看所有规则:`agentcheck --rules`
## 自定义规则
在项目根目录创建 `.agentcheck.yml`:
```
include_defaults: true # keep built-in rules (default)
rules:
# Your team's rules
- pattern: "TODO: fix later"
inject: "Don't leave TODOs. Fix it now or file an issue with a ticket number."
cooldown: 30
- pattern: "I'll leave this for now"
inject: "Finish this before moving on. What specifically would you leave and why?"
cooldown: 60
- pattern: "assuming .* works"
inject: "Don't assume — verify. Run the thing and check the output."
cooldown: 60
```
## 工作原理
AgentCheck 是一个透明代理:
1. 启动你的代理作为子进程
2. 将终端的标准输入 → 代理标准输入(你的输入保持不变)
3. 将代理标准输出 → 终端(你看到所有内容)
4. 扫描代理输出的每一行与你的规则集匹配
5. 当规则匹配时:将修正文本注入代理标准输入
6. 每条规则的冷却机制防止注入泛滥
代理收到的修正就像是你亲自输入的——无需框架更改、无需 API 密钥、无需代理特定集成。
## 为什么不只使用看门狗?
像 [TruPal](https://github.com/logpie/trupal) 这样的工具会监视代理行为并*向你展示告警*。这需要你正在观看。
AgentCheck *直接行动*——它在代理继续走错路之前自动注入修正。你只需设置一次规则,然后让代理无人值守运行。
## 状态
v0.1 — 核心代理与注入功能已可用。正在收集反馈,了解哪些规则最重要。
→ **尝试它并告诉我们你会添加什么规则:** [agentcheck@agentmail.to](mailto:agentcheck@agentmail.to)
→ **想要托管版本**(网络仪表板、团队规则、Slack 告警、注入历史):[加入等待列表](mailto:agentcheck@agentmail.to?subject=Waitlist)
## CI 集成
在 GitHub Actions 中使用 agentcheck 审计 AI 代理输出而不进行注入:
```
- name: Install agentcheck
run: npm install -g agentcheck
- name: Run agent with guardrails (shadow mode)
run: |
agentcheck --shadow --shadow-log /tmp/agentcheck.log -- your-agent-command
- name: Upload shadow log
uses: actions/upload-artifact@v4
with:
name: agentcheck-shadow-log
path: /tmp/agentcheck.log
```
影子模式观察哪些规则会被触发而不修改代理输出。将日志上传为工件,以在 CI 中审核 AI 会话。
参见 [`.github/workflows/agentcheck-demo.yml`](.github/workflows/agentcheck-demo.yml) 获取完整示例。
## 许可证
MIT
标签:AI安全代理, AI编码代理, AI辅助编程, CI集成, DevSecOps, MITM代理, 上游代理, 云计算, 代理中间件, 代码修复拦截, 代码审查自动化, 代码注入防御, 代码质量防护, 关键词过滤, 可配置规则, 对抗性攻击防护, 开发工具链, 开源安全工具, 提示注入防护, 文档结构分析, 标准输入代理, 标准输出代理, 模式匹配, 正则规则, 测试保护, 策略引擎, 网络安全挑战, 自动化资产收集, 自定义脚本, 行为护栏, 规则包配置, 规则引擎, 输入输出代理, 运行时拦截, 逆向工程平台, 防护策略, 预提交检查