Tool pages / Pi coding agent
Pi coding agent 1.1.0: latest version, --tools modifiers and gotchas
Latest: Pi coding agent 1.1.0, released (release notes).
The latest Pi coding agent (pi, npm @earendil-works/pi-coding-agent) is 1.1.0, released 2026-10-07 22:26 UTC. Upgrade with npm i -g --ignore-scripts @earendil-works/pi-coding-agent@latest or the pi.dev curl installer. Our sandbox diff against 1.0.4 adds +name/-name tool modifiers to --tools (pi -t +codemode); the diff against 1.0.0 adds --no-mcp. Recent breaking changes include renaming the Azure provider from azure-openai-responses to azure (in 1.0.3) and removing npm-shrinkwrap.json from npm packages (in 1.0.1).
How do I install or upgrade to Pi coding agent 1.1.0?
npm:
npm i -g --ignore-scripts @earendil-works/pi-coding-agent@latest
pi --version # 1.1.0Standalone installer (macOS, Linux):
curl -fsSL https://pi.dev/install.sh | shNix flake (macOS, Linux):
nix profile add github:earendil-works/pi/stableBuilt-in updater:
pi update selfPin a version:
npm i -g --ignore-scripts @earendil-works/pi-coding-agent@1.0.4Pi coding agent key facts
- Latest release: 1.1.0 on 2026-10-07 22:26 UTC (GitHub tag
v1.1.0; npm publish 22:16 UTC). Previous stable releases: 1.0.4 on 2026-10-05, 1.0.3 on 2026-10-05, 1.0.2 on 2026-10-04, 1.0.1 on 2026-10-03. - The 1.0.4 to 1.1.0 help diff adds
+nameand-nametool modifiers to--tools(pi -t +codemode). The 1.1.0 release notes also add OSC 7501 program status reporting, GPT-6 Luna classifier support, Claude Haiku 5.5, and full-flow timeout coverage forpi mcp login --timeout. - 1.0.0 to 1.1.0 adds
--no-mcpto disable built-in MCP servers and tools for a single run, and wildcard glob patterns in--toolsand--exclude-tools. - 1.0.3 renamed the Azure provider from
azure-openai-responsestoazure(pi --provider azure); older configurations must be updated inauth.json,models.json, andsettings.json. - Earendil Works shipped 6 stable Pi releases in October 2026, 9 in September 2026, and 5 in August 2026.
- MIT licence; 113,986 GitHub stars on 2026-10-10.
What changed in the last 5 Pi coding agent releases?
Pi coding agent 1.1.0 (2026-10-07 22:26 UTC)
- Add
+nameand-nameentries to--toolsto modify the default tool set instead of replacing it (e.g.pi -t +codemode). (source) - Report terminal and agent status via OSC 7501, overrideable with
PI_PROGRAM_STATUS=1|0, and addabortedtoagent_settledevents. (source) - Enforce full sign-in timeout across authorization server requests in
pi mcp login --timeout. (source) - Add OpenAI GPT-6 Luna classifier support via Decisions API and native llama.cpp classifier models through
/v1/systemone. (source) - Add Claude Haiku 5.5 (
anthropic/claude-haiku-5-5) with adaptive thinking up toxhigh/maxeffort and Bedrock prompt caching. (source) - Stop standalone binaries from leaking
.env,.env.local, and.env.developmentinto Pi's process environment. (source)
Pi coding agent 1.0.4 (2026-10-05 22:03 UTC)
- Add
--no-mcpto disable built-in MCP server connections and tools for one run. (source) - Support wildcard
*patterns in--toolsand--exclude-tools, and keep MCP tools in--toolsunless an entry begins withmcp__. (source) - Freeze JavaScript built-in prototypes before executing
codemodescripts to prevent mutation crashes. (source) - Fix syntax highlighting losing color after the first line of multiline strings in fenced code blocks. (source)
- Register native client redirect URIs for MCP OAuth servers using OpenID Connect client registration. (source)
Pi coding agent 1.0.3 (2026-10-05 08:38 UTC)
- Rename Azure provider from
azure-openai-responsestoazure, and add Azure Foundry Chat Completions support starting withazure/deepseek-v4-pro. (source) - Save
codemodeimages fromimage()to temporary files and return paths for subsequent turns. (source) - Move cursor line start/end navigation unconditionally to
Home/End, relocating fullscreen transcript top/bottom toCtrl+Home/Ctrl+End. (source) - Restrict permissions on output files (truncated tool logs, binary MCP resources, generated images) to the current user. (source)
- Fix
setRawMode EIOterminal teardown crashes when windows close or backgrounded sessions resume in dead terminals. (source)
Pi coding agent 1.0.2 (2026-10-04 00:56 UTC)
Pi coding agent 1.0.1 (2026-10-03 16:14 UTC)
- Publish official Nix flake (
nix run github:earendil-works/pi/stableandnix profile add). (source) - Remove
npm-shrinkwrap.jsonfrom published package so npm installs no longer pin transitive dependencies. (source) - Allow project-level overrides in
.pi/mcp.jsonto change exposure of user-level MCP servers without redefining them. (source) - Add MCP Client ID Metadata Document support (
oauth.clientRegistration: "cimd") for URL-based client registration. (source) - Add
pi.registerToolRenderer()to draw tool calls before custom or resumed MCP tools finish registering. (source) - Add Cloudflare Clef and Clef Flash classifier models to
cloudflare-workers-ai. (source)
Which Pi coding agent commands and flags were added or removed?
Pi coding agent 1.0.4 → 1.1.0
0 commands added, 0 removed, 0 commands with flags added or removed; 1 help pages changed in any way.
Method: bin/tool-snapshot ran --help for every pi subcommand of both versions in a throwaway Linux sandbox (14 and 14 help pages), then bin/tool-diff compared them. Hidden flags do not appear in --help.
- Help text for
--tools, -tin rootpi --helpaddsOnly +name/-name entries add to or remove from the defaultsand documentspi --tools +codemode. - No subcommands or new top-level command-line flags were added; flag syntax within
--toolswas expanded to support+nameand-namemodifiers.
Pi coding agent 1.0.0 → 1.1.0
0 commands added, 0 removed, 1 commands with flags added or removed; 1 help pages changed in any way.
Method: bin/tool-snapshot ran --help for every pi subcommand of both versions in a throwaway Linux sandbox (14 and 14 help pages), then bin/tool-diff compared them. Hidden flags do not appear in --help.
| Command | Flags added | Flags removed |
|---|---|---|
pi | --no-mcp | none |
--no-mcpwas added in 1.0.4 to disable MCP server initialization and tool exposure for a single run.- 1.0.4 also introduced wildcard
*patterns for--toolsand--exclude-tools, while 1.1.0 introduced+nameand-nametool modifiers.
What breaks when upgrading Pi coding agent, and how do I migrate?
| Version | Change | Migration |
|---|---|---|
| 1.0.3 | The Azure provider was renamed from azure-openai-responses to azure. | Update provider names from azure-openai-responses to azure in auth.json, models.json, and settings.json (defaultProvider, enabledModels, modelThinkingLevels). Pass --provider azure instead of --provider azure-openai-responses. Existing AZURE_OPENAI_* environment variables remain unchanged. Fix page |
| 1.0.1 | Removed npm-shrinkwrap.json from the published npm package @earendil-works/pi-coding-agent. | Global npm install -g @earendil-works/pi-coding-agent no longer pins transitive dependencies. For strictly reproducible and pinned installations, install using the official script curl -fsSL https://pi.dev/install.sh | sh or the Nix flake nix profile add github:earendil-works/pi/stable. |
| 0.87.0 | Removed the deprecated shouldStopAfterTurn agent callback option in @earendil-works/pi-agent-core. | In extensions and TypeScript SDK consumers, replace shouldStopAfterTurn with finishTurn and return { action: "end" }. finishTurn also receives error and aborted turn boundaries; return undefined for those exits to preserve default behavior. |
What Pi coding agent errors did we reproduce, and how do I fix them?
Fix pages (one error each, with a reproduction): Error: --tools: tool names cannot be mixed with +name or -name entries, Error: Unknown provider "azure-openai-responses". Use --list-models to see available providers/models..
Mixing plain tool names with `+name` or `-name` in `--tools` fails with validation error (Pi coding agent 1.1.0 and later)
pi --tools read,+codemode -p "test"Error: --tools: tool names cannot be mixed with +name or -name entriesFix: Use either an explicit allowlist of plain names (pi --tools read,bash,codemode) or modifiers alone to adjust the defaults (pi --tools +codemode or pi --tools -bash). (source)
Fix page: /fixes/pi-tools-cannot-mix-modifiers
Passing wildcard `*` patterns to `+name` or `-name` modifiers in `--tools` is rejected (Pi coding agent 1.1.0 and later)
pi --tools "+mcp*" -p "test"Error: --tools: +name and -name entries take exact tool names, not patterns: +mcp*Fix: Use exact tool names with + or - prefixes (e.g. pi --tools +codemode). If wildcard matching is needed to select specific MCP server tools, pass plain patterns without the modifier prefix: pi --tools 'read,bash,mcp__radius__*'. MCP tools remain enabled unless an entry starts with mcp__. (source)
Passing legacy `--provider azure-openai-responses` fails with unknown provider error (Pi coding agent 1.0.3 and later)
pi --provider azure-openai-responses --model gpt-4o -p "test"Error: Unknown provider "azure-openai-responses". Use --list-models to see available providers/models.Fix: Replace azure-openai-responses with azure: pi --provider azure --model gpt-4o. Update provider keys in auth.json, models.json, and .pi/settings.json. (source)
Passing `--no-mcp` on versions older than 1.0.4 fails with unknown option (Pi coding agent 1.0.3 and earlier)
pi --no-mcp -p "test"Error: Unknown option: --no-mcpFix: Upgrade to @earendil-works/pi-coding-agent 1.0.4 or later where --no-mcp is supported. On older versions, exclude individual MCP tools using --exclude-tools 'mcp__*' or disable servers in .pi/mcp.json. (source)
Running headless `pi -p` without credentials fails with missing API key (Pi coding agent 1.1.0 (observed))
pi -p "test"No API key found for the selected model.
Use /login to log into a provider via OAuth or API key. See:
/usr/local/lib/node_modules/@earendil-works/pi-coding-agent/docs/providers.md
/usr/local/lib/node_modules/@earendil-works/pi-coding-agent/docs/models.mdFix: Set the provider's environment variable (e.g. export ANTHROPIC_API_KEY="..." or export OPENAI_API_KEY="..."), or run pi /login in an interactive terminal to store credentials. (source)
Running `pi auth check` without provider or model flags exits with code 2 (Pi coding agent 1.0.0 and later)
pi auth checkError: Auth checks require --provider <provider> or --model <model>Fix: Specify --provider <name> or --model <pattern>: pi auth check --provider anthropic or pi auth check --model claude-sonnet. (source)
Pi coding agent release history by month
2026-10: 1.0.0 to 1.1.0 (6 releases)
- 1.1.0 (2026-10-07) added
--tools+name/-namemodifiers, OSC 7501 status reporting, GPT-6 Luna classifier, and Claude Haiku 5.5. (source) - 1.0.4 added
--no-mcpand wildcard pattern matching for--toolsand--exclude-tools. (source) - 1.0.3 renamed the Azure provider to
azureand added Azure Foundry Chat Completions. (source) - 1.0.0 launched stable 1.0 with fullscreen TUI by default and hardened MCP OAuth. (source)
2026-09: 0.85.0 to 0.99.2 (9 releases)
2026-08: 0.84.0 to 0.84.4 (5 releases)
- 0.84.0 introduced fullscreen TUI mode with sticky editor, Mermaid diagram and LaTeX rendering, and per-directory
AGENTS.override.md. (source)
2026-07: 0.80.5 to 0.83.0 (11 releases)
- 0.83.0 added external client credential export (
pi auth print-api-key,pi auth print-bearer-token) and Claude Opus 5 on GitHub Copilot. (source)
2026-06: 0.78.1 to 0.80.3 (16 releases)
- 0.80.3 added Anthropic Claude Sonnet 5 support, configurable
outputPadspacing, and RPC session tree inspection (get_entries,get_tree). (source)
2026-05: 0.71.1 to 0.78.0 (17 releases)
- 0.78.0 added named startup sessions (
--name/-n) and OSC 8 clickablefile://hyperlinks for file tools. (source)
Sources
- earendil-works/pi releases (GitHub API) (read 2026-10-10)
- @earendil-works/pi-coding-agent on the npm registry (read 2026-10-10)
- Pi coding agent 1.1.0 release notes (read 2026-10-10)
- Pi coding agent 1.0.4 release notes (read 2026-10-10)
- Pi coding agent 1.0.3 release notes (read 2026-10-10)
- Pi coding agent 1.0.2 release notes (read 2026-10-10)
- Pi coding agent 1.0.1 release notes (read 2026-10-10)
- Pi coding agent 1.0.0 release notes (read 2026-10-10)
- PR #9714: rename azure-openai-responses provider to azure (read 2026-10-10)
- PR #9776: add samplingParamsByThinkingLevel to models.json (read 2026-10-10)
- PR #9137: add official Nix flake for pi (read 2026-10-10)
- PR #10316: add Cloudflare Clef classifier models (read 2026-10-10)
- PR #10382: add llama.cpp decision models as classifiers (read 2026-10-10)
- Issue #10607: OSC 7501 program status reporting and aborted event (read 2026-10-10)
- Issue #10565: MCP login timeout for full authorization flow (read 2026-10-10)
- Issue #10473: prevent standalone binaries loading local .env files into process env (read 2026-10-10)
- Issue #10444: freeze JS built-in prototypes before running codemode scripts (read 2026-10-10)
- Issue #10493: register native client redirect URIs for MCP OAuth servers (read 2026-10-10)
- Issue #10310: save codemode generated images to temporary files (read 2026-10-10)
- Issue #10314: move editor line start/end navigation to Home/End (read 2026-10-10)
- Issue #10302: MCP Client ID Metadata Documents support (read 2026-10-10)
- Issue #10285: add pi.registerToolRenderer for unregistered tools (read 2026-10-10)
- Issue #10277: support project overrides for user-level MCP servers (read 2026-10-10)
- Issue #5653: remove npm-shrinkwrap.json from published package (read 2026-10-10)
- Issue #10143: syntax highlighting multiline string color fix (read 2026-10-10)
- Pi coding agent quickstart documentation at v1.1.0 (read 2026-10-10)
- Pi coding agent models documentation at v1.0.2 (read 2026-10-10)
- Pi agent core changelog at v1.0.0 (read 2026-10-10)
- Pi coding agent settings documentation at v1.1.0 (read 2026-10-10)
- earendil-works/pi repository (stars, MIT licence) (read 2026-10-10)
- Official Pi website (read 2026-10-10)
Last verified: 2026-10-10.