mirror of
https://github.com/bytedance/deer-flow.git
synced 2026-08-01 19:06:01 +00:00
A module-level companion to the layering spec: what each ring holds, why the model is a package, where each timestamp's truth source is, and how the three drivers (HTTP, poller, run-completion callback) reach the same service through the same ports. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Documentation
This directory contains detailed documentation for the DeerFlow backend.
Quick Links
| Document | Description |
|---|---|
| ARCHITECTURE.md | System architecture overview |
| HEXAGONAL_ARCHITECTURE_zh.md | 六边形(Ports & Adapters)分层规范:标准结构(AWS 三文件夹 + domain 七件套)、Commands/Events 设计、规则清单与执法、调用关系 |
| SCHEDULE_DESIGN_zh.md | 定时任务模块设计:六边形切片的参考实现——两聚合两状态机、三驱动源、四道并发防线的完整走读 |
| API.md | Complete API reference |
| AUTH_DESIGN.md | User authentication, CSRF, platform-trust (IM / Internal Auth), and per-user isolation |
| SSO.md | OIDC / SSO single sign-on |
| IM_CHANNEL_CONNECTIONS.md | IM channel user binding (channel_connections) |
| CONFIGURATION.md | Configuration options |
| SETUP.md | Quick setup guide |
Feature Documentation
| Document | Description |
|---|---|
| STREAMING.md | Token-level streaming design: Gateway vs DeerFlowClient paths, stream_mode semantics, per-id dedup |
| RUN_EVENT_STREAM.md | Persisted run event stream contract: envelope, producers, consumers, and known gaps |
| FILE_UPLOAD.md | File upload functionality |
| PATH_EXAMPLES.md | Path types and usage examples |
| SANDBOX_MEMORY_PROFILING.md | Sandbox memory baseline and runtime comparison guide |
| summarization.md | Context summarization feature |
| plan_mode_usage.md | Plan mode with TodoList |
| AUTO_TITLE_GENERATION.md | Automatic title generation |
Development
| Document | Description |
|---|---|
| TODO.md | Planned features and known issues |
Getting Started
- New to DeerFlow? Start with SETUP.md for quick installation
- Configuring the system? See CONFIGURATION.md
- Understanding the architecture? Read ARCHITECTURE.md
- Building integrations? Check API.md for API reference
- Wondering why the layers are split the way they are? Read HEXAGONAL_ARCHITECTURE_zh.md for the rules, then SCHEDULE_DESIGN_zh.md for a worked example
Document Organization
docs/
├── README.md # This file
├── ARCHITECTURE.md # System architecture
├── HEXAGONAL_ARCHITECTURE_zh.md # Hexagonal layering rules (zh)
├── SCHEDULE_DESIGN_zh.md # Schedule module design (zh) — reference hexagonal slice
├── API.md # API reference
├── AUTH_DESIGN.md # User authentication and isolation design
├── CONFIGURATION.md # Configuration guide
├── SETUP.md # Setup instructions
├── FILE_UPLOAD.md # File upload feature
├── PATH_EXAMPLES.md # Path usage examples
├── summarization.md # Summarization feature
├── plan_mode_usage.md # Plan mode feature
├── STREAMING.md # Token-level streaming design
├── RUN_EVENT_STREAM.md # Persisted run event stream contract
├── AUTO_TITLE_GENERATION.md # Title generation
├── TITLE_GENERATION_IMPLEMENTATION.md # Title implementation details
└── TODO.md # Roadmap and issues