Skill 實戰指南:將真實高頻工作流封裝成 Skill
整理版優先睇
將高頻工作流封裝成Skill,令AI自動幫你重複執行
呢篇文章係一位開發者分享佢點樣將日常工作入面一個高頻重複嘅任務——維護權限信息——封裝成一個叫「update-permission」嘅AI Skill。佢用Codex呢個AI編程工具,配合skill-creator助手,成個開發流程(識別場景、拆解工作流、封裝、測試、迭代)都由AI幫手完成,人類只係負責溝通需求。
佢嘅具體任務係:喺Excel嘅兩個Sheet分別添加權限數據,再同步更新SQL腳本並執行落數據庫。作者親身示範由零開始建立Skill嘅完整過程,包括點樣寫觸發Prompt、點樣用Python代碼處理Excel同SQL,同埋點樣測試同修復問題(例如跳過空行)。最後仲加入校驗功能確保Excel、腳本同數據庫一致。
成個經驗畀佢嘅結論係:Skill唔再係抽象概念,而係可以實實在在提升效率嘅工具。只要識別到固定流程嘅任務,任何人都可以仿效呢個方法,用AI幫自己自動化重複工作。文章提供咗清晰嘅步驟同真實示範,對想學Skill開發嘅人好有參考價值。
- Skill係一套可複用嘅工作方法組合,令AI下次面對同類任務時自動執行,唔使重新摸索。
- 開發流程分五步:識別場景、拆解工作流、封裝、測試驗證、迭代優化,全部由AI幫你完成。
- 作者用Codex同skill-creator實戰封裝,關鍵係要清楚定義每個步驟嘅輸入輸出同規則。
- 測試階段發現AI會跳過空行,但可以叫AI自己修復;加入校驗功能可確保Excel、SQL、數據庫三者一致。
- 你可以將自己日常工作嘅高頻任務(例如更新資料、生成報表)用同樣方法封裝成個人專屬Skill。
咩係Skill?點解要封裝?
Skill係將一套可複用嘅工作方法、步驟、工具同規範打包成一個單位,等AI下次遇到類似任務時可以直接調用,唔使由頭摸索。作者話,只要日常工作中某一類任務流程固定而且高頻執行,就值得封裝成Skill。
成個封裝過程都係AI幫手做,人類只係負責溝通需求
真實場景:權限信息更新嘅高頻任務
作者日常工作成日要喺Excel加外圍系統調用權限信息,Excel有兩個Sheet:Sheet1有編號、名稱、參數信息、表名、類別;Sheet2額外多版本號、創建時間、更新時間,仲要同步更新init.sql嘅insert語句同執行落數據庫。
呢個任務流程完全固定,每個禮拜都要做幾次
- 1 將資訊加到test.xlsx嘅Sheet1同Sheet2,Sheet2新行嘅版本號設1,時間設當前時間,格式yyyy-MM-dd HH:MM:SS。
- 2 Excel新行要有邊框,單元格左對齊。
- 3 更新init.sql,只喺#數據庫初始化模塊加insert語句。
- 4 用Python執行新增嘅insert語句(因為冇裝mysql命令)。
用Codex封裝Skill:實戰示範
作者揀Codex做AI編程工具,喺工作空間開啟skill-creator技能,然後輸入創建Skill嘅提示詞。提示詞入面詳細描述咗檔案結構、流程步驟同觸發條件(當用戶講「更新權限信息」就觸發)。
Skill名字叫update-permission,觸發詞係「更新權限信息」
當前文件夾有兩個文件,test.xlsx和init.sql。test.xlsx文件有兩個sheet頁,Sheet1有5列,列名分別是:編號、名稱、參數信息、表名、類別,Sheet2有6列,列名分別是:編號、表名、類別、版本號、創建時間、更新時間。init.sql有3個模塊,#數據庫 模塊為實際的數據庫信息,#建表語句 模塊為test.xlsx的Sheet2對應的表結構,#數據庫初始化 模塊為對應的insert語句。我想創建一個 skill,該 skill 的名字是:update-permission,每當用戶發送:更新權限信息,觸發該 skill。請注意,skill 文檔,儘量使用中文描述。該 skill 的流程是:首先詢問用戶需添加的權限信息是啥,用戶依次輸入 編號、名稱、參數信息、表名、類別。將用戶輸入的信息添加到test.xlsx文件的Sheet1,信息嚴格按照列名添加,保證原有信息不變。將用戶輸入的編號、表名、類別,添加到test.xlsx文件的Sheet2,信息嚴格按照列名添加,Sheet2新添加的行剩餘的3列賦值邏輯為:版本號賦值1,創建時間和更新時間賦值當前日期時間,格式為 yyyy-MM-dd HH:MM:SS。當test.xlsx文件的每個sheet頁新增一行後,如果該行沒有設置邊框,則添加邊框;新增的內容,單元格內全部設置為左對齊。更新完test.xlsx以後,更新init.sql,每次更新,#數據庫 和 #建表語句 保持不動,只在#數據庫初始化 模塊添加新增行對應的insert 語句。更新完init.sql後,根據模塊信息,執行新增的insert語句,由於我本地沒有安裝 mysql 命令,使用 python 直接執行 sql 語句。
幾分鐘之後,Codex自動生成咗SKILL.md文件同scripts文件夾,入面有Python代碼處理Excel同SQL。呢個就係Skill嘅核心。
AI自動生成咗SKILL.md同Python腳本,人類唔使寫一行代碼
測試發現問題,迭代修復
作者輸入「更新權限信息」測試,發現Excel數據成功添加,但Sheet1由第12行開始、Sheet2由第22行開始,明明第3行就已經係空行,即係AI跳過咗空行。
跳過空行係AI常見嘅邏輯漏洞,要叫佢自己修復
作者叫Codex修復問題,再測試就正常。之後仲加多個校驗功能去核對Excel、SQL腳本同數據庫三者嘅數據一致性,再故意整唔一致嘅數據測試,結果都過關。
總結:從概念到實戰,Skill開發冇想像中難
作者話之前對Skill嘅理解只停留喺概念層面,經歷呢次實戰之後,對Skill有咗更深體會。成個過程由AI主導,人類只需要清晰描述需求,就能得到一個可重用嘅自動化工具。
只要係固定流程嘅高頻任務,都值得封裝成Skill
呢篇文章提供嘅步驟同示範,任何有類似重複工作嘅人都可以跟住做。唔使識寫代碼,只要用AI對話就可以建立自己嘅Skill。
乜嘢係 Skill?

