Skip to content

Carbon - A desktop app that unifies AI coding tools (Claude Code, Gemini CLI, Claude Agent SDK, Codex) with custom agents, persistent memory, and media generation.

License

Notifications You must be signed in to change notification settings

0xCrunchyy/carbon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Carbon

The Meta-Framework for AI-Powered Development

License Rust TypeScript Tauri PRs Welcome

Carbon unifies the world's best AI coding tools into one beautiful, privacy-first desktop application.

FeaturesInstallationDocumentationContributing


Carbon Screenshot

Why Carbon?

The AI coding landscape is fragmented. Claude Code, Gemini CLI, Cursor, Windsurf, Codex—each tool excels at something different, but switching between them breaks your flow. Carbon brings them all together.

┌─────────────────────────────────────────────────────────────────┐
│                         CARBON                                   │
│  ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌────────────┐ │
│  │ Claude Code │ │ Gemini CLI  │ │   Codex     │ │  Your LLM  │ │
│  └─────────────┘ └─────────────┘ └─────────────┘ └────────────┘ │
│                                                                  │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │              Unified Agent Runtime                        │   │
│  │  • Tools • Memory • Sandboxing • Scheduling • Approvals  │   │
│  └──────────────────────────────────────────────────────────┘   │
│                                                                  │
│  ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌────────────┐ │
│  │   Chat UI   │ │   Agents    │ │  Generate   │ │  Terminal  │ │
│  └─────────────┘ └─────────────┘ └─────────────┘ └────────────┘ │
└─────────────────────────────────────────────────────────────────┘

Features

🤖 Framework Integrations

Seamlessly switch between the industry's best AI coding tools:

Framework Status Description
Claude Code ✅ Integrated Anthropic's agentic coding CLI
Gemini CLI ✅ Integrated Google's AI-powered terminal
OpenAI Codex ✅ Integrated OpenAI's code generation SDK
Carbon Native ✅ Built-in Our own Rust-powered agent

🎯 Custom Agents

Create, configure, and schedule your own AI agents:

  • Visual Agent Builder — Design agents with custom system prompts, tools, and behaviors
  • Template Library — Pre-built agents for code review, testing, documentation, and security
  • Scheduled Runs — Cron-based automation for recurring tasks
  • Run History — Full execution logs with token usage and cost tracking
  • Tool Approval — Fine-grained control over agent permissions

🎨 Media Generation

Generate images, videos, and audio directly from your IDE:

Provider Capabilities
DALL-E 3 High-quality image generation
Stable Diffusion Local image generation via Ollama
Midjourney (Coming soon)
Runway Video generation
ElevenLabs Voice synthesis
Suno Music generation

🧠 Global Memory

Never lose context again with our three-tier memory system:

┌─────────────────────────────────────────────────────────┐
│                    Memory Architecture                   │
├─────────────────────────────────────────────────────────┤
│  Short-term    │  Current conversation context          │
│  Working       │  Project patterns, code style (RAG)    │
│  Long-term     │  Persistent facts with semantic search │
└─────────────────────────────────────────────────────────┘
  • Automatic Extraction — Carbon learns your preferences, patterns, and project structure
  • Semantic Search — Find relevant memories using natural language
  • Cross-Project — Memories persist across all your projects
  • Manual Curation — Add, edit, or delete memories as needed

🔧 Built-in Tools

Powerful tools for autonomous task execution:

Tool Description Approval
read_file Read file contents Auto
write_file Create or overwrite files Ask
edit_file Make targeted edits Ask
glob Find files by pattern Auto
grep Search file contents Auto
bash Execute shell commands Ask
git Version control operations Ask
web_fetch Fetch web content Auto
spawn_agent Launch sub-agents Ask
memory_store Save to long-term memory Auto
memory_recall Retrieve from memory Auto

💬 Chat Interface

A beautiful, feature-rich chat experience:

  • Streaming Responses — See AI thinking in real-time
  • Code Highlighting — Syntax highlighting for 100+ languages
  • Diff Theater — Review and approve file changes visually
  • File Attachments — Drop images, PDFs, or code files
  • Voice Input — Speak your requests naturally
  • Markdown Rendering — Rich formatting support

👥 Real-time Collaboration

Code together with your team:

  • P2P Architecture — No server required, fully decentralized
  • Driver/Navigator Roles — Structured pair programming
  • Presence Cursors — See collaborators in real-time
  • Conflict Resolution — CRDT-based merging with Yjs
  • Session Management — Create, join, and manage sessions

🔐 Privacy First

Your code stays yours:

Mode Description
Standard Cloud models + local storage
Local Only Ollama/LM Studio models only
Air-Gapped Complete network isolation
  • No Telemetry — Zero data collection
  • Local Database — SQLite stored on your machine
  • Keychain Storage — API keys secured by your OS
  • Open Source — Audit the code yourself

🖥️ Integrated Terminal

A full-featured terminal right in Carbon:

  • Multiple Sessions — Tabbed terminal interface
  • AI Assistance — Get help with commands
  • Output Capture — Share terminal output with AI
  • Custom Themes — Match your editor theme

📁 File Explorer

Navigate your codebase with ease:

  • Tree View — Hierarchical file browser
  • Quick Open — Fuzzy file search
  • Git Status — See modified files at a glance
  • Preview — Peek at file contents

Installation

