A desktop workspace for AI coding agents.
Run Claude Code, Codex and other CLI agents side by side, chat with any LLM API about your projects, and keep all of your work in one place.
Download for Windows, Linux & Android · Features · Getting started · Development
CodeForge is an Electron app that turns your machine into a control center for AI-assisted development. Instead of juggling terminal windows, you start a workspace with up to four agent terminals in a grid, or open a chat with any Anthropic, OpenAI or OpenAI-compatible model that knows which project you are working on.
Everything runs locally. Your projects, chats and API keys stay on your computer.
- Launch 1–4 terminals at once, as tabs or in a grid.
- Pick a CLI harness per workspace, for example Claude Code (
claude), Codex (codex) or Antigravity (agy). - Define your own harnesses in the settings with a name, start command and icon.
- Full-color terminals (
xterm-256color, truecolor) powered by xterm.js and node-pty. - Drag and drop files or folders into a terminal to insert their paths.
- Optional prompt prefix/suffix and trigger-word notifications when an agent needs attention.
- Save as many SSH servers as you like (host, port, user, private key) and add more at any time with Add server, on the home screen or from the + menu inside a terminal.
- Tick several servers and press Connect selected or Connect to all. Each server gets its own terminal; up to four open as a grid, more as tabs.
- Mix servers, local shells and CLI harnesses in one workspace. Every tab can talk to a different server.
- SFTP file browser for every server: browse folders, upload and download files, create folders, rename and delete. Log in with your key or a password (kept in memory only). Unknown host keys are remembered on first use and connections are refused if the key changes later.
- Chat directly with Anthropic, OpenAI or any OpenAI-compatible endpoint (Ollama, OpenRouter, LM Studio, …).
- Save multiple AI providers with URL, API key and default model; load the model list with one click.
- Attach a project to a chat. CodeForge sends its name, path and file list as context.
- Chats are grouped by project in the sidebar.
- Dictate prompts with the built-in Windows speech recognition, with no cloud service involved. Voice input is Windows-only for now.
- Works in API chats (microphone button) and in terminals: press Alt + S to toggle.
- A home for your projects, programs and mobile apps, with tags, search and one-click launch.
- Customize colors, banner image or video, and banner text.
- Create themes with your own colors, animated gradients and background images or videos.
- Background-only themes swap the wallpaper and keep the rest of the look.
- Glass effects, transparency and corner radius are adjustable.
- Install the CodeForge Android APK and work on your V-Server from your phone. The app runs nothing locally: every terminal, agent and file lives on the server.
- Connects over SSH directly (no extra server software). Use the key from your PC, paste one, or let the phone generate its own Ed25519 key and add it to the server with your password in one tap.
- Terminals run in tmux, exactly like on the desktop. They survive dead spots and a locked phone, reconnect automatically, and you can continue a session started on the PC (and the other way round) under Laufende Sessions.
- Built for touch: extra-keys bar (Esc, Tab, Shift+Tab, Ctrl, Alt, arrows, ^C, …), a prompt box for long prompts or dictation, swipe to scroll, pinch to zoom, tappable links (e.g. the Antigravity login).
- Quick start for Claude Code, Codex, Antigravity (including multiple agy accounts), your own CLI harnesses and plain shells. Live server stats on the home screen.
- SFTP file browser: browse, open files on the phone, save to the phone, upload from the phone, rename, delete, new folder, edit text files, open a terminal in a folder.
- API chat with your providers, optionally with a server project folder as context.
- Themes like on the desktop, plus custom colours, animated gradients and images or videos from your phone as wallpaper.
- Take over from the PC: on the home screen choose Für Android exportieren next to your V-Servers, copy the file to the phone and import it under Vom PC übernehmen.
- CodeForge checks GitHub Releases on start and every six hours.
- Updates download in the background and are verified with SHA-512.
- Installation starts with one click, so running agents are never interrupted.
Download the package for your system from the latest release.
Windows: run CodeForge-Setup-<version>.exe. CodeForge installs per user and needs no admin rights.
Linux (AppImage, any distribution):
chmod +x CodeForge-<version>-x86_64.AppImage
./CodeForge-<version>-x86_64.AppImageThe AppImage updates itself.
Debian / Ubuntu:
sudo apt install ./CodeForge-<version>-amd64.debWith the .deb package, CodeForge downloads updates and opens them in your system installer.
Android: download CodeForge-Android-<version>.apk from the release (or the CodeForge-Android artifact of the Android APK workflow run), open it on the phone and allow the installation from this source. Android 8.0 or newer. New versions install over the old one and keep your servers and settings.
- Windows 10/11 (x64) or a 64-bit Linux desktop (x86_64)
- For workspaces, at least one agent CLI on your
PATH, for example:- Claude Code (
claude) - Codex CLI (
codex) - Google Antigravity (
agy)
- Claude Code (
- For API chats, an API key from your provider. A local OpenAI-compatible server such as Ollama needs no key.
- For voice input (Windows only), a Windows language pack with speech recognition, for example German or English.
The interface is currently in German. Labels in parentheses show the exact text in the app.
- If you want to use API chats, open Settings → General → AI providers (Einstellungen → Allgemein → AI-Anbieter) and add a provider.
- Go to Home and choose Start workspace (Workspace starten) or Start chat (Chat starten).
- Select a project folder, or start without one, and get to work.
cli/codeforge brings the Antigravity account switcher to a terminal, e.g. on a V-Server over SSH.
sudo install -m 755 cli/codeforge /usr/local/bin/codeforge
codeforgeThe menu offers 1 start one account (or the main login), 2 settings to add, rename, log out or delete accounts, 3 all accounts side by side in a grid and 4 the running sessions. agy always starts with --dangerously-skip-permissions. Every account has its own home folder under ~/.codeforge/agy-accounts/, so each keeps its own login; settings, skills and MCP servers are shared with the main login.
Sessions run in tmux (apt install tmux): they keep running when the SSH connection drops and end only when agy is closed or the session is ended under 4. Ctrl-b d puts a session in the background. Shortcuts: codeforge start 2, codeforge grid, codeforge sessions, codeforge add.
git clone https://github.com/Pikaswelt/CodeForge.git
cd CodeForge
npm install
npm run dev # Vite dev server + Electron with hot reload
npm run lint # TypeScript type check
npm run dist:win # Build the Windows installer into release/
npm run dist:linux # Build AppImage + .deb (run on Linux)
npm run mobile:dev # Android UI in the browser (http://127.0.0.1:3001/?mobile) with a local SSH bridge
npm run apk:build # Debug APK (needs the Android SDK)The Android app lives in src/mobile/ (UI) and android/app/src/main/java/app/codeforge/desktop/ (native SSH plugin based on JSch). npm run mobile:dev starts scripts/mobile-dev-bridge.mjs, which serves the same plugin API with ssh2, so the phone UI can be developed against a real server in a desktop browser.
| Layer | Technology |
|---|---|
| Shell | Electron |
| UI | React 19, Vite, Tailwind CSS 4, Motion |
| Terminals | xterm.js, node-pty (ConPTY) |
| SFTP | ssh2 |
| Speech | Windows System.Speech via a PowerShell worker |
| Packaging | electron-builder (NSIS) |
electron/
main.cjs Main process: windows, IPC, PTY sessions, API chat, speech
preload.cjs Secure bridge exposed as window.agentWorkspace
updater.cjs GitHub Releases auto-updater
sftp.cjs SFTP client for saved V-Servers (ssh2)
src/
App.tsx Layout, theme backdrop, modals
AppContext.tsx Application state and persistence
components/ Home, workspaces, API chat, library, settings, …
- Bump
versioninpackage.json. - Run
npm run dist:win. - Create a GitHub release
v<version>and attachCodeForge-Setup-<version>.exe, its.blockmapandlatest.yml. - The Linux release workflow builds the AppImage and
.debon GitHub Actions and attaches them, together withlatest-linux.yml. - The Android APK workflow builds
CodeForge-Android-<version>.apkand attaches it. To sign with your own key, add the secretsANDROID_KEYSTORE_BASE64,ANDROID_KEYSTORE_PASSWORD,ANDROID_KEY_ALIASandANDROID_KEY_PASSWORD; otherwise the project keystore is used. Switching keys later means uninstalling the app once.
Installed apps pick up the new version automatically.
- CodeForge has no telemetry.
- API keys, chats and settings are stored locally in the app's data folder.
- Network requests go to the AI providers you configure and to GitHub for update checks.
- If you enable the optional Spotify widget, it looks up album artwork on Deezer or iTunes.
Issues and pull requests are welcome. Please run npm run lint before opening a PR.
