关于 verification
面向审查 AI Agent 代码的本地编排技能,供开发者使用。它运行安全、模式、质量和语言专项检查,并将发现汇总为验证报告。
主要功能
- 01运行安全、模式和质量检查
- 02执行语言专项代码检查
- 03识别语言和 Agent 框架
- 04存在 Kahuna 时纳入组织上下文
- 05将检查结果汇总为报告
适用场景
- 01全面验证 AI Agent 项目
- 02检查 Agent 代码的安全问题
- 03审查 Agent 模式和语言实践
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ aurite-ai/ agent-verifier --skill verification安装后在 Claude Code 中输入/verification确认已加载。
详细介绍
Agent 验证器
用途
对 AI Agent 代码执行全面验证。此编排器会调用专门的验证技能,并将结果汇总为统一报告。所有分析均在本地进行,代码绝不会离开你的设备。
适用场景
当用户提出以下要求时触发此技能:
- “verify agent”(主要调用方式)
- “verify my agent”
- “audit agent”
- “full verification”
- “verify my code”(检测到 Agent 模式时)
- “check compliance”
可用的验证模式
| 命令 | 技能 | 检查内容 |
|---|---|---|
| “verify agent” | 此技能 | 完整套件(以下所有检查) |
| “verify agent security” | verify-security | 密钥、依赖项、输入验证 |
| “verify agent patterns” | verify-patterns | 循环、重试、工具、上下文大小 |
| “verify agent quality” | verify-quality | 命名、组织、文档 |
| “verify agent language” | verify-language | 类型提示、惯用法、语言最佳实践 |
流程
第 1 步:发现上下文
扫描项目以识别:
-
主要语言:
- 检查
pyproject.toml、package.json、go.mod - 查看
src/或项目根目录中的文件扩展名
- 检查
-
Agent 框架(如有):
- 导入语句中出现
langgraph→ LangGraph - 导入语句中出现
crewai→ CrewAI - 导入语句中出现
autogen→ AutoGen - 导入语句中出现
langchain→ LangChain - 直接使用 SDK → 自定义 Agent
- 导入语句中出现
-
Kahuna 集成:
- 检查是否存在
.kahuna/目录 - 如果存在,读取
.kahuna/context-guide.md了解组织规范
- 检查是否存在
记录检测到的上下文以用于报告。
第 2 步:运行安全检查
加载 verify-security 技能并执行其流程。
此项检查包括:
- 硬编码的密钥和 API 密钥
- 依赖项版本固定
- 输入验证模式
- 错误消息暴露
- 安全默认设置
记录所有发现。
第 3 步:运行模式检查
加载 verify-patterns 技能并执行其流程。
此项检查包括:
- 循环安全性(终止条件)
- 重试次数限制
- 工具注册表一致性
- 上下文大小意识
- LangGraph 循环分析(如适用)
记录所有发现。
第 4 步:运行质量检查
加载 verify-quality 技能并执行其流程。
此项检查包括:
- 命名规范
- 代码组织
- 魔法数字/字符串
- 文档
- 错误处理模式
记录所有发现。
第 5 步:运行特定语言检查
根据检测到的语言,加载 verify-language 技能并执行其流程。
Python 检查:
- 公共函数的类型提示
- 文档字符串
- requirements 版本固定
- Python 惯用法
TypeScript/JavaScript 检查:
- 已启用严格模式
- 不使用
any类型 - async/await 错误处理
- Promise 处理
Go 检查:
- 不忽略错误
- 上下文传递
- 包结构
- Go 惯用法
记录所有发现。
第 6 步:汇总报告
将第 2 至第 5 步的所有发现汇总为统一的验证报告。
报告格式
# Agent Verification Report
**Project:** [project name or path]
**Date:** [current date]
**Mode:** [Kahuna-enhanced | Standalone]
**Language:** [Python | TypeScript | JavaScript | Go]
**Agent framework:** [LangGraph | CrewAI | AutoGen | LangChain | Custom | None]
**Files analyzed:** [count]
## Summary
✅ X checks passed | ⚠️ Y warnings | ❌ Z issues
### By Category
| Category | Pass | Warn | Issue |
|----------|------|------|-------|
| Security | X | X | X |
| Patterns | X | X | X |
| Quality | X | X | X |
| Language | X | X | X |
## Security
*(Summary from verify-security)*
- [x] No hardcoded secrets
- [x] Dependencies pinned
- [ ] ⚠️ [finding]
- [ ] ❌ [finding]
## Agent Patterns
*(Summary from verify-patterns — include only if agent detected)*
### Loop Safety
- [x] All loops have termination conditions
- [ ] ⚠️ Potential unbounded loop at `[file:line]`
### Retry Limits
- [x] All retry mechanisms have explicit limits
- [ ] ❌ Missing retry limit at `[file:line]`
### Tool Consistency
- [x] Tool registry found: X tools defined
- [ ] ❌ Hallucinated tool reference at `[file:line]`
- [ ] ⚠️ Undocumented tool: `[name]`
### Context Size
- [x] System prompt within limits (~X tokens)
- [ ] ⚠️ System prompt exceeds recommended size
## Quality
*(Summary from verify-quality)*
- [x] Naming conventions consistent
- [x] Code well-organized
- [ ] ⚠️ [finding]
## Language ([Python/TypeScript/Go])
*(Summary from verify-language)*
- [x] Type safety enforced
- [ ] ⚠️ [finding]
- [ ] ❌ [finding]
## Detailed Findings
> `[P]` = pattern-matched (structurally reliable) · `[H]` = heuristic (best-effort judgment)
### ✅ Passing
- `[P]` No hardcoded secrets or API keys
- `[P]` All retry decorators have stop conditions
- `[H]` Code organization follows best practices
### ⚠️ Warnings
- `[P|H]` [Check name]: [Description]
- **Location:** [file:line]
- **Category:** [Security | Patterns | Quality | Language]
- **Suggestion:** [How to address]
### ❌ Issues
- `[P|H]` [Check name]: [Description]
- **Location:** [file:line]
- **Category:** [Security | Patterns | Quality | Language]
- **Rule:** [Which rule this violates]
- **Fix:** [Specific remediation steps]
## Recommendations
1. **[Highest priority]** - [Specific action]
2. **[Second priority]** - [Specific action]
3. [Additional improvements]
---
*Report generated by Agent Verifier v1.0.0*
第 7 步:导出报告(可选)
展示报告后,询问用户:
你想将此验证报告保存到文件吗?
如果用户确认:
-
如果报告目录不存在,则创建该目录:
mkdir -p reports/verification -
使用当前日期和时间生成文件名(不得使用占位符):
- 从环境上下文中获取实际的当前时间戳
- 格式:
reports/verification/{date}_{time}.md - 日期格式:
YYYY-MM-DD(例如:2026-03-17) - 时间格式:
HH-MM-SS(例如:上午 8:15:42 对应08-15-42)
**重要:**使用真实的当前时间,不要使用零或占位符。检查系统上下文中的“Current Time”信息。
**示例:**如果当前时间为 PST 时区的 2026 年 3 月 17 日凌晨 1:05:30,文件名应为:
reports/verification/2026-03-17_01-05-30.md -
将完整报告保存到该文件。
检查规则层级
在所有验证步骤中,保持规则层级一致:
[PATTERN]检查 — 严格按照原文执行。规则说“标记 X” → 就标记 X。不作判断。[HEURISTIC]检查 — 结合判断执行。明确用[H]标记发现的问题。
在报告中为每项发现标注 [P] 或 [H],让读者了解其置信度。
备注
- 隐私优先: 所有代码分析都在本地进行。不会向外部服务发送任何内容。
- Kahuna 是增强项,而非必需项: 此技能可通过内置规则独立运行。Kahuna 可添加组织专属知识。
- 明确具体: 报告问题时,注明文件名和行号。
- 解释“原因”: 帮助开发者理解每条规则为何重要。
- 遵循现有配置: 尊重项目已有的 lint 规则、
.editorconfig等配置。