用途:在提交前对 OpenHarmony 代码做本地质量预检,作为门禁 CI 的尽力而为预过滤。
主要能力:门禁 CI 同类检查包括版权头(存在性、年份、注释风格)、C/C++ 格式(clang-format,优先 clang-format-14)、C/C++ 质量(CodeArts Check:codecheck-ide-engine 加华为 clang-tidy 的 clangtidy、secfinder、fixbot)。额外本地检查包括 Python(pylint、flake8)、Shell(shellcheck、bashate-mod-ds)、GN(gn format --dry-run)。
使用方式:手动调用 /oh-precommit-codecheck 检查指定文件并报告,加 --fix 自动修复最多 3 轮;也可由 oh-pr-workflow 或 pre-commit 钩子自动触发,静默检查并自动修复,仅在仍有缺陷时报告。检查脚本调用:bash ~/.claude/skills/oh-precommit-codecheck/scripts/check.sh <file1> <file2> ...。文件范围可由 git diff --cached --name-only、git diff-tree --no-commit-id -r <commit> --name-only 或直接列出文件确定。
限制:首次运行下载约 600MB CodeArts 工具到 ~/.codecheck-tools/;Python/Shell 检查器需预装;无 compile_commands.json 时 C/C++ 检查可能漏报约 30% 上下文相关问题;GN 格式检查需 gn 在 PATH。当前仅覆盖 C/C++、Python、Shell、GN,Java、JavaScript、TypeScript、ArkTS 尚未接入;C++ 规则约覆盖 163 条门禁 G.* 规则中的 114 条(约 70%);未覆盖敏感词、开源合规、安全专项、代码度量等。本地通过不保证门禁通过。部分规则(如函数过长、命名)不自动修复,需人工判断。