Pixir

Pixir logo

Pixir is an Elixir/OTP runtime for supervised coding-agent work.

Run it from the CLI or an ACP client. Pixir owns the local Session, Subagent lifecycle, Workflow outcomes, tool execution, failures, timeouts, and replayable evidence.

Pixir is a developer preview. The public package is for operators who want the CLI/ACP runtime; it does not promise a stable Elixir library API.

Why Pixir

Use any UI. Keep one supervised runtime.

Most coding-agent tools make the chat UI feel like the runtime. Pixir takes the opposite position: presenters request work; Pixir executes, supervises, and keeps the evidence.

That matters when agent work becomes long-running or delegated. Subagents need lifecycle state. Workflows need partial outcomes. Failures and timeouts need to be inspectable. Pixir records terminal Turn/Subagent evidence and treats partial work as partial work. Summaries are not evidence; local Logs and artifacts are.

Pixir is for power users and agent operators who want coding-agent work to leave a durable trail another human or agent can audit.

Install

From Hex:

mix escript.install hex pixir
pixir --version
pixir doctor --json

From source:

git clone https://github.com/Ranvier-Technologies/pixir-harness.git
cd pixir-harness
mix deps.get
mix escript.build
./pixir doctor --json

Authenticate

Use ChatGPT subscription login:

pixir login

Or set an OpenAI API key:

export OPENAI_API_KEY=...

First Run

Run Pixir inside another repository:

cd /path/to/your/project
pixir --read-only "inspect this repo and summarize the architecture"

Ask before writes and unsafe shell commands:

pixir --ask "make a small safe improvement and run tests"

Resume a Session:

pixir resume <session-id> "continue from there"

Inspect local evidence:

pixir diagnose session <session-id> --json
pixir tree <session-id> --json

Runtime Boundary

Different tools, same boundary: operators and presenters request work; Pixir executes, supervises, and keeps the evidence.

Diagram showing example operators and presenters requesting work through CLI or ACP, while Pixir owns Sessions, Turns, Subagents, Workflows, Provider and Tools, and Evidence Logs.

Logos identify example operators or presenters. They do not imply bundled integrations, endorsement, or production support.

Pixir is not another chat surface. It is the supervised local runtime underneath chat surfaces when work needs lifecycle state, tool execution, replay, partial outcomes, and auditable Logs.

ACP

Pixir runs behind ACP clients over stdio:

pixir acp

ACP clients present the work. Pixir remains the runtime: it executes tools, records Events, maintains Session Logs, and reports lifecycle updates.

What Pixir Includes

Subagents And Workflows Readiness

Pixir's current Subagent and Workflow contract is operational but deliberately narrow:

Preview Scope

T3Code integration exists as local dogfood through a separate adapter/patch workflow. It is useful for validating ACP behavior, but it is not the primary public install path yet.

Development

For source checkouts:

mix check

mix check runs formatting, warnings-as-errors compilation, tests, escript build, ./pixir doctor --json, a no-network Workflow smoke, and docs generation.

Networked smoke tasks are manual and opt-in.

Documentation

Generate local docs:

mix docs

License

MIT. See LICENSE.