Home
Softono
hermes-ide

hermes-ide

Open source TypeScript
267
Stars
76
Forks
41
Issues
1
Watchers
1 week
Last Commit

About hermes-ide

AI-native terminal emulator & IDE. Built with Tauri, React, and Rust.

Platforms

Web Self-hosted Linux Windows macOS

Languages

TypeScript

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, suggests commands in real time, tracks errors and resolutions, and can execute tasks autonomously — all without leaving the terminal.

Platforms: macOS, Windows, Linux


GIF

Features

Agent mode for Claude (new in 1.0.0)

  • Real chat for Claude — Claude sessions open in a rich chat interface by default, with thinking blocks, tool-call cards, and diff previews instead of a TUI in a terminal
  • Real images — paste or drop images straight into the composer; Claude sees the actual pixels
  • Persistent conversations — Claude sessions resume across app restarts
  • Bring your own auth — uses your existing claude CLI auth (Pro, Max, or API key); Hermes never asks for tokens

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
  • Still excellent for everything else — Aider, Codex, Gemini, Copilot, Kiro, plain shells all run in classic Terminal mode, unchanged

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

  • Automatic scanning — detects languages, frameworks, architecture, and conventions
  • Context injection — attaches project knowledge to AI agents via a token budget
  • Multi-project 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

Download & Installation

Download the latest version for your platform from the official website:

https://www.hermes-ide.com/download

Pre-built installers are available for macOS (Apple Silicon & Intel), Windows, and Linux (.deb, .AppImage, .rpm).


Getting Started

Prerequisites (for building from source)

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, Project 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
│   │   ├── project/            # 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 [email protected]. 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