Sandbox
@proxysoul/Empryo

Graph-powered coding agent for terminal and desktop

Empryo is a local coding agent that builds a live graph of symbols, imports, and call sites before it edits anything. It combines AST-based edits, LSP support, multi-agent routing, and context compaction so you can work with larger repos and longer sessions with less re-explaining.

1,155 stars92 forksTypeScriptUpdated 8d ago
Who it's for

Builders who want a coding agent that understands a repo as a graph, not a pile of files.

What it delivers

You can make structural code changes with more context, fewer broken edits, and less repeated prompting.

What it does

Live code genome

Builds a tree-sitter graph of symbols, imports, call sites, PageRank, and git co-change history for fast lookup.

Symbol-level editing

Uses 65+ AST operations with atomic rollback and typecheck gating, so edits stay structural across 30+ languages.

Multi-agent routing

Runs scout, code, verify, review, summarize, and custom agents with model selection per tab and per project.

Three interfaces

Works as a desktop app, full terminal UI, or headless CLI for scripts and CI.

LSP and MCP support

Connects to language servers through Mason and works with MCP servers plus lifecycle hooks.

Free compaction

Compacts long sessions structurally without an LLM call, which keeps context smaller and cheaper.

How to get it

  1. 1Run
    # macOS / Linux
    curl -fsSL https://empryo.com/install.sh | bash
    
    # Windows (PowerShell)
    irm https://empryo.com/install.ps1 | iex
  2. 2Official installers and direct downloads are available only from empryo.com/download.…
    empryo --set-key anthropic sk-ant-...   # or run locally with Ollama — no key required
    cd your-project
    empryo

README

EmpryoEmpryo

Empryo

previously SoulForge

Code in context.

AI coding with a map of your codebase.

Website · Download · Benchmarks · Changelog · Discussions · Discord

Empryo in action

SoulForge is now Empryo — the same symbol-level, graph-powered agent, rebuilt with a desktop app, a faster engine, and a composable core. This repository is Empryo's public home for issues and discussions.

Install

# macOS / Linux
curl -fsSL https://empryo.com/install.sh | bash

# Windows (PowerShell)
irm https://empryo.com/install.ps1 | iex

Official installers and direct downloads are available only from empryo.com/download. Empryo is not distributed through Homebrew, WinGet, or npm.

empryo --set-key anthropic sk-ant-...   # or run locally with Ollama — no key required
cd your-project
empryo

Desktop app and prebuilt binaries: empryo.com/download. Runs on macOS, Linux, and Windows. Do not download Empryo binaries from GitHub Releases or third-party package managers.

Why Empryo

Most coding agents grep, read whole files, and patch strings — they never know what depends on the code they just changed. Empryo builds understanding before it mutates anything:

  • It maps before it reads. On launch, tree-sitter parses your repo into a live graph — every symbol, import, and call site, ranked by PageRank and git co-change. Graph queries answer in milliseconds and cost zero LLM tokens.
  • It knows the blast radius. Before an edit, the agent sees what imports a file, what historically changes with it, and how far a change ripples — "what breaks if I touch this?" is answered before the first keystroke.
  • It edits through the AST. 65+ symbol-level operations, atomic batches with all-or-nothing rollback, structural edits across 30+ languages, and a typecheck as the gate. Nothing breaks on whitespace.
  • It treats tokens as spend. The graph does the navigation models usually burn context on — fewer reads, fewer steps, smaller bills at any scale.

What's inside

Code genomelive dependency graph: tree-sitter across 30+ languages, PageRank + git co-change ranking, blast-radius tags, millisecond search
Symbol-level editing65+ AST operations (atomic, with rollback) + structural edits in 30+ languages
Multi-agentparallel explore/edit agents with a shared I/O cache — cheap models scout, strong models write
Task routerten routable roles, any model in any seat, per tab — your own mixture of experts
Time machineevery prompt is a git checkpoint; rewind code and conversation together, land on any turn
Three surfacesnative desktop app, full terminal UI, headless CLI for scripts and CI — one genome, three phenotypes
LSP + MCP576+ language servers via Mason, any MCP server, 13 lifecycle hooks
Free compactionstructural context compaction with no LLM call — long sessions stay cheap

One agent, many brains

Empryo isn't one model in a loop — it's a crew, and you assign the seats. Every role is a routable slot that takes any model from any of the 22 providers:

