[{"data":1,"prerenderedAt":2414},["ShallowReactive",2],{"all-tutorials":3},[4,190,406,579,720,1157,1501,1790,2103],{"id":5,"title":6,"body":7,"cover":175,"date":176,"description":177,"draft":178,"extension":179,"faq":175,"meta":180,"navigation":181,"path":182,"publish":178,"readingTime":183,"seo":184,"seoKeywords":175,"series":185,"stem":186,"summary":175,"tags":187,"updated":175,"__hash__":189},"tutorials\u002Ftutorials\u002Fai-agent-skill\u002Fcombine-skills.md","组合使用多个 Skill",{"type":8,"value":9,"toc":159},"minimark",[10,15,19,25,28,32,36,39,52,55,58,69,72,75,81,84,88,92,98,104,109,115,118,122,125,131,135,138,141,144,156],[11,12,14],"h2",{"id":13},"为什么要组合-skill","为什么要组合 Skill",[16,17,18],"p",{},"单个 Skill 解决单个问题，但真实工作往往需要多步操作：",[20,21,22],"blockquote",{},[16,23,24],{},"把客户发来的 PDF 报告里的数据提取出来，做成 Excel 表格，然后生成一份分析 PPT。",[16,26,27],{},"这个任务涉及三个 Skill：PDF → Excel → PPTX。",[11,29,31],{"id":30},"实战从-pdf-到-ppt","实战：从 PDF 到 PPT",[33,34,35],"h3",{"id":35},"场景描述",[16,37,38],{},"你收到了一份季度销售报告（PDF），需要：",[40,41,42,46,49],"ol",{},[43,44,45],"li",{},"提取其中的销售数据表格",[43,47,48],{},"用 Excel 做数据清洗和计算",[43,50,51],{},"生成一份可视化的 PPT 报告",[33,53,54],{"id":54},"操作步骤",[16,56,57],{},"直接告诉 Agent 你的完整需求：",[59,60,65],"pre",{"className":61,"code":63,"language":64},[62],"language-text","请帮我完成以下任务：\n1. 读取 sales-q1.pdf 中的销售数据\n2. 整理成 Excel，按地区汇总\n3. 生成一份 PPT，包含柱状图和关键指标\n","text",[66,67,63],"code",{"__ignoreMap":68},"",[16,70,71],{},"Agent 会自动拆解任务，依次调用不同的 Skill。",[33,73,74],{"id":74},"背后发生了什么",[59,76,79],{"className":77,"code":78,"language":64},[62],"[PDF Skill] → 读取 PDF，提取表格\n     ↓\n[Excel Skill] → 创建工作表，按地区分组汇总\n     ↓\n[PPTX Skill] → 生成幻灯片，插入图表\n",[66,80,78],{"__ignoreMap":68},[16,82,83],{},"每个 Skill 的输出自动成为下一个 Skill 的输入，形成流水线。",[11,85,87],{"id":86},"组合-skill-的技巧","组合 Skill 的技巧",[33,89,91],{"id":90},"_1-描述最终目标而非中间步骤","1. 描述最终目标，而非中间步骤",[16,93,94],{},[95,96,97],"strong",{},"不好的方式：",[59,99,102],{"className":100,"code":101,"language":64},[62],"先用 PDF skill 读取文件，然后...\n",[66,103,101],{"__ignoreMap":68},[16,105,106],{},[95,107,108],{},"好的方式：",[59,110,113],{"className":111,"code":112,"language":64},[62],"把这份 PDF 报告的数据做成分析 PPT\n",[66,114,112],{"__ignoreMap":68},[16,116,117],{},"让 Agent 自己决定用哪些 Skill、怎么组合。",[33,119,121],{"id":120},"_2-分步确认关键节点","2. 分步确认关键节点",[16,123,124],{},"对于复杂任务，可以在关键节点设置确认：",[59,126,129],{"className":127,"code":128,"language":64},[62],"帮我分析这份报告，每一步完成后先给我看结果，我确认后再继续。\n",[66,130,128],{"__ignoreMap":68},[33,132,134],{"id":133},"_3-保存常用组合","3. 保存常用组合",[16,136,137],{},"如果你经常做类似的任务，可以把流程保存为自定义 Skill（我们在进阶篇会详细讲）。",[11,139,140],{"id":140},"本章小结",[16,142,143],{},"第一章我们学到了：",[145,146,147,150,153],"ul",{},[43,148,149],{},"Skill 是 Agent 的技能包",[43,151,152],{},"安装 Skill 就像安装 App",[43,154,155],{},"多个 Skill 可以组合成流水线",[16,157,158],{},"接下来的第二章，我们将深入学习如何自己制作 Skill。",{"title":68,"searchDepth":160,"depth":160,"links":161},3,[162,164,169,174],{"id":13,"depth":163,"text":14},2,{"id":30,"depth":163,"text":31,"children":165},[166,167,168],{"id":35,"depth":160,"text":35},{"id":54,"depth":160,"text":54},{"id":74,"depth":160,"text":74},{"id":86,"depth":163,"text":87,"children":170},[171,172,173],{"id":90,"depth":160,"text":91},{"id":120,"depth":160,"text":121},{"id":133,"depth":160,"text":134},{"id":140,"depth":163,"text":140},null,"2026-03-25","学会在一个任务中串联多个 Skill，让 AI Agent 像流水线一样高效处理复杂工作。",false,"md",{},true,"\u002Ftutorials\u002Fai-agent-skill\u002Fcombine-skills",7,{"title":6,"description":177},"ai-agent-skill","tutorials\u002Fai-agent-skill\u002Fcombine-skills",[188],"AI 应用","mVA8siZlF2GZX689IbHa7pAwpaNySmWD0z9NJ1dCwmE",{"id":191,"title":192,"body":193,"cover":175,"date":396,"description":397,"draft":178,"extension":179,"faq":175,"meta":398,"navigation":181,"path":399,"publish":178,"readingTime":400,"seo":401,"seoKeywords":175,"series":185,"stem":402,"summary":175,"tags":403,"updated":175,"__hash__":405},"tutorials\u002Ftutorials\u002Fai-agent-skill\u002Ffull-workflow.md","串联完整工作流",{"type":8,"value":194,"toc":381},[195,198,201,229,232,235,239,245,249,255,259,265,269,273,276,280,283,287,290,296,299,302,322,325,328,372,378],[11,196,197],{"id":197},"回顾我们做了什么",[16,199,200],{},"经过前面的学习，我们已经有了：",[145,202,203,210,216,223],{},[43,204,205,206,209],{},"✅ ",[95,207,208],{},"收集 Skill"," — 把内容存入知识库",[43,211,205,212,215],{},[95,213,214],{},"检索 Skill"," — 语义搜索知识库",[43,217,218,219,222],{},"📝 ",[95,220,221],{},"整理 Skill"," — 自动打标签和归类",[43,224,218,225,228],{},[95,226,227],{},"输出 Skill"," — 生成报告和回答",[16,230,231],{},"今天把它们全部串联起来。",[11,233,234],{"id":234},"完整工作流演示",[33,236,238],{"id":237},"场景一日常知识收集","场景一：日常知识收集",[59,240,243],{"className":241,"code":242,"language":64},[62],"用户：把这篇文章存到知识库\n      https:\u002F\u002Fexample.com\u002Fdeep-learning-trends\n\nAgent：[收集 Skill] 抓取文章内容\n      [整理 Skill] 生成摘要 + 标签\n      \n✅ 已保存到知识库\n📝 摘要：深度学习领域的 5 个新趋势...\n🏷️ 标签：AI, 深度学习, 趋势\n📁 位置：data\u002Farticles\u002F2026-03-27-deep-learning-trends.md\n",[66,244,242],{"__ignoreMap":68},[33,246,248],{"id":247},"场景二知识检索-问答","场景二：知识检索 + 问答",[59,250,253],{"className":251,"code":252,"language":64},[62],"用户：我之前存过哪些关于学习方法的内容？帮我总结一下。\n\nAgent：[检索 Skill] 找到 8 篇相关内容\n      [输出 Skill] 综合分析并生成总结\n\n📚 找到 8 篇相关内容，核心观点总结：\n\n1. **间隔重复** — 分散学习比集中学习效果好 3 倍\n2. **主动回忆** — 做题比看书记得更牢\n3. **睡眠整合** — 学完立即睡觉，记忆效果翻倍\n4. **跨学科迁移** — 用已知领域的模型理解新领域\n",[66,254,252],{"__ignoreMap":68},[33,256,258],{"id":257},"场景三知识驱动的创作","场景三：知识驱动的创作",[59,260,263],{"className":261,"code":262,"language":64},[62],"用户：根据我知识库里关于 AI 教育的内容，\n      帮我写一篇公众号文章。\n\nAgent：[检索 Skill] 找到相关知识\n      [输出 Skill] 基于知识库内容创作\n\n📝 生成文章：《AI 时代，我们该教孩子什么》\n   - 引用了你知识库中 5 篇相关笔记\n   - 所有观点都有知识库来源支撑\n",[66,264,262],{"__ignoreMap":68},[11,266,268],{"id":267},"skill-编排的核心概念","Skill 编排的核心概念",[33,270,272],{"id":271},"_1-顺序编排","1. 顺序编排",[16,274,275],{},"A → B → C，每一步的输出是下一步的输入。",[33,277,279],{"id":278},"_2-并行编排","2. 并行编排",[16,281,282],{},"A 和 B 同时执行，结果汇总后给 C。",[33,284,286],{"id":285},"_3-条件编排","3. 条件编排",[16,288,289],{},"根据 A 的结果，决定执行 B 还是 C。",[59,291,294],{"className":292,"code":293,"language":64},[62],"收集新内容\n    ↓\n判断内容类型\n    ├── 如果是文章 → 生成长摘要\n    ├── 如果是书签 → 生成短标注\n    └── 如果是笔记 → 直接保存\n",[66,295,293],{"__ignoreMap":68},[11,297,298],{"id":298},"部署和分享",[16,300,301],{},"当你的 Skill 组合稳定后，可以：",[40,303,304,310,316],{},[43,305,306,309],{},[95,307,308],{},"打包成项目"," — 上传到 GitHub，让别人也能用",[43,311,312,315],{},[95,313,314],{},"写使用文档"," — 说明每个 Skill 的功能和用法",[43,317,318,321],{},[95,319,320],{},"持续迭代"," — 根据使用反馈不断优化",[11,323,324],{"id":324},"系列总结",[16,326,327],{},"恭喜你完成了整个系列！我们学到了：",[329,330,331,344],"table",{},[332,333,334],"thead",{},[335,336,337,341],"tr",{},[338,339,340],"th",{},"章节",[338,342,343],{},"核心内容",[345,346,347,356,364],"tbody",{},[335,348,349,353],{},[350,351,352],"td",{},"第一章：入门",[350,354,355],{},"Skill 是什么、怎么安装、怎么组合使用",[335,357,358,361],{},[350,359,360],{},"第二章：进阶",[350,362,363],{},"Skill 的结构、怎么制作、提示词工程",[335,365,366,369],{},[350,367,368],{},"第三章：实战",[350,370,371],{},"完整项目实战、多 Skill 串联",[16,373,374,377],{},[95,375,376],{},"记住：Skill 的本质是把人类的专业知识变成 AI 可以理解和执行的指令。"," 掌握了这个能力，你就掌握了 AI 时代最重要的技能之一。",[16,379,380],{},"Happy Skilling! 🚀",{"title":68,"searchDepth":160,"depth":160,"links":382},[383,384,389,394,395],{"id":197,"depth":163,"text":197},{"id":234,"depth":163,"text":234,"children":385},[386,387,388],{"id":237,"depth":160,"text":238},{"id":247,"depth":160,"text":248},{"id":257,"depth":160,"text":258},{"id":267,"depth":163,"text":268,"children":390},[391,392,393],{"id":271,"depth":160,"text":272},{"id":278,"depth":160,"text":279},{"id":285,"depth":160,"text":286},{"id":298,"depth":163,"text":298},{"id":324,"depth":163,"text":324},"2026-03-27","把收集、整理、检索、输出四个 Skill 串联成一个完整的知识库助手，体验 Skill 组合的威力。",{},"\u002Ftutorials\u002Fai-agent-skill\u002Ffull-workflow",10,{"title":192,"description":397},"tutorials\u002Fai-agent-skill\u002Ffull-workflow",[188,404],"独立开发","D4AB5t4iOcp5DeW3AzCB2htYlWSd7s9V1UD2EAa3npI",{"id":407,"title":408,"body":409,"cover":175,"date":176,"description":571,"draft":178,"extension":179,"faq":175,"meta":572,"navigation":181,"path":573,"publish":178,"readingTime":574,"seo":575,"seoKeywords":175,"series":185,"stem":576,"summary":175,"tags":577,"updated":175,"__hash__":578},"tutorials\u002Ftutorials\u002Fai-agent-skill\u002Finstall-first-skill.md","安装你的第一个 Skill",{"type":8,"value":410,"toc":556},[411,414,417,425,429,432,435,481,484,488,491,497,500,504,507,513,517,520,526,529,533,536,540,543,547,550,553],[11,412,413],{"id":413},"准备工作",[16,415,416],{},"在开始之前，你需要：",[40,418,419,422],{},[43,420,421],{},"一个支持 Skill 的 AI Agent（本教程以 CodeBuddy 为例）",[43,423,424],{},"基本的命令行操作能力（不需要写代码）",[11,426,428],{"id":427},"什么是-skill-市场","什么是 Skill 市场",[16,430,431],{},"Skill 市场就像手机上的 App Store —— 别人已经做好了各种 Skill，你只需要「安装」就能用。",[16,433,434],{},"常见的 Skill 分类：",[329,436,437,447],{},[332,438,439],{},[335,440,441,444],{},[338,442,443],{},"分类",[338,445,446],{},"示例",[345,448,449,457,465,473],{},[335,450,451,454],{},[350,452,453],{},"文档处理",[350,455,456],{},"PDF 阅读、Word 生成、Excel 分析",[335,458,459,462],{},[350,460,461],{},"开发辅助",[350,463,464],{},"代码审查、API 测试、数据库操作",[335,466,467,470],{},[350,468,469],{},"内容创作",[350,471,472],{},"写作助手、图片生成、PPT 制作",[335,474,475,478],{},[350,476,477],{},"数据分析",[350,479,480],{},"数据清洗、可视化、报表生成",[11,482,483],{"id":483},"动手安装",[33,485,487],{"id":486},"第一步找到-skill","第一步：找到 Skill",[16,489,490],{},"打开你的 AI Agent，输入：",[59,492,495],{"className":493,"code":494,"language":64},[62],"帮我找一个可以处理 PDF 的 Skill\n",[66,496,494],{"__ignoreMap":68},[16,498,499],{},"Agent 会搜索可用的 Skill 列表，推荐匹配的选项。",[33,501,503],{"id":502},"第二步安装-skill","第二步：安装 Skill",[16,505,506],{},"选择一个 Skill 后，Agent 会自动加载它。你会看到类似这样的提示：",[59,508,511],{"className":509,"code":510,"language":64},[62],"✅ PDF Skill 已加载\n现在你可以让我帮你：\n- 阅读 PDF 文件\n- 提取表格数据\n- 合并\u002F拆分 PDF\n",[66,512,510],{"__ignoreMap":68},[33,514,516],{"id":515},"第三步使用-skill","第三步：使用 Skill",[16,518,519],{},"安装完成后，直接用自然语言描述需求即可：",[59,521,524],{"className":522,"code":523,"language":64},[62],"请帮我读取 report.pdf，把里面的表格提取出来\n",[66,525,523],{"__ignoreMap":68},[11,527,528],{"id":528},"常见问题",[33,530,532],{"id":531},"q-skill-安装在哪里","Q: Skill 安装在哪里？",[16,534,535],{},"Skill 不需要「安装」在你的电脑上，它更像是一段指令，告诉 Agent 在特定场景下应该怎么做。",[33,537,539],{"id":538},"q-一次可以用多个-skill-吗","Q: 一次可以用多个 Skill 吗？",[16,541,542],{},"可以！Agent 会根据你的需求自动选择合适的 Skill 组合。",[33,544,546],{"id":545},"q-skill-会过期吗","Q: Skill 会过期吗？",[16,548,549],{},"不会，但 Skill 可能会有版本更新，新版本通常会修复问题并增加功能。",[11,551,552],{"id":552},"下一步",[16,554,555],{},"学会了安装 Skill，下一篇我们来看看如何组合使用多个 Skill，完成更复杂的任务。",{"title":68,"searchDepth":160,"depth":160,"links":557},[558,559,560,565,570],{"id":413,"depth":163,"text":413},{"id":427,"depth":163,"text":428},{"id":483,"depth":163,"text":483,"children":561},[562,563,564],{"id":486,"depth":160,"text":487},{"id":502,"depth":160,"text":503},{"id":515,"depth":160,"text":516},{"id":528,"depth":163,"text":528,"children":566},[567,568,569],{"id":531,"depth":160,"text":532},{"id":538,"depth":160,"text":539},{"id":545,"depth":160,"text":546},{"id":552,"depth":163,"text":552},"手把手教你在 AI Agent 中安装 Skill，5 分钟让你的 AI 助手获得新技能。",{},"\u002Ftutorials\u002Fai-agent-skill\u002Finstall-first-skill",8,{"title":408,"description":571},"tutorials\u002Fai-agent-skill\u002Finstall-first-skill",[188],"yLyo-reHXTdwpp_RH7TUOVoQGIk487Uak3-JVeUigEI",{"id":580,"title":581,"body":582,"cover":175,"date":176,"description":712,"draft":178,"extension":179,"faq":175,"meta":713,"navigation":181,"path":714,"publish":178,"readingTime":715,"seo":716,"seoKeywords":175,"series":185,"stem":717,"summary":175,"tags":718,"updated":175,"__hash__":719},"tutorials\u002Ftutorials\u002Fai-agent-skill\u002Fintro.md","什么是 AI Agent Skill",{"type":8,"value":583,"toc":705},[584,588,591,597,608,611,614,644,648,651,671,674,677,697,700,702],[11,585,587],{"id":586},"ai-agent-和-skill-的关系","AI Agent 和 Skill 的关系",[16,589,590],{},"AI Agent 是一个能够自主完成任务的智能体。你可以把它想象成一个非常聪明但缺乏具体技能的实习生 —— 它有很强的理解和推理能力，但在特定领域需要「技能包」来高效工作。",[16,592,593,596],{},[95,594,595],{},"Skill"," 就是 Agent 的技能包。它定义了 Agent 在特定领域的：",[145,598,599,602,605],{},[43,600,601],{},"专业知识（比如如何处理 Excel 文件）",[43,603,604],{},"工作流程（比如分析数据的 SOP）",[43,606,607],{},"可调用的工具（比如 Python 脚本、API 接口）",[11,609,610],{"id":610},"一个形象的比喻",[16,612,613],{},"想象你在训练一个新员工：",[329,615,616,626],{},[332,617,618],{},[335,619,620,623],{},[338,621,622],{},"没有 Skill 的 Agent",[338,624,625],{},"有 Skill 的 Agent",[345,627,628,636],{},[335,629,630,633],{},[350,631,632],{},"\"帮我分析这个数据\" → 写了一段有 bug 的代码",[350,634,635],{},"\"帮我分析这个数据\" → 调用数据分析 Skill，输出标准报告",[335,637,638,641],{},[350,639,640],{},"\"帮我生成 PPT\" → 给了一堆文字建议",[350,642,643],{},"\"帮我生成 PPT\" → 调用 PPTX Skill，直接生成文件",[11,645,647],{"id":646},"为什么要学-skill","为什么要学 Skill",[16,649,650],{},"在 AI 时代，会使用和制作 Skill 的人，就像工业时代会操作机器的人一样，拥有了核心竞争力。",[40,652,653,659,665],{},[43,654,655,658],{},[95,656,657],{},"使用 Skill","：让 AI 能帮你完成更复杂的任务",[43,660,661,664],{},[95,662,663],{},"制作 Skill","：把你的专业知识封装成可复用的能力",[43,666,667,670],{},[95,668,669],{},"分享 Skill","：帮助更多人提升效率，建立影响力",[11,672,673],{"id":673},"这个系列会教什么",[16,675,676],{},"本系列分为三个章节：",[40,678,679,685,691],{},[43,680,681,684],{},[95,682,683],{},"入门篇"," — 理解 Skill，学会安装和使用现成的 Skill",[43,686,687,690],{},[95,688,689],{},"进阶篇"," — 自己动手制作 Skill，掌握提示词工程",[43,692,693,696],{},[95,694,695],{},"实战篇"," — 在真实项目中综合运用多个 Skill",[16,698,699],{},"每一章都有 3 篇文章，从概念到实操，循序渐进。",[11,701,552],{"id":552},[16,703,704],{},"在下一篇中，我们会动手安装你的第一个 Skill，体验「让 AI 瞬间变专家」的感觉。",{"title":68,"searchDepth":160,"depth":160,"links":706},[707,708,709,710,711],{"id":586,"depth":163,"text":587},{"id":610,"depth":163,"text":610},{"id":646,"depth":163,"text":647},{"id":673,"depth":163,"text":673},{"id":552,"depth":163,"text":552},"了解 AI Agent 中 Skill 的概念，以及为什么学会使用和制作 Skill 是 AI 时代的核心能力。",{},"\u002Ftutorials\u002Fai-agent-skill\u002Fintro",5,{"title":581,"description":712},"tutorials\u002Fai-agent-skill\u002Fintro",[188],"bOUydlzt6ugoWVl3RtyETCr93AaZG02LGul1bw4O_XU",{"id":721,"title":722,"body":723,"cover":175,"date":1149,"description":1150,"draft":178,"extension":179,"faq":175,"meta":1151,"navigation":181,"path":1152,"publish":178,"readingTime":849,"seo":1153,"seoKeywords":175,"series":185,"stem":1154,"summary":175,"tags":1155,"updated":175,"__hash__":1156},"tutorials\u002Ftutorials\u002Fai-agent-skill\u002Fmake-first-skill.md","动手制作你的第一个 Skill",{"type":8,"value":724,"toc":1136},[725,728,731,739,742,746,749,777,784,928,932,935,1054,1058,1061,1067,1070,1074,1077,1103,1106,1110,1113,1117,1120,1124,1127,1129,1132],[11,726,727],{"id":727},"我们要做什么",[16,729,730],{},"今天我们来制作一个「周报生成器」Skill：",[145,732,733,736],{},[43,734,735],{},"输入：本周做的事情（自然语言描述）",[43,737,738],{},"输出：格式化的周报（Markdown 格式）",[16,740,741],{},"这个 Skill 虽然简单，但涵盖了制作 Skill 的核心流程。",[11,743,745],{"id":744},"第一步创建-skill-文件","第一步：创建 Skill 文件",[16,747,748],{},"在你的工作目录下创建一个文件夹：",[59,750,754],{"className":751,"code":752,"language":753,"meta":68,"style":68},"language-bash shiki shiki-themes github-light-default github-dark-default","mkdir weekly-report-skill\ncd weekly-report-skill\n","bash",[66,755,756,769],{"__ignoreMap":68},[757,758,761,765],"span",{"class":759,"line":760},"line",1,[757,762,764],{"class":763},"sTDnQ","mkdir",[757,766,768],{"class":767},"sSVrQ"," weekly-report-skill\n",[757,770,771,775],{"class":759,"line":163},[757,772,774],{"class":773},"sHrmB","cd",[757,776,768],{"class":767},[16,778,779,780,783],{},"创建主文件 ",[66,781,782],{},"skill.md","：",[59,785,789],{"className":786,"code":787,"language":788,"meta":68,"style":68},"language-markdown shiki shiki-themes github-light-default github-dark-default","# 周报生成器\n\n## 功能描述\n根据用户描述的本周工作内容，生成结构化的周报。\n\n## 触发场景\n当用户提到「写周报」「生成周报」「本周总结」时使用此 Skill。\n\n## 周报模板\n\n### 本周工作\n- 按项目分组\n- 每个项目列出完成的具体任务\n- 标注任务状态（已完成\u002F进行中\u002F已延期）\n\n### 关键成果\n- 提炼 2-3 个最重要的成果\n- 用数据量化（如果可能）\n\n### 下周计划\n- 根据本周进展，推断下周重点\n- 列出 3-5 个计划项\n\n### 需要支持\n- 如果有阻塞项，列出需要的支持\n","markdown",[66,790,791,796,801,806,812,816,822,827,831,837,841,847,853,859,865,870,876,882,888,893,899,905,911,916,922],{"__ignoreMap":68},[757,792,793],{"class":759,"line":760},[757,794,795],{},"# 周报生成器\n",[757,797,798],{"class":759,"line":163},[757,799,800],{"emptyLinePlaceholder":181},"\n",[757,802,803],{"class":759,"line":160},[757,804,805],{},"## 功能描述\n",[757,807,809],{"class":759,"line":808},4,[757,810,811],{},"根据用户描述的本周工作内容，生成结构化的周报。\n",[757,813,814],{"class":759,"line":715},[757,815,800],{"emptyLinePlaceholder":181},[757,817,819],{"class":759,"line":818},6,[757,820,821],{},"## 触发场景\n",[757,823,824],{"class":759,"line":183},[757,825,826],{},"当用户提到「写周报」「生成周报」「本周总结」时使用此 Skill。\n",[757,828,829],{"class":759,"line":574},[757,830,800],{"emptyLinePlaceholder":181},[757,832,834],{"class":759,"line":833},9,[757,835,836],{},"## 周报模板\n",[757,838,839],{"class":759,"line":400},[757,840,800],{"emptyLinePlaceholder":181},[757,842,844],{"class":759,"line":843},11,[757,845,846],{},"### 本周工作\n",[757,848,850],{"class":759,"line":849},12,[757,851,852],{},"- 按项目分组\n",[757,854,856],{"class":759,"line":855},13,[757,857,858],{},"- 每个项目列出完成的具体任务\n",[757,860,862],{"class":759,"line":861},14,[757,863,864],{},"- 标注任务状态（已完成\u002F进行中\u002F已延期）\n",[757,866,868],{"class":759,"line":867},15,[757,869,800],{"emptyLinePlaceholder":181},[757,871,873],{"class":759,"line":872},16,[757,874,875],{},"### 关键成果\n",[757,877,879],{"class":759,"line":878},17,[757,880,881],{},"- 提炼 2-3 个最重要的成果\n",[757,883,885],{"class":759,"line":884},18,[757,886,887],{},"- 用数据量化（如果可能）\n",[757,889,891],{"class":759,"line":890},19,[757,892,800],{"emptyLinePlaceholder":181},[757,894,896],{"class":759,"line":895},20,[757,897,898],{},"### 下周计划\n",[757,900,902],{"class":759,"line":901},21,[757,903,904],{},"- 根据本周进展，推断下周重点\n",[757,906,908],{"class":759,"line":907},22,[757,909,910],{},"- 列出 3-5 个计划项\n",[757,912,914],{"class":759,"line":913},23,[757,915,800],{"emptyLinePlaceholder":181},[757,917,919],{"class":759,"line":918},24,[757,920,921],{},"### 需要支持\n",[757,923,925],{"class":759,"line":924},25,[757,926,927],{},"- 如果有阻塞项，列出需要的支持\n",[11,929,931],{"id":930},"第二步添加示例","第二步：添加示例",[16,933,934],{},"好的 Skill 需要示例来帮助 Agent 理解你想要的输出风格：",[59,936,938],{"className":786,"code":937,"language":788,"meta":68,"style":68},"## 示例\n\n### 输入\n\"这周主要在做用户系统的重构，完成了登录模块的改造，\n注册模块还在做。另外修了 3 个线上 bug。\"\n\n### 输出\n**本周工作**\n\n**用户系统重构**\n- ✅ 登录模块改造 — 已完成\n- 🔄 注册模块改造 — 进行中\n\n**线上维护**\n- ✅ 修复 3 个线上 bug\n\n**关键成果**\n- 登录模块重构完成，代码量减少约 30%\n- 线上 bug 清零\n\n**下周计划**\n- 完成注册模块改造\n- 用户系统重构联调测试\n- 编写用户系统技术文档\n",[66,939,940,945,949,954,959,964,968,973,978,982,987,992,997,1001,1006,1011,1015,1020,1025,1030,1034,1039,1044,1049],{"__ignoreMap":68},[757,941,942],{"class":759,"line":760},[757,943,944],{},"## 示例\n",[757,946,947],{"class":759,"line":163},[757,948,800],{"emptyLinePlaceholder":181},[757,950,951],{"class":759,"line":160},[757,952,953],{},"### 输入\n",[757,955,956],{"class":759,"line":808},[757,957,958],{},"\"这周主要在做用户系统的重构，完成了登录模块的改造，\n",[757,960,961],{"class":759,"line":715},[757,962,963],{},"注册模块还在做。另外修了 3 个线上 bug。\"\n",[757,965,966],{"class":759,"line":818},[757,967,800],{"emptyLinePlaceholder":181},[757,969,970],{"class":759,"line":183},[757,971,972],{},"### 输出\n",[757,974,975],{"class":759,"line":574},[757,976,977],{},"**本周工作**\n",[757,979,980],{"class":759,"line":833},[757,981,800],{"emptyLinePlaceholder":181},[757,983,984],{"class":759,"line":400},[757,985,986],{},"**用户系统重构**\n",[757,988,989],{"class":759,"line":843},[757,990,991],{},"- ✅ 登录模块改造 — 已完成\n",[757,993,994],{"class":759,"line":849},[757,995,996],{},"- 🔄 注册模块改造 — 进行中\n",[757,998,999],{"class":759,"line":855},[757,1000,800],{"emptyLinePlaceholder":181},[757,1002,1003],{"class":759,"line":861},[757,1004,1005],{},"**线上维护**\n",[757,1007,1008],{"class":759,"line":867},[757,1009,1010],{},"- ✅ 修复 3 个线上 bug\n",[757,1012,1013],{"class":759,"line":872},[757,1014,800],{"emptyLinePlaceholder":181},[757,1016,1017],{"class":759,"line":878},[757,1018,1019],{},"**关键成果**\n",[757,1021,1022],{"class":759,"line":884},[757,1023,1024],{},"- 登录模块重构完成，代码量减少约 30%\n",[757,1026,1027],{"class":759,"line":890},[757,1028,1029],{},"- 线上 bug 清零\n",[757,1031,1032],{"class":759,"line":895},[757,1033,800],{"emptyLinePlaceholder":181},[757,1035,1036],{"class":759,"line":901},[757,1037,1038],{},"**下周计划**\n",[757,1040,1041],{"class":759,"line":907},[757,1042,1043],{},"- 完成注册模块改造\n",[757,1045,1046],{"class":759,"line":913},[757,1047,1048],{},"- 用户系统重构联调测试\n",[757,1050,1051],{"class":759,"line":918},[757,1052,1053],{},"- 编写用户系统技术文档\n",[11,1055,1057],{"id":1056},"第三步测试-skill","第三步：测试 Skill",[16,1059,1060],{},"把 Skill 加载到你的 Agent 中，然后试试：",[59,1062,1065],{"className":1063,"code":1064,"language":64},[62],"我这周做了：\n1. 完成了首页的 redesign\n2. 和设计师对了移动端适配方案\n3. 帮后端同事排查了一个数据库慢查询\n4. 参加了两次技术分享会\n",[66,1066,1064],{"__ignoreMap":68},[16,1068,1069],{},"观察输出是否符合预期。如果不满意，回去调整模板和示例。",[11,1071,1073],{"id":1072},"第四步迭代优化","第四步：迭代优化",[16,1075,1076],{},"制作 Skill 是一个迭代的过程：",[40,1078,1079,1085,1091,1097],{},[43,1080,1081,1084],{},[95,1082,1083],{},"写初版"," → 测试 → 发现问题",[43,1086,1087,1090],{},[95,1088,1089],{},"加示例"," → 测试 → 输出更稳定",[43,1092,1093,1096],{},[95,1094,1095],{},"加约束"," → 测试 → 风格更统一",[43,1098,1099,1102],{},[95,1100,1101],{},"加边界处理"," → 测试 → 更健壮",[11,1104,1105],{"id":1105},"常见陷阱",[33,1107,1109],{"id":1108},"_1-描述太笼统","1. 描述太笼统",[16,1111,1112],{},"❌ \"帮用户写周报\"\n✅ \"根据用户描述的工作内容，按项目分组生成结构化周报\"",[33,1114,1116],{"id":1115},"_2-没有示例","2. 没有示例",[16,1118,1119],{},"没有示例的 Skill 就像没有说明书的产品，Agent 只能猜你想要什么。",[33,1121,1123],{"id":1122},"_3-约束太死","3. 约束太死",[16,1125,1126],{},"不要规定每一个细节，给 Agent 留一些灵活空间。",[11,1128,552],{"id":552},[16,1130,1131],{},"恭喜你制作了第一个 Skill！下一篇我们来学习提示词工程的技巧，让你的 Skill 更强大。",[1133,1134,1135],"style",{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sTDnQ, html code.shiki .sTDnQ{--shiki-default:#953800;--shiki-dark:#FFA657}html pre.shiki code .sSVrQ, html code.shiki .sSVrQ{--shiki-default:#0A3069;--shiki-dark:#A5D6FF}html pre.shiki code .sHrmB, html code.shiki .sHrmB{--shiki-default:#0550AE;--shiki-dark:#79C0FF}",{"title":68,"searchDepth":160,"depth":160,"links":1137},[1138,1139,1140,1141,1142,1143,1148],{"id":727,"depth":163,"text":727},{"id":744,"depth":163,"text":745},{"id":930,"depth":163,"text":931},{"id":1056,"depth":163,"text":1057},{"id":1072,"depth":163,"text":1073},{"id":1105,"depth":163,"text":1105,"children":1144},[1145,1146,1147],{"id":1108,"depth":160,"text":1109},{"id":1115,"depth":160,"text":1116},{"id":1122,"depth":160,"text":1123},{"id":552,"depth":163,"text":552},"2026-03-26","从零开始制作一个实用的 Skill，掌握 Skill 开发的完整流程。",{},"\u002Ftutorials\u002Fai-agent-skill\u002Fmake-first-skill",{"title":722,"description":1150},"tutorials\u002Fai-agent-skill\u002Fmake-first-skill",[188],"1vd9OF_cmXbS-6MdnXdJAn8xG9GmB58Q09mpXGfj-M4",{"id":1158,"title":1159,"body":1160,"cover":175,"date":1149,"description":1493,"draft":178,"extension":179,"faq":175,"meta":1494,"navigation":181,"path":1495,"publish":178,"readingTime":400,"seo":1496,"seoKeywords":175,"series":185,"stem":1497,"summary":175,"tags":1498,"updated":175,"__hash__":1500},"tutorials\u002Ftutorials\u002Fai-agent-skill\u002Fprompt-engineering.md","Skill 中的提示词工程",{"type":8,"value":1161,"toc":1478},[1162,1166,1169,1172,1176,1179,1194,1197,1201,1204,1243,1247,1250,1285,1288,1292,1295,1320,1324,1327,1333,1337,1340,1343,1352,1355,1453,1456,1458,1461,1472,1475],[11,1163,1165],{"id":1164},"提示词工程-skill-的灵魂","提示词工程 = Skill 的灵魂",[16,1167,1168],{},"一个 Skill 的好坏，80% 取决于提示词的质量。同样的功能，好的提示词和差的提示词，产出的差距可能是天壤之别。",[11,1170,1171],{"id":1171},"五个核心原则",[33,1173,1175],{"id":1174},"原则一角色设定","原则一：角色设定",[16,1177,1178],{},"告诉 Agent 它现在是谁：",[59,1180,1182],{"className":786,"code":1181,"language":788,"meta":68,"style":68},"你是一位资深的技术写作专家，擅长把复杂的技术概念\n用简单易懂的语言解释给非技术人员。\n",[66,1183,1184,1189],{"__ignoreMap":68},[757,1185,1186],{"class":759,"line":760},[757,1187,1188],{},"你是一位资深的技术写作专家，擅长把复杂的技术概念\n",[757,1190,1191],{"class":759,"line":163},[757,1192,1193],{},"用简单易懂的语言解释给非技术人员。\n",[16,1195,1196],{},"角色设定会影响 Agent 的语气、用词和思维方式。",[33,1198,1200],{"id":1199},"原则二明确输入输出","原则二：明确输入输出",[16,1202,1203],{},"清晰定义「给什么」和「要什么」：",[59,1205,1207],{"className":786,"code":1206,"language":788,"meta":68,"style":68},"## 输入\n- 用户提供的原始技术文档（可能是 Markdown 或纯文本）\n\n## 输出\n- 一篇面向产品经理的技术说明\n- 不超过 500 字\n- 包含「一句话总结」「核心变化」「影响范围」三个板块\n",[66,1208,1209,1214,1219,1223,1228,1233,1238],{"__ignoreMap":68},[757,1210,1211],{"class":759,"line":760},[757,1212,1213],{},"## 输入\n",[757,1215,1216],{"class":759,"line":163},[757,1217,1218],{},"- 用户提供的原始技术文档（可能是 Markdown 或纯文本）\n",[757,1220,1221],{"class":759,"line":160},[757,1222,800],{"emptyLinePlaceholder":181},[757,1224,1225],{"class":759,"line":808},[757,1226,1227],{},"## 输出\n",[757,1229,1230],{"class":759,"line":715},[757,1231,1232],{},"- 一篇面向产品经理的技术说明\n",[757,1234,1235],{"class":759,"line":818},[757,1236,1237],{},"- 不超过 500 字\n",[757,1239,1240],{"class":759,"line":183},[757,1241,1242],{},"- 包含「一句话总结」「核心变化」「影响范围」三个板块\n",[33,1244,1246],{"id":1245},"原则三提供示例","原则三：提供示例",[16,1248,1249],{},"Few-shot learning 是最有效的提示词技巧：",[59,1251,1253],{"className":786,"code":1252,"language":788,"meta":68,"style":68},"## 示例 1\n输入：我们将数据库从 MySQL 迁移到 PostgreSQL...\n输出：\n**一句话总结**：数据库升级，查询速度提升 3 倍。\n**核心变化**：...\n**影响范围**：...\n",[66,1254,1255,1260,1265,1270,1275,1280],{"__ignoreMap":68},[757,1256,1257],{"class":759,"line":760},[757,1258,1259],{},"## 示例 1\n",[757,1261,1262],{"class":759,"line":163},[757,1263,1264],{},"输入：我们将数据库从 MySQL 迁移到 PostgreSQL...\n",[757,1266,1267],{"class":759,"line":160},[757,1268,1269],{},"输出：\n",[757,1271,1272],{"class":759,"line":808},[757,1273,1274],{},"**一句话总结**：数据库升级，查询速度提升 3 倍。\n",[757,1276,1277],{"class":759,"line":715},[757,1278,1279],{},"**核心变化**：...\n",[757,1281,1282],{"class":759,"line":818},[757,1283,1284],{},"**影响范围**：...\n",[16,1286,1287],{},"2-3 个示例通常就够了。",[33,1289,1291],{"id":1290},"原则四设定边界","原则四：设定边界",[16,1293,1294],{},"告诉 Agent 什么不该做：",[59,1296,1298],{"className":786,"code":1297,"language":788,"meta":68,"style":68},"## 注意事项\n- 不要使用技术术语，除非无法避免\n- 不要编造不存在的数据\n- 如果信息不足，明确告知用户而不是猜测\n",[66,1299,1300,1305,1310,1315],{"__ignoreMap":68},[757,1301,1302],{"class":759,"line":760},[757,1303,1304],{},"## 注意事项\n",[757,1306,1307],{"class":759,"line":163},[757,1308,1309],{},"- 不要使用技术术语，除非无法避免\n",[757,1311,1312],{"class":759,"line":160},[757,1313,1314],{},"- 不要编造不存在的数据\n",[757,1316,1317],{"class":759,"line":808},[757,1318,1319],{},"- 如果信息不足，明确告知用户而不是猜测\n",[33,1321,1323],{"id":1322},"原则五迭代优化","原则五：迭代优化",[16,1325,1326],{},"没有一次就完美的提示词。记录每次测试的问题，逐步修改：",[59,1328,1331],{"className":1329,"code":1330,"language":64},[62],"版本 1: 输出太长 → 加字数限制\n版本 2: 格式不统一 → 加模板\n版本 3: 有时遗漏关键信息 → 加检查清单\n",[66,1332,1330],{"__ignoreMap":68},[11,1334,1336],{"id":1335},"实战优化周报-skill","实战：优化周报 Skill",[16,1338,1339],{},"让我们用这五个原则来优化上一篇做的周报 Skill：",[33,1341,1342],{"id":1342},"优化前",[59,1344,1346],{"className":786,"code":1345,"language":788,"meta":68,"style":68},"帮用户写周报\n",[66,1347,1348],{"__ignoreMap":68},[757,1349,1350],{"class":759,"line":760},[757,1351,1345],{},[33,1353,1354],{"id":1354},"优化后",[59,1356,1358],{"className":786,"code":1357,"language":788,"meta":68,"style":68},"## 角色\n你是一位高效的工作助理，擅长从零散的描述中提炼关键信息。\n\n## 任务\n根据用户描述的本周工作，生成结构化周报。\n\n## 输出格式\n使用以下模板，每个板块必须包含：\n\n### 本周完成\n- 按项目分组\n- 每条标注状态 emoji（✅ 已完成 \u002F 🔄 进行中 \u002F ⏸️ 暂停）\n\n### 下周计划\n- 3-5 条，按优先级排序\n\n## 约束\n- 总字数不超过 300 字\n- 只使用用户提到的信息，不编造\n- 如果用户信息不足，提问而不是猜测\n",[66,1359,1360,1365,1370,1374,1379,1384,1388,1393,1398,1402,1407,1411,1416,1420,1424,1429,1433,1438,1443,1448],{"__ignoreMap":68},[757,1361,1362],{"class":759,"line":760},[757,1363,1364],{},"## 角色\n",[757,1366,1367],{"class":759,"line":163},[757,1368,1369],{},"你是一位高效的工作助理，擅长从零散的描述中提炼关键信息。\n",[757,1371,1372],{"class":759,"line":160},[757,1373,800],{"emptyLinePlaceholder":181},[757,1375,1376],{"class":759,"line":808},[757,1377,1378],{},"## 任务\n",[757,1380,1381],{"class":759,"line":715},[757,1382,1383],{},"根据用户描述的本周工作，生成结构化周报。\n",[757,1385,1386],{"class":759,"line":818},[757,1387,800],{"emptyLinePlaceholder":181},[757,1389,1390],{"class":759,"line":183},[757,1391,1392],{},"## 输出格式\n",[757,1394,1395],{"class":759,"line":574},[757,1396,1397],{},"使用以下模板，每个板块必须包含：\n",[757,1399,1400],{"class":759,"line":833},[757,1401,800],{"emptyLinePlaceholder":181},[757,1403,1404],{"class":759,"line":400},[757,1405,1406],{},"### 本周完成\n",[757,1408,1409],{"class":759,"line":843},[757,1410,852],{},[757,1412,1413],{"class":759,"line":849},[757,1414,1415],{},"- 每条标注状态 emoji（✅ 已完成 \u002F 🔄 进行中 \u002F ⏸️ 暂停）\n",[757,1417,1418],{"class":759,"line":855},[757,1419,800],{"emptyLinePlaceholder":181},[757,1421,1422],{"class":759,"line":861},[757,1423,898],{},[757,1425,1426],{"class":759,"line":867},[757,1427,1428],{},"- 3-5 条，按优先级排序\n",[757,1430,1431],{"class":759,"line":872},[757,1432,800],{"emptyLinePlaceholder":181},[757,1434,1435],{"class":759,"line":878},[757,1436,1437],{},"## 约束\n",[757,1439,1440],{"class":759,"line":884},[757,1441,1442],{},"- 总字数不超过 300 字\n",[757,1444,1445],{"class":759,"line":890},[757,1446,1447],{},"- 只使用用户提到的信息，不编造\n",[757,1449,1450],{"class":759,"line":895},[757,1451,1452],{},"- 如果用户信息不足，提问而不是猜测\n",[16,1454,1455],{},"效果的差别一目了然。",[11,1457,140],{"id":140},[16,1459,1460],{},"第二章我们学到了：",[145,1462,1463,1466,1469],{},[43,1464,1465],{},"Skill 由元信息、知识、工具三部分组成",[43,1467,1468],{},"从模板开始，通过迭代完善 Skill",[43,1470,1471],{},"提示词工程的五个核心原则",[16,1473,1474],{},"下一章我们进入实战，看看如何在真实项目中综合运用这些知识。",[1133,1476,1477],{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":68,"searchDepth":160,"depth":160,"links":1479},[1480,1481,1488,1492],{"id":1164,"depth":163,"text":1165},{"id":1171,"depth":163,"text":1171,"children":1482},[1483,1484,1485,1486,1487],{"id":1174,"depth":160,"text":1175},{"id":1199,"depth":160,"text":1200},{"id":1245,"depth":160,"text":1246},{"id":1290,"depth":160,"text":1291},{"id":1322,"depth":160,"text":1323},{"id":1335,"depth":163,"text":1336,"children":1489},[1490,1491],{"id":1342,"depth":160,"text":1342},{"id":1354,"depth":160,"text":1354},{"id":140,"depth":163,"text":140},"掌握提示词工程的核心技巧，让你的 Skill 输出更稳定、更精准、更符合预期。",{},"\u002Ftutorials\u002Fai-agent-skill\u002Fprompt-engineering",{"title":1159,"description":1493},"tutorials\u002Fai-agent-skill\u002Fprompt-engineering",[188,1499],"学习方法","yUVDZNwkOw_Rc3MfjaeE9YCPphVt6TArxszynhY9pYo",{"id":1502,"title":1503,"body":1504,"cover":175,"date":396,"description":1783,"draft":178,"extension":179,"faq":175,"meta":1784,"navigation":181,"path":1785,"publish":178,"readingTime":574,"seo":1786,"seoKeywords":175,"series":185,"stem":1787,"summary":175,"tags":1788,"updated":175,"__hash__":1789},"tutorials\u002Ftutorials\u002Fai-agent-skill\u002Freal-project-setup.md","实战项目：搭建个人知识库助手",{"type":8,"value":1505,"toc":1771},[1506,1509,1512,1538,1541,1544,1586,1589,1595,1597,1601,1629,1633,1669,1673,1676,1748,1751,1754,1760,1763,1765,1768],[11,1507,1508],{"id":1508},"项目目标",[16,1510,1511],{},"我们要做一个「个人知识库助手」，它能够：",[40,1513,1514,1520,1526,1532],{},[43,1515,1516,1519],{},[95,1517,1518],{},"收集"," — 把网页、文章、笔记存入知识库",[43,1521,1522,1525],{},[95,1523,1524],{},"整理"," — 自动打标签、归类、生成摘要",[43,1527,1528,1531],{},[95,1529,1530],{},"检索"," — 用自然语言搜索知识库",[43,1533,1534,1537],{},[95,1535,1536],{},"输出"," — 根据知识库内容回答问题或生成报告",[11,1539,1540],{"id":1540},"为什么选这个项目",[16,1542,1543],{},"这个项目完美覆盖了 Skill 的三个核心场景：",[329,1545,1546,1556],{},[332,1547,1548],{},[335,1549,1550,1553],{},[338,1551,1552],{},"场景",[338,1554,1555],{},"涉及的 Skill",[345,1557,1558,1565,1572,1579],{},[335,1559,1560,1562],{},[350,1561,1518],{},[350,1563,1564],{},"网页抓取 Skill、PDF 读取 Skill",[335,1566,1567,1569],{},[350,1568,1524],{},[350,1570,1571],{},"文本分析 Skill、标签生成 Skill",[335,1573,1574,1576],{},[350,1575,1530],{},[350,1577,1578],{},"向量搜索 Skill",[335,1580,1581,1583],{},[350,1582,1536],{},[350,1584,1585],{},"文档生成 Skill",[11,1587,1588],{"id":1588},"架构设计",[59,1590,1593],{"className":1591,"code":1592,"language":64},[62],"用户输入 → Agent（调度中心）\n              ├── 收集 Skill → 获取内容\n              ├── 整理 Skill → 打标签、摘要\n              ├── 检索 Skill → 语义搜索\n              └── 输出 Skill → 生成回答\n                    ↓\n              知识库（本地文件\u002F数据库）\n",[66,1594,1592],{"__ignoreMap":68},[11,1596,413],{"id":413},[33,1598,1600],{"id":1599},"_1-创建项目目录","1. 创建项目目录",[59,1602,1604],{"className":751,"code":1603,"language":753,"meta":68,"style":68},"mkdir my-knowledge-base\ncd my-knowledge-base\nmkdir skills data\n",[66,1605,1606,1613,1619],{"__ignoreMap":68},[757,1607,1608,1610],{"class":759,"line":760},[757,1609,764],{"class":763},[757,1611,1612],{"class":767}," my-knowledge-base\n",[757,1614,1615,1617],{"class":759,"line":163},[757,1616,774],{"class":773},[757,1618,1612],{"class":767},[757,1620,1621,1623,1626],{"class":759,"line":160},[757,1622,764],{"class":763},[757,1624,1625],{"class":767}," skills",[757,1627,1628],{"class":767}," data\n",[33,1630,1632],{"id":1631},"_2-准备知识库目录","2. 准备知识库目录",[59,1634,1636],{"className":751,"code":1635,"language":753,"meta":68,"style":68},"mkdir data\u002Farticles    # 文章\nmkdir data\u002Fnotes       # 笔记\nmkdir data\u002Fbookmarks   # 书签\n",[66,1637,1638,1649,1659],{"__ignoreMap":68},[757,1639,1640,1642,1645],{"class":759,"line":760},[757,1641,764],{"class":763},[757,1643,1644],{"class":767}," data\u002Farticles",[757,1646,1648],{"class":1647},"sU953","    # 文章\n",[757,1650,1651,1653,1656],{"class":759,"line":163},[757,1652,764],{"class":763},[757,1654,1655],{"class":767}," data\u002Fnotes",[757,1657,1658],{"class":1647},"       # 笔记\n",[757,1660,1661,1663,1666],{"class":759,"line":160},[757,1662,764],{"class":763},[757,1664,1665],{"class":767}," data\u002Fbookmarks",[757,1667,1668],{"class":1647},"   # 书签\n",[33,1670,1672],{"id":1671},"_3-创建收集-skill","3. 创建收集 Skill",[16,1674,1675],{},"第一个 Skill 负责把内容存入知识库：",[59,1677,1679],{"className":786,"code":1678,"language":788,"meta":68,"style":68},"# 知识收集 Skill\n\n## 功能\n将用户提供的内容保存到知识库中。\n\n## 支持的输入\n- URL（自动抓取网页内容）\n- 文本（直接保存）\n- 文件路径（读取文件内容）\n\n## 保存规则\n- 文件名：{日期}-{标题}.md\n- 自动生成摘要（不超过 100 字）\n- 自动推荐 2-3 个标签\n",[66,1680,1681,1686,1690,1695,1700,1704,1709,1714,1719,1724,1728,1733,1738,1743],{"__ignoreMap":68},[757,1682,1683],{"class":759,"line":760},[757,1684,1685],{},"# 知识收集 Skill\n",[757,1687,1688],{"class":759,"line":163},[757,1689,800],{"emptyLinePlaceholder":181},[757,1691,1692],{"class":759,"line":160},[757,1693,1694],{},"## 功能\n",[757,1696,1697],{"class":759,"line":808},[757,1698,1699],{},"将用户提供的内容保存到知识库中。\n",[757,1701,1702],{"class":759,"line":715},[757,1703,800],{"emptyLinePlaceholder":181},[757,1705,1706],{"class":759,"line":818},[757,1707,1708],{},"## 支持的输入\n",[757,1710,1711],{"class":759,"line":183},[757,1712,1713],{},"- URL（自动抓取网页内容）\n",[757,1715,1716],{"class":759,"line":574},[757,1717,1718],{},"- 文本（直接保存）\n",[757,1720,1721],{"class":759,"line":833},[757,1722,1723],{},"- 文件路径（读取文件内容）\n",[757,1725,1726],{"class":759,"line":400},[757,1727,800],{"emptyLinePlaceholder":181},[757,1729,1730],{"class":759,"line":843},[757,1731,1732],{},"## 保存规则\n",[757,1734,1735],{"class":759,"line":849},[757,1736,1737],{},"- 文件名：{日期}-{标题}.md\n",[757,1739,1740],{"class":759,"line":855},[757,1741,1742],{},"- 自动生成摘要（不超过 100 字）\n",[757,1744,1745],{"class":759,"line":861},[757,1746,1747],{},"- 自动推荐 2-3 个标签\n",[11,1749,1750],{"id":1750},"测试收集功能",[16,1752,1753],{},"试试把一篇文章存入知识库：",[59,1755,1758],{"className":1756,"code":1757,"language":64},[62],"帮我把这篇文章存入知识库：\nhttps:\u002F\u002Fexample.com\u002Farticle-about-ai\n",[66,1759,1757],{"__ignoreMap":68},[16,1761,1762],{},"Agent 会调用收集 Skill，自动完成抓取、摘要、打标签、保存。",[11,1764,552],{"id":552},[16,1766,1767],{},"基础架构搭好了，下一篇我们来实现最核心的检索功能。",[1133,1769,1770],{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sTDnQ, html code.shiki .sTDnQ{--shiki-default:#953800;--shiki-dark:#FFA657}html pre.shiki code .sSVrQ, html code.shiki .sSVrQ{--shiki-default:#0A3069;--shiki-dark:#A5D6FF}html pre.shiki code .sHrmB, html code.shiki .sHrmB{--shiki-default:#0550AE;--shiki-dark:#79C0FF}html pre.shiki code .sU953, html code.shiki .sU953{--shiki-default:#6E7781;--shiki-dark:#8B949E}",{"title":68,"searchDepth":160,"depth":160,"links":1772},[1773,1774,1775,1776,1781,1782],{"id":1508,"depth":163,"text":1508},{"id":1540,"depth":163,"text":1540},{"id":1588,"depth":163,"text":1588},{"id":413,"depth":163,"text":413,"children":1777},[1778,1779,1780],{"id":1599,"depth":160,"text":1600},{"id":1631,"depth":160,"text":1632},{"id":1671,"depth":160,"text":1672},{"id":1750,"depth":163,"text":1750},{"id":552,"depth":163,"text":552},"用一个完整的实战项目串联前两章所学，搭建一个能管理和检索个人知识库的 AI 助手。",{},"\u002Ftutorials\u002Fai-agent-skill\u002Freal-project-setup",{"title":1503,"description":1783},"tutorials\u002Fai-agent-skill\u002Freal-project-setup",[188,404],"-rV8-rBREWB7rbLykdChM3ohV7cahipWnIn9LC5_Cu4",{"id":1791,"title":1792,"body":1793,"cover":175,"date":1149,"description":2096,"draft":178,"extension":179,"faq":175,"meta":2097,"navigation":181,"path":2098,"publish":178,"readingTime":400,"seo":2099,"seoKeywords":175,"series":185,"stem":2100,"summary":175,"tags":2101,"updated":175,"__hash__":2102},"tutorials\u002Ftutorials\u002Fai-agent-skill\u002Fskill-anatomy.md","Skill 的结构解析",{"type":8,"value":1794,"toc":2088},[1795,1799,1802,1822,1911,1915,1918,1921,1972,1977,1981,1984,1987,1998,2001,2005,2008,2011,2031,2068,2071,2074,2080,2082,2085],[11,1796,1798],{"id":1797},"一个-skill-长什么样","一个 Skill 长什么样",[16,1800,1801],{},"当你打开一个 Skill 的源文件，你会看到它主要由三部分组成：",[40,1803,1804,1810,1816],{},[43,1805,1806,1809],{},[95,1807,1808],{},"元信息"," — 名字、描述、适用场景",[43,1811,1812,1815],{},[95,1813,1814],{},"知识"," — 领域专业知识和规则",[43,1817,1818,1821],{},[95,1819,1820],{},"工具"," — 可执行的脚本或 API",[59,1823,1827],{"className":1824,"code":1825,"language":1826,"meta":68,"style":68},"language-yaml shiki shiki-themes github-light-default github-dark-default","name: data-analyzer\ndescription: 分析 CSV\u002FExcel 数据，生成可视化报告\n\nknowledge:\n  - 数据清洗的最佳实践\n  - 常见图表类型的选择策略\n  - 统计指标的计算方法\n\ntools:\n  - analyze.py\n  - visualize.py\n","yaml",[66,1828,1829,1842,1852,1856,1864,1872,1879,1886,1890,1897,1904],{"__ignoreMap":68},[757,1830,1831,1835,1839],{"class":759,"line":760},[757,1832,1834],{"class":1833},"sjgCt","name",[757,1836,1838],{"class":1837},"s4rv2",": ",[757,1840,1841],{"class":767},"data-analyzer\n",[757,1843,1844,1847,1849],{"class":759,"line":163},[757,1845,1846],{"class":1833},"description",[757,1848,1838],{"class":1837},[757,1850,1851],{"class":767},"分析 CSV\u002FExcel 数据，生成可视化报告\n",[757,1853,1854],{"class":759,"line":160},[757,1855,800],{"emptyLinePlaceholder":181},[757,1857,1858,1861],{"class":759,"line":808},[757,1859,1860],{"class":1833},"knowledge",[757,1862,1863],{"class":1837},":\n",[757,1865,1866,1869],{"class":759,"line":715},[757,1867,1868],{"class":1837},"  - ",[757,1870,1871],{"class":767},"数据清洗的最佳实践\n",[757,1873,1874,1876],{"class":759,"line":818},[757,1875,1868],{"class":1837},[757,1877,1878],{"class":767},"常见图表类型的选择策略\n",[757,1880,1881,1883],{"class":759,"line":183},[757,1882,1868],{"class":1837},[757,1884,1885],{"class":767},"统计指标的计算方法\n",[757,1887,1888],{"class":759,"line":574},[757,1889,800],{"emptyLinePlaceholder":181},[757,1891,1892,1895],{"class":759,"line":833},[757,1893,1894],{"class":1833},"tools",[757,1896,1863],{"class":1837},[757,1898,1899,1901],{"class":759,"line":400},[757,1900,1868],{"class":1837},[757,1902,1903],{"class":767},"analyze.py\n",[757,1905,1906,1908],{"class":759,"line":843},[757,1907,1868],{"class":1837},[757,1909,1910],{"class":767},"visualize.py\n",[11,1912,1914],{"id":1913},"元信息告诉-agent-何时用你","元信息：告诉 Agent 何时用你",[16,1916,1917],{},"元信息是 Skill 的「自我介绍」，Agent 根据它决定是否调用这个 Skill。",[16,1919,1920],{},"关键字段：",[329,1922,1923,1935],{},[332,1924,1925],{},[335,1926,1927,1930,1933],{},[338,1928,1929],{},"字段",[338,1931,1932],{},"作用",[338,1934,446],{},[345,1936,1937,1949,1959],{},[335,1938,1939,1941,1944],{},[350,1940,1834],{},[350,1942,1943],{},"唯一标识",[350,1945,1946],{},[66,1947,1948],{},"data-analyzer",[335,1950,1951,1953,1956],{},[350,1952,1846],{},[350,1954,1955],{},"功能描述",[350,1957,1958],{},"\"分析数据，生成报告\"",[335,1960,1961,1964,1967],{},[350,1962,1963],{},"triggers",[350,1965,1966],{},"触发关键词",[350,1968,1969],{},[757,1970,1971],{},"\"分析数据\", \"生成图表\"",[20,1973,1974],{},[16,1975,1976],{},"好的 description 是关键！写得太模糊，Agent 不知道什么时候用；写得太窄，又会错过该用的场景。",[11,1978,1980],{"id":1979},"知识注入领域专业能力","知识：注入领域专业能力",[16,1982,1983],{},"知识部分让 Agent 在特定领域变成「专家」。",[16,1985,1986],{},"比如一个数据分析 Skill 的知识可能包含：",[145,1988,1989,1992,1995],{},[43,1990,1991],{},"看到时间序列数据，优先考虑折线图",[43,1993,1994],{},"对比类数据用柱状图，占比类用饼图",[43,1996,1997],{},"数据量超过 1000 行时，先做抽样再可视化",[16,1999,2000],{},"这些知识以自然语言的形式写在 Skill 里，Agent 会在执行任务时参考。",[11,2002,2004],{"id":2003},"工具给-agent-一双手","工具：给 Agent 一双「手」",[16,2006,2007],{},"如果说知识是「大脑」，工具就是「手」。",[16,2009,2010],{},"工具可以是：",[145,2012,2013,2019,2025],{},[43,2014,2015,2018],{},[95,2016,2017],{},"Python 脚本"," — 处理文件、调用 API",[43,2020,2021,2024],{},[95,2022,2023],{},"Shell 命令"," — 系统操作、文件管理",[43,2026,2027,2030],{},[95,2028,2029],{},"HTTP 请求"," — 调用外部服务",[59,2032,2036],{"className":2033,"code":2034,"language":2035,"meta":68,"style":68},"language-python shiki shiki-themes github-light-default github-dark-default","# analyze.py - 数据分析工具\ndef analyze(file_path):\n    import pandas as pd\n    df = pd.read_csv(file_path)\n    summary = df.describe()\n    return summary.to_dict()\n","python",[66,2037,2038,2043,2048,2053,2058,2063],{"__ignoreMap":68},[757,2039,2040],{"class":759,"line":760},[757,2041,2042],{},"# analyze.py - 数据分析工具\n",[757,2044,2045],{"class":759,"line":163},[757,2046,2047],{},"def analyze(file_path):\n",[757,2049,2050],{"class":759,"line":160},[757,2051,2052],{},"    import pandas as pd\n",[757,2054,2055],{"class":759,"line":808},[757,2056,2057],{},"    df = pd.read_csv(file_path)\n",[757,2059,2060],{"class":759,"line":715},[757,2061,2062],{},"    summary = df.describe()\n",[757,2064,2065],{"class":759,"line":818},[757,2066,2067],{},"    return summary.to_dict()\n",[16,2069,2070],{},"Agent 会根据任务需要，自动选择和调用合适的工具。",[11,2072,2073],{"id":2073},"三者如何协作",[59,2075,2078],{"className":2076,"code":2077,"language":64},[62],"用户: \"帮我分析 sales.csv\"\n      ↓\nAgent 查看所有 Skill 的元信息\n      ↓ 匹配到 data-analyzer\n加载 Skill 的知识 → Agent 变成数据分析专家\n      ↓\n调用 analyze.py → 读取数据、计算指标\n调用 visualize.py → 生成图表\n      ↓\n输出分析报告\n",[66,2079,2077],{"__ignoreMap":68},[11,2081,552],{"id":552},[16,2083,2084],{},"了解了 Skill 的结构，下一篇我们就来动手制作第一个自己的 Skill。",[1133,2086,2087],{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sjgCt, html code.shiki .sjgCt{--shiki-default:#116329;--shiki-dark:#7EE787}html pre.shiki code .s4rv2, html code.shiki .s4rv2{--shiki-default:#1F2328;--shiki-dark:#E6EDF3}html pre.shiki code .sSVrQ, html code.shiki .sSVrQ{--shiki-default:#0A3069;--shiki-dark:#A5D6FF}",{"title":68,"searchDepth":160,"depth":160,"links":2089},[2090,2091,2092,2093,2094,2095],{"id":1797,"depth":163,"text":1798},{"id":1913,"depth":163,"text":1914},{"id":1979,"depth":163,"text":1980},{"id":2003,"depth":163,"text":2004},{"id":2073,"depth":163,"text":2073},{"id":552,"depth":163,"text":552},"拆解一个 Skill 的内部结构，理解每个组成部分的作用，为自己制作 Skill 打基础。",{},"\u002Ftutorials\u002Fai-agent-skill\u002Fskill-anatomy",{"title":1792,"description":2096},"tutorials\u002Fai-agent-skill\u002Fskill-anatomy",[188],"4sn1agCFiUeAAIN0pWZJQ2I7CnAOZM0gBGrJ1zqTrYc",{"id":2104,"title":2105,"body":2106,"cover":175,"date":396,"description":2407,"draft":178,"extension":179,"faq":175,"meta":2408,"navigation":181,"path":2409,"publish":178,"readingTime":833,"seo":2410,"seoKeywords":175,"series":185,"stem":2411,"summary":175,"tags":2412,"updated":175,"__hash__":2413},"tutorials\u002Ftutorials\u002Fai-agent-skill\u002Fsmart-search.md","实现智能检索",{"type":8,"value":2107,"toc":2393},[2108,2112,2115,2118,2146,2150,2153,2164,2168,2248,2251,2350,2353,2356,2362,2365,2368,2371,2377,2380,2386,2388,2391],[11,2109,2111],{"id":2110},"关键词搜索-vs-语义搜索","关键词搜索 vs 语义搜索",[16,2113,2114],{},"传统搜索靠「关键词匹配」，你搜「如何提高学习效率」，只能匹配包含这些字的内容。",[16,2116,2117],{},"语义搜索靠「理解含义」：",[329,2119,2120,2133],{},[332,2121,2122],{},[335,2123,2124,2127,2130],{},[338,2125,2126],{},"你的问题",[338,2128,2129],{},"关键词搜索能找到",[338,2131,2132],{},"语义搜索能找到",[345,2134,2135],{},[335,2136,2137,2140,2143],{},[350,2138,2139],{},"\"如何提高学习效率\"",[350,2141,2142],{},"包含\"学习效率\"的文章",[350,2144,2145],{},"包含\"学习效率\"的 + 讲\"番茄工作法\"的 + 讲\"间隔重复\"的",[11,2147,2149],{"id":2148},"制作检索-skill","制作检索 Skill",[33,2151,2152],{"id":2152},"核心思路",[40,2154,2155,2158,2161],{},[43,2156,2157],{},"把知识库中每篇内容转成「向量」（一串数字）",[43,2159,2160],{},"用户提问时，把问题也转成向量",[43,2162,2163],{},"找出与问题向量最接近的内容",[33,2165,2167],{"id":2166},"skill-定义","Skill 定义",[59,2169,2171],{"className":786,"code":2170,"language":788,"meta":68,"style":68},"# 知识检索 Skill\n\n## 功能\n在个人知识库中进行语义搜索，找到与用户问题最相关的内容。\n\n## 工作流程\n1. 接收用户的自然语言问题\n2. 搜索知识库中语义最接近的 5 篇内容\n3. 返回相关内容的标题、摘要和相关度评分\n\n## 输出格式\n按相关度排序，每条结果包含：\n- 标题\n- 摘要（50 字以内）\n- 来源文件路径\n- 相关度（高\u002F中\u002F低）\n",[66,2172,2173,2178,2182,2186,2191,2195,2200,2205,2210,2215,2219,2223,2228,2233,2238,2243],{"__ignoreMap":68},[757,2174,2175],{"class":759,"line":760},[757,2176,2177],{},"# 知识检索 Skill\n",[757,2179,2180],{"class":759,"line":163},[757,2181,800],{"emptyLinePlaceholder":181},[757,2183,2184],{"class":759,"line":160},[757,2185,1694],{},[757,2187,2188],{"class":759,"line":808},[757,2189,2190],{},"在个人知识库中进行语义搜索，找到与用户问题最相关的内容。\n",[757,2192,2193],{"class":759,"line":715},[757,2194,800],{"emptyLinePlaceholder":181},[757,2196,2197],{"class":759,"line":818},[757,2198,2199],{},"## 工作流程\n",[757,2201,2202],{"class":759,"line":183},[757,2203,2204],{},"1. 接收用户的自然语言问题\n",[757,2206,2207],{"class":759,"line":574},[757,2208,2209],{},"2. 搜索知识库中语义最接近的 5 篇内容\n",[757,2211,2212],{"class":759,"line":833},[757,2213,2214],{},"3. 返回相关内容的标题、摘要和相关度评分\n",[757,2216,2217],{"class":759,"line":400},[757,2218,800],{"emptyLinePlaceholder":181},[757,2220,2221],{"class":759,"line":843},[757,2222,1392],{},[757,2224,2225],{"class":759,"line":849},[757,2226,2227],{},"按相关度排序，每条结果包含：\n",[757,2229,2230],{"class":759,"line":855},[757,2231,2232],{},"- 标题\n",[757,2234,2235],{"class":759,"line":861},[757,2236,2237],{},"- 摘要（50 字以内）\n",[757,2239,2240],{"class":759,"line":867},[757,2241,2242],{},"- 来源文件路径\n",[757,2244,2245],{"class":759,"line":872},[757,2246,2247],{},"- 相关度（高\u002F中\u002F低）\n",[33,2249,2250],{"id":2250},"配合工具脚本",[59,2252,2254],{"className":2033,"code":2253,"language":2035,"meta":68,"style":68},"# search.py\nimport os\nimport json\n\ndef search_knowledge_base(query, data_dir=\"data\"):\n    \"\"\"搜索知识库\"\"\"\n    results = []\n    for root, dirs, files in os.walk(data_dir):\n        for file in files:\n            if file.endswith('.md'):\n                filepath = os.path.join(root, file)\n                with open(filepath, 'r') as f:\n                    content = f.read()\n                results.append({\n                    'title': file.replace('.md', ''),\n                    'path': filepath,\n                    'content': content[:200]\n                })\n    return results\n",[66,2255,2256,2261,2266,2271,2275,2280,2285,2290,2295,2300,2305,2310,2315,2320,2325,2330,2335,2340,2345],{"__ignoreMap":68},[757,2257,2258],{"class":759,"line":760},[757,2259,2260],{},"# search.py\n",[757,2262,2263],{"class":759,"line":163},[757,2264,2265],{},"import os\n",[757,2267,2268],{"class":759,"line":160},[757,2269,2270],{},"import json\n",[757,2272,2273],{"class":759,"line":808},[757,2274,800],{"emptyLinePlaceholder":181},[757,2276,2277],{"class":759,"line":715},[757,2278,2279],{},"def search_knowledge_base(query, data_dir=\"data\"):\n",[757,2281,2282],{"class":759,"line":818},[757,2283,2284],{},"    \"\"\"搜索知识库\"\"\"\n",[757,2286,2287],{"class":759,"line":183},[757,2288,2289],{},"    results = []\n",[757,2291,2292],{"class":759,"line":574},[757,2293,2294],{},"    for root, dirs, files in os.walk(data_dir):\n",[757,2296,2297],{"class":759,"line":833},[757,2298,2299],{},"        for file in files:\n",[757,2301,2302],{"class":759,"line":400},[757,2303,2304],{},"            if file.endswith('.md'):\n",[757,2306,2307],{"class":759,"line":843},[757,2308,2309],{},"                filepath = os.path.join(root, file)\n",[757,2311,2312],{"class":759,"line":849},[757,2313,2314],{},"                with open(filepath, 'r') as f:\n",[757,2316,2317],{"class":759,"line":855},[757,2318,2319],{},"                    content = f.read()\n",[757,2321,2322],{"class":759,"line":861},[757,2323,2324],{},"                results.append({\n",[757,2326,2327],{"class":759,"line":867},[757,2328,2329],{},"                    'title': file.replace('.md', ''),\n",[757,2331,2332],{"class":759,"line":872},[757,2333,2334],{},"                    'path': filepath,\n",[757,2336,2337],{"class":759,"line":878},[757,2338,2339],{},"                    'content': content[:200]\n",[757,2341,2342],{"class":759,"line":884},[757,2343,2344],{},"                })\n",[757,2346,2347],{"class":759,"line":890},[757,2348,2349],{},"    return results\n",[11,2351,2352],{"id":2352},"测试检索",[16,2354,2355],{},"存入几篇不同主题的内容后，试试搜索：",[59,2357,2360],{"className":2358,"code":2359,"language":64},[62],"在我的知识库里找找关于「提升记忆力」的内容\n",[66,2361,2359],{"__ignoreMap":68},[16,2363,2364],{},"Agent 不仅会找到直接提到「记忆力」的内容，还会找到讲「间隔重复」「睡眠与学习」等相关主题的笔记。",[11,2366,2367],{"id":2367},"优化搜索体验",[33,2369,2370],{"id":2370},"支持追问",[59,2372,2375],{"className":2373,"code":2374,"language":64},[62],"用户：找找关于 AI 的内容\nAgent：找到 15 篇相关内容，以下是最相关的 5 篇...\n用户：只看关于 AI 教育的\nAgent：缩小范围后找到 3 篇...\n",[66,2376,2374],{"__ignoreMap":68},[33,2378,2379],{"id":2379},"支持总结",[59,2381,2384],{"className":2382,"code":2383,"language":64},[62],"用户：总结一下我知识库里关于学习方法的所有内容\nAgent：[读取相关文章] → [生成综合总结]\n",[66,2385,2383],{"__ignoreMap":68},[11,2387,552],{"id":552},[16,2389,2390],{},"检索功能有了，最后一篇我们来把所有 Skill 串联起来，实现一个完整的工作流。",[1133,2392,1477],{},{"title":68,"searchDepth":160,"depth":160,"links":2394},[2395,2396,2401,2402,2406],{"id":2110,"depth":163,"text":2111},{"id":2148,"depth":163,"text":2149,"children":2397},[2398,2399,2400],{"id":2152,"depth":160,"text":2152},{"id":2166,"depth":160,"text":2167},{"id":2250,"depth":160,"text":2250},{"id":2352,"depth":163,"text":2352},{"id":2367,"depth":163,"text":2367,"children":2403},[2404,2405],{"id":2370,"depth":160,"text":2370},{"id":2379,"depth":160,"text":2379},{"id":552,"depth":163,"text":552},"为知识库添加语义搜索能力，让 AI 真正理解你的问题而不是简单匹配关键词。",{},"\u002Ftutorials\u002Fai-agent-skill\u002Fsmart-search",{"title":2105,"description":2407},"tutorials\u002Fai-agent-skill\u002Fsmart-search",[188],"L_3lW_kUG6oqDLJchivECABoSHJa7hmyXrJIl4bIK5A",1775480236033]