Skip to content

chore(deps): update ⬆️ mise-packages - #1113

Merged
renovate[bot] merged 2 commits into
mainfrom
renovate/mise-packages
Oct 15, 2026
Merged

renovate[bot] merged 2 commits into
mainfrom
renovate/mise-packages

Conversation

@renovate

@renovate renovate Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Type Update Change Pending Age Adoption Passing Confidence
aqua:ast-grep/ast-grep tools minor 0.45.3 → 0.50.0 age adoption passing confidence
aqua:astral-sh/uv tools minor 0.12.23 → 0.13.0 0.13.1 age adoption passing confidence
aqua:direnv/direnv tools patch 2.38.1 → 2.38.2 age adoption passing confidence
aqua:earendil-works/pi tools minor 1.0.4 → 1.1.0 1.2.0 age adoption passing confidence
aqua:neovim/neovim tools patch 0.12.5 → 0.12.6 age adoption passing confidence
aqua:openai/codex tools minor rust-v0.160.1 → rust-v0.162.1 age adoption passing confidence
aqua:tree-sitter/tree-sitter tools patch 0.27.0 → 0.27.1 age adoption passing confidence
aqua:vercel-labs/agent-browser tools minor 0.38.2 → 0.39.0 0.39.1 age adoption passing confidence
aqua:walles/moor tools patch 2.19.2 → 2.19.4 age adoption passing confidence
bun tools patch 1.4.2 → 1.4.3 age adoption passing confidence
droid (source) minor 0.236.0 → 0.238.0 0.241.1 (+5) age adoption passing confidence
github:anthropics/claude-code tools patch v2.1.292 → v2.1.296 v2.1.300 (+1) age adoption passing confidence
github:backnotprop/plannotator tools patch v0.28.6 → v0.28.11 v0.28.20 (+7) age adoption passing confidence
github:cesarferreira/stax tools minor v0.114.0 → v0.115.0 v0.116.0 age adoption passing confidence
github:dlvhdr/gh-dash tools patch v4.26.0 → v4.26.1 age adoption passing confidence
github:dlvhdr/gh-enhance tools patch v0.8.0 → v0.8.1 age adoption passing confidence
github:github/gh-stack tools patch v0.2.0 → v0.2.1 age adoption passing confidence
go tools patch 1.27.1 → 1.27.2 age adoption passing confidence
npm:ctx7 (source) tools minor 0.5.15 → 0.6.0 0.6.1 age adoption passing confidence
npm:prettier (source) tools patch 3.9.9 → 3.9.10 age adoption passing confidence

Release notes are maintained in a PR comment by the renovate-release-notes-comment workflow.


Configuration

📅 Schedule: (in timezone America/Los_Angeles)

  • Branch creation
    • Between 03:00 AM and 05:59 AM (* 3-5 * * *)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
renovate Bot requested a review from scottames as a code owner October 14, 2026 12:06
@renovate
renovate Bot enabled auto-merge (squash) October 14, 2026 12:07
@scottames-github-bot

scottames-github-bot Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

Renovate Release Notes

Generated from Renovate's update table by the renovate-release-notes-comment workflow.

Packages that cannot be summarized from GitHub releases are listed explicitly below.

ast-grep/ast-grep (aqua:ast-grep/ast-grep)

0.50.0: 0.50.0

