iT邦幫忙

2026 iThome 鐵人賽

DAY 25
0
AI Engineering

[ opencode ] 開源 AI coding agent系列 第 25 篇

25-Matt Pocock skills | 介紹:Skills for Real Engineers

  • 分享至 

  • xImage
  •  

! 本篇文章將會介紹 Matt Pocock 的 skills 生態系——Skills for Real Engineers,把數十年的工程經驗濃縮成小而可組合的 agent 技能 :D

TL;DR: https://dev.benben.me/slides/s/ironman-25-mp-skills-intro

本篇目標

讀完這篇你會學到:

  • 這套 skills 的設計理念(小、可組合、可改造)
  • 安裝方式與每個 repo 必跑的 setup
  • user-invoked 與 model-invoked 的分類邏輯

作者是誰?為什麼值得看?

Matt Pocock——Total TypeScript 的作者、TypeScript 圈最會教學的人之一。他的 skills repo 標語是:

Skills for real engineers - not vibe coding.

這句話就是整個 repo 的立場。它的假設是:你在開發真正的應用程式,不是玩票。而他觀察到市面上 GSD、BMAD、Spec Kit 這類流程框架有個共通問題:

它們「接管」你的流程——拿走控制權,流程出 bug 時反而難修。

Matt 的解法反其道而行:小、容易改、可組合的技能。每個 skill 只做一件事,像Unix 哲學;你組合它們、改造它們,「Hack around with them. Make them your own.」

安裝:兩種哲學選一個

方式一:Claude Code plugin(訂閱制)

claude plugins install mattpocock-skills

整包唯讀、跟著作者更新——你「訂閱」他的工程方法論。

方式二:skills.sh(複製制)

npx skills@latest add mattpocock/skills

把 skill 檔案複製進你的專案,可自行修改,想更新再 npx skills update。任何 agent 都能用(Codex、opencode……)。

小提醒:兩種裝法別一起用——每個 skill 會出現兩次。選擇困難時的判斷:想「跟著大師走」用 plugin;想「改造成自己的」用 skills.sh。

安裝後第一件事:跑 setup

/setup-matt-pocock-skills

每個 repo 跑一次,它會問三件事:issue tracker 用什麼(GitHub / Linear / 本地檔案)、triage 標籤慣例、文件放哪。之後所有工程 skills 都吃這組設定。

這套 skills 解的四大問題

README 用四個 failure modes 組織整個 repo,這個框架太好用,直接抄給你:

問題一:AI 做出來的東西不是我要的

misalignment 是軟體開發最古老的病,AI 時代照樣得。解法是 grilling——讓 AI 反過來拷問你:

  • /grill-me:把你的計畫逼問到每個分支都有答案
  • /grill-with-docs:同上,還順便建立專案的共同語言(下篇細講)

問題二:AI 廢話太多

解法:shared language。一個 CONTEXT.md 記錄專案的領域術語,AI 從「用 20 個字描述」變成「用 1 個術語命中」。Matt 的例子:

  • BEFORE:「course 的 section 裡的 lesson 被『實體化』(拿到檔案系統位置)時有問題」
  • AFTER:「materialization cascade 有問題」

問題三:code 是壞的

解法:feedback loops。型別、測試、紅綠重構。/tdd skill 把 red-green-refactor 包成 agent 能穩定執行的紀律。

問題四:我們蓋了一顆泥球

AI 加速寫 code,同時也加速軟體熵增。解法:每天投資設計——deep modules、乾淨的 seam、/improve-codebase-architecture 定期掃描。

分類:誰能呼叫他?

repo 裡的 skills 分兩軸:

  • User-invoked:只有你打指令才觸發(/to-spec、/to-tickets……),負責「指揮」
  • Model-invoked:你或 AI 判斷任務吻合都能自動用(tdd、diagnosing-bugs……),存放「可重複使用的紀律」

規則:user-invoked 可以叫 model-invoked,反過來不行。指揮權在人手上。

與 opencode 的關係

還記得 Day 15 嗎?這些 skills 就是標準的 SKILL.md 結構——放到 .opencode/skills/(或相容的 .agents/skills/)opencode 直接吃。你前十五天學的擴充機制,就是載入這個生態的插槽。

小小測驗:user-invoked skill 放進 opencode 後,AI 會不會在你沒下令時自己呼叫 /to-spec?——不會,它的 description 寫明了「user-invoked」,而且 opencode 的 skill 權限也能管這件事(Day 15 的 allow/ask/deny)。

常見問題

Q:我不是 TypeScript 開發者,能用嗎?
A:能。skills 內容是工程通則(TDD、spec、domain modeling),範例偏 TS 但原則跨語言。

Q:這些 skills 跟 opencode 內建的 plan/build agents 結合得好嗎?
A:非常。grilling 階段丟給 plan agent、implement 階段讓 build agent 照 tickets 開工——Day 27 會給完整接線圖。

Q:要全裝嗎?
A:不用,installer 讓你挑。新手先拿 grill-me + tdd + code-review 三件套,用順了再擴。

小結

  • Matt Pocock skills = 小而可組合的工程紀律包,「not vibe coding」
  • 兩種安裝:plugin 訂閱制 vs skills.sh 複製制,二選一
  • 四大問題:不對齊、廢話、壞 code、泥球——對應 grilling / shared language / TDD / design
  • 標準 SKILL.md 格式,opencode 無縫載入

明日預告

Day 26:入門實戰——grill-me、tdd、code-review 與 grill-with-docs 的 shared language 魔法。


有任何疑問但沒有 iT 邦幫忙帳號,或是想匿名提問?
歡迎到 https://dev.benben.me/q/P3C5U6 提問或加油打氣,沒意外的話會在完賽之後一起回答 :D


上一篇
24-open-slide | 為 agent 而生的簡報框架
下一篇
26-Matt Pocock skills | 入門:tdd、code-review 與 grill-me
系列文
[ opencode ] 開源 AI coding agent 共 29 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言