WorkBuddy 深度解析:从 Skill 机制到 AI Agent 实战工作流
1. 先搞清楚 WorkBuddy 到底是个什么东西1.1 它和普通聊天机器人的本质区别很多人第一次打开 WorkBuddy看到那个对话框第一反应就是“这不就是个套壳的聊天工具吗”。我一开始也这么想直到我把它接上本地文件系统、让它自己去读一个项目的目录结构、然后自动生成一份带图表的周报我才意识到这东西的定位完全不一样。WorkBuddy 是腾讯推出的一款 AI 工作台产品它的核心不是“陪你聊天”而是“替你干活”。你可以把它理解成一个能操作你电脑上文件和工具的智能助手——它背后跑的是大语言模型但外面套了一层执行框架让它能读文件、写文件、跑命令、调接口、生成网页、处理表格。这层框架就是现在大家都在说的AI Agent能力。普通聊天机器人是你问一句它答一句它不知道你电脑里有什么也动不了你的文件。WorkBuddy 不一样你告诉它“把这个文件夹里所有 CSV 合并成一张表按日期排序输出一个 Excel”它真的会去读文件、写脚本、执行、然后把结果放到你指定的位置。这个差别是质变级别的。1.2 谁适合用、谁可以先观望我用了大概三周时间把 WorkBuddy 从安装到日常使用摸了一遍。我的判断是如果你日常工作里有大量重复性的文件处理、数据整理、文档生成、代码辅助类任务它值得花时间学。比如运营同学每周要出数据周报、开发同学要写重复的 CRUD 代码、产品同学要整理竞品截图和文档这些场景它都能帮上忙。但如果你只是偶尔想问几个问题、查点资料那用普通聊天工具就够了没必要折腾 WorkBuddy 的配置。它的价值在于“持续帮你执行任务”而不是“偶尔回答一个问题”。另外要说明的是WorkBuddy 有国内版和国际版两个版本功能上有一些差异。国内版在中文语境、国内常用文件格式的支持上更顺手国际版在某些模型接入和插件生态上可能更丰富。具体选哪个看你主要处理什么类型的任务。我下面讲的内容以通用能力为主两个版本都能参考。1.3 核心概念先混个脸熟Skill、models.json、Agent在正式动手之前有几个词你得先知道是什么意思不然后面看教程会一头雾水。Skill是 WorkBuddy 里最核心的概念之一。你可以把它理解成“技能包”——一个 Skill 就是一套预设好的操作流程告诉 WorkBuddy 遇到某类任务时该怎么做。比如有一个“表格处理 Skill”里面定义了怎么读 CSV、怎么处理缺失值、怎么输出图表。你不需要每次都从头写提示词直接调用这个 Skill 就行。热词里提到的“skill编码247”“仓颉skill”“数学建模skill”都是不同场景下的 Skill 实例。models.json是配置文件用来告诉 WorkBuddy 你打算用哪个模型、API 地址是什么、密钥怎么填。这个文件相当于一个“模型通讯录”WorkBuddy 启动的时候会读它然后根据你的配置去调用对应的模型服务。Agent是更上层的概念。一个 Agent 可以包含多个 Skill有自己的记忆、有自己的工作目录、有自己的任务队列。你可以把 Agent 想象成一个“数字员工”Skill 是它掌握的技能models.json 是它的“大脑连接方式”。这三个概念的关系我用一个生活化的类比来解释Agent 是一家餐厅的店长Skill 是店长会做的菜models.json 是店长联系供应商的电话簿。店长根据客人点的菜你的任务翻菜谱调用 Skill打电话给供应商订食材通过 models.json 调用模型最后把菜做出来给你。2. 安装部署从零到能跑起来2.1 安装前的环境准备与版本选择WorkBuddy 支持 Windows、macOS 和 Linux 三个平台。我分别在 Windows 11 和 Ubuntu 22.04 上装过整体流程差不多但有几个细节要注意。Windows 用户建议用 Win10 1903 以上版本因为 WorkBuddy 依赖的一些运行库在老版本上可能缺失。macOS 用户建议 macOS 12 以上。Linux 用户注意官方对 Ubuntu 20.04/22.04 的支持最好其他发行版可能需要自己解决依赖问题。安装包从官网下载就行注意选对版本。国内版和国际版的安装包是分开的别下错了。下载完之后Windows 直接双击 exe 安装macOS 拖进 Applications 文件夹Linux 用 dpkg 或者解压 tar.gz 都行。注意安装路径尽量不要带中文和空格。我一开始装在“D:\我的软件\WorkBuddy”下面结果启动时报了一堆路径解析错误。后来改成“D:\WorkBuddy”就正常了。这个问题在 Windows 上特别常见很多工具都有这个毛病。安装完成后第一次启动会让你选工作目录。这个目录是 WorkBuddy 默认读写文件的地方建议单独建一个文件夹比如“D:\WorkBuddyWorkspace”不要直接选桌面或者文档根目录不然它可能会把你的个人文件也扫进去。2.2 models.json 配置让 WorkBuddy 连上模型装好之后第一件事就是配 models.json。这个文件一般在安装目录的 config 文件夹下或者在你的用户目录下的 .workbuddy 文件夹里。找不到的话在 WorkBuddy 设置里点“打开配置目录”就能定位到。models.json 的基本结构是这样的{ models: [ { name: default, provider: openai-compatible, base_url: https://api.example.com/v1, api_key: your-api-key-here, model: gpt-4, max_tokens: 4096, temperature: 0.7 } ] }几个关键字段说明一下。provider填模型服务商的类型大部分兼容 OpenAI 接口格式的都填openai-compatible。base_url是接口地址注意结尾要带/v1。api_key填你自己的密钥。model填模型名称比如gpt-4、claude-3-opus之类的。如果你有多个模型可以用可以在 models 数组里配多个然后给它们起不同的 name。WorkBuddy 在调用的时候会根据任务类型自动选择你也可以在对话里手动指定“用 xxx 模型来处理”。实操心得temperature 这个参数很关键。做代码生成、数据整理这类需要精确的任务建议调到 0.2 到 0.3做创意文案、头脑风暴这类任务可以调到 0.7 到 0.9。我一开始没注意这个用 0.9 的 temperature 让它整理 Excel结果它给我编了几行不存在的数据排查了半天才发现是温度太高导致模型“自由发挥”了。配好之后在 WorkBuddy 里发一句“你好测试一下连接”如果能正常回复说明配置成功。如果报错先检查 base_url 和 api_key 对不对再看网络能不能通。2.3 工作目录与缓存目录的调整前面提到工作目录建议单独建。这里再说一下缓存目录的问题。热词里有人问“workbuddy 系统缓存目录能改到 D 盘吗”答案是能但要看版本。在设置里找到“存储”或者“缓存”相关的选项一般可以手动指定缓存路径。如果设置里没有可以改配置文件。Windows 下配置文件通常在%APPDATA%\WorkBuddy\config.jsonmacOS 在~/Library/Application Support/WorkBuddy/config.jsonLinux 在~/.config/workbuddy/config.json。找到cache_dir这个字段改成你想要的路径就行。改完之后重启 WorkBuddy 生效。我建议把缓存目录和工作目录放在同一个盘这样文件读写效率高一些也方便统一管理。注意改缓存目录之前先把原来的缓存清一下不然旧缓存和新目录可能会冲突。清缓存的方法是在设置里点“清除缓存”或者手动删掉缓存目录下的所有文件。3. Skill 机制深度拆解WorkBuddy 的真正杀手锏3.1 Skill 是什么、为什么它比提示词更重要如果你只用 WorkBuddy 的对话框那它和普通聊天工具的区别不大。真正让它变成“工作台”的是 Skill 机制。一个 Skill 本质上是一个结构化的任务模板。它包含几个部分触发条件什么情况下用这个 Skill、执行步骤第一步做什么、第二步做什么、输入输出定义需要什么参数、产出什么结果、异常处理出错了怎么办。你可以把它理解成一张“操作说明书”WorkBuddy 拿到任务后先匹配有没有对应的 Skill有的话就按 Skill 的流程走没有的话才用通用能力去处理。为什么这很重要因为通用能力是不稳定的。你每次让模型自由发挥结果可能都不一样。但 Skill 把流程固定下来了同样的输入每次都能得到差不多的输出。这对于需要重复执行的任务来说价值巨大。热词里提到的“book to skill”“skill脚本”“skill开发指南”说的都是怎么把一套操作流程固化成一个 Skill。比如你每周都要做同一份数据周报第一次手动做的时候把步骤记下来然后写成一个 Skill以后每周只需要说“跑一下周报 Skill”它就能自动完成。3.2 内置 Skill 盘点与适用场景WorkBuddy 自带了一些内置 Skill我挑几个常用的说一下。文件整理 Skill给它一个目录它会自动按文件类型、修改日期、大小等维度分类整理。我试过把一个堆了三百多个文件的下载文件夹丢给它它花了大概两分钟整理成了“文档”“图片”“压缩包”“安装程序”几个子文件夹还生成了一份整理报告。表格处理 Skill支持 CSV、Excel 的读取、清洗、合并、透视、图表生成。这个 Skill 我用的最多。有一次我需要把十二个月的销售数据合并成一张年度表还要按区域和产品线做透视手动做至少要半小时用它大概三分钟就搞定了。代码辅助 Skill可以读代码文件、生成注释、写单元测试、做简单的重构建议。我拿它跑过一个 Python 项目让它给所有函数加 docstring准确率大概八成左右剩下的两成需要手动改一下但整体省了不少时间。文档生成 Skill根据模板和数据生成 Word、PDF、Markdown 文档。适合做周报、月报、项目总结这类格式固定的文档。网页生成 Skill热词里有人问“workbuddy 怎么生成网站发布”这个 Skill 就是干这个的。你给它内容和大致的样式要求它能生成一个静态 HTML 页面。不过要注意生成的页面比较基础复杂交互还是得自己写。3.3 自己动手写一个 Skill从需求到落地内置 Skill 不够用的时候就得自己写。写 Skill 没有想象中那么难核心就是把你的操作流程用结构化的方式描述出来。我拿一个实际例子来说。我需要一个 Skill功能是读取指定目录下所有 Markdown 文件提取其中的标题和一级列表项生成一份目录索引输出为 Markdown 文件。第一步定义 Skill 的基本信息。在 WorkBuddy 的 skills 目录下新建一个文件夹比如叫md-indexer里面放一个skill.json{ name: md-indexer, description: 读取目录下所有 Markdown 文件生成目录索引, version: 1.0, trigger: 当用户要求生成 Markdown 目录索引时触发, inputs: [ { name: source_dir, type: string, description: 源文件目录路径, required: true }, { name: output_file, type: string, description: 输出文件路径, required: true } ] }第二步写执行逻辑。可以用 JavaScript 或者 Python 写一个脚本放在同一个目录下比如index.jsconst fs require(fs); const path require(path); function extractHeadings(content) { const lines content.split(\n); const headings []; for (const line of lines) { if (line.startsWith(#)) { headings.push(line.trim()); } } return headings; } function main(sourceDir, outputFile) { const files fs.readdirSync(sourceDir).filter(f f.endsWith(.md)); let result # 目录索引\n\n; for (const file of files) { const content fs.readFileSync(path.join(sourceDir, file), utf-8); const headings extractHeadings(content); result ## ${file}\n\n; for (const h of headings) { result - ${h}\n; } result \n; } fs.writeFileSync(outputFile, result, utf-8); console.log(索引生成完成 outputFile); } const args process.argv.slice(2); main(args[0], args[1]);第三步在 skill.json 里补充执行命令的配置{ execution: { type: script, command: node index.js {{source_dir}} {{output_file}} } }这样一个 Skill 就写好了。重启 WorkBuddy 之后它就能识别到这个 Skill。你只需要说“用 md-indexer 处理 D:\docs 目录输出到 D:\index.md”它就会自动执行。实操心得写 Skill 的时候输入参数的类型和描述一定要写清楚。我一开始偷懒description 写得很模糊结果 WorkBuddy 经常传错参数。后来把每个参数的用途、格式、示例都写清楚准确率就上来了。另外Skill 的 trigger 描述也很重要写得越具体匹配越准。3.4 Skill 的组合与编排让多个技能协同工作单个 Skill 能解决单一问题但实际任务往往是复合的。比如“把上个月的销售数据整理成报表然后生成一份 PPT 大纲”这就涉及表格处理 Skill 和文档生成 Skill 的配合。WorkBuddy 支持 Skill 编排你可以在一个 Skill 里调用另一个 Skill。具体做法是在 skill.json 里用depends_on字段声明依赖{ name: monthly-report, depends_on: [table-processor, doc-generator], steps: [ { skill: table-processor, action: merge_and_pivot, params: { source: {{data_dir}}, group_by: region,product } }, { skill: doc-generator, action: create_outline, params: { data: {{previous_output}}, template: monthly-report } } ] }这种编排方式让 WorkBuddy 能处理更复杂的任务链。我实测下来两三个 Skill 串联的稳定性还不错但超过五个之后出错概率会明显上升。所以建议把复杂流程拆成几个中等复杂度的 Skill分步执行中间可以人工检查一下。4. 实战场景用 WorkBuddy 解决真实问题4.1 场景一批量文件整理与重命名我手头有一个文件夹里面是各种来源的图片命名乱七八糟有“IMG_001.jpg”“截图2024-01-15.png”“微信图片_20240115.jpg”等等。我需要把它们统一命名成“日期_序号.扩展名”的格式并按月份分文件夹。手动做的话大概要花二十分钟。用 WorkBuddy 的话我写了一个简单的 Skillconst fs require(fs); const path require(path); function getFileDate(filePath) { const stat fs.statSync(filePath); return stat.mtime; } function formatDate(date) { const y date.getFullYear(); const m String(date.getMonth() 1).padStart(2, 0); const d String(date.getDate()).padStart(2, 0); return ${y}${m}${d}; } function main(sourceDir) { const files fs.readdirSync(sourceDir).filter(f { const ext path.extname(f).toLowerCase(); return [.jpg, .jpeg, .png, .gif, .webp].includes(ext); }); const groups {}; for (const file of files) { const fullPath path.join(sourceDir, file); const date getFileDate(fullPath); const dateStr formatDate(date); const monthStr dateStr.slice(0, 6); if (!groups[monthStr]) groups[monthStr] []; groups[monthStr].push({ file, fullPath, dateStr }); } for (const [month, items] of Object.entries(groups)) { const monthDir path.join(sourceDir, month); if (!fs.existsSync(monthDir)) fs.mkdirSync(monthDir); items.sort((a, b) a.dateStr.localeCompare(b.dateStr)); items.forEach((item, index) { const ext path.extname(item.file); const newName ${item.dateStr}_${String(index 1).padStart(3, 0)}${ext}; fs.renameSync(item.fullPath, path.join(monthDir, newName)); }); } console.log(整理完成); } main(process.argv[2]);跑完之后所有图片按月份进了子文件夹文件名统一成了“20240115_001.jpg”这种格式。整个过程不到一分钟。注意批量重命名之前一定要先备份。我第二次跑的时候忘了备份结果因为时区问题日期算错了一天把一批文件的命名全搞乱了。虽然可以再改回来但多花了不少时间。所以不管多简单的批量操作先复制一份原始文件这是铁律。4.2 场景二数据清洗与报表生成这个场景是我用得最多的。每个月我要从几个不同的系统导出 CSV字段名不一样格式也不统一需要合并成一张标准表然后做透视和图表。WorkBuddy 的表格处理 Skill 能覆盖大部分需求。我的做法是先写一个配置描述文件告诉它每个 CSV 的字段映射关系然后让它按配置执行。{ sources: [ { file: system_a.csv, mapping: { order_id: 订单编号, amount: 金额, date: 日期 } }, { file: system_b.csv, mapping: { order_no: 订单编号, total: 金额, create_time: 日期 } } ], output: { file: merged.xlsx, pivot: { rows: [日期], columns: [来源], values: [金额], agg: sum } } }WorkBuddy 读这个配置自动完成字段映射、合并、透视、输出。我实测下来处理一万行左右的数据大概两到三分钟。数据量再大的话建议先做一轮预处理把不需要的列删掉能明显提速。实操心得日期格式是最容易出问题的。不同系统的日期格式五花八门有“2024-01-15”的有“2024/01/15”的还有“15/01/2024”的。我建议在配置里显式指定日期解析格式不要让 WorkBuddy 自动猜。自动猜的准确率大概七成左右显式指定能到九成五以上。4.3 场景三代码辅助与项目脚手架生成作为开发者我用 WorkBuddy 最多的场景是生成项目脚手架和写重复代码。比如我需要一个 Express 项目的基础结构包含路由、中间件、数据库连接、日志、错误处理这些模块。我写了一个 Skill输入项目名称和数据库类型输出完整的项目结构。核心逻辑是维护一套模板文件根据参数替换占位符然后写入目标目录。const fs require(fs); const path require(path); const templates { package.json: { name: {{projectName}}, version: 1.0.0, main: src/index.js, scripts: { start: node src/index.js, dev: nodemon src/index.js }, dependencies: { express: ^4.18.0, {{dbDriver}}: latest } }, src/index.js: const express require(express); const app express(); const port process.env.PORT || 3000; app.use(express.json()); app.use(/api, require(./routes)); app.listen(port, () { console.log(Server running on port port); }); }; function render(template, vars) { return template.replace(/\{\{(\w)\}\}/g, (_, key) vars[key] || ); } function main(projectName, dbType, targetDir) { const vars { projectName, dbDriver: dbType mysql ? mysql2 : pg }; for (const [filePath, content] of Object.entries(templates)) { const fullPath path.join(targetDir, filePath); const dir path.dirname(fullPath); if (!fs.existsSync(dir)) fs.mkdirSync(dir, { recursive: true }); fs.writeFileSync(fullPath, render(content, vars), utf-8); } console.log(项目生成完成); } main(process.argv[2], process.argv[3], process.argv[4]);这个 Skill 帮我省了不少时间。以前新建一个项目光是搭架子就要十几分钟现在一句话就能生成。注意生成的代码一定要过一遍。模型生成的代码有时候会有小问题比如漏了错误处理、变量名拼错、依赖版本不兼容。我一般会跑一遍 lint 和单元测试确认没问题再提交。4.4 场景四文档自动化与知识库整理我平时会收集很多技术文章和笔记散落在各个文件夹里。时间长了找东西特别费劲。我用 WorkBuddy 做了一个知识库整理 Skill功能是扫描指定目录下的所有 Markdown 和文本文件提取标题、标签、摘要生成一个可搜索的索引页面。这个 Skill 的核心是文本解析和索引生成。我用了简单的关键词提取算法结合文件路径和修改时间做排序。生成的索引是一个 HTML 页面支持按标签筛选和关键词搜索。function extractTags(content) { const tagRegex /#(\w)/g; const tags new Set(); let match; while ((match tagRegex.exec(content)) ! null) { tags.add(match[1]); } return Array.from(tags); } function extractSummary(content, maxLen 200) { const text content.replace(/#\s/g, ).replace(/\n/g, ).trim(); return text.slice(0, maxLen) (text.length maxLen ? ... : ); }生成的索引页面我放在本地用浏览器打开就能用。虽然比不上专业的知识管理工具但胜在轻量、可控、不需要额外装软件。5. 常见问题与避坑指南5.1 安装与启动阶段的典型问题问题一启动时报“找不到配置文件”。这个通常是因为安装路径或者用户目录路径包含中文或特殊字符。解决办法是把 WorkBuddy 装到纯英文路径下用户目录如果也是中文的可以在设置里手动指定配置目录。问题二模型连接失败。先检查 models.json 的格式对不对特别是引号和逗号。JSON 对格式要求很严格多一个逗号都会报错。然后检查 base_url 能不能通api_key 有没有过期。如果都没问题看看是不是网络需要代理——这里说的代理是指企业内网环境下的正常网络代理不是其他东西。问题三启动后界面空白。这个多半是缓存问题。找到缓存目录清空里面的文件重启试试。如果还不行卸载重装注意卸载的时候把用户目录下的 .workbuddy 文件夹也删掉。5.2 Skill 执行失败的排查思路Skill 执行失败是最常见的问题。我的排查顺序是这样的第一步看日志。WorkBuddy 的日志一般在安装目录的 logs 文件夹下或者用户目录的 .workbuddy/logs 下。日志里会记录 Skill 执行的每一步哪一步出错、错误信息是什么一目了然。第二步检查输入参数。很多时候是参数类型不对或者路径不存在。比如你传了一个相对路径但 Skill 的工作目录跟你想象的不一样就会找不到文件。第三步单独跑脚本。把 Skill 里的脚本拿出来在命令行里手动跑一遍看看能不能正常执行。这样能排除是 WorkBuddy 的问题还是脚本本身的问题。第四步简化任务。如果 Skill 逻辑比较复杂先把它拆成几个简单步骤逐步执行定位到具体是哪一步出的问题。实操心得我踩过最大的坑是路径问题。Windows 下路径分隔符是反斜杠但在 JSON 和 JavaScript 字符串里反斜杠是转义字符所以写路径的时候要么用双反斜杠\\要么用正斜杠/。我一开始没注意写了个D:\docs结果被解析成了D:docs找了好久才发现。5.3 性能优化与资源占用控制WorkBuddy 跑起来之后内存占用大概在 500MB 到 1GB 之间具体看任务复杂度。如果同时跑多个 Skill或者处理大文件内存会更高。优化建议有几个。第一处理大文件的时候尽量用流式读取不要一次性把整个文件读进内存。第二Skill 执行完之后及时释放资源不要一直挂着。第三如果不需要实时响应可以把任务放到后台队列里跑避免阻塞界面。另外缓存目录建议定期清理。我一般每周清一次能省不少磁盘空间。清理的时候注意别把正在用的缓存删了最好在 WorkBuddy 关闭的状态下操作。5.4 安全与权限管理注意事项WorkBuddy 能读写文件、执行命令所以权限管理很重要。我的建议是第一工作目录单独设置不要跟系统目录或者个人重要文件混在一起。第二Skill 脚本里涉及删除、覆盖的操作一定要加确认步骤不要直接执行。第三定期检查 Skill 列表把不用的或者来源不明的 Skill 删掉。第四如果多人共用一台机器给 WorkBuddy 单独建一个用户账号限制它的文件访问范围。注意不要随便下载和安装来源不明的 Skill。Skill 本质上是一段可执行的代码恶意 Skill 可能会窃取文件或者执行危险操作。只从官方渠道或者自己信任的来源获取 Skill。5.5 常见问题速查表问题现象可能原因排查方法解决方案启动报错找不到配置路径含中文或特殊字符检查安装路径和用户目录改为纯英文路径模型连接失败models.json 格式错误用 JSON 校验工具检查修正格式检查密钥Skill 执行无响应脚本死循环或等待输入查看日志最后一行终止任务检查脚本逻辑文件读写权限错误工作目录权限不足检查目录权限设置修改权限或换目录输出结果乱码编码格式不匹配检查文件编码统一用 UTF-8内存占用过高大文件一次性读取查看任务管理器改用流式处理Skill 匹配错误trigger 描述太模糊查看匹配日志细化 trigger 描述缓存目录占满磁盘缓存未清理查看缓存目录大小清理缓存或改目录6. 进阶玩法把 WorkBuddy 变成你的专属工作流引擎6.1 定时任务与自动化触发WorkBuddy 支持定时任务你可以设置某个 Skill 在指定时间自动执行。比如每天早上九点自动整理昨天的下载文件夹每周一自动生成上周的数据周报。配置方式是在 Skill 的 skill.json 里加一个 schedule 字段{ schedule: { type: cron, expression: 0 9 * * *, enabled: true } }这个 cron 表达式表示每天九点执行。WorkBuddy 启动之后会在后台守着到点自动触发。我设了几个定时任务跑了一个月稳定性还不错偶尔会有几分钟的延迟但整体可靠。实操心得定时任务建议错开时间不要都挤在同一时刻。我一开始设了三个任务都在整点触发结果它们抢资源有两个经常失败。后来改成间隔十分钟就正常了。6.2 多 Agent 协作与任务分发当你有很多不同类型的任务时可以建多个 Agent每个 Agent 负责一类任务。比如一个 Agent 专门处理文件整理一个专门处理数据报表一个专门写代码。每个 Agent 有自己的 Skill 集合和工作目录互不干扰。Agent 之间可以通过共享目录来交换数据。比如 Agent A 处理完数据写到共享目录Agent B 从共享目录读取数据继续处理。这种方式适合搭建比较复杂的自动化流水线。不过要注意多 Agent 会增加资源消耗和配置复杂度。如果任务量不大一个 Agent 就够了。我目前是三个 Agent一个日常文件处理一个数据报表一个代码辅助。再多的话管理成本就上来了。6.3 与外部工具链的集成思路WorkBuddy 可以通过命令行调用外部工具这意味着它可以跟很多现有工具链集成。比如调用 Git 做版本管理、调用 FFmpeg 处理视频、调用 ImageMagick 处理图片。集成的关键是写好 Skill 脚本把外部工具的调用封装进去。比如一个“视频压缩 Skill”内部调用 FFmpegconst { execSync } require(child_process); function compressVideo(input, output, crf 28) { const cmd ffmpeg -i ${input} -c:v libx264 -crf ${crf} -preset medium ${output}; execSync(cmd, { stdio: inherit }); } compressVideo(process.argv[2], process.argv[3]);这样你只需要说“压缩这个视频”WorkBuddy 就会调用 FFmpeg 去处理。类似的思路可以扩展到图片处理、文档转换、数据抓取等各种场景。6.4 从 Skill 到产品把工作流分享出去如果你写了一个好用的 Skill可以把它打包分享给同事或者社区。打包的方式很简单把 Skill 目录压缩成 zip 就行。别人拿到之后解压到 skills 目录下重启 WorkBuddy 就能用。分享的时候建议附上一份说明文档写清楚 Skill 的功能、输入参数、输出结果、依赖环境、注意事项。这样别人用起来不容易踩坑。我目前把自己写的几个 Skill 分享给了团队里的同事反馈还不错。特别是那个数据报表 Skill帮大家省了不少重复劳动。后续我打算把一些通用的 Skill 整理成一个合集方便新同事快速上手。7. 我个人的使用体会与建议用了这段时间我对 WorkBuddy 的整体评价是它是一个需要花时间调教、但调教好了能大幅提升效率的工具。它不是那种装完就能用的傻瓜软件你需要理解它的 Skill 机制、配置好模型、写好脚本才能发挥出真正的价值。如果你刚开始用我的建议是先从内置 Skill 入手熟悉基本操作和交互方式。然后挑一个你日常最重复、最耗时的任务尝试把它写成一个 Skill。第一个 Skill 可能会花你一两个小时但后面就快了。等你有了三五个自己的 Skill你会发现 WorkBuddy 真的变成了你的“工作台”而不只是一个聊天窗口。另外不要追求一步到位。我一开始想写一个“全能 Skill”把所有功能都塞进去结果调试了两天都没跑通。后来拆成几个小 Skill每个只做一件事反而很快就搞定了。这个思路跟写代码是一样的小步快跑迭代前进。最后再分享一个小技巧把你常用的提示词和 Skill 配置存成一个模板文件换电脑或者重装的时候直接导入能省不少重新配置的时间。我现在的做法是把整个 .workbuddy 目录定期备份到云盘换机器的时候直接恢复五分钟就能回到熟悉的工作环境。