sc-principles 是一个强制性代码原则校验技能,基于 AST 分析在提交或实现阶段拦截违规,主要围绕四项原则:KISS(保持简单)、Functional Core/Imperative Shell(业务逻辑纯净、I/O 置于边缘)、SOLID(单一职责、开闭、里氏替换、接口隔离、依赖倒置)以及 Let It Crash(快速失败、边界处显式处理错误)。
主要能力:KISS 门检测圈复杂度(>10 报错,>7 警告)、认知复杂度(>15 报错)、函数长度(>50 行报错)、嵌套深度(>4 报错)与参数数量(>5 警告);纯净性门按路径区分核心层与外壳层,检测文件 I/O、网络、数据库、子进程、全局状态、副作用与异步 I/O,核心层违反报错、外壳层警告;SOLID 门检测文件超 300 行、类公共方法超 5 个、if/elif 类型链、抛 NotImplementedError 的覆写、过胖接口与业务逻辑中直接实例化;Let It Crash 门检测裸 except、静默 pass、吞异常与嵌套 try/except。
使用方式:完整校验用 /sc:principles src/;可加 --kiss-only、--purity-only、--solid-only、--crash-only 单独运行;--strict 令警告变为错误;--report 生成详细报告;支持 --threshold、--max-cognitive、--max-lines、--max-depth、--max-params 等阈值参数,以及 --pre-commit、--inline、--json 集成标志。退出码 0 通过、2 违规阻断、3 校验错误。校验脚本位于 scripts/ 目录,如 python .claude/skills/sc-principles/scripts/validate_kiss.py --scope-root . --threshold 10 --max-lines 50 --json。
适用场景:在 pre-commit 钩子、实现过程或代码分析中自动执行原则合规检查,并配合重构建议(提取方法、守卫子句、策略模式、依赖注入、仓储模式等)。限制:面向 Python 文件、基于 AST 与路径规则,未提供的其他语言支持、价格或平台信息暂未提供。