release: Claude Code v2.1.83 (28 patches)
This commit is contained in:
@@ -259,9 +259,9 @@ cd unlimitedcoding
|
||||
<!-- MANUAL_VERSION:START -->
|
||||
| Platform | Command |
|
||||
|----------|---------|
|
||||
| Linux / macOS | `sudo bash claude/releases/v2.1.81/install.sh` |
|
||||
| Windows CMD | `claude\releases\v2.1.81\install.bat` |
|
||||
| Windows PowerShell | `powershell -ExecutionPolicy Bypass -File claude\releases\v2.1.81\install.ps1` |
|
||||
| Linux / macOS | `sudo bash claude/releases/v2.1.83/install.sh` |
|
||||
| Windows CMD | `claude\releases\v2.1.83\install.bat` |
|
||||
| Windows PowerShell | `powershell -ExecutionPolicy Bypass -File claude\releases\v2.1.83\install.ps1` |
|
||||
<!-- MANUAL_VERSION:END -->
|
||||
|
||||
## Update
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
🌐 [English](README.md) | [Русский](README_ru.md) | [中文](README_zh.md) | [Español](README_es.md)
|
||||
|
||||
<!-- VERSION_BADGE:START -->
|
||||
Patched Claude Code CLI for use with custom API endpoints. Latest: **v2.1.81** (28 patches).
|
||||
Patched Claude Code CLI for use with custom API endpoints. Latest: **v2.1.83** (28 patches).
|
||||
<!-- VERSION_BADGE:END -->
|
||||
|
||||
## Install
|
||||
|
||||
@@ -22,6 +22,6 @@
|
||||
"timeout_ms": 3000000,
|
||||
"theme": "dark",
|
||||
"complete_onboarding": true,
|
||||
"target_version": "2.1.81",
|
||||
"target_version": "2.1.83",
|
||||
"effort_level": "high"
|
||||
}
|
||||
|
||||
@@ -1,6 +1,12 @@
|
||||
{
|
||||
"latest": "2.1.81",
|
||||
"latest": "2.1.83",
|
||||
"releases": [
|
||||
{
|
||||
"version": "2.1.83",
|
||||
"date": "2026-03-25",
|
||||
"patches": 28,
|
||||
"status": "partial"
|
||||
},
|
||||
{
|
||||
"version": "2.1.81",
|
||||
"date": "2026-03-25",
|
||||
|
||||
78
claude/releases/v2.1.83/CHANGELOG_UPSTREAM.md
Normal file
78
claude/releases/v2.1.83/CHANGELOG_UPSTREAM.md
Normal file
@@ -0,0 +1,78 @@
|
||||
## 2.1.83
|
||||
|
||||
- Added `managed-settings.d/` drop-in directory alongside `managed-settings.json`, letting separate teams deploy independent policy fragments that merge alphabetically
|
||||
- Added `CwdChanged` and `FileChanged` hook events for reactive environment management (e.g., direnv)
|
||||
- Added `sandbox.failIfUnavailable` setting to exit with an error when sandbox is enabled but cannot start, instead of running unsandboxed
|
||||
- Added `disableDeepLinkRegistration` setting to prevent `claude-cli://` protocol handler registration
|
||||
- Added `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1` to strip Anthropic and cloud provider credentials from subprocess environments (Bash tool, hooks, MCP stdio servers)
|
||||
- Added transcript search — press `/` in transcript mode (`Ctrl+O`) to search, `n`/`N` to step through matches
|
||||
- Added `Ctrl+X Ctrl+E` as an alias for opening the external editor (readline-native binding; `Ctrl+G` still works)
|
||||
- Pasted images now insert an `[Image #N]` chip at the cursor so you can reference them positionally in your prompt
|
||||
- Agents can now declare `initialPrompt` in frontmatter to auto-submit a first turn
|
||||
- `chat:killAgents` and `chat:fastMode` are now rebindable via `~/.claude/keybindings.json`
|
||||
- Fixed mouse tracking escape sequences leaking to shell prompt after exit
|
||||
- Fixed Claude Code hanging on exit on macOS
|
||||
- Fixed screen flashing blank after being idle for a few seconds
|
||||
- Fixed a hang when diffing very large files with few common lines — diffs now time out after 5 seconds and fall back gracefully
|
||||
- Fixed a 1–8 second UI freeze on startup when voice input was enabled, caused by eagerly loading the native audio module
|
||||
- Fixed a startup regression where Claude Code would wait ~3s for claude.ai MCP config fetch before proceeding
|
||||
- Fixed `--mcp-config` CLI flag bypassing `allowedMcpServers`/`deniedMcpServers` managed policy enforcement
|
||||
- Fixed claude.ai MCP connectors (Slack, Gmail, etc.) not being available in single-turn `--print` mode
|
||||
- Fixed `caffeinate` process not properly terminating when Claude Code exits, preventing Mac from sleeping
|
||||
- Fixed bash mode not activating when tab-accepting `!`-prefixed command suggestions
|
||||
- Fixed stale slash command selection showing wrong highlighted command after navigating suggestions
|
||||
- Fixed `/config` menu showing both the search cursor and list selection at the same time
|
||||
- Fixed background subagents becoming invisible after context compaction, which could cause duplicate agents to be spawned
|
||||
- Fixed background agent tasks staying stuck in "running" state when git or API calls hang during cleanup
|
||||
- Fixed `--channels` showing "Channels are not currently available" on first launch after upgrade
|
||||
- Fixed uninstalled plugin hooks continuing to fire until the next session
|
||||
- Fixed queued commands flickering during streaming responses
|
||||
- Fixed slash commands being sent to the model as text when submitted while a message is processing
|
||||
- Fixed scrollback jumping when collapsed read/search groups finish after scrolling offscreen
|
||||
- Fixed scrollback jumping to top when the model starts or stops thinking
|
||||
- Fixed SDK session history loss on resume caused by hook progress/attachment messages forking the parentUuid chain
|
||||
- Fixed copy-on-select not firing when you release the mouse outside the terminal window
|
||||
- Fixed ghost characters appearing in height-constrained lists when items overflow
|
||||
- Fixed `Ctrl+B` interfering with readline backward-char at an idle prompt — it now only fires when a foreground task can be backgrounded
|
||||
- Fixed tool result files never being cleaned up, ignoring the `cleanupPeriodDays` setting
|
||||
- Fixed space key being swallowed for up to 3 seconds after releasing voice hold-to-talk
|
||||
- Fixed ALSA library errors corrupting the terminal UI when using voice mode on Linux without audio hardware (Docker, headless, WSL1)
|
||||
- Fixed voice mode SoX detection on Termux/Android where spawning `which` is kernel-restricted
|
||||
- Fixed Remote Control sessions showing as Idle in the web session list while actively running
|
||||
- Fixed footer navigation selecting an invisible Remote Control pill in config-driven mode
|
||||
- Fixed memory leak in remote sessions where tool use IDs accumulate indefinitely
|
||||
- Improved Bedrock SDK cold-start latency by overlapping profile fetch with other boot work
|
||||
- Improved `--resume` memory usage and startup latency on large sessions
|
||||
- Improved plugin startup — commands, skills, and agents now load from disk cache without re-fetching
|
||||
- Improved Remote Control session titles: AI-generated titles now appear within seconds of the first message
|
||||
- Improved `WebFetch` to identify as `Claude-User` so site operators can recognize and allowlist Claude Code traffic via `robots.txt`
|
||||
- Reduced `WebFetch` peak memory usage for large pages
|
||||
- Reduced scrollback resets in long sessions from once per turn to once per ~50 messages
|
||||
- Faster `claude -p` startup with unauthenticated HTTP/SSE MCP servers (~600ms saved)
|
||||
- Bash ghost-text suggestions now include just-submitted commands immediately
|
||||
- Increased non-streaming fallback token cap (21k → 64k) and timeout (120s → 300s local) so fallback requests are less likely to be truncated
|
||||
- Interrupting a prompt before any response now automatically restores your input so you can edit and resubmit
|
||||
- `/status` now works while Claude is responding, instead of being queued until the turn finishes
|
||||
- Plugin MCP servers that duplicate an org-managed connector are now suppressed instead of running a second connection
|
||||
- Linux: respect `XDG_DATA_HOME` when registering the `claude-cli://` protocol handler
|
||||
- Changed "stop all background agents" keybinding from `Ctrl+F` to `Ctrl+X Ctrl+K` to stop shadowing readline forward-char
|
||||
- Deprecated `TaskOutput` tool in favor of using `Read` on the background task's output file path
|
||||
- Added `CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK` env var to disable the non-streaming fallback when streaming fails
|
||||
- Plugin options (`manifest.userConfig`) now available externally — plugins can prompt for configuration at enable time, with `sensitive: true` values stored in keychain (macOS) or protected credentials file (other platforms)
|
||||
- Claude can now reference the on-disk path of clipboard-pasted images for file operations
|
||||
- `Ctrl+L` now clears the screen and forces a full redraw — use this to recover when Cmd+K leaves the UI partially blank. Use `Ctrl+U` or double-Esc to clear prompt input.
|
||||
- `--bare -p` (SDK pattern) is ~14% faster to the API request
|
||||
- Memory: `MEMORY.md` index now truncates at 25KB as well as 200 lines
|
||||
- Disabled `AskUserQuestion` and plan-mode tools when `--channels` is active
|
||||
- Fixed API 400 error when a pasted image was queued during a failing tool call
|
||||
- Fixed MCP tool calls hanging indefinitely when an SSE connection drops mid-call and exhausts its reconnection attempts
|
||||
- Fixed Remote Control session titles showing raw XML when a background agent completed before the first user message
|
||||
- Fixed remote sessions forgetting conversation history after a container restart due to progress-message gaps in the resumed transcript chain
|
||||
- Fixed remote sessions requiring re-login on transient auth errors instead of retrying automatically
|
||||
- Fixed `rg ... | wc -l` and similar piped commands hanging and returning `0` in sandbox mode on Linux
|
||||
- Fixed voice input hold-to-talk not activating when a CJK IME inserts a full-width space
|
||||
- Fixed `--worktree` hanging silently when the worktree name contained a forward slash
|
||||
- [VSCode] Spinner now turns red with "Not responding" when the backend hasn't responded for 60 seconds
|
||||
- [VSCode] Fixed session history not loading correctly when reopening a session via URL or after restart
|
||||
- [VSCode] Added Esc-twice (or `/rewind`) to open a keyboard-navigable rewind picker
|
||||
- [VSCode] Fixed "Fork conversation from here" and rewind actions failing silently after the session cache goes stale
|
||||
16369
claude/releases/v2.1.83/cli.js
Executable file
16369
claude/releases/v2.1.83/cli.js
Executable file
File diff suppressed because one or more lines are too long
36
claude/releases/v2.1.83/install.sh
Executable file
36
claude/releases/v2.1.83/install.sh
Executable file
@@ -0,0 +1,36 @@
|
||||
#!/bin/bash
|
||||
# Claude Code Patcher — standalone installer for v2.1.83
|
||||
# Usage: sudo bash install.sh [--all] [--skip-cli]
|
||||
set -e
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||
CLI_JS="$SCRIPT_DIR/cli.js"
|
||||
PATCHER="$SCRIPT_DIR/claude_code_patcher.py"
|
||||
CONFIG="$SCRIPT_DIR/patcher.config.json"
|
||||
|
||||
TARGET="/usr/lib/node_modules/@anthropic-ai/claude-code/cli.js"
|
||||
[ ! -f "$TARGET" ] && TARGET="/usr/local/lib/node_modules/@anthropic-ai/claude-code/cli.js"
|
||||
[ ! -f "$TARGET" ] && TARGET="/opt/homebrew/lib/node_modules/@anthropic-ai/claude-code/cli.js"
|
||||
|
||||
if [ ! -f "$TARGET" ]; then
|
||||
echo "ERROR: Claude Code cli.js not found. Install Claude Code first."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Install patched cli.js
|
||||
if [ "$1" != "--skip-cli" ]; then
|
||||
echo "Installing patched cli.js..."
|
||||
BACKUP="$TARGET.bak.$(date +%Y%m%d%H%M%S)"
|
||||
cp "$TARGET" "$BACKUP"
|
||||
cp "$CLI_JS" "$TARGET"
|
||||
node --check "$TARGET" || { cp "$BACKUP" "$TARGET"; echo "SYNTAX ERROR, rolled back"; exit 1; }
|
||||
echo "Installed. Backup: $BACKUP"
|
||||
fi
|
||||
|
||||
# Apply user settings
|
||||
if [ -f "$PATCHER" ] && [ -f "$CONFIG" ]; then
|
||||
echo "Applying user settings..."
|
||||
python3 "$PATCHER" --config "$CONFIG" --all --skip-cli-patch --skip-update
|
||||
fi
|
||||
|
||||
echo "Done. Run 'claude --version' to verify."
|
||||
Reference in New Issue
Block a user