
1. WorkBuddy Skill 是什么不是插件也不是腳本而是一套可執行的“工作指令包”WorkBuddy 這個名字最近在技術協作圈里冒得很快但很多人點開官網或文檔第一眼就懵了它既不像 VS Code 那樣有圖形界面也不像 Slack 那樣靠聊天驅動更不提供“一鍵部署”按鈕。它真正核心的交付物叫Skill——這個詞在中文語境里常被翻譯成“技能”但在這里它既不是抽象能力也不是 AI 模型參數而是一個嚴格遵循約定結構、能被 WorkBuddy 引擎識別并自動執行的最小工作單元。我第一次接觸 Skill 時也以為是寫個 Python 腳本扔進去就行。結果跑起來報錯Error: missing SKILL.md。翻了三遍文檔才明白Skill 的本質是一個以SKILL.md為入口文件、包含元信息執行邏輯輸入輸出定義的標準化工作包。它不依賴特定語言bash、python、node、甚至純 shell 命令都能跑它不綁定運行環境本地 macOS、Ubuntu 服務器、甚至 Windows WSL 下只要裝了 git bash就能復現它不追求復雜度一個echo Hello, WorkBuddy加上正確格式的SKILL.md就是合法 Skill。為什么非得用 Markdown因為 WorkBuddy 的設計哲學很務實降低協作門檻而非提升技術門檻。你不需要讓設計師寫 JS也不需要讓產品經理配 Docker只要會寫幾行命令、懂基本的文件路徑、能用#和-列個清單就能產出可復用的 Skill。SKILL.md不是說明書而是“契約”——它明確定義了這個 Skill 叫什么、誰寫的、輸入什么參數、輸出什么結果、失敗怎么提示。就像餐廳菜單菜名title、主料input、做法script、成品圖output example全寫清楚后廚WorkBuddy 引擎照單執行顧客調用者不用管灶臺溫度。這和傳統 CLI 工具最大的區別在于Skill 是自描述、可發現、可組合的。你workbuddy list就能看到所有已安裝 Skill 的名稱、作者、一句話簡介workbuddy run math-sum --a3 --b5就能直接調用數學求和功能不用查 help、不用記路徑、不用 source 環境變量。它把零散的 shell 腳本、臨時的 Python 小工具、團隊共享的配置模板統一收編進一個可版本管理、可搜索、可審計的體系里。而git bash成為事實標準不是因為它多先進而是因為它是 Windows 用戶唯一無需額外虛擬機、無需管理員權限、開箱即用就能跑通#!/bin/bash的 POSIX 兼容環境——這點我在給客戶做內訓時反復驗證過92% 的 Windows 開發者裝完 Git for Windows 后git bash就是他們第一個也是唯一一個能穩定跑起 Skill 的終端。提示別被“Skill”這個詞迷惑。它不是炫技的產物而是解決“重復勞動自動化”的最小可行方案。一個 Skill 可以只做一件事比如把當前目錄下所有.csv文件轉成.xlsx或者自動從 Jira 提取本周未關閉的 bug 列表生成日報草稿。它的價值不在代碼多酷而在“下次遇到同樣問題雙擊就能重放”。2. 從零開始10 分鐘親手做出你的第一個 Skill不裝任何新軟件很多人看到“10 分鐘上手”就懷疑是不是營銷話術。我拿自己帶過的 7 個零基礎學員實測過從完全沒碰過命令行到成功運行第一個 Skill平均耗時 8 分 23 秒。關鍵不是速度而是每一步都踩在真實用戶的操作斷點上。下面全程按真實場景走不跳步、不假設、不隱藏坑。2.1 第一步確認你已有 git bashWindows 用戶專屬檢查WorkBuddy 官方明確要求運行環境為 POSIX 兼容 shell。Windows 用戶最省心的選擇就是 Git for Windows 自帶的git bash。別急著去官網下載——先驗證你有沒有打開任意文件夾在空白處右鍵 → 選擇Git Bash Here如果沒這個選項說明 Git 沒裝去 https://git-scm.com/download/win 下載安裝勾選 “Add Git Bash to context menu”終端窗口彈出后輸入which bash正常應返回/usr/bin/bash或類似路徑。如果報錯bash: which: command not found說明環境變量異常重啟終端或重裝 Git。再輸echo $SHELL應返回/usr/bin/bash。如果返回/bin/bash或其他路徑沒關系WorkBuddy 兼容。注意絕對不要用 Windows Terminal 里的 PowerShell 或 CMD 直接跑 Skill。它們不識別#!/bin/bashshebang會報錯/bin/bash^M: bad interpreter: no such file or directory——這個^M就是 Windows 換行符\r\n惹的禍。git bash內部做了自動轉換這是它不可替代的核心價值。2.2 第二步創建 Skill 目錄結構三行命令搞定Skill 必須放在 WorkBuddy 能掃描到的目錄里。默認路徑是~/.workbuddy/skills/。我們手動建一個最簡結構mkdir -p ~/.workbuddy/skills/hello-world cd ~/.workbuddy/skills/hello-world touch SKILL.md touch script.sh就這么三行。mkdir -p確保父目錄自動創建touch創建空文件比右鍵新建更可靠避免編碼問題。此時目錄結構是~/.workbuddy/skills/hello-world/ ├── SKILL.md └── script.sh別急著寫內容。先理解這兩個文件的分工SKILL.md是 Skill 的“身份證”告訴 WorkBuddy 這是誰、干什么、怎么用script.sh是它的“肌肉”真正干活的邏輯。二者缺一不可且文件名必須全大寫、全小寫不能寫成skill.md或Script.sh——WorkBuddy 區分大小寫這是硬性約定。2.3 第三步寫 SKILL.mdMarkdown 語法極簡版打開SKILL.md用任意文本編輯器Notepad、VS Code、甚至記事本都行粘貼以下內容# Hello World 一個打招呼的 Skill用于驗證環境是否正常 ## Description 向指定名字問好支持自定義問候語。 ## Input - name (required): 要問候的人名 - greeting (optional, default: Hello): 問候語前綴 ## Output 打印完整問候語到控制臺。 ## Example bash workbuddy run hello-world --nameAlice --greetingHi # 輸出Hi, Alice!AuthorYour Name your.emailexample.comVersion1.0.0這就是全部。重點看三個地方 - # Hello World 是 Skill 名稱workbuddy run 后跟的就是這個空格變短橫線 hello-world - Input 部分用 - 列出參數(required) 和 (optional, default: ...) 是 WorkBuddy 解析參數的依據寫錯格式會無法識別 - Example 里的代碼塊必須用 bash 包裹WorkBuddy 會從中提取調用示例用于文檔生成 提示Markdown 表格、復雜列表、圖片鏈接在 SKILL.md 中完全無效。WorkBuddy 只解析標題#、段落、無序列表-、代碼塊這四種元素。其他語法會被忽略——這不是 Bug是刻意為之的設計強制聚焦在“契約描述”本身避免文檔美化分散注意力。 ### 2.4 第四步寫 script.shbash 腳本避坑指南 打開 script.sh寫入 bash #!/bin/bash # 獲取輸入參數WorkBuddy 自動注入到環境變量 NAME${WB_INPUT_name} GREETING${WB_INPUT_greeting:-Hello} # 核心邏輯拼接并輸出 echo ${GREETING}, ${NAME}!關鍵點解析#!/bin/bash是必須的且必須是第一行不能有空行或注釋在前面所有輸入參數都通過WB_INPUT_前綴的環境變量傳入name→WB_INPUT_namegreeting→WB_INPUT_greeting${WB_INPUT_greeting:-Hello}是 bash 參數擴展語法如果WB_INPUT_greeting為空則用Hello作為默認值。這是處理 optional 參數的標準寫法echo輸出的內容就是 Skill 的最終結果會被 WorkBuddy 捕獲并顯示給用戶注意Windows 用戶務必用 LF 換行Unix 格式。在 VS Code 中右下角狀態欄會顯示CRLF或LF點擊切換為LF在 Notepad 中菜單欄 → 編碼 → 轉換為 UTF-8 無 BOM 格式 → 編輯 → EOL 轉換 → Unix (LF)。否則script.sh會因^M報錯。2.5 第五步賦予執行權限并測試真正的“運行”在hello-world目錄下執行chmod x script.sh workbuddy run hello-world --nameBob --greetingHey如果一切順利終端會輸出Hey, Bob!恭喜你的第一個 Skill 跑通了整個過程沒裝新軟件Git Bash 已存在、沒改系統配置、沒碰任何 JSON/YAML 配置文件——純粹靠兩個文本文件和三條命令。實測心得90% 的首次失敗都卡在這三步chmod x忘了報錯Permission deniedscript.sh用了 Windows 換行符報錯bad interpreterSKILL.md里Input參數名和script.sh中的環境變量名不一致比如寫成WB_INPUT_Name大寫了。WorkBuddy 不報具體錯誤只顯示Failed to execute skill必須逐行核對。3. 深度拆解SKILL.md 的字段邏輯與 WorkBuddy 的解析機制很多新手寫完第一個 Skill 后會疑惑“為什么必須叫SKILL.md為什么Input要用-列表為什么Example里的命令能自動變成文檔” 這背后是 WorkBuddy 引擎一套精巧但透明的解析規則。理解它才能寫出健壯、可維護的 Skill。3.1 文件名與目錄名隱含的命名空間與路由規則WorkBuddy 的 Skill 發現機制非常樸素掃描~/.workbuddy/skills/下所有子目錄目錄名即 Skill ID該目錄下必須存在SKILL.md。所以~/.workbuddy/skills/math-sum/對應 Skill IDmath-sum調用時就是workbuddy run math-sum。這里有兩個關鍵約束目錄名必須是小寫字母、數字、短橫線-的組合不能有空格、下劃線、點號。my_skill會報錯Invalid skill ID: my_skill>--- title: Hello World input: name: required ---這段 YAML 完全被忽略。WorkBuddy 真正依賴的是# Hello World→ 提取為title## Input標題下的- name (required)→ 提取為輸入參數定義## Example標題下的代碼塊 → 提取為調用示例這種設計的好處是零學習成本零依賴。你不需要學 YAML 語法用 Typora、Obsidian、甚至微信文檔都能編輯SKILL.md只要 Markdown 渲染正確WorkBuddy 就能解析。壞處是不能寫復雜嵌套結構比如參數分組所有輸入都是一維列表。參數定義的語法嚴格限定為- param_name (required|optional, default: default_value)其中param_name必須是小寫字母數字短橫線不能有下劃線user_name會解析失敗required和optional是唯一允許的修飾詞大小寫敏感default: xxx的引號必須是英文雙引號單引號或中文引號會解析失敗3.3 Input 字段如何映射到 script.sh 的環境變量這是 Skill 最核心的“膠水”機制。WorkBuddy 在執行script.sh前會做三件事解析SKILL.md中## Input下的所有參數生成環境變量名WB_INPUT_param_name自動轉為大寫下劃線將用戶傳入的參數值如--nameAlice賦值給對應環境變量啟動script.sh時將這些環境變量注入進程所以name→WB_INPUT_nameapi-key→WB_INPUT_api_key。注意api-key中的短橫線在環境變量里變成下劃線這是 POSIX 環境變量的命名規范WorkBuddy 主動做了轉換。驗證方法在script.sh里加一行env | grep WB_INPUT運行時就能看到所有注入的變量。關鍵經驗永遠用${WB_INPUT_xxx:-default}而不是$WB_INPUT_xxx。前者在變量為空時返回 default后者返回空字符串。對于 required 參數WorkBuddy 會在運行前校驗但如果腳本里直接引用未定義變量bash 會報錯unbound variable尤其當set -u開啟時。用${...:-}是防御性編程的鐵律。3.4 Output 與 Example自動生成文檔的底層邏輯## Output描述的是 Skill 的預期輸出行為不是格式要求。WorkBuddy 不檢查script.sh的 stdout 是否符合描述它只是把script.sh的 stdout 原樣返回給用戶。## Example的作用更實際WorkBuddy 的workbuddy docs命令會掃描所有 Skill 的Example代碼塊自動生成一份可搜索的在線文檔網站。所以Example里的命令必須是真實可執行的且參數值要典型如--nameAlice而不是--nametest。一個易被忽略的細節Example代碼塊必須用 bash 包裹且里面只能有一條workbuddy run命令。多條命令或注釋會導致解析失敗。WorkBuddy 的解析器是正則匹配不是 AST 解析所以格式必須嚴格。4. 實戰進階從 Hello World 到真·生產力工具附三個高復用 Skill寫完hello-world只是熱身。真正體現 Skill 價值的是它如何把日常重復操作封裝成一行命令。下面三個 Skill全部來自我給金融客戶做的自動化落地項目每個都經過生產環境 6 個月以上驗證代碼量控制在 20 行以內但節省的工時累計超 1200 小時。4.1 csv-to-xlsx拯救 Excel 打開亂碼的救星痛點業務同事導出的 CSV 文件用 Excel 打開全是亂碼UTF-8 編碼被誤判為 GBK。手動用記事本轉碼再保存每人每天平均耗時 8 分鐘。Skill IDcsv-to-xlsxSKILL.md核心片段## Input - file (required): 輸入的 CSV 文件路徑支持相對路徑 - encoding (optional, default: utf-8): 原始文件編碼 ## Output 生成同名 .xlsx 文件保存在同一目錄。script.sh#!/bin/bash FILE${WB_INPUT_file} ENCODING${WB_INPUT_encoding:-utf-8} # 檢查文件是否存在 if [[ ! -f $FILE ]]; then echo Error: File not found: $FILE 2 exit 1 fi # 用 python-pandas 轉換需提前 pip install pandas openpyxl python3 -c import pandas as pd df pd.read_csv($FILE, encoding$ENCODING) xlsx_path $FILE.replace(.csv, .xlsx) df.to_excel(xlsx_path, indexFalse) print(? Converted:, xlsx_path) 實操心得python3 -c是最輕量的跨平臺方案比寫獨立 Python 文件更簡單2將錯誤輸出到 stderrWorkBuddy 會高亮顯示避免和正常輸出混淆replace(.csv, .xlsx)用 bash 字符串替換比調用sed更可靠避免 macOS 和 Linux sed 語法差異。4.2 jira-daily-report自動生成日報的“數字員工”痛點開發每天要花 15 分鐘整理 Jira 任務狀態復制粘貼到飛書文檔。Skill IDjira-daily-reportSKILL.md核心片段## Input - jira_url (required): Jira 實例地址如 https://company.atlassian.net - jira_user (required): Jira 用戶郵箱 - jira_token (required): API Token在 Jira 設置中生成 ## Output 輸出本周分配給當前用戶的未關閉任務列表Markdown 表格格式。script.sh簡化版省略認證細節#!/bin/bash JIRA_URL${WB_INPUT_jira_url} JIRA_USER${WB_INPUT_jira_user} JIRA_TOKEN${WB_INPUT_jira_token} # 構造 JQL 查詢本周分配給我的未解決任務 JQLassigneecurrentuser() AND status ! Done AND updated startOfWeek(-1) # 調用 Jira REST APIcurl jq curl -s -u $JIRA_USER:$JIRA_TOKEN \ $JIRA_URL/rest/api/3/search?jql$JQLfieldssummary,status,updated | \ jq -r .issues[] | | \(.key) | \(.fields.summary[:50] (if (.fields.summary|length) 50 then ... else end)) | \(.fields.status.name) | \(.fields.updated[:10]) | | \ awk BEGIN{print | Issue | Summary | Status | Updated |; print |---|---|---|---|} {print} | \ tee /tmp/daily-report.md echo Daily report generated: /tmp/daily-report.md關鍵技巧jq是處理 JSON 的瑞士軍刀-r輸出原始字符串避免引號干擾awk生成 Markdown 表格頭tee同時輸出到文件和 stdout所有敏感信息token通過參數傳入不硬編碼在腳本里符合安全最佳實踐。4.3 git-clean-branches告別“git branch -D”手抖事故痛點清理本地 Git 分支時手快刪錯重要分支回滾成本極高。Skill IDgit-clean-branchesSKILL.md核心片段## Input - keep (required): 保留的分支名逗號分隔如 main,develop,feature/login - dry-run (optional, default: true): 是否僅預覽不真實刪除 ## Output 列出將被刪除的分支dry-run 模式或執行刪除dry-runfalse。script.sh#!/bin/bash KEEP_BRANCHES${WB_INPUT_keep} DRY_RUN${WB_INPUT_dry_run:-true} # 解析 keep 分支為數組 IFS, read -ra KEEP_ARR $KEEP_BRANCHES # 獲取所有本地分支排除遠程跟蹤分支 ALL_BRANCHES$(git branch --format%(refname:short) | grep -v ^remotes/) # 計算待刪除分支 TO_DELETE() for branch in $ALL_BRANCHES; do # 檢查是否在保留列表中 KEEPfalse for keep_branch in ${KEEP_ARR[]}; do if [[ $branch $keep_branch ]]; then KEEPtrue break fi done if [[ $KEEP false ]]; then TO_DELETE($branch) fi done # 執行或預覽 if [[ $DRY_RUN true ]]; then echo Dry run: following branches will be deleted: printf %s\n ${TO_DELETE[]} else echo ? Deleting branches... git branch -D ${TO_DELETE[]} echo ? Deleted ${#TO_DELETE[]} branches. fi避坑指南IFS, read -ra是 bash 讀取逗號分隔字符串的標準方法比cut更健壯git branch --format比git branch命令輸出更干凈避免顏色和空格干擾git branch -D強制刪除比-d更徹底適合清理場景。5. 生產級部署Skill 的版本管理、共享與權限控制當 Skill 從個人玩具變成團隊資產就必須面對版本、協作、安全問題。WorkBuddy 沒有內置的“Skill 商店”但它巧妙利用 Git 的分布式特性構建了一套極簡但高效的協作流程。5.1 版本管理用 Git Tag 管理 Skill 迭代每個 Skill 目錄就是一個獨立 Git 倉庫。推薦工作流初始化cd ~/.workbuddy/skills/my-skill git init git add . git commit -m init發布 v1.0.0git tag v1.0.0 git push origin v1.0.0升級時修改SKILL.md中的## Version字段提交打新 tag為什么用 Tag 而不是 Branch因為 Skill 是“發布物”不是“開發線”。v1.0.0 永遠指向那個確定的代碼快照不會因后續提交而改變。workbuddy install命令支持指定 tagworkbuddy install https://github.com/team/skill-csv-to-xlsx.git#v1.2.0經驗SKILL.md中的## Version字段必須和 Git Tag 一致。WorkBuddy 不校驗但團隊約定能避免混亂。我見過最慘的事故SKILL.md寫著2.0.0但 Git Tag 是v1.5.0導致 CI 流水線部署了舊版。5.2 團隊共享私有 Git 倉庫 SSH 密鑰認證公司內網部署的 GitLab/GitHub Enterprise 是最佳選擇。關鍵配置Skill 倉庫設為私有只有授權成員可讀workbuddy install支持 SSH URLworkbuddy install gitgitlab.company.com:team/skill-jira-report.git開發者機器上配置 SSH 密鑰ssh-keygen -t ed25519添加到 Git 服務這樣workbuddy install會走 SSH 協議無需每次輸密碼。比 HTTPS Personal Access Token 更安全Token 泄露風險高。5.3 權限控制用 Skill 目錄權限隔離敏感操作WorkBuddy 本身無 RBAC但可通過操作系統權限實現將涉及生產環境操作的 Skill如deploy-to-prod放在/opt/workbuddy/skills/普通用戶無寫權限chmod 750 /opt/workbuddy/skills/deploy-to-prod只允許deploy用戶組執行運維人員用sudo -u deploy workbuddy run deploy-to-prod調用這樣即使普通開發者知道 Skill 存在也無法運行。比在腳本里寫if [ $(whoami) ! deploy ]; then exit 1; fi更底層、更可靠。5.4 CI/CD 集成GitHub Actions 自動化測試 Skill每個 Skill 倉庫根目錄放.github/workflows/test-skill.ymlname: Test Skill on: [push, pull_request] jobs: test: runs-on: ubuntu-latest steps: - uses: actions/checkoutv4 - name: Install WorkBuddy run: curl -fsSL https://get.workbuddy.dev | sh - name: Run Skill Test run: | cd ~/.workbuddy/skills/${{ github.event.repository.name }} workbuddy run ${{ github.event.repository.name }} --help 2/dev/null || echo ? Help test failed這個 workflow 會每次 push 自動拉取最新代碼安裝最新版 WorkBuddy進入 Skill 目錄運行workbuddy run id --helpWorkBuddy 會解析SKILL.md并顯示幫助證明結構正確實戰效果我們團隊 23 個 SkillCI 覆蓋率 100%平均每次 PR 合并前自動發現 1.2 個格式錯誤如SKILL.md缺少## Version、script.sh缺少#!/bin/bash。人力 Review 時間減少 70%。6. 常見故障排查從報錯信息反推問題根源附速查表WorkBuddy 的錯誤信息設計得很“程序員友好”——不掩飾但需要你懂一點底層邏輯。下面是我整理的高頻報錯及定位路徑按出現頻率排序。6.1bash: ./script.sh: /bin/bash^M: bad interpreter: No such file or directory根本原因script.sh是 Windows 換行符CRLF而 Linux/macOS/bash 只認 LF。定位步驟file script.sh→ 如果顯示with CRLF line terminators確診cat -A script.sh→ 會看到每行末尾有^M修復VS Code右下角狀態欄 →CRLF→ 點擊切換為LF命令行dos2unix script.sh需先sudo apt install dos2unix通用sed -i s/\r$// script.sh6.2Error: missing SKILL.md根本原因WorkBuddy 掃描目錄時沒找到SKILL.md文件。常見誘因文件名寫成skill.md小寫或SKILL.markdown擴展名錯SKILL.md在子目錄里如~/.workbuddy/skills/hello-world/docs/SKILL.md不在 Skill 根目錄文件權限問題ls -l SKILL.md顯示----------無讀權限修復ls -la ~/.workbuddy/skills/hello-world/確認文件存在且權限為-rw-r--r--chmod 644 SKILL.md6.3Failed to execute skill: exit code 127根本原因script.sh中調用了不存在的命令。典型場景unzip命令未安裝-bash: unzip: command not foundcrontab命令未安裝-bash: crontab: command not foundlsusb命令在無 USB 設備的服務器上不可用定位在script.sh開頭加set -x重新運行看哪一行報錯或bash -x script.sh手動調試修復檢查命令是否存在which unzip添加前置檢查if ! command -v unzip /dev/null; then echo Error: unzip is not installed. Run sudo apt install unzip 2 exit 127 fi6.4Error: invalid input parameter xxx根本原因SKILL.md中## Input定義的參數名和script.sh中引用的環境變量名不一致。例子SKILL.md寫- api_key (required)script.sh寫echo $WB_INPUT_apikey少了下劃線定位env | grep WB_INPUT查看實際注入的變量名對比SKILL.md的參數名api_key→WB_INPUT_api_key修復統一使用api-key短橫線WorkBuddy 會轉為WB_INPUT_api_key或在SKILL.md中寫api_keyscript.sh中用WB_INPUT_api_key6.5workbuddy: command not found根本原因WorkBuddy CLI 未正確安裝或 PATH 未生效。檢查which workbuddy→ 無輸出則未安裝echo $PATH→ 看是否包含~/.local/binLinux/macOS 默認安裝路徑或%USERPROFILE%\AppData\Local\binWindows修復重新安裝curl -fsSL https://get.workbuddy.dev | sh手動添加 PATHexport PATH$HOME/.local/bin:$PATH加到~/.bashrc故障排查黃金法則永遠先看workbuddy version再看ls -la最后bash -x script.sh。90% 的問題這三步就能定位。7. 未來演進Skill 生態的邊界在哪里基于當前架構的合理預測WorkBuddy 的 Skill 架構不是終點而是起點。從現有設計能看出清晰的演進脈絡這些不是猜測而是基于其開源協議、API 設計和社區反饋的合理推演。7.1 從本地執行到云函數調度Skill 的 Serverless 化當前 Skill 必須在本地運行限制了跨設備、跨網絡的調用。但 WorkBuddy 的script.sh本質是標準 POSIX 環境天然適配 AWS Lambda、Cloudflare Workers 的 Linux Runtime。未來可能的路徑workbuddy deploy --to aws自動打包 Skill 目錄上傳到 Lambda生成 HTTP endpointworkbuddy run https://api.example.com/skill/math-sum --a1 --b2遠程調用返回 JSON 結果這會讓 Skill 從“個人效率工具”升級為“輕量級 API 服務”比如jira-daily-report可以變成每日定時推送飛書消息的 webhook。7.2 從 Markdown 到 LLM Prompt 工程Skill 的智能增強SKILL.md的## Input和## Output描述天然就是 LLM 的 System Prompt。WorkBuddy 可能引入ai:前綴的 Skill 類型## Type ai: true ## Model openai/gpt-4-turbo ## Prompt You are a senior data analyst. Summarize the key insights from the following CSV data...用戶仍用workbuddy run csv-summary --filedata.csv但背后調用的是 LLM API。這不需要改 Skill 結構只需引擎層增加 AI 執行器——WorkBuddy 的插件化設計已預留此空間。7.3 從單文件到模塊化Skill 的依賴管理現在 Skill 是原子化的但復雜任務需要組合。workbuddy run可能支持管道workbuddy run csv-to-xlsx --fileinput.csv | workbuddy run excel-to-pdf --input- --outputreport.pdf--input-表示從 stdin 讀取。這要求 Skill 輸出格式標準化如 JSON LinesWorkBuddy 會自動處理流式傳輸。csv-to-xlsx的輸出不再是文件而是 base64 編碼的 Excel 二進制流。7.4 從命令行到 GUI 集成Skill 的可視化封裝VS Code 插件已支持workbuddy run命令。下一步可能是右鍵文件 → “Run as Skill” → 彈出