---
name: deepsearch
description: 深度研究代理系统社区版，对复杂主题进行多轮迭代的网络搜索和综合分析。使用场景：当用户需要对特定主题进行深入、全面的研究时，特别是需要基于最新网络信息生成详细分析报告的情况。支持多轮迭代搜索、智能搜索方向调整和综合分析报告生成。本skill是一个工作流描述文档，没有执行脚本，依赖web-search skill进行网页搜索。
license: Complete terms in LICENSE.txt
---

# DeepSearch

## 概述

深度研究代理系统社区版是一个基于工作流的深度研究系统，能够对复杂主题进行多轮迭代的网络搜索和综合分析。系统通过结合LLM智能分析和实时网络搜索，生成详细的研究报告。

## 工作流调用逻辑

### 系统架构

本系统是一个工作流描述文档，没有执行脚本。依赖以下外部技能：

- **web-search skill**: 用于执行网页搜索，运行脚本：`python scripts/web_search.py "<query>"`
- **LLM技能**: 用于智能分析和推理

### 工作流程

#### 1. 输入接收阶段

- **用户输入**: 研究主题（sys.query）和研究深度（depth）
- **默认深度**: 3（可配置）

#### 2. 初始化阶段

- 创建迭代数组，深度为指定的depth值
- 数组格式：`[0, 1, ..., depth-1]`

#### 3. 迭代搜索阶段（多轮执行）

**每轮迭代执行以下步骤：**

##### a) LLM智能分析

- 使用LLM分析当前研究状态
- 输入：用户查询、已收集的findings、已搜索的topics
- 输出：JSON格式，包含：
  - `nextSearchTopic`: 下一个搜索主题（字符串或None）
  - `shouldContinue`: 是否继续搜索（布尔值）

##### b) JSON解析

- 提取`nextSearchTopic`和`shouldContinue`字段
- 更新对话变量

##### c) 条件判断

- 如果`shouldContinue`为True：
  - 执行web-search：`python scripts/web_search.py "<nextSearchTopic>"`
  - 将搜索结果追加到findings数组
  - 更新搜索进度显示
  - 继续下一轮迭代
- 如果`shouldContinue`为False：
  - 结束当前迭代
  - 输出中间结果

##### d) 变量管理

- 更新`nextSearchTopic`和`shouldContinue`变量
- 将`nextSearchTopic`追加到`topics`数组（记录已搜索主题）
- 避免重复搜索相同主题

#### 4. 综合分析阶段

- 所有迭代完成后，使用LLM综合分析所有收集到的findings
- 生成详细的综合分析报告
- 输出格式：Markdown格式的详细报告

#### 5. 报告生成阶段

- 输出最终的研究分析结果
- 包含重要洞察、结论和剩余不确定性
- 适当引用来源

### 变量说明

系统维护以下对话变量：

| 变量名 | 类型 | 描述 |
| -------- | ------ | ------ |
| `topics` | array[string] | 已搜索的主题列表 |
| `nextSearchTopic` | string | 下一个要搜索的主题 |
| `findings` | array[string] | 收集到的搜索结果列表 |
| `shouldContinue` | string | 是否继续搜索的标志 |

### 网页搜索集成

当需要进行网络搜索时：

1. 使用`nextSearchTopic`作为查询参数
2. 运行web-search技能：`python scripts/web_search.py "<query>"`
3. 根据返回的摘要列表组织答案，不新增或臆造内容
4. 将搜索结果追加到`findings`数组

**注意**: 不要使用任何搜索参数配置（如search_depth、topic、max_results、country、time_range、days等），仅保留核心输入query。

### 进度跟踪

系统实时显示搜索进度：

- 格式：`{index + 1}/{depth}th search executed.`
- 例如：`1/3th search executed.`

## 使用场景

### 适用场景

1. **复杂主题研究**: 需要对特定主题进行深入、全面的研究
2. **最新信息分析**: 需要基于最新网络信息生成详细分析报告
3. **多角度探索**: 需要从不同角度和维度探索一个主题
4. **系统化调查**: 需要系统化的调查和证据收集

