AI 寫程式的助手很強大。但它們沒有記憶。
Claude Code 會在凌晨兩點幫你修好一個 Docker SQLite WAL 損壞的 bug。你搞清楚了根本原因(不能直接 docker cp 從運行中的容器複製 SQLite 資料庫——你得先停止寫入,或者連 WAL 檔案一起複製)。修好了。部署了。繼續做事。
三天後,同一個專案,新的 session。Claude Code 完全不記得那次修復。同樣的 bug 模式又出現了。你又 debug 一次。
第三次遇到同樣的問題時,我不再修 bug 了——我開始建一個系統,讓這些 bug 不可能再發生。
解法:Skills = AI 的肌肉記憶
Claude Code 支援「skills」——當偵測到相關模式時自動載入的 markdown 檔案。把它想成 AI 助手的「組織記憶」。
每個 skill 記錄:
- 問題:什麼會出錯,出錯時長什麼樣
- 根本原因:為什麼會發生(不只是怎麼修)
- 修復方法:具體步驟、程式碼補丁、設定變更
- 觸發條件:Claude Code 什麼時候該自動套用這個知識
在日本鄉下的動物庇護所花了 7 個月打造一個生產級 API 平台(39 個服務、30+ 個 API),過程中碰到 200+ 個 production bug。我把其中不明顯的那些萃取成 112 個可重用的 skill。
分類總覽
Docker 與部署(12 個)
| Skill | 修什麼 |
|---|---|
docker-sqlite-wal-copy-trap |
從運行中容器複製 SQLite 造成資料損壞 |
docker-ghost-container-recovery |
容器名稱被佔用但容器不存在 |
docker-small-vps-deploy-optimization |
2GB VPS 上 docker build 觸發 OOM kill |
docker-static-asset-copy-gotcha |
靜態資源在容器內 404 但本機正常 |
docker-compose-force-recreate-caddy-loop |
force-recreate watchdog 導致無限重啟 |
資料庫與 SQLite(10 個)
| Skill | 修什麼 |
|---|---|
bun-sqlite-transaction-await-crash |
db.transaction() 內用 await 導致 production crash |
sqlite-check-constraint-migration |
擴展允許值時 CHECK constraint failed |
bun-sqlite-like-parameter-binding |
LIKE 查詢的參數綁定靜默失敗 |
json-to-sqlite-hybrid-migration |
從 JSON 檔案儲存安全遷移到 SQLite |
API 與後端(15 個)
| Skill | 修什麼 |
|---|---|
hono-subrouter-auth-isolation |
多個 Hono sub-router 共用路徑時的認證繞過 |
multi-provider-fallback-gateway |
單一供應商故障拖垮整個服務 |
api-security-audit-methodology |
30+ 個漏洞模式的系統化安全審查 |
hono-global-middleware-ordering |
全域 middleware 對 sub-route 靜默不執行 |
multi-layer-proxy-timeout-chain-debugging |
CDN → 反向代理 → 應用鏈路的 502/504 錯誤 |
AI 與 LLM(8 個)
| Skill | 修什麼 |
|---|---|
llm-api-cost-optimization |
Claude API 費用失控 |
ai-prompt-mastery |
AI 給出籠統回答而非專家級回應 |
api-tool-use-upgrade-pattern |
從手動 JSON 解析升級到正式 Tool Use |
llm-model-version-migration-2026 |
已棄用的模型版本字串導致 404 錯誤 |
前端與 UI(6 個)
| Skill | 修什麼 |
|---|---|
nextjs-common-patterns |
「params is a Promise」等 Next.js 13+ 常見坑 |
elderly-friendly-ssr-ui-optimization |
SSR 頁面對長輩/視力不佳用戶的友善化 |
template-literal-inline-js-escaping |
SSR 內嵌 script 的 JS 語法錯誤導致頁面靜默失敗 |
除錯與工作流(10 個)
| Skill | 修什麼 |
|---|---|
systematic-debug |
漫無目的的 debug 浪費數小時走錯方向 |
code-verification-loop |
沒有自動驗證就出貨 |
multi-agent-workflow-design |
判斷何時該用多 Agent vs 單 Agent |
audit-inflation-bias-prevention |
AI sub-agent 在審計報告中灌水假問題 |
安裝
一行指令:
curl -fsSL https://raw.githubusercontent.com/sstklen/washin-claude-skills/main/install.sh | bash
安裝完成後:
- Skill 庫會複製到
~/.claude/skills/ - 所有 Claude Code session 自動可用
- 不需要任何設定
驗證:
ls ~/.claude/skills/
# 應該看到 112 個 skill 資料夾
前後對比:真實案例
場景: 你在 Docker 裡部署 Bun + SQLite 應用,需要備份資料庫。
沒有 skill:
你跑 docker cp container:/app/data.db ./backup.db。成功了。但備份是靜默損壞的——SQLite 正在寫入,WAL 檔案沒有被複製。你不會發現這件事,直到緊急需要從備份還原時。2-4 小時的 debug。恐慌。
有 docker-sqlite-wal-copy-trap skill:
Claude Code 在你提到從容器複製 SQLite 的瞬間就辨識出這個模式。它立即警告你 WAL 陷阱,並提供正確做法:
# 先停止寫入,或複製全部三個檔案:
docker cp container:/app/data.db ./backup.db
docker cp container:/app/data.db-wal ./backup.db-wal
docker cp container:/app/data.db-shm ./backup.db-shm
幾秒鐘解決。不是幾小時。而且在任何專案中都不會再發生。
Skill 格式
每個 skill 的結構:
skill-name/
SKILL.md # skill 內容
真實 skill 長這樣(節錄):
---
name: docker-sqlite-wal-copy-trap
category: Docker & Deployment
trigger: "copying SQLite from Docker container"
---
# Fix: Docker SQLite WAL Copy Trap
## 問題
`docker cp container:/app/data.db ./backup.db` 會產出
靜默損壞的副本。沒有錯誤、沒有警告——就是少了最近的資料。
## 根本原因
SQLite 使用 WAL(Write-Ahead Log)。光有 .db 檔案是不完整的。
你必須同時複製 .db-wal 和 .db-shm,或者先做 checkpoint。
## 修復方法
方案 A — 複製全部三個檔案:
docker cp container:/app/data.db ./backup.db
docker cp container:/app/data.db-wal ./backup.db-wal
docker cp container:/app/data.db-shm ./backup.db-shm
方案 B — 先 checkpoint:
sqlite3 /app/data.db "PRAGMA wal_checkpoint(TRUNCATE);"
然後只複製 .db 檔案即可。
每個 skill 不超過 500 行。Claude Code 偵測到匹配模式時自動載入相關 skill。
Stack 適用性說明
這些 skill 大部分來自特定技術棧:Bun + Hono + SQLite + Docker on Linux VPS。如果你的 stack 跟我們一樣,幾乎全部適用。
不同 stack 也通用的部分:
- 除錯與工作流 skills(10 個)— 不限 stack 的問題解決模式
- AI 與 LLM skills(8 個)— 適用於任何 Claude Code 專案
- Docker skills(12 個)— 適用於任何容器化應用
- API 模式(15 個中大部分)— timeout 鏈、認證隔離、安全審計不限框架
Stack 特定的 skill(Bun SQLite 怪癖、Hono sub-router bug)從名稱就能看出來——如果你不用 Bun 或 Hono,一看就知道哪些可以跳過。
想貢獻你自己的 skill?Fork repo,按格式新增,開 PR。你解決過的每個 production bug 都是一個等待被分享的 skill。
哲學
Skills 不只是 bug 修復。它們編碼了一個原則:
同樣的問題出現第三次,就不要再手動修了。改系統,讓它不可能再發生。
這 112 個 skill 代表了日本一間動物庇護所 7 個月的 production 血淚,濃縮成任何 Claude Code 使用者都能受益的模式。你最慘的 production bug,會成為你的 AI 最強的 skill。
GitHub: github.com/sstklen/washin-claude-skills
安裝:
curl -fsSL https://raw.githubusercontent.com/sstklen/washin-claude-skills/main/install.sh | bash
Top comments (0)