本文へ移動
cccskills
無料GitHub で公開

fec-refactoring

用于在不改变可观察行为的前提下重组既有前端代码,包括职责提炼、模块搬移、条件逻辑简化、API 整理和数据组织。不要用于新增功能、改变行为的缺陷修复、依赖或框架迁移,以及已经证实的死代码清理。

インストール方法を見る

含まれるファイル(5)

  • SKILL.md4.4 KB
  • references/principles.md2.3 KB
  • references/refactoring-vs-feature-change.md1.2 KB
  • references/when-to-refactor.md1.0 KB
  • references/workflow.md2.0 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

技能:保持行为的重构

用途

以小步、可验证、可回滚的方式重组仍在使用的前端代码,同时保持用户、调用方、测试、路由和集成能够观察到的行为不变。

核心契约

每次执行都遵守以下规则:

  1. 行为保持:纯重构只改变内部结构,不主动改变可观察行为。
  2. 修改前基线:编辑前先记录当前可用验证结果。
  3. 一次只做一个主要重构:每一步只有一个主要结构意图。
  4. 每一步都验证:完成一步后立即运行最小但有效的验证。
  5. 先回滚当前步骤,再讨论修复:若当前步骤引入回归,先恢复到上一步,再缩小或重排方案。
  6. 重构与功能修改分离:新增行为或改变行为的缺陷修复不属于纯重构。
  7. 优先最小安全重构:有局部、可逆方案时,不直接扩大为架构重写。
  8. 遵守差异预算:实际修改范围明显超出计划时必须停止并重新评估。

纯重构采用 GREEN → REFACTOR → GREEN,不为了形式上的 TDD 人为制造失败行为测试。

流程

  1. 分类请求,确认目标是结构调整且要求行为保持。
  2. 读取项目配置、受影响模块、公开导出、路由、状态边界、测试和当前 diff。
  3. 记录相关可观察契约:输入、输出、异常、副作用、UI 状态、事件、网络请求、状态迁移、路由和公开 API。
  4. 建立修改前基线;既有失败要单独记录,不能算到后续重构头上。
  5. 基于证据诊断结构问题,并检查可能的误判。
  6. 建立安全网:优先复用已有测试,风险较高且覆盖不足时再补当前行为的特征测试。
  7. 把方案拆成有顺序的小步,每步记录手法、原因、前置条件、风险、差异预算、验证和回滚边界。
  8. 每次只执行一个主要结构变换,不夹带无关清理、格式化和重新设计。
  9. 立即验证,并比较实际修改范围与差异预算。
  10. 若出现新回归,先回滚当前步骤,确认基线恢复,再缩小或调整顺序。
  11. 最后按需要运行类型检查、测试、构建、E2E、无障碍或其他专项门禁。
  12. 根据证据给出 PASS、PARTIAL 或 NOT PROVEN,不夸大验证强度。

风险分级

风险常见范围默认动作
SAFE局部私有代码、契约稳定、容易回滚可执行,并逐步验证
CAUTION跨模块、共享状态、导入、Hook/Composable、生命周期安全证据充分时执行,否则先规划
DANGER公开 API、路由、持久化、网络契约、认证、SSR/水合、大范围状态或继承改造默认先规划并停止等待明确授权

风险由上下文决定,不能只凭手法名称判定安全级别。

差异预算

每个可执行步骤先写清:

预期文件数:N
预期函数/组件数:N
预期公开 API 变化:0
预期行为变化:0

如果实际 diff 明显超出预算,停止并重新评估,不能静默扩大成重新设计。

参考资料

约束

  • 不修改测试来接受被重构意外改变的业务行为。
  • 未有充分证据时,不把认证、权限、路由、持久化、协议或公开包契约变化标为 SAFE。
  • 当前步骤出现新失败后,不继续叠加结构修改。
  • 项目没有测试框架时,不自动安装新框架。
  • 行数、复杂度、注释、一个 switch 或链式调用都不能单独证明存在坏味道。
  • 默认不执行远程 Git 写入。

预期输出

输出带证据、风险、差异预算、逐步验证和必要回滚记录的重构方案或实现,并给出 PASS、PARTIAL 或 NOT PROVEN 的行为保持结论。

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

用于审查或改进前端无障碍、语义结构、键盘支持、焦点管理、ARIA 标签、屏幕阅读器行为、WCAG 2.2 问题、触控无障碍或辅助技术回归;中文触发词包括 无障碍、accessibility、a11y、WCAG、屏幕阅读器。

日本語の概要は準備中です。原文の説明を表示しています。

bovinphang/frontend-craft222026年9月26日 更新

Use when reviewing or improving frontend accessibility, semantic structure, keyboard support, focus management, ARIA labels, screen reader behavior, WCAG 2.2 issues, touch accessibility, or assistive-technology regressions; Chinese triggers include accessibility, accessibility, a11y, WCAG, screen reader.

日本語の概要は準備中です。原文の説明を表示しています。

bovinphang/frontend-craft222026年9月26日 更新

用于从参考系统中吸收想法、能力、工作流、架构、质量体系、生态扩展或工程实践,并通过原创的项目内重设计转化为当前项目能力,而不是复制原实现。

日本語の概要は準備中です。原文の説明を表示しています。

bovinphang/frontend-craft222026年9月26日 更新

Use when absorbing ideas, capabilities, workflows, architecture, quality systems, ecosystem extensions, or engineering practices from any reference system into the current project through original, project-native redesign rather than copying.

日本語の概要は準備中です。原文の説明を表示しています。

bovinphang/frontend-craft222026年9月26日 更新

Use when designing, implementing, or reviewing frontend-to-backend API integration, typed API clients, REST/tRPC/OpenAPI client choices, auth refresh, API error mapping, upload flows, SSE/WebSocket/polling choices, CORS-facing frontend behavior, or cross-boundary loading/error states. Do not use for backend-only service architecture or TanStack Query cache policy alone; Chinese triggers include API integration, front-end and back-end joint debugging, typed API client, Interface error handling, SSE, WebSocket.

日本語の概要は準備中です。原文の説明を表示しています。

bovinphang/frontend-craft222026年9月26日 更新

用于设计、实现或审查前后端 API 集成、类型化 API client、REST/tRPC/OpenAPI 客户端选型、认证刷新、API 错误映射、上传流程、SSE/WebSocket/轮询选择、CORS 相关前端行为或跨边界 loading/error 状态。不要用于纯后端服务架构或仅 TanStack Query 缓存策略;中文触发词包括 API 集成、前后端联调、typed API client、接口错误处理、SSE、WebSocket。

日本語の概要は準備中です。原文の説明を表示しています。

bovinphang/frontend-craft222026年9月26日 更新

bovinphang のスキルをすべて見る

このスキルの問題を報告する