██╗ ██╗ ██████╗ ██╗ ██╗ █████╗ ██╗
██║ ██║██╔═══██╗╚██╗██╔╝██╔══██╗██║
██║ ██║██║ ██║ ╚███╔╝ ███████║██║
╚██╗ ██╔╝██║ ██║ ██╔██╗ ██╔══██║██║
╚████╔╝ ╚██████╔╝██╔╝ ██╗██║ ██║██║
╚═══╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝
VoxAI IDE is a local-first autonomous coding agent — built to be an alternative to Cursor and Claude Code. Purpose-built for developers who direct high-level intent and let a specialized AI handle implementation, debugging, and execution end-to-end.
Download the latest Windows release from the Releases page — no Python install required.
Standard AI editors suggest code; VoxAI builds software.
- Local & Private — Full support for local LLMs (GGUF format). Run 100% offline with zero data leakage.
- Curated Stable Core + Advanced Tools Mode — The default agent surface stays focused on local code/edit/test workflows, while git/web/RAG indexing/destructive tools sit behind explicit advanced settings.
- Self-Healing Loop — When code fails, VoxAI captures stderr, analyzes the traceback, and patches itself in a continuous loop until the task is complete.
- Terminal Mode — Minimize the GUI to tray and work from a Claude Code-style CLI with full tool access, streaming responses, and slash commands.
- Deep RAG — A Go-based vector engine (HNSW + mmap) provides sub-millisecond semantic retrieval across your entire codebase and conversation history.
- Thought Transparency — Every tool call, file read, and command is visualized inline. You see the AI's reasoning as it happens.
- Token Optimization — Automatic truncation, history compression, and system prompt condensing. ~30-50% fewer tokens per request.
| Category | Tools |
|---|---|
| File System | read_file, write_file, edit_file, list_files, move_file, copy_file, delete_file, search_files, get_file_structure |
| Shell | execute_command |
| Git | git_status, git_diff, git_log, git_commit, git_push, git_pull, git_fetch (advanced mode) |
| Web | web_search (DuckDuckGo via IronGate), fetch_url (advanced mode + web enabled) |
| Memory | search_memory, search_codebase, index_codebase (advanced retrieval/indexing tools) |
- Auto-Context — The open file, cursor position, and surrounding code are automatically attached to every message.
- @-mention Context — Type
@filename.pyin the input to attach file contents. - Conversation History —
Ctrl+Hopens a sidebar listing all saved conversations. Click to switch, create, or delete sessions. - Attachments — Attach images (multimodal) or text files via the
+button. - Copy / Regenerate — Every message has Copy; AI messages have Regenerate.
- Apply / Reject — Proposed file changes show a diff preview and require approval (unless auto-approve or Siege Mode).
- Collapsible Thinking — AI reasoning is shown in expandable panels, stripped from the visible response.
- Tool Result Folding — Tool outputs appear as one-line collapsible summaries to keep the chat clean.
- Token Footer — Per-message token breakdown:
tokens: total (in: prompt · out: completion). - Context Window Bar — Color-coded fill in the status bar (green/yellow/red).
- Model & Mode Selectors — Inline in the input bar, Cursor-style. Switch models or modes without leaving the chat.
- Tabbed Editor — Syntax highlighting for Python, JS/TS, C/C++, Rust, Go, Java. Line numbers, current-line highlight.
- Find & Replace —
Ctrl+Fwith next/prev, replace, replace all, case sensitivity. - Bracket Matching — Real-time highlighting of matching
(),{},[]pairs. - Code Folding — Double-click the gutter to collapse/expand blocks.
- File Watcher — Open tabs auto-reload when files change on disk.
- Live Change Highlighting — When the AI writes a file, changed lines highlight green and removed lines highlight red using
difflib. - Diff Viewer — Color-coded unified diffs in dedicated tabs.
- Code Outline —
Ctrl+Shift+Lshows classes, functions, and methods for the active file (AST for Python, regex for others).
- Git Status Indicators — Colored dots: modified (yellow), added (green), untracked (blue), deleted (red).
- Git Diff — Right-click any changed file to view a full color-coded diff.
- Context Menus — New File, New Folder, Rename, Delete, Copy Path, Copy Relative Path, Reveal in Explorer, Show Git Diff.
- Filter Bar — Type to filter files by name in real-time.
- Project-Wide Search —
Ctrl+Shift+Fopens grep-style search across all project files with regex, case-sensitivity, and file-type filters. - Quick File Switcher —
Ctrl+Popens a fuzzy-search overlay to jump to any file by name instantly.
| Mode | Behavior |
|---|---|
| Phased (Default) | Executes one phase at a time. Reports results and waits for authorization. |
| Siege (Full Auto) | Iterates up to 25 tool cycles without stopping. Self-heals on errors. |
- Command Palette —
Ctrl+Shift+Popens a searchable action launcher with all IDE commands.
Press the Terminal icon in the top bar (or use the Command Palette) to:
- Minimize the GUI to the Windows system tray.
- Open a new console window with a Claude Code-style CLI.
- Stream AI responses with ANSI color, tool execution, and slash commands.
- Conversation history carries over from the GUI session.
- Double-click the tray icon or type
/exitto return to the GUI.
Slash commands:
| Command | Description |
|---|---|
/help |
Show all commands |
/exit |
Quit terminal, return to GUI |
/clear |
Clear conversation context |
/mode |
Toggle Phased / Siege |
/model |
Show current model |
/model <name> |
Switch to a different model |
/models |
List all enabled models |
/tokens |
Show conversation token estimate |
/status |
git status |
/branch |
Show current branch |
/branches |
List all branches |
/log [n] |
git log (default 10) |
/diff [file] |
git diff |
/commit <msg> |
Stage all + commit |
/push [remote] [branch] |
git push |
/pull [remote] [branch] |
git pull |
/fetch [remote] |
git fetch |
/stash / /stash pop |
Stash management |
/checkout <branch> |
Switch branch |
/files [path] |
List project files |
/search <query> |
Search across files |
/run <command> |
Execute a shell command |
/index |
Re-index project for RAG |
/export <file> |
Export conversation to markdown |
Windows toast notifications fire when the app is not focused:
- AI response complete
- Approval needed for destructive actions
- Phase gate reached
| Tab | Contents |
|---|---|
| Providers & Models | API keys for OpenAI, Anthropic, Google, OpenRouter, DeepSeek, Mistral, XAI. GGUF model manager with VRAM estimates. |
| Agent & RAG | Max history tokens, auto-approve, auto-save, web search toggle. RAG enable/disable, top-k, similarity threshold. |
| Appearance | Customizable user and AI chat colors. |
- Git branch name (auto-refreshes)
- Cursor position (Ln / Col)
- File encoding
- Token usage progress bar (color-coded)
VoxAI_IDE/
├── main.py # Entry point
├── core/ # Backend
│ ├── ai_client.py # Multi-provider AI client (streaming)
│ ├── agent_tools.py # 22 tool implementations
│ ├── code_parser.py # XML tool call parser
│ ├── prompts.py # System prompts & mode injection
│ ├── rag_client.py # Vector search client (Go backend)
│ ├── indexer.py # Codebase chunker & indexer
│ ├── local_embeddings.py # GGUF embedding engine (llama.cpp)
│ ├── settings.py # QSettings-based persistence
│ ├── runner.py # Script execution (cross-platform)
│ └── hardware.py # GPU/CPU detection
├── ui/ # PySide6 GUI
│ ├── main_window.py # Main window, icon bar, menus, tray
│ ├── chat_panel.py # Chat interface, AI/tool workers
│ ├── editor_panel.py # Tabbed editor, find/replace, folding
│ ├── file_tree_panel.py # Explorer with git status & context menus
│ ├── settings_dialog.py # Settings UI (tabbed)
│ ├── model_manager.py # GGUF model manager dialog
│ ├── search_panel.py # Project-wide search
│ ├── file_switcher.py # Quick file switcher (Ctrl+P)
│ ├── code_outline.py # Symbol outline sidebar
│ ├── history_sidebar.py # Conversation history browser
│ ├── syntax_highlighter.py # Syntax highlighting engine
│ ├── debug_drawer.py # Terminal output panel
│ ├── crash_reporter.py # Crash dialog
│ └── widgets/
│ └── chat_items.py # Message & progress widgets
├── cli/ # Terminal Mode
│ └── terminal_mode.py # Claude Code-style CLI
├── Vox_IronGate/ # Web client backend
│ ├── web_client.py # DuckDuckGo search & URL fetch
│ └── lib/
│ ├── config.py # Timeouts, user agents
│ └── security.py # Rate limiting, URL safety, IP blocking
├── Vox_RIG/ # RAG vector engine (Go)
│ ├── search_engine/ # HNSW index, mmap storage, HTTP + CLI
│ │ └── main.go # Unified server/CLI entry point
│ └── drivers/ # llama.cpp shared libraries
├── tests/ # Test suite
├── models/
│ ├── llm/ # Drop GGUF chat models here
│ └── embeddings/ # Drop GGUF embedding models here
├── keys/ # API key configuration
└── resources/ # UI assets (icons, backgrounds)
User Input
│
▼
┌─────────────┐ ┌──────────────┐ ┌──────────────┐
│ RAG Context │────▶│ LLM Stream │────▶│ Tool Parser │
│ (retrieve) │ │ (generate) │ │ (XML parse) │
└─────────────┘ └──────────────┘ └──────┬───────┘
│
┌───────────────────────┘
▼
┌─────────────┐
│ Tool Worker │──▶ file I/O, git, shell, web
│ (execute) │
└──────┬──────┘
│
▼
[TOOL_RESULT] ──▶ fed back to LLM ──▶ loop
| Thread | Responsibility |
|---|---|
| Main (UI) | PySide6 event loop, widget rendering, user input |
| AIWorker | Streams tokens from the AI provider |
| ToolWorker | Executes tool calls (file I/O, git, web, shell) |
| IndexingWorker | Background codebase indexing into RAG |
| RAG Server | Go subprocess — HTTP vector engine on 127.0.0.1 |
- Go to the Releases page.
- Download the latest
VoxAI_IDE-vX.X.X-windows.zip. - Extract and run
VoxAI_IDE.exe. - (Optional) Drop
.ggufmodels into themodels/llm/folder for offline use.
Prerequisites: Python 3.10+, Git, (Optional) Go 1.22+ for RAG engine, NVIDIA GPU for local GGUF inference.
git clone https://github.com/AlexC1991/VoxAI_IDE.git
cd VoxAI_IDE
pip install -r requirements.txt
python main.pyOr on Windows:
.\start_IDE.batBuild the RAG engine (optional, improves performance):
cd Vox_RIG/search_engine
go build -o vox-vector-engine.exe .Local Models (Private & Offline)
- Download a
.ggufmodel (Llama 3, Mistral, Gemma, Qwen, etc.). - Place it in
models/llm/. - For embeddings, place
nomic-embed-text-v1.5.Q8_0.gguf(or similar) inmodels/embeddings/. - Select models from the dropdown in Settings.
Cloud Providers
Open Settings (Ctrl+,) and enter API keys for any of:
OpenAI, Anthropic, Google, OpenRouter, DeepSeek, Mistral, XAI.
VoxAI includes maintained live benchmark harnesses for controller regressions and model comparisons.
- Tiny starter benchmark:
python scripts/basic_project_start_benchmark.py "[OpenAI] gpt-5.4" --repetitions 3 - Live Siege benchmark matrix:
python scripts/run_live_siege_benchmark.py --model "[OpenAI] gpt-5.4" - Generated outputs now default to
artifacts/benchmarks/ - Headless benchmark runs use Qt offscreen mode automatically
Use explicit --output, --output-json, or --output-markdown if you want to override the default artifact paths.
| Shortcut | Action |
|---|---|
Ctrl+Shift+P |
Command Palette |
Ctrl+P |
Quick File Switcher |
Ctrl+Shift+F |
Search in Project |
Ctrl+Shift+L |
Code Outline |
Ctrl+H |
Conversation History |
Ctrl+B |
Toggle File Tree |
Ctrl+Shift+E |
Toggle Editor |
Ctrl+F |
Find & Replace |
Ctrl+S |
Save file |
Ctrl+O |
Open file |
Ctrl+Shift+O |
Open project |
Ctrl+, |
Settings |
Ctrl+` |
Toggle debug panel |
Enter |
Send message |
Shift+Enter |
New line in chat |
Escape |
Stop AI generation |
Ctrl+L |
Clear chat context |
The AI acts as a senior architect:
- Draft — Analyzes the request, presents a phased execution plan.
- Execute — Performs one phase using tools.
- Report — Summarizes results in detail and stops.
- Authorize — You review and send a message to continue.
For when you trust the machine:
- The AI bypasses all phase gates.
- Iterates up to 25 tool cycles without stopping.
- Self-heals: captures errors, patches code, retries.
- Write access is strictly confined to the active project directory.
- Write sandbox — AI can only write within the active project directory.
- Read access — Global filesystem read for cross-project context.
- Web safety — IronGate blocks requests to localhost, private IPs (RFC 1918), link-local, and cloud metadata endpoints.
- Rate limiting — Token-bucket limiter on outbound HTTP requests (15/min).
- Approval workflow — Destructive actions (
delete_file,execute_command,git_commit,git_push,git_pull,move_file) require explicit user confirmation unless in Siege Mode or auto-approve is enabled. - RAG isolation — The vector engine runs on
127.0.0.1only. No external network access.
To create a standalone Windows executable:
pip install pyinstaller
pyinstaller --onedir --windowed --name "VoxAI_IDE" \
--add-data "resources;resources" \
--add-data "cli;cli" \
--add-data "core;core" \
--add-data "ui;ui" \
--add-data "Vox_IronGate;Vox_IronGate" \
--hidden-import PySide6 \
--hidden-import llama_cpp \
main.pyReleases are also built automatically via GitHub Actions when a new tag is published.
See LICENSE for details.
VoxAI — The Command Center for Autonomous Development