ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

AI Agent Skills从入门到精通:模块化技能包开发与实战指南

AI Agent Skills从入门到精通:模块化技能包开发与实战指南 1. 从“skills”这个热词说起它到底是什么为什么突然火了最近几个月不管是在技术社区、开发者群聊还是在做AI应用的朋友圈子里“skills”这个词出现的频率高得离谱。你随便翻翻热搜词就能看到一堆相关组合Agent Skills、Claude Agent Skills、Codex Skills、Skills开发、Skills推荐、Skills大全……看起来像是某种新概念但仔细一琢磨它其实指向一个非常朴素的东西——给AI智能体AI Agent装上一套可复用、可组合、可独立分发的“技能包”。我最早接触这个概念是在做自动化工作流的时候。当时我们有一堆重复性任务抓取网页数据、生成结构化报告、调用外部API、做简单的图像处理。每次都要写一大段提示词或者干脆硬编码到脚本里。后来发现如果把每个独立能力封装成一个标准化的“skill”让Agent自己去判断什么时候该调用哪个整个系统的灵活性和可维护性会提升一个档次。这就是skills的核心价值把“能力”从“提示词”里解耦出来变成像手机App一样可以安装、卸载、组合的模块。那它解决了什么问题简单说三个痛点。第一复用难。以前你写了一个很牛的提示词让AI帮你做竞品分析换一个项目就得重新写一遍或者复制粘贴改半天。有了skills你把它打包成一个独立单元下次直接挂载就行。第二组合难。一个复杂任务往往需要多个能力配合比如“先搜索、再总结、再生成图表、最后发邮件”。如果全塞在一个提示词里AI很容易顾此失彼。skills允许你把每个环节拆开让Agent按需调度。第三分发难。你写了一个好用的skill想分享给同事或者社区以前只能发一段文本对方还得手动配置环境。现在有标准化的skill格式和安装方式一条命令就能搞定。适合谁来参考如果你是AI应用开发者想构建更复杂的Agent工作流skills是必须掌握的抽象层。如果你是效率工具爱好者喜欢折腾各种AI助手学会安装和配置skills能让你少写很多重复提示词。如果你是技术博主或内容创作者理解skills的底层逻辑能帮你写出更专业的测评和教程。哪怕你只是普通用户知道skills是什么、怎么找、怎么装也能让你手里的AI工具变得更好用。我写这篇东西的出发点很简单网上关于skills的资料太碎了要么是官方文档的机械翻译要么是零散的安装教程缺少一个从“为什么”到“怎么做”再到“踩过哪些坑”的完整梳理。我打算结合自己实际折腾的经验把skills这件事讲透。文章会覆盖核心设计思路、关键细节、实操流程、常见问题排查以及一些只有真正用过才会知道的技巧。你不需要有很深的编程背景只要能看懂基本的命令行操作就能跟着走一遍。2. 核心设计思路拆解为什么是“技能包”而不是“大提示词”2.1 从单体提示词到模块化技能的演进逻辑早期我们用AI Agent基本就是一个大提示词打天下。你告诉它“你是一个资深数据分析师请帮我完成以下任务第一步……第二步……第三步……”。这种方式在任务简单、步骤固定的时候还能凑合但一旦任务变复杂问题就暴露了。最典型的是上下文窗口压力你把所有规则、示例、工具说明全塞进一个提示词长度可能好几千tokenAI在处理具体步骤时容易被无关信息干扰导致输出质量下降。另一个问题是调试困难如果最终结果不对你很难判断是哪个环节的指令出了问题只能从头到尾改一遍。skills的思路完全不同。它把每个独立能力拆成一个单独的模块每个模块有自己的描述、触发条件、执行逻辑和依赖声明。Agent在运行时根据当前任务需求动态加载相关的skill。这就像你电脑里装了很多软件需要修图时打开Photoshop需要写代码时打开VS Code而不是把所有功能都塞进一个巨型程序里。这种按需加载的机制既节省了上下文空间又让每个skill可以独立迭代和测试。我举个实际例子。假设你要做一个“自动生成周报”的Agent。如果用单体提示词你得写“你是一个周报助手请先读取我本周的Git提交记录然后总结每个项目的进展再按照模板生成Markdown格式的周报最后发送到指定邮箱。”这一长串指令AI执行时很容易漏掉某个步骤。但如果拆成skills你可以有三个独立技能git-log-reader读取提交记录、weekly-report-generator按模板生成报告、email-sender发送邮件。Agent先调用第一个获取数据再把数据传给第二个生成内容最后调用第三个发送。每个skill只关心自己的事逻辑清晰出错也容易定位。2.2 一个合格skill应该具备哪些核心要素不是随便写一段提示词就能叫skill。根据我实际开发和使用的经验一个能稳定工作的skill至少包含以下几个部分唯一标识与版本号比如web-scraper-v2方便管理和更新。版本号很重要因为不同项目可能依赖不同版本的skill没有版本控制很容易出现“昨天还能跑今天更新了就崩了”的情况。功能描述用一两句话说明这个skill能做什么、什么时候该用。这段描述会被Agent用来判断是否调用该skill所以必须精准。我见过有人写“处理数据”这种描述等于没写Agent根本不知道什么时候该用它。输入输出定义明确需要什么参数、返回什么结果。比如一个“翻译”skill输入应该是{text: string, target_language: string}输出是{translated_text: string}。有了清晰的接口定义不同skill之间才能无缝拼接。执行逻辑可以是提示词模板、代码片段、API调用或者几者的组合。这部分是skill的核心但也是最灵活的。简单skill可能只是一段精心设计的提示词复杂skill可能包含完整的Python脚本。依赖声明如果skill需要特定的环境、库或者外部服务必须写清楚。比如一个“图像识别”skill可能依赖opencv-python和某个模型文件。没有依赖声明别人拿到你的skill根本跑不起来。使用示例给出一两个典型调用案例方便其他人和Agent快速理解。示例最好包含输入和预期输出这样调试时也有参照。注意很多人写skill时只关注“功能实现”忽略了“描述”和“示例”。实际上在Agent自动调度场景下描述和示例的质量直接决定了skill能否被正确调用。我踩过的坑就是写了一个很强大的数据处理skill但描述太模糊Agent从来不用它反而去调用一个功能更弱但描述清晰的skill。2.3 为什么标准化格式如此重要skills能火起来很大程度上是因为出现了事实上的标准格式。早期大家各写各的有人用JSON有人用YAML有人直接写Markdown。结果就是A平台的skill拿到B平台用不了社区无法形成合力。后来一些主流平台开始推行统一的skill描述规范比如用skill.yaml定义元数据用main.py或prompt.md定义执行逻辑用requirements.txt声明依赖。这种标准化带来的好处是显而易见的跨平台兼容同一个skill可以在不同的Agent框架里运行只要框架支持标准格式。工具链支持有了标准格式就可以开发配套的工具比如skill安装器、依赖检查器、版本管理器。你看到的npx安装命令就是这种工具链的体现。社区生态标准统一后大家才愿意分享和复用。现在已经有专门的skill市场、skill大全网站甚至出现了“skills推荐”这样的热搜词说明生态正在形成。我个人的判断是skills的标准化趋势不可逆。如果你现在开始积累自己的skill库建议从一开始就遵循主流格式哪怕暂时只用在一个项目里。这样以后想迁移或者分享成本会低很多。3. 核心细节解析与实操要点从零手搓一个skill3.1 环境准备你需要哪些基础工具在开始写skill之前先把环境搭好。根据我的经验下面这些工具基本是必备的Node.js和npm/npx很多skill安装器和运行环境依赖Node.js。npx命令可以直接运行npm包里的可执行文件不需要全局安装非常方便。建议安装Node.js 18以上的LTS版本。Python 3.10如果你的skill涉及数据处理、机器学习或者调用某些Python库Python环境必不可少。建议用venv或conda创建独立环境避免依赖冲突。Git用于拉取skill仓库、管理版本。虽然可以直接下载压缩包但用Git更方便更新。一个顺手的代码编辑器VS Code就行装个YAML和Markdown插件写skill描述文件会舒服很多。Agent运行环境这个取决于你用的平台。有的平台提供云端Agent有的需要本地运行。不管哪种确保你能访问到skill目录并且有权限安装新skill。提示如果你在Windows上开发建议用WSL2Windows Subsystem for Linux。很多skill的安装脚本和依赖库在Linux环境下兼容性更好用WSL可以避免大量“找不到命令”或“编译失败”的问题。我早期在Windows原生环境折腾光一个playwright install就卡了半天换到WSL后一路顺畅。3.2 目录结构一个标准skill长什么样一个规范的skill目录通常包含以下文件my-skill/ ├── skill.yaml # 元数据名称、版本、描述、作者、依赖 ├── main.py # 执行逻辑如果是代码型skill ├── prompt.md # 提示词模板如果是提示词型skill ├── requirements.txt # Python依赖 ├── package.json # Node依赖如果需要 ├── examples/ │ ├── input.json # 示例输入 │ └── output.json # 示例输出 └── README.md # 使用说明skill.yaml是最关键的文件它定义了skill的“身份证”。一个典型的skill.yaml可能长这样name: web-content-extractor version: 1.2.0 description: 从指定URL提取正文内容去除广告和导航栏返回干净的Markdown文本。 author: your-name tags: - web - scraping - content inputs: - name: url type: string required: true description: 目标网页的完整URL - name: timeout type: integer required: false default: 30 description: 请求超时时间秒 outputs: - name: content type: string description: 提取后的正文Markdown - name: title type: string description: 网页标题 dependencies: python: - requests2.28.0 - beautifulsoup44.11.0 - markdownify0.11.0这个文件写清楚了skill叫什么、干什么、需要什么输入、返回什么输出、依赖哪些库。Agent在加载skill时先读这个文件判断当前任务是否需要这个能力然后检查依赖是否满足最后才执行。3.3 编写执行逻辑提示词型 vs 代码型skill的执行逻辑分两种主要类型选择哪种取决于任务性质。提示词型skill适合那些“用自然语言描述清楚就能做好”的任务比如文本总结、风格改写、信息抽取。这类skill的核心是一个精心设计的提示词模板。写提示词型skill有几个要点第一角色设定要具体不要只说“你是一个助手”而是“你是一个专注于科技新闻的摘要编辑”。第二输出格式要明确最好给出JSON Schema或者Markdown模板减少AI自由发挥的空间。第三边界条件要写清比如“如果输入文本少于50字直接返回原文并标注‘文本过短’”。代码型skill适合需要精确计算、外部API调用、文件操作的任务。比如“计算两个日期之间的工作日天数”用代码实现比让AI算靠谱得多。代码型skill的入口通常是一个函数接收输入参数返回输出结果。写代码型skill时错误处理特别重要。你永远不知道用户会传进来什么奇怪的数据所以每个外部调用都要加try-except每个输入都要做类型校验。我见过一个skill因为没处理空字符串输入导致整个Agent流程崩溃排查了半天才发现是某个环节传了个空值。还有一种混合型skill先用代码做预处理再把结果交给提示词做后处理。比如“网页内容提取”skill先用代码抓取网页、解析HTML、提取正文然后用提示词对正文做摘要或分类。这种组合方式能兼顾效率和灵活性。3.4 依赖管理别让环境问题毁掉你的skill依赖管理是skill开发中最容易被忽视、也最容易出问题的环节。我总结了几条经验明确版本范围不要写requests要写requests2.28.0,3.0.0。不锁版本的话某天依赖库发布不兼容更新你的skill就挂了。区分必需和可选依赖有些依赖只在特定功能下需要可以标记为可选避免安装时引入过多不必要的包。提供安装脚本在README里写清楚安装步骤最好提供一个install.sh或setup.py一键搞定。测试干净环境写完skill后在一个全新的虚拟环境里跑一遍确保没有遗漏依赖。我习惯用Docker起一个干净的Python镜像来测试虽然麻烦一点但能提前发现很多问题。注意如果你在skill里用了某个需要下载大模型文件的库比如某些NLP库一定要在文档里说明并提供一个跳过下载的选项。否则别人安装你的skill时可能莫名其妙下载几个G的文件体验极差。4. 实操过程与核心环节实现从安装到调用的完整流程4.1 安装一个现成skill以npx方式为例假设你在某个skill市场找到了一个想要的skill比如web-content-extractor。最常见的安装方式是通过npx命令。打开终端执行npx skill-installer install web-content-extractor这条命令背后做了几件事首先npx会临时下载skill-installer这个工具包如果本地没有的话然后skill-installer根据skill名称去默认的skill仓库查找对应的包找到后下载到本地的skill目录通常是~/.agent/skills/或者当前项目的.skills/目录最后检查并安装依赖。安装完成后你可以用下面的命令查看已安装的skill列表npx skill-installer list如果安装过程中出现网络问题可以尝试指定镜像源或者手动下载。有些skill也支持直接从GitHub仓库安装npx skill-installer install https://github.com/username/web-content-extractor这种方式适合那些还没发布到官方市场的skill。不过要注意从非官方源安装时最好先看一眼代码确认没有恶意操作。毕竟skill本质上是可以执行代码的安全第一。4.2 配置skill让Agent知道什么时候用它安装完skill只是第一步接下来要配置Agent让它知道在什么场景下调用这个skill。不同的Agent平台配置方式不同但核心逻辑是一样的把skill的描述信息注册到Agent的“技能列表”里。以我用的一个本地Agent框架为例配置文件通常是一个YAML或JSON文件里面有一个skills字段agent: name: my-assistant skills: - path: ~/.agent/skills/web-content-extractor enabled: true priority: 10 - path: ~/.agent/skills/weekly-report-generator enabled: true priority: 5priority字段决定当多个skill都能处理某个请求时Agent优先选哪个。比如“提取网页内容”这个任务web-content-extractor的优先级应该高于通用的“文本处理”skill。有些平台还支持自动发现你只要把skill放到指定目录Agent启动时会自动扫描并加载。这种方式省事但要注意目录权限和加载顺序。我遇到过因为skill目录里有损坏的YAML文件导致整个Agent启动失败的情况。所以建议每次添加新skill后先单独测试一下。4.3 调用skill手动触发与自动调度配置好之后调用skill有两种方式。手动触发适合调试和精确控制。你可以在对话中直接指定“请使用web-content-extractor技能提取这个URL的内容https://example.com/article”。Agent收到指令后会加载对应的skill传入参数执行并返回结果。这种方式的好处是你能明确知道用了哪个skill出了问题也容易定位。自动调度是skills真正发挥威力的地方。你只需要描述任务目标比如“帮我总结一下这篇文章”Agent会自己判断这个任务需要先提取网页内容再总结。于是它自动调用web-content-extractor获取正文然后把正文传给一个总结类skill最后返回摘要。整个过程你不需要关心具体用了哪些skill。自动调度的准确性取决于skill描述的质量和Agent的调度算法。我实测下来如果skill描述写得精准自动调度的成功率能到90%以上。但如果描述模糊Agent可能会选错skill或者干脆不用skill直接用自己的通用能力硬答。所以再强调一遍花时间打磨skill的描述和示例绝对值得。4.4 一个完整案例用skills搭建自动周报生成器为了让你更直观地理解整个流程我把自己搭的一个“自动周报生成器”拆开讲一遍。目标每周五下午自动读取本周的Git提交记录生成一份结构化的周报并保存为Markdown文件。拆解的skillsgit-log-reader输入仓库路径和日期范围输出提交记录列表JSON格式。weekly-report-generator输入提交记录列表按照固定模板生成周报文本。file-writer输入文件路径和内容写入本地文件。实现步骤第一步写git-log-reader。核心代码很简单就是调用git log命令解析输出。关键是要处理好日期格式和作者过滤。我一开始没做日期校验结果传入了一个未来日期返回空列表导致后续步骤全部失败。后来加了输入校验如果日期范围不合法直接返回错误信息。第二步写weekly-report-generator。这是一个提示词型skill提示词模板大致是“你是一个周报助手。请根据以下Git提交记录按照‘本周完成’、‘进行中’、‘下周计划’三个板块生成周报。每个板块用无序列表列出每条不超过50字。如果某个板块没有内容写‘无’。”这个模板我迭代了三四版最初版本没有限制字数生成的内容太长后来加了字数限制输出就清爽多了。第三步写file-writer。这个skill要处理文件路径不存在的情况自动创建目录。还要处理编码问题统一用UTF-8。我踩过的坑是在Windows上写文件时没指定编码中文变成了乱码。后来在代码里强制encodingutf-8问题解决。配置调度在Agent配置文件里把这三个skill都启用并设置weekly-report-generator的优先级高于通用的文本生成skill。然后设置一个定时任务每周五下午4点触发输入参数是仓库路径和本周日期范围。运行效果第一次跑的时候git-log-reader返回的JSON格式和weekly-report-generator期望的格式不一致导致生成失败。我调整了git-log-reader的输出结构让它直接返回一个字符串列表而不是嵌套的JSON对象。改完之后整个流程跑通了。现在每周五自动生成周报我只需要花两分钟检查一下改改措辞就行。5. 常见问题与排查技巧实录5.1 安装失败npx playwright install报错怎么办这是热搜词里出现频率很高的问题。npx playwright install失败通常有几个原因网络问题Playwright需要下载浏览器二进制文件文件比较大网络不稳定时容易中断。解决办法是设置国内镜像源或者手动下载浏览器文件放到指定目录。权限问题在Linux或macOS上如果没用sudo可能没有权限写入系统目录。建议用npx playwright install --with-deps让工具自动处理依赖或者把安装目录改到用户目录下。磁盘空间不足Playwright的浏览器文件加起来可能超过1GB确保磁盘有足够空间。Node版本不兼容某些Playwright版本对Node版本有要求检查一下你的Node版本是否满足。我遇到最多的是网络问题。后来我养成了一个习惯在安装任何需要下载大文件的skill之前先检查网络代理设置这里指正常的网络配置不是特殊工具确保下载源可访问。如果实在下载不了可以找已经下载好的朋友拷贝一份浏览器目录放到对应的缓存路径下。5.2 skill不生效Agent为什么不调用我的skill你装了一个skill但Agent好像完全无视它还是用自己的通用能力回答。这种情况通常有以下几个原因问题现象可能原因排查方法Agent完全不提skillskill未正确加载检查skill目录路径是否正确YAML文件是否有语法错误Agent提到了skill但没用描述不匹配检查skill描述是否覆盖了当前任务的关键词Agent用了错误的skill优先级配置不当调整priority值让更专业的skill优先级更高Agent调用后报错依赖缺失或输入格式不对查看Agent日志确认具体错误信息我的经验是先看日志。大多数Agent框架都会记录skill加载和调用的详细日志。如果日志显示skill已加载但未被调用那就是描述或优先级的问题。如果日志显示调用失败那就是依赖或代码的问题。根据日志定位比盲目猜测快得多。5.3 依赖冲突两个skill用了同一个库的不同版本这是比较棘手的问题。比如skill A依赖requests2.25.0skill B依赖requests2.31.0。如果两个skill在同一个Python环境里运行必然有一个会出问题。解决办法有几种一是虚拟环境隔离每个skill用独立的venv但这样管理起来比较麻烦。二是升级或降级找一个两个skill都能兼容的版本。三是容器化每个skill跑在独立的容器里彻底隔离。对于个人使用我推荐第二种尽量找兼容版本。如果实在找不到就考虑把其中一个skill改造成不依赖特定版本的形式。提示在写skill的requirements.txt时尽量用宽松的版本范围比如requests2.25.0而不是requests2.25.0。这样能减少冲突概率。当然前提是你测试过新版本也能正常工作。5.4 性能问题skill调用太慢怎么优化有些skill执行起来很慢比如需要调用外部API或者处理大量数据。优化思路有几个缓存结果如果同一个输入反复出现可以把结果缓存起来。比如网页内容提取同一个URL短时间内多次提取直接返回缓存结果。异步执行如果多个skill之间没有依赖关系可以让它们并行执行。比如同时提取多个网页的内容比串行快很多。减少不必要的调用在Agent调度层面优化触发条件避免频繁调用重量级skill。比如设置最小间隔时间或者合并相似请求。优化代码本身检查skill代码里有没有明显的性能瓶颈比如循环里反复读文件、频繁创建数据库连接等。我做过一个测试一个网页提取skill优化前平均耗时3.2秒加了缓存和异步之后降到0.8秒。对于需要批量处理的任务这个提升非常明显。5.5 安全问题安装第三方skill时要注意什么skills本质上是可以执行代码的所以安装第三方skill时一定要谨慎。我一般会做以下几件事看代码至少扫一眼main.py或执行逻辑文件确认没有可疑操作比如读取敏感文件、发送数据到未知服务器。看依赖检查requirements.txt里有没有奇怪的包特别是不知名的、下载量很低的包。看权限如果skill要求文件系统写入权限或者网络访问权限想清楚是否必要。隔离运行对于不太信任的skill可以在容器或虚拟机里运行限制其访问范围。注意不要因为方便就随意安装来源不明的skill。我见过有人在skill里埋了挖矿代码安装后电脑风扇狂转排查半天才发现是某个第三方skill搞的鬼。安全无小事多花两分钟检查能省掉很多麻烦。6. 进阶玩法如何构建自己的skill库并持续迭代6.1 从日常任务中提炼可复用的skill构建个人skill库最好的起点就是你自己每天重复做的事情。我建议你花一周时间记录下所有“如果有个工具能自动做就好了”的瞬间。比如每天都要把某个网站的数据复制到表格里每周都要写格式类似的周报每次开会后都要整理会议纪要并提取待办事项经常需要把一段中文翻译成英文并调整语气这些重复性任务每一个都可以变成一个skill。刚开始不用追求完美先写一个能用的版本然后在使用中逐步优化。我最早写的几个skill都很粗糙但正是这些粗糙的skill让我养成了“模块化思考”的习惯后来写的skill质量越来越高。6.2 版本管理与更新策略skill写多了之后版本管理就变得很重要。我的做法是语义化版本遵循主版本.次版本.修订号的规则。修复bug升修订号新增功能升次版本不兼容改动升主版本。变更日志每个skill目录下放一个CHANGELOG.md记录每个版本改了什么。这样回滚或者排查问题时能快速定位。向后兼容如果可能尽量保持接口不变。如果必须改接口提供一段时间的过渡期或者同时支持新旧两种输入格式。定期清理每隔几个月检查一下skill库把不再使用的、功能重复的、有更好替代方案的skill归档或删除。保持skill库精简Agent调度效率更高。6.3 分享与协作把你的skill贡献给社区当你写出一个自己觉得好用的skill时不妨分享出去。分享的方式有几种发布到skill市场按照市场要求的格式打包提交审核。审核通过后其他人就能通过npx命令安装你的skill。开源到代码托管平台把skill代码放到GitHub等平台写清楚README和使用说明。这种方式更灵活也方便别人提issue和PR。写一篇经验文章把你开发这个skill的思路、踩过的坑、优化过程写出来。这不仅能帮助别人也能帮你梳理自己的思路。我分享过几个skill收到的反馈让我受益匪浅。有人指出了我代码里的边界条件问题有人提供了更好的实现思路还有人基于我的skill做了二次开发。这种协作带来的提升比自己闷头写快得多。6.4 未来可能的方向skill的组合与编排单个skill的能力是有限的真正的威力在于组合。我现在正在尝试的一个方向是“skill编排”定义一个更高层的skill它本身不执行具体任务而是负责调度其他skill。比如一个“竞品分析”编排skill它会依次调用“网页搜索”、“内容提取”、“数据对比”、“报告生成”四个子skill最后输出一份完整的分析报告。这种编排能力让Agent可以处理非常复杂的任务而每个子skill仍然保持简单和独立。我觉得这是skills生态下一步发展的重点方向。如果你现在开始积累skill建议有意识地设计一些“可组合”的skill输入输出格式尽量标准化方便以后被编排调用。7. 我个人的一些实操体会折腾skills这段时间最大的感受是它改变了我使用AI的方式。以前我遇到问题第一反应是“怎么写提示词”现在第一反应是“有没有现成的skill或者我能不能快速写一个”。这种思维转变带来的效率提升是实实在在的。另一个体会是不要追求大而全的skill。我一开始总想写一个“万能助手”skill什么都能干。结果就是提示词越来越长效果越来越差。后来拆成十几个小skill每个只做一件事反而稳定得多。这跟写代码的道理一样单一职责原则在skill设计里同样适用。还有一点测试很重要。我早期写的skill自己用没问题一分享给别人就各种报错。后来我养成了习惯每个skill写完先在干净环境里跑一遍再找一两个朋友帮忙测试。不同人的使用习惯和环境配置差异很大多测试能发现很多自己想不到的问题。最后保持学习。skills生态还在快速变化新的工具、新的标准、新的最佳实践不断涌现。我每周会花点时间看看社区里有什么新skill、新玩法遇到有意思的就试试。这种持续输入让我能不断优化自己的skill库也能在写教程和分享时更有底气。如果你刚开始接触skills我的建议是从一个小需求开始写一个最简单的skill跑通整个流程。不要一上来就搞复杂的编排和依赖管理先体验一下“把能力封装成模块”的感觉。等你成功运行了第一个skill后面的路就顺了。
返回列表