Skip to content

fix(deps): update all non-major dependencies (patch) - #1967

Closed
shunkakinoki wants to merge 1 commit into
mainfrom
renovate/patch-all-minor-patch
Closed

fix(deps): update all non-major dependencies (patch)#1967
shunkakinoki wants to merge 1 commit into
mainfrom
renovate/patch-all-minor-patch

Conversation

@shunkakinoki

@shunkakinoki shunkakinoki commented Jun 30, 2026

Copy link
Copy Markdown
Owner

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
@anthropic-ai/claude-code ^2.1.186^2.1.191 age confidence
@​anthropic-ai/claude-code-darwin-arm64 ^2.1.186^2.1.191 age confidence
@​anthropic-ai/claude-code-darwin-x64 ^2.1.186^2.1.191 age confidence
@​anthropic-ai/claude-code-linux-arm64 ^2.1.186^2.1.191 age confidence
@​anthropic-ai/claude-code-linux-arm64-musl ^2.1.186^2.1.191 age confidence
@​anthropic-ai/claude-code-linux-x64 ^2.1.186^2.1.191 age confidence
@​anthropic-ai/claude-code-linux-x64-musl ^2.1.186^2.1.191 age confidence
@​anthropic-ai/claude-code-win32-arm64 ^2.1.186^2.1.191 age confidence
@​anthropic-ai/claude-code-win32-x64 ^2.1.186^2.1.191 age confidence
@github/copilot ^1.0.63^1.0.65 age confidence
@kaitranntt/ccs ^8.6.0^8.6.1 age confidence
@oh-my-pi/pi-coding-agent (source) ^16.1.13^16.1.18 age confidence
@oh-my-pi/pi-natives (source) ^16.1.13^16.1.18 age confidence
@posthog/cli (source) ^0.7.30^0.7.32 age confidence
@typescript/native-preview (source) ^7.0.0-dev.20260623.1^7.0.0-dev.20260624.1 age confidence
acpx ^0.11.0^0.11.2 age confidence
openclaw ^2026.6.9^2026.6.10 age confidence
playwright-chromium (source) ^1.61.0^1.61.1 age confidence
ruff (source, changelog) >=0.15.18>=0.15.19 age confidence

Release Notes

anthropics/claude-code (@​anthropic-ai/claude-code)

v2.1.191

