AINZ 0.10.3
Ainz pixel mascot
ainz

Your agents.
Your terminal.
Your rules.

A local-first agent harness and session multiplexer. Run Ollama, LiteLLM, Codex, Claude Code, custom endpoints, tools, plugins, and subagents from one terminal-native workspace — with memory that survives the session.

brew install wess/packages/ainz
main12.4k tokensask3 agentscompleted

A buffer you can follow.

Inspired by irssi and BitchX: messages share a line with their nick, agents live in the right-hand roster, and the channel topic says what the selected agent is doing. Markdown renders in the terminal.

#main · Improve the output

15:31 <you> Make the buffer easier to read.
15:31 <Ainz> Keep names beside their messages. Longer replies
             wrap under the text, with room for code and lists.
15:32      ▸ shell  cargo test

*** Completed · 8s

Working, Responding, Running tools, and Waiting for approval tell you when a run is active. Completed, Cancelled, or Failed stays above the prompt after it ends, with a matching marker in the buffer. Completion includes end hooks.

Make yourself at home.

Choose /header mascot for the built-in mascot. Draw your own artwork or tune the interface colors in the designers, then copy one install command and select your creation inside Ainz.

Artwork guide · Theme guide · Buffer and completion states

Bring your model

Use Ollama locally, authenticated coding CLIs in headless mode, OpenAI-compatible endpoints, or your own process adapter.

Keep the context

Resume branching sessions, preserve token totals, compact long histories, steer a run at safe turn boundaries, and export any branch to Markdown.

Remember the work

Durable memory recalled when a session opens, search across earlier sessions, and skills a session writes for the next one — kept locally, or in Synapse.

Multiply yourself

Delegate durable subagent runs, leave them working in the background, and switch among their transcripts without leaving the main terminal.

Extend carefully

Import the tool servers your other tools already have, then add skills, prompts, and capability-scoped plugins with content-pinned approval.

Embed the engine

Interactive TUI, one-shot prompts, JSON streams, JSON-RPC, or your own Rust host. The core runs without the terminal and lets you choose which plugin runtimes to include. Embedding guide.

Edit like a shell

Walk earlier prompts with Up and Down, edit by word or line, and add a newline with Shift+Enter. @ completes a path, and Esc Esc rewinds to the last one.

Decide once

A permission prompt shows a diff for an edit, or the command for a shell call, and takes y, n, or a to keep the decision for the rest of the run.

Hook the session

A command can run at a session's start, before or after any tool call, and when it ends — a pre_tool hook can block the call outright.

Connect the mesh

Turn on Synapse and memory, guidance, and skills are shared with your other tools, while subagents take their own seats on its agent mesh.

No model configured? Just run ainz. The setup screen lists providers and pulls their models straight from each endpoint — no config file, no typing a model name by hand.