EchoBird Documentation

repository·main·Indexed 25 days ago

https://github.com/edison7009/echobird

AI Model & Skill Management Desktop Application (v5.5.8) that simplifies installing, configuring, and switching between AI tools, local LLMs, and desktop applications. Features a 'Model Nexus' hub for unified configuration across platforms, a Rust-native Codex proxy for LLM provider bridging, and an echobird-pulse Cloudflare Worker for managing data sources. Supports a wide range of Coding CLIs (e.g., Claude Code, Aider) and Desktop Apps (e.g., ChatGPT, Cursor).

Tokens
30.7K
Snippets
52
Records
221
Agent score
84%

What's inside EchoBird

  1. Overview of EchoBird features and scenarios

    main

    EchoBird is an AI deployment and management agent designed to simplify the installation and configuration of AI tools and local models. It uses a central Model Nexus (模型中心) to allow configuration in one place to apply across multiple scenarios.

    Core Scenarios

    • Installation & Repair: Use AI to install and fix mainstream AI tools (e.g., Claude Code, OpenClaw, Hermes Agent) locally or remotely.
    • One-click Local LLM: Run local models using built-in engines like vLLM, SGLang, or llama.cpp by selecting a quantization version.
    • My AI Projects: Unified integration and management for your own Vibe Coding applications or games.
    • App Management: One-click launch and management for all AI and Agent-related applications.

    Model Nexus (模型中心)

    Acts as a unified data hub for OpenAI, Anthropic, local LLMs, and API Routers. Configuring a provider here enables it to be used across all supported tools without manually editing TOML or JSON configuration files.

  2. Understand the Codex Integration architecture

    main

    EchoBird uses a Rust-native Codex proxy to bridge the gap between the Codex CLI/Desktop and various LLM providers (DeepSeek, Moonshot, etc.).

    Workflow:

    1. Configuration: EchoBird writes a canonical ~/.codex/config.toml so the Codex CLI points to the local proxy (base_url = "http://127.0.0.1:53682/v1").
    2. Proxy Service: The Rust proxy binds to 127.0.0.1:53682 and serves POST /v1/responses. It reads ~/.echobird/codex.json on every request to allow real-time model and API key switches without a restart.
    3. Translation: The proxy translates incoming 'Responses' format requests into 'Chat Completions' requests for the upstream provider, then translates the streaming response back to 'Responses' SSE format.
    4. Model Spoofing: It rewrites Codex-specific model IDs (like gpt-5.4) to the actual upstream model ID and mirrors it back to maintain Codex's internal bookkeeping.
  3. EchoBird UI Surface Architecture

    main

    EchoBird's architecture is defined by four interrelated user-facing surfaces that share a central model data hub. The relationship is characterized by a 'configure once, used everywhere' pattern.

    The Four UI Surfaces

    1. LocalServer / 一键本地大模型: The only surface that feeds the central pool by injecting locally-deployed LLMs.
    2. Model Nexus / 模型中心: The central model pool that aggregates remote/user-configured and local-deployed models. It acts as the data hub for the other consumers.
    3. App Manager: A consumer surface that reads from the Model Nexus pool.
    4. Mother Agent / 安装与修复: A consumer surface that reads from the Model Nexus pool.
    5. My AI Projects / 我的AI项目: A consumer surface that reads from the Model Nexus pool and uses a specific UI grammar (card-grid + right-panel container) shared with the App Manager.
  4. Pre-install compatibility checks for agents

    main

    Before installing any agent (OpenClaw, Hermes Agent, Claude Code, Codex, etc.), you must perform these three checks in order:

    1. Platform Compatibility Check

    Detect the OS and architecture using uname -s && uname -m and verify against supported platforms:

    AgentSupported PlatformsRequirements
    OpenClawAll platformsRequires Node.js >= 22.14.0 (v22.12.x and below will fail)
    Hermes DesktopWindows, macOS, LinuxDesktop app; uses Electron GUI + hermes CLI.
    Claude Code (CLI)All platformsmacOS/Linux: curl or brew; Windows: powershell or winget. (npm is deprecated)
    Codex (CLI)All platformsRequires Node.js. On Windows, global npm path is %APPDATA%\npm
    ChatGPTmacOS, Windows onlyOfficial installer or Microsoft Store

    2. Node.js Version Check

    For npm-based agents, verify Node.js meets the minimum version:

    • OpenClaw: >= 22.14.0 (Critical)
    • Codex (CLI): >= 18.0.0

    To install/upgrade Node.js via nvm (Linux/macOS):

    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
    source ~/.nvm/nvm.sh
    nvm install 22
    nvm use 22
    node --version

    To install Node.js on Windows (PowerShell):

    Invoke-WebRequest -Uri "https://nodejs.org/dist/v22.14.0/node-v22.14.0-win-x64.zip" -OutFile "$env:TEMP\node.zip"
    Expand-Archive -Path "$env:TEMP\node.zip" -DestinationPath "C:\nodejs" -Force
    $nodePath = "C:\nodejs\node-v22.14.0-win-x64"
    [Environment]::SetEnvironmentVariable("PATH", "$nodePath;" + [Environment]::GetEnvironmentVariable("PATH", "Machine"), "Machine")
    & "$nodePath\node.exe" --version

    Note: On Windows, you must close and reopen terminals for PATH changes to take effect.

    3. Download Speed Test

    Run this on the remote server to ensure the server can reach the source quickly:

    For npm-based agents:

    curl -o /dev/null -s -w "%{time_total}" https://registry.npmjs.org/openclaw/latest 2>/dev/null

    For GitHub-hosted CLI installers:

    curl -o /dev/null -s -w "%{time_total}" https://raw.githubusercontent.com 2>/dev/null

    If the response time is > 5 seconds or times out, do not proceed. Ask the user for a VPN/proxy, a local installer file, or alternative mirrors.

  5. Install Desktop Applications

    main

    When installing desktop apps (e.g., Claude Desktop, ChatGPT, Gemini Desktop), follow these rules:

    1. Target Local Machine: Desktop apps must be installed on the user's local machine. If connected to a remote server, switch to the local server before proceeding.
    2. Follow install_flow.agent_steps: Execute the specific steps provided in the tool's installation JSON.
    3. Manual Interaction: Do NOT attempt to automate GUI wizards (no silent-install flags like /S or /VERYSILENT unless explicitly specified).
      • Tell the user the exact download path.
      • Open the installer for them.
      • Instruct them to click through the wizard (Next → Next → Install).
    4. Use Package Managers: On Windows, prefer winget for faster, silent installation:
      • Example for ChatGPT: winget install --id 9PLM9XGG6VKS
    5. Handling Windows .ps1 Installers: To prevent the agent from hanging while waiting for a GUI wizard, wrap the command in a detached Start-Process:
    Start-Process powershell -ArgumentList "-NoProfile","-Command","irm <URL> | iex"
    1. Platform Check: Only proceed if the user's OS is listed in the tool's platforms configuration. If unsupported, suggest the web alternative.
  6. Repair Visual C++ Redistributable for CUDA

    main

    CUDA Toolkit requires the Microsoft Visual C++ (MSVC) runtime. If files like vcruntime140.dll, msvcp140.dll, or vcruntime140_1.dll are missing, or if the registry key HKLM:\SOFTWARE\Microsoft\VisualStudio\14.0\VC\Runtimes\x64 is absent, you must install the redistributable.

    On Windows 11 (22H2+) or Windows 10, use winget to install it silently:

    winget install --id Microsoft.VCRedist.2015+.x64 --silent --accept-package-agreements --accept-source-agreements
  7. Set ChatGPT UI Language

    main

    To change the ChatGPT display/UI language, you must configure the localeOverride setting in the Codex configuration file. Installing ChatGPT alone does not change its language.

    1. Install ChatGPT if not already present (Windows: winget install --id 9PLM9XGG6VKS --source msstore).
    2. Edit ~/.codex/config.toml: Locate or create the [desktop] table and set the localeOverride key. Ensure you preserve all other existing keys and tables.
    3. Restart ChatGPT: Fully quit and reopen the application for changes to take effect.

    Language Mapping:

    • 简体中文: zh-CN
    • 繁體中文: zh-TW
    • 香港: zh-HK
    • 日本語: ja-JP
    • 한국어: ko-KR
    • English: en-US
  8. Perform a Security Audit & Intrusion Detection

    main

    Use these instructions to guide an agent through a comprehensive security audit on a remote server. The audit covers seven key areas to identify brute force attacks, malware, network anomalies, and configuration weaknesses.

    Audit Checklist

    1. SSH Brute Force: Count failed login attempts in auth logs and identify top attacker IPs. A count > 100 indicates an active attack.
    2. Active Users: Check currently logged-in users and flag unexpected sessions.
    3. Malware & Crypto Miners:
      • Search processes for: xmrig, kdevtmpfsi, kinsing, minergate, cpuminer, ccminer, ethminer, xmr-stak, cryptonight, stratum, coinhive.
      • Check for high CPU usage.
      • Scan /tmp, /var/tmp, and /dev/shm for hidden executables.
    4. Network: List listening ports, check established outbound connections for unusual IPs, and look for reverse shells.
    5. SSH Security Config: Check for default port (22), root login enabled, password authentication enabled, and unexpected authorized keys.
    6. Cron Jobs: List user cron jobs and /etc/cron.d/ files. Flag entries using curl, wget, bash, or python with remote URLs.
    7. System Integrity: List files modified in /etc, /usr/bin, or /usr/sbin in the last 24 hours. Check kernel version, uptime, and fail2ban status.
  9. Switch models for supported Coding CLIs and Desktop apps

    main

    EchoBird can automatically rewrite native configuration files (like .toml or .json) for supported tools, allowing you to switch models with a single click via Model Nexus.

    Supported Coding CLIs (Install & Model Switch):

    • Claude Code
    • Codex CLI (OpenAI)
    • Grok Build (xAI)
    • Kimi Code (Moonshot)
    • Qwen Code
    • Aider
    • OpenCode
    • MiMo Code (Xiaomi)
    • ZCode (Z.AI)
    • OpenClaw
    • Pi
    • OpenScience
    • Vibe-Trading

    Supported Desktop Apps (Install & Model Switch):

    • Claude Desktop (3P profile)
    • ChatGPT desktop
    • OpenCode Desktop
    • WorkBuddy (Tencent CodeBuddy)

    Supported Apps (Install & Launch only - model switching handled by the app):

    • Hermes Desktop
    • Claude Science
    • Trae / Trae CN
    • Cursor
    • VS Code
    • Gemini Desktop
    • Coffee CLI
  10. Proactive SSH Security Auditing

    main

    When connecting to a remote server, check /etc/ssh/sshd_config for risky configurations. If detected, inform the user and offer to harden the server, but do not run hardening without explicit permission.

    Risky configurations to watch for:

    • Port 22: Default port is a high-target for attacks.
    • PermitRootLogin yes: Major security risk.
    • PasswordAuthentication yes: Vulnerable to brute force attacks.