Files
codeg/docs/readme/README.pt.md
2026-03-29 19:58:33 +08:00

11 KiB

Codeg

Release License Tauri Next.js Docker

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

Codeg (Code Generation) é um workspace de codificação multi-agentes de nível empresarial. Ele unifica agentes de codificação IA locais (Claude Code, Codex CLI, OpenCode, Gemini CLI, OpenClaw, Cline, etc.) em um aplicativo desktop, servidor standalone ou contêiner Docker — possibilitando o desenvolvimento remoto a partir de qualquer navegador — com agregação de sessões, desenvolvimento paralelo via git worktree, gerenciamento de MCP/Skills e fluxos integrados de Git/arquivos/terminal.

Interface principal

Codeg Light Codeg Dark

Configurações

Agentes MCP Skills Controle de versão Serviço web
Agents Agents MCP MCP Skills Skills Version Control Version Control Web Service Web Service

Destaques

  • Workspace multi-agentes unificado no mesmo projeto
  • Ingestão local de sessões com renderização estruturada
  • Desenvolvimento paralelo com fluxos git worktree integrados
  • Inicializador de Projeto — crie novos projetos visualmente com pré-visualização em tempo real
  • Gerenciamento de MCP (varredura local + busca/instalação no registro)
  • Gerenciamento de Skills (escopo global e por projeto)
  • Gerenciamento de contas remotas Git (GitHub e outros servidores Git)
  • Modo de serviço web — acesse o Codeg de qualquer navegador para trabalho remoto
  • Implantação de servidor standalone — execute codeg-server em qualquer servidor Linux/macOS, acesse via navegador
  • Suporte a Docker — imagem com build multi-stage, compatível com docker compose up ou docker run, token/porta personalizáveis, persistência de dados e montagem de diretórios de projetos
  • Ciclo de engenharia integrado (árvore de arquivos, diff, alterações git, commit, terminal)

Inicializador de Projeto

Crie novos projetos visualmente com uma interface de painel dividido: configure à esquerda, pré-visualize em tempo real à direita.

Project Boot Light Project Boot Dark

O que oferece

  • Configuração visual — selecione estilo, tema de cores, biblioteca de ícones, fonte, raio de borda e mais nos menus suspensos; o iframe de pré-visualização atualiza instantaneamente
  • Pré-visualização ao vivo — veja o visual escolhido renderizado em tempo real antes de criar qualquer coisa
  • Criação com um clique — clique em "Criar Projeto" e o launcher executa shadcn init com seu preset, template de framework (Next.js / Vite / React Router / Astro / Laravel) e gerenciador de pacotes (pnpm / npm / yarn / bun)
  • Detecção de gerenciadores de pacotes — verifica automaticamente quais gerenciadores estão instalados e exibe suas versões
  • Integração perfeita — o projeto recém-criado abre diretamente no workspace do Codeg

Atualmente suporta scaffolding de projetos shadcn/ui, com um design baseado em abas preparado para mais tipos de projetos no futuro.

Escopo suportado

1) Ingestão de sessões (sessões históricas)

Agente Caminho por variável de ambiente Padrão macOS / Linux Padrão 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

Nota: as variáveis de ambiente têm prioridade sobre os caminhos padrão.

2) Sessões em tempo real ACP

Atualmente suporta 6 agentes: Claude Code, Codex CLI, Gemini CLI, OpenCode, OpenClaw e Cline.

3) Suporte a configurações de Skills

  • Suportado: Claude Code / Codex / OpenCode / Gemini CLI / OpenClaw / Cline
  • Mais adaptadores serão adicionados progressivamente

4) Aplicativos alvo MCP

Alvos de escrita atuais:

  • Claude Code
  • Codex
  • OpenCode

Início rápido

Requisitos

  • Node.js >=22 (recomendado)
  • pnpm >=10
  • Rust stable (2021 edition)
  • Dependências de build do Tauri 2 (somente modo desktop)

Exemplo Linux (Debian/Ubuntu):

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

Desenvolvimento

pnpm install

# Exportação estática do frontend para out/
pnpm build

# Aplicativo desktop completo (Tauri + Next.js)
pnpm tauri dev

# Apenas frontend
pnpm dev

# Build do aplicativo desktop
pnpm tauri build

# Servidor standalone (sem Tauri/GUI necessário)
pnpm server:dev

# Build do binário do servidor
pnpm server:build

# Lint
pnpm eslint .

# Verificações Rust (executar em src-tauri/)
cargo check
cargo clippy
cargo build

Implantação do servidor

O Codeg pode ser executado como um servidor web standalone sem ambiente desktop.

Opção 1: Instalação em uma linha (Linux / macOS)

curl -fsSL https://raw.githubusercontent.com/xintaofei/codeg/main/install.sh | bash

Instalar uma versão específica ou em um diretório personalizado:

curl -fsSL https://raw.githubusercontent.com/xintaofei/codeg/main/install.sh | bash -s -- --version v0.5.0 --dir ~/.local/bin

Em seguida, executar:

codeg-server

Opção 2: Instalação em uma linha (Windows PowerShell)

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

Ou instalar uma versão específica:

.\install.ps1 -Version v0.5.0

Opção 3: Baixar do GitHub Releases

Binários pré-compilados (com recursos web incluídos) estão disponíveis na página de Releases:

Plataforma Arquivo
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
# Exemplo: baixar, extrair e executar
tar xzf codeg-server-linux-x64.tar.gz
cd codeg-server-linux-x64
CODEG_STATIC_DIR=./web ./codeg-server

Opção 4: Docker

# Usando Docker Compose (recomendado)
docker compose up -d

# Ou executar diretamente com Docker
docker run -d -p 3080:3080 -v codeg-data:/data ghcr.io/xintaofei/codeg:latest

# Com token personalizado e diretório de projeto montado
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

A imagem Docker usa um build multi-stage (Node.js + Rust → runtime Debian slim) e inclui git e ssh para operações com repositórios. Os dados são persistidos no volume /data. Opcionalmente, você pode montar diretórios de projetos para acessar repositórios locais de dentro do contêiner.

Opção 5: Compilar a partir do código-fonte

pnpm install && pnpm build          # compilar frontend
cd src-tauri
cargo build --release --bin codeg-server --no-default-features
CODEG_STATIC_DIR=../out ./target/release/codeg-server

Configuração

Variáveis de ambiente:

Variável Padrão Descrição
CODEG_PORT 3080 Porta HTTP
CODEG_HOST 0.0.0.0 Endereço de bind
CODEG_TOKEN (aleatório) Token de autenticação (impresso no stderr ao iniciar)
CODEG_DATA_DIR ~/.local/share/codeg Diretório do banco de dados SQLite
CODEG_STATIC_DIR ./web ou ./out Diretório de exportação estática do Next.js

Arquitetura

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 (session ingestion)
              |- Git / File Tree / Terminal
              |- MCP marketplace + config
              |- SeaORM + SQLite
                      |
                      v
        Local Filesystem / Git Repos

Restrições

  • O frontend usa exportação estática (output: "export")
  • Sem rotas dinâmicas do Next.js ([param]); use parâmetros de consulta em vez disso
  • Parâmetros de comandos Tauri: camelCase no frontend, snake_case no Rust
  • TypeScript em modo strict

Privacidade e segurança

  • Local-first por padrão para análise, armazenamento e operações do projeto
  • O acesso à rede ocorre apenas em ações iniciadas pelo usuário
  • Suporte a proxy do sistema para ambientes corporativos
  • O modo de serviço web usa autenticação baseada em token

Licença

Apache-2.0. Veja LICENSE.