### 典型用例

- 市场趋势分析
- 技术发展研究
- 竞争对手分析
- 学术文献综述
- 产品调研

## 技术特点

### 智能特性

1. **自适应搜索**: 每轮搜索后由LLM分析结果，智能决定下一步搜索方向
2. **避免重复**: 系统记录已搜索主题，避免重复搜索相同内容
3. **深度推理**: 使用专门的推理模型进行综合分析

### 系统特性

1. **多轮迭代**: 支持指定深度的多轮搜索
2. **并行能力**: 支持最多10个并行搜索
3. **状态管理**: 完整的变量管理和状态跟踪
4. **进度可视**: 实时显示搜索进度和状态

### 集成特性

1. **LLM集成**: 结合GPT-4o进行智能分析，deepseek-reasoner进行深度推理
2. **网络搜索**: 集成web-search技能获取实时网络信息
3. **JSON处理**: 使用JSON解析工具处理结构化数据

## 工作流示例

### 输入示例

```markdown
用户查询: "人工智能在医疗领域的最新发展"
研究深度: 3
```

### 执行流程

1. **第1轮**:
   - LLM分析: 决定搜索"AI医疗诊断最新进展"
   - Web搜索: 执行搜索并收集结果
   - 状态更新: 记录主题，决定继续搜索

2. **第2轮**:
   - LLM分析: 基于第1轮结果，决定搜索"医疗影像AI技术突破"
   - Web搜索: 执行搜索并收集结果
   - 状态更新: 记录主题，决定继续搜索

3. **第3轮**:
   - LLM分析: 基于前两轮结果，决定搜索"AI药物研发应用"
   - Web搜索: 执行搜索并收集结果
   - 状态更新: 记录主题，决定结束搜索

4. **综合分析**:
   - LLM综合分析所有收集到的findings
   - 生成关于"人工智能在医疗领域的最新发展"的详细报告

### 输出示例

```markdown
# 人工智能在医疗领域的最新发展研究报告

## 执行摘要
[基于三轮搜索的综合分析...]

## 主要发现
1. AI在医疗诊断方面的最新进展
   - [具体发现1]
   - [具体发现2]

2. 医疗影像AI技术突破
   - [具体发现3]
   - [具体发现4]

3. AI在药物研发中的应用
   - [具体发现5]
   - [具体发现6]

## 结论与建议
[综合分析结论...]

## 未来研究方向
[基于研究发现提出的未来研究方向...]
```

## 注意事项

### 工作流限制

1. **无执行脚本**: 本skill是一个工作流描述文档，不包含可执行脚本
2. **外部依赖**: 依赖web-search技能执行实际搜索
3. **参数简化**: 搜索时仅使用query参数，忽略其他搜索配置

### 使用建议

1. **深度设置**: 根据研究复杂度设置合适的depth值
2. **查询优化**: 提供清晰具体的研究主题
3. **结果验证**: 对生成的报告进行必要的事实核查

### 最佳实践

1. **渐进式研究**: 从宽泛主题开始，逐步深入具体方向
2. **多源验证**: 结合多个来源的信息进行交叉验证
3. **及时更新**: 对于快速发展的主题，建议定期重新研究

## 故障排除

### 常见问题

1. **搜索无结果**: 检查query是否过于具体或专业，尝试更通用的搜索词
2. **迭代过早结束**: 调整LLM的temperature参数或提供更多上下文
3. **结果重复**: 系统已内置避免重复机制，如仍出现可手动干预

### 性能优化

1. **并行搜索**: 充分利用系统的并行能力（最多10个并行）
2. **缓存利用**: 对于相同主题的多次研究，可考虑结果缓存
3. **增量更新**: 对于持续研究，可采用增量更新策略

---

**重要提示**: 本skill描述了一个深度研究工作流，实际执行需要依赖外部技能和配置。请确保已正确配置web-search技能和相关LLM服务。
