Skip to content

hermes-hq/hermes-ide

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

142 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

HERMES IDE

CI Release Latest Release

Tauri React Rust TypeScript License Discord Sponsor

An AI-native terminal that understands your projects, predicts your commands, and executes autonomously.

Hermes IDE is a desktop terminal emulator that deeply integrates AI assistance into command-line workflows. It scans your projects to build context ("Realms"), suggests commands in real time, tracks errors and resolutions, and can execute tasks autonomously — all without leaving the terminal.

Platforms: macOS, Windows, Linux


Features

Terminal

  • Multi-session management — create, switch, and organize parallel terminal sessions
  • Split panes — horizontal and vertical splits with drag-and-drop reordering
  • WebGL-accelerated rendering — fast terminal with web links and auto-fit
  • Execution timeline — visual history of every command with exit codes and durations

Git Integration

  • Built-in git panel — view staged, unstaged, and untracked files per project
  • Stage / unstage / commit / push / pull — all from the sidebar
  • Inline diff viewer — click any changed file to see a syntax-highlighted diff
  • Robust authentication — SSH agent, SSH key files, Git Credential Manager, and token-based auth

AI Intelligence

  • Ghost-text suggestions — real-time command completions from history and context
  • Prompt Composer — write natural-language instructions for autonomous task execution
  • Error pattern matching — learns error fingerprints and auto-applies known resolutions
  • Stuck detection — monitors for hanging processes and offers interrupts

Project Awareness (Realms)

  • Automatic scanning — detects languages, frameworks, architecture, and conventions
  • Context injection — attaches project knowledge to AI agents via a token budget
  • Multi-realm support — attach multiple project contexts to a single session

Productivity

  • Command Palette — fuzzy search for any action
  • Cost Dashboard — track token usage and estimated costs per model and session
  • Memory & context pins — persist important facts, files, and patterns across sessions
  • System notifications — get notified about long-running command completions

Getting Started

Prerequisites

Tool Version Purpose
Node.js 18+ Frontend build tooling
Rust 1.70+ Backend compilation
Tauri CLI prerequisites System dependencies for Tauri

Platform-Specific Dependencies

  • Linux:
    sudo apt install libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf
  • macOS: Xcode Command Line Tools (xcode-select --install)
  • Windows: Visual Studio Build Tools (with "Desktop development with C++" workload) + WebView2 Runtime

Setup

git clone https://github.com/hermes-hq/hermes-ide.git
cd hermes-ide
npm install
npm run tauri dev

Build for Production

npm run tauri build

Architecture

Hermes IDE is a Tauri 2 application:

┌──────────────────────────────────┐
│         React Frontend           │
│     (TypeScript, Vite)           │
├──────────────────────────────────┤
│         Tauri IPC Bridge         │
├──────────────────────────────────┤
│          Rust Backend            │
│   (PTY, SQLite, Realm Scanner)   │
└──────────────────────────────────┘
Layer Responsibility
Frontend (src/) UI components, terminal rendering, state management, suggestion engine
IPC Tauri commands bridge React and Rust via typed async invocations
Backend (src-tauri/) PTY session lifecycle, SQLite persistence, project scanning, context assembly

Project Structure

hermes-ide/
├── src/                        # React/TypeScript frontend
│   ├── api/                    # Tauri IPC command wrappers
│   ├── components/             # UI components
│   ├── hooks/                  # Custom React hooks
│   ├── state/                  # State management (Context + useReducer)
│   ├── styles/                 # Per-component CSS
│   ├── terminal/               # Terminal pool & intelligence engine
│   ├── types/                  # TypeScript interfaces
│   └── utils/                  # Helper functions
├── src-tauri/                  # Rust backend
│   ├── src/
│   │   ├── pty/                # PTY session management
│   │   ├── db/                 # SQLite persistence layer
│   │   ├── realm/              # Project scanning & context assembly
│   │   └── workspace/          # Workspace detection
│   ├── Cargo.toml              # Rust dependencies
│   └── tauri.conf.json         # Tauri app configuration
├── public/                     # Static assets
├── package.json                # npm dependencies & scripts
├── vite.config.ts              # Vite build config
└── tsconfig.json               # TypeScript config

Documentation


Contributing

We welcome contributions! Before you start, please read:

The #1 rule: Open an issue or discussion before writing code for any new feature. Bug fixes and docs don't require prior discussion.

Quick Start for Contributors

git clone https://github.com/hermes-hq/hermes-ide.git
cd hermes-ide
npm install
npm run tauri dev        # Full app with hot-reload
npx tsc --noEmit         # Type check
npm run test             # Run tests
cd src-tauri && cargo test  # Rust tests

License

Hermes IDE is source-available under the Business Source License 1.1 (BSL 1.1).

  • You can: copy, modify, create derivative works, redistribute, and make non-production use freely. Production use is allowed as long as it does not compete with Hermes IDE.
  • You cannot: use it to build a competing code editor, terminal emulator, or IDE offered to third parties.
  • After 3 years from each release, the code converts to Apache License 2.0 — fully open source.

All contributions require signing the Contributor License Agreement.

See ARCHITECTURE.md for a detailed technical overview.


Security

Found a vulnerability? Please report it responsibly via ga.contact.me@gmail.com. See our Security Policy for details.


💛 Sponsors

Hermes IDE is built and maintained by a small team. If you find it useful, please consider sponsoring to help keep the project alive and accelerate development.

Sponsor Hermes IDE GitHub Sponsors

Tier Monthly Perks
☕ Supporter $5 Sponsor badge
🚀 Backer $20 Badge + release notes mention
💎 Contributor $50 Badge + README credit + early access
🤝 Partner $100 Logo in README + priority bug reports
🏢 Company $500 Logo on website + direct support channel

→ View all sponsorship tiers and become a sponsor

See SPONSORS.md for the full list of sponsors and details.


Website · Discussions · Discorda> · Changelog