A free, featherweight code editor for Windows. Say what you want in plain words,
then watch Claude Code, Codex, Antigravity or a local model build it, live, right next to your code.
Download for Windows · Website · FAQ · Report a bug
Why · Agents · Multi-agent · Features · Getting started · Configuration · Installer · How it fits together · Team · License
|
Watch every move |
Bring the agent you already use |
|
Light and free |
Yours stays yours |
Breeze finds the coding agents already installed on your computer and signs in with their own accounts. Pick a default, then set its model and effort from its chip in the agents panel.
@mention agents from different companies in a single prompt and each takes its piece. They call dibs on their files first, you settle any overlap, and then they build side by side.
flowchart LR
P["Your prompt<br/>@Claude front end<br/>@Codex backend"] --> S{"Breeze splits<br/>the task"}
S --> C["Claude claims<br/>src/ui/, index.html"]
S --> X["Codex claims<br/>server/, package.json"]
C & X --> O{"Overlap?"}
O -- "yes" --> Y["You pick<br/>who gets it"]
O -- "no" --> B
Y --> B["Both build<br/>side by side"]
B --> L["One chat,<br/>every line tagged"]
B -. "touches another<br/>agent's file" .-> G["Breeze puts it<br/>back and tells you"]
| Run with F5 | Python, C, C++, C#, Java and Rust run on the compilers you already have. Missing one? Breeze tells you what to grab |
| Debugger | Step through Python, JavaScript, TypeScript, C, C++, C#, Rust and Java in a full-page view. Click a line number to set a breakpoint (F9), then watch variables, the call stack and your program's output. Python needs debugpy, and Breeze offers to install it; TypeScript needs Node 22.18 or newer; C, C++ and Rust need GCC and GDB 14+; Java needs a JDK; C# needs the .NET SDK, and Breeze downloads the netcoredbg debugger when asked |
| Notebooks | .ipynb files open as cells you can edit and run in Python, with text, tables and plots as outputs |
| Command Palette | Ctrl+Shift+P or F1 finds any command by typing a few letters, and lists the ones you used last first |
| Multi-cursor | Alt+Click adds a cursor. Ctrl+D picks the next match, Ctrl+Shift+L picks them all, Shift+Alt+drag selects a column |
| Emmet | Type ul>li*3 in HTML, JSX or CSS and press Tab to expand it |
| Home | New File, Open Folder or Clone Repository, your recent projects, GitHub contributions, and an Agent tab with 30 days of token use and what it would have cost at API prices |
| Language servers | Completions, hover, go to definition, references, rename and as-you-type errors. JavaScript and TypeScript work out of the box; Python, Rust, Go and C/C++ use pyright, rust-analyzer, gopls or clangd when they're installed |
| Skills and MCP | Browse the skills and plugins your agents load, share skills across agents, and connect MCP servers for Claude Code without touching its own config |
| Workspace sync | Carry workspaces between computers signed in to the same account, kept in a private GitHub repo or Google Drive's hidden app folder |
| Live preview | Pop index.html open beside your code and refresh as you go. Right-click an element to inspect its tag, id and classes |
| Editor comforts | Minimap, auto save and split editors |
| Themes | Dark, light and high contrast, with the window chrome to match |
| Built-in terminal | Run Node and whatever else without leaving the editor, or pop it out into its own window with the same sessions still running |
| Image attachments | Drop or paste images into a prompt. Dropped files are used where they are and pasted ones go to a temp folder, so nothing lands in your project |
| Big files, no sweat | Only the lines on screen get drawn, so huge files stay snappy |
| Local LLM, token-wise | A project map, ranged file reads and snippet edits keep requests small |
| Accounts | Sign in with GitHub or Google, with several accounts |
| Discord | Rich Presence shows what you're working on |
| Feels alive | Tiny synthesized sounds for clicks, typing and agents, with a volume slider |
![]() The debugger |
![]() The Command Palette |
![]() Breeze Space, ready for a prompt |
![]() A terminal beside the chat |
![]() Turn on Extra animation to fly between Breeze Code and Breeze Space |
|
Requires Node.js 20 or newer.
npm install
npm startnpm start compiles the renderer's TypeScript (src/renderer/breeze/*.ts, editcore.ts, codeview.ts) and launches the app. The compiled .js files are build output and aren't committed.
Tip
Run npm run build once, then open src/renderer/breeze.html in a browser for a demo of the UI with a sample project and canned agent runs. No Electron needed.
| Script | What it does |
|---|---|
npm start |
Compile and run the app |
npm run build |
Compile TypeScript only |
npm run watch |
Compile on change |
npm test |
Syntax-check the main process and run the tests |
npm run dist |
Build the Windows installer into dist/ |
Sign-in and Discord presence need client ids. Copy the example file and fill in your own:
cp breeze.config.example.json breeze.config.jsonOr put them in a .env file next to main.js:
BREEZE_GITHUB_CLIENT_ID=
BREEZE_GOOGLE_CLIENT_ID=
BREEZE_GOOGLE_CLIENT_SECRET=
BREEZE_DISCORD_CLIENT_ID=Environment variables override the config file. Both breeze.config.json and .env are gitignored; never commit them.
- GitHub: create an OAuth App and enable Device Flow (no secret needed).
- Google: create a Desktop app OAuth client.
- Discord: create an application and use its Application ID.
Tip
Breeze assumes a local LLM has a 4k-token context on Ollama and 8k elsewhere. If you raised your server's context size, set llmContext in Breeze's saved state so the agent can use the extra room.
npm run distThis runs scripts/write-config.js, which writes breeze.config.json from your .env so the packaged app has its client ids, then builds dist/Breeze Code Setup <version>.exe with electron-builder.
Warning
The installer is unsigned, so Windows SmartScreen may warn on other machines. Values bundled into an installer can be extracted by anyone who has it, so only put public client ids (and Google's desktop-app secret, which is not confidential) in .env when building.
flowchart TB
subgraph R["Renderer · src/renderer"]
UI["breeze.html + breeze.css"]
F["breeze/*.ts<br/>one file per feature"]
E["editcore.ts + codeview.ts<br/>the code editor"]
end
PL["preload.js<br/>the bridge"]
subgraph M["Main process · src/main"]
MJ["main.js<br/>files, terminal, Git, auth, runs"]
T["team.js + mentions.js<br/>multi-agent prompts"]
G["guard.js + pathguard.js<br/>path and command safety"]
TC["toolchains.js<br/>compilers for F5"]
AB["agentbrain.js<br/>local LLM context"]
end
subgraph A["Agents"]
CL["Claude Code CLI"]
CX["Codex CLI"]
AG["Antigravity"]
LL["Local LLM server"]
end
R <--> PL <--> M
MJ --> CL & CX & AG
AB --> LL
| Path | Purpose |
|---|---|
src/main/main.js |
Electron main process: files, terminal, agent runs, usage, Git, auth |
src/main/team.js, mentions.js |
Splitting one prompt between several agents, file claims and crossings |
src/main/agentbrain.js |
The local LLM agent's context budget, project map and file-tool formats |
src/main/antigravityAgentService.ts |
Talks to Antigravity's agent service |
src/main/preload.js |
Bridge between the main process and the UI |
src/main/toolchains.js |
Compiler and tool detection for Run |
src/main/lsp.js |
Language servers for completions, hover, rename and problems |
src/main/debug*.js, dap.js, cdp.js, jdwp.js |
Debugger backends (Python, Node, GDB, .NET, Java) |
src/main/kernel.js |
Python kernels for notebooks |
src/main/github.js, prconflict.js |
Pull request client and conflict resolution in a throwaway worktree |
src/main/skills.js, mcp.js |
Skills, plugins and MCP servers for the Skills view |
src/main/sync.js |
Workspace sync over GitHub or Google Drive |
src/main/previewServer.js, previewInspector.js |
Serving the live preview and its element inspector |
src/main/pricing.js |
API-price cost estimates for Home's Agent tab |
src/main/discord.js |
Discord Rich Presence client |
src/main/guard.js, pathguard.js |
Path and command safety checks |
src/renderer/breeze.html, breeze.css |
UI |
src/renderer/breeze/ |
Renderer logic, one file per feature (settings, git, terminal and so on), loaded in order by breeze.html |
src/renderer/editcore.ts, codeview.ts |
The code editor's position logic and its virtualized text surface |
assets/brand/ · fonts/ · icons/ |
App icon and wordmarks · bundled fonts · agent and feed logos |
runtime/ |
C runtime helpers |
scripts/ |
Build helpers |
docs/screenshots/ |
Screenshots used in this README |
BreezeCode-Web/ |
The website |
test/ |
Tests |
| Member | Role |
|---|---|
| @itsphatto | Founder and Lead Software Engineer |
| @sapfire151 | Lead Front End Developer and UI/UX Designer |
| @LangZab | Contributor |
| @esrazti | Contributor |
Breeze Code is free, source-available software under the Breeze Code Source-Available License. You can read the source and use Breeze Code for anything, including commercial work. You can't copy its code into other projects or redistribute it, changed or not. Versions published before November 7, 2026 stay under the MIT License.











