大模型应用
需要为 Azure/.NET/M365/VS…
当用户想构建、生成或搭建任意 Microsoft 技术(Azure、.NET、M365、VS Code、Bicep 等)的 agent skill 时,先调研官方文档,再生成核心知识本地存储、深度细节动态查询的混合技能。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 59/100 ×0.15
适用场景
需要为 Azure/.NET/M365/特定
解决思路
- 将技能组织为模块化包,用于扩展 agent 能力,使其在特定领域从通用变为专用。
- 按结构创建技能目录:`skill-name/` 下包含 `SKILL.md`(必需,含 frontmatter 的 `name`、`description` 和指令)、`references/`(按需加载的文档)、`sample_codes/`(可运行代码示例)、`assets/`(输出时使用的文件,如模板)。
- 编写 frontmatter 时确保 `name` 和 `description` 清晰全面,因为它们决定技能何时触发。
- 保持内容简洁,只写 agent 尚不知道的内容,因为上下文窗口共享。
- 避免重复:信息只放在 `SKILL.md` 或引用文件中,不要两处都放。
- 使用 Learn MCP 工具调研:`microsoft_docs_search` 搜索官方文档,用于首轮发现和查找主题;`microsoft_docs_fetch` 获取完整页面内容,用于深入重要页面;`microsoft_code_sample_search` 查找代码示例,用于获取实现模式。
- 若 Learn MCP server 不可用,改用 `mslearn` CLI:直接运行 `npx @microsoft/learn-cli search "semantic kernel overview"`,或全局安装 `npm install -g @microsoft/learn-cli` 后运行 `mslearn search "semantic kernel overview"`。
- 在 MCP 与 CLI 之间使用映射:`microsoft_docs_search(query: "...")` 对应 `mslearn search "..."`;`microsoft_code_sample_search(query: "...", language: "...")` 对应 `mslearn code-search "..." --language ...`;`microsoft_docs_fetch(url: "...")` 对应 `mslearn fetch "..."`。
- 生成的技能中应包含同样的 CLI fallback 表,让 agent 可使用任一方式。
- 调查主题时,用 Learn MCP 工具分三阶段建立深入理解。
- Phase 1 Scope Discovery:执行 `microsoft_docs_search(query="{technology} overview what is")`、`microsoft_docs_search(query="{technology} concepts architecture")`、`microsoft_docs_search(query="{technology} getting started tutorial")`。
- Phase 2 Core Content:对 Phase 1 找到的页面执行 `microsoft_docs_fetch(url="...")`,并执行 `microsoft_code_sample_search(query="{technology}", language="{lang}")`。
- Phase 3 Depth:执行 `microsoft_docs_search(query="{technology} best practices")` 和 `microsoft_docs_search(query="{technology} troubleshooting errors")`。
- 调查后按清单验证:能用一段话解释该技术做什么;识别出 3-5 个关键概念;拥有基础用法的可运行代码;了解最常见 API 模式;拥有面向更深主题的搜索查询。
- 与用户澄清:展示发现并询问:『我找到这些关键领域:[列表]。哪些最重要?』、『agent 主要会用这个技能执行什么任务?』、『代码示例应优先使用哪种编程语言?』。
- 生成技能时,根据技术类型从 `references/skill-templates.md` 选用适当模板:客户端库、NuGet/npm 包用 SDK/Library 模板;Azure 资源用 Azure Service 模板;应用开发框架用 Framework/Platform 模板;REST API、协议用 API/Protocol 模板。
- 按生成技能结构创建:`{skill-name}/SKILL.md`(核心知识 + Learn MCP 指导)、`references/`(如需要,存放详细本地文档)、`sample_codes/getting-started/` 和 `sample_codes/common-patterns/`(可运行代码示例)。
- 平衡本地内容与动态内容;本地存储条件:基础性(任何任务都需要)、频繁访问、稳定(不会变化)、难以通过搜索找到。
- 动态保留条件:详尽参考(太大)、版本特定、情境性(仅特定任务)、索引良好(易于搜索)。
- 按内容指南决定本地/动态:核心概念(3-5 个)本地完整;Hello world 代码本地完整;常见模式(3-5 个)本地完整;Top API 方法本地放签名 + 示例,完整文档通过 fetch 动态获取;最佳实践本地放 Top 5 bullet,更多通过搜索;故障排除动态用搜索查询;完整 API 参考动态用文档链接。
- 验证:审查本地内容是否足够完成常见任务;测试建议的搜索查询是否返回有用结果;验证代码示例是否能无错误运行。
- 针对 SDK/库使用调查模式:`"{name} overview"` 获取用途和架构;`"{name} getting started quickstart"` 获取设置步骤;`"{name} API reference"` 获取核心类/方法;`"{name} samples examples"` 获取代码模式;`"{name} best practices performance"` 获取优化。
- 针对 Azure 服务使用调查模式:`"{service} overview features"` 获取能力;`"{service} quickstart {language}"` 获取设置代码;`"{service} REST API reference"` 获取端点;`"{service} SDK {language}"` 获取客户端库;`"{service} pricing limits quotas"` 获取约束。
- 针对框架/平台使用调查模式:`"{framework} architecture concepts"` 获取心智模型;`"{framework} project structure"` 获取约定;`"{framework} tutorial walkthrough"` 获取端到端流程;`"{framework} configuration options"` 获取自定义。
- 示例:创建 Semantic Kernel 技能时,执行 `microsoft_docs_search(query="semantic kernel overview")`、`microsoft_docs_search(query="semantic kernel plugins functions")`、`microsoft_code_sample_search(query="semantic kernel", language="csharp")`、`microsoft_docs_fetch(url="https://learn.microsoft.com/semantic-kernel/overview/")`。
- 生成的 Semantic Kernel 技能结构:`semantic-kernel/SKILL.md`、`semantic-kernel/sample_codes/getting-started/hello-kernel.cs`、`semantic-kernel/sample_codes/common-patterns/chat-completion.cs`、`semantic-kernel/sample_codes/common-patterns/function-calling.cs`。
- 生成的 `SKILL.md` 包含:frontmatter 的 `name: semantic-kernel` 和 description;标题;关键概念(Kernel、Plugins、Planner、Memory);Quick Start 链接;Learn More 表列出各主题的 `microsoft_docs_search` 或 `microsoft_docs_fetch` 用法;CLI Alternative 表。
- 在生成的 `SKILL.md` 的 CLI Alternative 中写:若 Learn MCP server 不可用,使用 `mslearn` CLI;MCP 与 CLI 映射同上;用 `npx @microsoft/learn-cli <command>` 直接运行,或用 `npm install -g @microsoft/learn-cli` 全局安装。
适用边界 · 注意事项
- 不适用于非 Microsoft 技术;该流程依赖 Microsoft Learn 官方文档和对应 MCP/CLI 查询。
- 无法访问 Microsoft Learn MCP Server,且不能运行 `npx @microsoft/learn-cli` 或 `mslearn` CLI 时,不要按此动态查询流程执行。
- 如果目标技能只需要极少量、长期稳定、无需官方文档深挖的知识,不必生成混合技能和动态查询部分。