# sightdev00/problem-driven-research architecture

> Architecture diagram of the GitHub repository sightdev00/problem-driven-research, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-30). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/sightdev00/problem-driven-research
- Repository: https://github.com/sightdev00/problem-driven-research

## Overview

这是一个可暂停、以问题为驱动的文献研究原型。主流程从录入现象开始，经模型辅助形成问题框架、人工确认、公开资料发现与读取、分批分析，最后由人审核阶段性结论。研究状态和报告保存在各自的研究目录中，支持恢复、补充检索和重新界定问题。图中流程依据 README 与 CLI 摘录；未展示的实现细节和连接不作推断。

Main entry points: [`src/problem_research/cli.py`](https://github.com/sightdev00/problem-driven-research/blob/main/src/problem_research/cli.py) (研究流程 CLI), [`research`](https://github.com/sightdev00/problem-driven-research/tree/main/research) (研究记录), [`structure`](https://github.com/sightdev00/problem-driven-research/tree/main/structure) (领域协议), [`structure/sources.json`](https://github.com/sightdev00/problem-driven-research/blob/main/structure/sources.json) (来源注册表)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_framing["问题界定"]
  node_cli["研究流程 CLI<br/>[cli.py]"]
  node_protocols["领域协议"]
  node_model["兼容模型服务"]
end

subgraph group_discovery["资料发现"]
  node_registry["来源注册表<br/>[sources.json]"]
  node_institutional["机构网页"]
  node_openalex["OpenAlex"]
  node_crossref["Crossref"]
  node_arxiv["arXiv"]
  node_manual_urls["补充网址"]
  node_paper_pages["论文落地页"]
end

subgraph group_analysis["分析审核"]
  node_analysis["分批来源分析<br/>[cli.py]"]
  node_review["阶段性审核<br/>[cli.py]"]
end

subgraph group_records["研究记录"]
  node_records[("研究记录")]
  node_resume["恢复与续研<br/>[cli.py]"]
  node_reports["研究报告"]
end

node_researcher(("研究者"))

node_researcher -->|"录入问题"| node_cli
node_cli -->|"读取协议"| node_protocols
node_cli -->|"请求框架与分析"| node_model
node_cli -->|"确认框架"| node_researcher
node_cli -->|"读取来源"| node_registry
node_cli -->|"读取机构页"| node_institutional
node_cli -->|"检索文献"| node_openalex
node_cli -->|"检索文献"| node_crossref
node_cli -.->|"检索预印本"| node_arxiv
node_cli -->|"检查网址"| node_manual_urls
node_cli -->|"读取落地页"| node_paper_pages
node_cli -->|"保存研究状态"| node_records
node_cli -->|"启动分析"| node_analysis
node_analysis -->|"提交来源摘录"| node_model
node_analysis -->|"呈交阶段结果"| node_review
node_review -->|"确认线索"| node_researcher
node_review -->|"写入报告"| node_reports
node_researcher -->|"恢复或续研"| node_resume
node_resume -->|"读取与归档"| node_records
node_resume -->|"继续流程"| node_cli

click node_cli "https://github.com/sightdev00/problem-driven-research/blob/main/src/problem_research/cli.py"
click node_protocols "https://github.com/sightdev00/problem-driven-research/tree/main/structure"
click node_registry "https://github.com/sightdev00/problem-driven-research/blob/main/structure/sources.json"
click node_analysis "https://github.com/sightdev00/problem-driven-research/blob/main/src/problem_research/cli.py"
click node_review "https://github.com/sightdev00/problem-driven-research/blob/main/src/problem_research/cli.py"
click node_records "https://github.com/sightdev00/problem-driven-research/tree/main/research"
click node_resume "https://github.com/sightdev00/problem-driven-research/blob/main/src/problem_research/cli.py"
click node_reports "https://github.com/sightdev00/problem-driven-research/tree/main/research"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_cli,node_protocols,node_model toneBlue
class node_registry,node_institutional,node_openalex,node_crossref,node_arxiv,node_manual_urls,node_paper_pages toneAmber
class node_analysis,node_review toneMint
class node_records,node_resume,node_reports toneRose
class node_researcher toneIndigo
```

## Components

### 问题界定

- [研究流程 CLI](https://github.com/sightdev00/problem-driven-research/blob/main/src/problem_research/cli.py): `src/problem_research/cli.py`
- [领域协议](https://github.com/sightdev00/problem-driven-research/tree/main/structure): `structure`
- **兼容模型服务**

### 资料发现

- [来源注册表](https://github.com/sightdev00/problem-driven-research/blob/main/structure/sources.json): `structure/sources.json`
- **机构网页**
- **OpenAlex**
- **Crossref**
- **arXiv**
- **补充网址**
- **论文落地页**

### 分析审核

- [分批来源分析](https://github.com/sightdev00/problem-driven-research/blob/main/src/problem_research/cli.py): `src/problem_research/cli.py`
- [阶段性审核](https://github.com/sightdev00/problem-driven-research/blob/main/src/problem_research/cli.py): `src/problem_research/cli.py`

### 研究记录

- [研究记录](https://github.com/sightdev00/problem-driven-research/tree/main/research): `research`
- [恢复与续研](https://github.com/sightdev00/problem-driven-research/blob/main/src/problem_research/cli.py): `src/problem_research/cli.py`
- [研究报告](https://github.com/sightdev00/problem-driven-research/tree/main/research): `research`

### Other components

- **研究者**

## Connections

- 研究者 → 研究流程 CLI: 录入问题 (evidence: `README.md`)
- 研究流程 CLI → 领域协议: 读取协议 (evidence: `README.md`)
- 研究流程 CLI → 兼容模型服务: 请求框架与分析 (evidence: `src/problem_research/cli.py`)
- 研究流程 CLI → 研究者: 确认框架 (evidence: `README.md`)
- 研究流程 CLI → 来源注册表: 读取来源 (evidence: `README.md`)
- 研究流程 CLI → 机构网页: 读取机构页 (evidence: `README.md`)
- 研究流程 CLI → OpenAlex: 检索文献 (evidence: `README.md`)
- 研究流程 CLI → Crossref: 检索文献 (evidence: `README.md`)
- 研究流程 CLI → arXiv: 检索预印本 (evidence: `README.md`)
- 研究流程 CLI → 补充网址: 检查网址 (evidence: `README.md`)
- 研究流程 CLI → 论文落地页: 读取落地页 (evidence: `README.md`)
- 研究流程 CLI → 研究记录: 保存研究状态 (evidence: `README.md`)
- 研究流程 CLI → 分批来源分析: 启动分析 (evidence: `src/problem_research/cli.py`)
- 分批来源分析 → 兼容模型服务: 提交来源摘录 (evidence: `src/problem_research/cli.py`)
- 分批来源分析 → 阶段性审核: 呈交阶段结果 (evidence: `README.md`)
- 阶段性审核 → 研究者: 确认线索 (evidence: `README.md`)
- 阶段性审核 → 研究报告: 写入报告 (evidence: `src/problem_research/cli.py`)
- 研究者 → 恢复与续研: 恢复或续研 (evidence: `README.md`)
- 恢复与续研 → 研究记录: 读取与归档 (evidence: `README.md`)
- 恢复与续研 → 研究流程 CLI: 继续流程 (evidence: `README.md`)
