# 项目背景研究

## 研究目标

全面了解开源项目的起源、发展历程、社区生态和项目定位，为后续深入研究奠定基础。

## 你必须执行的研究步骤

### 步骤1：收集项目基本信息

**必须搜索和收集的信息：**

- 项目名称、官方网站、GitHub仓库链接
- 项目许可证类型
- 主要维护者信息
- 项目的star数、fork数、贡献者数量
- 最近一次提交时间和活跃度

**信息来源：**

- GitHub仓库主页
- 项目官方网站
- search_web搜索项目基本信息

### 步骤2：研究项目起源和历史

**必须收集的信息：**

- 项目创建的时间和背景
- 项目的发起原因和初衷
- 发展历程中的重要节点
- 版本发布历史

**要搜索的关键词：**

- "[项目名] history timeline"
- "[项目名] origin story"
- "[项目名] development history"
- "[项目名] first commit"

**信息来源：**

- 项目官方博客或文档
- GitHub的README和CHANGELOG
- search_web搜索项目历史
- read_webpage阅读项目介绍文档

### 步骤3：分析社区生态

**必须研究的内容：**

- 核心维护者团队构成
- 贡献者活跃度分析
- 社区规模和增长趋势
- 主要的用户群体
- 社区治理模式

**要搜索的关键词：**

- "[项目名] community statistics"
- "[项目名] contributors analysis"
- "[项目名] governance model"
- "[项目名] case studies usage"

**信息来源：**

- GitHub Insights界面
- 项目社区论坛或邮件列表
- search_web搜索社区分析

### 步骤4：明确项目定位和应用场景

**必须分析的内容：**

- 项目的核心功能和定位
- 主要目标用户群体
- 典型应用场景
- 解决的核心需求
- 与其他项目的差异化定位

**要搜索的关键词：**

- "[项目名] use cases"
- "[项目名] target audience"
- "[项目名] vs alternatives"
- "[项目名] when to use"

**信息来源：**

- 官方文档的Introduction章节
- 项目FAQ文档
- 用户案例和成功故事
- search_web搜索应用场景

### 步骤5：分析项目的技术栈

**必须识别的信息：**

- 项目使用的编程语言
- 主要依赖的框架和库
- 运行环境要求
- 技术架构类型

**信息来源：**

- GitHub仓库的language统计
- 项目依赖文件（package.json, requirements.txt等）
- 官方文档的技术要求章节

## 研究产出要求

### 文档结构

**必须产出文档：** `01_project_background.md`

**文档必须包含以下章节：**

1. 项目概览（基本信息表格）
2. 项目起源与发展历史
3. 社区生态分析
4. 项目定位与应用场景
5. 技术栈概览
6. 参考资料列表

### 内容质量要求

- **必须**：所有信息都注明出处（链接、文档标题）
- **必须**：使用表格形式展示项目基本信息
- **必须**：使用时间线形式展示项目发展历程
- **必须**：提供具体的数据支持（star数、贡献者数等）
- **禁止**：基于猜测或传闻的信息
- **禁止**：未经验证的主观判断

## 研究深度检查

在完成本阶段研究后，你必须确认：

- [ ] 能够清楚说明项目的起源和创建动机
- [ ] 了解项目的主要发展阶段和里程碑
- [ ] 掌握核心维护者和社区基本情况
- [ ] 明确项目的定位和典型应用场景
- [ ] 了解项目的基本技术栈
- [ ] 所有信息都有可信的来源引用

## 常见错误

**❌ 错误做法：**
- 只看README就认为了解了项目背景
- 忽视社区活跃度和治理模式
- 没有搜索项目历史和起源故事
- 只关注技术，忽视应用场景

**✅ 正确做法：**
- 多渠道收集信息，交叉验证
- 使用search_web广泛搜索相关信息
- 阅读官方文档、博客、社区讨论
- 分析具体的使用案例和用户反馈

## 进阶研究建议

如果项目有重要的历史文档（如设计文档初稿、RFC讨论），应该查阅：
- GitHub的 Discussions 或 Issues 记录
- 项目的设计文档（docs/design/）
- 相关的技术博客和演讲视频
- 学术论文（如果项目基于学术研究）