Files
codeg/docs/readme/README.zh-CN.md
2026-03-31 22:55:12 +08:00

12 KiB
Raw Blame History

Codeg

Release License Tauri Next.js Docker

English | 简体中文 | 繁體中文 | 日本語 | 한국어 | Español | Deutsch | Français | Português | العربية

CodegCode Generation是一个企业级多 Agent 编码工作台。 它将本地 AI 编码代理Claude Code、Codex CLI、OpenCode、Gemini CLI、 OpenClaw、Cline 等)统一到桌面应用、独立服务器或 Docker 容器中——通过浏览器即可远程开发——支持对话聚合、 并行 git worktree 开发、MCP/Skills 管理、消息渠道交互Telegram、飞书等以及集成的 Git/文件/终端工作流。

主界面

Codeg Light Codeg Dark

设置

代理 MCP Skills 版本控制 Web 服务
Agents Agents MCP MCP Skills Skills Version Control Version Control Web Service Web Service

核心亮点

  • 同一项目中的多 Agent 统一工作台
  • 本地对话解析与结构化渲染
  • 内置 git worktree 并行开发流程
  • 项目启动器 — 可视化创建新项目,实时预览效果
  • 消息渠道 — 连接 Telegram、飞书等即时通讯应用到编码代理实时接收通知并进行交互式命令操作
  • MCP 管理(本地扫描 + 市场搜索/安装)
  • Skills 管理(全局与项目级)
  • Git 远程账号管理(支持 GitHub 及其它 Git 服务器)
  • Web 服务模式 — 开启后可在浏览器中访问 Codeg支持远程工作
  • 独立服务器部署 — 在任意 Linux/macOS 服务器上运行 codeg-server,通过浏览器访问
  • Docker 支持docker compose updocker run,可自定义令牌、端口,支持数据持久化及项目目录挂载
  • 集成工程闭环文件树、Diff、Git 变更、提交、终端)

项目启动器

可视化创建新项目:左侧配置面板,右侧实时预览。

Project Boot Light Project Boot Dark

功能特性

  • 可视化配置 — 从下拉菜单中选择样式、颜色主题、图标库、字体、圆角等,预览面板即时更新
  • 实时预览 — 在创建项目前,实时查看所选样式的渲染效果
  • 一键创建 — 点击"创建项目"启动器将使用您的预设配置、框架模板Next.js / Vite / React Router / Astro / Laravel和包管理器pnpm / npm / yarn / bun执行 shadcn init
  • 包管理器检测 — 自动检测已安装的包管理器并显示版本号
  • 无缝集成 — 新创建的项目会立即在 Codeg 工作台中打开

目前支持 shadcn/ui 项目脚手架,选项卡式设计为未来支持更多项目类型做好了准备。

消息渠道

连接你喜爱的即时通讯应用——Telegram、飞书等——到 AI 编码代理。当代理完成任务或遇到错误时接收实时通知,通过手机查询对话历史,获取自动化日报——无需离开聊天应用。

支持的渠道

渠道 协议 状态
Telegram Bot APIHTTP 长轮询) 内置
飞书 WebSocket + REST API 内置

更多渠道Discord、Slack、微信、钉钉等计划在未来版本中支持。

主要功能

  • 事件通知 — 代理的回合完成和错误事件实时推送到所有已启用的渠道
  • 交互式命令 — 从聊天应用发送命令(/recent/search/detail/today/status/help)并获得即时响应;支持自定义命令前缀。对话相关命令(如启动、停止、审批)将在后续版本中支持
  • 每日报告 — 在预设时间自动生成每日摘要,包括对话数量、代理类型分布和项目活跃度
  • 多语言 — 消息模板支持 10 种语言(英语、简体中文/繁体中文、日语、韩语、西班牙语、德语、法语、葡萄牙语、阿拉伯语)
  • 安全凭据 — 令牌存储在操作系统密钥环中,不会暴露在配置文件或日志中
  • 富文本消息 — Telegram 使用 Markdown 格式,飞书使用卡片布局;所有平台均支持纯文本回退

设置

  1. 设置 → 消息渠道 中创建渠道(选择 Telegram 或飞书)
  2. 输入 Bot TokenTelegram或应用凭据飞书——安全存储在操作系统密钥环中
  3. 配置事件过滤器和可选的每日报告计划
  4. 连接——当代理发出事件时,消息将开始流转

支持的Agent

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

注意:环境变量的优先级高于默认路径。

快速开始

环境要求

  • Node.js >=22(推荐)
  • pnpm >=10
  • Rust stable2021 edition
  • Tauri 2 构建依赖(仅桌面模式)

LinuxDebian/Ubuntu示例

sudo apt-get update
sudo apt-get install -y \
  libwebkit2gtk-4.1-dev \
  libayatana-appindicator3-dev \
  librsvg2-dev \
  patchelf

开发命令

pnpm install

# 前端静态导出到 out/
pnpm build

# 完整桌面应用Tauri + Next.js
pnpm tauri dev

# 仅前端
pnpm dev

# 桌面应用构建
pnpm tauri build

# 独立服务器(无需 Tauri/GUI
pnpm server:dev

# 构建服务器发布二进制
pnpm server:build

# Lint
pnpm eslint .

# Rust 检查(在 src-tauri/ 下执行)
cargo check
cargo clippy
cargo build

服务器部署

Codeg 可以作为独立 Web 服务器运行,无需桌面环境。

方式一一键安装Linux / macOS

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-server

方式二一键安装Windows PowerShell

irm https://raw.githubusercontent.com/xintaofei/codeg/main/install.ps1 | iex

或安装指定版本:

.\install.ps1 -Version v0.5.2

方式三:从 GitHub Releases 下载

预构建二进制文件(已打包 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

# 使用 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:latest

Docker 镜像采用多阶段构建Node.js + Rust → 精简 Debian 运行时),内置 gitssh 以支持仓库操作。数据持久化存储在 /data 卷中。可选挂载项目目录以从容器内访问本地仓库。

方式五:从源码构建

pnpm install && pnpm build          # 构建前端
cd src-tauri
cargo build --release --bin codeg-server --no-default-features
CODEG_STATIC_DIR=../out ./target/release/codeg-server

配置

环境变量:

变量 默认值 说明
CODEG_PORT 3080 HTTP 端口
CODEG_HOST 0.0.0.0 绑定地址
CODEG_TOKEN (随机) 认证令牌(启动时输出到 stderr
CODEG_DATA_DIR ~/.local/share/codeg SQLite 数据库目录
CODEG_STATIC_DIR ./web./out Next.js 静态导出目录

架构

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)

开发约束

  • 前端使用静态导出(output: "export"
  • 不使用 Next.js 动态路由([param]),统一使用查询参数
  • Tauri 命令参数:前端 camelCaseRust snake_case
  • TypeScript strict 模式

隐私与安全

  • 默认本地优先:解析、存储、项目操作均在本地完成
  • 仅在用户主动触发时才访问网络
  • 支持系统代理,适配企业网络环境
  • Web 服务模式使用基于令牌的身份认证

许可证

Apache-2.0,详见 LICENSE