Compare Source

  • Added /rewind support for resuming a conversation from before /clear was run
  • Fixed scroll position jumping to the bottom while reading earlier output during a streaming response
  • Fixed background agents resurrecting after being stopped — stopping an agent from the tasks panel is now permanent
  • Fixed /voice showing a generic "not available" message when disabled by an organization's policy — it now explains the restriction
  • Fixed /login URL opening truncated in Windows Terminal when it wraps across lines
  • Fixed Cmd+click on links in fullscreen mode for Ghostty over ssh/tmux
  • Fixed claude agents sending builtin slash commands like /usage to background sessions as prompt text instead of showing a hint
  • Fixed claude agents job rows showing full filesystem paths for pasted images instead of the [Image #N] placeholder
  • Fixed hooks with comma-separated matchers (e.g. "Bash,PowerShell") silently never firing
  • Fixed /permissions Recently-denied tab: approving a denial now persists on close instead of being silently discarded
  • Fixed the agent panel jumping by one row when scrolling the roster past the overflow cap
  • Fixed the welcome splash art overflowing the default 80×24 macOS Terminal window
  • Fixed managed settings: forceRemoteSettingsRefresh now takes effect when set via MDM or file policy, and the fetch sends Cache-Control: no-cache to prevent proxies from serving stale responses
  • Improved sandbox network permission dialog: hosts you allow with "Yes" are now remembered for the rest of the session instead of re-prompting on every connection
  • Improved MCP server reliability: capability discovery (tools/list, prompts/list, resources/list) now retries transient network errors with short backoff
  • Improved MCP OAuth: discovery and token requests now retry once after transient network errors, and headless environments skip the browser popup and go straight to the paste-the-URL prompt
  • Improved MCP error messages: HTTP 404 errors now show the URL and point to your MCP config
  • Improved vim mode prompt-history search (NORMAL /) to hint how to reach slash commands
  • Reduced CPU usage during streaming responses by ~37% by coalescing text updates to 100ms
  • Reduced long-session memory growth from terminal output cache

v2.1.190

Compare Source

  • Bug fixes and reliability improvements

v2.1.187

Compare Source

  • Added sandbox.credentials setting to block sandboxed commands from reading credential files and secret environment variables
  • Added org-configured model restrictions to the model picker, --model, /model, and ANTHROPIC_MODEL, with a "restricted by your organization's settings" message when a restricted model is selected
  • Added mouse click support to select menus (permission prompts, /model, /config, etc.) in fullscreen mode
  • Fixed --resume failing with "No conversation found" when the original -p run produced no model turns
  • Fixed --json-schema and workflow agent({schema}) structured output: the model can no longer re-call StructuredOutput indefinitely after a successful call, and follow-up turns now reliably return structured output
  • Fixed remote MCP tool calls that hang with no response for 5 minutes — they now abort with an error instead of blocking indefinitely (override with CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT)
  • Fixed Claude Code Remote sessions taking ~2.7s longer to start after the agent proxy CA system-trust install was added
  • Fixed pasted Korean/CJK text turning into mojibake in terminals that deliver paste as per-byte extended-key events
  • Fixed /update over Remote Control hanging when a startup trust dialog would have shown
  • Fixed background jobs in the agents view getting stuck in "working" indefinitely when the agent ended a turn without producing structured output
  • Fixed channel connections dropping after navigating to the agents view and back, and after /bg, /tui, or /update
  • Fixed agent stop notifications not correctly attributing who stopped the agent, and improved wording ("finished"/"stopped" instead of "came to rest")
  • Fixed subagent depth tracking: resumed subagents now restore their original spawn depth, and forked subagents now count toward the depth cap
  • Fixed leaked agent worktree registrations: locked .git/worktrees/ entries from killed agents are now cleaned up automatically
  • Fixed Cmd+click not opening URLs in fullscreen mode in Ghostty on macOS
  • Fixed claude --help not listing the --bg/--background flag
  • Fixed Esc, Ctrl-C, and Ctrl-D not working while /share is uploading
  • Improved /install-github-app: GitHub Actions workflow setup is now optional — you can install just the GitHub App and skip the workflow/secret steps
  • Improved /btw with ←/→ arrow navigation to step through earlier answers
  • Improved /plugin to surface plugins you haven't used recently so you can clean them up
  • [VSCode] Fixed extension becoming unresponsive when resuming a large session
github/copilot-cli (@​github/copilot)

v1.0.65

Compare Source

  • /cd now persists the working directory so resuming a session returns to it, and discovers custom agents in the new directory
  • Commands with slash-prefixed string arguments (e.g. --body "/azp run") no longer trigger spurious filesystem permission prompts
  • Fullscreen timeline stays anchored when older content is trimmed
  • Resume open canvases automatically after restarting the CLI
  • Add an opt-in status bar item showing CI check status (passing/running/failing) for the current branch
  • Add a copilot skill subcommand (and a /skill alias for /skills) to list, add, and remove skills from a file, URL, or directory
  • Prevent the GitHub background from flashing on startup with non-GitHub themes
  • Prevent brief console windows from flashing on Windows when the agent runs hook commands or resolves command paths
  • Include userPromptSubmitted hook additionalContext in the model-facing prompt
  • Keep Windows paths intact when adding stdio MCP servers
  • Stop MCP shutdown from waiting on in-flight server connects
  • Restart the CLI without shutdown timeouts
  • Remove syntax highlighting from shell commands in the timeline
  • Keep custom-agent subagent model selections when using BYOK providers
  • Parse /every schedules on the session's main model
  • Render inline images reliably in tmux
  • The ask_user freeform option wraps text and keeps the cursor aligned
  • Save custom status line commands in /settings
  • Show the streaming byte count separately from the cancel hint
  • Handle wakeup misfires with a graceful message when no self-paced schedule is active
  • Silent MCP OAuth refresh reuses the granted scope so reconnects stay signed in
  • Up/down history and Ctrl+R reverse search now include past shell commands while in normal mode, so you can recall and re-run a shell command without first typing ! to enter shell mode

v1.0.64

Compare Source

  • Path access prompt shows resolved symlink targets so you can see exactly what access is being granted
  • Show the pay-as-you-go additional usage budget at launch, refresh it after a request is rejected for hitting the additional spend limit, and show a friendly message when the additional usage limit is reached
  • Add websocket responses support for BYOK OpenAI-compatible providers
  • Resumed sessions reproduce the original attached-file references even if those files later change on disk, avoiding prompt-cache resets
  • Free-text search terms containing colons (e.g. CLI:) now return correct results in Issues and Pull requests search instead of being misread as invalid qualifiers by GitHub
  • Support static OAuth client overrides, including client secrets, for MCP server authentication
  • Preserve keystrokes typed while the CLI is still loading
  • Add an option to bypass the sandbox for shell commands
  • Add mouse click and double-click selection to paginated lists
  • Link PR and issue references in markdown tables
  • Use the GitHub theme by default and enable home tabs and prompt frame for all users
  • Keep terminal output aligned after terminal resizes
  • Content exclusion no longer blocks every file when the rules service is unreachable (offline or a transient network error). Access is allowed until rules can be fetched and retried in the background, matching the editor's behavior.
  • Configure the rubber-duck subagent in /subagents, including a complementary model strategy that picks an opposite-family model
  • /diff shows a session diff of Copilot's changes in non-git folders
  • Set an HTTP(S) proxy with a user setting
  • Resume sessions by name even when the name contains spaces
  • Hide unsupported slash commands in remote-hosted sessions
  • Add a setting to hide the conversation scrollbar
  • Add inline image rendering in the CLI
  • Add argument-hint frontmatter support for skills
  • OpenTelemetry: chat spans after a successful compaction carry gen_ai.conversation.compacted=true, and the summary is emitted as a CompactionPart in gen_ai.input.messages
  • PowerShell cmdlets (Select-String, Where-Object, ForEach-Object) no longer trigger spurious directory access prompts
  • Non-interactive prompt output now stays at column 1
  • Clear queued tool images when vision is disabled
  • Changing the model now waits until the new model is applied
  • Treat 2>/dev/null redirects as read-only in shell safety prompts
  • Normalize edited text to LF when opening prompts in an external editor
  • Skip computer-use consent prompts in full allow-all sessions
  • Remote export keeps running after /clear and /session info keeps the task URL
  • Keep the cursor on the adjacent session after deleting one in the session selector
  • Use the correct Linux libc target when resolving and auto-updating SEA packages on musl hosts
  • Allow required multi-select prompts to submit an empty selection when minItems is not set
  • Keep the home session timeline visible after attaching and restoring
  • The /settings search field supports readline editing keys and cursor movement
  • OpenTelemetry GenAI spans now emit gen_ai.usage.cache_read.input_tokens, gen_ai.usage.cache_creation.input_tokens, and gen_ai.usage.reasoning.output_tokens per the GenAI semantic conventions spec (previously used incorrect underscore-separated names)
  • Fix mouse wheel scrolling being broken in the terminal after the CLI exits by tearing down terminal modes in reverse order (mouse tracking is now disabled before leaving the alt screen)
  • Fix the /rewind file-restore confirmation dialog being clipped at the bottom when it opens above a scrolled timeline; it now shows at full height once the file list loads
  • Show --remote-export and --no-remote-export in --help output
  • Wrap expanded compact timeline shell entries so long commands and descriptions stay visible
  • Make links in markdown tables clickable
  • Show per-model token totals in /usage and speed up large history scans
  • OpenTelemetry GenAI chat spans emit gen_ai.request.reasoning.level for the configured reasoning effort
  • Autopilot mode now returns to interactive mode after the agent calls task_complete, so you aren't left in autopilot for your next prompt
  • Add /branch as an alias for /fork, matching Claude Code's command naming
  • Experimental: adds a --worktree [name] (-w) flag (enable with /experimental) that creates or reuses a git worktree under <repo>.worktrees/ and starts the session inside it
  • Add tab completion for /agent names
  • Add model family aliases like opus, sonnet, haiku, gpt, and gemini in the model setting
  • Add Ctrl+Backspace binding in /terminal-setup for Windows Terminal
  • Add SDK support for host-provided OAuth tokens for remote MCP servers
  • Experimental: in the compact timeline, click a tool-call or reasoning row to expand or collapse just that entry (like ctrl+o / ctrl+t for one row), with a subtle highlight on the row under the mouse
  • Apply MCP org policy when sessions create or reload MCP servers
  • Fixed completed background command output being unavailable when requested later
  • Keep task companion tools available to custom agents that use the task or agent alias
  • Custom agents using a tools wildcard '*' now respect deferredToolLoading opt-in switch
  • Respect tmux color detection in WSL sessions
  • Respect deferTools on MCP servers configured in custom agent frontmatter
  • Ctrl+Q enqueues a prompt while a completion picker is open
  • Sessions tab row label updates immediately when a session is renamed
  • --continue and --resume select the most recent session for the current repository
  • Shell session starts correctly when a nix-provided bash is first in PATH
  • Marketplace plugins that declare MCP servers in marketplace.json now authenticate correctly with OAuth
  • Content exclusion no longer blocks shell commands on command names or phantom paths
  • Lone surrogates no longer break session resume or truncate prompts
  • Expand Windows home-directory paths in slash-command completion
  • Keep truncated tool output previews valid UTF-8
  • CLI auto-updater downloads the correct musl Linux package on Alpine systems
  • Copy the full last assistant turn, including multi-block responses
  • Load workspace MCP servers in trusted server-mode sessions
  • Stacked diffs use the same file order as the file tree
  • Make /pr status and web confirmations link to the PR's repository
  • Restore later file changes when rewinding to a turn without a snapshot
  • Run queued ! shell commands locally instead of sending them to the agent
  • Scheduled prompts manager dialog shrinks to fit its entries
  • Keep the @​-file picker populated when file search hits a symlink loop
  • Display cache-write pricing for models that omit it
  • Allow /update to restart sessions started with copilot -r
  • Prevent pickers and dialogs from shifting or clipping as content loads
  • Only render double tildes as strikethrough in markdown
  • Allow /allow-all to work in relay sessions
  • Restore clickable PR and issue links in compact timeline markdown
  • Repo-scoped plugins no longer leak into global config across projects
  • Keep /model working on resumed sessions after signing in
  • PowerShell script blocks and interpolated $() sub-expressions no longer trigger content-exclusion refusals
  • Exit message always shows the session ID in the resume command instead of the friendly name
  • Wait for the remote sandbox to start before opening the cloud session
  • Autopilot mode now auto-handles elicitation, ask_user, sampling, and permission prompts (including on launch with --autopilot and during continuation turns) instead of surfacing dialogs to the user
  • Newly spawned sessions appear at the bottom of their group in the agents tab
  • Attached images and PDFs persist across session resume even if the source file is later changed or deleted
  • Allow disabling task and explore built-in subagents
  • Session resume stays responsive while large histories load
  • Code search and worktree listing are faster
  • Use plain text labels instead of decorative emoji in CLI output
  • Syntax-highlight shell commands in the timeline
  • Preserve open canvas instances across reconnects and restarts
  • Forward typed rejection feedback from preToolUse prompts to the model
  • Show statusline picker checkboxes in green for enabled items and gray for disabled items
  • Show shell timeline rows with a yellow $ prompt and Shell label
  • Add a Folder column to the resume picker to show each session's working directory
  • Automatically follow your system light and dark mode changes
  • Use semantic mascot theme colors in the CLI banner
  • Let footer dialogs scroll with the timeline in unified view
  • Click filenames in /diff tree to jump to that file's first change
  • Render inline code with themed chip styling in Markdown
  • Show installed plugin MCP servers in mcp commands
  • Remove terminal-reported color scheme support
  • Add /diagnose command to analyze session logs
  • Add /mcp registry installation for browsing and installing MCP servers
  • Make /security-review available to all users without --experimental
  • Discover MCP servers provided by installed plugins
  • Add CSV output support for MCP tools
  • Add /loop alias for the /every command
  • Remove bogus Ctrl+Enter VS Code keybinding created by old /terminal-setup
  • Images returned by tools stay visible to the model across later turns and after resuming a session
  • Preserve Markdown blockquotes in /share exports
  • Filter long streamed results correctly when content exclusion is enabled
  • Show a friendly message when additional usage limit is reached
  • Search tools handle Windows-style glob patterns correctly
  • Prevent kill self-protection from flagging quoted pipes and paths ending in kill
  • Azure CLI, PowerShell, and Developer CLI credentials work again for Azure auth
  • Slash-command picker name column widened from 25 to 35 characters so fewer long skill names are truncated
  • Wrap long lines in /diff view so content no longer truncates
  • Improve /diff hotkey labels for branch, whitespace, and tree navigation
  • Remove the legacy intent-reporting tool from the CLI
kaitranntt/ccs (@​kaitranntt/ccs)

v8.6.1

Compare Source

Bug Fixes
  • bar: update release target when publishing app (999f130)
can1357/oh-my-pi (@​oh-my-pi/pi-coding-agent)

v16.1.18

Compare Source

Added
  • Added --list flag to view stored OAuth accounts for a provider
  • Added --account flag to select a specific OAuth account by index for token retrieval
  • Added mouse support for navigation, selection, and toggling in the extensions dashboard
Changed
  • Enabled fullscreen alternate-screen mode for the extensions dashboard
  • Improved tab navigation to mute empty enabled providers while keeping disabled ones selectable
  • /extensions (the Extension Control Center) now opens as a fullscreen window on the terminal's alternate screen, matching /settings: it borrows the alt buffer for its lifetime (the transcript is untouched underneath) and uses the same modern chrome — a titled rounded frame, the shared TabBar for provider switching, and a divider/footer layout. The dashboard is now mouse-aware: the wheel scrolls the list (and the detail inspector, which gained its own scroll viewport), hovering highlights tabs and rows, and clicking selects a row or — when it is already selected — toggles it; clicking a provider tab switches to it. Empty enabled providers are unselectable while disabled providers stay selectable so their master switch can re-enable them.
Fixed
  • Fixed omp install of legacy pi extensions failing with Cannot find module '/$bunfs/root/packages/coding-agent/src/extensibility/typebox.js' on every released omp-<platform>-<arch> binary. Commit dc5c93462f removed worker entrypoints from scripts/ci-release-build-binaries.ts; the inline comment then claimed the legacy-shim and package-barrel entrypoints (typebox.ts, legacy-pi-{ai,coding-agent}-shim.ts, packages/{agent,natives,tui,utils}/...) were "still" passed to bun build --compile, but they had never been re-added. The release binaries shipped without those files in bunfs, so legacy-pi-compat.ts redirected typebox imports to a bunfs path that didn't exist. __resolveTypeBoxShimPath now mirrors __validateLegacyPiPackageRootOverrides (#​2168) by dropping the override when the shim file is missing, so a missing shim falls through to native node_modules resolution instead of emitting a dead bunfs URL (#​3414).
  • Fixed every legacy @(scope)/pi-* and @sinclair/typebox import failing to load on the omp-darwin-arm64 release binary (and any other omp built with Bun 1.3.14). __validateLegacyPiPackageRootOverrides and the rewriteLegacyPiImports emit path both depended on --compile extras being reachable as /$bunfs/root/... filesystem entries, but Bun 1.3.14 stopped exposing them through every API (fs.existsSync, Bun.file().exists(), Bun.resolveSync, await import() on the bunfs path or its file:// URL all fail; only /$bunfs/root/<binary-name> itself answers). legacy-pi-compat.ts now keeps a JS-heap reference to every bundled pi-* surface in a lazy-loaded sibling legacy-pi-bundled-registry.ts and serves them through an omp-legacy-pi-bundled: virtual namespace whose Bun.plugin().onLoad returns synthetic re-exports — no bunfs path ever leaves the module in compiled mode, and dev / source-link / installed-package modes keep the historical file:// rewrite. The matching --compile extras in scripts/build-binary.ts, the shared scripts/binary-entrypoints.ts list, and the dead BUNFS_PACKAGE_ROOT / bunfsPath / __computeBunfsPackageRoot / __joinBunfsPath helpers are gone. (#​3423)

v16.1.17

Compare Source

Fixed
  • Fixed mnemopi auto-retain extracting facts/entities from assistant-authored transcript turns. MnemopiSessionState.retainMessages still stores the full multi-role window for episodic recall, but passes only user-authored turns as extractText, so assistant prose containing always/never no longer becomes durable user Instruction: memory. (#​3372)
  • Fixed lazy tool auto-downloads hanging when Bun.write(dest, response) receives a streaming fetch() Response; tool assets now stream the response body to disk with the existing download abort signal and remove partial files on abort. (#​3369)
  • Fixed profile-alias installer producing backslash-separated paths for bash/zsh/fish config files on Windows. path.join was used unconditionally, producing Windows-style paths that POSIX shells can't resolve. The installer now uses path.posix.join for non-Windows platforms and normalizes script paths to forward slashes for POSIX shell alias blocks, so omp --alias works correctly in Git Bash and WSL.
  • Fixed pasted or dragged non-image file paths in the TUI prompt staying as inert raw text; existing files now attach as clean local://attachment-N.<ext> references while image paths keep the image attachment flow. (#​3360)
  • Slash commands are now recorded in input history (Up Arrow recall). Previously only 4 commands (/plan, /goal, /mcp, /ssh) stored their text; all other built-in slash commands were silently skipped because executeBuiltinSlashCommand returned true before addToHistory was called. History is now centralized in the input controller after successful command dispatch. Commands that may carry secrets (/login <url> with OAuth callback params, /mcp add --token <token>) are excluded from history to prevent credential leakage (#​3148)
  • Fixed the ask tool's "Other (type your own)" free-text editor (prompt-style HookEditorComponent) ignoring Ctrl+Q and Ctrl+Enter, so Windows Terminal users who learned the app.message.followUp chord from the main editor (#​1903 / fixed by #​1905) got zero feedback on submit. The hook-style and main-editor surfaces honored matchesAppFollowUp; the prompt-style handler did not, leaving plain Enter as the sole submit path and Ctrl+Enter falling through to Editor as a newline (silently swallowed by WT). #handlePromptStyleInput now checks matchesAppFollowUp first — mirroring #handleHookStyleInput — and the hint reads enter or ctrl+q submit so the chord is discoverable. (#​3353)
  • Fixed the TUI freezing when a tool approval prompt fires while /settings (or the Extensions/Agents dashboard) is open. The fullscreen overlay's close handler restored focus to the editor it had captured at open time, but ExtensionUiController had since swapped the editor out of the editor slot for the approval prompt — so on exit the visible prompt sat unreachable while keystrokes routed to the now-unmounted editor (no Enter/Up/Down/Esc response, only Ctrl+C escaped). SelectorController now restores focus to whatever currently owns the editor slot via a focusActiveEditorArea() helper, applied to settings, extensions dashboard, and agents dashboard close paths. (#​3349)
  • Fixed /settings coercing enum/text values to display strings before handing them to the TUI list, preventing YAML numeric enum values from reaching native truncation (#​3338).
  • Fixed all extension loading silently failing on the cross-compiled omp-darwin-arm64 release binary (downloaded directly or via a Homebrew tap wrapper) because __computeBunfsPackageRoot mis-handled import.meta.dir = "//root/omp-darwin-arm64". Bun 1.3.14 reports <bunfs-root>/<binary-name> for the compiled entry's import.meta.dir, but the pre-fix function joined metaDir + "packages" and produced /root/omp-darwin-arm64/packages — the binary basename was baked into every bunfs path, so the TypeBox/legacy-pi shims and every @oh-my-pi/pi-* package-root override failed existsSync validation and resolveCanonicalPiSpecifier fell through to a bunfs Bun.resolveSync that also could not find the module. The function now detects the bunfs-root + binary-basename shape (path.basename(path.dirname(metaDir)) === "root") and strips the trailing binary segment by slicing the original metaDir; the production bunfs shim join path also preserves Bun's bunfs-native //root / B:\~BUN\root prefix that path.join would otherwise collapse. (#​3329)
  • Fixed llama.cpp discovery to prefer per-model /v1/models meta.n_ctx/meta.n_ctx_train values, refresh selected models after lazy load, and bypass fresh-cache reuse so server restarts update context windows. (#​3310)
  • Fixed task.maxConcurrency: 0 serializing subagent spawns instead of running them unbounded. The settings UI labels 0 as "Unlimited", but the session-scoped spawn Semaphore clamped max via Math.max(1, max), so the second subagent body in a batch always waited for the first to release the seat. The constructor now treats max <= 0 (and any non-finite input) as unbounded via Number.POSITIVE_INFINITY, matching the eval parallel()/pipeline() worker-pool semantics (#​3305).
  • Fixed MCP tool calls forwarding empty optional placeholder arguments ("" and {}) to tools/call; optional placeholders are now omitted while required fields and meaningful falsy values are preserved. (#​3302)
  • Fixed the welcome Tip: line rendering with hardcoded #b48cff / #&#8203;9ccfff pastels plus a manual \x1b[2m dim, so any light theme dropped the body to ~1.5:1 contrast (well under WCAG AA). renderWelcomeTip in packages/coding-agent/src/modes/components/welcome.ts now paints the label through theme.fg("customMessageLabel", …) and the body through theme.fg("muted", …) (no manual dim), so the line tracks the active theme and stays legible on light backgrounds. (#​3337)
  • Fixed omp usage and the /usage command duplicating provider-wide disclaimer notes (e.g. OpenCode Go's "OMP-observed spend only") once per account × limit window. Provider-level notes now render once above the per-account sections in the TUI, CLI, and ACP render paths, and identical per-limit notes are deduplicated in the TUI aggregate renderer. (#​3268)
  • Fixed the welcome panel advertising ? for keyboard shortcuts after the ? shortcut was deliberately removed (commit dcf482c). The tips section now points users at /hotkeys instead. (#​1614)
  • Fixed Devin provider models silently producing empty responses under the default defaultThinkingLevel: auto. Devin models advertise reasoning: true but no thinking.efforts (Cascade selects effort by routing to sibling model ids, not a wire param), so getSupportedEfforts(model) was empty; clampAutoThinkingEffort returned the classifier-picked effort as-is, which then tripped requireSupportedEffort in pi-ai/stream.ts with Thinking effort low is not supported by devin/<id>. Supported efforts: (silently swallowed by the TUI). clampAutoThinkingEffort now returns undefined when the model has no controllable effort surface, matching clampThinkingLevelForModel; the auto-thinking turn hook also short-circuits the classifier call for these models. (#​3356)
  • Fixed omp tiny-models download exiting before its unref'd worker subprocess could install the runtime or download model weights. The tiny-model client now references the worker while requests are pending so standalone CLI downloads wait for Downloaded ... / Failed ... completion. (#​3291)
  • Fixed marketplace plugin installs registering only in installed_plugins.json and never in the runtime plugin tree, leaving slash commands and extensions unavailable after omp plugin install name@marketplace. The runtime loader now also enumerates the project-scope plugins root (<projectAnchor>/.omp/plugins) so --scope project installs surface alongside user-scope installs, with project entries shadowing same-named user entries (#​3244).
  • Fixed umans requests with more than 10 live context images still sending every image despite the provider budget; outgoing provider contexts now drop the oldest images above the active provider cap while preserving text and newest images (#​3230).
  • Fixed snapcompact auto-compaction looping the "snapcompact could not bring the context under the limit — using an LLM summary instead" warning on every threshold tick for sub-1M-token models (Claude Sonnet 4.5, GPT-5.x, Gemini 2.x). snapcompact.compact() was called with no maxFrames override, so it defaulted to MAX_FRAMES_DEFAULT = 80; the projection in AgentSession charges FRAME_TOKEN_ESTIMATE = 5024 per frame block (the conservative high-res Anthropic ceiling), making 80 × 5024 ≈ 402k frame-token projections that always overflow a 200k budget. AgentSession.#computeSnapcompactMaxFrames now sizes the maxFrames cap from a shape-aware reserve — 2 × geometry(shape).capacity worth of verbatim text-edge chars billed at the tiktoken cl100k 4-chars/token baseline (with a 1.15 multiplier for tokenizer drift), plus a 2k summary-template allowance — mirroring what #projectSnapcompactContextTokens will charge once frames land. The shape comes from the same snapcompact.resolveShape(model, settings) call the auto and manual paths pass into snapcompact.compact(). The cap reserve applies only to the frame-cap math, not the skip decision: snapcompact is skipped outright only when kept-recent + non-message ≥ ctxWindow − reserve (no headroom at all), so the frame-less text.length <= 2 * edgeCap short-circuit in planArchive can still land a valid text-only archive when residual headroom is positive but below the cap reserve. The projection guard catches any actual frame-bearing archive that overflows. (#​3247)
  • Fixed large-session TUI stalls by tailing appended transcript JSONL and collapsing compacted history on the live display surface (#​3258).
  • Fixed status-line usage segment ignoring Codex subscription limits that carry a scope.tier (#​2877).
  • Fixed extension tool_call/tool_result events for hashline edit calls to expose event.input.path for single-file edits and event.input.paths for every parsed target, so planning-mode gates can allow one markdown plan edit but still block multi-file hashline calls that cannot be represented by one path (#​1678).
  • Fixed scripted eval agent() subagents continuing after a successful yield when a trailing empty assistant stop arrived after the executor's yield-triggered abort. The session's agent_end maintenance compared #assistantEndedWithSuccessfulYield(msg) against the trailing empty-stop message — not the prior yield-bearing one — so the empty-stop recovery path appended a retry reminder and scheduled agent.continue(), reviving the already-yielded child. The yield handler now sets a sticky #yieldTerminationPending flag (cleared on the next prompt()) that short-circuits empty-stop / unexpected-stop / compaction continuations for the rest of the run, so a successful yield is terminal regardless of trailing stops (#​3389).
  • Fixed snapcompact rasterizing transcript frames into requests bound for GitHub Copilot business and enterprise endpoints, which then rejected the session permanently with 400 vision is not supported. The snapcompact vision gate now also short-circuits whenever model.provider === "github-copilot" and the resolved baseUrl is not the canonical personal-Copilot host, protecting cached/stale Model specs that still advertise ["text","image"] on a non-personal endpoint. (#​3387)

v16.1.16

Compare Source

Breaking Changes
  • Renamed the eval agent() helper parameters agent_typeagent and return_handlehandle across every workflow runtime (Python, JavaScript, Ruby, Julia), so the names are identical in every language (no camelCase/snake_case split) and the agent-selection parameter matches the task tool's agent. The __agent__ eval bridge wire protocol was renamed to match.
  • Changed the eval tool to take a single cell per call ({ language, code, title?, timeout?, reset? }) instead of a cells array. State still persists per language across separate eval calls, tool calls, and task subagents, so each call is one logical step that reuses everything earlier calls defined — the array only encouraged re-importing/re-declaring the same setup in every batch. The schema, field descriptions, examples, system eval.md/workflowz helper docs, and the [i/n] cell-counter (now hidden for single cells) were updated to match; the renderer, ACP start-text, copy-targets, and collab-web tool view still parse legacy multi-cell transcripts.
Added
  • Added isolated, apply, and merge options to eval agent() across every workflow runtime (Python, JavaScript, Ruby, Julia) so workflowz-driven fan-outs can request the same copy-on-write worktree isolation the task tool offers (strict opt-in via isolated: true, matching the task tool; apply: false keeps captured patches/branches without merging back; merge: false forces patch mode). Extracted the task-isolation lifecycle into task/isolation-runner.ts so the eval bridge and TaskTool share one implementation (#​3196)
Changed
  • Made the session picker fullscreen with mouse support for clicking rows and scrolling
  • Pinned the session picker footer to the bottom of the screen to prevent layout flickering
  • Simplified eval tool to accept a single logical step (code block) instead of an array of cells
  • Updated eval tool documentation to emphasize incremental, single-step execution
  • Restricted bash tool from using ls or find, requiring the use of read or find tools
  • Simplified todo tool interface to accept a single operation directly instead of an array of ops
  • Reinforced routing of fragile, multi-step shell logic to the eval tool over bash. The system-prompt tool policy, bash.md, and eval.md now treat loops, conditionals, heredocs, inline -e/-c scripts, multi-stage pipelines, and quote/JSON escaping as the signal to write an eval cell; bash's "compute a fact" carveout is narrowed to single short pipelines, and eval.md now actively claims that territory with runtime-templated examples (only enabled backends are advertised).
  • Made eval an essential built-in tool (loadMode: "essential", added to the default essential tool set) so it stays active under tools.discoveryMode: "all" instead of being hidden behind search_tool_bm25.
  • Made the --resume session picker fullscreen on the terminal's alternate screen, so the list scrolls with the mouse wheel and a row resumes its session on left click. Rows are hit-tested against the live scroll window, and the keybinding hint + bottom border are now pinned to the screen bottom instead of drifting up and down as the visible window changes height.
Fixed
  • Fixed local:// URLs decoding images as corrupted text (mojibake) instead of showing the image
  • Fixed omp --resume hanging instead of exiting when the startup session picker is cancelled (Esc) or there are no sessions to resume. Startup arms long-lived handles (theme/appearance listeners, settings save timer, model registry), so the cancel/empty paths' bare return left the event loop alive and the process stuck after the picker cleared the alternate screen. These paths now exit cleanly via process.exit(0), matching the --version/--export early-exit convention. The in-session /resume picker is unaffected — it keeps its own cancel handler that just closes the overlay.
  • Fixed the /resume session picker scrolling down after a session is deleted. The delete-confirmation dialog was mounted as a sibling below the picker's bottom border, briefly growing the picker past the terminal height; the TUI committed the picker's header rows into native scrollback to fit, and when the dialog closed windowTop stayed pinned at the new commit boundary, leaving the header stranded above the viewport. The picker now hosts the SessionList in a single content slot and swaps the dialog INTO that slot (replacing the SessionList) while it is open, so the dialog only competes with the SessionList's rendered budget — not the SessionList AND the picker chrome — and the picker frame stays inside the viewport. (#​3283)
  • Fixed the eval tool card not streaming a still-running cell's stdout: a long-running cell (e.g. a time.sleep() monitor loop) showed nothing until it returned or was interrupted, then dumped everything at once. The renderer draws cell output from details.cells[i].output, which was only populated after backend.execute() resolved — live stdout streamed into the transient result content tail (and renderContext.output), which the per-cell render branch ignores. Streamed chunks now append to the active cell's output (a dedicated per-cell tail buffer, capped like the aggregate) as they arrive, so the card shows progress live; on completion the authoritative full output overwrites the live tail. log()/phase()/display() and status ops were unaffected because they already stream via the status channel.
  • Fixed Escape doing nothing in the Settings text-input fields (e.g. "Python Interpreter") on terminals with the kitty keyboard protocol active (ghostty/kitty). Inside the fullscreen settings overlay the protocol reports Escape as the CSI-u sequence \x1b[27u, which the text-input submenu's raw \x1b compare missed; handleInputOrEscape now decodes Escape via matchesKey, matching every other Escape-to-cancel path.
  • Fixed Julia eval graph/plot visualization (Plots.jl, GraphRecipes, Makie, etc.) never rendering inline. Two bugs: (1) the runner's build_mime_bundle/emit_error dispatched show/showable/showerror directly from the long-lived main() loop, whose world age is frozen before any cell ran, so rich show(::IO, ::MIME"image/png", …) methods registered when a plotting package is using-ed inside a cell were invisible — show fell back to the default struct repr (which itself threw on Julia 1.12, aborting the whole result). These calls now route through Base.invokelatest, and the text/plain probe is guarded so a failing repr can no longer suppress the image MIME. (2) The default GR backend popped up a native gksqt GUI window on each plot; the runner now defaults GKSwstype=100 (headless, overridable) so plots render only as inline PNGs, mirroring the Python runner's MPLBACKEND=Agg default.
  • Fixed streaming output blocks incorrectly calculating preview height, preventing flickering banners
  • Fixed streaming bash/eval tool output duplicating its … (N earlier lines, showing 10 of M) (ctrl+o to expand) preview into native scrollback. The collapsed output is a sliding tail window fixed at 10 lines, so when the box outgrew the live viewport (a tall command/output under a still-live predecessor such as a parallel tool) its mutating tail scrolled above the commit window and the renderer re-committed a fresh snapshot every frame, stacking dozens of stale preview banners and chunks. The output preview is now clamped to the viewport tail (Math.min(10, previewWindowRows())) and measured in visual rows at the box's inner content width (via the new outputBlockContentWidth helper), so on short terminals the volatile tail shrinks to stay on-screen and is never committed. Fixes the duplication introduced when scroll-off commits were made loss-free.
  • Prevented /handoff from executing while a response is streaming to avoid session corruption
  • Fixed /handoff cold-missing the provider prompt cache. Handoff generation now builds its request through the same pipeline a live turn uses (convertMessagesToLlm + Agent.buildSideRequestContext + prepareSimpleStreamOptions, via the new generateHandoffFromContext), so it reuses the live system prompt, normalized tools, transformed/obfuscated message history, and — critically — a stable promptCacheKey with a unique side sessionId. Previously the oneshot sent no cache-routing key and skipped the transformContext/transformProviderContext and tool/message normalization the loop applies, so its prefix never matched what the turn populated and every handoff re-read the whole context uncached. Mirrors the cache-preserving path already used by /btw and /omfg.
  • Fixed /handoff (and the RPC handoff command) resetting the agent while a response was still streaming, which let the live turn keep emitting into the torn-down session. Manual handoff now refuses while a prompt is in flight (matching /fork and /move); the auto-handoff path is unaffected.
  • Fixed Exa web search requests firing back-to-back with no client-side pacing by adding a configurable exa.searchDelayMs delay (default 1000ms) between Exa search requests. (#​3271)
  • Fixed ask returning (cancelled) or aborting the tool when Escape dismissed Other (type your own) custom input; it now returns to the option selector so the user can pick a listed answer instead. (#​3269)
  • Fixed /goal threshold auto-compaction skipping real sessions through three paths: per-turn supersede/drop-useless pruning no longer deflates the threshold trigger below the last provider-billed context; active-goal text stops now attempt threshold maintenance before unexpected-stop retry continuations can return from post-turn handling; and empty toolUse stops keep the existing cleanup pass that strips the orphan assistant from active context + session history before any compaction continuation. Active-goal compaction continuations now also resolve completed retry gates before returning, preventing isRetrying from staying stuck after a retry succeeds over the threshold. Added agent_end maintenance routing and Auto-compaction threshold decision debug logs so future no-start reports identify the exact early-return branch and the billed/stored/resolved/post-maintenance token counts that fed shouldCompact. (#​3174)
  • Fixed active /goal runs that never reached agent_end because the model kept emitting tool calls inside one agent run. Threshold maintenance now runs between tool-call turns, compacts the live loop context in place, and suppresses queued continuations that would race the still-running goal loop. (#​3174)
Removed
  • Removed append, tree, and diff eval helper functions from Python, JavaScript, and Ruby
  • Removed sort, uniq, and counter text processing eval helpers from Python, JavaScript, and Ruby
  • Removed the append(path, content), tree(path, max_depth?, show_hidden?), and diff(a, b) eval prelude helpers from every workflow runtime (Python, JavaScript, Ruby, Julia), along with their status renderers, icon entries, and tool/docs references. Use write/read for file mutation and tool.<name>(...) for richer filesystem operations.
  • Removed the sort(text, reverse?, unique?), uniq(text, count?), and counter(items, limit?, reverse?) eval text helpers from the Python, JavaScript, and Ruby prelude surfaces (Julia never defined them), along with the JS HelperBundle/HelperOptions members and docs references. Sort/dedupe/count inline in cell code instead.

v16.1.15

Compare Source

Added
  • Added a share.store setting (blob "Encrypted Blob" | gist "GitHub Gist", default blob) controlling where /share uploads the encrypted session blob — the share server (blob) or a secret GitHub gist with share-server fallback (gist).
Changed
  • Changed /share to upload the encrypted session blob to the share server by default instead of a secret GitHub gist. Gist-hosted shares are fetched through the unauthenticated GitHub gist API from the viewer's browser, which GitHub rate-limits to 60 requests/hour per IP, so shared NATs and repeated reloads surfaced `F

Note

PR body was truncated to here.


Configuration

📅 Schedule: (in timezone UTC)

  • Branch creation
    • At any time (no schedule defined)
  • 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 has been generated by Mend Renovate.

@shunkakinoki
shunkakinoki enabled auto-merge (squash) June 30, 2026 04:25
@indent-zero

indent-zero Bot commented Jun 30, 2026

Copy link
Copy Markdown
Contributor
PR Summary

Renovate force-pushed again to bump additional patch/minor floors across package.json, bun.lock, and pyproject.toml. All bumps remain caret floor-only — bun.lock diffs are limited to workspace spec strings, and resolved package entries already satisfy the new floors, so no transitive dep churn.

  • @anthropic-ai/claude-code (+ 8 platform-specific optionals): ^2.1.186^2.1.191
  • @github/copilot: ^1.0.63^1.0.65
  • @kaitranntt/ccs: ^8.6.0^8.6.1
  • @oh-my-pi/pi-coding-agent, @oh-my-pi/pi-natives: ^16.1.13^16.1.18
  • @posthog/cli: ^0.7.30^0.7.32
  • @typescript/native-preview: ^7.0.0-dev.20260623.1^7.0.0-dev.20260624.1
  • acpx: ^0.11.0^0.11.2
  • openclaw: ^2026.6.9^2026.6.10
  • playwright-chromium: ^1.61.0^1.61.1
  • pyproject.toml ruff: >=0.15.18>=0.15.19

Issues

No issues found.

CI Checks

All CI failures on commit b5901a7 remain pre-existing infrastructure/config issues unrelated to the Renovate dep bumps. Same signatures throughout: bernstein-2.8.2 nix build failure (wheel runtime dep check) cascading into every nix/docker/e2e job, and an invalid /home/runner/.ruler/ruler.toml breaking the upgrade job.

Failing nix-check / nix-linux / nix-darwin / nix-nixos / nix-test / nix-flake
  • Nix fails to build bernstein-2.8.2.drv (wheel runtime dep check), cascading into home-manager / activation-script derivations. Pre-existing environment issue unrelated to the bumped packages.
Failing upgrade-check / upgrade
  • make upgrade-dev fails at ruler-apply-global: [ruler] Invalid configuration file format (Context: File: /home/runner/.ruler/ruler.toml, Errors: global). Pre-existing on main.
Failing docker-check / docker-build-push (linux/amd64, linux/arm64)
  • Docker image build hits the same bernstein-2.8.2 nix derivation failure inside the container build. Not related to the dep bumps.
Failing e2e-check / e2e-run (Ubuntu, NixOS, MacOS)
  • All three e2e matrix legs share the same bernstein-2.8.2 nix build failure. Pre-existing, not introduced by this PR.

@mesa-dot-dev

mesa-dot-dev Bot commented Jun 30, 2026

Copy link
Copy Markdown

You do not have enough credits to review this pull request. Please purchase more credits to continue.

@coderabbitai

coderabbitai Bot commented Jun 30, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 64110d3a-b54f-4bc2-b891-b8aa59cbac7b

📥 Commits

Reviewing files that changed from the base of the PR and between 24dafd8 and b5901a7.

⛔ Files ignored due to path filters (1)
  • bun.lock is excluded by !**/*.lock
📒 Files selected for processing (2)
  • package.json
  • pyproject.toml
✅ Files skipped from review due to trivial changes (1)
  • pyproject.toml

📝 Walkthrough

Summary by CodeRabbit

  • Chores
    • Updated several app and tooling dependencies to newer patch versions to improve stability and compatibility.
    • Refreshed the Python tooling version by bumping the ruff minimum version in the tools dependency group.

Walkthrough

The PR bumps several npm dependency ranges in package.json and raises the ruff minimum version in pyproject.toml.

Changes

Dependency version updates

Layer / File(s) Summary
Update package.json dependency ranges
package.json
@anthropic-ai/claude-code, @github/copilot, @kaitranntt/ccs, @oh-my-pi/pi-coding-agent, @oh-my-pi/pi-natives, @posthog/cli, @typescript/native-preview, acpx, openclaw, and playwright-chromium were bumped, including the platform-specific @anthropic-ai/claude-code-* optional dependencies.
Update tools ruff constraint
pyproject.toml
The tools dependency group now pins ruff to >=0.15.19.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Possibly related PRs

Poem

🐇 Hop-hop, the versions glide,
Patch bumps tucked side by side.
A little ruff, a few new deps,
The dotfiles garden takes small steps.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the dependency patch updates in the changeset.
Description check ✅ Passed The description matches the dependency update PR and mentions the same packages and release notes.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch renovate/patch-all-minor-patch

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the dependencies @oh-my-pi/pi-coding-agent and @oh-my-pi/pi-natives from version ^16.1.13 to ^16.1.15 in both package.json and bun.lock. There are no review comments, and I have no feedback to provide.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 2 files

Re-trigger cubic

Copilot AI review requested due to automatic review settings July 1, 2026 04:30
@shunkakinoki
shunkakinoki force-pushed the renovate/patch-all-minor-patch branch from 53923d5 to 24dafd8 Compare July 1, 2026 04:30
@shunkakinoki shunkakinoki changed the title fix(deps): update all non-major dependencies to ^16.1.15 fix(deps): update all non-major dependencies (patch) Jul 1, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This Renovate-generated PR updates patch-level versions across the repo’s Python and Bun-managed tool dependencies, keeping the dotfiles/tooling environment current without changing application logic.

Changes:

  • Bumped ruff minimum version in pyproject.toml (>=0.15.18>=0.15.19).
  • Updated several npm dependency ranges in package.json (e.g., @anthropic-ai/claude-code, @github/copilot, playwright-chromium, etc.).
  • Regenerated/updated bun.lock to reflect the updated dependency ranges.

Reviewed changes

Copilot reviewed 2 out of 3 changed files in this pull request and generated no comments.

File Description
pyproject.toml Updates the minimum ruff version used for the Python tooling group.
package.json Updates patch versions for multiple JS/CLI dependencies and platform optional deps.
bun.lock Updates Bun lockfile entries to align with the dependency range updates.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@shunkakinoki
shunkakinoki force-pushed the renovate/patch-all-minor-patch branch from 24dafd8 to b5901a7 Compare July 2, 2026 04:23
auto-merge was automatically disabled July 2, 2026 11:36

Pull request was closed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants