删除不再需要的归档文件和过时的文档模板,包括多个README、安全策略、前端集成蓝图等文件,同时移除了未使用的业务文档和项目结构文件。 优化项目结构,移除冗余文件,保持代码库整洁。主要删除archive/handover目录下的多个文件及doc目录下的部分文档模板。
239 lines
6.7 KiB
Markdown
239 lines
6.7 KiB
Markdown
# AI Strategy (Crawlful Hub)
|
||
|
||
> **定位**:Crawlful Hub AI 策略文档 - 描述多 AI 协作方案、任务分配策略及决策流程。
|
||
> **更新日期**: 2026-03-18
|
||
> **注意**:本文档不重复 Task_Overview.md 中的任务列表,仅描述 AI 协作策略。
|
||
|
||
---
|
||
|
||
## 1. 多 AI 协作架构
|
||
|
||
### 1.1 架构概览
|
||
|
||
```
|
||
┌─────────────────────────────────────────────────────────────┐
|
||
│ Brain (调度中心) │
|
||
│ 全局调度与决策 │
|
||
└─────────────────────────────────────────────────────────────┘
|
||
│
|
||
┌───────────────────┼───────────────────┐
|
||
▼ ▼ ▼
|
||
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
|
||
│ AI Agent 1 │ │ AI Agent 2 │ │ AI Agent N │
|
||
│ (前端/插件) │ │ (后端/数据) │ │ (分析/决策) │
|
||
└─────────────────┘ └─────────────────┘ └─────────────────┘
|
||
│ │ │
|
||
└───────────────────┼───────────────────┘
|
||
▼
|
||
┌──────────────────┐
|
||
│ Task Queue │
|
||
│ (BullMQ) │
|
||
└──────────────────┘
|
||
```
|
||
|
||
### 1.2 角色定义
|
||
|
||
| 角色 | 职责 | 能力范围 |
|
||
|------|------|----------|
|
||
| **Brain** | 全局调度、任务分配、冲突解决 | 不直接生成代码 |
|
||
| **AI Agent** | 原子任务包闭环开发 | 代码生成、测试、部署 |
|
||
| **AI Analyst** | 数据分析、报告生成 | 数据处理、可视化 |
|
||
| **AI Decision** | 决策支持、策略优化 | 算法、预测 |
|
||
|
||
### 1.3 协作原则
|
||
|
||
1. **一次性分发**:每轮下发完整任务包(P0/P1/P2)
|
||
2. **连续执行**:任务包内连续执行到"完成或明确阻塞"
|
||
3. **文件占用锁**:同目录协作先声明归属,"谁领取谁编辑"
|
||
4. **冲突处理**:后写入方必须先 Read 最新内容,增量合并
|
||
|
||
---
|
||
|
||
## 2. 任务分配策略
|
||
|
||
### 2.1 动态分配机制
|
||
|
||
```typescript
|
||
// 任务分配算法
|
||
interface TaskAssignment {
|
||
taskId: string;
|
||
agentId: string;
|
||
priority: 'P0' | 'P1' | 'P2' | 'P3';
|
||
capability: string[];
|
||
estimatedTime: number;
|
||
}
|
||
|
||
// 分配策略
|
||
const assignmentStrategy = {
|
||
// 能力匹配
|
||
matchCapability: (task: Task, agent: Agent): boolean => {
|
||
return task.requiredCapabilities.every(cap =>
|
||
agent.capabilities.includes(cap)
|
||
);
|
||
},
|
||
|
||
// 负载均衡
|
||
balanceLoad: (agents: Agent[]): Agent => {
|
||
return agents.reduce((min, agent) =>
|
||
agent.activeTasks < min.activeTasks ? agent : min
|
||
);
|
||
},
|
||
|
||
// 优先级排序
|
||
sortByPriority: (tasks: Task[]): Task[] => {
|
||
const priorityOrder = { P0: 0, P1: 1, P2: 2, P3: 3 };
|
||
return tasks.sort((a, b) =>
|
||
priorityOrder[a.priority] - priorityOrder[b.priority]
|
||
);
|
||
},
|
||
};
|
||
```
|
||
|
||
### 2.2 能力标签
|
||
|
||
| 能力标签 | 说明 | 适用任务 |
|
||
|----------|------|----------|
|
||
| `frontend` | 前端开发 | React, UI组件 |
|
||
| `backend` | 后端开发 | API, Service |
|
||
| `plugin` | 插件开发 | Chrome Extension |
|
||
| `database` | 数据库 | Schema, Query |
|
||
| `ai-analysis` | AI分析 | 数据分析, 报告 |
|
||
| `ai-decision` | AI决策 | 算法, 策略 |
|
||
| `devops` | 运维 | 部署, 监控 |
|
||
|
||
---
|
||
|
||
## 3. 决策流程
|
||
|
||
### 3.1 决策层级
|
||
|
||
```
|
||
Level 1: AI Agent 自主决策
|
||
├─ 代码实现细节
|
||
├─ 单元测试用例
|
||
└─ 局部重构
|
||
|
||
Level 2: Brain 协调决策
|
||
├─ 跨模块接口设计
|
||
├─ 任务优先级调整
|
||
└─ 资源冲突解决
|
||
|
||
Level 3: 人工确认决策
|
||
├─ 核心业务数据修改(调价、退款)
|
||
├─ 架构重大变更
|
||
└─ 生产环境部署
|
||
```
|
||
|
||
### 3.2 决策流程门禁
|
||
|
||
```
|
||
SUGGESTED -> PENDING_REVIEW -> EXECUTED/REJECTED
|
||
```
|
||
|
||
**严禁**:AI 直接修改核心业务数据(调价、退款、下单)
|
||
**必须**:人工在 Console 端确认后方可执行
|
||
|
||
---
|
||
|
||
## 4. 自省与上报
|
||
|
||
### 4.1 自省要求
|
||
|
||
AI Agent 必须在以下阶段上报"自我问题":
|
||
|
||
1. **对话开始时**
|
||
- 当前任务理解
|
||
- 依赖任务状态
|
||
- 潜在风险点
|
||
|
||
2. **执行过程中**
|
||
- 进度更新
|
||
- 阻塞问题
|
||
- 需要协调的事项
|
||
|
||
3. **交付前**
|
||
- 功能验证结果
|
||
- 测试覆盖率
|
||
- 已知限制
|
||
|
||
### 4.2 上报格式
|
||
|
||
```typescript
|
||
interface SelfReport {
|
||
stage: 'start' | 'progress' | 'delivery';
|
||
taskId: string;
|
||
agentId: string;
|
||
status: 'normal' | 'blocked' | 'at-risk';
|
||
progress: number; // 0-100
|
||
issues: {
|
||
type: 'dependency' | 'conflict' | 'technical' | 'resource';
|
||
description: string;
|
||
severity: 'low' | 'medium' | 'high';
|
||
}[];
|
||
nextSteps: string[];
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
## 5. 质量保障
|
||
|
||
### 5.1 代码质量门禁
|
||
|
||
| 指标 | 目标值 | 检查方式 |
|
||
|------|--------|----------|
|
||
| 测试覆盖率 | ≥ 80% | 自动化测试 |
|
||
| 类型安全 | 100% | TypeScript strict |
|
||
| 代码规范 | 0 警告 | ESLint |
|
||
| 文档完整 | 100% | JSDoc |
|
||
|
||
### 5.2 验证流程
|
||
|
||
```
|
||
代码生成
|
||
│
|
||
▼
|
||
静态检查 (ESLint/TypeScript)
|
||
│
|
||
▼
|
||
单元测试
|
||
│
|
||
▼
|
||
集成测试
|
||
│
|
||
▼
|
||
人工 Review (关键模块)
|
||
│
|
||
▼
|
||
部署验证
|
||
```
|
||
|
||
---
|
||
|
||
## 6. 与 Task_Overview.md 的关系
|
||
|
||
### 6.1 职责划分
|
||
|
||
| 文档 | 职责 | 内容 |
|
||
|------|------|------|
|
||
| **Task_Overview.md** | 任务追踪 | 所有任务的详细列表、状态、依赖 |
|
||
| **AI_Strategy.md** | 策略描述 | AI 协作机制、决策流程、质量保障 |
|
||
|
||
### 6.2 避免重复
|
||
|
||
- **Task_Overview.md** 是唯一的任务源
|
||
- **AI_Strategy.md** 不重复定义任务
|
||
- **AI_Strategy.md** 描述如何执行任务的策略
|
||
|
||
---
|
||
|
||
## 7. 相关文档
|
||
|
||
- [Task Overview](../00_Business/Task_Overview.md) - 任务追踪(唯一任务源)
|
||
- [Business ClosedLoops](../00_Business/Business_ClosedLoops.md) - 业务闭环
|
||
- [System Architecture](../01_Architecture/System_Architecture.md) - 系统架构
|
||
|
||
---
|
||
|
||
*本文档描述 AI 协作策略,不重复任务列表,最后更新: 2026-03-18*
|