brain · spark scout · ember code · explore · verify review · goal review · desloppify · summarize · compact · web search

  • Per tab. Each workspace tab carries its own routing — a frontier model writing code in one tab, a fast cheap one triaging issues in the next, a local model on a private repo in a third.
  • Per config. Set defaults globally or per project; override any slot from the tab. Cheap models scout, strong models write, reviewers judge with clean context.
  • Custom agents. Define your own agents — a prompt, a model, a tool policy — and dispatch them alongside the built-ins. Mix and match providers freely inside a single run.
  • Cache-aware by design. Routing keeps prompt-cache prefixes stable — sub-agents inherit their parent's cache line, so repeated context bills at cache-read rates instead of full price.
  • Costs, itemized. Live spend tracking per model, per sub-agent, per tab, per session, per day — you always know where the tokens went.

Benchmarks

Head-to-head against pi — same models, same repositories, same tasks. The graph does more with less:

Round 1 3 bugs × 3 modelsRound 2 5 real bugs · hono / zod / ky
Bugs fixed8/9 vs 7/97/10 vs 6/10
Cost28% lower — $1.13 vs $1.5823% lower — $7.08 vs $9.19
Wall-clock57% faster — 4m 16s vs 10m32% faster — 22m 30s vs 32m 55s
Efficiency5.7× fewer input tokens — 1.09M vs 6.21M28% fewer steps — 274 vs 382

Round 2 used real bugs from merged PRs (post-training-cutoff, history scrubbed, regression tests injected after each run). Full methodology and transcripts: empryo.com/benchmarks · reproduce at proxysoul/pi-vs-empryo-bench.

Private by design

Empryo runs entirely on your machine. Bring your own key — Anthropic, OpenAI, Google, Groq, DeepSeek, Bedrock, and 16 more, or any OpenAI-compatible endpoint — or run fully local with Ollama / LM Studio. No proxy in the middle, no code leaving your machine, no per-seat fee. Free to use.

SoulForge

SoulForge remains available to download and install, and continues to receive fixes for bugs and critical issues. New features and active development have moved to Empryo.

brew tap proxysoul/tap && brew install soulforge
# or
bun install -g @proxysoul/soulforge

This repository

  • Issues and Discussions — the home for Empryo bug reports, questions, and ideas.
  • The SoulForge source remains archived here under its existing license (see LICENSE).

Sponsors

LLM GatewayLLM Gateway

One API, 200+ models, up to 30% off frontier. Wired in as the llmgateway provider.

Sponsor · PayPal · Featured sponsors and all backers

Files in the repo

Repository payload32 top-level entries
  • .github
  • assets
  • locales
  • mintlify-docs
  • morphs
  • packaging
  • plugins
  • scripts
  • src
  • telemetry-worker
  • tests
  • .gitignore
  • BACKERS.md
  • biome.json
  • bun.lock
  • bunfig.toml
  • CHANGELOG.md
  • CLAUDE.md
  • cliff.toml
  • CODE_OF_CONDUCT.md
  • COMMERCIAL_LICENSE.md
  • CONTRIBUTING.md
  • GETTING_STARTED.md
  • GOVERNANCE.md
  • LICENSE
  • package.json
  • PRIVACY.md
  • README.md
  • SECURITY.md
  • SOULFORGE.md
  • THIRD_PARTY_LICENSES.md
  • tsconfig.json

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More tools

JuliusBrussee/
caveman

🪨 why use many token when few token do trick — Claude Code skill that cuts 65% of tokens by talking like caveman

105k
1 add
MemPalace/
mempalace

The best-benchmarked open-source AI memory system. And it's free.

59k
stablyai/
orca

Orca is the ADE for working with a fleet of parallel agents. Run any coding agent with your own subscription. Available on desktop, mobile and remote runtime.

66k

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

132k

Never stop coding. Free MIT AI gateway: one endpoint, 352 providers (150+ free), 1200+ models Kimi, Claude, GPT, Gemini, GLM, DeepSeek, MiniMax. Works with Claude Code, Codex, Cursor, OpenCode, Cline & Copilot. Quota-aware auto-fallback, RTK+Caveman compression saves 15-95% tokens, MCP/A2A, Desktop/PWA. Built by 550+ contributors

64k
headroomlabs-ai/
headroom

Compress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.

71k