代码检查与验证
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/lint-and-validate。
技能介绍
问题
Agent 改完代码就标记「已完成」,但仓库里往往还留着 ESLint 报错、TypeScript 类型不匹配,或 Python 侧未跑 Ruff/Bandit。这类遗漏会在 CI 或 review 里才暴露,成本更高。
技能如何工作
技能把每次代码变更后的验证写成硬性规则:在工具报告无错误之前,不得结束任务或宣称完成。
Node.js / TypeScript 典型顺序:
- Lint / 修复:
npm run lint或npx eslint "path" --fix - 类型检查:
npx tsc --noEmit - 安全审计:
npm audit --audit-level=high
Python 典型顺序:
- Ruff:
ruff check "path" --fix - Bandit:
bandit -r "path" -ll - MyPy:
mypy "path"
质量循环是:编写/编辑 → 运行审计(例如 npm run lint && npx tsc --noEmit)→ 阅读「最终审计报告」→ 修复并重跑。Lint 失败先修样式/语法;tsc 失败先修类型。资料中还提到统一入口脚本 scripts/lint_runner.py 与类型覆盖率分析 scripts/type_coverage.py,适合在已有脚本的项目里接入同一套流程。
边界与注意
- 未配置工具时,应检查项目根是否存在
.eslintrc、tsconfig.json、pyproject.toml等,并建议补齐配置,而不是跳过检查。 - 技能描述的是多生态通用流程;具体用哪条命令以当前仓库的 package 脚本与约定为准。
- 严格规则: 未通过这些检查的代码不得提交或报告为「已完成」。
使用场景
- 用 Agent 改完 TypeScript 业务代码后,关任务前必须跑 `eslint --fix` 与 `npx tsc --noEmit`,确认无 lint 与类型错误。
- 重构或新增 Python 模块后,对目标目录执行 Ruff 自动修复、Bandit 中高风险扫描和 MyPy,再依据审计结果改到全绿。
- 多文件 feature 开发收尾时,按仓库约定跑 `npm run lint` 与类型检查,对照最终审计报告逐条修复后才可以提交。
- Node 项目变更依赖或锁文件后,除常规 lint 外还要跑 `npm audit --audit-level=high`,高危项未处理不得报告完成。
适合人员
- 维护 Node/TypeScript 应用的前端或全栈工程师,要求 Agent 每次改组件后必须通过 ESLint 与 tsc 才能结束任务。
- 负责 Python API 或脚本的后端同学,需要在改 handler 或工具模块后强制 Ruff、Bandit、MyPy 全通过再交付。
- CI 已配置 lint 与类型门控的技术负责人,希望对话里改代码与流水线使用同一套「无错误才完成」标准。
- 仓库已提供 `scripts/lint_runner.py` 的维护者,希望 Agent 优先走统一 lint 入口而不是跳过或随意选命令。