Agent 工程

解剖一個真實 Skill

以 Alice 發版助手為例:點選每個區域展開詳情,看 Agent 如何讀取並執行一個 Skill。

SKILL.md 逐段解剖
SKILL.md
alice-release
Alice 專案發版助手
1
元資訊
技能名稱、功能描述、觸發詞
技能名稱
alice-release
描述
Alice 專案發版助手。負責打包、更新 RELEASE_NOTES、上傳 COS、同步落地頁的完整發版流程。
觸發詞
打個包 發版 release 上傳發布 同步落地頁
📌 設計決策:觸發詞的覆蓋度決定了 Skill 的召回率。寫得太少→使用者說了該觸發但沒觸發;寫得太泛→不該觸發時誤觸。好的觸發詞 = 窮舉使用者可能的自然表達。
2
適用條件
Agent 判斷是否觸發此 Skill 的決策鏈
使用者說了觸發詞? YES 當前在 Alice 專案目錄? YES 觸發 Skill
NO 使用通用能力處理
同理,第二個判斷節點如果為 NO(不在 Alice 目錄),也走「通用能力處理」。
條件不滿足時 Skill 靜默退出,不會干擾正常對話。
📌 設計決策:適用條件 = 防止誤觸的保險。沒有適用條件,使用者在任何專案裡說「發版」都會觸發 Alice 的發版流程,這是災難級 Bug。
3
執行步驟
7 步管線:從 Git 檢查到落地頁同步
🔍
檢查 Git
🧪
執行測試
📦
打包應用
🏷️
更新版本
📝
寫發布日誌
☁️
上傳 COS
🌐
同步落地頁
點選模擬 Agent 按步驟執行
📌 設計決策:步驟的順序至關重要:「先測試再打包」還是「先打包再測試」?Skill 裡的步驟順序 = 你認為正確的 SOP 流程。Agent 會嚴格按順序執行。
4
允許工具
Skill 執行期間 Agent 能使用的武器庫
可以使用
run_command edit_file read_file git web_search
禁止使用
delete_file agent(不可啟動子 Agent)
📌 設計決策:允許工具 = 安全邊界。限制了 Agent 在執行這個 Skill 時能用的武器。禁止 delete_file 就是防止發版過程中誤刪檔案;禁止子 Agent 是為了控制執行鏈的可預測性。
5
安全約束
不可逾越的紅線,Agent 的交通規則
不允許 force push:防止覆蓋他人的程式碼提交
不允許跳過測試:無論多緊急,測試不通過就不發版
失敗時停止並報告,不自行重試:把控制權交還人類
📌 設計決策:約束條款是 Skill 裡最重要的部分。步驟寫錯了 Agent 只是做錯事,約束缺失了 Agent 可能做危險的事。好的約束 = 明確的禁令 + 失敗時的降級策略。
更多 Skill 示例
✍️
content-creator
內容創作起點:從風格分析到成稿交付的完整寫作流程
風格畫像 需求確認 大綱設計 深度研究 文章創作
觸發詞:幫我寫、我想寫、準備寫、寫公眾號、寫小紅書
關鍵設計:先分析寫作風格再動筆,不給模型直接生成的機會。這確保了每次產出都匹配使用者個人風格,避開通用 AI 味道。
工具權限:允許 web_search(深度研究需要連網),禁止直接發布(需人工審核)。
🌐
web-importer
網頁匯入:將網頁內容高品質儲存到 WPS 筆記
URL 識別 內容抓取 格式轉換 寫入筆記
觸發詞:把這個網頁存到筆記、匯入這篇文章、網頁轉筆記
關鍵設計:自動識別公眾號、Twitter、通用網頁三種類型,走不同抓取邏輯。對使用者來說只是「存到筆記」一句話,背後是三套策略。
安全約束:不儲存需要登入才能瀏覽的頁面(避免隱私洩露)。
🏷️
tag-organize
標籤整理:掃描全部標籤,發現重複和混亂,智慧合併
掃描標籤 分析重複 合併建議 執行整理
觸發詞:整理筆記標籤、清理標籤、標籤太亂、標籤太多
關鍵設計:合併前先給出建議、等使用者確認後再執行,絕不自動合併。這體現了「人在迴路」的設計原則。
安全約束:不刪除任何標籤,只做合併;執行前必須獲得使用者確認。
📌 核心認知:好的 Skill = 好的 SOP。寫 Skill 的人是領域專家,使用 Skill 的人是 Agent。Skill 的顆粒度最佳點是一個完整的工作流:太粗沒有指導意義,太細不值得封裝。
Takeaway
Takeaway 一個 Skill 就是一份給 Agent 的 SOP:什麼時候觸發、按什麼步驟執行、能用哪些工具、有什麼安全約束。寫 Skill 的本質是把人類專家的經驗編碼成 Agent 能執行的流程。