DBDelve
Dive deep into your data. A fast, native, multi-engine database client written in Rust. Free and open source, no telemetry.
翻訳待ち
A Codex-based coding-agent TUI with explicit context control, auditable Smart Prune, and local session continuity.
翻訳待ち
Loading the full README.
Read the full README ↗This command installs both apps, the desktop app and the terminal app, on Linux x86_64:
curl -fsSL https://raw.githubusercontent.com/MasihMoafi/Elpis/main/scripts/install.sh | bash
Then run elpis-app for the desktop app or elpis for the terminal app. Sign in with ChatGPT or Claude, or set up a provider. Claude models run through your own Claude Code install. Open a chat and look at its Context Ledger before you send the first message.
From the v0.5.3 release; every file has a SHA-256 checksum:
sudo apt install ./elpis_0.5.3_amd64.deb ./elpis-desktop_0.5.3_amd64.debchmod +x Elpis-0.5.3-x86_64.AppImage, then run it; add elpis to run the terminal app.git clone https://github.com/MasihMoafi/Elpis && cd Elpis/packaging/aur/elpis-bin && makepkg -sicurl -fsSL https://raw.githubusercontent.com/MasihMoafi/Elpis/v0.5.3/scripts/install-elpis.sh | bashnpm install -g elpis-cli, then elpis. The first run downloads the v0.5.3 release and checks its SHA-256.Both apps share one engine and one state folder, ~/.elpis-next.
Without Elpis, a coding agent loads every instruction file it finds and keeps the whole conversation until the window fills. You cannot see what it was told, and you cannot take it back. Several agents on one task make it worse: they write over each other's files, nobody checks the work, and you merge the result by hand.
Elpis treats both as one problem: the context an agent works in. With Elpis, two rules apply:
Elpis keeps Codex's Rust engine, its tools and its sandbox, and adds its controls around the chosen model:
Context Ledger. It shows every instruction file, file and memory an agent receives, with its token cost. You include or exclude each one.
Workflows. You describe a job. The Mother agent does it herself, or designs a team on a board you can edit. Patterns: Sequential, Parallel, Kahn graph waves, Recursive and Voting.
Observability. Every request, tool call, token and cache hit of a chat sits on one timeline: in the desktop app's Observability page, and in the terminal's /dashboard (next release).
One app for every model. GPT, Claude, Gemini and OpenRouter, through your ChatGPT or Claude subscription or an API key. You can switch models without losing the thread, and import chats from Claude Code and Codex.
Two apps, one engine. A desktop app (four themes, light and dark) and a terminal app share sessions and state. In the terminal, the Agent command center shows each helper under its parent chat.
Love Spot. A drawing board where Matilda, the app's companion, answers and draws with you.
The desktop app is Electron with a Node bridge, which drives each agent over the Agent Client Protocol. No model weights are bundled. State lives in ~/.elpis-next, or in the folder that ELPIS_HOME names.
How a workflow orders its steps. Elpis sorts the board with Kahn's algorithm. An agent starts when everything it waits for has passed, and the check of that work has passed too. Agents in one wave run side by side. Elpis refuses a loop before any agent starts, unless you choose the Recursive pattern and a round limit. The Voting team runs in four waves:
%% id: voting-waves
%% alt: The Voting team in four waves: the Mother agent starts three answering agents, each answer has its own check, a tally agent joins the checked answers, a check reviews the tally, and the Mother agent reviews and merges.
flowchart LR
M([Mother agent]) --> A1[Answer 1] & A2[Answer 2] & A3[Answer 3]
A1 --> C1{{Check 1}}
A2 --> C2{{Check 2}}
A3 --> C3{{Check 3}}
C1 & C2 & C3 --> T[Tally]
T --> CT{{Check tally}}
CT --> R([Mother agent reviews and merges])
Details: technical guide, context, sessions.
The state of each item, with its check and evidence: production.md.
This is the beginning of the README. Read the rest at the original. Read the full README ↗