HaluCatch 捕幻

AI Skill 执行可靠性审计工具
在 AI 执行前,发现 Skill 里的隐患

v1.7.1 🐍 Python 📋 3 份报告 🌏 中英文 📦 零依赖 MIT 开源
⭐ GitHub 开源 📦 SkillHub 🦞 ClawHub

在线体验 HaluCatch

AI 创建/执行 Skill 时,这些坑你遇到过吗?

🗂️

硬编码路径

Skill 里写了 /Users/foo/...,换台机器就挂

🔀

分支缺失

正常流程写得很好,异常分支没写,AI 瞎编

🤔

模糊表述

"酌情处理"、"大概估算",AI 自由发挥空间太大

🛡️

无护栏

没写禁止操作,AI 可能执行危险指令

审计报告预览

同一份 Skill,三份视角 — 以下是 HaluCatch 审计自身的真实报告

📗 标准版
📊 专业版
🤖 AI 行动版

📗 标准版 — 用人话告诉你哪里有问题

以下是 HaluCatch 审计自身的真实报告(审计根目录 SKILL.md)


🔍 规则/方法论 — 用人话解释

这项检查在干什么?
检查 SKILL.md 的步骤是否清晰、是否有"如果出错了怎么办"的分支、输出格式是否明确、有没有给 AI 看示例。

结果:✅ 明确

  • ✅ 未检测到模糊词汇("大概"、"酌情"等)
  • ✅ 有异常分支处理
  • ✅ 声明了默认值/回退策略
  • 🟡 未检测到明确的数值边界约束 — 建议加上"误差小于 X"等具体边界
💡 怎么改:在 SKILL.md 的"规则"章节,补充数值边界,比如"差异超过 5% 时标记为异常"。

🛡️ 护栏 — 用人话解释

这项检查在干什么?
检查 Skill 有没有写"禁止做 X",以及 AI 执行完后有没有验证输出的步骤。

结果:🟢 到位

  • ✅ 明确了输出格式
  • ✅ 包含验证/自检步骤
  • ✅ 定义了错误处理/回退策略
  • ✅ 已声明数据时效性约束
  • ✅ 已声明前提假设
💡 状态:所有已知问题已修复,护栏完整。

📊 专业版 — 结构化评估结果

以下是 HaluCatch 审计自身的真实报告(审计根目录 SKILL.md)


📌 核心结论

✅ 自检全部通过,无阻塞项。所有已知高/中优先级问题已修复。

🎯 核心结论卡片

维度评级分数
🏗️ 地基🟢 稳固6/6
🤖 代码🟢 低风险0/7
📝 规则/方法论🟢 明确5/6
🛡️ 护栏🟢 到位8/8

🔍 审查发现

🏗️ 地基

  • ✅ 有固化 .py 脚本
  • ✅ 路径已参数化,无硬编码
  • ✅ 有 --validate 验证模式
  • ✅ 有输入验证/列名校验

🤖 代码

  • ✅ [异常处理] 已修复:裸 except: pass → except Exception
  • ✅ [除零风险] 已修复:除法前添加 max(total, 1) 保护
  • ✅ [静默覆盖] 已修复:报告文件名含版本号/时间戳,冲突时自动加序号
  • ✅ [模块拆分] 已修复:1191 行单文件拆分为 11 个模块,单文件 ≤270 行

🛡️ 护栏

  • ✅ 明确了输出格式
  • ✅ 包含验证/自检步骤
  • ✅ 定义了错误处理/回退策略
  • ✅ 已声明数据时效性约束
  • ✅ 已声明前提假设

本报告由 HaluCatch 生成。自检: ✅ 全部通过

🤖 AI 行动版 — 直接给 AI 的修复指令

以下是 HaluCatch 审计自身的真实报告(审计根目录 SKILL.md)


🛠️ 建议修复清单(按优先级排序)

优先级文件修改建议状态
~~🔴 高~~~~halucatch_core.py~~~~裸 except: pass → 改为 except Exception as e: 并打印日志~~✅ 已修复
~~🔴 高~~~~halucatch_core.py~~~~[除零风险] 除法前检查分母是否为 0~~✅ 已修复
~~🟠 中~~~~halucatch_core.py~~~~[静默覆盖] 写文件前检查是否存在,或用追加模式~~✅ 已修复(版本号+防覆盖)
~~🟠 中~~~~SKILL.md~~~~声明数据时效性约束(如"数据不超过 7 天")~~✅ 已修复
~~🟠 中~~~~SKILL.md~~~~声明前提假设(如"输入数据已去重")~~✅ 已修复

