Update info

Pi 1.0.1–1.1.0: MCP Controls, Model Support and Azure Migration

Five Pi releases add MCP controls, image classifiers and Haiku 5.5; Azure users must rename their provider settings.

Direct answer: Pi (earendil-works/pi) shipped five releases between October 3 and 7 UTC — v1.0.1, v1.0.2, v1.0.3, v1.0.4 and the current v1.1.0 (Oct 8, 06:26 Beijing time). In under a week it advanced install (Nix), per-project MCP overrides, the codemode image pipeline, classifier models and terminal status reporting. The breaking change highlighted here sits in v1.0.3: the Azure provider renamed from azure-openai-responses to azure. Everything below comes from the official release notes, with no speculation.

Five-release timeline (Beijing time)

Version Published (UTC) Beijing time Keywords
v1.0.1 10-03 16:14 10-04 00:14 Nix install, MCP overrides, CIMD
v1.0.2 10-04 00:56 10-04 08:56 sampling by thinking level
v1.0.3 10-05 08:38 10-05 16:38 Azure rename (breaking), Foundry Chat Completions
v1.0.4 10-05 22:03 10-06 06:03 tool patterns, --no-mcp, MCP OAuth fix
v1.1.0 10-07 22:26 10-08 06:26 program status, Claude Haiku 5.5, GPT-6 Luna

Install and login: smoother entry, fewer blocks

v1.0.1 added Nix installs: nix run github:earendil-works/pi/stable runs the latest release, nix profile add installs it permanently. The same release added a copy key (default ctrl+x) to OAuth sign-in screens in /login, /mcp and /mcp login, copying the sign-in URL when the browser cannot open or the wrapped link cannot be selected. v1.0.4 fixed MCP OAuth failing with invalid_redirect_uri on servers with OpenID Connect client registration such as mcp.modem.dev — pi now registers as a native client.

MCP: per-project control becomes the main line

  • Project overrides (v1.0.1): .pi/mcp.json and /mcp enable, disable or change the exposure of a user-level server for one project.
  • A new registration path (v1.0.1): oauth.clientRegistration: "cimd" lets authorization servers allow pi by its Client ID Metadata Document URL instead of dynamic registration.
  • Tool filtering (v1.0.4): --tools and --exclude-tools accept * patterns (e.g. 'mcp__radius__*' keeps one server's tools); --tools now keeps MCP tools unless an entry starts with mcp__; --no-mcp turns MCP off for one run.
  • Session shutdown (v1.0.4): fixed MCP session shutdown returning while a server was still connecting, leaving its transport open until timeout.

Developers and codemode: a much thicker image and classifier stack

  • Images (v1.0.3/1.0.4): codemode's image() now writes each image to a temp file and names the path in the result so later turns can copy or move it; tools.read() on an image file resolves to an image block that image() can show.
  • Classifier models (v1.0.1/1.1.0): Cloudflare's Clef and Clef-Flash are usable from codemode scripts and extensions; GPT-6 Luna arrives as a classifier through the Decisions API, and models.classify() accepts images for classifiers that support them; Julia-1, Laya, Kev, lev and OpenJev on llama.cpp 0.6.0+ run natively as decision models.
  • Observability (v1.1.0): terminals and agent dashboards supporting OSC 7501 can see whether pi is working, blocked on a dialog or login, done, or failed; the tool render context and tool_execution_end extension events gain durationMs (recorded execution time of a final tool result), plus outputPad.
  • Tool selection (v1.1.0): --tools accepts +name/-name entries that adjust the default selection instead of replacing it (e.g. pi -t +codemode,-write).
  • Sampling (v1.0.2): samplingParamsByThinkingLevel in models.json overrides parameters such as temperature and top_p per thinking level on OpenAI-compatible APIs.
  • Rendering (v1.0.1): pi.registerToolRenderer() draws calls to tools that are not registered yet, such as MCP tools in resumed sessions.

Models

Claude Haiku 5.5 (anthropic/claude-haiku-5-5, adaptive thinking up to xhigh/max) lands in v1.1.0; on Azure, v1.0.3 serves Foundry Chat Completions deployments starting with azure/deepseek-v4-pro.

Upgrade boundaries: Azure migration and other cautions

  • Azure provider rename (v1.0.3, breaking): azure-openai-responses becomes azure. Rename the provider key in auth.json (or run /login again), and update models.json and settings.json (defaultProvider, enabledModels patterns, modelThinkingLevels keys). Sessions that used the old provider fall back to another model when resumed and their prompt cache is not reused; AZURE_OPENAI_* environment variables are unchanged.
  • Key bindings (v1.0.3): Home/End now always move the editor cursor to line start/end; fullscreen transcript top/bottom moved to Ctrl+Home/Ctrl+End.
  • Output file permissions (v1.0.3): output files (full text of truncated tool output, binary MCP resources, codemode images) are now readable only by the user.
  • The official notes publish no performance numbers, so this article makes none; nor do Pi's releases automatically resolve any particular local deployment — follow the official docs for environment-specific issues.

Sources