需先全局安装aionclaw cli并验证版本,再初始化生成.aionclaw.yml配置文件,确保languages包含项目语言且typescript启用类型感知;扫描时可基础运行、指定路径/规则集或强制重扫,问题定位需结合行号与上下文,导出json报告需额外配置context_lines。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

用AionClaw检查代码中的潜在问题,需先确保项目已正确初始化并安装对应语言插件,否则扫描会跳过源文件或报“no supported files found”错误。
安装AionClaw CLI工具
在终端中执行 npm install -g aionclaw-cli 安装全局命令行工具。这一步必须完成,否则后续所有扫描命令都会提示 【command not found: aionclaw】。
安装完成后运行 aionclaw --version 验证是否输出版本号(如 v2.4.1),若无响应请检查 Node.js 版本是否 ≥18.17.0——旧版本会导致二进制文件加载失败。
初始化项目配置
进入目标代码根目录,执行 aionclaw init 生成 .aionclaw.yml 配置文件。该文件决定扫描范围、规则启用状态和语言解析器行为。
打开生成的 YAML 文件,确认 languages 列表包含当前项目所用语言(如 python、javascript、go),漏写会导致对应文件被完全忽略;若项目含 TypeScript,还需额外设置 typescript: true 启用类型感知分析。
运行本地静态扫描
方法一:基础扫描
执行 aionclaw scan,工具自动读取 .aionclaw.yml 并遍历 src/、lib/、app/ 等默认路径下的支持文件。
方法二:指定路径与规则集
若只检查后端模块,运行 aionclaw scan --path ./server --ruleset security-high。注意 【--ruleset 参数值必须存在于配置文件的 rulesets 下,否则静默降级为 default 规则集】。
方法三:跳过缓存强制重扫
当修改了自定义规则但扫描结果未更新时,加 --no-cache 参数:aionclaw scan --no-cache。这会清空临时 AST 缓存并重新解析全部文件,耗时增加约 40%,但能暴露被缓存掩盖的问题。
查看并定位问题详情
扫描完成后,终端直接输出带颜色标记的问题列表,每行格式为:[SEV] file.py:23:5 — Unsafe eval() usage (CWE-95)。
复制该行中的文件路径与行号,在编辑器中打开对应位置,问题通常出现在高亮行及其前一行内。例如 eval(input()) 被标为严重风险,而真正触发点是 input() 返回的字符串未经校验就传入 eval——修复时不能只删 eval,必须替换为 json.loads() 或白名单解析逻辑。
若需导出完整报告供团队审查,追加 --format json --output report.json,生成结构化数据。该 JSON 文件可被 CI 流水线解析,但注意 【report.json 默认不包含源码上下文,需额外启用 context_lines: 2 配置项才写入前后两行代码】。