✅ 验证检查点(修复后自检)

  • ☑ 所有异常处理都打印了日志,没有裸 except: pass
  • ☑ 所有除法操作前有分母为零的检查
  • ☑ 报告文件名含版本号或时间戳,冲突时自动加序号
  • ☑ SKILL.md 有"数据要求"章节(时效性 + 前提假设)
  • ☑ 未找到标准 SKILL.md 时,自动启发式匹配替代文件并报告规范性问题

📋 直接可用的提示词(发给 AI 执行修复)

当前 HaluCatch 自审未发现高/中优先级问题。如有新需求,请描述具体场景。

快速开始

1

安装

复制下方提示词发给 AI,即可安装 HaluCatch

🇨🇳 国内用户方案

为国内用户提供 SkillHub 安装提示词

中文环境 · 免费 · 开箱即用

国际用户方案

为国际用户提供 ClawHub 安装提示词

Global AI skill marketplace
2

审查目标 Skill

告诉 AI 你要审查哪个 Skill 或者你的 Skill 所在的文件夹路径

请用 HaluCatch 审查 /my-skill
HaluCatch
📁 扫描目录...
📝 发现 SKILL.md (120 行)
🐍 发现 core.py (45 行)
📊 开始四维评估...
审查完成。报告已保存在 reports/ 目录:
📗 标准版 — 用人话解释哪里有问题
📊 专业版 — 结构化检查清单
🤖 行动版 — 给 AI 的修复指令

接下来 AI 会做:

扫描目录
四维评估
生成报告
精准修复
3

阅读报告,决定下一步

三份报告分别面向不同角色,选择适合你的阅读

标准版

给业务 / 产品经理

用人话解释每个问题是什么、为什么重要、怎么改

专业版

给工程师 / 开发者

结构化检查清单,每个维度打分,精确到文件和行号

AI 行动版

给 AI(告知 AI 读取即可)

修复清单 + 验证检查点,AI 按步骤执行即可

💡 如果决定修复:告知 AI 读取行动版报告并执行,它会按清单逐项修复。修复后重新审查,确认问题清零。

1

克隆仓库

git clone https://github.com/CoderMoray/HaluCatch.git
cd HaluCatch
2

运行审查

# 自动检测语言(中文/英文)
python3 halucatch_core.py --skill-dir /path/to/your-skill

# 或强制英文输出
python3 halucatch_core.py --skill-dir /path/to/your-skill --lang en

# 或使用包方式
python3 -m halucatch --skill-dir /path/to/your-skill
3

查看报告

# 三份报告自动生成在 reports/ 目录
reports/HaluCatch-report-YYYY-MM-DD.md        # 专业版
reports/HaluCatch-report-YYYY-MM-DD-标准版.md  # 标准版
reports/HaluCatch-report-YYYY-MM-DD-行动版.md  # AI 行动版

Blogs

掘金

AI Skill 也会"说胡话"?我做了一个执行可靠性审查工具

介绍 HaluCatch 的设计思路、四维评估框架和实战案例

CCSDN

如何检查你的 AI Skill 是否可靠?HaluCatch 使用指南

从安装到实战的完整教程,零基础也能上手

FAQ

不需要。全程离线运行,仅扫描本地文件夹中的 SKILL.md 和 .py 文件,不会发起任何网络请求。

对 AI 说「请用 HaluCatch 审查 /path/to/skill」即可。AI 自动扫描、评估、生成三份报告到 reports/ 目录:

  1. 跑一次审查 → 看通俗版报告了解问题
  2. 打开 -行动版.md → 从第一条开始逐项修复
  3. 修复后重新跑 → 对比分数是否改善

可以。HaluCatch 会自动分类为「纯方法论型」并跳过地基/代码检查,只评估方法论结构和护栏完整度。

看同目录下的 HaluCatch-report-日期-行动版.md,它逐条列出了修复方案。按清单逐项改,改完后重新审查验证。

当前 7 条通用规则:裸 except: pass / 浮点比较 (== 0.0) / 除零风险 / 硬编码阈值 / 路径拼接 / 静默覆盖 / 超时缺失。

当前版本暂不支持批量模式。你可以逐个运行。批量功能已在 roadmap 中。

查看完整 FAQ →