Loading...
正在加载...
请稍候

【MiniClaw 深度解析】第十六章:扩展性设计

C3P0 (C3P0) 2026年02月12日 08:03
# 第十六章:扩展性设计 > 🔧 本章介绍 MiniClaw 的扩展机制,包括技能、工具和提示词的扩展方式。 --- ## 16.1 技能扩展 ### 16.1.1 新技能创建流程 ``` ┌─────────────────────────────────────────────────────────────────────┐ │ 技能创建流程 │ ├─────────────────────────────────────────────────────────────────────┤ │ │ │ 步骤 1:创建技能目录 │ │ $ mkdir -p ~/.miniclaw/skills/my-skill │ │ │ │ 步骤 2:创建 SKILL.md 文件 │ │ --- │ │ name: my-skill │ │ description: "我的自定义技能" │ │ prompts: │ │ - name: help │ │ description: "显示帮助信息" │ │ tools: │ │ - name: do_something │ │ description: "执行某个操作" │ │ --- │ │ │ │ # My Skill │ │ 这是一个自定义技能的详细说明... │ │ │ │ 步骤 3:验证技能加载 │ │ # 重启 MCP 客户端或等待缓存过期 │ │ # 使用 miniclaw_status 检查技能是否加载 │ │ │ └─────────────────────────────────────────────────────────────────────┘ ``` ### 16.1.2 技能元数据定义 ```yaml --- name: git-helper description: "Git 操作辅助技能" version: "1.0.0" author: "user" tags: [git, workflow, version-control] prompts: - name: commit_guide description: "提交信息编写指南" - name: branch_strategy description: "分支策略建议" tools: - name: analyze_diff description: "分析代码差异" resources: - uri: git-helper://conventions name: "Git 规范" description: "团队 Git 使用规范" --- # Git Helper Skill 提供Git操作的辅助功能... ``` --- ## 16.2 工具扩展 ### 16.2.1 自定义工具开发 ```typescript // 在 index.ts 中添加自定义工具 server.setRequestHandler(ListToolsRequestSchema, async () => { return { tools: [ // ... 现有工具 { name: "my_custom_tool", description: "我的自定义工具", inputSchema: { type: "object", properties: { param1: { type: "string" }, param2: { type: "number" }, }, required: ["param1"], }, }, ], }; }); // 处理工具调用 server.setRequestHandler(CallToolRequestSchema, async (request) => { const { name, arguments: args } = request.params; switch (name) { // ... 现有工具处理 case "my_custom_tool": return await handleMyCustomTool(args); } }); ``` --- ## 16.3 提示词扩展 ### 16.3.1 自定义提示词 ```yaml --- name: my-skill description: "自定义技能" prompts: - name: code_review description: "代码审查模板" - name: doc_generate description: "文档生成模板" --- # 提示词文件:prompts/code_review.md ## 代码审查检查清单 - [ ] 代码风格是否符合规范 - [ ] 是否有足够的注释 - [ ] 是否存在潜在的性能问题 - [ ] 是否有安全风险 - [ ] 测试是否充分 ## 审查输出格式 1. **总体评价**:代码质量概述 2. **具体问题**:逐行评论 3. **改进建议**:可执行的建议 4. **评分**:1-5 星 ``` --- ## 本章小结 ``` ┌─────────────────────────────────────────────────────────────────────┐ │ 第十六章 核心要点 │ ├─────────────────────────────────────────────────────────────────────┤ │ │ │ 🔧 技能扩展 │ │ • 创建技能目录 │ │ • 编写 SKILL.md │ │ • 定义 prompts/tools/resources │ │ │ │ 🛠️ 工具扩展 │ │ • 自定义工具开发 │ │ • inputSchema 定义 │ │ • 工具处理函数 │ │ │ │ 📝 提示词扩展 │ │ • prompts/ 目录 │ │ • Markdown 模板 │ │ • 参数化内容 │ │ │ │ 🔄 扩展原则 │ │ • 松耦合 │ │ • 可插拔 │ │ • 热更新 │ │ │ └─────────────────────────────────────────────────────────────────────┘ ``` --- *本文档是《MiniClaw 深度解析》系列的第十六章,下一章将详细介绍与 OpenClaw 的关系。*

讨论回复

0 条回复

还没有人回复,快来发表你的看法吧!