第 1 步,識別場景
第 2 步,拆解工作流程



將要加嘅 編號、名稱、參數資訊、表名、類別資訊加落 test.xlsx 檔案嘅 Sheet1。 將編號、表名、類別資訊加落 test.xlsx 檔案嘅 Sheet2,Sheet2 新加嗰行剩低嘅 3 列賦值邏輯係:版本號賦值 1,創建時間同更新時間賦值而家嘅日期時間,格式係 yyyy-MM-dd HH:MM:SS。 Excel 新加嘅行一定要有邊框,儲存格入面設定為靠左對齊 更新完 test.xlsx 之後,更新 init.sql,喺 #數據庫初始化 模塊加返新加行對應嘅 insert 語句。 更新完 init.sql 之後,執行新加嘅 insert 語句,確保實際數據庫入面有新加嘅資訊。
第 3 步,封裝 Skill
首先問用戶要加嘅權限資訊係乜,用戶依次輸入 編號、名稱、參數資訊、表名、類別。 將用戶輸入嘅資訊加落 test.xlsx 檔案嘅 Sheet1,資訊嚴格跟住列名添加,確保原有資訊唔變。 將用戶輸入嘅編號、表名、類別,加落 test.xlsx 檔案嘅 Sheet2,資訊嚴格跟住列名添加,Sheet2 新加嗰行剩低嘅 3 列賦值邏輯係:版本號賦值 1,創建時間同更新時間賦值而家嘅日期時間,格式係 yyyy-MM-dd HH:MM:SS。 當 test.xlsx 檔案嘅每個 sheet 頁新加咗一行之後,如果嗰行冇設定邊框,就加返邊框;新加嘅內容,儲存格入面全部設定為靠左對齊。 更新完 test.xlsx 之後,更新 init.sql,每次更新,#數據庫 同 #建表語句 保持唔鬱,淨係喺 #數據庫初始化 模塊加返新加行對應嘅 insert 語句。 更新完 init.sql 之後,根據模塊資訊,執行新加嘅 insert 語句,因為我本地冇安裝 mysql 指令,改用 python 直接執行 sql 語句。


第 4 步,測試驗證






第 5 步,迭代優化







總結
影片演示
什麼是 Skill ?

第 1 步,識別場景
第 2 步,拆解工作流



將待添加的 編號、名稱、參數信息、表名、類別信息添加到test.xlsx文件的Sheet1。 將編號、表名、類別信息添加到test.xlsx文件的Sheet2,Sheet2新添加的行剩餘的3列賦值邏輯為:版本號賦值1,創建時間和更新時間賦值當前日期時間,格式為 yyyy-MM-dd HH:MM:SS。 Excel新添加的行保證有邊框,單元格內設置為左對齊 更新完test.xlsx以後,更新init.sql,在#數據庫初始化 模塊添加新增行對應的 insert 語句。 更新完init.sql後,執行新增的 insert 語句,保證實際數據庫中有新增的信息。
第 3 步,封裝 Skill
首先詢問用戶需添加的權限信息是啥,用戶依次輸入 編號、名稱、參數信息、表名、類別。 將用戶輸入的信息添加到test.xlsx文件的Sheet1,信息嚴格按照列名添加,保證原有信息不變。 將用戶輸入的編號、表名、類別,添加到test.xlsx文件的Sheet2,信息嚴格按照列名添加,Sheet2新添加的行剩餘的3列賦值邏輯為:版本號賦值1,創建時間和更新時間賦值當前日期時間,格式為 yyyy-MM-dd HH:MM:SS。 當test.xlsx文件的每個sheet頁新增一行後,如果該行沒有設置邊框,則添加邊框;新增的內容,單元格內全部設置為左對齊。 更新完test.xlsx以後,更新init.sql,每次更新,#數據庫 和 #建表語句 保持不動,只在#數據庫初始化 模塊添加新增行對應的insert 語句。 更新完init.sql後,根據模塊信息,執行新增的insert語句,由於我本地沒有安裝 mysql 命令,使用 python 直接執行 sql 語句。


第 4 步,測試驗證






第 5 步,迭代優化






