DBDelve
Dive deep into your data. A fast, native, multi-engine database client written in Rust. Free and open source, no telemetry.
Axion is a local-first mission control for AI coding agents. It runs real terminals in the browser (node-pty over WebSockets), gives every session its own git worktree and branch, shows you the exact
Developer toolsTypeScript · JavaScriptGitHub @WickTechOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Local mission control for AI coding agents: isolated git worktrees, diff review, approval-gated merges, audit log.
Loading the full README.
Read the full README ↗A local, open-source web app to run AI coding CLIs in isolated git worktrees, review their diffs, and merge only what you approve. Formerly AI-Orc; the old standalone dashboard is now merged into
packages/core.
Two isolated agent sessions on a demo repository, with the diff review open: nothing merges until you approve the exact diff you reviewed.
| Feature | Description |
|---|---|
| Live terminals | Full xterm.js terminals for each CLI — type and see real-time output |
| Dashboard | See all tools at a glance, launch with one click |
| Obsidian vault | Browse and edit your .md notes; edits persist directly to your vault |
| Tool registry | Paste a GitHub URL → repo is cloned → install steps extracted from README |
| Extensible | Add any open-source AI tool, model, or CLI by pasting its GitHub repo URL |
| Local & private | All data stays on your machine — no cloud, no telemetry |
Add git repositories under Settings → Repositories, then pick one in the Isolated worktree dropdown when launching a tool. The session runs in its own git worktree on a new axion/<tool>-<session> branch under ~/.axion/worktrees/, so two agents can edit the same repo without touching each other or your checkout.
/ or your home folder.--no-ff). Approval is bound to the exact diff you reviewed: if the agent changes anything afterwards, the merge is refused and you must review again. It also refuses a dirty main checkout, a detached HEAD, an empty diff, and a conflicting merge (which is aborted, leaving main clean and the session intact). After a successful merge the session worktree and branch are removed. Nothing merges without this explicit approval.~/.axion/audit.log (newest 20 shown on the Worktrees page, GET /api/audit). Your repository's own git hooks run on the commit and merge, as they would for you.npm test). A session can then only be approved after that command passed on the exact diff you are merging; any later change invalidates the result. Runs and failures are in the audit log (verified, verify-failed).Built-in tools are agent adapters in packages/agents. To support a new CLI, add packages/agents/src/adapters/<name>.ts exporting an AgentAdapter (id, label, bare command, args, installHint, capabilities, optional headlessArgs) and list it in packages/agents/src/registry.ts. Commands must be bare executable names (no paths or spaces); the registry rejects anything else. Existing installs pick up new built-ins automatically because built-ins are not stored in ~/.axion/db.json.
Out of the box Axion launches terminals for:
claude)gemini)codex)opencode)Any of these you have installed will work immediately. Add more via the Registry.
claude, gemini, codex)git clone https://github.com/WickTech/axion
cd axion
npm install # installs every workspace from the repo root
npm run dev # starts apps/web
Open http://localhost:3000.
Note for WSL users: The server binds to
127.0.0.1:3000by default — WSL2 forwards localhost automatically, sohttp://localhost:3000from your Windows browser just works. There is no auth on the terminal/vault APIs, so only setHOST=0.0.0.0if you understand that exposes process-spawning to your whole LAN.
/home/you/MyVault)| Route | Purpose |
|---|---|
/ | Dashboard — tool cards with one-click launch |
/terminals | Live xterm.js terminals, tabbed per tool instance |
/vault | Obsidian file tree + markdown editor (Ctrl+S to save) |
/registry | Add tools via GitHub URL |
/settings | Vault path, server port |
This is the beginning of the README. Read the rest at the original. Read the full README ↗