Local-first · Open source · macOS
Arslan is a local-first personal AI orchestrator. You talk to one host agent; it routes work to persona spawns you raised yourself. Their prompts improve on their own — but every change passes a held-out exam, and nothing ships until you press Promote.
A machine, not a chat box
A chat box talks about the work. Arslan dispatches it — and if it can do the job itself, it does; routing is not the default. Everything runs and logs on your machine, in one thread you can read end to end.
doer-first routing · every dispatch lands in the ledger
How it works
Spawns are drafted from a persona seed library, named by you, kept on your Spawns Ledger. Each one equips only what you grant it — and nothing more:
Self-evolution, with an exam
Your spawns get better at their jobs — without ever changing behind your back. A rewrite only replaces the incumbent prompt if it wins where it counts:
The promise guard
If you have used an agent, you have been lied to exactly like this. Arslan intercepts it with a deterministic check — not another model call. One rewrite allowed; if it promises again, an honest template goes out instead.
Arslan cannot tell you it did something it did not do.
The second brain
What your spawns learn lands in a shared brain: [[wiki-link]] notes on a live force-directed graph, retrieved by hybrid FTS5 + embedding search.
The real client
Everything above is brand animation. Everything below is a screenshot — the shipped app, light theme, untouched.

real screenshots · ships with 6 languages · 6 theme palettes · light + dark
Safety is built in, not disclaimed
From the shipped Settings page, verbatim: “They are all off by default and none of them changes anything without you.”
Honest limitations