Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问许可证需确认审计通过

typescript-refactoringTypeScript refactoring 搜索

Agent Skill

typescript-refactoring 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

329

周安装

14

GitHub Stars

公开资料未说明

下载量

115
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:typescript-refactoring(TypeScript refactoring 搜索)
来源仓库:https://github.com/caidanw/skills
仓库路径:skills/typescript-refactoring
安装命令:
npx skills add https://github.com/caidanw/skills --skill typescript-refactoring
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/caidanw/skills --skill typescript-refactoring

简介

typescript-refactoring 提供信息检索与筛选能力,支持基于关键词快速定位相关内容。

  • 适合在开发过程中查找技术方案、代码模式或参考资料时使用。
  • 通过 GitHub 仓库安装,使用标准 npx skills add 命令即可集成。
  • 使用前应核实仓库维护状态及是否涉及敏感数据访问权限。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

TypeScript Refactoring

Refactoring is changing structure without changing behavior. Assess before changing. Small steps, verified continuously. The typescript skill defines what good TypeScript looks like — this skill defines how to get there from messy code.

1. The Iron Rules

These are non-negotiable. Violating them turns refactoring into "changing stuff and hoping."

  1. Never change behavior and structure in the same commit. Refactoring commits change structure only. Feature commits change behavior only. Mixing them makes rollback impossible and code review meaningless.
  2. Never refactor without tests. If tests don't exist, write characterization tests first — tests that capture current behavior, even if that behavior is wrong. Fix the behavior later, separately.
  3. One smell at a time, codebase-wide. Fix all any types, then all long functions, then all enums. Don't fix everything in one file — fix one thing across all files. This produces consistent, reviewable diffs.
  4. Every step must be independently verifiable. Tests pass after each commit. If a refactoring breaks tests, it's too big — break it into smaller steps.
  5. Prefer boring, obvious transformations. Rename a variable. Extract a function. Inline a pointless wrapper. These are safe, reviewable, and reversible. Clever restructuring is risky.

2. Assessment: Read Before You Cut

Before changing anything, understand what you have. Present findings to the user before starting work.

Run the basics:

# Does it build? Does it pass?
npm run build
npm test

# What's the shape of the codebase?
find src -name '*.ts' -o -name '*.tsx' | wc -l          # file count
find src -name '*.ts' -o -name '*.tsx' -exec wc -l {} + # line counts

Identify the hot paths — code that changes most often has the highest refactoring ROI:

# Most frequently changed files in the last 6 months
git log --since="6 months ago" --pretty=format: --name-only -- '*.ts' '*.tsx' \
  | sort | uniq -c | sort -rn | head -20

Categorize what you find:

  • Read entry points and trace the dependency graph
  • Note the biggest files, deepest nesting, widest functions
  • Scan for any, enum, namespace, barrel files, dead code
  • Check tsconfig strictness settings — are strict, noUncheckedIndexedAccess enabled?
  • Look at test coverage — which areas are safe to touch?

Present your assessment:

## Assessment Summary
- X files, Y total lines
- Build: passing/failing
- Tests: X passing, Y failing, Z% coverage
- Strictness: strict=true/false, noUncheckedIndexedAccess=true/false
- Top smells: [list with counts]
- Hot paths: [most-changed files]
- Recommended priority: [what to fix first and why]
- Estimated scope: [1-hour cleanup / multi-day migration / needs discussion]

3. Priority Order

Fix in this order. Each level makes the next level easier and safer.

Level 1: Type Safety

Eliminate any, add missing return types, enable strict flags. This is the highest-leverage change — the compiler catches bugs for you after this.

Level 2: Dead Code

Remove unused imports, exports, unreachable branches, commented-out code. Less code = less to read, less to maintain, fewer false signals for AI agents.

Level 3: Naming

Rename unclear variables, functions, and files to reveal intent. This is the single biggest readability win. datauserProfile, resapiResponse, handlehandlePaymentWebhook.

Level 4: Structure

Extract functions from long bodies. Split God files. Flatten deep nesting with early returns and guard clauses. Target: functions under 20 lines, files under 300 lines, nesting under 3 levels.

Level 5: Patterns

Migrate anti-patterns to modern TypeScript: enums → union types, classes → factory functions (where appropriate), boolean soup → discriminated unions, barrel file chains → direct imports.

Level 6: API Boundaries

