somemememe/audithound

GitHub: somemememe/audithound

AuditHound 是一款 AI 驱动的 DeFi 智能合约自动化漏洞审计工具,通过多 agent 并行分析与收敛循环机制实现持续迭代的漏洞发现与利用生成。

Stars: 0 | Forks: 0

# AuditHound v2 - `code_map.md` - 并行 agent 审计 - `merge + review` - `findings_acc.json` - 连续两轮无新增 finding 收敛 ## CLI python3 AuditHoundV2/scripts/audithound.py run 常用参数: python3 AuditHoundV2/scripts/audithound.py run \ --agent codex \ --model gpt-5.4 \ --reasoning-effort medium \ --max-rounds 3 \ --converge-after 2 \ --workers 2 恢复一个被中断的 run: python3 AuditHoundV2/scripts/audithound.py run \ --output-dir AuditHoundV2/output/ \ --resume 排除某些目录不作为直接审计目标,但保留为上下文: python3 AuditHoundV2/scripts/audithound.py run \ --exclude interfaces/** \ --workers 2 只审计某些目录(白名单): python3 AuditHoundV2/scripts/audithound.py run \ --include LayerZero/** \ --exclude interfaces/** \ --workers 2 也可以直接喂一个 materialized EVMbench case 目录或 `manifest.json`: python3 AuditHoundV2/scripts/audithound.py run \ evmbench/frontier-evals/project/evmbench/materialized_cases/2024-03-abracadabra-money 使用 OpenCode: python3 AuditHoundV2/scripts/audithound.py run majeur/src \ --agent opencode \ --model opencode/minimax-m2.5-free \ --workers 2 当前默认: - agent: `codex` - merge mode: `codex` - map: 自动生成 `code_map.md` - workers: 默认 `1`,可改成 `2` 或更多并行 `codex` - model: `gpt-5.4` - `model_reasoning_effort`: `medium` 当 `--agent opencode` 时: - 默认模型切到 `opencode/minimax-m2.5-free` - agent 侧会自动使用 worker-local `.opencode_xdg/`,避免全局数据库路径权限问题 - merge 仍然默认走 `codex` 当前 `merge` 会在目标源码目录中运行,而不是只在 round 目录里盲合并。 它会做: - dedup - consolidation / composite synthesis - 轻量 review(severity / confidence 调整) 每轮 `summary` 会生成 `round_summary.md`,并维护一个轻量的 `global_summary.md`。 后续 audit prompt 只提供该文件路径,作为可选历史记忆,不作为覆盖证明或强制执行计划。 可以通过 `--exclude` 或环境变量 `AUDITHOUND_EXCLUDE_GLOBS='["interfaces/**"]'` 把某些相对 target 的路径 glob 从直接审计 scope 中排除。被排除的文件仍可作为上下文读取,但不应作为独立 finding 的根因位置。 也可以通过 `--include` 或环境变量 `AUDITHOUND_INCLUDE_GLOBS='["LayerZero/**"]'` 限定直接审计 scope 只在白名单路径中。白名单外文件可读作上下文,但不应作为 finding 根因位置。 可以通过 `--resume` 在已有 `--output-dir` 上继续一个被中断的 run: - 复用已有 `code_map.md` 和 `findings_acc.json` - 从上次完成的下一轮继续,而不是从 round 1 重跑 - 未完成轮次留下的旧目录会先移动到 `round_N.resume_backup_/` - 若是老 run 没有 `loop_state.json`,会 best-effort 推断最后完成轮次,但连续空轮计数会重置 当前仍然不做外部 known-finding 过滤。 ## 兼容的旧入口 底层 runner 仍然保留: bash AuditHoundV2/scripts/run_convergence_loop.sh 但建议以后统一走 `audithound.py run ...`,参数更清楚。
标签:逆向工具