安全扫描
OpenClaw
可疑
medium confidence该技能的代码与其声明的目的(自我诊断和自动修复)相符,但执行强大的文件系统和 shell 操作(npm 安装、chmod、文件创建、exec/spawn),这些操作由解析的错误文本驱动。如果错误消息或运行时工作空间不可信任,这可能会被滥用。
评估建议
该技能如其所言(自我诊断和自动修复),但基于解析的错误消息执行文件系统写入、chmod 和 shell 命令(包括 npm install)。在安装或使用之前:(1)审查完整源代码(包括未显示的辅助函数)以确认输入验证和清洗;(2)在处理不可信输入的环境中禁用自动修复,优先使用通知钩子和手动确认;(3)在沙箱或最低权限容器中运行模块,直到您验证它;(4)考虑删除或禁用自动 npm 安装和任何 shell 执行,或者要求显式的人类批准修复;(5)如果需要更高的保证,请请求完整的源代码进行审查,以检查命令注入、远程端点或隐藏的网络调用。...详细分析 ▾
✓ 用途与能力
名称/描述(自省 + 自动修复)与交付的代码和 SKILL.md 一致:模块捕获全局错误,分析根源,写文件,修复权限,安装缺失的模块 —— 都是自动调试器的预期行为。
ℹ 指令范围
SKILL.md 指示导入和实例化模块,并列出功能(全局捕获、自动修复)。这与实现相符,但运行时行为具有广泛的副作用(注册进程级的 uncaughtException/unhandledRejection 处理程序并尝试自动修复),README 没有紧密约束这些行为(例如:自动修复运行时是否需要用户确认,或者它将作用于哪些路径/命令的限制)。
✓ 安装机制
这是一个仅有指令的技能,具有代码文件但没有安装规格 —— 在技能安装时间内,没有下载或安装任何内容。风险来自运行时操作(代码在修复时调用 shell 命令和 npm install)。
⚠ 凭证需求
该技能不请求环境变量,这是合适的,但它执行从解析的错误消息派生的 shell 命令(例如,`chmod +x "${filePath}"`,`npm install ${moduleName}`)。如果错误消息或工作空间内容由攻击者控制,这些操作可能导致命令注入、任意包安装或不想要的文件系统更改。提供的代码片段中没有可见的声明限制或清洗。
ℹ 持久化与权限
always:false 和 user-invocable:true —— 正常。然而,该技能在实例化时注册全局进程处理程序,因此仅仅要求/构造它将改变整个进程的行为;这与其目的一致,但重要的是要了解这一点。
安装前注意事项
- 审查完整源代码(包括未显示的辅助函数)以确认输入验证和清洗;
- 在处理不可信输入的环境中禁用自动修复,优先使用通知钩子和手动确认;
- 在沙箱或最低权限容器中运行模块,直到您验证它;
- 考虑删除或禁用自动 npm 安装和任何 shell 执行,或者要求显式的人类批准修复;
- 如果需要更高的保证,请请求完整的源代码进行审查,以检查命令注入、远程端点或隐藏的网络调用。
安全有层次,运行前请审查代码。
运行时依赖
无特殊依赖
版本
latestv1.1.02026/3/15
v1.1.0 优化:修复根因分析字段、增强调试日志、修复 installDependency 返回值、完善测试报告
● 可疑
安装命令 点击复制
官方npx clawhub@latest install introspection-debugger
镜像加速npx clawhub@latest install introspection-debugger --registry https://cn.clawhub-mirror.com
技能文档
让 AI Agent 具备自省和自我修复能力。
功能
| 功能 | 描述 |
|---|---|
| 全局错误捕获 | 自动拦截 uncaughtException 和 unhandledRejection |
| 根因分析 | 基于规则库匹配常见错误 (80%+) |
| 自动修复 | 自动创建文件、修复权限、安装依赖 |
| 报告生成 | 生成结构化自省报告 |
| 人类通知 | 无法修复时通知人类 |
支持的错误类型
- 文件缺失 (ENOENT)
- 权限错误 (EACCES)
- 模块缺失 (MODULE_NOT_FOUND)
- 连接超时 (ETIMEDOUT)
- 限流 (429)
- 服务器错误 (500-504)
- 内存溢出 (OOM)
- 进程被终止 (SIGKILL)
- 认证错误 (401/403)
使用方法
1. 引入模块
const IntrospectionDebugger = require('./introspection-debugger');
2. 创建实例
const debugger = new IntrospectionDebugger({
workspace: process.cwd(),
maxHistorySize: 100,
notificationHook: async (report) => {
// 通知人类
console.log('需要人工:', report.recommendation.message);
}
});
3. 手动捕获错误
try {
// 你的代码
} catch (e) {
debugger.catch(e, { source: 'my-code' });
}
4. 查看统计
console.log(debugger.getStats()); // { totalErrors: 10, totalFixes: 8, autoFixRate: 0.8 }
文件
introspection-debugger.js- 主框架代码reliable-api-client.js- API 客户端黄金标准
相关文档
INTROSPECTION_DEBUGGER.md- 详细使用文档EVOMAP_STANDARD.md- 胶囊发布规范
数据来源:ClawHub ↗ · 中文优化:龙虾技能库
OpenClaw 技能定制 / 插件定制 / 私有工作流定制
免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制