|
17 | 17 | </p> |
18 | 18 |
|
19 | 19 | <p align="center"> |
20 | | - <a href="#quick-start">Quick Start</a> · <a href="#features">Features</a> · <a href="GUIDE_CN.md">中文指南</a> · <a href="#contributing">Contributing</a> |
| 20 | + <a href="#quick-start">Quick Start</a> · <a href="#features">Features</a> · <a href="#contributing">Contributing</a> · [English](#why-zync) | [中文](#为什么需要-zync) |
21 | 21 | </p> |
22 | 22 |
|
23 | 23 | --- |
@@ -174,32 +174,39 @@ AI agent runs in that worktree (no conflicts with other sessions) |
174 | 174 | You review the diff, then merge to main or archive |
175 | 175 | ``` |
176 | 176 |
|
177 | | -<details> |
178 | | -<summary>Architecture diagram</summary> |
| 177 | +### Architecture |
| 178 | + |
179 | 179 | <p align="center"> |
180 | 180 | <img src="docs/diagrams/architecture.svg" alt="Zync Architecture" width="850" /> |
181 | 181 | </p> |
182 | | -</details> |
183 | 182 |
|
184 | | -<details> |
185 | | -<summary>Workflow diagram</summary> |
| 183 | +### Worktree Isolation |
| 184 | + |
186 | 185 | <p align="center"> |
187 | | - <img src="docs/diagrams/workflow.svg" alt="Zync Workflow" width="850" /> |
| 186 | + <img src="docs/diagrams/worktree.svg" alt="Git Worktree Isolation" width="850" /> |
188 | 187 | </p> |
189 | | -</details> |
190 | 188 |
|
191 | 189 | <details> |
192 | | -<summary>Worktree isolation diagram</summary> |
| 190 | +<summary>More diagrams (Workflow, Panel System, Chinese versions)</summary> |
| 191 | + |
| 192 | +**Workflow:** |
193 | 193 | <p align="center"> |
194 | | - <img src="docs/diagrams/worktree.svg" alt="Git Worktree Isolation" width="850" /> |
| 194 | + <img src="docs/diagrams/workflow.svg" alt="Zync Workflow" width="850" /> |
195 | 195 | </p> |
196 | | -</details> |
197 | 196 |
|
198 | | -<details> |
199 | | -<summary>Panel system diagram</summary> |
| 197 | +**Panel System:** |
200 | 198 | <p align="center"> |
201 | 199 | <img src="docs/diagrams/panels.svg" alt="Zync Panel System" width="850" /> |
202 | 200 | </p> |
| 201 | + |
| 202 | +**中文图表 / Chinese Diagrams:** |
| 203 | +<p align="center"> |
| 204 | + <img src="docs/diagrams/architecture-zh.svg" alt="架构图" width="850" /><br/><br/> |
| 205 | + <img src="docs/diagrams/worktree-zh.svg" alt="Worktree 隔离" width="850" /><br/><br/> |
| 206 | + <img src="docs/diagrams/workflow-zh.svg" alt="工作流程" width="850" /><br/><br/> |
| 207 | + <img src="docs/diagrams/panels-zh.svg" alt="面板系统" width="850" /> |
| 208 | +</p> |
| 209 | + |
203 | 210 | </details> |
204 | 211 |
|
205 | 212 | ## Configuration |
@@ -246,6 +253,105 @@ Found a bug or have an idea? [Open an issue](https://github.com/24kchengYe/Zync/ |
246 | 253 | - [Setup Troubleshooting](docs/troubleshooting/SETUP_TROUBLESHOOTING.md) |
247 | 254 | - [Database Schema](docs/DATABASE_DOCUMENTATION.md) |
248 | 255 |
|
| 256 | +--- |
| 257 | + |
| 258 | +<div align="center"> |
| 259 | + |
| 260 | +# Zync 中文文档 |
| 261 | + |
| 262 | +**面向 AI 编程代理的 IDE。** |
| 263 | + |
| 264 | +*并行运行多个 Claude Code、Codex 或 Aider 会话——每个都在独立的 git worktree 中工作。* |
| 265 | + |
| 266 | +</div> |
| 267 | + |
| 268 | +## 为什么需要 Zync? |
| 269 | + |
| 270 | +你一定经历过—— |
| 271 | + |
| 272 | +打开终端,启动 Claude Code,给它一个任务,然后……等。想同时试另一种方案?你需要第二个终端、第二个分支,还得小心别让两个 Agent 改同一个文件。到第三个 Agent 的时候,你已经淹没在标签页和合并冲突里了。 |
| 273 | + |
| 274 | +**Zync 解决了这个问题。** 每个会话自动获得独立的 git worktree。你在一个侧边栏里看到所有 Agent——谁在跑、谁做完了、谁在等你输入。Agent 完成后,你审查 diff 然后一键合并。不用手动建分支,不会有冲突,不用 Alt-Tab 切来切去。 |
| 275 | + |
| 276 | +<table> |
| 277 | +<tr> |
| 278 | +<td width="50%"> |
| 279 | + |
| 280 | +**没有 Zync** |
| 281 | +- 一次只能跑一个 Agent,或者冲突满天飞 |
| 282 | +- 手动 `git worktree add` / 清理 |
| 283 | +- 在终端之间 Alt-Tab 切换 |
| 284 | +- 手动跑 `git diff` 审查改动 |
| 285 | +- 不知道哪个 Agent 需要你的注意 |
| 286 | + |
| 287 | +</td> |
| 288 | +<td width="50%"> |
| 289 | + |
| 290 | +**有了 Zync** |
| 291 | +- 10+ 个 Agent 并行工作 |
| 292 | +- 每个会话自动隔离 worktree |
| 293 | +- 统一的 Agent 管理面板 |
| 294 | +- 内置语法高亮 diff 查看器 |
| 295 | +- Agent 完成或需要输入时桌面通知 |
| 296 | + |
| 297 | +</td> |
| 298 | +</tr> |
| 299 | +</table> |
| 300 | + |
| 301 | +## 快速开始 |
| 302 | + |
| 303 | +**前置条件:** [Node.js](https://nodejs.org/) >= 22.14.0、[pnpm](https://pnpm.io/) >= 8、[Git](https://git-scm.com/),以及至少一个 AI Agent([Claude Code](https://docs.anthropic.com/en/docs/claude-code)、[Codex](https://github.com/openai/codex) 或 [Aider](https://aider.chat/)) |
| 304 | + |
| 305 | +```bash |
| 306 | +git clone https://github.com/24kchengYe/Zync.git |
| 307 | +cd Zync |
| 308 | +pnpm install && pnpm run setup |
| 309 | +``` |
| 310 | + |
| 311 | +**Windows 一键启动:** 复制 `start.bat.example` 为 `start.bat`,编辑配置,双击运行。 |
| 312 | + |
| 313 | +**手动启动:** |
| 314 | +```bash |
| 315 | +# 终端 1:启动前端 |
| 316 | +pnpm run --filter frontend dev |
| 317 | + |
| 318 | +# 终端 2:启动应用(等前端显示 ready 后) |
| 319 | +npx electron . |
| 320 | +``` |
| 321 | + |
| 322 | +## 核心功能 |
| 323 | + |
| 324 | +| 功能 | 说明 | |
| 325 | +|------|------| |
| 326 | +| **并行 Agent 会话** | 同时运行 Claude Code、Codex、Aider 等,互不干扰 | |
| 327 | +| **内置 Diff 查看器** | 语法高亮显示每个 Agent 的改动,支持缓存加速 | |
| 328 | +| **权限控制** | 每个工作区独立选择:自动批准 或 手动审批 | |
| 329 | +| **完整 Git 工作流** | Fetch、Commit、Pull、Push、Rebase、Merge,侧边栏一键操作 | |
| 330 | +| **智能通知** | Agent 完成、出错或等待输入时桌面提醒 | |
| 331 | +| **多工具支持** | Claude Code 和 Codex 原生集成,其他工具通过自定义命令添加 | |
| 332 | +| **文件预览** | Explorer 支持图片、PDF、视频、音频预览 | |
| 333 | +| **多标签编辑** | 同时打开多个文件,标签栏切换 | |
| 334 | +| **LaTeX 编译** | 内置编译预览,Ctrl+S 自动编译,可拖动分栏 | |
| 335 | +| **脚本执行** | Python/JS/TS/Shell 文件一键运行 | |
| 336 | + |
| 337 | +## 平台支持 |
| 338 | + |
| 339 | +| 平台 | 状态 | 说明 | |
| 340 | +|------|------|------| |
| 341 | +| **Windows** | 完整支持 | Named Pipe 权限 IPC、中文路径支持 | |
| 342 | +| **macOS** | 完整支持 | Universal 二进制(Intel + Apple Silicon) | |
| 343 | +| **Linux** | 完整支持 | deb 和 AppImage 包 | |
| 344 | + |
| 345 | +## 已知限制 |
| 346 | + |
| 347 | +Zync 专注于 AI Agent 编排,**不替代你的 IDE**: |
| 348 | +- **没有代码编辑器** — 用 VS Code 或 PyCharm 编辑,Zync 有"Open in IDE"按钮 |
| 349 | +- **没有调试器、LSP、插件** — 这些在你的 IDE 里,Zync 专注于 Agent 工作流层 |
| 350 | + |
| 351 | +详细使用说明请看 [中文使用指南](GUIDE_CN.md)。 |
| 352 | + |
| 353 | +--- |
| 354 | + |
249 | 355 | ## License |
250 | 356 |
|
251 | 357 | AGPL-3.0 — See [LICENSE](LICENSE) |
|
0 commit comments