使用 Claude Code Skills 的一些心得
最近開始試用 Claude Code Skills。
一開始是看到這個 YouTube 影片:
https://www.youtube.com/watch?v=CEvIs9y1uog
Skills 的概念看起來很有潛力,所以想實際用用看,了解它到底怎麼運作。
我拿了一個正在做的真實任務,把整個測試和驗證流程包成一個 skill。
流程大概是這樣:
- 取得一組 id 清單
- 根據這些 id 對 server 送 request
- 驗證 request 之後的 side effect
- 檢查每個下游系統是否在預期的狀態
Skill 準備好之後就開始測試,結果很快就發現結果不太對:
- 我想測 100 個 id,但實際只測了大概 30 個,結果還是顯示成功
- 有些下游檢查明明有錯,skill 還是回報成功
- 100 個 id 只驗了 50 個,最終結果還是標記為正確
- 前面的步驟都還沒完成,後面的步驟就繼續跑了
到這裡我才意識到,skill 不像 script 那樣會嚴格按步驟執行,遇到錯就停下來。 就算狀態不對,流程還是會繼續往下跑。
因為花了不少時間在測試這個,一度在想是不是直接寫個 script 比較快, 即使我已經把 MCP server 都接好了。
後來想想,主要的問題出在我一開始的假設。
如果希望 skill 嚴格執行,就得自己設計好那些條件。
所以我做了幾個調整:
- 每個步驟都定義清楚的成功和失敗條件
- 結果不如預期時立刻停止流程
- 要求先確認 root cause 才能繼續
- 加入多個 MCP server 來支援不同類型的驗證
調整之後,流程確實減少了一些 false positive 的狀況。
MCP server 也蠻彈性的,像是寫程式的時候要查 service log 不一定方便,
但有了 skill 加 MCP server,查詢不同的 data source 就變得容易很多。
目前還是持續在用 skill,但還沒覺得完全順手。
也不確定有沒有比較成熟的 best practice,特別是 skill 數量變多之後管理上可能會是個問題。