更新README文件
This commit is contained in:
195
README.md
195
README.md
@@ -5,86 +5,79 @@
|
||||
[](https://tauri.app/)
|
||||
[](https://nextjs.org/)
|
||||
|
||||
Codeg(Code Generation)是一个面向多 Agent 的企业级代码生成工作台。
|
||||
它把不同 AI 编码代理(Claude Code、Codex CLI、OpenCode、Gemini CLI 等)统一到一个桌面应用里,支持会话聚合、并行 worktree 开发、MCP 与 Skills 管理,以及 Git/文件/终端一体化操作。
|
||||
<p>
|
||||
<strong>English</strong> |
|
||||
<a href="./docs/readme/README.zh-CN.md">简体中文</a> |
|
||||
<a href="./docs/readme/README.zh-TW.md">繁體中文</a> |
|
||||
<a href="./docs/readme/README.ja.md">日本語</a> |
|
||||
<a href="./docs/readme/README.ko.md">한국어</a> |
|
||||
<a href="./docs/readme/README.es.md">Español</a> |
|
||||
<a href="./docs/readme/README.de.md">Deutsch</a> |
|
||||
<a href="./docs/readme/README.fr.md">Français</a> |
|
||||
<a href="./docs/readme/README.pt.md">Português</a> |
|
||||
<a href="./docs/readme/README.ar.md">العربية</a>
|
||||
</p>
|
||||
|
||||
Codeg (Code Generation) is an enterprise-grade multi-agent coding workspace.
|
||||
It unifies local AI coding agents (Claude Code, Codex CLI, OpenCode, Gemini CLI,
|
||||
etc.) in one desktop app with session aggregation, parallel `git worktree`
|
||||
development, MCP/Skills management, and integrated Git/file/terminal workflows.
|
||||
|
||||

|
||||

|
||||
|
||||
> 当前版本:`v0.0.x`(快速迭代中,适合早期体验与共建)
|
||||
> Current status: `v0.0.x` (fast iteration, suitable for early adopters)
|
||||
|
||||
## 项目定位
|
||||
## Highlights
|
||||
|
||||
Codeg 的目标不是“又一个聊天窗口”,而是:
|
||||
- Unified multi-agent workspace in the same project
|
||||
- Local session ingestion with structured rendering
|
||||
- Parallel development with built-in `git worktree` flows
|
||||
- MCP management (local scan + registry search/install)
|
||||
- Skills management (global and project scope)
|
||||
- Integrated engineering loop (file tree, diff, git changes, commit, terminal)
|
||||
|
||||
- 面向真实研发场景的企业级代码生成工作台
|
||||
- 统一多代理协作入口
|
||||
- 支持多分支 / worktree 并发任务开发
|
||||
- 在单个项目上下文中聚合会话、变更、提交与执行链路
|
||||
- 逐步演进为稳定高效的 Agent Code Generation Workspace
|
||||
## Supported Scope
|
||||
|
||||
## 核心亮点
|
||||
### 1) Session Ingestion (historical sessions)
|
||||
|
||||
- 多 Agent 统一工作台:同一项目内可同时使用不同代理并行对话
|
||||
- 本地会话聚合:导入并查看本机历史会话,统一结构化渲染(消息、工具调用、Token、上下文窗口)
|
||||
- Worktree 并发开发:内置 `git worktree` 流程,支持多窗口并行任务
|
||||
- MCP 管理中心:扫描本地 MCP,支持官方 Registry 与 Smithery 搜索/安装
|
||||
- Skills 管理:支持全局 / 项目级 Skills 的查看、编辑、保存与删除
|
||||
- 工程操作闭环:文件树、Diff、Git 变更、Git Log、提交窗口、内置终端、项目命令
|
||||
|
||||
## 能力矩阵
|
||||
|
||||
| 模块 | 当前状态 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| 本地会话解析与导入 | ✅ | 已支持 Claude Code / Codex / OpenCode / Gemini CLI |
|
||||
| ACP 实时连接与对话 | ✅ | 已支持 20+ Agent 适配(npx/uvx/二进制) |
|
||||
| Worktree 并发开发 | ✅ | 分支管理 + `git_worktree_add` + 多文件夹窗口 |
|
||||
| MCP 管理 | ✅ | 本地扫描 + Marketplace 搜索/安装(Official + Smithery) |
|
||||
| Skills 管理 | ✅ | 已支持 Claude/Codex/OpenCode/Gemini/OpenClaw |
|
||||
| 文件工作区 | ✅ | 预览、编辑、Diff、保存、冲突对比 |
|
||||
|
||||
## 支持范围
|
||||
|
||||
### 1) 会话解析(历史会话聚合)
|
||||
|
||||
| Agent | 环境变量优先路径 | macOS / Linux 默认路径 | Windows 默认路径 |
|
||||
| Agent | Environment Variable Path | macOS / Linux Default | Windows Default |
|
||||
| --- | --- | --- | --- |
|
||||
| Claude Code | `$CLAUDE_CONFIG_DIR/projects` | `~/.claude/projects` | `%USERPROFILE%\\.claude\\projects` |
|
||||
| Codex CLI | `$CODEX_HOME/sessions` | `~/.codex/sessions` | `%USERPROFILE%\\.codex\\sessions` |
|
||||
| OpenCode | `$XDG_DATA_HOME/opencode/opencode.db` | `~/.local/share/opencode/opencode.db` | `%USERPROFILE%\\.local\\share\\opencode\\opencode.db` |
|
||||
| Gemini CLI | `$GEMINI_CLI_HOME/.gemini` | `~/.gemini` | `%USERPROFILE%\\.gemini` |
|
||||
|
||||
> 说明:以上默认路径按当前实现的回退逻辑整理,实际以环境变量为准。
|
||||
> Note: environment variables take precedence over fallback paths.
|
||||
|
||||
### 2) ACP 连接(实时 Agent 会话)
|
||||
### 2) ACP real-time sessions
|
||||
|
||||
当前注册表内置:
|
||||
Built-in registry includes 20+ adapters, such as Claude Code, Codex CLI,
|
||||
Gemini CLI, OpenCode, OpenClaw, GitHub Copilot, Cline, Qwen Code, and others.
|
||||
|
||||
`Auggie, Autohand, Claude Code, Cline, Codebuddy Code, Codex CLI, Corust Agent, Factory Droid, Gemini CLI, GitHub Copilot, goose, Junie, Kimi CLI, Minion Code, Mistral Vibe, OpenClaw, OpenCode, Qoder CLI, Qwen Code, Stakpak`
|
||||
### 3) Skills settings support
|
||||
|
||||
### 3) Skills 设置页支持
|
||||
- Supported: `Claude Code / Codex / OpenCode / Gemini CLI / OpenClaw`
|
||||
- More adapters will be added incrementally
|
||||
|
||||
- 已支持:`Claude Code / Codex / OpenCode / Gemini CLI / OpenClaw`
|
||||
- 其他代理:后续逐步补齐
|
||||
### 4) MCP target apps
|
||||
|
||||
### 4) MCP 目标应用
|
||||
|
||||
当前可写入配置:
|
||||
Current writable targets:
|
||||
|
||||
- Claude Code
|
||||
- Codex
|
||||
- OpenCode
|
||||
|
||||
## 快速开始
|
||||
## Quick Start
|
||||
|
||||
### 环境要求
|
||||
### Requirements
|
||||
|
||||
- Node.js `>=22`(推荐)
|
||||
- Node.js `>=22` (recommended)
|
||||
- pnpm `>=10`
|
||||
- Rust stable(2021 edition)
|
||||
- Tauri 2 构建依赖(参考官方文档)
|
||||
- Rust stable (2021 edition)
|
||||
- Tauri 2 build dependencies
|
||||
|
||||
Linux(Debian/Ubuntu)常见依赖示例:
|
||||
Linux (Debian/Ubuntu) example:
|
||||
|
||||
```bash
|
||||
sudo apt-get update
|
||||
@@ -95,44 +88,33 @@ sudo apt-get install -y \
|
||||
patchelf
|
||||
```
|
||||
|
||||
### 安装与开发
|
||||
### Development
|
||||
|
||||
```bash
|
||||
pnpm install
|
||||
|
||||
# 启动完整桌面应用(Tauri + Next.js)
|
||||
# Full desktop app (Tauri + Next.js)
|
||||
pnpm tauri dev
|
||||
|
||||
# 仅启动前端
|
||||
# Frontend only
|
||||
pnpm dev
|
||||
|
||||
# 前端构建(静态导出到 out/)
|
||||
# Frontend static export to out/
|
||||
pnpm build
|
||||
|
||||
# 构建桌面应用
|
||||
# Desktop build
|
||||
pnpm tauri build
|
||||
|
||||
# Lint
|
||||
pnpm lint .
|
||||
pnpm eslint .
|
||||
|
||||
# Rust 检查(在 src-tauri/ 目录)
|
||||
# Rust checks (run in src-tauri/)
|
||||
cargo check
|
||||
cargo clippy
|
||||
cargo build
|
||||
```
|
||||
|
||||
> 当前仓库尚未配置完整自动化测试框架(已有部分 Rust 单元测试)。
|
||||
|
||||
## 使用流程(建议)
|
||||
|
||||
1. 在欢迎页打开本地目录,或 Clone 仓库。
|
||||
2. 进入 `Settings > Agents`,执行 Preflight、安装/配置代理。
|
||||
3. 在分支菜单创建分支或 Worktree,启动并行任务窗口。
|
||||
4. 新建会话并选择 Agent 开始编码。
|
||||
5. 在右侧面板查看会话文件改动、Git Changes、Git Log。
|
||||
6. 使用提交窗口完成选择文件、编辑提交信息与提交。
|
||||
|
||||
## 架构概览
|
||||
## Architecture
|
||||
|
||||
```text
|
||||
Next.js 16 (Static Export) + React 19
|
||||
@@ -140,81 +122,28 @@ Next.js 16 (Static Export) + React 19
|
||||
| invoke()
|
||||
v
|
||||
Tauri 2 Commands (Rust)
|
||||
|- ACP Manager (agent lifecycle, streaming events, permissions)
|
||||
|- ACP Manager
|
||||
|- Parsers (local session ingestion)
|
||||
|- Git / File Tree / Terminal runtime
|
||||
|- MCP marketplace + local config writer
|
||||
|- SeaORM + SQLite (folders, conversations, settings)
|
||||
|- SeaORM + SQLite
|
||||
|
|
||||
v
|
||||
Local Filesystem / Local Agent Data / Git Repos
|
||||
```
|
||||
|
||||
## 目录结构
|
||||
## Constraints
|
||||
|
||||
```text
|
||||
src/ # Next.js 前端
|
||||
app/ # 页面与布局(静态导出模式)
|
||||
components/ # 业务组件 + UI 组件
|
||||
contexts/ # 全局状态(会话、终端、工作区等)
|
||||
lib/ # Tauri 调用封装、类型与工具
|
||||
- Frontend uses static export (`output: "export"`)
|
||||
- No Next.js dynamic routes (`[param]`); use query params instead
|
||||
- Tauri command params: frontend `camelCase`, Rust `snake_case`
|
||||
- TypeScript strict mode
|
||||
|
||||
src-tauri/src/ # Rust 后端
|
||||
acp/ # Agent Connection Protocol 连接管理
|
||||
commands/ # 暴露给前端的 Tauri 命令
|
||||
parsers/ # 各代理会话解析器
|
||||
db/ # SQLite/SeaORM 与迁移
|
||||
terminal/ # PTY 终端管理
|
||||
network/ # 代理等网络设置
|
||||
```
|
||||
## Privacy & Security
|
||||
|
||||
## 开发约束
|
||||
|
||||
- 前端为静态导出模式(`next.config.ts` 中 `output: "export"`)
|
||||
- 不使用 Next.js 动态路由(`[param]`),统一使用查询参数
|
||||
- Tauri 命令参数:前端 `camelCase`,Rust 端 `snake_case`
|
||||
- TypeScript 严格模式(`strict` + noUnused)
|
||||
|
||||
## 本地数据存储
|
||||
|
||||
- 应用数据库:`appDataDir/codeg.db`(SQLite + WAL)
|
||||
- 会话原始数据:直接读取各 Agent 本地目录/文件,不做云端中转
|
||||
- 可导入会话:按“支持范围”中的路径规则扫描并写入本地数据库索引
|
||||
|
||||
## 产品路线图
|
||||
|
||||
### Near-term
|
||||
|
||||
- 会话解析扩展到更多代理格式(统一抽象与插件化注册)
|
||||
- MCP 安装管理(版本锁定、配置模板、环境校验)
|
||||
- Skills 模板中心(可复用模板、项目级分发)
|
||||
|
||||
### Mid-term
|
||||
|
||||
- 多 Agent 协同编排(任务拆分、角色分工、结果合并)
|
||||
- Worktree 任务面板(任务状态、上下游依赖、可视化流转)
|
||||
- 团队级配置同步(Agent/MCP/Skills 配置分发)
|
||||
|
||||
### Long-term
|
||||
|
||||
- 插件化扩展机制(Parser / MCP / Skills 生态)
|
||||
- 指标看板增强(Token/成本/时延/成功率)
|
||||
- 组织级知识沉淀:会话资产化、检索、复盘与最佳实践沉淀
|
||||
|
||||
## 隐私与安全
|
||||
|
||||
- 默认以本地数据为主:会话解析、数据库与项目操作均在本机执行
|
||||
- 仅在你主动使用时访问网络(如 Agent 安装、MCP 市场搜索、Git 远程操作)
|
||||
- 支持系统代理配置,便于企业网络环境接入
|
||||
|
||||
## 贡献
|
||||
|
||||
欢迎通过 Issue / PR 共建,建议优先从以下方向参与:
|
||||
|
||||
- 新代理会话解析器
|
||||
- MCP 兼容层与配置适配
|
||||
- Worktree 并行开发体验优化
|
||||
- 会话可视化与指标面板优化
|
||||
- Local-first by default for parsing, storage, and project operations
|
||||
- Network access happens only on user-triggered actions
|
||||
- System proxy support for enterprise environments
|
||||
|
||||
## License
|
||||
|
||||
|
||||
Reference in New Issue
Block a user