Claude Code Desktop is an Electron desktop wrapper for the Claude Code CLI. It is designed for people who want the normal Claude Code terminal workflow in a desktop app while using local or custom Anthropic-compatible model providers such as Ollama, LiteLLM, vLLM, or a remote compatible endpoint.
The app does not reimplement Claude Code. It launches the claude CLI in a pseudo-terminal, applies the selected project, model, provider profile, and permission mode, then lets Claude Code handle the actual coding session.
- Run Claude Code from a desktop UI.
- Use local models through Anthropic-compatible endpoints.
- Save provider profiles for Ollama, LiteLLM, vLLM, or custom servers.
- Pick a local project folder before starting a Claude Code session.
- Keep Claude Code's existing tool use, permission prompts, terminal UI, and session behavior.
- Node.js 20 or newer.
- npm.
- Claude Code CLI installed and available as
claude, or configured in the app settings. - A local or remote model provider if you are not using the default Claude Code provider.
For local model use, you also need a provider that exposes an Anthropic-compatible API. Common options are Ollama through a compatibility proxy, LiteLLM, vLLM, or a custom gateway.
An Ollama-style provider profile may look like this:
ANTHROPIC_BASE_URL=http://localhost:11434
ANTHROPIC_AUTH_TOKEN=ollama
ANTHROPIC_API_KEY=
Then choose a model in the app, for example:
qwen3.5
qwen2.5-coder
llama3.1
The app launches Claude Code with the selected model:
claude --model qwen3.5Install dependencies:
npm installRun the app in development mode:
npm run devRun type checks:
npm run typecheckBuild the Electron main process and renderer:
npm run buildStart the built app locally:
npm start- Install Node.js 20 or newer.
- Install the Claude Code CLI.
- Open PowerShell in the project folder.
- Install dependencies:
npm install- Build the app:
npm run build- Start the built app:
npm startThe compiled files are written to dist/main and dist/renderer.
- Install Node.js 20 or newer.
- Install the Claude Code CLI.
- Install dependencies:
npm install- Build the app:
npm run build- Start the built app:
npm startThe compiled files are written to dist/main and dist/renderer.
The project uses Electron Builder to create distributable desktop artifacts. Generated files are written to ../SRClaude-installers so the app bundle does not get caught by editor file watchers inside the repo.
Recommended release artifacts:
- Windows:
.exeinstaller or portable.exe. - Linux:
.AppImagefor broad compatibility. - Linux:
.debfor Debian and Ubuntu users. - Linux:
.rpmfor Fedora, RHEL, and openSUSE users.
Create the Windows installer and portable executable:
npm run dist:winCreate a Linux portable archive from Windows:
npm run dist:linuxCreate Linux AppImage, deb, and rpm packages from a Linux or Docker builder with mksquashfs and fpm available:
npm run dist:linux:packagesBefore public Linux releases, replace the placeholder Linux maintainer email in package.json with a real maintainer address.
For end users, the easiest installation flow should be:
- Open the project's Releases page.
- Download the installer for your operating system.
- Install and open the app.
- Open Settings.
- Confirm the Claude Code CLI path if the app does not detect it automatically.
- Add a provider profile for your local model provider if needed.
- Select a project folder and start a new session.
Download the Windows .exe installer from Releases. Double-click it and follow the installer. After installation, launch Claude Code Desktop from the Start menu.
If Windows SmartScreen appears, choose More info and run the app only if you trust the release source. For a smoother public release, sign the installer with a trusted code-signing certificate.
Download the .AppImage from Releases for the simplest install experience. Mark it as executable from your file manager if prompted, then double-click it.
For Debian or Ubuntu, download the .deb package and install it with your system package installer. For Fedora, RHEL, or openSUSE, download the .rpm package and install it with your system package installer.
Local models vary a lot in reliability. Claude Code depends on strong instruction following, tool use, long context, and structured output. If a model struggles, try a stronger coding model, a larger context window, or a provider gateway with better Anthropic API compatibility.
The desktop app should make permission modes visible before launching a session. Be careful with permissive modes because Claude Code can edit files and run shell commands in the selected project.