# Codeg [](https://github.com/xintaofei/codeg/releases) [](../../LICENSE) [](https://tauri.app/) [](https://nextjs.org/) [](../../Dockerfile)
English | 简体中文 | 繁體中文 | 日本語 | 한국어 | Español | Deutsch | Français | Português | العربية
Codeg(Code Generation)は、エンタープライズ級のマルチ Agent コーディングワークスペースです。 Claude Code、Codex CLI、OpenCode、Gemini CLI、OpenClaw などのローカル AI コーディング Agent を デスクトップアプリ、スタンドアロンサーバー、または Docker コンテナに統合し——ブラウザからどこでもリモート開発が可能——会話集約、並列 `git worktree` 開発、MCP/Skills 管理、 チャットチャンネル連携(Telegram、Lark など)、Git/ファイル/ターミナル連携ワークフローを提供します。 ## メインインターフェース   ## 設定 | エージェント | MCP | Skills | バージョン管理 | Web サービス | | :---: | :---: | :---: | :---: | :---: | |   |   |   |   |   | ## ハイライト - 同一プロジェクトでのマルチ Agent 統合ワークスペース - ローカル会話の取り込みと構造化レンダリング - 内蔵 `git worktree` フローによる並列開発 - **プロジェクトブート** — ビジュアル設定とライブプレビューで新規プロジェクトを作成 - **チャットチャンネル** — Telegram、Lark(Feishu)などをコーディング Agent に接続し、リアルタイム通知やインタラクティブコマンドを利用 - MCP 管理(ローカルスキャン + レジストリ検索/インストール) - Skills 管理(グローバルおよびプロジェクトスコープ) - Git リモートアカウント管理(GitHub およびその他の Git サーバー) - Web サービスモード — ブラウザから Codeg にアクセスでき、リモートワークに対応 - **スタンドアロンサーバーデプロイ** — 任意の Linux/macOS サーバーで `codeg-server` を実行し、ブラウザからアクセス - **Docker サポート** — `docker compose up` または `docker run` に対応、カスタムトークン・ポート設定、データ永続化およびプロジェクトディレクトリのマウントをサポート - 統合エンジニアリングループ(ファイルツリー、Diff、Git 変更、コミット、ターミナル) ## プロジェクトブート 分割ペインインターフェースで新規プロジェクトをビジュアルに作成:左側で設定、右側でリアルタイムプレビュー。   ### 主な機能 - **ビジュアル設定** — ドロップダウンからスタイル、カラーテーマ、アイコンライブラリ、フォント、角丸などを選択でき、プレビューが即座に更新 - **ライブプレビュー** — プロジェクト作成前に、選んだルック&フィールをリアルタイムで確認 - **ワンクリック作成** — 「プロジェクト作成」をクリックすると、プリセット設定、フレームワークテンプレート(Next.js / Vite / React Router / Astro / Laravel)、パッケージマネージャー(pnpm / npm / yarn / bun)で `shadcn init` を実行 - **パッケージマネージャー検出** — インストール済みのパッケージマネージャーを自動検出し、バージョンを表示 - **シームレスな統合** — 新規作成されたプロジェクトは、すぐに Codeg のワークスペースで開きます 現在 **shadcn/ui** プロジェクトのスキャフォールディングをサポートしており、タブベースの設計で将来のプロジェクトタイプ追加に対応しています。 ## チャットチャンネル お気に入りのメッセージングアプリ — Telegram、Lark(Feishu)など — を AI コーディング Agent に接続。Agent がタスクを完了したりエラーが発生した際にリアルタイム通知を受信し、スマートフォンから会話履歴を検索し、自動日次レポートを取得 — チャットアプリを離れることなくすべて対応可能。 ### 対応チャンネル | チャンネル | プロトコル | 状態 | | --- | --- | --- | | Telegram | Bot API(HTTP ロングポーリング) | 内蔵 | | Lark(Feishu) | WebSocket + REST API | 内蔵 | > その他のチャンネル(Discord、Slack、WeChat、DingTalk など)は今後のリリースで対応予定。 ### 主な機能 - **イベント通知** — Agent のターン完了やエラーがすべての有効なチャンネルにリアルタイムでプッシュ - **インタラクティブコマンド** — チャットアプリからコマンド(`/recent`、`/search`、`/detail`、`/today`、`/status`、`/help`)を送信し即座に応答を取得。コマンドプレフィックスの設定が可能。会話関連コマンド(開始、停止、承認など)は今後のリリースで対応予定 - **日次レポート** — 予定された時刻に自動日次サマリーを生成(会話数、Agent タイプ別内訳、プロジェクトアクティビティを含む) - **多言語対応** — メッセージテンプレートは 10 言語に対応(英語、簡体字/繁体字中国語、日本語、韓国語、スペイン語、ドイツ語、フランス語、ポルトガル語、アラビア語) - **セキュアな認証情報** — トークンは OS キーリングに保存され、設定ファイルやログに公開されません - **リッチメッセージ** — Telegram では Markdown フォーマット、Lark ではカードベースレイアウト。すべてのプラットフォームでプレーンテキストフォールバックに対応 ### セットアップ 1. **設定 → チャットチャンネル** でチャンネルを作成(Telegram または Lark を選択) 2. ボットトークン(Telegram)またはアプリ認証情報(Lark)を入力 — OS キーリングに安全に保存 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 stable(2021 edition) - Tauri 2 ビルド依存パッケージ(デスクトップモードのみ) Linux(Debian/Ubuntu)の例: ```bash sudo apt-get update sudo apt-get install -y \ libwebkit2gtk-4.1-dev \ libayatana-appindicator3-dev \ librsvg2-dev \ patchelf ``` ### 開発 ```bash 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 サーバーとして実行できます。 #### オプション 1: ワンラインインストール(Linux / macOS) ```bash curl -fsSL https://raw.githubusercontent.com/xintaofei/codeg/main/install.sh | bash ``` 特定のバージョンまたはカスタムディレクトリにインストール: ```bash curl -fsSL https://raw.githubusercontent.com/xintaofei/codeg/main/install.sh | bash -s -- --version v0.5.2 --dir ~/.local/bin ``` 実行: ```bash codeg-server ``` #### オプション 2: ワンラインインストール(Windows PowerShell) ```powershell irm https://raw.githubusercontent.com/xintaofei/codeg/main/install.ps1 | iex ``` または特定のバージョンをインストール: ```powershell .\install.ps1 -Version v0.5.2 ``` #### オプション 3: GitHub Releases からダウンロード ビルド済みバイナリ(Web アセットをバンドル済み)は [Releases](https://github.com/xintaofei/codeg/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` | ```bash # 例: ダウンロード、解凍、実行 tar xzf codeg-server-linux-x64.tar.gz cd codeg-server-linux-x64 CODEG_STATIC_DIR=./web ./codeg-server ``` #### オプション 4: Docker ```bash # 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 ランタイム)を使用し、リポジトリ操作用の `git` と `ssh` を含みます。データは `/data` ボリュームに永続化されます。オプションでプロジェクトディレクトリをマウントして、コンテナ内からローカルリポジトリにアクセスできます。 #### オプション 5: ソースからビルド ```bash 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 静的エクスポートディレクトリ | ## アーキテクチャ ```text 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 コマンドパラメータ: フロントエンドは `camelCase`、Rust は `snake_case` - TypeScript strict モード ## プライバシーとセキュリティ - 解析、ストレージ、プロジェクト操作はデフォルトでローカルファースト - ネットワークアクセスはユーザーが明示的に操作した場合のみ発生 - エンタープライズ環境向けのシステムプロキシサポート - Web サービスモードではトークンベースの認証を使用 ## ライセンス Apache-2.0。`LICENSE` を参照してください。