Skill 寫法圖鑑

tech-debt

Anthropic | 架構與重構 | 原文 | Apache-2.0

找出技術債、分類,並用公式排優先順序

中文翻譯

---
name: tech-debt
description: 找出、分類並排定技術債的優先順序。當使用者說「tech debt」「technical debt audit」「what should we refactor」「code health」,或問到程式碼品質、重構優先順序、維護 backlog 時觸發。
---

# 技術債管理

有系統地找出、分類並排定技術債的優先順序。

## 分類

| 類型 | 範例 | 風險 |
|------|----------|------|
| **程式碼債** | 重複的邏輯、爛抽象、魔術數字 | Bug、開發變慢 |
| **架構債** | 該拆的 monolith、選錯的資料儲存方案 | 擴展上限 |
| **測試債** | 覆蓋率低、flaky 測試、缺整合測試 | 回歸問題直接上線 |
| **相依套件債** | 過時的函式庫、沒人維護的相依套件 | 安全漏洞 |
| **文件債** | 缺 runbook、過期的 README、只存在老手腦袋裡的知識 | 新人上手痛苦 |
| **基礎設施債** | 手動 deploy、沒有監控、沒有 IaC | 事故、恢復很慢 |

## 排優先順序的框架

每個項目都用下面三項打分:
- **Impact(影響)**:它讓團隊慢了多少?(1-5)
- **Risk(風險)**:不修的話會發生什麼事?(1-5)
- **Effort(成本)**:修起來有多難?(1-5,反向計分,成本越低優先順序越高)

優先順序 = (Impact + Risk) x (6 - Effort)

## 輸出

產出一份排好優先順序的清單,每個項目附上預估成本和商業上的理由,再加一份可以和功能開發並行的分階段改善計畫。

英文原文

---
name: tech-debt
description: Identify, categorize, and prioritize technical debt. Trigger with "tech debt", "technical debt audit", "what should we refactor", "code health", or when the user asks about code quality, refactoring priorities, or maintenance backlog.
---

# Tech Debt Management

Systematically identify, categorize, and prioritize technical debt.

## Categories

| Type | Examples | Risk |
|------|----------|------|
| **Code debt** | Duplicated logic, poor abstractions, magic numbers | Bugs, slow development |
| **Architecture debt** | Monolith that should be split, wrong data store | Scaling limits |
| **Test debt** | Low coverage, flaky tests, missing integration tests | Regressions ship |
| **Dependency debt** | Outdated libraries, unmaintained dependencies | Security vulns |
| **Documentation debt** | Missing runbooks, outdated READMEs, tribal knowledge | Onboarding pain |
| **Infrastructure debt** | Manual deploys, no monitoring, no IaC | Incidents, slow recovery |

## Prioritization Framework

Score each item on:
- **Impact**: How much does it slow the team down? (1-5)
- **Risk**: What happens if we don't fix it? (1-5)
- **Effort**: How hard is the fix? (1-5, inverted — lower effort = higher priority)

Priority = (Impact + Risk) x (6 - Effort)

## Output

Produce a prioritized list with estimated effort, business justification for each item, and a phased remediation plan that can be done alongside feature work.