Compare Source

  • feat(outline): add Java annotation type and element rules #2955
  • fix(outline): report Java private/protected fields in the outline #2950
  • feat(outline): add Java enum member rule #2954
  • chore(deps): update dependency @​types/node to v24.19.1 #2983
  • chore(deps): update dependency dprint to v0.60.1 #2984
  • feat(outline): add Java module declaration rule #2956
  • chore(deps): update rust crate termimad to v0.35.5 #2925
  • chore(deps): update rust crate napi-derive to v3.6.10 #2936
  • chore(deps): update dependency @​napi-rs/cli to v3.10.6 #2922
  • chore(deps): update dependency chalk to v6.0.1 #2979
  • chore(deps): update rust crate tokio to v1.53.2 #2981
  • chore(deps): update rust crate thiserror to v2.0.21 #2966
  • chore(deps): update dependency oxlint to v1.86.0 #2967
  • chore(deps): update rust crate smallvec to v1.16.2 #2968
  • feat(outline): add Java wildcard-import outline rules #2948
  • fix(outline): capture C/C++ declarator identifier names #2946
  • feat(cli): add trust and revoke custom language policies #2972
  • refactor(cli): extract custom language policy #2977
  • feat(cli): add custom language loading policy #2971
  • fix(schema): reject null relation fields #2969
  • chore(deps): update rust crate clap_complete to v4.6.11 #2965
  • chore(deps): update rust crate clap to v4.6.7 #2964
  • chore(deps): update rust crate napi to v3.13.0 #2932
  • chore(deps): update dependency @​types/node to v24.13.6 #2941
  • feat(language): add Zig support #2942
  • fix: require opt-in for custom language libraries #2960
  • refactor: parse default run through app #2962
  • feat(outline): add Java record_declaration rule #2945
  • chore(deps): update rust crate toml_edit to v0.25.15 #2937
  • chore(deps): update rust crate smallvec to v1.16.1 #2920
  • chore(deps): update dependency @​types/node to v24.13.4 #2931
  • chore(deps): update dependency dprint to v0.57.4 #2926
  • chore(deps): update dependency oxlint to v1.82.0 #2928
  • chore(deps): update dependency oxlint to v1.81.0 #2919
  • chore(deps): update rust crate termimad to v0.35.3 #2921
  • chore(deps): update dependency dprint to v0.57.1 #2923
  • chore(deps): update dependency @​ast-grep/napi to v0.45.3 #2918
  • feat(outline): add Java record_declaration rule (#2945) #2944
astral-sh/uv (aqua:astral-sh/uv)

0.13.0: 0.13.0

Compare Source

Release Notes

Released on 2026-10-09.

uv 0.13.0 makes Python 3.15 the default stable Python version. We've also included several breaking changes to improve correctness, performance, and compatibility, described below.

We expect most users to be able to upgrade without making changes.

While not a breaking change, this release also updates the format of many of uv's cache entries to improve performance. uv may download or rebuild dependencies after upgrading, because some cached entries from earlier versions cannot be reused. Multiple versions of uv can still safely share the same cache directory.

There are no breaking changes to the configuration of the uv build backend. If your [build-system] table includes an upper bound on uv_build, update it to allow uv_build 0.13, e.g., uv_build>=0.13.0,<0.14.

Breaking changes

  • Use Python 3.15 as the default stable version

    The default stable Python version has changed from 3.14 to 3.15. This affects Python downloads when no version is requested or pinned, e.g., when running uv python install.

    uv continues to use compatible Python installations that are already present. For example, uv venv can still use an installed Python 3.14. If no suitable interpreter is installed and automatic downloads are enabled, commands such as uv venv and uvx python can now download Python 3.15.

    You can opt out of this behavior by requesting Python 3.14 explicitly, e.g., uv venv --python 3.14. For projects, use uv python pin 3.14 to record the version in .python-version.

  • Honor --require-hashes in included constraints files (#22275)

    Previously, uv ignored --require-hashes in constraints files included with -c from a requirements file. Now, uv honors the directive and requires hashes for all requirements in the installation. Installs that previously succeeded can now fail if a requirement is missing a hash.

    You cannot opt out while the directive is present. Add the missing hashes to your requirements, or remove the --require-hashes directive from the included constraints file if hash checking is not intended.

  • Prefer native Python on Windows ARM64 (#22100)

    Previously, ARM64 builds of uv preferred emulated x86_64 Python installations because native wheel support was limited. Now, uv prefers native ARM64 (aarch64) interpreters across Python versions.

    This follows similar changes in CPython, the official Windows Python install manager, and GitHub's actions/setup-python.

    When a native interpreter is unavailable, uv continues to fall back to x86_64, then 32-bit x86.

    You can opt out of this behavior by setting UV_PYTHON_ARCH=x86_64 or requesting an explicit architecture, e.g., cpython-3.14-windows-x86_64. If you are using setup-uv, you can set python-arch: x86_64 instead.

  • Reject editable requirements in included constraints files (#22282)

    Previously, uv silently ignored editable (-e) requirements in constraints files included with -c from a requirements file. Now, uv rejects these requirements with an error, matching pip's behavior.

    You cannot opt out of this behavior. Move editable requirements to a requirements file passed with -r, or pass them directly with --editable, instead of including them in a constraints file.

  • Omit the distutils startup patch on Python 3.10 and later (#22096)

    Previously, uv installed _virtualenv.py and _virtualenv.pth into every new virtual environment to prevent distutils configuration from changing installation paths. Now, like virtualenv 21.6.0, uv omits these files on Python 3.10 and later, which already ignore the affected configuration keys. This reduces Python startup overhead. Python 3.9 and earlier retain the patch.

    You cannot opt out of this behavior. Existing virtual environments are not modified automatically. Recreate an environment with Python 3.10 or later to remove the patch.

    This stabilizes the no-distutils-patch preview feature.

  • Treat requirement-file option values as single paths (#22290)

    Previously, uv split values passed to --constraint, --override, --exclude, and --build-constraint on spaces, even when quoted. Now, each value is treated as a single path, allowing file paths containing spaces.

    You cannot opt out of this behavior. Repeat the option to provide multiple files. For example, replace -c "a.txt b.txt" with -c a.txt -c b.txt.

    Space-separated lists in UV_CONSTRAINT, UV_OVERRIDE, UV_EXCLUDE, and UV_BUILD_CONSTRAINT remain supported.

  • Use tar-codec for tar archives by default (#22094)

    Previously, uv used astral-tokio-tar to extract tar archives, build source distributions with uv_build, and read their metadata for uv publish. Now, uv uses tar-codec, which applies stricter validation when reading archives.

    uv may now reject archives containing hard links or unsupported tar extensions that previous versions accepted. Source distributions created by uv_build can also have different archive bytes and hashes.

    You can opt out of this behavior by setting UV_LEGACY_TAR_BACKEND=1.

    This stabilizes the tar-codec preview feature.

  • Reject uv build --clear output directories that contain a build source
    (#22276)

    Previously, uv build --clear could delete a project or input source distribution when the
    output directory contained the source. Now, uv rejects these output directories, including
    equivalent paths reached through symlinks, before clearing any build output.

    Select an output directory that does not contain any build sources, or omit --clear.

Python

Preview features

  • Require hashes for build dependencies, including transitive dependencies, with --require-build-hashes (#21411)

Performance

  • Speed up revalidation of cached HTTP responses by avoiding rewrites of unchanged payloads (#22130)
  • Reduce allocations when reading cached HTTP responses (#22136)
  • Reduce cache storage for HTTP policies and package records (#22135, #22133)
  • Reduce allocations for cached source distribution revisions (#22131)

Bug fixes

  • Avoid overlong wheel cache lock filenames on Windows (#22134)

Install uv 0.13.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/uv/releases/download/0.13.0/uv-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://releases.astral.sh/github/uv/releases/download/0.13.0/uv-installer.ps1 | iex"

Download uv 0.13.0

File Platform Checksum
uv-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
uv-x86_64-apple-darwin.tar.gz Intel macOS checksum
uv-aarch64-pc-windows-msvc.zip ARM64 Windows checksum
uv-i686-pc-windows-msvc.zip x86 Windows checksum
uv-x86_64-pc-windows-msvc.zip x64 Windows checksum
uv-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
uv-i686-unknown-linux-gnu.tar.gz x86 Linux checksum
uv-powerpc64le-unknown-linux-gnu.tar.gz PPC64LE Linux checksum
uv-riscv64gc-unknown-linux-gnu.tar.gz RISCV Linux checksum
uv-s390x-unknown-linux-gnu.tar.gz S390x Linux checksum
uv-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
uv-armv7-unknown-linux-gnueabihf.tar.gz ARMv7 Linux checksum
uv-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
uv-i686-unknown-linux-musl.tar.gz x86 MUSL Linux checksum
uv-riscv64gc-unknown-linux-musl.tar.gz RISCV MUSL Linux checksum
uv-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum
uv-arm-unknown-linux-musleabihf.tar.gz ARMv6 MUSL Linux (Hardfloat) checksum
uv-armv7-unknown-linux-musleabihf.tar.gz ARMv7 MUSL Linux checksum

Verifying GitHub Artifact Attestations

The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:

gh attestation verify <file-path of downloaded artifact> --repo astral-sh/uv

You can also download the attestation from GitHub and verify against that directly:

gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>

0.12.24: 0.12.24

Compare Source

Release Notes

Released on 2026-10-08.

Enhancements

  • Remove orphaned temporary build environments with uv cache prune (#22171)
  • Accept PEP 508 marker operators directly before grouped expressions (#22309)
  • Reject malformed requirements-file options instead of partially parsing or ignoring them (#22317)
  • Show underlying filesystem and registry errors when managed Python uninstallation fails (#22362)
  • Identify the invalid source URL in Python mirror errors (#22364)

Preview features

  • Display preferred advisory IDs in uv audit reports, prioritizing PYSEC, GHSA, then CVE identifiers (#22292)

Configuration

  • Support custom installation mirrors for GraalPy (#22269)
  • Support custom installation mirrors for Pyodide (#22271)
  • Allow UV_NO_CACHE=false to override no-cache = true in configuration (#22324)
  • Report more precise error locations for invalid trusted-host ports and preview-feature list entries (#22144)

Performance

  • Speed up later commands after creating an environment by warming its interpreter cache (#21304)
  • Reduce code-signature verification work for ARM64 macOS releases with 16 KiB signature pages (#22246)
  • Enforce resource limits when parsing package indexes and --find-links pages with astral-html (#22203)
  • Reduce standalone uv-build executable size by 7.5% by omitting unused Zstandard support (#22242)
  • Reduce uv's binary size by about 232 KB by simplifying configuration deserialization (#22144)
  • Reduce Python download error formatting code size by sharing its formatter (#22141)

Bug fixes

  • Verify supplied hashes even when hash presence is disabled with --no-require-hashes or require-hashes = false (#22369)
  • Honor exact managed Python patch pins when creating script environments instead of following patch upgrades (#22360)
  • Prevent dependency overrides and constraints from activating optional dependencies when their extras are not selected (#22237)
  • Exclude optional dependencies from exports when their extras are activated only in incompatible environments (#22234)
  • Give explicit uv publish --trusted-publishing values precedence over configuration (#22279)
  • Allow UV_OFFLINE=false to override offline = true in configuration (#22283)
  • Allow UV_SYSTEM_CERTS=false to override system-certs = true in configuration (#22291)
  • Allow uv auth login over IPv6 loopback addresses (#22306)
  • Resolve GitHub dependencies whose Git references contain # or % characters (#22281)
  • Recognize existing Pyodide interpreters as satisfying Pyodide Python requests (#22322)
  • Preserve JSON output from uv version and uv self version with a single --quiet flag (#22280)
  • Preserve trailing spaces and tabs in passwords returned by subprocess keyrings (#22284)
  • Restore wheel incompatibility hints when WHEEL metadata contains multiple expanded Tag: rows (#22235)
  • Preserve Windows wheel-script rename errors unless a cross-drive copy fallback applies (#22302)
  • Prevent workspace-cache assertion failures after modifying a project at the workspace root (#22236)
  • Hide the ignored --keyring-provider option from uv auth help (#19520)
  • Report HTTP client setup failures directly when resolving unnamed uv tool requirements (#22320)

Documentation

  • Update Docker and AWS Lambda examples to cache dependency layers using frozen lockfiles without project manifests (#22172)
  • Fix stale links and descriptions in Rust crate documentation (#22311, #22361)
  • Fix a typo in the required-environments documentation (#22238)

Install uv 0.12.24

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/uv/releases/download/0.12.24/uv-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://releases.astral.sh/github/uv/releases/download/0.12.24/uv-installer.ps1 | iex"

Download uv 0.12.24

File Platform Checksum
uv-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
uv-x86_64-apple-darwin.tar.gz Intel macOS checksum
uv-aarch64-pc-windows-msvc.zip ARM64 Windows checksum
uv-i686-pc-windows-msvc.zip x86 Windows checksum
uv-x86_64-pc-windows-msvc.zip x64 Windows checksum
uv-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
uv-i686-unknown-linux-gnu.tar.gz x86 Linux checksum
uv-powerpc64le-unknown-linux-gnu.tar.gz PPC64LE Linux checksum
uv-riscv64gc-unknown-linux-gnu.tar.gz RISCV Linux checksum
uv-s390x-unknown-linux-gnu.tar.gz S390x Linux checksum
uv-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
uv-armv7-unknown-linux-gnueabihf.tar.gz ARMv7 Linux checksum
uv-aarch64-unknown-linux-musl.tar.gz ARM64 MUSL Linux checksum
uv-i686-unknown-linux-musl.tar.gz x86 MUSL Linux checksum
uv-riscv64gc-unknown-linux-musl.tar.gz RISCV MUSL Linux checksum
uv-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum
uv-arm-unknown-linux-musleabihf.tar.gz ARMv6 MUSL Linux (Hardfloat) checksum
uv-armv7-unknown-linux-musleabihf.tar.gz ARMv7 MUSL Linux checksum

Verifying GitHub Artifact Attestations

The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:

gh attestation verify <file-path of downloaded artifact> --repo astral-sh/uv

You can also download the attestation from GitHub and verify against that directly:

gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>
direnv/direnv (aqua:direnv/direnv)

v2.38.2: Release v2.38.2

Compare Source

  • fix(zsh): load the .envrc in a new shell and on cd from shell functions again (#1633, #1634)
  • fix(fish): stop completions from breaking after the first prompt (#1635, #1636)
  • fix(pixi): require_allowed for the manifest file as well (#1632)
earendil-works/pi (aqua:earendil-works/pi)

v1.1.0: v1.1.0

Compare Source

New Features

  • Program status reporting: terminals and agent dashboards that support OSC 7501 see whether Pi is working, blocked on a dialog or login, done, or failed. See Program status.
  • Claude Haiku 5.5: anthropic/claude-haiku-5-5, with adaptive thinking up to xhigh/max effort.
  • Adjust default tools with +name/-name: --tools entries like pi -t +codemode,-write change the default selection instead of replacing it. See Tools.
  • GPT-6 Luna and image classification: OpenAI's GPT-6 Luna is available as a classifier model through the Decisions API, and codemode's models.classify() accepts images for classifiers that support them. See Use classifier models.
  • Native llama.cpp decision models: Julia-1, Laya, Kev, lev, and OpenJev served by llama.cpp 0.6.0 or later run natively as classifiers through /v1/systemone. See Classification.

Added

  • Added +name and -name entries to --tools, which change the default tool selection instead of replacing it, for example pi -t +codemode
  • Added durationMs to the tool render context and to tool_execution_end extension events: the recorded execution time of a final tool result (#10549)
  • Added outputPad to the tool render context (#10557 by @​rwachtler)
  • Added OpenAI's GPT-6 Luna as a classifier model through the Decisions API, available with OPENAI_API_KEY (see Use classifier models)
  • Added images to codemode's models.classify() context, so classifiers that accept images, such as GPT-6 Luna, can judge them
  • Added program status reporting with OSC 7501: terminals and agent dashboards that support it see whether Pi is working, blocked on a dialog or login, done, or failed. PI_PROGRAM_STATUS=1|0 overrides detection (see Terminal setup) (#10607)
  • Added aborted to agent_settled session, extension, and JSON events, so integrations can tell a cancelled run from a finished one (#10607)
  • Added Claude Haiku 5.5 (anthropic/claude-haiku-5-5), with adaptive thinking up to xhigh/max effort and prompt caching on Bedrock
  • Added native llama.cpp decision models: Julia-1, Laya, Kev, lev, and OpenJev served by llama.cpp 0.6.0 or later are listed only as classifiers through /v1/systemone instead of as chat models (see Classification) (#10382)

Changed

  • Changed outputPad to also apply to ! command output, tool output, and summary blocks (#9946, #10557 by @​rwachtler)
  • Changed pi mcp login --timeout to limit the whole sign-in, including requests to the authorization server, instead of only the wait for the browser (#10565)

Fixed

  • Fixed bash and PowerShell results losing Took after reloading a session, and the live Took including wall-clock steps; both now show the recorded execution time (#10549)
  • Fixed managed installs keeping every old release; pi update now keeps only the new release and the one it updated from (#10392, #10511 by @​davidbrai)
  • Fixed standalone binaries loading .env, .env.local, and .env.development from the launch directory into Pi's environment (#10473)
  • Fixed !! command headers losing their dim color once output arrives (#10557 by @​rwachtler)
  • Fixed the codemode description not marking searchTools(), describeTool(), and describeNamespace() as async, which led models to serialize the unawaited promise as {} (#10555)
  • Fixed codemode output items running together, so models could not tell where one text() or console.log() output ended and the next began. With several text items, each now starts with a ==> text N/M <== line, and console calls follow the other output in one <console_output> block with one line per call
  • Fixed /mcp waiting for all servers to connect before opening; the manager now updates live and remains usable while enabling, reconnecting, or disabling servers (#10562)
  • Fixed images being dropped as "could not be resized" when running under node --watch on Node 24.19+ and 26.x, where Node posts its own messages on the image resize worker channel (#10527)
  • Fixed clipboard paste doing nothing in Termux, and failed copies there omitting the Termux:API install hint (#10391)
  • Fixed ! and RPC bash output keeping fragments of color codes, such as a stray m, when a code was split across output chunks (#10504)
  • Fixed MCP OAuth sign-ins that could not be cancelled while waiting on the authorization server and kept running after the session ended. The sign-in screen now cancels with Esc at every step, session shutdown aborts a running sign-in, and each request to the authorization server times out after 15 seconds (#10565)
  • Fixed shutdown waiting up to 15 seconds to refresh an MCP OAuth token that was about to expire, only to close the server's session (#10565)
  • Fixed the fullscreen text selection surviving session switches and other transcript rebuilds, which highlighted unrelated text in the new transcript (#9311, #10567 by @​christianklotz)
  • Fixed OpenAI models on Bedrock ignoring the thinking level and always running at Bedrock's default reasoning effort (#9331, #10142 by @​jsanter27)
  • Fixed model headers in models.json not overriding the originator and User-Agent headers of Codex requests (#10429 by @​lucasmeijer)
  • Fixed server_busy and servers are currently busy provider errors ending the turn instead of being retried (#10543)
  • Fixed Mistral responses that end with finish_reason: "error" not being retried (#10487)
  • Reduced context-limit request failures by estimating input at 3.5 characters per token instead of 4 when calculating output limits (#10497)
  • Fixed Radius models disabled by an organization owner still being listed
  • Fixed Anthropic browser login failing with "localhost refused to connect" when port 53692 is reserved or in use, for example by Hyper-V/WSL port exclusions on Windows: login now falls back to a free loopback port (#10571)
  • Fixed session costs undercounting long prompts on models with prompt-length pricing tiers, such as Claude Haiku 5.5, Gemini 3.1 Pro, and GPT-5.4, through OpenCode, OpenCode Go, OpenRouter, Vercel AI Gateway, Google, MiniMax, and other providers
  • Fixed Markdown links not being clickable in Herdr (#10573)
neovim/neovim (aqua:neovim/neovim)

v0.12.6: Nvim 0.12.6

Compare Source

NVIM v0.12.6
Build type: Release
LuaJIT 2.1.1774638290

Release notes

Install

Windows

Zip

  1. Download nvim-win64.zip (or nvim-win-arm64.zip for ARM)
  2. Extract the zip
  3. Run nvim.exe in your terminal

MSI

  1. Download nvim-win64.msi (or nvim-win-arm64.msi for ARM)
  2. Run the MSI
  3. Run nvim.exe in your terminal

Note: On Windows "Server" you may need to install vcruntime*.dll.

macOS (x86_64)

  1. Download nvim-macos-x86_64.tar.gz
  2. Run xattr -c ./nvim-macos-x86_64.tar.gz (to avoid "unknown developer" warning)
  3. Extract: tar xzvf nvim-macos-x86_64.tar.gz
  4. Run ./nvim-macos-x86_64/bin/nvim

macOS (arm64)

  1. Download nvim-macos-arm64.tar.gz
  2. Run xattr -c ./nvim-macos-arm64.tar.gz (to avoid "unknown developer" warning)
  3. Extract: tar xzvf nvim-macos-arm64.tar.gz
  4. Run ./nvim-macos-arm64/bin/nvim

Linux (x86_64)

If your system does not have the required glibc version, try the (unsupported) builds for older glibc.

AppImage

  1. Download nvim-linux-x86_64.appimage
  2. Run chmod u+x nvim-linux-x86_64.appimage && ./nvim-linux-x86_64.appimage
    • If your system does not have FUSE you can extract the appimage:
      ./nvim-linux-x86_64.appimage --appimage-extract
      ./squashfs-root/usr/bin/nvim

Tarball

  1. Download nvim-linux-x86_64.tar.gz
  2. Extract: tar xzvf nvim-linux-x86_64.tar.gz
  3. Run ./nvim-linux-x86_64/bin/nvim

Linux (arm64)

AppImage

  1. Download nvim-linux-arm64.appimage
  2. Run chmod u+x nvim-linux-arm64.appimage && ./nvim-linux-arm64.appimage
    • If your system does not have FUSE you can extract the appimage:
      ./nvim-linux-arm64.appimage --appimage-extract
      ./squashfs-root/usr/bin/nvim

Tarball

  1. Download nvim-linux-arm64.tar.gz
  2. Extract: tar xzvf nvim-linux-arm64.tar.gz
  3. Run ./nvim-linux-arm64/bin/nvim

Other

openai/codex (aqua:openai/codex)

rust-v0.162.1: 0.162.1

Compare Source

Bug Fixes

  • Fixed a TUI crash when asynchronous questions contain multiple lines, preserving line breaks and complete hyperlink destinations. (#51866)
  • Fixed startup failures caused by differences between a running background server's feature settings and CLI defaults. Compatibility checks now apply only to explicit command-line feature overrides. (#52648)

Full Changelog: openai/codex@rust-v0.162.0...rust-v0.162.1

tree-sitter/tree-sitter (aqua:tree-sitter/tree-sitter)

v0.27.1: v0.27.1

Compare Source

What's Changed

Full Changelog: tree-sitter/tree-sitter@v0.27.0...v0.27.1

vercel-labs/agent-browser (aqua:vercel-labs/agent-browser)

v0.39.0: v0.39.0

Compare Source

New Features

  • Added an experimental Obscura engine (--engine obscura), launched and cleaned up locally like Chrome with bounded startup and CLI/MCP support. Obscura still has accessibility and rendering gaps, so review the engine page before choosing it (#1876)
  • Added private CA trust for CLI HTTPS requests so read, install, upgrade and doctor work behind TLS inspection. --ca-cert now applies to them on every platform, the new --use-system-ca uses the operating system trust store, and SSL_CERT_FILE is a fallback. Certificate verification always stays on (#2006)

Bug Fixes

  • Fixed selector-scoped snapshots (snapshot -s) so elements under ignored wrappers are no longer printed twice and shadow root content of a selected custom element is no longer dropped (#2043)
  • Fixed --auto-connect to wait up to 30s while Chrome 144+ shows the remote-debugging prompt, so it no longer opens repeated prompts or fails with "No running Chrome instance found" (#2026)
  • Fixed daemon responsiveness during long commands so it keeps accepting connections, including close, while a command holds the state lock, and a SIGTERM sent in that window is no longer lost (#2059)

Documentation

  • Migrated the docs site to Geistdocs (#1887)

Contributors

  • @​NamanSatish
  • @​Railly
  • @​SGavrl
  • @​SUSINDRAREDDY
  • @​godtail
  • @​jadenfix
  • @​niieani
walles/moor (aqua:walles/moor)

v2.19.4: v2.19.4: Fix flick-scrolling down freezing, then jumping

Compare Source

Before this release, scrolling down quickly, like with an inertial
trackpad flick, could make moor freeze and then jump ahead, especially
in large terminal windows. Scrolling up was fine.

With this release, scrolling down is as smooth as scrolling up. Thanks
@​injust for reporting walles/moor#471!

v2.19.3: v2.19.3: Mouse support out of the box in more terminals

Compare Source

With this release, moor supports scrolling with the mouse wheel and
selecting text in all terminals supporting Alternate Scroll Mode.

This makes Ptyxis work out of the box, and should also help in other
terminals moor doesn't know about yet, and over ssh. Thanks @​j4james for
the suggestion in #53!

@scottames-github-bot

Copy link
Copy Markdown
Contributor
anthropics/claude-code (github:anthropics/claude-code)

v2.1.296: v2.1.296

Compare Source

What's changed

  • Added a code key to the Claude apps gateway's managed.policies[]: the same settings as cli, also applied in Claude Desktop's Code tab; beside desktop, it turns on Claude Desktop's gateway mode
  • Added autoCompactWindow to subagent frontmatter and --agents definitions, so a subagent can auto-compact earlier than the main conversation's window
  • Added CLAUDE_CODE_WORKFLOW_SUBAGENT_MODEL to run every workflow agent on one model while other subagents keep theirs
  • Added CLAUDE_CODE_OVERLOADED_RETRY_MAX_DELAY_MS environment variable to set a longer maximum delay for the backoff when retrying an overloaded (529) request
  • Added a note in /plugin on a plugin whose hooks are left out because another enabled plugin has the same name
  • Added an allow_large option to the Read tool so Claude can read a text file past the usual size limits in one call when it needs the whole file and the context has room
  • Fixed managed-settings PreToolUse hooks that deny a tool call with "continue": false, and managed prompt hooks that block one, refusing the call but not ending the turn
  • Fixed PostToolUse hooks in managed settings not applying updatedMCPToolOutput in some sessions
  • Fixed headless sessions starting a folder's .mcp.json or plugin MCP server that was switched off for that folder, after changing directory or reloading plugins
  • Fixed a Claude apps gateway that serves allowedProviders with "gateway" locking out laptops that name that gateway in user settings
  • Fixed a saved Claude apps gateway sign-in being ignored on machines whose managed settings set forceLoginMethod to gateway with no forceLoginGatewayUrl (regression in 2.1.295)
  • Fixed --teleport opening an empty conversation when the session's history could not be read
  • Fixed token counts for Haiku 5.5 and other models that take only adaptive thinking, which failed behind some gateways and were counted with budget thinking elsewhere
  • Fixed resumed subagents being told that the user rejected a tool call that a session shutdown had interrupted
  • Fixed hook output being altered when it contained text resembling a plugin hint tag
  • Fixed secret redaction in shared transcripts and debug logs missing some values that follow a key with no value, including in JSON written inside a shell string
  • Fixed a stray 52;c;… escape sequence printed on screen after copying in older VTE-based terminals such as MATE Terminal
  • Fixed toasts and notifications waiting unseen for as long as the /diff panel or dialog was open
  • Fixed Esc or an interrupt during a UserPromptSubmit hook or a mod's prompt.submit hook ending headless sessions, clearing the typed prompt, or letting the unchecked prompt through
  • Fixed SessionStart hooks of a plugin loaded after a headless session starts being skipped when a different plugin with the same name, or another spelling of it, had already run
  • Fixed claude self-hosted-runner printing misleading errors when registration is refused: it now names the org admin setting, or says a restarted on-demand runner needs a fresh work order
  • Fixed a self-hosted runner session's git fetch, pull and push failing while another session of the same repository starts on a runner with --capacity above 1
  • Fixed workflow scripts silently truncating results, agent options and other values nested deeper than about 20,000 levels, and deeply nested results writing huge task output files
  • Fixed a plugin's served $ methods running in the main session's working directory instead of the calling agent's, and ignoring the turn their calling hook holds
  • Fixed $.agent.register succeeding from a mod's hook that was still running after the mod was reloaded or removed; the call is now refused
  • Fixed $.http.fetch in mods refusing a HEAD request when the response declares a Content-Length over the 4 MiB body limit
  • Fixed claude plugin marketplace add, marketplace update and plugin install failing with an internal error for a marketplace named like constructor; add now refuses such names clearly
  • Fixed a plugin secret named constructor or prototype being deleted by the next save of that plugin's options
  • Fixed cloud sessions skipping auto mode's checks on Claude in Chrome actions that a saved permission allows when their feature flags had not loaded
  • Fixed CLAUDE_CODE_RESUME_INTERRUPTED_TURN re-running a finished turn after a restart when an MCP tool result had ended that turn
  • Fixed Bash permission checks auto-approving some commands that assign the BASH_ARGV0 shell variable and then use it; these now prompt for approval
  • Fixed Edit and NotebookEdit replacing every non-ASCII character in files that are not valid UTF-8 (Windows-1252, Shift-JIS, GBK); such edits are now refused
  • Fixed a prompt sent just after ← being run twice, once unseen in the foreground, when the background service was slow to answer
  • Fixed a prompt sent while SessionStart hooks were still running vanishing when ← moved the session to the background; it is still not sent, but ↑ now brings it back
  • Fixed a late-loading plugin's SessionStart hook output reaching the new conversation after /clear in headless sessions
  • Fixed PowerShell commands not seeing variables that hooks write to CLAUDE_ENV_FILE (when the file holds only plain assignments)
  • Fixed Claude calling cloud sessions non-interactive and suggesting /mcp or claude mcp when an MCP server needs authentication
  • Fixed /code-review ending on a raw JSON array in cloud sessions, the Agent SDK and IDE integrations; the findings now print as a numbered list
  • Fixed auto mode occasionally refusing one update to your own artifact, saying its sharing had changed when it had not
  • Fixed skills synced from claude.ai never finishing their install, and being downloaded again at every sync, when several sessions share a config directory
  • Fixed a plugin synced from claude.ai being disabled when the marketplace dependency it declares was also synced from claude.ai
  • Fixed a startup hang on macOS when plugin paths copied from a Linux machine pointed under /home
  • Fixed the Workflow tool refusing script files with CRLF line endings, such as files checked out on Windows
  • Fixed OpenTelemetry tool_result events missing git_commit_id after git commit -q or git -C <dir> commit
  • Fixed CLAUDE_CODE_TRANSCRIPT_LOCAL_GC dropping a message from the saved transcript when its text held a Unicode line or paragraph separator (U+2028, U+2029)
  • Fixed claude purge leaving a prompt in the history file when its text held a Unicode line or paragraph separator (U+2028, U+2029)
  • Windows: Fixed PowerShell commands longer than about 1 KB always asking for permission, so allow rules and read-only detection now apply up to 32 KB
  • Windows: Fixed stdio MCP servers being force-killed at shutdown; stdin now closes first and the process tree is killed only if the server is still running after 300 ms
  • Windows: Fixed claude plugin install failing for GitHub owner/repo plugin sources on machines with no GitHub SSH key; the clone is now retried over HTTPS
  • Windows: Fixed rm -rf /c/Users/<name> in Git Bash not asking in bypass permissions mode
  • Improved fullscreen mode: the link under the mouse pointer is now underlined to show it can be opened
  • Improved transcript toggle (ctrl+o) responsiveness in code-heavy conversations by caching syntax-highlighted code blocks
  • Improved Claude Desktop's Code tab behind a Claude apps gateway: when a session can't start, including on a machine not set up for the gateway's code settings, the reason shows as a reply
  • Improved the errors for a refused cloud session: they now say why your organization's policy couldn't be loaded, and name an API key or auth token that overrides your claude.ai login
  • Improved --debug output to name unrecognized frontmatter fields in custom agent files, with a hint for likely typos
  • Improved auto mode: a tool call that wasn't run because auto mode's check had no usable answer now shows as a dim "Not run" row instead of a red error
  • Improved --debug output for hooks: command hooks on tool calls, prompts, SessionStart and Stop now log their command, plugin, outcome and duration when they finish, so a slow hook is identifiable
  • Improved CLAUDE_CODE_TRANSCRIPT_LOCAL_GC: a large transcript file is no longer rewritten when that would free under 10% of it
  • Updated /cost, the status line, --max-budget-usd and the SDK's cost figures to price Sonnet 5.5 cache reads at $0.10 per million tokens (was $0.20)
  • Updated the bundled dataviz skill: lighter violet for the seventh series in light mode, softer primary text in dark mode, and compact y-axis labels like 1K
  • Changed the default limit on MCP tool descriptions sent up front and on MCP server instructions from 2,048 to 4,096 characters
  • Changed ←: a turn or ! command started while the session moves to the background is now stopped instead of finishing out of sight
  • [VSCode] Fixed claudeCode.spinnerVerbs missing from the extension's settings, so settings.json now completes and validates it; a malformed value no longer breaks the chat panel
  • [VSCode] Changed Claude in Chrome to ask before browser actions in every session, including one connected with @&#8203;browser, as the terminal does; allowing a site for the session stops repeat asks
  • [VSCode] Fixed chat links written as a full Windows path, such as C:\repo\file.ts or file:///C:/repo/file.ts, not opening the file on Windows
  • [VSCode] Fixed the working indicator still animating when reduced motion is turned on in your OS, in VS Code, or with the prefersReducedMotion setting
  • [VSCode] Fixed the prompt cache clock reading warm after the panel caught up on messages late, such as after the display was off or a remote window reconnected
  • [Cloud sessions] Added a status filter to the Sessions and Runners lists on a self-hosted environment's Activity tab in admin settings; you can pick several statuses at once
  • [Cloud sessions] Fixed every cloud session waiting for a self-hosted runner showing the same queue position; each now shows how many sessions are ahead of it
  • [Cloud sessions] Fixed a message you send while Claude is still replying in a cloud session jumping above that reply when it finishes; it now stays below it, including after a reload
  • [Claude Tag] Changed Claude in Slack to show the footer with the session link, model and cost only on its newest reply in a thread; the reply before it drops the footer
  • [Claude Tag] Fixed links to URLs that contain parentheses breaking in some of Claude's Slack replies and task checklists, which showed stray bracket text and opened the wrong page
  • [Claude Tag] Fixed Claude's Slack replies drawing color swatches beside codes that only look like hex colors, such as six-digit pull request numbers
  • [Claude Tag] Added creating, editing and deleting workspace and channel memory files on the Activity page's Memory tab for members with the Claude Tag Admin permission
  • [Claude Tag] Fixed the plugin confirmation card Claude posts in a Slack channel showing a plugin's ID instead of its name
  • [Claude Tag] Fixed Claude in Slack posting a card to remove a plugin the channel's own settings don't include; it now explains where the plugin comes from instead
  • [Claude Tag] Fixed Claude in Slack sometimes losing its reply when a session in a self-hosted environment moved to a new runner partway through a task
  • [Code Review] Fixed the Code Review check sometimes staying "in progress" on a pull request after the review finished; it now shows the review's result
  • [Code Review] Improved Code Review admin settings to say why a setting couldn't be saved, such as a policy restriction, instead of a generic failure message

v2.1.295: v2.1.295

Compare Source

What's changed

  • Added onFailure: "block" for command and HTTP hooks: a hook that can't start, times out, or exits with an unexpected code blocks the action instead of letting it through
  • Added Program Status Protocol (OSC 7501) support: terminals that implement it can show whether Claude Code is working, waiting on you, or done
  • Added quoted text to the /copy picker, so a drafted message copies without its > markers
  • Added a warning to claude plugin install, enable, disable and marketplace add when the settings file they write to does not load
  • Added a line on stderr, when it is a terminal, that says what a claude -p run is waiting for when it stays open after its last turn
  • Added support for timeouts.upstream_ttfb_ms on the Claude apps gateway's Bedrock, Vertex, Foundry and other cloud upstreams: a value you set now limits how long a stream may take to start there, after which it fails over or gets a 502
  • Added a "Backgrounding cancelled" message when you stop the turn while ← is waiting for the current tool to finish
  • Added an optional models list to every Claude apps gateway upstream: only the listed models are sent there, on failover too, and one * in an entry is a wildcard
  • Added support for forceLoginMethod: "gateway" and forceLoginGatewayUrl in your own user settings on machines with no managed settings, so /login opens on that Claude apps gateway
  • Added advice to claude plugin validate when a plugin's README has no install line: it prints the line to paste and never changes the exit code, even with --strict
  • Added upstream_request_id to the Claude apps gateway's inference audit event: the request ID from Amazon Bedrock, the Anthropic API or another upstream, for support cases
  • Added $.ui.notify for mods: raises a native notification through your own notification setting and says which channel sent it
  • Added children to a mod's Button: strings and Text, so a row of a list is one pressable with a chip or a dim detail inside
  • Added CLAUDE_CODE_RETRY_WATCHDOG_MAX_WAIT_MS to limit how long unattended retry mode (CLAUDE_CODE_RETRY_WATCHDOG) waits out 429 and 529 errors
  • Added a request-id header to the Claude apps gateway's successful inference responses, so request_id in Claude Code telemetry matches the gateway's audit log
  • Fixed every request failing on a [1m] model when a gateway, Bedrock, Vertex or Foundry refuses the context-1m beta; Claude Code now resends without it
  • Fixed claude -p text output dropping earlier responses when background work started another turn; each turn's response now prints when the turn ends
  • Fixed remote MCP servers in headless and SDK sessions staying disconnected after an outage longer than 15 seconds, or reconnecting in a tight loop to a server that drops each connection right after it connects; repeated drops now back off, up to 30s
  • Fixed remote MCP connections being dropped when a server's error reply happened to contain a network error name
  • Fixed MCP servers that repeat a pagination cursor being asked for the same page up to 20 times at every connect
  • Fixed CSS, JavaScript and XML files returned by MCP tools being saved as .bin, which the Read tool refuses; font and icon files now get their own extension too
  • Fixed Bash tool calls failing when the model passes command_description instead of description
  • Fixed Claude in Chrome not applying a site deny rule written with port 80 (host:80) to plain http:// pages on that host
  • Fixed /plugin's Errors tab removing a marketplace that failed to load, and uninstalling its plugins, on Enter without asking first
  • Fixed claude plugin marketplace add reporting success for a marketplace whose name no plugin can be installed under; such an add is now refused
  • Fixed CLAUDE_AUTO_BACKGROUND_TASKS moving a subagent to the background while an edit or shell command waited behind it, which started that call before the subagent finished
  • Fixed PushNotification saying a push was not sent in claude remote-control sessions right after a phone message, without the /config toggle, or when started from inside Claude Code
  • Fixed files sent from remote sessions being refused as "could not be vouched for" when more than 256 were sent at once
  • Fixed a rare failure to load managed settings at startup right after a login refresh
  • Fixed /tui exiting without a message, or with a raw system error, when Claude Code could not be started again
  • Fixed a link address shown as text being hidden by a colour or conceal style a reply left on, including where it wraps in a table or a question preview
  • Fixed Fable models listed in availableModels not appearing in the /model picker for sessions signed in to a Claude apps gateway; such a model now shows its built-in row in place of a modelPicker row added for the same model
  • Fixed the Claude apps gateway's admin spend view showing a developer's old groups and group cap after their session stopped carrying groups
  • Fixed CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC hiding the Claude apps gateway spend limit in /usage and the status line. The spend limit request goes to the gateway the session is signed in to
  • Fixed subagents in their own linked worktree being shown the parent session's git branch, status and recent commits
  • Fixed Claude stopping at the end of the current tool when text typed in the prompt cancelled backgrounding with ←; Claude now keeps working in the foreground
  • Fixed --tools and --restricted not applying to built-in tools that register after launch, and deprecated tool names reaching tools outside the caller's tool set
  • Fixed an interrupt not ending the turn until a timeout while Claude waited for an MCP server's resource list
  • Fixed a mod's hook being handed a deeply nested tool input cut short with no error, so a guard could pass content it never saw
  • Fixed Esc not stopping a self-paced /loop that was moved to the background with ←; cancelling a pending wakeup now shows a notice
  • Fixed commands and hooks in background sessions inheriting FORCE_COLOR=3, which put color escape codes into the output Claude reads
  • Fixed claude agents starting a new background service as it exited when both were stopped with a session open (for example at a reboot), which could delay shutdown and restart an interrupted session
  • Fixed a custom agent named worker being shown as "Agent" in auto-mode denial notices and in the activity lists of task detail views
  • Fixed Bash permission checks for for-loops over glob patterns, improving permission-check accuracy
  • Fixed forked skills invoked from Workflow subagents delivering their results to the main conversation instead of the invoking agent
  • Fixed in-process agent teammates failing their first SendMessage call until they loaded the tool through tool search
  • Fixed Claude being told on resume that an unfinished background workflow may have been stopped by TaskStop, which can never be the cause
  • Fixed Claude not being told when you stop a long-running MCP tool call from the tasks panel or a connected client
  • Fixed a background session's /loop stopping without notice when its next wakeup came due while the session's process was down; the session now says so and Claude is told
  • Fixed raw terminal hyperlink bytes in a reply or a teammate's message being drawn as a clickable link with a hidden address
  • Fixed plugin marketplaces whose repository has large git submodules failing to add or refresh: only the submodules that hold plugin files are now fetched
  • Fixed the /advisor dialog showing a checkmark on a saved advisor model that is no longer available; it now opens on "No advisor"
  • Fixed the notification for an MCP tool call that moved to the background showing a shortened task id
  • Fixed vim mode's ~ moving the cursor past the last character of a line, so x after it did nothing, and 3~ running on into the next line
  • Fixed the cursor landing one character too far after pasting accented text copied from macOS (such as a file name) into the middle of the prompt
  • Fixed the terminal freezing, with ctrl+c ignored, when a response ran to tens of thousands of lines
  • Fixed calls a mod makes while it reloads during a plugin hooks worker restart getting past another mod's guard hook that has a .catch; such calls are now refused
  • Fixed plugins whose hooks module nests code thousands of levels deep failing to load or validate with a bare stack-overflow message
  • Fixed claude plugin test passing a session.append hook that removes tool call, tool result or thinking blocks that a real session keeps
  • Fixed Claude not being told it can resume background subagents with SendMessage after a session was killed and resumed a second time
  • Fixed a file being treated as already read after a Bash command such as cat ran without printing it
  • Fixed plugin options named constructor or prototype always reading as their default and never reloading the plugin when edited
  • Fixed a mod's hot reload missing a save made while /reload-plugins or session start was reading the mod's files
  • Fixed the mod hot-reloading question being asked again every turn for the whole session when it is approved without picking an answer
  • Fixed /model, /fast and /output-style saving their setting without asking a plugin's config.set hook
  • Fixed bold text being drawn faint in piped output when it directly follows dim text
  • Fixed replies whose quotes nest deeper every few lines freezing the terminal for seconds and using gigabytes of memory
  • Fixed a mod's hot reload missing a save made within a few milliseconds of its last reload, which left the mod on its old version until the next save
  • Fixed claude mcp serve background Bash results not naming the output file, and its tool description promising a notification that never arrives
  • Fixed an async SessionStart hook's unchanged context being added to the conversation again on every resume
  • Fixed variables a SessionStart hook writes to CLAUDE_ENV_FILE not reaching the Bash tool after an in-app /resume or /branch
  • Fixed a skill's allowed-tools and effort being dropped when the Skill tool finished before the response stream ended, which denied the skill's Bash commands in -p runs
  • Fixed a tampered cache of server-managed settings making a person's own plugin count as organization-managed on machines whose managed settings list or enable plugins
  • Fixed Claude 3 Opus and Claude 3.x Sonnet sessions being offered tool search, which those models reject, where feature flags are unavailable
  • Fixed generated type files being written into a --plugin-dir plugin's folder in -p and SDK sessions; they are now written only where a mod is being developed
  • Fixed text with tabs or bidirectional control characters losing its end at the edge of the screen or drawing over nearby rows
  • Fixed /model saying a Max effort pick was saved as your default for new sessions; Max applies to the current session only
  • Fixed an async hook's JSON output being ignored when it is printed over several lines
  • Fixed the Read tool rejecting calls with an empty pages parameter instead of treating it as omitted
  • Fixed project-scope plugins not loading in VS Code on Windows due to drive-letter casing ([BUG] Project-scoped plugin installs (--scope project) load in CLI sessions but are silently ignored by the VS Code extension anthropics/claude-code#74612)
  • Fixed plugin install and uninstall at project or local scope on Windows missing the install record, or adding a second one, when only the drive letter's case differs
  • Fixed a queued message being lost when pulled back into the prompt with ↑ or Esc just after ←: prompt history now keeps it
  • Fixed mod hot-reloading turning off for the whole session when an SDK host closed its enable question before anyone answered; the question is now asked up to three times
  • Fixed a prompt that a mod's prompt.submit hook rewrote or dropped still being saved as typed to prompt history and to the transcript's queued-prompt records
  • Fixed non-interactive sessions telling you about MCP servers that need authentication when your request doesn't use them
  • Fixed the claude_code.auth OpenTelemetry login event not being emitted on Claude apps gateway sign-in. The event is exported when OpenTelemetry is configured on the machine or the session is already signed in to the gateway
  • Fixed a plugin that adds very large interfaces getting another plugin unloaded when the plugin hooks worker stalls
  • Fixed Edit treating a file as fully read when its contents changed without its modification time advancing
  • Fixed short command output with Windows line endings (CRLF) being drawn on a single line
  • Fixed a stopped scheduled task coming back on resume after a rewind, and a scheduled task being lost on resume after Esc or a rewind following a compaction
  • Fixed the terminal freezing for seconds or minutes while syntax highlighting code with very long lines, long runs of blank lines, or unclosed strings and heredocs
  • Fixed temporary files left under ~/.claude/seed-admin by an interrupted /ultrareview upload never being removed by the retention cleanup
  • Fixed Desktop and SDK sessions refusing to switch back to auto mode until restart after disableAutoMode was removed from settings
  • Fixed claude.ai-synced plugin hooks failing with "Plugin directory does not exist" in long-running sessions after another session synced a plugin update
  • Fixed the prompt sent after a /rewind being lost, and the removed turns coming back, when the session was moved to the background or resumed after being killed
  • Fixed cloud sessions hanging when a mod's session.receive hook asked for permission before passing a message on
  • Fixed macOS background sessions that restart together after an update sometimes running outside the stable app wrapper, so folder-access prompts could reappear
  • Fixed an MCP sign-in or reconnect that finishes late in headless and SDK sessions relisting a server set with setMcpServers() as your own
  • Fixed changing the auto-update channel in /config saving before a plugin's config.set hook was asked
  • macOS: Fixed a file count at session start that could reach other apps' data and raise the "access data from other apps" prompt when a session starts in the home folder or above it
  • Improved token counts behind a Claude apps gateway on Amazon Bedrock, which /context and large file reads use: the gateway now gets them from AWS's CountTokens API instead of a one-token model request. Grant bedrock:CountTokens to use it
  • Improved the Claude apps gateway to log a warning every 30 seconds while its PostgreSQL database is read-only, saying what fails and how to recover
  • Improved the status shown in Remote Control, claude.ai and the desktop app for a session waiting on a permission prompt to name an MCP tool by its server and readable name instead of its mcp__server__tool identifier
  • Improved background requests behind a Claude apps gateway to use Haiku 4.5 instead of the session's model, falling back to the session's model where the gateway does not serve Haiku 4.5
  • Improved how the Claude apps gateway handles models not listed under models: in Amazon Bedrock regions outside AWS's US geography. AWS always refused those requests; the gateway now tries the model in your own region, and a refusal names the model to add
  • Improved headless rate_limit_event usage-limit warnings to say whether the account has extra usage turned on
  • Improved the built-in plugin-authoring skill: it no longer tells a session with no terminal to run terminal commands, and explains sharing a mod only when asked
  • Improved Grep input handling: a search sent with grep's -l, -c or -r flag now runs instead of failing the call
  • Improved claude plugin validate and plugin loading: when a hooks module is refused over a rebound top-level var, the error now names the line that rebinds it, the cause, and a fix
  • Improved the Workflow tool's scriptPath refusal: it now says to pass the script inline via script, the route that works in sessions without a Read tool
  • Improved what Claude is told when a large file it sends fails to upload with no reason given, so it reports the failure instead of shrinking the file
  • Changed MCP tool descriptions the model loads through tool search to be cut at 16,384 characters instead of 2,048
  • Changed subagents to preload at most 32 skills from the skills field, each once; a subagent with the Skill tool can still invoke the rest
  • Changed Ctrl+C at the idle prompt of an attached background session to leave a pending /loop wakeup alone, so pressing it twice detaches and the loop keeps running; press Esc to stop it
  • Changed claude agents stopped with its background service (macOS, or Linux without the service installed): running sessions now stop in about a minute unless it is run again, and a notice says so
  • Changed claude.ai connectors to negotiate MCP protocol version 2026-07-28 by default on installs that fetch no flags; MCP_PROTOCOL_NEGOTIATION=legacy opts out
  • Changed Artifact pages with no background of their own to show on white instead of off-white
  • Changed what Claude and you read when a mod denies a tool call after the tool ran: it now says the tool ran and a plugin withheld its result
  • Changed tab stops to count from where a text starts instead of from the screen's left edge: an answer indented by 2 has its first stop 8 cells in, where it was 6
  • Changed the Artifact tool's permission prompts with telemetry disabled to the same five questions other installs get, instead of asking before each read of someone else's artifact and each data edit
  • Changed scheduled and Run now routine runs in installs with telemetry disabled to publish new private artifacts, and update your own, without asking, as in other installs
  • Changed toasts from your organization's mods to show ahead of other mods' toasts instead of waiting behind them
  • Changed the Claude apps gateway to start with a warning and serve a desktop policy key its bundled Claude Desktop schema doesn't know, so new Desktop settings need no gateway upgrade
  • Changed WebSocket (ws) MCP servers: a message over 16 MiB is no longer parsed and closes the connection, the limit the other transports already have
  • [VSCode] Added a chat row for files Claude sends you: click a file's name to open it in the editor; Claude's caption shows underneath, and the row stays visible in Focus view
  • [VSCode] Fixed "Fork conversation from here" and Rewind's conversation restore failing with "Message not found in session" after a background agent's activity or one of the panel's own status lines
  • [VSCode] Fixed Ctrl+Shift+Tab, Cmd+Shift+Tab and Alt+Shift+Tab in the chat input also switching the permission mode, and Ctrl+Tab accepting the suggested prompt
  • [VSCode] Fixed keyboard focus bouncing between two Claude views visible at once, which could send typed text to the wrong conversation
  • Self-hosted runner: Changed the runner to stop passing CCR_AUTO_MODE_ALLOW, CCR_AUTO_MODE_ENVIRONMENT and CCR_AUTO_MODE_SOFT_DENY into a session's environment
  • Self-hosted runner: Fixed git fetches being cut off while the git server was still reporting progress on a large repository; CLAUDE_RUNNER_FETCH_SERVER_PROGRESS_CAP_MS tunes or turns off the wait
  • [Cloud sessions] Fixed a message sent right after unarchiving a cloud session sometimes getting no reply because no container could start for it
  • [Cloud sessions] Fixed some older routines starting their runs without ever giving Claude their saved prompt; those routines now run their prompt again
  • [Cloud sessions] Improved how quickly a cloud session catches up after its connection drops: activity you missed now appears all at once instead of row by row
  • [Cloud sessions] Improved the setup script box in the cloud environment form: it starts taller, grows with your script, and can be resized by dragging
  • [Claude Tag] Changed the settings confirmation cards Claude posts in a Slack channel to stay open for 30 minutes instead of 10
  • [Claude Tag] Changed Claude's notice that a channel shared across Enterprise Grid workspaces uses organization defaults to post only when someone mentions Claude, at most once a month
  • [Claude Tag] Fixed channel links and @​-mentions in a forked thread's "Continued from" card showing as raw Slack codes
  • [Claude Tag] Fixed Slack's Working status spinning on under a thread after @&#8203;Claude !restart had already confirmed the restart
  • [Claude Tag] Fixed another app's or bot's @​Claude going unanswered in a busy channel where Claude had stopped reading untagged messages
  • [Claude Tag] Added a confirmation in Claude Tag admin settings before adding a channel manager moves that member to Custom roles, which can remove their other access
  • [Code Review] Fixed Code Review re-reviews saying no issues were found while earlier findings were still open; the comment now says how many remain open
  • [Code Review] Fixed Code Review still skipping a large CLAUDE.md's rules when the pull request edits that file
  • Fixed web searches and agent hook evaluations taking much longer at xhigh and max effort

v2.1.294: v2.1.294

Compare Source

What's changed

  • Fixed prompt and agent hooks written as instructions (such as "Block commands that...") allowing what they should block
  • Improved how prompt hooks on Stop and SubagentStop written as instructions (such as "Carry on if the build is broken") are judged, so Claude is less likely to stop early

v2.1.293: v2.1.293

Compare Source

What's changed

  • Added Claude Haiku 5.5 (claude-haiku-5-5), now the default Haiku model on the Anthropic API — 1M context, $0.10/$0.50 per Mtok ($0.50/$2.50 for prompts over 100K)
  • Added agentType to the subagentStatusLine payload, so scripts can tell custom subagent types apart
  • Added isDeferred to $.tool.register for mods: false lists the tool's schema in the prompt from the start instead of behind tool search
  • Fixed Claude sometimes treating its own last actions before a context compaction as done after it, and retracting or redoing finished work
  • Fixed a memory leak where an HTTP MCP connection kept every request it had sent until it closed
  • Fixed a message sent while Claude was working being lost when ← moved the session to the background; if a queued message can't move, ← now stays put and says so
  • Fixed /model effort ←/→ wrapping past the highest or lowest level, which could accidentally save Low as a model's default effort
  • Fixed /tui disconnecting Claude in Chrome in a session started with --chrome, and ignoring --no-chrome
  • Fixed Claude being told to continue or message subagents with SendMessage in sessions, including resumed ones, where a host, a permission rule or a --tools list removed that tool
  • Fixed subagents and --agent sessions being told a built-in tool was disabled for the whole session when only their own tool list left it out
  • Fixed a claude.ai-synced skill's edited description sometimes not reaching the model until a new conversation or /clear
  • Fixed claude logs, stop, kill, rm and claude daemon status, stop, uninstall sometimes signing you out when your login had expired or was about to
  • Fixed the footer's agents count disappearing after a momentary failure to read the sessions folder (for example, too many open files)
  • Fixed a custom agent named worker being shown as "Agent" when it starts, and the agent detail dialog's title losing the agent type once the agent finishes
  • Fixed the Artifact tool's transcript row briefly reading Artifact("(unprintable path)") while a publish call was still streaming in
  • Fixed the /ultrareview upload on Linux wrongly refusing some repositories, such as one inside another checkout, over a settings file that "could not be parsed" while a sandboxed command was running
  • Fixed the /ultrareview upload's refusal over split-index files advising a git command that could leave git unable to read its index
  • Fixed replies in very long Remote Control and cloud sessions that could still appear a block at a time instead of streaming in
  • Fixed Remote Control uploading a session's starting history again after every credential recovery
  • Fixed PushNotification reporting "Remote Control inactive" in sessions started with claude remote-control
  • Fixed a mod's hooks on classic.* events being skipped while the plugin hooks worker restarts, which left settings hooks to answer without them
  • Fixed claude plugin test failing for mods that call $.session.append; tests can read the appended rows back with the new mock.session
  • Fixed claude plugin eval refusing every Bash-granting run on Macs with Docker Desktop (links under ~/.docker/bin); the refusal now names which part of a credential store held the link
  • Fixed the Claude apps gateway refusing to start when a desktop policy sets Claude Desktop's built-in browser keys, such as builtinBrowserEnabled
  • Fixed claude agents offering bypass permissions that background sessions then ignored when consent was saved only in .claude/settings.local.json or a --settings file; it now asks for consent first, and a session that ignores bypass shows a short notice that stays
  • Fixed ← backgrounding a session after 10 seconds while the prompt held unsent text (it now cancels the move) or a question was waiting for your answer
  • Fixed Esc, or No without feedback, on a permission prompt not stopping the turn when ← had just been pressed to move the session to the background
  • Fixed the agents view briefly replacing the session list with placeholder rows when the sessions folder could not be read (for example, too many open files)
  • Fixed path-scoped rules and nested CLAUDE.md files not loading when Claude views a file with a single-file cat, head, tail, sed -n or grep command in the Bash tool instead of the Read tool
  • Fixed pasted text that begins and ends with the same words sometimes being sent to Claude as if it had been typed
  • Fixed a skill name in pasted text being treated as typed when an accent typed or pasted right after the paste merged into its last letter
  • Fixed /feedback returning to the drafts list after Ctrl+O or Ctrl+Z while a report was sending, leaving the send impossible to cancel
  • Fixed claude purge stopping silently (exit 0, or a hang in a terminal) when a file or folder could not be deleted; it now deletes the rest, lists what it could not delete, and exits 1
  • Fixed keybindings.json checks: a lone " " (space key) is no longer reported as an error, and keys like "ctrl+ k" now get a warning
  • Fixed vim mode >> and << on a line of only spaces leaving the cursor past the end of the line, where a following x deleted nothing
  • Fixed vim mode: after deleting whole lines in Visual mode (V then d) the cursor lands on the first non-blank, and . after it acts on the cursor's line
  • Windows: Fixed stopping a status line, hook, or shell command sometimes terminating an unrelated process that had been given the same process ID
  • Reverted the auto mode denial message change from 2.1.281 that told Claude a denial covers the outcome, not only the exact command
  • Reverted the 2.1.290 fix for cloud sessions staying asleep after a container restart lost a pending /loop wakeup or scheduled task; Claude is no longer told, and the session stays asleep
  • Improved startup for Team and Enterprise organizations: policy and managed settings are fetched earlier, and a stalled request is retried after 3 seconds
  • Improved Claude in Chrome: fewer page actions are refused when the browser is slow to report its tabs
  • Improved the Claude in Chrome message in cloud sessions when the browser can't be reached: if you belong to more than one organization, it now says the extension must be signed in to the same one, and how to change that
  • Improved the Bash edit diff note to say the listed files changed while the command ran, which can include writes by other processes
  • Improved artifacts: Claude pins libraries to exact versions two weeks old or older
  • Changed claude.ai skill syncing to check for changes about every 40 minutes, instead of every 10, while no session is in use
  • Changed the order of agent lists and of MCP servers announced to the model: names with non-ASCII characters now sort after ASCII names
  • Changed OpenTelemetry claude_code.at_mention logging to emit at most 100 agent and 100 MCP-resource events each time a prompt is read
  • Self-hosted runner: Changed the orchestrator to sleep 4 to 6 seconds between polls instead of a constant 5, so several replicas for one environment stop polling at the same moment
  • [Claude Tag] Fixed Claude in Slack saying a workspace isn't set up in Enterprise Grid channels shared across workspaces when Slack labels a message with a workspace that isn't connected
  • [Claude Tag] Fixed Claude in Slack stopping mid-task in a channel when an admin changed the channel's connectors, plugins, skills or rules; the change now applies once Claude finishes
  • [Claude Tag] Fixed asking Claude in Slack to run a thread's routine now with extra notes starting a separate run that couldn't post back; the run now continues in that thread
  • [Claude Tag] Fixed an access bundle's Add a connector dialog in Claude Tag admin settings showing every Google connector as connected after one Google sign-in
  • [Claude Tag] Improved Claude Tag admin settings to list an Enterprise Grid that isn't connected yet, with a Connect button
  • [Claude Tag] Changed Claude in Slack to join announcement channels, where only admins can post, without posting its intro
  • [Claude Tag] Changed the limit on channel rules in Claude Tag admin settings from 20 to 50 for each workspace and for the organization-wide Slack page
  • [Code Review] Improved Code Review's Add a repository dialog to list each repository that couldn't be added and why, such as missing GitHub write access

@scottames-github-bot

scottames-github-bot Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor
backnotprop/plannotator (github:backnotprop/plannotator)

v0.28.11: v0.28.11

Compare Source

Follow @​plannotator on X for updates

Missed recent releases?

Release Highlights
v0.28.10 The Inbox over your tailnet with plannotator inbox --tailscale, images in agent messages load, click anywhere on an attachment tile
v0.28.9 Large Inbox messages through plannotator inbox mcp fixed, an Inbox sidebar you can close and resize, Edit Mode in reviews of several files, the new Pi logo
v0.28.8 The Plannotator Inbox (preview): messages, questions, files and guided reviews from your agents in one local window
v0.28.7 Ask this session keeps your drafts as drafts, image comments survive a reload, hostname check on every server
v0.28.6 Ask AI names the lines you selected, reorder quick labels and edit their emoji, Pi fixed-port crash fixed, OpenCode 2 subagent notice fixed
v0.28.5 Several files in one review, the plannotator tool on Pi and OpenCode 2, decisions name the exact file, Ask this session reconnects after sleep
v0.28.4 Comments come back after the agent edits a file, the agent can list and close its reviews, PR-description feedback no longer dropped, Pi thinking levels
v0.28.3 Typing into your agent while it answers an Ask no longer streams into Plannotator
v0.28.2 Question cards show wrapped choices and tables, pinned images named by their file, Done with nothing to send starts no agent turn
v0.28.1 Ask AI from diagram comments, pinned images named for the agent, OpenCode 1 URL toasts and one reply per feedback, folder feedback sent once
v0.28.0 Ask this session in Claude Code, Pi and OpenCode 2, Claude Code mod on by default, Pi plan review no longer blocks, first-run demo
v0.27.25 Code review works with color.diff = always, Bitbucket review fixes, wide tables no longer collapse in Firefox, install script fix

What's New in v0.28.11

A one-change Inbox release: plannotator inbox --help now teaches an agent how to use the Inbox.

plannotator inbox --help is a guide for agents

Until now plannotator inbox --help printed a few lines of usage. An agent with no Plannotator skill installed had no way to learn what the Inbox is for, how to send to it, or how to ask a question the person can answer on a card. Now the same command prints a complete markdown guide written for the agent:

  • what the Inbox is, and when to send something there instead of asking in the chat;
  • how to reach it: the plannotator_inbox tool where the agent has one, otherwise the stdio MCP server plannotator inbox mcp, and how an agent connects itself in Claude Code, Pi and OpenCode;
  • each of the eight tools and the arguments that matter, how threads and replies work, and where a reply arrives;
  • the question block syntax, the same text the plannotator skill carries, plus the Inbox-only Stopped:, Holds up: and Decision: when answered lines;
  • the setup line for each other agent (Codex, Cursor, VS Code, Gemini CLI, Zed and the rest), filled in with the absolute path of the binary on your machine;
  • the commands and flags, where the data lives, and that an agent must never uninstall or delete it for you.

The guide is built from the code: the tool list, the question syntax and the setup lines come from the same sources the Inbox itself uses, and tests fail if a tool, argument, flag or agent is added without it. plannotator --help, the plannotator skill and the docs now point agents at it.

The new "Copy install prompt" button on plannotator.ai/inbox relies on it: the prompt has your agent install Plannotator, start the Inbox, read plannotator inbox --help, connect itself and send you a first message.

Install / Update

macOS / Linux:

curl -fsSL https://plannotator.ai/install.sh | bash

Windows:

irm https://plannotator.ai/install.ps1 | iex

Claude Code Plugin: The plugin and the plannotator binary update separately, so run the install script above as well. In a terminal:

claude plugin marketplace update plannotator
claude plugin update plannotator@&#8203;plannotator

Then restart Claude Code. Inside Claude Code, run /plugin marketplace update plannotator, then open /plugin → Installed → plannotator → Update now.

Pi:

pi update --extensions

OpenCode: Re-run the install script above. It now also clears the OpenCode 2 plugin cache.

What's Changed

  • Inbox: plannotator inbox --help prints a full guide for agents by @​backnotprop in #1822
  • iOS CI: decisions-guides shard fixes by @​backnotprop in #1820
  • iOS CI: pair-and-push and relay reply wait fixes by @​backnotprop in #1821

Community

  • The Inbox users who wrote in after launch that their agents never wrote to it and that it was not clear how to get started. This guide and the install prompt are the answer to that.

Full Changelog: backnotprop/plannotator@v0.28.10...v0.28.11

v0.28.10: v0.28.10

Compare Source

Follow @​plannotator on X for updates

Missed recent releases?

Release Highlights
v0.28.9 Large Inbox messages through plannotator inbox mcp fixed, an Inbox sidebar you can close and resize, Edit Mode in reviews of several files, the new Pi logo
v0.28.8 The Plannotator Inbox (preview): messages, questions, files and guided reviews from your agents in one local window
v0.28.7 Ask this session keeps your drafts as drafts, image comments survive a reload, hostname check on every server
v0.28.6 Ask AI names the lines you selected, reorder quick labels and edit their emoji, Pi fixed-port crash fixed, OpenCode 2 subagent notice fixed
v0.28.5 Several files in one review, the plannotator tool on Pi and OpenCode 2, decisions name the exact file, Ask this session reconnects after sleep
v0.28.4 Comments come back after the agent edits a file, the agent can list and close its reviews, PR-description feedback no longer dropped, Pi thinking levels
v0.28.3 Typing into your agent while it answers an Ask no longer streams into Plannotator
v0.28.2 Question cards show wrapped choices and tables, pinned images named by their file, Done with nothing to send starts no agent turn
v0.28.1 Ask AI from diagram comments, pinned images named for the agent, OpenCode 1 URL toasts and one reply per feedback, folder feedback sent once
v0.28.0 Ask this session in Claude Code, Pi and OpenCode 2, Claude Code mod on by default, Pi plan review no longer blocks, first-run demo
v0.27.25 Code review works with color.diff = always, Bitbucket review fixes, wide tables no longer collapse in Firefox, install script fix
v0.27.24 Image previews stay in the all-files view, PR comment previews open on the commented line

What's New in v0.28.10

A small Inbox release. You can now open the Inbox from your other devices over Tailscale, images in agent messages load, and a click anywhere on an attachment tile opens the file.

Open the Inbox over your tailnet

The Inbox only listens on this computer, so until now the only way to reach it from a phone or another machine was to set up tailscale serve by hand, which let every device on the tailnet in, including the agent connection. Now one flag does it:

plannotator inbox --tailscale

The command prints an address such as https://studio.tail1234.ts.net:52817/. Open it on any device signed in to your tailnet.

  • Tailnet only, never public. The Inbox stays bound to this computer. tailscale serve publishes it over HTTPS inside your tailnet. The Inbox never uses tailscale funnel.
  • Only your own login gets in. The Inbox lets in the Tailscale login that owns this computer and refuses everyone else, including tagged devices. To let in another login, add it to ~/.plannotator/config.json: { "inboxTailscaleAllow": ["you@&#8203;example.com"] }. An allowed login can reply and send New messages, and those become turns in your live agent sessions on this computer, where agents run commands. Allow only people you would let run your agents.
  • Agent connections stay local. MCP and the reply wake answer only on this computer, never over the tailnet.
  • On for one run or for good. --tailscale publishes until the Inbox stops, and works with --background and --no-open. If the Inbox is already running, the command asks it to publish. To publish at every start, including when an agent starts the Inbox, turn on Over your tailnet in the Inbox's Settings (or set { "inboxTailscale": true } in config.json). PLANNOTATOR_INBOX_TAILSCALE=0 keeps it off whatever the flag or the switch says.
  • Tailscale missing or signed out? The Inbox still runs on this computer, and Settings and the terminal say why it could not publish.

The address uses the Inbox's own port and is removed when the Inbox stops or restarts. If the Inbox is killed (kill -9, a reboot), the address stays in Tailscale until the next start removes it; run tailscale serve --https=<port> off to remove it sooner. Full details: plannotator.ai/docs/reference/inbox.

  • #1818, requested by an Inbox user who wanted to reach it over their tailnet

Images in agent messages load

An agent's message with ![alt](shots/after.png) showed a broken image, because the Inbox had no route for it. Images in messages now load when the file is inside the message's project: a path relative to the folder the agent sent from, or an absolute path inside the project. This covers markdown images, <img> tags and images in question context. PNG, JPEG, GIF, WebP, SVG, AVIF, BMP and ICO files up to 10 MB are served. The Inbox serves only images the message itself references, so the route cannot be used to read other files. Images from the web (https://…) still do not load.

Additional Changes

  • Click anywhere on an attachment tile. The tiles under an agent message opened only from the small "Open" text. The whole tile now opens the file, and keyboard focus outlines the whole tile (#1817)

Behavior changes

  • /mcp needs a loopback address with the Inbox's own port. An HTTP MCP client must reach http://127.0.0.1:<port>/mcp directly. An ssh -L forward to a different local port is now refused. plannotator inbox mcp over stdio is unaffected.
  • Use --background to keep a published Inbox running. nohup plannotator inbox --tailscale & stops when the terminal closes while the Inbox is published. Run plannotator inbox --tailscale --background instead.

Install / Update

macOS / Linux:

curl -fsSL https://plannotator.ai/install.sh | bash

Windows:

irm https://plannotator.ai/install.ps1 | iex

Claude Code Plugin: The plugin and the plannotator binary update separately, so run the install script above as well. In a terminal:

claude plugin marketplace update plannotator
claude plugin update plannotator@&#8203;plannotator

Then restart Claude Code. Inside Claude Code, run /plugin marketplace update plannotator, then open /plugin → Installed → plannotator → Update now.

Pi:

pi update --extensions

OpenCode: Re-run the install script above. It now also clears the OpenCode 2 plugin cache.

What's Changed

  • Inbox over your tailnet: plannotator inbox --tailscale (owner-only) by @​backnotprop in #1818
  • Inbox: images in agent messages load (fixes #1813) by @​backnotprop in #1819
  • Inbox: clicking anywhere on an attachment tile opens it by @​backnotprop in #1817

Community

  • @​hexsprite reported that images in Inbox messages never loaded in #1813, with the exact repro and the cause traced to the missing route.

Full Changelog: backnotprop/plannotator@v0.28.9...v0.28.10

v0.28.9: v0.28.9

Compare Source

Follow @​plannotator on X for updates

Missed recent releases?

Release Highlights
v0.28.8 The Plannotator Inbox (preview): messages, questions, files and guided reviews from your agents in one local window
v0.28.7 Ask this session keeps your drafts as drafts, image comments survive a reload, hostname check on every server
v0.28.6 Ask AI names the lines you selected, reorder quick labels and edit their emoji, Pi fixed-port crash fixed, OpenCode 2 subagent notice fixed
v0.28.5 Several files in one review, the plannotator tool on Pi and OpenCode 2, decisions name the exact file, Ask this session reconnects after sleep
v0.28.4 Comments come back after the agent edits a file, the agent can list and close its reviews, PR-description feedback no longer dropped, Pi thinking levels
v0.28.3 Typing into your agent while it answers an Ask no longer streams into Plannotator
v0.28.2 Question cards show wrapped choices and tables, pinned images named by their file, Done with nothing to send starts no agent turn
v0.28.1 Ask AI from diagram comments, pinned images named for the agent, OpenCode 1 URL toasts and one reply per feedback, folder feedback sent once
v0.28.0 Ask this session in Claude Code, Pi and OpenCode 2, Claude Code mod on by default, Pi plan review no longer blocks, first-run demo
v0.27.25 Code review works with color.diff = always, Bitbucket review fixes, wide tables no longer collapse in Firefox, install script fix
v0.27.24 Image previews stay in the all-files view, PR comment previews open on the commented line
v0.27.23 Bitbucket Cloud PR review, Question UI for answering agents in place, opt-in auto-update, viewed files remembered, review another repo or worktree

What's New in v0.28.9

A patch release that follows up on the Inbox, which launched in v0.28.8. It fixes large messages sent through plannotator inbox mcp, gives the Inbox a sidebar you can close and resize, and smooths several rough edges found since the launch. It also turns on Edit Mode in reviews of several files and includes a first contribution from @​h-jennings.

Large messages through plannotator inbox mcp

An agent connected through the stdio command (plannotator inbox mcp, the setup the Inbox shows for Codex, Gemini CLI and other MCP clients) could not send a message larger than 4 MiB. The Inbox refused it, but the refusal carried no request id, so the agent's MCP client never matched it to its request and waited until its own 60-second timeout. Messages now go through up to 128 MiB, and anything larger is refused at once with an error that names the limit. Claude Code, Pi and OpenCode report the same limit in the same words.

A sidebar you can close and resize

The Inbox sidebar now closes and opens from a toggle at the start of each page header, or with ⌘B (Ctrl+B), and the Inbox remembers your choice. ⌘B does nothing while you type in the reply box, so it never takes your focus away. While the sidebar is closed, resting the pointer on the left edge shows it for a moment. Drag its edge to change the width (the Inbox remembers that too), drag it narrow to close it, or click the edge to collapse it. In a narrow window it opens as a sheet over the list. Opening a file beside a thread closes the sidebar to make room and leaves your saved choice alone.

Smaller Inbox fixes

  • Newest first in every section. Each section of the list (Stopped on you, Holding up work, Waiting on you, Sent, New since you looked, Quiet) is now ordered by the thread's latest message, so the time column reads down in order. Before, some sections put the oldest waiting question first (#1800)
  • Rows show delivery without a reload. After your reply reached the agent, the thread said "Delivered" while the list row kept saying "Saved for " until you reloaded. The row now updates in place, and rows still change position only when you act (#1772)
  • Agents that get your reply automatically end their turn. send_message and submit_guide told every agent to call wait_for_reply, which could hold a Claude Code, Pi or OpenCode 2 session for up to 50 seconds per call even though your reply arrives there by itself. Those agents are now told to end their turn. OpenCode 1 and other MCP clients keep the wait_for_reply advice (#1771)
  • A stale tab says Inbox. An Inbox tab left open after the Inbox restarted used to say "This review was replaced". It now says the Inbox page is out of date and nothing was saved (#1773)
  • Attachments look like Plannotator. Markdown, text and diagram attachments follow the Grid or Clean look you chose in Plannotator's Settings (#1796)

Edit Mode in reviews of several files

plannotator annotate a.md b.md c.md opens one review of all the listed files, but that review had no Edit Mode, so an agent asked to set up documents for direct editing had to open a folder instead. Each file in such a review now has Edit Mode exactly when it would have it opened by itself: markdown, .mdx and .txt files can be edited and saved to disk, while raw HTML, diagram sources and data files stay read-only. Files linked from the review, and anything outside it, cannot be written. This works the same in the CLI and in Pi.

Additional Changes

  • Drag a toast away. Pressing on a toast and dragging it used to select its text and leave it on screen, most often with the update notices. A drag now dismisses it, in plan review, annotate and code review (#1792 by @​h-jennings)
  • The new Pi logo. Plannotator now draws Pi's new three-colour logo from pi.dev wherever it shows the Pi mark: the Ask AI provider bar, AI settings, the Agents tab, and the Inbox list, threads and first-run cards (#1808)
  • The Inbox on plannotator.ai. plannotator.ai/inbox now has a short film of the Inbox, alongside the launch post The age of the Inbox (#1770, #1811)

Install / Update

macOS / Linux:

curl -fsSL https://plannotator.ai/install.sh | bash

Windows:

irm https://plannotator.ai/install.ps1 | iex

Claude Code Plugin: The plugin and the plannotator binary update separately, so run the install script above as well. In a terminal:

claude plugin marketplace update plannotator
claude plugin update plannotator@&#8203;plannotator

Then restart Claude Code. Inside Claude Code, run /plugin marketplace update plannotator, then open /plugin → Installed → plannotator → Update now.

Pi:

pi update --extensions

OpenCode: Re-run the install script above. It now also clears the OpenCode 2 plugin cache.

What's Changed

  • Inbox MCP: large messages through the stdio shim no longer time out by @​backnotprop in #1794
  • Inbox: the Workspaces sidebar (close, open, peek, ⌘B) by @​backnotprop in #1810
  • Inbox: every section of the list reads newest first by @​backnotprop in #1800
  • Inbox: a held row's state follows a delivery; only the order waits for an action by @​backnotprop in #1772
  • Inbox: send result says to end the turn when the caller's wake delivers the reply by @​backnotprop in #1771
  • Inbox: a stale tab's 409 says Inbox, not review by @​backnotprop in #1773
  • Inbox: the attachment pane follows Plannotator's Grid/Clean plan look by @​backnotprop in #1796
  • Edit Mode in reviews of several files (annotate bundles) by @​backnotprop in #1802
  • fix(ui): a mouse drag dismisses a toast instead of selecting its text by @​h-jennings in #1792
  • Pi mark: the new pi.dev logo by @​backnotprop in #1808
  • Marketing: the Inbox is launched (INBOX_LAUNCHED on) by @​backnotprop in #1770
  • Marketing: the Inbox film on the Inbox page by @​backnotprop in #1811
  • Claude Code mod harness: expect the inbox-wakes _meta on plannotator_inbox calls by @​backnotprop in #1793
  • test: fix the restart-to-update and review-directory flakes by @​backnotprop in #1783
  • ci: manual sign-and-notarize check for an upcoming macOS app by @​backnotprop in #1799
  • iPhone app groundwork, included but not enabled in this release, across #1775, #1776, #1777, #1778, #1779, #1780, #1781, #1782, #1785, #1788, #1789, #1790, #1791, #1795, #1797, #1798, #1801, #1806, #1809 and #1812 by @​backnotprop

New Contributors

  • @​h-jennings made their first contribution in #1792

Community

  • @​h-jennings fixed toasts that selected their text instead of dismissing when dragged (#1792), with before and after recordings in the PR. First contribution to the project.
  • @​bendrucker found that a review of several files had no Edit Mode and opened #1774 to point agents at the folder form instead. That report is why #1802 turned Edit Mode on for those reviews.

Full Changelog: backnotprop/plannotator@v0.28.8...v0.28.9

v0.28.8: v0.28.8

Compare Source

Follow @​plannotator on X for updates

Missed recent releases?

Release Highlights
v0.28.7 Ask this session keeps your drafts as drafts, image comments survive a reload, hostname check on every server
v0.28.6 Ask AI names the lines you selected, reorder quick labels and edit their emoji, Pi fixed-port crash fixed, OpenCode 2 subagent notice fixed
v0.28.5 Several files in one review, the plannotator tool on Pi and OpenCode 2, decisions name the exact file, Ask this session reconnects after sleep
v0.28.4 Comments come back after the agent edits a file, the agent can list and close its reviews, PR-description feedback no longer dropped, Pi thinking levels
v0.28.3 Typing into your agent while it answers an Ask no longer streams into Plannotator
v0.28.2 Question cards show wrapped choices and tables, pinned images named by their file, Done with nothing to send starts no agent turn
v0.28.1 Ask AI from diagram comments, pinned images named for the agent, OpenCode 1 URL toasts and one reply per feedback, folder feedback sent once
v0.28.0 Ask this session in Claude Code, Pi and OpenCode 2, Claude Code mod on by default, Pi plan review no longer blocks, first-run demo
v0.27.25 Code review works with color.diff = always, Bitbucket review fixes, wide tables no longer collapse in Firefox, install script fix
v0.27.24 Image previews stay in the all-files view, PR comment previews open on the commented line
v0.27.23 Bitbucket Cloud PR review, Question UI for answering agents in place, opt-in auto-update, viewed files remembered, review another repo or worktree

What's New in v0.28.8

This release brings the Plannotator Inbox (preview): one local window where your agents leave you messages, questions, files and guided reviews, and where your reply goes back to the session that asked.

The Plannotator Inbox (preview)

Agents often need you for one thing: a choice, a check, a look at a file. Until now that meant a review tab per question, or a question buried in the terminal. The Inbox collects all of it in one window on your machine:

  • Threads by project. Each agent conversation is a row, grouped in sections: Stopped on you, Holding up work, Waiting on you, Sent, New since you looked, and Quiet. Filter by project in the sidebar.
  • Questions you answer with a click. Agents ask with the same :::question cards plan review uses. Pick, add a note, press Send.
  • Files and annotations. Files an agent attached open beside the thread (markdown, text, HTML, Mermaid, Graphviz). Annotate them as in Plannotator; the annotations go with your reply. If the agent changed a file after sending it, the Inbox says so and can show the version it sent.
  • Decisions. A question can record your answer as a project decision, listed on a Decisions page.
  • Guided reviews. An agent can send a guided review of a code change into a thread.
  • New message. Write to an agent session that is running now, without waiting for it to ask.
  • Browser notifications while the tab is in the background, if you allow them.

Your reply wakes the agent that asked. Claude Code (with the Plannotator mod) gets a plannotator_inbox tool, on by default. Pi and OpenCode 2 get the same tool, off by default because they send every tool's definition with each request: turn it on with PLANNOTATOR_INBOX_TOOL=1. Any other agent can connect through MCP with plannotator inbox mcp; the Inbox's Settings show the exact command for your agent.

It is local only: it listens on 127.0.0.1, needs no account, and keeps everything under ~/.plannotator/inbox. Start it with:

plannotator inbox

You never have to keep it running: an agent starts it in the background when it needs it, without opening a tab. plannotator uninstall --purge removes its data. Full reference: plannotator.ai/docs/reference/inbox.

Additional Changes

  • Question cards for host apps. @&#8203;plannotator/ui 0.52.1 can show the "Records a decision" switch on any question and open a host's own decision card from it. Plannotator's own cards are unchanged (#1753).

Install / Update

macOS / Linux:

curl -fsSL https://plannotator.ai/install.sh | bash

Windows:

irm https://plannotator.ai/install.ps1 | iex

Claude Code Plugin: The plugin and the plannotator binary update separately, so run the install script above as well. In a terminal:

claude plugin marketplace update plannotator
claude plugin update plannotator@&#8203;plannotator

Then restart Claude Code. Inside Claude Code, run /plugin marketplace update plannotator, then open /plugin → Installed → plannotator → Update now.

Pi:

pi update --extensions

OpenCode: Re-run the install script above. It now also clears the OpenCode 2 plugin cache.

What's Changed

Full Changelog: backnotprop/plannotator@v0.28.7...v0.28.8

v0.28.7: v0.28.7

Compare Source

Follow @​plannotator on X for updates

Missed recent releases?

Release Highlights
v0.28.6 Ask AI names the lines you selected, reorder quick labels and edit their emoji, Pi fixed-port crash fixed, OpenCode 2 subagent notice fixed
v0.28.5 Several files in one review, the plannotator tool on Pi and OpenCode 2, decisions name the exact file, Ask this session reconnects after sleep
v0.28.4 Comments come back after the agent edits a file, the agent can list and close its reviews, PR-description feedback no longer dropped, Pi thinking levels
v0.28.3 Typing into your agent while it answers an Ask no longer streams into Plannotator
v0.28.2 Question cards show wrapped choices and tables, pinned images named by their file, Done with nothing to send starts no agent turn
v0.28.1 Ask AI from diagram comments, pinned images named for the agent, OpenCode 1 URL toasts and one reply per feedback, folder feedback sent once
v0.28.0 Ask this session in Claude Code, Pi and OpenCode 2, Claude Code mod on by default, Pi plan review no longer blocks, first-run demo
v0.27.25 Code review works with color.diff = always, Bitbucket review fixes, wide tables no longer collapse in Firefox, install script fix
v0.27.24 Image previews stay in the all-files view, PR comment previews open on the commented line
v0.27.23 Bitbucket Cloud PR review, Question UI for answering agents in place, opt-in auto-update, viewed files remembered, review another repo or worktree
v0.27.22 Plans open the docs they link to, Claude review jobs locked down, Code Tour on Linux without Claude's sandbox, Pi reviews the latest plan

What's New in v0.28.7

Seven PRs, two from community contributors, one of them a first-time contributor. The main fix stops Ask this session from handing your unsubmitted comments to the agent as instructions. Other changes: comments on images survive a reload, other plugins' commands no longer carry Plannotator's name, and every Plannotator server now checks the hostname it was reached by.

Ask this session keeps your drafts as drafts

When you asked a question through "Ask this session", Plannotator also sent the comments you had not submitted yet, in the same format as submitted feedback. The agent read them as instructions and could act on them before you pressed Submit. In the report, it created GitHub issues from draft comments. On Submit, the same comments then arrived a second time.

Draft comments are now sent once, as a short list clearly marked as drafts you have not submitted, with an instruction not to act on them. Your question always comes last. The list goes again only when it changes. Submit delivers your feedback once, as before. This applies on Claude Code, Pi and OpenCode, and to the annotate agent terminal. The separate Ask AI providers are unchanged. (#1749, closing #1748, reported by @​krizman)

Comments on images come back after a reload

In HTML annotate, a pin on an image, video or embedded page that had no id disappeared after a reload or an HTML refresh, which made image comments in generated reports hard to keep. Such pins are now found again by the file they show. A pin follows its image when other images are added around it. If the image's source changes, the pin shows as no longer matching. If the same source appears twice, the pin is not saved, so it can never land on the wrong copy. Live-app sessions behave the same way. (#1747 by @​pro-vi)

Other plugins' commands no longer carry Plannotator's name

With the Plannotator mod on, Claude Code labelled the output of any other plugin's slash command as if Plannotator had helped answer it (for example plannotator+frontend: …). The mod now listens only to its own commands. /plannotator-review, /plannotator-annotate and /plannotator-last work as before, with or without the Plannotator skills installed. (#1741 by @​rushelex, closing #1740)

Every server checks the hostname it was reached by

Plannotator's review servers now refuse requests that arrive under an unexpected hostname. A normal local session accepts only localhost and loopback addresses. Remote mode also accepts IP addresses, your configured PLANNOTATOR_URL_HOST and the machine's own name (including name.local). --tailscale sessions accept their tailnet name, and code-server and Coder proxies are recognised from VSCODE_PROXY_URI. VS Code, SSH and Docker port forwarding, Codespaces and dev tunnels keep working as before.

If you reach a remote-mode session by another DNS name (a server's public name, for example), you now get a 403 that says what to do: set PLANNOTATOR_URL_HOST, or list the name in the new PLANNOTATOR_ALLOWED_HOSTS (comma-separated; * turns the check off). (#1742)

Additional Changes

  • OpenCode 2: extra words no longer stop annotate. /plannotator-annotate . notes.md (or please notes.md) opened nothing and showed nothing. It now opens the file, and a slash command that fails shows the reason in the session instead of only in OpenCode's log. On OpenCode 1 this applies when the plugin uses the CLI runtime; the default embedded runtime is unchanged (#1739).
  • Question cards for host apps. @&#8203;plannotator/ui 0.52.0 lets an app embedding the question cards turn "Records a decision" on and off from the card's header and hide the card's own status tag. Plannotator's own cards are unchanged (#1744).

Install / Update

macOS / Linux:

curl -fsSL https://plannotator.ai/install.sh | bash

Windows:

irm https://plannotator.ai/install.ps1 | iex

Claude Code Plugin: The plugin and the plannotator binary update separately, so run the install script above as well. In a terminal:

claude plugin marketplace update plannotator
claude plugin update plannotator@&#8203;plannotator

Then restart Claude Code. Inside Claude Code, run /plugin marketplace update plannotator, then open /plugin → Installed → plannotator → Update now.

Pi:

pi update --extensions

OpenCode: Re-run the install script above. It now also clears the OpenCode 2 plugin cache.

What's Changed

  • Ask this session: unsubmitted annotations are never sent as feedback by @​backnotprop in #1749
  • fix(annotate): pins on images without an id restore by their source by @​pro-vi in #1747
  • fix(mod): match command.run by command name by @​rushelex in #1741
  • Validate the Host header on every request (defense in depth) by @​backnotprop in #1742
  • OpenCode 2: /plannotator-annotate with extra words opens the file, and failures are shown by @​backnotprop in #1739
  • ui: host-controlled decision toggle and status tag on question cards by @​backnotprop in #1744
  • Groundwork for a feature that is not released yet, hidden from help and the agent skill, by @​backnotprop in #1745 and #1750

New Contributors

  • @​pro-vi made their first contribution in #1747

Contributors

@​pro-vi found that comments on images without an id were lost on every reload, and wrote the fix that finds them again by their source. @​rushelex reported the +plannotator label on other plugins' commands and fixed it with a one-line matcher. It is their second contribution, after the VS Code clipboard fix in #970.

Community:

  • @​krizman reported the Ask this session draft problem with exact steps, the text the agent received, and the likely cause (#1748).

Full Changelog: backnotprop/plannotator@v0.28.6...v0.28.7

cesarferreira/stax (github:cesarferreira/stax)

v0.115.0: v0.115.0

Compare Source

[0.115.0] - 2026-10-09

🚀 Features

  • (sync) Continue on the next branch when cleanup deletes the current one (#917)

🐛 Bug Fixes

  • (restack) Skip leading commits already squash-merged into the parent (#916)
  • Fixed tests

💼 Other

  • Removed bd
  • Updated agents.md

⚙️ Miscellaneous Tasks

  • Release
dlvhdr/gh-dash (github:dlvhdr/gh-dash)

v4.26.1: v4.26.1

Compare Source

4.26.1

To update run:

gh extension upgrade dash

Changelog

Bug fixes


If you enjoy dash, consider making a donation ❤️

Have questions? Join our Discord community!


DASH Logo
dlvhdr/gh-enhance (github:dlvhdr/gh-enhance)

v0.8.1: v0.8.1

Compare Source

0.8.1

To update run:

gh extension upgrade enhance

Changelog

Bug fixes


If you enjoy enhance, consider making a donation ❤️

Have questions? Join our Discord community!

DASH Logo
github/gh-stack (github:github/gh-stack)

v0.2.1: v0.2.1

Compare Source

gh-stack is a GitHub CLI extension for managing stacked branches and pull requests. Learn more about GitHub Stacked PRs here.

View the Quick Start guide to get started.

Install the extension with:

gh extension install github/gh-stack

Or upgrade to the latest version with:

gh extension upgrade stack

What's new in v0.2.1

Added

  • api_host support for custom API endpoints: gh-stack now honors the api_host field in your gh hosts.yml, letting you point a host's API requests at a custom endpoint — matching the behavior already supported by the gh CLI. This helps with proxied or non-standard GitHub host setups.

Fixed

  • Repositories using a custom SSH host alias: Commands that need a GitHub client (such as gh stack submit) no longer fail with "none of the git remotes configured for this repository point to a known GitHub host" when origin uses a custom SSH alias — for example git@&#8203;github.com-work:org/repo mapped to github.com via ~/.ssh/config. The alias is now expanded before remotes are matched to a known host.

Changelog

New Contributors

Full Diff: github/gh-stack@v0.2.0...v0.2.1

Skipped Packages

Non-GitHub Sources

GitHub Release Notes Unavailable

  • bun: No GitHub release was found for 1.4.3

  • droid: No GitHub release was found for 0.238.0

  • go: No GitHub release was found for 1.27.2

@renovate
renovate Bot force-pushed the renovate/mise-packages branch from 73efff3 to 0c7bb86 Compare October 15, 2026 00:08
@renovate
renovate Bot merged commit a3a5f26 into main Oct 15, 2026
7 checks passed
@renovate
renovate Bot deleted the renovate/mise-packages branch October 15, 2026 00:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants