Skip to content

eulogik/nexus

Repository files navigation

Nexus Logo

Nexus — AI Coding Agent Desktop App

By Eulogik · Free. Local. Open Source. The coding agent that actually builds things.

Tests TypeScript Rust License Platform Stars Downloads

An AI coding agent that runs on your machine, connects to 300+ LLMs, and actually writes code — not just chat about it. Built with Rust + TypeScript. 100% open source.

Install · Quick Start · What Can Nexus Do? · Features · Architecture · Plugins · Docs


Why Nexus?

Most AI coding tools are expensive cloud services that can't actually execute code. Nexus is different — it runs on your machine, has full file system access, executes shell commands, and manages git branches. All for free.

Feature Nexus Claude Code Cursor Copilot
Cost Free by default $20/mo (Pro) $20/mo (Pro) $10/mo
Runs locally ✅ Full desktop app ✅ Terminal ❌ VS Code only ❌ Cloud only
Code execution ✅ Read, write, edit, bash Limited
Git branching ✅ Branch-per-session
Multi-provider ✅ 300+ models ❌ Claude only
Free models ✅ OpenRouter auto
Plugin system ✅ Sandboxed Extensions
Micro-models ✅ 0.5B on-device
Prompt compression ✅ 30-60% savings
Offline capable
Open source ✅ MIT

What Can Nexus Do?

Actually Build Things

Nexus doesn't just suggest code — it executes tools to read files, write code, run commands, and manage your project:

You: "Build a Next.js blog with admin panel and SEO"
Nexus: ✓ Creates package.json
       ✓ Creates Next.js config
       ✓ Creates admin page with auth
       ✓ Creates frontend with responsive design
       ✓ Generates SEO meta tags
       ✓ Runs npm install
       ✓ Shows git diff of all changes

Work With Any LLM

Connect to OpenRouter (300+ models, free tier), Anthropic, OpenAI, or Google. Auto-routes to the best free model.

Multi-Turn Agent Loop

Nexus runs up to 50 iterations of: think → use tools → observe results → think again. It can explore your codebase, read files, make edits, run tests, and fix issues — all automatically.

Git-Native Sessions

Every conversation gets its own git branch. Changes are tracked, reversible, and never lose your work.


Screenshots

Chat Interface Code Execution Diff Viewer
Chat Tools Diff

Quick Start

Option 1: Download Desktop App

⬇️ Download for macOS (Apple Silicon / Intel)

⬇️ Download for Windows

⬇️ Download for Linux (.deb / .AppImage)

Option 2: Build From Source

# Clone
git clone https://github.com/eulogik/nexus.git
cd nexus

# Install
pnpm install

# Run desktop app
pnpm --filter nexus-desktop tauri dev

# Or run CLI
pnpm nexus init
pnexus chat

First Run

  1. Open Nexus → Click "Add Project" → Select a folder
  2. Start chatting: "Build something awesome"
  3. Nexus will create files, run commands, and show you a diff

Free tier works! Nexus auto-routes to free OpenRouter models. No API key needed for basic usage.


Installation

Desktop App (Recommended)

Platform Method
macOS brew install --cask nexus or download .dmg from Releases
Windows Download .msi from Releases
Linux Download .deb or .AppImage from Releases
Any git clone + pnpm --filter nexus-desktop tauri dev

CLI

# npm
npm install -g nexus

# Homebrew
brew install nexus

# pnpm
pnpm add -g nexus

Features

🤖 Agent Loop (50 Iterations)

Multi-step reasoning with tool use. The agent can explore code, make changes, run tests, and fix issues — all in one request.

🛠️ 7 Built-in Tools

  • read — Read file contents
  • write — Create or overwrite files
  • edit — Surgical text replacement
  • bash — Execute shell commands
  • glob — Find files by pattern
  • grep — Search with regex

🌿 Git Operations

  • stage_file — Stage changes
  • unstage_file — Unstage changes
  • discard_changes — Discard unstaged changes
  • list_unstaged_files — List modified files

💬 Streaming Chat

Real-time token streaming with markdown rendering, syntax-highlighted code blocks, and tool execution badges.

🔍 Diff Viewer

Full project git diff with color-coded additions/removals, file staging, and discard capabilities.

📊 Cost Tracking

Token usage and estimated cost displayed in real-time.

🔌 Plugin System

Extensible with sandboxed plugins:

  • Git — 7 tools (status, log, diff, commit, branch, push, pull)
  • GitHub — 6 tools (PRs, issues, review)
  • Docker — 6 tools (ps, images, run, stop, logs, build)
  • MCP — 4 tools (connect, list, call, disconnect)
  • Test — 4 tools (detect, run, run file, watch)

0.5B Local Micro-Model

Intent classification runs on-device for instant routing.

📦 Prompt Compression

30-60% context savings with content-aware compression.

🖥️ Tauri v2 Desktop

Native macOS/Windows/Linux app with system tray, notifications, and keyboard shortcuts.


Architecture

┌─────────────────────────────────────────────────────────────────┐
│                        Nexus Desktop                            │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌───────────────┐  │
│  │ Sidebar  │  │  Chat    │  │  Diff    │  │   Settings    │  │
│  │ Sessions │  │  View    │  │  Viewer  │  │   Modal       │  │
│  │ Files    │  │          │  │          │  │               │  │
│  └────┬─────┘  └────┬─────┘  └────┬─────┘  └──────┬────────┘  │
│       └──────────────┴─────────────┴───────────────┘            │
│                         React + Vite                            │
├─────────────────────────────────────────────────────────────────┤
│                     Tauri v2 (Rust)                             │
│  ┌────────────┐  ┌────────────┐  ┌────────────────────────┐    │
│  │  Session   │  │  Config    │  │  Bridge Script (Node)  │    │
│  │  Manager   │  │  Manager   │  │  Agent Loop + Tools    │    │
│  └────────────┘  └────────────┘  └────────────────────────┘    │
├─────────────────────────────────────────────────────────────────┤
│                     Nexus SDK (TypeScript)                      │
│  ┌────────────┐  ┌────────────┐  ┌────────────────────────┐    │
│  │  LLM API   │  │  Compress  │  │  Micro Model Router    │    │
│  │  (4 prov.) │  │  (30-60%)  │  │  (0.5B local)          │    │
│  └────────────┘  └────────────┘  └────────────────────────┘    │
├─────────────────────────────────────────────────────────────────┤
│                     Plugin SDK                                  │
│  ┌────────┐ ┌──────────┐ ┌────────┐ ┌──────┐ ┌─────────────┐  │
│  │  Git   │ │  GitHub  │ │ Docker │ │ MCP  │ │  Custom     │  │
│  └────────┘ └──────────┘ └────────┘ └──────┘ └─────────────┘  │
│                    isolated-vm sandbox                          │
└─────────────────────────────────────────────────────────────────┘

Monorepo Structure

nexus/
├── packages/
│   ├── nexus-ai/          # Multi-provider LLM API
│   ├── nexus-core/        # Agent runtime
│   ├── nexus-compress/    # Prompt compression
│   ├── nexus-micro/       # Local micro-models
│   ├── nexus-tui/         # Terminal UI
│   └── nexus-plugin-sdk/  # Plugin SDK
├── apps/
│   ├── nexus-desktop/     # Tauri v2 desktop app
│   ├── nexus-cli/         # CLI
│   └── nexus-sdk/         # Programmatic API
├── plugins/
│   ├── nexus-plugin-git/
│   ├── nexus-plugin-github/
│   ├── nexus-plugin-docker/
│   ├── nexus-plugin-mcp/
│   └── nexus-plugin-test/
└── docs/

Performance

Metric Value
CLI cold start < 200ms
Compression speed > 10MB/s
Agent loop 50 iterations
Memory < 150MB
Binary size ~18MB
Tests 571 passing, 40 files

Project Structure

nexus/
├── apps/nexus-desktop/     # Desktop app (Tauri + React)
│   ├── src/                 # React frontend
│   ├── src-tauri/           # Rust backend
│   │   ├── src/lib.rs       # Main Rust code
│   │   └── icons/           # App icons
│   ├── package.json
│   └── tauri.conf.json
├── apps/nexus-cli/         # CLI tool
├── packages/nexus-core/    # Core SDK
├── packages/nexus-ai/      # LLM providers
├── packages/nexus-compress/ # Compression engine
├── packages/nexus-tui/      # Terminal UI
├── plugins/                 # Official plugins
├── docs/                    # Documentation
├── package.json
├── pnpm-workspace.yaml
└── turbo.json

Tech Stack

Layer Technology Why
Frontend React 19 + Vite + Tailwind Fast, modern UI
Backend Rust + Tauri v2 Native performance, small binary
LLM OpenRouter + custom bridge 300+ models, free tier
State Zustand (implied) Lightweight
Testing Vitest Fast TypeScript tests
Build Turborepo + pnpm Monorepo orchestration
CI GitHub Actions Automated testing

Keyboard Shortcuts

Shortcut Action
⌘K / Ctrl+K Open command palette
⌘B / Ctrl+B Toggle sidebar
⌘W Close file / session
Esc Close modals
Enter Send message
Shift+Enter New line

Links


Release Package

Latest Release: v1.1.0

View on GitHub Releases →

Desktop Downloads:

  • macOS (Apple Silicon): nexus-desktop-aarch64.dmg (18MB)
  • macOS (Intel): nexus-desktop-x64.dmg (18MB)
  • Windows: nexus-desktop-x64.msi (16MB)
  • Linux: nexus-desktop-amd64.deb / .AppImage (20MB)
# Verify checksums
curl -sL https://github.com/eulogik/nexus/releases/download/v1.1.0/SHASUMS256.txt | sha256sum -c -

# Homebrew
brew install --cask nexus

# Snap (Linux)
sudo snap install nexus

# Cargo
cargo install nexus-desktop

Also available as:

  • npm package: npm install -g nexus
  • Docker image: docker pull ghcr.io/eulogik/nexus:latest
  • Standalone binary: Direct download from releases

Try It Now

# Quick demo (no install)
npx nexus-ai chat "Create a hello world in React"

# Full experience
git clone https://github.com/eulogik/nexus.git
cd nexus && pnpm install && pnpm --filter nexus-desktop tauri dev

Contributing

We welcome contributions! Areas we need help with:

  • Bug fixes and test coverage
  • New provider integrations
  • Plugin development
  • Documentation translations
  • Feature requests & feedback

See CONTRIBUTING.md for guidelines.

# Development setup
git clone https://github.com/eulogik/nexus.git
cd nexus
pnpm install
pnpm test
pnpm --filter nexus-desktop tauri dev

License

MIT © Eulogik


⭐ Star this repo if you find it helpful!

GitHub stars

Report Bug · Request Feature

Made with ❤️ by the Eulogik team

GitHub · Releases

Releases

No releases published

Packages

 
 
 

Contributors