vault / earendil-pi / v1.0.1
earendil-pi @ v1.0.1
integrity
- size
- 8.1 MiB
- downloaded
- last checked
source https://github.com/earendil-works/pi · temporary_down
release notes
New Features
- Nix flake —
nix run github:earendil-works/pi/stableruns the latest release, andnix profile add github:earendil-works/pi/stableinstalls it. See Install pi. - Project overrides for MCP servers —
.pi/mcp.jsonand/mcpcan enable, disable, or change the exposure of a user-level server for one project. See Configure servers. - MCP Client ID Metadata Documents —
oauth.clientRegistration: "cimd"lets authorization servers allow pi by its document URL instead of dynamic registration. See Authenticate with OAuth. - Tool renderers for any tool —
pi.registerToolRenderer()draws calls to tools that are not registered yet, such as MCP tools in resumed sessions. See Tool rendering. - Cloudflare Clef classifiers —
@cf/cloudflare/clefand@cf/cloudflare/clef-flashare usable from codemode scripts and extensions. See Use classifier models.
Added
- Added a copy key (
app.message.copy, defaultctrl+x) to OAuth sign-in screens in/login,/mcp, and/mcp login, which copies the sign-in URL when the browser cannot be opened or the wrapped link cannot be selected. - Added
oauth.clientRegistration: "cimd"for MCP servers, which identifies pi with its Client ID Metadata Document on pi.dev instead of dynamic client registration, so authorization servers can allow pi by URL (#10302) - Added project overrides for user-level MCP servers: a
.pi/mcp.jsonentry withoutcommandorurlsets onlyenabled,exposure, andtoolExposureof the user-level server, and/mcpcan enable or disable a server for the current project (#10277) - Added Cloudflare's Clef and Clef Flash classifier models to
cloudflare-workers-ai, usable from codemode scripts and extensions (#10316 by @ndisidore, #10322 by @RealAlexandreAI) - Added
pi.registerToolRenderer(), which chooses how calls to a tool are drawn, including tools that are not registered (#10285) - Added a Nix flake for macOS and Linux:
nix run github:earendil-works/pi/stableruns the latest release, andnix profile add github:earendil-works/pi/stableinstalls it. See Install pi (#9137)
Changed
pi updateon global npm installations now recommends migrating to the managed installation from the pi.dev installer, which pins all dependencies.- Anthropic tools added or redefined mid-conversation are now defined inline in the conversation, so redefining a tool under the same name keeps the prompt cache instead of resending the full tool list.
Fixed
- Fixed installations resolving vulnerable
brace-expansion5.0.9 by pinningbrace-expansion5.0.12 as a direct dependency (GHSA-q2hr-2g5m-vwhr, GHSA-qhr7-859c-m2p7, GHSA-6j4f-fj2g-mc7p) (#10288) - Fixed a trailing comma in
--modelsadding an extra model to the model cycle (#10334) - Fixed a
codemodescript that prints in a loop crashing pi by running out of memory: a script fails once its output passes 16 Mi characters or 100000 items (#10283) - Fixed JPEG, GIF, and WebP images rendered by extensions through
Imagenot appearing in Kitty, Ghostty, WezTerm, and Warp (#10292) - Fixed MCP tool calls in resumed sessions and HTML exports rendering fully expanded until their server connected, or for good if it never did (#10285)
- Fixed fullscreen Kitty images collapsing to a one-row strip after scrolling in WezTerm (#10319)
- Fixed "Selected model is at capacity" provider errors ending the turn instead of being retried (#10278)
- Fixed Cloudflare AI Gateway Claude models failing with a 404 by using dashed model IDs (
claude-opus-5-5instead ofclaude-opus-5.5) - Fixed Sign in with ChatGPT continuing when its callback port is taken by another login, which made the browser show "OAuth state mismatch"; it now fails with a port-in-use error (#10265)
- Fixed Amazon Bedrock OpenAI models costing requests above 272k input tokens at the short-context rate; Bedrock models now include the pricing tiers listed on models.dev (#10326)
- Fixed Amazon Bedrock Claude requests failing with "Invalid
signatureinthinkingblock" after the system prompt or tools changed (#10324) - Fixed Together DeepSeek V4 Pro losing its thinking level controls after Together renamed it to
deepseek-ai/DeepSeek-V4-Pro-0813(#10336 by @cv) - Fixed the default NVIDIA model pointing at
nvidia/nemotron-3-super-120b-a12b, which NVIDIA no longer serves; the default is nownvidia/nemotron-3-ultra-550b-a55b
Removed
- Removed
npm-shrinkwrap.jsonfrom the published package. npm installations no longer pin transitive dependencies, and library consumers can now override them. Use the pi.dev installer for pinned installations (#5653)
download
unix · zip
curl -fL -o v1.0.1.zip https://ratatoskr.space/pkg/earendil-pi/v1.0.1.zip
printf '%s %s\n' '0d836f088cfcbb5a97a86cf9465f7bfbcaf3392b1e2b899dcf843d5440b8107e' 'v1.0.1.zip' | sha256sum -c -
windows · zip
$url = "https://ratatoskr.space/pkg/earendil-pi/v1.0.1.zip"
$out = "v1.0.1.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "0d836f088cfcbb5a97a86cf9465f7bfbcaf3392b1e2b899dcf843d5440b8107e") { throw "sha256 mismatch" }
unix · tar.gz
curl -fL -o v1.0.1.tar.gz https://ratatoskr.space/pkg/earendil-pi/v1.0.1.tar.gz
printf '%s %s\n' '7feb2c2b5b68fffebcf731af86d028d773cf8a784debb8b63f11c85b75b171d1' 'v1.0.1.tar.gz' | sha256sum -c -
windows · tar.gz
$url = "https://ratatoskr.space/pkg/earendil-pi/v1.0.1.tar.gz"
$out = "v1.0.1.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "7feb2c2b5b68fffebcf731af86d028d773cf8a784debb8b63f11c85b75b171d1") { throw "sha256 mismatch" }
download via yggdrasil mesh
unix · zip
curl -fL -o v1.0.1.zip http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/earendil-pi/v1.0.1.zip
printf '%s %s\n' '0d836f088cfcbb5a97a86cf9465f7bfbcaf3392b1e2b899dcf843d5440b8107e' 'v1.0.1.zip' | sha256sum -c -
windows · zip
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/earendil-pi/v1.0.1.zip"
$out = "v1.0.1.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "0d836f088cfcbb5a97a86cf9465f7bfbcaf3392b1e2b899dcf843d5440b8107e") { throw "sha256 mismatch" }
unix · tar.gz
curl -fL -o v1.0.1.tar.gz http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/earendil-pi/v1.0.1.tar.gz
printf '%s %s\n' '7feb2c2b5b68fffebcf731af86d028d773cf8a784debb8b63f11c85b75b171d1' 'v1.0.1.tar.gz' | sha256sum -c -
windows · tar.gz
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/earendil-pi/v1.0.1.tar.gz"
$out = "v1.0.1.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "7feb2c2b5b68fffebcf731af86d028d773cf8a784debb8b63f11c85b75b171d1") { throw "sha256 mismatch" }
| artifact | format | size | hashes |
|---|---|---|---|
| v1.0.1.zip | zip | 8.2 MiB |
blake3-24 7ee4f75f00f7c21ca98cb0aac52dc0fee80e5246e3b89900
sha256 0d836f088cfcbb5a97a86cf9465f7bfbcaf3392b1e2b899dcf843d5440b8107e
sha1 f793a98ae3fd043793ce189492088fa9465b6784
|
| v1.0.1.tar.gz | tar.gz | 7.2 MiB |
blake3-24 0e63755434391cda9293cb6b73272b51e0bca6a20c655090
sha256 7feb2c2b5b68fffebcf731af86d028d773cf8a784debb8b63f11c85b75b171d1
sha1 31df8b07657c9f33ca7ccc28365ab5838b98e985
|
install
bazel
http_archive(
name = "earendil-pi",
urls = ["https://ratatoskr.space/pkg/earendil-pi/v1.0.1.tar.gz"],
integrity = "sha256-f+ssK1to//689zGvhtAo13PPinhN67i2PxHIW3WxcdE=",
strip_prefix = "earendil-pi-v1.0.1",
)
zig
.url = "https://ratatoskr.space/pkg/earendil-pi/v1.0.1.tar.gz",
install via yggdrasil mesh
bazel
http_archive(
name = "earendil-pi",
urls = ["http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/earendil-pi/v1.0.1.tar.gz"],
integrity = "sha256-f+ssK1to//689zGvhtAo13PPinhN67i2PxHIW3WxcdE=",
strip_prefix = "earendil-pi-v1.0.1",
)
zig
.url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/earendil-pi/v1.0.1.tar.gz",