Files
LaodingBot/skills/skill_builder/skill.md

53 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
name: 创建skill
description: 当用户请求新增能力或系统发现能力缺口时,自动创建并完善 skill必要时生成新 tool 代码并完成测试。
---
# Skill: 创建skill
## 1. 触发条件
当出现以下任一情况时触发:
- 用户明确要求“创建/新增一个 skill”。
- 现有技能无法覆盖用户目标(无 skill 命中或执行失败)。
- 高频 capability_gap 指向同一类能力缺口。
## 2. 目标
1. 生成可执行的 `skills/<skill_name>/skill.md`
2. 若需要新工具,生成 `internal/tools/<tool_name>/` 下 Go 代码。
3. 生成或补充测试代码并执行 `go test ./...`
4. 输出结果中说明新增内容、测试结果与后续建议。
## 3. 可用工具
- `file`:创建目录与文件、写入 skill/tool/test 内容。
- `shell`:执行测试、检索代码位置、检查文件结构。
## 4. 执行流程
1. **澄清能力边界**:提炼该 skill 要解决的问题与触发信号。
2. **命名与路径规划**
- 技能路径:`skills/<skill_name>/skill.md`
- 工具路径(如需):`internal/tools/<tool_name>/...`
3. **创建 skill 文件**写入完整字段用途、触发、工具、ReAct 指南、失败回退、输出规范)。
4. **判断是否需要新 tool**
- 若现有 `shell/file` 足够,直接结束。
- 若不够,进入工具生成。
5. **生成 tool 代码(如需)**
- 实现 `Name/Description/Call`
- 保持白名单与安全边界。
- 在主注册逻辑或 toolhost 注册逻辑中接入。
6. **生成测试并执行**
- 补充 `*_test.go`
- 执行 `go test ./...`
7. **结果汇报**:给出新增文件清单、测试结果、风险说明。
## 5. 质量约束
- 不覆盖已有稳定 skill优先新增目录。
- 避免引入高风险命令;遵循 `ALLOWED_COMMANDS``ALLOWED_DIRS`
- 生成代码必须尽量小步、可测试、可回滚。
- 无法可靠完成时,明确说明缺失信息并给出最短下一步。
## 6. 输出模板
- 新增技能:`skills/<skill_name>/skill.md`
- 新增工具(可选):`internal/tools/<tool_name>/...`
- 测试结果:`go test ./...` 的通过/失败摘要
- 后续动作:是否需要热加载、是否需要补充环境变量