Add branded types, parse at boundaries, tighten function signatures. This is the final polish — making the type system enforce domain rules.

For specific smells and how to detect them, see references/smell-catalog.md. For step-by-step transformation recipes, see references/transformation-playbook.md.

4. Safe Transformation Workflow

For each refactoring, follow this loop:

1. Verify tests pass                    (baseline)
2. Make ONE structural change           (extract, rename, move, inline)
3. Verify tests still pass              (behavior preserved)
4. Commit with descriptive message      (checkpoint)
5. Repeat

For risky changes, use the strangler fig pattern:

  1. Create new implementation alongside old
  2. Route one caller to the new implementation
  3. Verify behavior matches
  4. Migrate remaining callers incrementally
  5. Delete old implementation when all callers migrated

For large migrations (e.g., enabling strict: true on a non-strict codebase):

  1. Enable the flag
  2. Fix errors file-by-file, starting with leaf modules (no dependents)
  3. Work inward toward the core
  4. Commit after each file or small group of files

Commit messages during refactoring:

refactor: rename UserData → UserProfile across auth module
refactor: extract calculateDiscount from processOrder
refactor: eliminate any in api/client.ts
refactor: migrate Status enum to union type
chore: remove 12 unused imports in src/utils/

5. What Makes Code AI-Friendly

AI agents read code to understand it, then generate new code that fits. These patterns directly improve both capabilities:

Explicit types reduce guessing. When a function has ): Promise<User | null>, the AI knows exactly what it returns. Without it, the AI must infer — and may infer wrong.

Descriptive names communicate intent. AI agents infer purpose from names more than humans realize. getUserById tells the AI everything. get tells it nothing. Rename aggressively.

Small functions fit in context windows. AI agents have limited context. A 200-line function forces the AI to hold all of it in memory. Five 20-line functions let the AI focus on the relevant one.

Flat control flow is easier to trace. Deeply nested if/else/try/catch blocks confuse AI agents the same way they confuse humans. Early returns, guard clauses, and extracted conditions keep the happy path obvious.

Consistent patterns teach by example. If every API handler follows the same shape — validate input, call service, return response — the AI learns the pattern and replicates it correctly. Inconsistency forces the AI to guess which pattern to follow.

Types replace comments. A type like EmailAddress (branded type) or AsyncState<T> (discriminated union) communicates more than any comment. Types are verified by the compiler; comments rot.

Strict tsconfig catches AI mistakes. Enable strict: true and noUncheckedIndexedAccess: true. These flags catch the most common AI-generated bugs: unsafe index access, missing null checks, implicit any.

Colocated code reduces jumping. When types, utilities, and components live in the same directory, AI agents find them faster. Scattered code across distant directories increases the chance the AI misses context.

6. What NOT to Do While Refactoring

  • Don't "big bang" rewrite. It always takes 3x longer, loses domain knowledge, and can't be deployed incrementally. Use strangler fig instead.
  • Don't abstract prematurely. Wait for the 3rd use case before extracting a shared abstraction. Two similar functions are fine — a wrong abstraction is worse than duplication (AHA principle).
  • Don't refactor and add features simultaneously. Separate commits, separate PRs if possible. Mixed diffs are unreviewable.
  • Don't "improve" code you're not asked to touch. Scope creep during refactoring creates unexpected breakage. Fix what's in scope, note what's out of scope.
  • Don't optimize performance without measurements. Refactoring for readability is always justified. Refactoring for performance requires profiling evidence.
  • Don't fight the existing architecture. If the codebase uses classes everywhere, don't convert everything to factories in one pass. Propose a migration plan and get buy-in first.

Companion Skills

  • typescript — the target state. What good TypeScript looks like. Reference this for specific patterns (discriminated unions, branded types, factory functions, etc.)
  • karpathy-guidelines — behavioral constraints. Think before coding, simplicity first, surgical changes, goal-driven execution.
  • agent-first-repo — repo-level improvements. AGENTS.md, ARCHITECTURE.md, documentation structure, mechanical enforcement of architecture.
  • systematic-debugging — when refactoring reveals bugs. Follow root-cause investigation, don't patch symptoms.

For the full smell catalog, see references/smell-catalog.md. For step-by-step transformation recipes, see references/transformation-playbook.md.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

36.6%
按下载量换算42

Claude

30.4%
按下载量换算35

Cursor

16.07%
按下载量换算18

Gemini CLI

9.42%
按下载量换算11

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills