skill 定义 + 多个skill 协作

skill是一个可复用的能力模块,包含完成某类任务所需的知识、流程、工具调用方式和约束。

多个 skill 可以通过 任务分解 + 编排(orchestration)+ 信息传递 协作完成一个完整开发任务。


1. Skill 的定义

一个 skill 可以抽象为:

ini 复制代码
Skill = 能力描述 + 输入 + 输出 + 工具 + 流程 + 约束

例如:

需求分析 Skill

diff 复制代码
名称:
requirement-analysis

职责:
- 分析用户需求
- 输出用户故事
- 提取业务规则
- 生成验收标准

输入:
用户需求文本

输出:
requirements.md

架构设计 Skill

makefile 复制代码
名称:
architecture-design

职责:
- 设计系统架构
- 技术选型
- 模块划分

输入:
requirements.md

输出:
architecture.md

编码 Skill

makefile 复制代码
名称:
backend-development

职责:
- 编写后端代码
- 创建 API
- 数据库实现

输入:
architecture.md

输出:
source code

测试 Skill

makefile 复制代码
名称:
testing

职责:
- 编写测试
- 执行测试
- 分析失败原因

输入:
source code

输出:
test report

2. 多个 Skill 如何协作

通常有一个 Orchestrator(调度器 / Agent Manager)

结构类似:

markdown 复制代码
                 用户需求
                    |
                    v
              Orchestrator
                    |
     --------------------------------
     |              |              |
     v              v              v

需求分析Skill   架构Skill       UI设计Skill

     |              |              |
     -------------------------------
                    |
                    v

              开发Skill

                    |
                    v

              测试Skill

                    |
                    v

              发布Skill

3. 一个完整开发任务示例

假设:

开发一个电商订单系统

Step 1:需求 Skill

输入:

复制代码
我要开发订单系统

执行:

复制代码
requirement-analysis skill

输出:

markdown 复制代码
features:
  - 创建订单
  - 支付
  - 查询订单
  - 取消订单

roles:
  - 用户
  - 管理员

Step 2:架构 Skill

读取需求:

复制代码
architecture-design

生成:

复制代码
订单服务
支付服务
库存服务
数据库设计
API规范

例如:

bash 复制代码
Order Service

POST /orders
GET /orders/{id}

Database:

orders
order_items
payments

Step 3:开发 Skill

根据架构:

复制代码
backend-development

执行:

lua 复制代码
create controller
create service
create repository
create database migration

输出:

go 复制代码
src/
 ├── order/
 │    ├── controller.go
 │    ├── service.go
 │    └── repository.go

Step 4:测试 Skill

读取代码:

复制代码
testing

生成:

go 复制代码
order_test.go

测试:
✓ 创建订单
✓ 重复支付
✓ 库存不足

Step 5:DevOps Skill

负责:

复制代码
dockerize
CI/CD
deployment

输出:

复制代码
Dockerfile
github-actions.yml
k8s deployment.yaml

4. Skill 协作的关键机制

① 输入输出契约(Contract)

每个 skill 不应该随意输出。

例如:

需求 Skill:

输入:

json 复制代码
{
 "request":"开发订单系统"
}

输出:

json 复制代码
{
 "requirements":"requirements.md"
}

架构 Skill 只依赖:

复制代码
requirements.md

这样可以替换 skill。

例如:

markdown 复制代码
Java架构Skill
        |
        v
Spring Boot开发Skill

换成:

markdown 复制代码
Go架构Skill
        |
        v
Go开发Skill

上层不用变化。


② Skill Pipeline

简单任务:

css 复制代码
A → B → C

例如:

复制代码
需求分析
   |
架构设计
   |
编码
   |
测试

适合:

  • CRUD
  • API 开发
  • 自动生成项目

③ DAG 工作流

复杂任务:

lua 复制代码
          需求
            |
      -------------
      |           |
   后端设计     前端设计
      |           |
      ------ ------
            |
          集成
            |
          测试

例如:

前端和后端可以并行。


④ 多 Agent 协作

每个 skill 可以对应一个 Agent:

lua 复制代码
Agent Manager

 |
 |---- Product Agent
 |
 |---- Architect Agent
 |
 |---- Developer Agent
 |
 |---- QA Agent
 |
 |---- Security Agent

它们通过共享 Workspace:

css 复制代码
workspace/

 requirements.md
 architecture.md
 src/
 tests/

交换信息。


5. 一个实际的 Skill 配置例子

类似:

yaml 复制代码
skills:

- name: requirement-analysis
  description: 分析产品需求
  input:
    - user_request
  output:
    - requirements.md


- name: backend-dev
  description: 后端开发
  input:
    - architecture.md
  tools:
    - vscode
    - git
    - terminal
  output:
    - code


- name: qa
  description: 自动测试
  input:
    - code
  output:
    - report

6. Skill 和普通工具的区别

Tool Skill
定位 执行动作 完成能力
例子 调用 GitHub API 完成代码提交流程
粒度 较小 较大
是否有流程 通常没有
是否组合

例如:

工具:

scss 复制代码
git.commit()

Skill:

markdown 复制代码
release-management

流程:
1. 检查代码
2. 运行测试
3. 创建版本
4. 提交tag
5. 发布

7. 一个成熟 AI 编程系统的 Skill 架构

markdown 复制代码
                 User
                   |
              Planner Agent
                   |
          Task Decomposition
                   |
        ---------------------
        |        |          |
        v        v          v

 Product   Architect   Developer
 Skill       Skill       Skill

        |        |          |

        ---------------------
                   |
              Integration
                   |
                QA Skill
                   |
             Deployment Skill

核心思想:

Skill 不负责"整个任务",只负责一个专业领域;Orchestrator 负责把多个 skill 组合成完整交付流程。

如果用于 AI 软件开发,通常会设计:

  • Product skill(需求)
  • Architecture skill(架构)
  • Coding skill(实现)
  • Review skill(代码审查)
  • Testing skill(测试)
  • DevOps skill(部署)
  • Security skill(安全扫描)

这些 skill 通过共享上下文和明确输入输出协议协作,就能形成一个类似"AI 软件团队"的开发系统。

相关推荐
武子康2 小时前
MCP 2026-07-28 无状态核心之后:身份、任务、幂等与审计状态到底放在哪里?
人工智能·llm·mcp
瓦学妹2 小时前
X(Twitter)新号如何防封?2026 养号与防限流全攻略
大数据·网络·人工智能·新媒体运营·twitter
EAIReport2 小时前
企业GEO全域运营技术落地路线与量化效果验证方案(AI大数据行业适配)
大数据·人工智能
极地野狼 音乐哔哔2 小时前
AI Agent 30天速成|Day4 笔记
人工智能·笔记
小保CPP2 小时前
OpenCV C++车型识别1-图像预处理
c++·人工智能·opencv·计算机视觉
普密斯科技2 小时前
如何一键解决手机镜头磨切片微米级尺寸测量难题?
人工智能·计算机视觉·智能手机·测量
qq_454245032 小时前
认知自举:LLM自我指令泛化的三层逻辑
人工智能·架构·prompt
Luminbox紫创测控2 小时前
可调UV宽光谱高功率的LED太阳能模拟器
人工智能·测试工具·汽车·安全性测试·uv·测试标准
董员外2 小时前
RAG 系统进化论(一):纵览 RAG 的发展历程
前端·人工智能·后端