Pixir Harness Open Beta Developer Preview

Copy Markdown View Source

Date: 2026-06-09

Pixir Harness is available as an early developer preview. This note records the public preview scope for source installs and the narrow Hex CLI/ACP distribution path. It does not define a stable Elixir library contract.

0.1.3 ACP Registry Readiness Update

Pixir 0.1.3 keeps the same CLI/ACP-only Hex contract and adds the pieces needed for public ACP Registry validation:

  • ACP initialize now advertises terminal authentication through pixir login, while Pixir still owns OAuth and credential storage outside the ACP stdio channel.
  • ACP message projection and diagnostics preserve partial assistant evidence more honestly when Provider streams end unexpectedly.
  • Source checkouts include the repo-local bin/diagnose-t3-pixir-projection helper for comparing Pixir Log truth, T3 provider logs, and T3 projection storage when a response is not visible where expected. It is not part of the Hex package surface.
  • CI is split into clearer Pixir check gates and the projection diagnostic tests can run with uv or a plain Python runner.

This release is the intended Hex base for the public npx ACP Registry wrapper.

0.1.1 Runtime Diagnostics Update

Pixir 0.1.1 keeps the same CLI/ACP-only Hex contract and adds local Session diagnostic surfaces for operators:

  • pixir inspect-replay <session-id> --json inspects replay continuity from the local Log.
  • pixir diagnose session <session-id> --json emits a structured Session diagnostic verdict for replay, lifecycle, and local evidence review.
  • Replay folding now tolerates transparent lifecycle/status Events between matched tool_call and tool_result records.
  • The escript SIGINT path no longer depends on Mix.env/0 at runtime.

The repo-local Codex/Pixir operator Skills are intentionally not part of the Hex package. They remain workflow guidance for this repository, not a public Pixir package contract.

This is not a stable ecosystem release. The goal is to let early users install Pixir, run doctor, try a first terminal or ACP-driven turn, and report the first installation, auth, model, and workflow failures with useful evidence.

What Is Supported

  • Source install from https://github.com/ranvier2d2/pixir-harness.
  • Hex escript installation when the pixir package is available, scoped to the same CLI/ACP runtime.
  • Terminal CLI through the installed pixir escript or a source-built ./pixir.
  • ChatGPT subscription login through pixir login, with OPENAI_API_KEY as a fallback.
  • Local append-only Session Logs under .pixir/sessions/.
  • pixir doctor --json as the first no-network diagnostic gate.
  • ACP over stdio through pixir acp.
  • Agent Skills, Subagents, Workflows, Session tree inspection, and durable compaction checkpoints.
  • Durable Provider usage accounting for token/cache evidence.
  • Initial Image Attachment support through local Session Resources and Provider projection.
  • Provider-hosted Web Search request/evidence plumbing, with opt-in smoke verification.

What Is Experimental

  • Long-running, non-blocking Subagent status and result retrieval.
  • Workflow partial outcomes and checkpoint bundles as a product experience.
  • Presenter/client integrations beyond ACP stdio.
  • Networked smoke tests for model/provider behavior.
  • Skill Context Hydration, which is accepted as a design direction but not yet a public implemented surface.

What Is Out Of Scope For This Preview

  • Stable public Elixir API.
  • Broad package ecosystem or extension API promises.
  • MCP server support.
  • Packaged T3Code provider.
  • Self-update/install channel.
  • Production SLA, telemetry, or hosted service guarantees.

Newcomer Smoke

The expected first-run proof is:

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

Run this smoke against the current checkout or installed package before reporting setup results. Use pixir instead of ./pixir for package installs.

Feedback To Capture

When a preview user reports a failure, ask for:

  • exact OS and Elixir version;
  • command run;
  • pixir doctor --json output with secrets removed;
  • whether they used ChatGPT subscription login or OPENAI_API_KEY;
  • the relevant .pixir/sessions/<id>.ndjson only when safe to share.