English | 简体中文 | 繁體中文 | 日本語 | 한국어 | Español | Deutsch | Français | Português | العربية
Codeg(Code Generation)是一个多智能体编码工作台,它将多个智能体(Claude Code、Codex CLI、OpenCode、Gemini CLI、OpenClaw、Cline 等)统一到一个工作区中,支持会话聚合和多智能体协作,支持桌面安装,服务器/Docker 部署。
|
MyClaw.ai — 全托管的 OpenClaw 云端实例服务,一键部署、7×24 全天候在线、数据完全由用户掌控,无需自行管理服务器。 |
|
![]() 优云智算 |
感谢优云智算赞助了本项目!优云智算是 UCloud 旗下 AI 云平台,主打包月、按次的高性价比国模 agent Plan 套餐,低至 49 元/月起。同时提供官转稳定海外模型。支持接入 Claude Code、Codex 及 API 调用。支持企业高并发、7*24 技术支持、自助开票。通过此链接注册的用户,可得免费 5 元平台体验金! |
想成为 Codeg 赞助商?欢迎通过邮件与我们联系。
- 会话聚合 — 将所有受支持智能体的会话导入到统一工作台
- 多智能体协作 — 在同一会话中,主智能体可调用不同类型的子智能体(如 Claude Code 调用 Codex、Gemini 等)协作完成任务,每个子智能体作为独立会话运行
- 内置
git worktree并行开发流程 - 项目启动器 — 可视化创建新项目,实时预览效果
- 消息渠道 — 连接 Telegram、飞书、iLink(微信)等即时通讯应用到编码代理,实时接收通知、完整会话交互、远程任务控制
- MCP 管理(本地扫描 + 市场搜索/安装)
- Skills 管理(全局与项目级)
- Git 远程账号管理(支持 GitHub 及其它 Git 服务器)
- Web 服务模式 — 开启后可在浏览器中访问 Codeg,支持远程工作
- 独立服务器部署 — 在任意 Linux/macOS 服务器上运行
codeg-server,通过浏览器访问 - Docker 支持 —
docker compose up或docker run,可自定义令牌、端口,支持数据持久化及项目目录挂载 - 集成工程闭环(文件树、Diff、Git 变更、提交、终端)
| Agent | 环境变量优先路径 | macOS / Linux 默认路径 | Windows 默认路径 |
|---|---|---|---|
| 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 |
| OpenClaw | — | ~/.openclaw/agents |
%USERPROFILE%\\.openclaw\\agents |
| Cline | $CLINE_DIR |
~/.cline/data/tasks |
%USERPROFILE%\\.cline\\data\\tasks |
注意:环境变量的优先级高于默认路径。
可视化创建新项目:左侧配置面板,右侧实时预览。
- 可视化配置 — 从下拉菜单中选择样式、颜色主题、图标库、字体、圆角等,预览面板即时更新
- 实时预览 — 在创建项目前,实时查看所选样式的渲染效果
- 一键创建 — 点击"创建项目",启动器将使用您的预设配置、框架模板(Next.js / Vite / React Router / Astro / Laravel)和包管理器(pnpm / npm / yarn / bun)执行
shadcn init - 包管理器检测 — 自动检测已安装的包管理器并显示版本号
- 无缝集成 — 新创建的项目会立即在 Codeg 工作台中打开
目前支持 shadcn/ui 项目脚手架,选项卡式设计为未来支持更多项目类型做好了准备。
连接你喜爱的即时通讯应用——Telegram、飞书、iLink(微信)等——到 AI 编码代理。直接在聊天中创建任务、发送后续消息、审批权限、恢复会话、监控活动。实时接收代理响应(包含工具调用详情、权限提示和完成摘要),无需打开浏览器。
| 渠道 | 协议 | 状态 |
|---|---|---|
| Telegram | Bot API(HTTP 长轮询) | 内置 |
| 飞书 | WebSocket + REST API | 内置 |
| iLink(微信) | WebSocket + REST API | 内置 |
更多渠道(Discord、Slack、钉钉等)计划在未来版本中支持。
- Node.js
>=22(推荐) - pnpm
>=10 - Rust stable(2021 edition)
- Tauri 2 构建依赖(仅桌面模式)
Linux(Debian/Ubuntu)示例:
sudo apt-get update
sudo apt-get install -y \
libwebkit2gtk-4.1-dev \
libayatana-appindicator3-dev \
librsvg2-dev \
patchelfCodeg 在单个 workspace 中提供三个 Rust 二进制文件:
| 二进制 | 角色 | 构建方式 |
|---|---|---|
codeg |
Tauri 桌面应用(窗口、托盘、自动更新) | pnpm tauri build(发布)/ pnpm tauri dev(开发) |
codeg-server |
用于浏览器/无头部署的独立 HTTP + WebSocket 服务器 | pnpm server:build / pnpm server:dev |
codeg-mcp |
单次启动的 stdio MCP 协作进程,向 agent CLI 暴露 delegate_to_agent 工具(多智能体协作) |
pnpm tauri:prepare-sidecars(由 tauri dev / tauri build 自动调用) |
codeg-mcp 在运行时必须与其父二进制位于同一目录——安装器、Docker 镜像和 Tauri sidecar 打包器都会把它放在 codeg / codeg-server 旁边。源码构建和自定义部署可以通过 CODEG_MCP_BIN=/abs/path/codeg-mcp 环境变量覆盖查找路径。如果协作进程缺失,委托功能会被跳过(仅记录一条警告日志),其余 agent 会话仍可正常工作。
pnpm install
# 仅前端(Next.js 开发服务器,无需 Rust)
pnpm dev
# 前端静态导出到 out/
pnpm build
# 完整桌面应用(Tauri + Next.js,自动构建 codeg-mcp sidecar)
pnpm tauri dev
# 桌面发布构建(将 codeg-mcp 作为 externalBin 打包)
pnpm tauri build
# 独立服务器(无需 Tauri/GUI)
pnpm server:dev
pnpm server:build # 发布二进制位于 src-tauri/target/release/codeg-server
# 显式构建 codeg-mcp 协作进程(针对当前主机 triple)
pnpm tauri:prepare-sidecars # 输出:src-tauri/binaries/codeg-mcp-<triple>
# 当只调试前端且不需要委托功能时,跳过 sidecar 准备
CODEG_SKIP_SIDECAR=1 pnpm tauri dev
# Lint
pnpm eslint .
# 前端测试(vitest)
pnpm test
pnpm test:watch
pnpm test:coverage
# Rust 检查(在 src-tauri/ 下执行)
cargo check # 桌面(默认 features)
cargo check --no-default-features --bin codeg-server # 服务器模式
cargo check --no-default-features --bin codeg-mcp # MCP 协作进程
cargo clippy --all-targets --features test-utils -- -D warnings
# Rust 测试
cargo test --features test-utils # 桌面(含集成)
cargo test --no-default-features --bin codeg-server --lib # 服务器模式
cargo insta review # 接受解析器快照变更提示:当你在
src-tauri/target/release/下有新构建的codeg-mcp并想让手动启动的codeg-server在不重新安装的情况下指向它时,可以导出CODEG_MCP_BIN=$(pwd)/src-tauri/target/release/codeg-mcp。
Codeg 可以作为独立 Web 服务器运行,无需桌面环境。
curl -fsSL https://raw.githubusercontent.com/xintaofei/codeg/main/install.sh | bash安装指定版本或到自定义目录:
curl -fsSL https://raw.githubusercontent.com/xintaofei/codeg/main/install.sh | bash -s -- --version v0.5.2 --dir ~/.local/bin然后运行:
codeg-serverirm https://raw.githubusercontent.com/xintaofei/codeg/main/install.ps1 | iex或安装指定版本:
.\install.ps1 -Version v0.5.2预构建二进制文件(已打包 Web 前端资源)可在 Releases 页面下载:
| 平台 | 文件 |
|---|---|
| Linux x64 | codeg-server-linux-x64.tar.gz |
| Linux arm64 | codeg-server-linux-arm64.tar.gz |
| macOS x64 | codeg-server-darwin-x64.tar.gz |
| macOS arm64 | codeg-server-darwin-arm64.tar.gz |
| Windows x64 | codeg-server-windows-x64.zip |
# 示例:下载、解压、运行
tar xzf codeg-server-linux-x64.tar.gz
cd codeg-server-linux-x64
CODEG_STATIC_DIR=./web ./codeg-server# 使用 Docker Compose(推荐)
docker compose up -d
# 或直接使用 Docker 运行
docker run -d -p 3080:3080 -v codeg-data:/data ghcr.io/xintaofei/codeg:latest
# 自定义令牌并挂载项目目录
docker run -d -p 3080:3080 \
-v codeg-data:/data \
-v /path/to/projects:/projects \
-e CODEG_TOKEN=your-secret-token \
ghcr.io/xintaofei/codeg:latestDocker 镜像采用多阶段构建(Node.js + Rust → 精简 Debian 运行时),内置 git 和 ssh 以支持仓库操作。数据持久化存储在 /data 卷中。可选挂载项目目录以从容器内访问本地仓库。
pnpm install && pnpm build # 构建前端
cd src-tauri
cargo build --release --bin codeg-server --no-default-features
cargo build --release --bin codeg-mcp --no-default-features # 委托协作进程
CODEG_STATIC_DIR=../out ./target/release/codeg-server # codeg-mcp 会作为同级二进制被自动发现如果两个二进制分别存放在不同目录,请设置
CODEG_MCP_BIN=/abs/path/to/codeg-mcp,运行时才能找到协作进程;否则多智能体委托会被静默禁用。
环境变量:
| 变量 | 默认值 | 说明 |
|---|---|---|
CODEG_PORT |
3080 |
HTTP 端口 |
CODEG_HOST |
0.0.0.0 |
绑定地址 |
CODEG_TOKEN |
(随机) | 认证令牌(启动时输出到 stderr) |
CODEG_DATA_DIR |
~/.local/share/codeg |
SQLite 数据库目录(同时也是 uploads/、pets/ 的根目录) |
CODEG_STATIC_DIR |
./web 或 ./out |
Next.js 静态导出目录 |
CODEG_MCP_BIN |
(未设置) | codeg-mcp 协作进程的绝对路径。会覆盖默认的"可执行文件同级目录 + PATH"查找逻辑。用于源码构建或协作进程不在服务端安装目录内的自定义部署。 |
CODEG_SKIP_SIDECAR |
(未设置) | 仅供 pnpm tauri dev / pnpm tauri build 调试前端时使用——当值为 1 时,跳过 codeg-mcp sidecar 的构建。此类构建不支持委托功能;发布质量的产物必须保持此变量未设置。 |
CODEG_UPLOAD_MAX_TOTAL_BYTES |
(未设置) | <data dir>/uploads/ 下所有文件总字节数的硬上限。十进制字节数(例如 10737418240 表示 10 GiB)。未设置、0 或无法解析的值会禁用上限,并在启动时打印一行日志以便观察当前状态。该上限仅在单个 codeg-server 进程内生效——共享一个 uploads/ 卷的横向扩展部署需要外部协调(文件锁、Redis、反向代理配额)。 |
CODEG_UPLOAD_QUOTA_STRICT |
(未设置) | 当值为真(1 / true / yes / on)时,若 CODEG_UPLOAD_MAX_TOTAL_BYTES 设置为无法解析的值,则以退出码 2 中止启动,而不是发出 WARN 后继续运行。当安全策略要求"配置的配额必须生效"时使用此选项。 |
Next.js 16 (Static Export) + React 19
|
| invoke() (desktop) / fetch() + WebSocket (web)
v
┌─────────────────────────┐
│ Transport Abstraction │
│ (Tauri IPC or HTTP/WS) │
└─────────────────────────┘
|
v
┌─── Tauri Desktop ───┐ ┌─── codeg-server ───┐
│ Tauri 2 Commands │ │ Axum HTTP + WS │
│ (window management) │ │ (standalone mode) │
└──────────┬───────────┘ └──────────┬──────────┘
└──────────┬───────────────┘
v
Shared Rust Core
|- AppState
|- ACP Manager
|- Parsers (conversation ingestion)
|- Chat Channels
|- Git / File Tree / Terminal
|- MCP marketplace + config
|- SeaORM + SQLite
|
┌───────┼───────┐
v v v
Local Filesystem Git Chat Channels
/ Git Repos Repos (Telegram, Lark, iLink)
- 默认本地优先:解析、存储、项目操作均在本地完成
- 仅在用户主动触发时才访问网络
- 支持系统代理,适配企业网络环境
- Web 服务模式使用基于令牌的身份认证
- 扫描下方二维码加入我们的微信群,参与讨论、反馈与更新
- 感谢 LinuxDO 社区的支持
- ACP:智能体客户端协议 (ACP) 是 codeg 实现多智能体连接的基础
Apache-2.0,详见 LICENSE。








