一键导入
coding-philosophy-cce
// 编程哲学与决策框架。当需要写新功能、改bug、重构代码、审查代码、或做架构决策时,使用此技能。包含开发(熵增)和审查(熵减)两套思维。从第一性原理推理,核心问题永远是「收益是否大于副作用」。
// 编程哲学与决策框架。当需要写新功能、改bug、重构代码、审查代码、或做架构决策时,使用此技能。包含开发(熵增)和审查(熵减)两套思维。从第一性原理推理,核心问题永远是「收益是否大于副作用」。
Skill 管理与市场导航。当需要安装、搜索、删除、备份 skills,查找新技能,管理上下文预算,或用户询问「有什么好用的skill」「怎么装skill」「skill太多了怎么办」时,必须使用此技能。核心纪律:工具箱不是仓库。
网络搜索策略。当需要搜索网络信息、查询最新资料、查找技术文档、或选择搜索工具时,必须使用此技能。定义了多层搜索工具优先级链,同层并发、失败即降级。
网页内容提取策略。当需要读取网页内容、爬取页面、提取文章正文、处理JS渲染页面、或绕过反爬限制时,必须使用此技能。三层工具选择:WebFetch(内置)→ Crawl4AI(JS渲染/反爬)→ 原生 Playwright(兜底降级)。
工具可用性追踪系统。当需要调用任何外部工具、查询工具状态、记录工具调用结果、或判断工具是否可用时,必须使用此技能。跨会话记住工具状态,避免每次盲试。
| name | coding-philosophy-cce |
| description | 编程哲学与决策框架。当需要写新功能、改bug、重构代码、审查代码、或做架构决策时,使用此技能。包含开发(熵增)和审查(熵减)两套思维。从第一性原理推理,核心问题永远是「收益是否大于副作用」。 |
来自 cc-enhance。
-cce后缀表示此技能由 cc-enhance 项目安装,避免与本地同名技能冲突。
代码有两种运动方向。写新代码是熵增——向系统添加新东西。审代码是熵减——在添加之前阻止劣质增量,在添加之后清理冗余。
两者共享一个根基:收益必须大于副作用。
写新代码的核心张力:每行代码都是负债。它今天解决问题,明天就要被维护、理解、调试。
| 做 | 不做 |
|---|---|
| 从第一性原理推理 | 盲目跟随惯例 |
| 陈述假设和权衡 | 默默选择一种理解 |
| 三行相似代码放原地 | 为一个用途建抽象 |
| 匹配已有代码风格 | 沿途「顺手」重构 |
| 一致地修改全局模式 | 只修一个实例制造不一致 |
| 验证完再声称完成 | 假装运行过 |
代码审查的核心张力:不是所有问题都值得修。每次修改都有引入 bug、破坏一致性、让代码变复杂的风险。
useCallback、和另一个函数完全相同签名的函数体)| 原则 | 说明 |
|---|---|
| 显式 > 短 | 一组相似函数共享平凡结构,不值得用工厂函数包装。可见的重复好于不可见的意图 |
| 语义重复 ≠ 机械重复 | 两层有相同字段但属于不同契约——这是隔离,不是浪费 |
| 不要为假想的未来设计 | 没有辅助函数、抽象层、配置开关,除非现在就有第二个调用方 |
| 修复规模和问题规模匹配 | 两行 bug 不值得重构整个模块。测试标准:只修问题本身,下一个人还能理解吗?能→补丁,不能→重构 |
| 遵循已有模式,要么全改 | 有问题模式要么是项目级惯例要么是项目级问题。没造成实际 bug 别碰,造成了单独一个 commit 全改 |
结构:Summary → Critical(bug/安全/破坏性)→ Improvements → Nitpicks → Conclusion(Approve / Request Changes)
并行读,顺序写。审查时并行读所有文件收集发现。修复时顺序写——两个 agent 同时编辑同一文件会静默覆盖。
更详细的示例和论证:
| 依赖 | 用途 | 安装方式 | 磁盘 | 必需 |
|---|---|---|---|---|
| 无 | — | — | — | — |