MEMORY.md · USER.md
A frozen snapshot
Memory is injected as a frozen snapshot at session start, so writes mid-session never invalidate the model's prompt prefix cache. Every entry carries SHA‑256 provenance, and symlinks are rejected.
Version 3.1By invitation
Dexter is a terminal coding agent. Point it at any repository and any model, cloud or local, and it plans, edits, runs and verifies. When a job splits into independent parts, it hands them to parallel subagents on its own and shows each one working in a live tmux pane.
01Parallel by default
When a job breaks into independent parts, such as searches across several areas of a codebase, reviews of separate packages, independent checks or several research questions, the model hands them to parallel subagents without being asked. It writes each task with the context it needs, because a subagent does not see the conversation.
scout, planner, worker and reviewer take the parts. Harness agents hand a lane to Claude Code, Codex or pi.DEXTER_SUBAGENT=1 set, so it does its one task and never fans out again.02Live panes
Each child streams into its own live pane: its text as it is written, tool calls with short arguments, failed tools and retries, then a summary line. Panes only display, so closing one never stops its subagent.
dexter-agents window, so focus stays on your session.dexter-agents session. Watch with tmux attach -t dexter-agents./tmux checks your setup and gives a one-line fix for anything that is off.dexter-agents session: one tiled, titled pane per subagent.03Fan out from anywhere
dexter fanout runs a JSON list of tasks through the same subagents, limits and live panes, with no model making the call. stdout holds only the report: Markdown by default, or one JSON document with --json, with each task's full answer, tokens and cost, in input order.
dexter-fanout skill gives Claude Code the same power: it hands 2 to 8 independent tasks to dexter's subagents on the model you choose, then reads back each answer with its cost.04Any model
Models change every month. The harness is what lasts: the same tools, context management and subagents run over any provider. dexter/auto pairs a frontier supervisor model for planning with a fast executer model for edits.
Frontier
Providers
Local, no key
05Learns and heals
Fixes that turned a failing run into a passing test become a playbook, and long debugging sessions become reusable skills.
MEMORY.md · USER.md
Memory is injected as a frozen snapshot at session start, so writes mid-session never invalidate the model's prompt prefix cache. Every entry carries SHA‑256 provenance, and symlinks are rejected.
/learn · skill_manage
Complex sessions become reusable SKILL.md procedures, scanned for prompt injection and secret exfiltration and linked to each other through related_skills.
learning_graph · /journey
Cycles of tool failure, code edit and passing test are recorded automatically, and verified fixes surface in <self_healing_playbook>. /journey draws the graph.
06Supervised autonomy
dexter keepalive walks the ROADMAP.md you wrote. It takes the first unchecked item, gives it to a headless worker, requires the build and tests to pass, then makes one small commit and ticks the box. It commits locally and never pushes: you review, you push.
touch ~/.dexter/PAUSE and no new session starts. Remove the file to resume.--heal-retries sets a self-healing retry budget for a worker session that fails or stalls.skill
Turns a goal into a measurable target, then loops: evaluate, analyze failures, fix, re-evaluate, until the goal is met or the budget runs out (10 iterations by default). Every iteration is logged and committed.
skill · /goal · /cron
One goal in GOAL.md, with done-when criteria a machine or a reviewer can check. /goal pins it across sessions, and /cron schedules recurring goal checks.
07The built-in kit
/kit shows the status of each engine. Over 200 bundled skills cover native iOS and macOS, Android, GitHub, design, testing and debugging; enable only what you need.
trove_query
Repository memory search.
parse_document
Document to Markdown parsing.
web_fetch · web_crawl
Browser-grade Transport Layer Security (TLS) fetching that gets past bot walls.
browser_navigate · browser_click · …
Fast control over the Chrome DevTools Protocol (CDP): navigate, snapshot, click, fill, select, press, screenshot and evaluate.
troy
Your own signed-in browser, through the Troy agent bridge.
inspect_artifact
Zero dependencies: format, architecture, sections with entropy, framework fingerprints and strings.
08Fast where you feel it
Figures from Dexter's benchmarks and its 3.0 changelog.
60ms
Launch
dexter --version answers in about 60 ms and 46 MB. Launches are sub-second.
1,652
Files at startup
Instead of 2,853. Extensions reuse the running dexter instead of loading a second copy: one copy of dexter per process.
30×
Streaming render
Streaming markdown updates measure about 30 times faster than the naive path, because unchanged rows are reused.
8at once
Parallel start
All eight children start together instead of four and then four more. With a model that answers after 1 s, the call took 1,567 ms instead of 2,793 ms.
3to5
Progress updates
For an eight-task call, instead of 32. Updates coalesce to at most one every 100 ms, so the terminal's time goes to work.
1.0s
Subagent ready
A scout child with a real configuration (three packages, about 400 skills and an MCP server) was done after 1.0 s instead of 1.45 s.
How a terminal coding harness lets the model fan out independent work to parallel subagents on its own, turns verified fixes into a playbook, and walks a written roadmap under spend caps and a kill switch.
Read the paperDexter is proprietary to Velofy. Write to us and tell us what you would point it at.