Prerequisites

  • Node.js 18+
  • Rust 1.75+ (for Tauri backend)
  • Bun (recommended) or npm

Quick Start

# Clone the repository
git clone https://github.com/hypercortex/carbon.git
cd carbon

# Install dependencies
bun install

# Start the development server
bun run tauri:dev

Building for Production

# Build the desktop app
bun run tauri:build

# Output will be in apps/desktop/src-tauri/target/release

Platform Support

Platform Status
macOS (Apple Silicon) ✅ Supported
macOS (Intel) ✅ Supported
Windows 10/11 ✅ Supported
Linux (Debian/Ubuntu) ✅ Supported
Linux (Fedora/RHEL) ✅ Supported

Configuration

API Keys

Add your API keys in Settings → API Keys. Keys are stored securely in your system keychain.

Provider Required For
Anthropic Claude models, Claude Code
OpenAI GPT models, DALL-E, Codex
Google Gemini models, Gemini CLI
Mistral Mistral models
ElevenLabs Voice synthesis
Runway Video generation

Model Selection

Choose your default model in Settings → Models:

Provider Models
Anthropic Claude Opus 4.5, Claude Sonnet 4.5, Claude Haiku 4.5
OpenAI GPT-5, GPT-5.1
Google Gemini 3 Pro, Gemini 3 Deep
Local Any model via Ollama or LM Studio

Framework Settings

Configure framework integrations in Settings → Frameworks:

  • Select your preferred AI coding framework
  • Configure framework-specific settings
  • Set working directory preferences

Architecture

Tech Stack

Layer Technology
Desktop Shell Tauri 2.0
Frontend React 18 + TypeScript
Styling Tailwind CSS + Framer Motion
State Zustand + Persist
Backend Core Rust
Database SQLite + sqlx
Collaboration WebRTC + Yjs

Project Structure

carbon/
├── apps/
│   └── desktop/                 # Tauri + React application
│       ├── src-tauri/           # Rust backend
│       │   ├── src/
│       │   │   ├── commands/    # Tauri IPC commands
│       │   │   ├── agent/       # Agent execution engine
│       │   │   ├── providers/   # Model provider integrations
│       │   │   ├── memory/      # Persistent memory system
│       │   │   └── utils/       # Utilities (keychain, etc.)
│       │   └── Cargo.toml
│       └── src/                 # React frontend
│           ├── app/             # Next.js app router
│           ├── components/
│           │   ├── ui/          # Glass design system
│           │   ├── chat/        # Chat interface
│           │   ├── agents/      # Agent management
│           │   ├── generate/    # Media generation
│           │   ├── terminal/    # Integrated terminal
│           │   ├── files/       # File explorer
│           │   ├── diff/        # Diff theater
│           │   ├── collab/      # Collaboration
│           │   ├── memory/      # Memory management
│           │   ├── settings/    # Settings panels
│           │   └── onboarding/  # First-run experience
│           ├── stores/          # Zustand state management
│           ├── hooks/           # Custom React hooks
│           └── lib/             # Utilities
├── packages/
│   └── shared/                  # Shared TypeScript types
└── docs/                        # Documentation

Agent Execution Flow

┌──────────────────────────────────────────────────────────────────┐
│                        Agent Execution                            │
├──────────────────────────────────────────────────────────────────┤
│                                                                   │
│  1. User Request                                                  │
│     └─→ "Fix the login bug and add tests"                        │
│                                                                   │
│  2. Planning                                                      │
│     └─→ Agent analyzes request, retrieves memories               │
│                                                                   │
│  3. Tool Selection                                                │
│     └─→ glob → grep → read_file → edit_file → bash              │
│                                                                   │
│  4. Execution Loop                                                │
│     └─→ Execute tool → Observe result → Continue or complete    │
│                                                                   │
│  5. Approval (if required)                                        │
│     └─→ User reviews and approves changes                        │
│                                                                   │
│  6. Completion                                                    │
│     └─→ Save memories, update UI, log metrics                    │
│                                                                   │
└──────────────────────────────────────────────────────────────────┘

Roadmap

Current (v0.1)

  • Chat interface with streaming
  • Multi-model support (Anthropic, OpenAI, Google, Ollama)
  • Agent execution with tools
  • Memory system
  • Framework integrations (Claude Code, Gemini CLI)
  • Custom agents with scheduling
  • Media generation

Next (v0.2)

  • MCP (Model Context Protocol) support
  • Plugin system
  • Voice mode improvements
  • Enhanced collaboration features
  • Mobile companion app

Future

  • Self-hosted cloud sync
  • Team workspaces
  • Enterprise features
  • IDE extensions (VS Code, JetBrains)

Contributing

We welcome contributions! See our Contributing Guide for details.

Development Setup

# Clone and install
git clone https://github.com/hypercortex/carbon.git
cd carbon
bun install

# Start development
bun run tauri:dev

# Run tests
bun test

# Type check
bun run typecheck

# Lint
bun run lint

Code Style

  • Rust — Follow rustfmt defaults
  • TypeScript — ESLint + Prettier
  • Commits — Conventional commits

Community


License

MIT License — see LICENSE for details.


Built with ❤️ by the Carbon team

WebsiteDocumentationBlog

About

Carbon - A desktop app that unifies AI coding tools (Claude Code, Gemini CLI, Claude Agent SDK, Codex) with custom agents, persistent memory, and media generation.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published