戰(zhàn)指南)
最近社區(qū)里“skills”這個(gè)詞出現(xiàn)頻率高得離譜從“前端開(kāi)發(fā)skills”到“安卓脫殼skills”再到各類“agent skills測(cè)試”“skills下載平臺(tái)”幾乎每隔幾天就能看到新的熱詞冒出來(lái)。我自己的第一反應(yīng)是這不就是給大模型塞一堆提示詞規(guī)則嗎有什么好稀奇的。但真正動(dòng)手用了一段時(shí)間之后我得承認(rèn)這個(gè)理解太淺了。skills 本質(zhì)上是在重新定義大模型的能力邊界讓一個(gè)通用聊天助手變成能按固定套路干活的“崗位專家”。這篇文章我想從個(gè)人實(shí)踐的角度把 skills 這件事拆開(kāi)講透它到底是什么、為什么值得折騰、怎么從零寫(xiě)一個(gè)能用的 skill、安裝調(diào)試有哪些坑以及我在實(shí)際項(xiàng)目里踩過(guò)的各種雷。不吹概念只說(shuō)怎么落地適合那些已經(jīng)用過(guò) ChatGPT、Claude、Codex 這類工具但還沒(méi)搞明白“技能文件”該怎么組織的人也適合想把手頭重復(fù)工作沉淀成可復(fù)用技能的開(kāi)發(fā)者。哪怕你完全沒(méi)寫(xiě)過(guò)代碼照著后面論文潤(rùn)色那個(gè)例子走一遍也能體會(huì)到這套邏輯的爽點(diǎn)。1. skills到底是什么1.1 一個(gè) skill 不只是“一段提示詞”很多人第一次接觸 skills看到 README 里那個(gè)SKILL.md文件會(huì)覺(jué)得這不就是 Markdown 寫(xiě)的 prompt 嗎。表面看確實(shí)如此但實(shí)際區(qū)別很大。普通 prompt 是一次性的你打一段話模型按這段話執(zhí)行一次。而 skill 是結(jié)構(gòu)化的能力封裝它包含說(shuō)明文件、參考示例、可執(zhí)行腳本、校驗(yàn)規(guī)則甚至還有自己的工具調(diào)用邏輯。模型讀到SKILL.md之后不是“聽(tīng)你指揮一次”而是“學(xué)會(huì)了你這套做事方法下次遇到同類任務(wù)能自己按流程走”。我打個(gè)比方普通 prompt 像你給實(shí)習(xí)生口頭交代“幫我把這份報(bào)告潤(rùn)色一下”實(shí)習(xí)生這次干得怎么樣全看心情和悟性。而 skill 等于你給實(shí)習(xí)生一份崗位手冊(cè)里面寫(xiě)著“潤(rùn)色分三步第一步檢查邏輯第二步調(diào)整句式第三步統(tǒng)一術(shù)語(yǔ)每步做完都要輸出中間結(jié)果”手冊(cè)旁邊還配了工具、模板和反例。你說(shuō)哪種方式更可靠。這也是為什么社區(qū)里很多人討論“skills 推薦”“find skills”的時(shí)候關(guān)注點(diǎn)都在技能庫(kù)的完整度上。一個(gè)成熟的 skill 文件通常包含幾個(gè)固定部件SKILL.md主說(shuō)明文件告訴模型這個(gè)技能什么時(shí)候用、怎么用、輸出格式是什么。scripts/目錄可選存放輔助腳本比如格式化、抓取數(shù)據(jù)、批量處理文件。references/目錄可選放樣例、參考資料、術(shù)語(yǔ)表。配置文件比如skill.json聲明元數(shù)據(jù)、版本、依賴。這個(gè)結(jié)構(gòu)意味著 skills 已經(jīng)不只是提示詞技巧而是一套輕量級(jí)的“模型編程框架”。你定義流程模型負(fù)責(zé)執(zhí)行腳本負(fù)責(zé)處理模型做不了的計(jì)算和 IO 操作。1.2 為什么叫“技能”而不是“插件”和插件plugin相比skills 更強(qiáng)調(diào)“內(nèi)化”。插件是外部工具模型需要專門調(diào) API 才能用。技能則更像是模型的“動(dòng)作記憶”它不需要外部系統(tǒng)介入模型讀取說(shuō)明文件后就能直接表現(xiàn)出對(duì)應(yīng)的能力。Claude 官方文檔里有一篇非常出名的分析文章標(biāo)題就叫《Claude Agent Skills: A First Principles Deep Dive》里面反復(fù)強(qiáng)調(diào)一個(gè)觀點(diǎn)skills 的目標(biāo)是讓 agent 在復(fù)雜任務(wù)中“知道什么時(shí)候用什么方法”而不是把所有邏輯前置到系統(tǒng)提示里。從這個(gè)角度看安卓脫殼 skills、自動(dòng)挖洞 skills 這類安全研究方向的熱詞其實(shí)一點(diǎn)也不奇怪。逆向工程和漏洞挖掘是高度依賴流程的領(lǐng)域一個(gè)經(jīng)驗(yàn)豐富的安全研究員可以把“脫殼步驟”“動(dòng)態(tài)調(diào)試路徑”“特征定位方法”固化成 skill讓 agent 按部就班地輔助分析。這也是 skills 被叫做 superpower skills 的原因它確實(shí)像是給模型裝上了某種超能力只是這個(gè)能力完全由你自己定義。我自己測(cè)試過(guò)一個(gè)小實(shí)驗(yàn)讓同一個(gè)模型分別用“普通 prompt 提示詞描述”和“完整 skill 文件”去處理同一批客服工單分類任務(wù)。結(jié)果很直觀用 skill 的那次輸出格式穩(wěn)定、分類標(biāo)準(zhǔn)一致、每單耗時(shí)少三分之一。原因不復(fù)雜prompt 模式下模型每次都在重新理解規(guī)則而 skill 模式下規(guī)則是固定的模型只需要對(duì)照?qǐng)?zhí)行。2. 主流實(shí)現(xiàn)和生態(tài)現(xiàn)狀2.1 Claude 系 skills 和 Codex skills 的各自風(fēng)格目前最常被提到的兩個(gè)實(shí)現(xiàn)一個(gè)是 Claude 官方市場(chǎng)里的 Agent Skills另一個(gè)是 OpenAI Codex 里支持的 skills 集合。兩者目標(biāo)一致但設(shè)計(jì)思路差別挺大。Claude Agent Skills 走的是“文檔驅(qū)動(dòng)”路線。一個(gè)技能本質(zhì)上就是一個(gè)文件夾主入口是SKILL.md模型通過(guò)讀取這份文檔來(lái)決定是否調(diào)用、如何調(diào)用。因?yàn)檎f(shuō)明文件是自然語(yǔ)言寫(xiě)的所以技能的創(chuàng)建門檻很低會(huì)寫(xiě) Markdown 的人就能貢獻(xiàn)技能。官方市場(chǎng)里的技能庫(kù)覆蓋了郵件處理、代碼審查、視頻腳本、論文潤(rùn)色這些高頻場(chǎng)景直接下載就能用。Codex Skills 則更偏向“工程化”。它經(jīng)常和自動(dòng)化流水線綁定一個(gè) skill 可能包含多個(gè)腳本、配置模板、甚至 CI 校驗(yàn)邏輯。Codex 社區(qū)里流行的“codex 好用的 skills”基本都是配合代碼倉(cāng)庫(kù)用的比如自動(dòng)生成 commit message、自動(dòng)補(bǔ)單元測(cè)試、自動(dòng)修 lint 錯(cuò)誤。這類技能對(duì)執(zhí)行環(huán)境的要求更高通常需要把倉(cāng)庫(kù) clone 到本地再通過(guò)命令行調(diào)用。我整理過(guò)一張對(duì)比表可以幫你快速判斷自己更適合哪套體系維度Claude Agent SkillsCodex Skills技能形態(tài)文件夾 SKILL.md腳本集 配置 文檔門檻低會(huì)寫(xiě)說(shuō)明就行中高需要理解執(zhí)行流程典型場(chǎng)景內(nèi)容處理、分析、寫(xiě)作輔助代碼生成、倉(cāng)庫(kù)操作、自動(dòng)化調(diào)用方式自然語(yǔ)言觸發(fā)模型自主判斷明確命令觸發(fā)流程感更強(qiáng)社區(qū)供給官方市場(chǎng) GitHubGitHub 命令行工具集適合人群普通用戶、內(nèi)容創(chuàng)作者開(kāi)發(fā)者、DevOps、技術(shù)團(tuán)隊(duì)當(dāng)然這個(gè)對(duì)比不是絕對(duì)的現(xiàn)在兩邊都在互相學(xué)習(xí)。Claude 的技能也開(kāi)始支持引用腳本Codex 也在加強(qiáng)文檔說(shuō)明的作用。你如果剛?cè)腴T我建議先玩 Claude 系因?yàn)閺陌惭b到見(jiàn)效的時(shí)間最短“skills 安裝包下載”之后一般放對(duì)文件夾就能跑起來(lái)。2.2 “skills 大全”和“下載平臺(tái)”到底在找什么熱詞里有一類特別有意思“skills大全”“skills下載平臺(tái)有哪些”“skills安裝包下載”。表面看是在找資源本質(zhì)上是大家發(fā)現(xiàn)了一個(gè)新生產(chǎn)力市場(chǎng)但不知道去哪里找高質(zhì)量貨。這和早期找“prompt 大全”的心理一模一樣只是 skills 的篩選門檻更高一個(gè) prompt 寫(xiě)得不好頂多沒(méi)效果一個(gè) skill 寫(xiě)得不好可能把流程帶偏。我常用的資源渠道有三類。第一類是官方市場(chǎng)比如 Claude 的 skills 市場(chǎng)質(zhì)量有基礎(chǔ)保障但數(shù)量有限。第二類是 GitHub 搜索關(guān)鍵詞用claude skills或agent skills按 stars 排序能挖到不少寶藏倉(cāng)庫(kù)比如有人專門整理了幾十個(gè)文案寫(xiě)作類技能還有合作團(tuán)隊(duì)開(kāi)源的內(nèi)部工種技能庫(kù)。第三類是社區(qū)博客和評(píng)測(cè)文章很多作者會(huì)把技能文件直接貼在文章里看到合適的復(fù)制下來(lái)就能用。但這里要提醒一句別見(jiàn)到 skill 就隨手裝。技能文件本質(zhì)是一段可執(zhí)行邏輯里面如果引用了腳本就相當(dāng)于在你機(jī)器上跑外部代碼。我的原則是先看 SKILL.md、再看 scripts 里的代碼、最后才安裝。尤其是命令行工具類的技能最好先在一個(gè)沒(méi)有重要數(shù)據(jù)的目錄里試跑一遍。2.3 為什么“agent skills 測(cè)試”突然成了剛需熱詞里有“agent skills測(cè)試”“skills開(kāi)發(fā)”這兩個(gè)我特別有共鳴。最初我寫(xiě) skill 的時(shí)候覺(jué)得寫(xiě)完就完事了結(jié)果經(jīng)常出現(xiàn)“文檔寫(xiě)得很完美但模型根本不調(diào)用”的尷尬情況。后來(lái)才意識(shí)到技能和人一樣需要驗(yàn)收。你至少要測(cè)四件事觸發(fā)準(zhǔn)確性輸入什么內(nèi)容時(shí)模型會(huì)主動(dòng)調(diào)用這個(gè)技能執(zhí)行穩(wěn)定性同一輸入跑五次輸出差異大不大腳本健壯性腳本遇到缺文件、空數(shù)據(jù)、異常符號(hào)時(shí)會(huì)不會(huì)崩潰上下文占用技能文檔太長(zhǎng)會(huì)不會(huì)把對(duì)話窗口撐爆現(xiàn)在社區(qū)里已經(jīng)有人開(kāi)始寫(xiě)“skills 測(cè)試框架”了基本原理是準(zhǔn)備一組典型輸入自動(dòng)調(diào)用技能跑一遍檢查輸出結(jié)構(gòu)是否符合預(yù)期。我自己的土辦法更簡(jiǎn)單在 Claude 里建一個(gè)測(cè)試會(huì)話把技能裝好后連發(fā)五條不同難度的請(qǐng)求看它是否按說(shuō)明文檔執(zhí)行。比如測(cè)試論文潤(rùn)色技能我會(huì)分別丟“摘要只有三行”“全文兩萬(wàn)字”“帶圖表標(biāo)注的論文片段”三種輸入觀察處理方式的差異。3. 手把手寫(xiě)一個(gè)能用的 skill論文潤(rùn)色3.1 為什么拿“論文潤(rùn)色”當(dāng)例子因?yàn)闊嵩~里“codex寫(xiě)論文的skills”“workbuddy skills 寫(xiě)論文”“claude skills”出現(xiàn)的頻率非常高說(shuō)明這是大多數(shù)人最需要的場(chǎng)景。而且論文潤(rùn)色任務(wù)的流程相對(duì)固定讀原文、找邏輯斷點(diǎn)、改句式、統(tǒng)一術(shù)語(yǔ)、輸出修改說(shuō)明每一步都可以文檔化。哪怕你完全沒(méi)寫(xiě)過(guò)代碼只要理解這套流程就能跟著做出來(lái)一個(gè)能用的 skill。順便說(shuō)一句官方市場(chǎng)里已經(jīng)有很多論文潤(rùn)色技能了但自己寫(xiě)一遍的價(jià)值在于你更清楚模型的處理邊界更知道哪里該給規(guī)則、哪里該留自由度。直接用現(xiàn)成的出了問(wèn)題你很難判斷是文檔問(wèn)題還是模型問(wèn)題。3.2 技能文件的目錄結(jié)構(gòu)規(guī)劃論文潤(rùn)色技能時(shí)我的目錄結(jié)構(gòu)是這樣paper-polish/ ├── SKILL.md # 主說(shuō)明文件 ├── references/ │ ├── academic-terms.md # 學(xué)術(shù)術(shù)語(yǔ)對(duì)照表 │ └── before-after.md # 修改前后對(duì)比示例 └── scripts/ └── extract_refs.py # 從論文中提取參考文獻(xiàn)列表可選這個(gè)結(jié)構(gòu)的好處是說(shuō)明、參考、代碼完全分層。模型先讀SKILL.md形成全局認(rèn)知遇到術(shù)語(yǔ)問(wèn)題去查references需要批量處理時(shí)就跑scripts。你在寫(xiě)自己的技能時(shí)也可以參照這個(gè)模板不一定非要寫(xiě)腳本但references目錄強(qiáng)烈建議保留它能顯著提升輸出質(zhì)量。3.3 SKILL.md 怎么寫(xiě)才算清楚SKILL.md是整個(gè)技能的核心模型能不能正確執(zhí)行全看這份文檔寫(xiě)得是否清晰。我見(jiàn)過(guò)很多人的技能文檔寫(xiě)得像散文洋洋灑灑幾百字但模型讀了還是不知道第一步干什么。這里分享一個(gè)我摸索出的結(jié)構(gòu)模板--- name: paper-polish description: 用于學(xué)術(shù)論文的潤(rùn)色與邏輯優(yōu)化特別適合英文摘要、引言和結(jié)論部分。 --- # 論文潤(rùn)色 ## 使用場(chǎng)景 僅當(dāng)用戶提供論文段落、摘要或完整稿件并要求潤(rùn)色時(shí)使用。 不要用于普通文案、朋友圈文案或非學(xué)術(shù)語(yǔ)境。 ## 處理流程 1. 通讀原文標(biāo)記邏輯斷點(diǎn)。 2. 逐句優(yōu)化優(yōu)先修改被動(dòng)語(yǔ)態(tài)、冗余表達(dá)和模糊指代。 3. 術(shù)語(yǔ)一致性檢查對(duì)照 references/academic-terms.md。 4. 輸出修改后文本并在末尾列出 3-5 條修改要點(diǎn)。 ## 輸出格式 必須按以下結(jié)構(gòu)返回 - 修改后版本 - 修改要點(diǎn)列表 - 術(shù)語(yǔ)對(duì)照表如有注意到幾個(gè)關(guān)鍵點(diǎn)沒(méi)有。首先是description字段模型會(huì)讀這個(gè)字段來(lái)決定是否觸發(fā)技能所以里面要寫(xiě)清楚“什么時(shí)候用、什么時(shí)候不用”。其次是“處理流程”一定要拆到模型能直接執(zhí)行的粒度“逐句優(yōu)化”比“提升語(yǔ)言質(zhì)量”好用一百倍。然后是“輸出格式”固定了格式你后續(xù)做批量處理或者集成到工作流里都會(huì)容易很多。另外SKILL.md里可以加一小節(jié)“禁忌事項(xiàng)”。比如論文潤(rùn)色技能里我會(huì)寫(xiě)不改動(dòng)作者的原意、不新增實(shí)驗(yàn)數(shù)據(jù)、不修改參考文獻(xiàn)編號(hào)。這些約束能有效防止模型自由發(fā)揮過(guò)度。3.4 腳本在技能里的作用論文潤(rùn)色這個(gè)場(chǎng)景里腳本不是必需品但有兩個(gè)地方腳本特別好用。一是參考文獻(xiàn)提取論文里參考文獻(xiàn)格式五花八門讓模型靠閱讀去解析容易出錯(cuò)寫(xiě)個(gè)正則腳本提取就穩(wěn)得多。二是批量處理比如你有二十篇摘要要潤(rùn)色模型每次只能處理一段腳本可以先按段落拆分文本潤(rùn)色完成后自動(dòng)拼回去。我給extract_refs.py寫(xiě)過(guò)一個(gè)簡(jiǎn)化版本大概長(zhǎng)這樣import re import sys def extract_references(text): # 簡(jiǎn)單匹配 [1]、[1,2]、[1-3] 這類引用標(biāo)記 pattern r\[(\d(?:[,\-]\d)*)\] return re.findall(pattern, text) if __name__ __main__: content sys.stdin.read() refs extract_references(content) for ref in refs: print(ref)注意這個(gè)腳本只是為了說(shuō)明“技能里的腳本可以承擔(dān)什么角色”實(shí)際使用時(shí)要根據(jù)自己的論文格式調(diào)整正則。更重要的是你要在SKILL.md里寫(xiě)清楚“什么時(shí)候調(diào)用腳本、什么時(shí)候不調(diào)用”。比如我規(guī)定當(dāng)用戶要求“提取參考文獻(xiàn)列表”時(shí)才運(yùn)行腳本只是潤(rùn)色正文時(shí)不要額外跑腳本打斷節(jié)奏。4. 安裝引入與管理從官方市場(chǎng)到本地目錄4.1 幾種安裝路徑先說(shuō)最簡(jiǎn)單的情況如果你用的是 Claude 這種帶有官方市場(chǎng)的產(chǎn)品直接搜索 skill 名稱點(diǎn)安裝即可。熱詞里“claude 國(guó)內(nèi)安裝 skills 官方市場(chǎng)”說(shuō)明很多人第一步就卡在這里其實(shí)口碑比較好的辦法是先用官方客戶端或網(wǎng)頁(yè)版進(jìn)入 settings 里的 skills 板塊找到市場(chǎng)并搜索。這個(gè)過(guò)程的本質(zhì)是把遠(yuǎn)程倉(cāng)庫(kù)克隆到本地指定目錄所以你也可以繞過(guò)市場(chǎng)直接把 GitHub 上的技能文件夾下載下來(lái)放到對(duì)應(yīng)目錄里。具體路徑因工具而異但邏輯一致。以 Claude 桌面版為例技能通常放在~/.claude/skills/每個(gè)技能一個(gè)文件夾里面要有SKILL.md否則不會(huì)被識(shí)別。Codex 的安裝方式更偏命令行一般通過(guò)codex skills install 倉(cāng)庫(kù)地址這類命令完成安裝后會(huì)自動(dòng)配置執(zhí)行環(huán)境。熱詞里“idea使用skills”“reasonix如何安裝新skills”也屬于這一類本質(zhì)都是“把技能文件放到工具能掃描到的目錄”。4.2 安裝之后的“冒煙測(cè)試”技能裝好不代表能用我強(qiáng)烈建議每次安裝完都做一次不超過(guò)五分鐘的冒煙測(cè)試。測(cè)試步驟很簡(jiǎn)單新建一個(gè)空會(huì)話不寫(xiě)任何額外提示詞。輸入一個(gè)該技能覆蓋范圍內(nèi)的典型請(qǐng)求。觀察模型是否主動(dòng)提到找到了對(duì)應(yīng)技能??摧敵龈袷绞欠窈蚐KILL.md里定義的一致。如果沒(méi)觸發(fā)檢查技能目錄名是否包含空格或非法字符檢查description是否包含用戶可能說(shuō)的關(guān)鍵詞。我自己曾經(jīng)裝了一個(gè)“代碼審查 skills”結(jié)果發(fā)了五次請(qǐng)求模型都當(dāng)成普通問(wèn)答處理。排查半天發(fā)現(xiàn)是SKILL.md的description寫(xiě)的是“Review code”而我在提問(wèn)時(shí)用的是“幫我看看這段代碼”關(guān)鍵詞完全沒(méi)接上。后來(lái)把 description 改成“審查代碼、檢查代碼質(zhì)量問(wèn)題、Code Review”之后第二次就觸發(fā)了。這個(gè)細(xì)節(jié)很值得記下來(lái)。4.3 多個(gè)技能之間的優(yōu)先級(jí)管理技能裝多了就會(huì)出現(xiàn)另一個(gè)問(wèn)題沖突。比如你同時(shí)裝了“論文潤(rùn)色”和“學(xué)術(shù)寫(xiě)作助手”模型面對(duì)一段論文摘要到底該調(diào)哪個(gè)很多新手對(duì)這個(gè)感到頭疼。解決辦法是在每個(gè)技能的description里明確“適用邊界”并且可以在SKILL.md的開(kāi)頭加一行“只有在用戶明確要求潤(rùn)色時(shí)使用不要進(jìn)行學(xué)術(shù)寫(xiě)作指導(dǎo)”。我實(shí)測(cè)下來(lái)這句話能明顯減少技能之間“搶活”的概率。如果沖突還是嚴(yán)重還有一個(gè)土辦法把不常用的技能暫時(shí)移出 skills 目錄放到一個(gè)_disabled文件夾里。需要用時(shí)再移回來(lái)。這比在配置里反復(fù)開(kāi)關(guān)快得多而且不會(huì)誤刪文件。5. 使用中的高頻問(wèn)題與排查思路5.1 常見(jiàn)問(wèn)題速查表我用表格把這段時(shí)間遇到最多的問(wèn)題整理了一下基本覆蓋了新手階段的全部痛點(diǎn)了現(xiàn)象可能原因排查與解決模型完全無(wú)視技能description 寫(xiě)得太泛或沒(méi)包含觸發(fā)詞把觸發(fā)說(shuō)法寫(xiě)進(jìn) description至少包含三種同義表達(dá)技能被調(diào)用但輸出跑偏SKILL.md 流程不夠具體拆步驟每個(gè)動(dòng)作細(xì)化到可執(zhí)行指令腳本執(zhí)行時(shí)報(bào)錯(cuò)缺依賴或路徑不對(duì)確認(rèn)腳本在 skill 目錄下可獨(dú)立運(yùn)行不要依賴全局變量會(huì)話上下文快速耗盡SKILL.md 或 references 內(nèi)容過(guò)長(zhǎng)把長(zhǎng)樣例移到 references只在主文檔保留核心規(guī)則兩個(gè)技能互相沖突description 邊界不清加“僅當(dāng)…時(shí)使用”的限制語(yǔ)句排版輸出不穩(wěn)定輸出格式描述不夠硬用“必須”“不得”等強(qiáng)約束詞并用列表固定結(jié)構(gòu)這張表我建議保存下來(lái)遇到問(wèn)題先對(duì)號(hào)入座大部分情況不需要去翻文檔。5.2 一次真實(shí)的排查經(jīng)歷有段時(shí)間我寫(xiě)了一個(gè)“分鏡腳本 skills”靈感來(lái)自熱詞里的“分鏡skills下載”。這個(gè)技能的目標(biāo)是根據(jù)小說(shuō)章節(jié)生成分鏡腳本包含景別、運(yùn)鏡、時(shí)長(zhǎng)、臺(tái)詞。第一次測(cè)試就翻車了模型確實(shí)調(diào)用了技能但輸出只有三行字和文檔里要求的表格結(jié)構(gòu)完全不符。我翻看生成的日志發(fā)現(xiàn)模型只讀了SKILL.md里“使用場(chǎng)景”那一段后面的“輸出格式”部分完全沒(méi)執(zhí)行。原因是我的SKILL.md結(jié)構(gòu)太靠近純自然語(yǔ)言了細(xì)節(jié)全埋在段落里模型沒(méi)抓住重點(diǎn)。后來(lái)我重寫(xiě)了文檔把所有關(guān)鍵規(guī)則全部列表化并在文件最開(kāi)頭用加粗寫(xiě)了一句“輸出必須是完整分鏡表格不得以段落形式返回”。再測(cè)輸出質(zhì)量立刻提升了。這件事給我的教訓(xùn)是技能文檔不是文章而是“操作手冊(cè)”模型閱讀效率最高的結(jié)構(gòu)永遠(yuǎn)是短句、列表、固定格式。5.3 關(guān)于“上下文占用”的提醒很多人忽略了一個(gè)問(wèn)題技能文檔本身會(huì)占用模型的上下文窗口。一個(gè)寫(xiě)了兩千字的SKILL.md相當(dāng)于每一次對(duì)話都先塞兩千字進(jìn)去。如果同時(shí)裝了十幾個(gè)技能光技能內(nèi)容就可能占掉上下文的一小半留給實(shí)際任務(wù)的容量就少了。這和你電腦開(kāi)了太多后臺(tái)程序?qū)е聝?nèi)存不足是一個(gè)道理。解決辦法其實(shí)很樸素給技能做“瘦身”。主文檔只保留流程骨架參考資料全部放到references/目錄里讓模型按需讀取。另外在SKILL.md里明確寫(xiě)出“首次響應(yīng)只輸出關(guān)鍵結(jié)論不接受額外解釋”也能節(jié)省大量 token。我試過(guò)把同一套技能從三千字壓縮到一千字輸出質(zhì)量沒(méi)有明顯下降但響應(yīng)速度快了不少。6. 安全邊界與我的幾點(diǎn)經(jīng)驗(yàn)6.1 技能里的腳本要慎之又慎因?yàn)?skills 可以攜帶腳本所以安全問(wèn)題必須正視。一個(gè)技能文件夾放到本地后腳本通常以當(dāng)前用戶權(quán)限運(yùn)行。如果腳本來(lái)自陌生人倉(cāng)庫(kù)里面寫(xiě)了刪除文件、上傳數(shù)據(jù)、修改系統(tǒng)配置的操作后果可能很嚴(yán)重。這不是危言聳聽(tīng)社區(qū)里已經(jīng)出現(xiàn)過(guò)惡意技能的預(yù)警案例。我的建議是三條只安裝可信來(lái)源的技能官方市場(chǎng)優(yōu)先。安裝后打開(kāi)腳本看一眼重點(diǎn)關(guān)注os.system、shutil.rmtree、requests.post這類敏感調(diào)用。給技能運(yùn)行設(shè)置一個(gè)獨(dú)立的臨時(shí)目錄不要讓它直接操作主項(xiàng)目文件。這和“自動(dòng)挖洞 skills”這種安全研究場(chǎng)景其實(shí)并不沖突。研究者在隔離環(huán)境里把攻擊性技能用于實(shí)驗(yàn)屬于正常測(cè)試但對(duì)普通用戶來(lái)說(shuō)保持謹(jǐn)慎是底線。6.2 skill 不是越復(fù)雜越好我見(jiàn)過(guò)一些人開(kāi)發(fā)技能時(shí)恨不得把所有邏輯都塞進(jìn)去寫(xiě)了幾十頁(yè)文檔、掛了七八個(gè)腳本。結(jié)果呢模型在第一步就看不懂了腳本互相依賴調(diào)試成本極高。我的經(jīng)驗(yàn)是一個(gè)技能只解決一個(gè)核心問(wèn)題。拿論文潤(rùn)色舉例你完全可以把“潤(rùn)色”“查重”“生成參考文獻(xiàn)”分別做成三個(gè)技能。它們可以放在同一個(gè)技能目錄下但各自獨(dú)立。這樣做的好處是模型觸發(fā)任何一個(gè)技能都不需要加載另外兩個(gè)的配置上下文更省出錯(cuò)時(shí)也更容易定位。熱詞里“superpower skills”聽(tīng)起來(lái)很玄但真正好用的 superpowers往往是那些專注、克制、流程清晰的技能。“superpowers 具體使用”這個(gè)問(wèn)題我自己的答案是別貪多把一個(gè)技能打磨到十倍好用比收藏一百個(gè)技能有價(jià)值得多。6.3 寫(xiě)技能文檔的三個(gè)反直覺(jué)技巧最后分享三個(gè)我寫(xiě)作時(shí)總結(jié)出來(lái)的小技巧可能和直覺(jué)不太一樣。第一個(gè)技巧是“先寫(xiě)禁忌再寫(xiě)流程”。因?yàn)槟P蛯?duì)否定指令的敏感度往往高于肯定指令。你說(shuō)“不要改變作者原意”比“保持作者意圖”更能約束行為。所以我在每個(gè)技能文檔的開(kāi)頭部分都會(huì)先列三到五條“不得做”的事項(xiàng)。第二個(gè)技巧是“引用具體的實(shí)例”??辗旱囊?guī)則很難被執(zhí)行但一個(gè)“before-after 示例”能讓模型立刻理解你要的風(fēng)格。我在論文潤(rùn)色技能里放了一個(gè)改前改后的對(duì)照表模型看到之后輸出的風(fēng)格明顯更接近我的期望。第三個(gè)技巧是“給技能一個(gè)內(nèi)部代號(hào)”。比如把論文潤(rùn)色技能命名為“學(xué)術(shù)文本清潔工”然后在 description 里同時(shí)寫(xiě)“論文潤(rùn)色”“學(xué)術(shù)文本清潔工”兩個(gè)說(shuō)法。模型在處理相關(guān)請(qǐng)求時(shí)會(huì)更容易聯(lián)想到這個(gè)技能。這個(gè)方法沒(méi)有論文級(jí)別的原理支撐但在我實(shí)測(cè)里效果不錯(cuò)。寫(xiě)在最后從一個(gè)小技能開(kāi)始如果你看完這篇文章還是覺(jué)得有點(diǎn)抽象我的建議特別簡(jiǎn)單今天就寫(xiě)一個(gè)文檔描述你手頭最重復(fù)的一件事比如周報(bào)怎么寫(xiě)、會(huì)議紀(jì)要怎么整理、代碼注釋怎么補(bǔ)。然后用三十分鐘把它變成一個(gè)最簡(jiǎn)版技能裝進(jìn)你的 AI 工具里試一次。這個(gè)動(dòng)作本身比任何教程都有用因?yàn)樗鼤?huì)逼你去想“流程到底是什么”“邊界在哪里”“怎么讓另一個(gè)智能體理解我的標(biāo)準(zhǔn)”。等你跑通第一個(gè)技能再看那些“skills大全”“skills推薦”你的視角會(huì)完全不一樣你不再是一個(gè)下載者而是一個(gè)能判斷、能修改、能創(chuàng)造的人。這大概就是 skills 這件事最有魅力的地方。