跳至主要內容
精選 Skills 工作流程 方法論 Claude Code 自動化

Skill 設計方法論:腳本與 LLM 的切割藝術

所有程式流程都能 Skill 化。關鍵在於分辨哪些步驟能寫成腳本穩定執行,哪些需要 LLM 即時判斷。從需求分析到 Skill 設計的完整方法論。

2026年2月10日 8 分鐘閱讀 作者:Claude World

聊天式工作流的問題

大多數人這樣用 Claude Code:

你:「幫我產一篇 newsletter」
// Claude 從頭理解、從頭執行
// 每次品質不同、步驟可能漏掉

你:「再做一次」
// 又從頭來一遍...

三個根本問題:

  • 不穩定 — 同樣的指令,每次品質不同
  • 浪費 token — 每次都重新理解整個流程
  • 不可累積 — 做得好的那次,下個 session 就忘了

觀念翻轉

你不是在「跟 AI 聊天」。

你是在設計一條產線。

產線上有些站是機器手臂(確定性腳本),有些站是人類工人(LLM 判斷)。Skill 就是讓這條產線固化下來。

核心切割:腳本 vs LLM

所有工作流程都能拆成兩種步驟:

腳本(確定性)LLM(動態)
本質每次都一樣需要根據情境判斷
範例API 呼叫、檔案操作、build 指令內容分析、創意決策、翻譯
在 Skill 裡寫好 script,LLM 只負責執行描述判斷框架
穩定性100% 可預測靠 prompt 品質控制

關鍵洞察:

能寫成腳本的,就不要讓 LLM 去想。 LLM 的價值在於「串接結果」和「關鍵判斷」。

節奏:腳本取得結果 → LLM 分析判斷 → 下一段腳本 → LLM 再判斷。

Skill 就是把這個節奏固化下來。

三步分析法

Step 1:列出所有步驟

把需求拆成 5-10 個具體步驟,先不管分類。

Step 2:標記每一步

問自己:「這步能寫成腳本嗎?」

  • → 寫好 script,LLM 只管執行拿結果
  • 不能 → 這才是 LLM 該動腦的地方,給它判斷框架

Step 3:組裝 Skill

  • 腳本步驟 → 實際程式碼(Python、Bash、API 呼叫)
  • LLM 步驟 → 判斷框架(標準、約束、範例)

實戰範例:版本更新追蹤器

需求:「自動追蹤 Claude Code 版本更新,發現新版就寫文章,三語發布」

Step 1 — 列出步驟:

  1. 檢查最新版本號
  2. 跟已知版本比對
  3. 抓取 changelog
  4. 分析哪些變更對用戶重要
  5. 決定文章角度和標題
  6. 用指定格式撰寫文章
  7. 翻譯成三語版本
  8. 存檔到對應目錄

Step 2 — 標記每一步:

步驟類型原因
1. 檢查最新版本腳本gh api 一行搞定
2. 比對版本腳本Python 字串比較
3. 抓取 changelog腳本WebFetch 固定 URL
4. 分析重要變更LLM需要語意理解
5. 決定角度標題LLM需要創意判斷
6. 指定格式撰寫混合模板固定,內容動態
7. 三語翻譯LLM需要語言能力
8. 存檔腳本路徑規則固定

Step 3 — 寫成 Skill:

腳本步驟 — 直接給 LLM script 跑:

## 步驟 1:檢查最新版本
## 執行以下 Bash,將結果存為 $LATEST_VERSION
gh api repos/anthropics/claude-code/releases/latest \
  --jq '.tag_name'

## 步驟 2:比對版本
## 執行以下 Python 腳本
known = open('last-known-version.txt').read().strip()
if known == latest:
    print("NO_UPDATE")
    sys.exit(0)

LLM 步驟 — 給判斷框架:

## 步驟 4:分析變更
## 上一步腳本已取得 changelog 原文
## 現在需要 LLM 理解語意,腳本做不到這件事
根據以下優先級分類:
  高:影響日常使用的功能變更
  中:新增的 CLI 指令或參數
  低:Bug fixes(除非重大修復)
列出 3-5 個最值得寫的點。

## 步驟 5:決定標題
## 需要創意,腳本無法生成好標題
格式:Claude Code vX.Y.Z: {一句話重點}
角度:告訴讀者「這對你意味著什麼」

穩定化動態步驟

LLM 步驟不是放飛自我。三個技巧讓它更穩定:

1. 品質關卡

>= 80 → 通過
60-79 → 自動修改後重新評分
< 60  → 停止,人工介入

2. 給範例(Few-shot)

好:「v2.1.37: Agent Teams 正式支援 Split-Pane 模式」
壞:「Claude Code 更新了」
壞:「包含多項重要功能改進和修復」

3. 拆更細

如果一個動態步驟太大、結果不穩定 — 繼續拆。

太大:「分析 changelog 並寫文章」

拆成:
  1. 列出所有變更項目           (簡單列清單)
  2. 為每項評估重要性 1-5       (結構化評分)
  3. 挑出前 3 項撰寫            (範圍已縮小)

原則:動態步驟越小、約束越明確 → 結果越穩定。

更多範例

新聞 → 文章 → 社群發文

步驟類型工具
抓取新聞來源腳本WebFetch / RSS
篩選哪些值得寫LLM相關性判斷
分析重點、決定角度LLM理解 + 創意
用模板寫文章混合模板 + LLM 填充
存檔到 articles/腳本固定路徑
呼叫 Threads API 發布腳本threads-post.js

今日行程 → 準備資料

步驟類型工具
查詢日曆 API腳本Google Calendar API
理解每場會議主題LLM語意理解
搜尋相關檔案腳本Glob / Grep
判斷哪些資料相關LLM關聯判斷
整理摘要、排優先級LLM彙整 + 排序

電子信處理

步驟類型工具
讀取未讀信件腳本IMAP / Gmail API
分類:重要 / 一般 / 垃圾LLM理解信件內容
重要信件摘要LLM摘要能力
生成回覆草稿LLM撰寫回覆
送出回覆腳本Resend / SMTP

規律永遠一樣:腳本收集 → LLM 理解 → 腳本執行。

Skill 檔案格式

# .claude/skills/my-skill/SKILL.md
---
name: ecosystem-update
description: >
  追蹤版本更新並自動撰寫文章。
  Triggers: "check update", "new version"
version: 0.1.0
allowed-tools:
  - Read
  - Write
  - Bash
  - WebFetch
  - Task
user-invocable: true     # /ecosystem-update 觸發
context: fork            # 獨立 context,不消耗主對話
agent: content-writer    # 指定由哪個 Agent 執行
model: sonnet            # 指定模型
---

# 下方就是你的流程腳本(Markdown)
# 固定步驟 + 動態步驟交錯排列

重要欄位:

  • context: fork — 在獨立 context 中執行,不消耗主對話的 token
  • agent — 委派給指定的 Agent 定義檔執行
  • allowed-tools — 這個 Skill 可使用的工具白名單

思維模型

拿到需求

列出所有步驟

每一步問:「能寫成腳本嗎?」

  能 → 寫好 Script(LLM 只管執行拿結果)
  不能 → 交給 LLM(給判斷標準 + 約束 + 範例)

組裝成 Skill

測試 → LLM 步驟不穩?→ 拆更細 / 加約束

穩定的自動化流程 ✓

設計心法

  1. 所有程式流程都能 Skill 化
  2. 能寫成腳本的,就不要讓 LLM 去想
  3. LLM 的價值在「串接結果」和「關鍵判斷」
  4. LLM 判斷不穩?拆更細、加範例、設關卡
  5. 先做一個 Skill,有效了再擴展