TL;DR

Claude Code CLI 2.1.119 là release polish nặng: 2 setting mới đáng chú ý (prUrlTemplate, CLAUDE_CODE_HIDE_CWD), --from-pr mở rộng sang GitLab MR / Bitbucket PR / GitHub Enterprise, hooks PostToolUse giờ có duration_ms, và hơn 30 bug fix trải đều MCP OAuth, clipboard CRLF, kitty keyboard protocol, permission mode, Vim mode, và worktree isolation. Không có breaking change — update ngay.

What's new

  • prUrlTemplate: setting mới để footer PR badge trỏ về code-review URL tuỳ chỉnh thay vì mặc định github.com. Team dùng Gerrit, Phabricator fork, Reviewable hay portal review nội bộ giờ link được chuẩn.
  • CLAUDE_CODE_HIDE_CWD: env var ẩn working directory trong startup logo. Dùng khi screen-share, quay tutorial, hoặc đơn giản là path có tên thật/tên project NDA.
  • --from-pr mở rộng: nhận URL GitLab merge request, Bitbucket pull request, và GitHub Enterprise PR — trước đây chỉ github.com public.
  • Shorthand link theo remote host: owner/repo#N trong output giờ dùng host của git remote thay vì cứng github.com.
  • /config persist vào ~/.claude/settings.json: theme, editor mode, verbose,… giờ lưu bền và tham gia chuỗi precedence project/local/policy.
  • Hooks observability: PostToolUsePostToolUseFailure hook inputs nhận thêm duration_ms — thời gian tool thực thi, không tính permission prompt và PreToolUse hook.

Why it matters

2.1.119 gần như chỉ đánh vào ba bài toán team dev đã ngầm chịu đựng:

  1. Enterprise Git không phải GitHub. Trước đây user GitLab/Bitbucket/GH Enterprise vừa thấy Claude Code đổ mọi link về github.com, vừa không dùng được --from-pr. Giờ cả hai đều sửa — và thêm prUrlTemplate cho team có code-review pipeline tự build.
  2. Privacy khi demo/stream. Nhiều người dạy Claude Code qua YouTube/livestream từng phải blur logo hoặc đổi thư mục dummy để giấu path. CLAUDE_CODE_HIDE_CWD=1 giải quyết xong.
  3. Platform observability. duration_ms trong hook input là cái platform/DevOps team cần: đẩy vào OTel, vẽ dashboard, alert khi tool nào chậm bất thường. Release còn enrich OTel với tool_use_idtool_input_size_bytes — đủ để build attribution chính xác.

Technical facts

Hạng mụcThay đổi
Setting mớiprUrlTemplate (custom PR URL), CLAUDE_CODE_HIDE_CWD env
Hook payloadPostToolUse + PostToolUseFailure thêm duration_ms
Agent mode--agent <name> honor permissionMode của built-in agents
PowerShellAuto-approve trong permission mode (parity với Bash)
--print modeHonor tools:disallowedTools: frontmatter của agent
MCP reconfigureSubagent & SDK MCP server kết nối song song
OpenTelemetrytool_result & tool_decisiontool_use_id; tool_resulttool_input_size_bytes
Status linestdin JSON thêm effort.levelthinking.enabled
Vertex AITool search mặc định tắt — opt-in bằng ENABLE_TOOL_SEARCH

Comparison

So với 2.1.118 ngay trước đó (bản đem vim visual mode v/V, merge /cost+/stats thành /usage, hook gọi MCP tool qua type: 'mcp_tool', env DISABLE_UPDATES, command claude plugin tag), 2.1.119 đổi thế:

  • 2.1.118: bổ sung feature mới cho power user.
  • 2.1.119: bớt feature, thêm density fix + enterprise/observability. 30+ bug fix đều đánh vào pain point đã tồn tại từ lâu (Glob/Grep biến mất khi Bash deny, scroll snap về đáy, paste CRLF lặp blank line, kitty paste mất newline, Rewind overlay hiển thị sai message có ảnh).

Notable fixes

  • Clipboard/Paste: CRLF từ Windows clipboard / Xcode console không còn chèn blank line giữa từng dòng; multi-line paste không mất newline trong terminal dùng kitty keyboard protocol.
  • Permission: Glob và Grep không còn biến mất trên native macOS/Linux build khi Bash bị deny qua permissions — một fix quan trọng cho môi trường restricted.
  • MCP OAuth: HTTP connection không còn fail "Invalid OAuth error response" với body non-JSON; --client-secret được gửi đúng cho server yêu cầu client_secret_post; ${ENV_VAR} trong MCP HTTP/SSE/WebSocket headers giờ được substitute trước request.
  • UX: scroll lên trong fullscreen không bị snap về đáy mỗi khi tool xong; Vim mode Esc trong INSERT không kéo queued message về input (Esc lần 2 để interrupt); /skills Enter pre-fill /<skill-name> thay vì đóng dialog; /agents detail không còn mislabel built-in tool là "Unrecognized".
  • Worktree & plugins: Agent tool với isolation: "worktree" không còn reuse stale worktree từ session cũ; plugin MCP servers spawn đúng trên Windows khi plugin cache incomplete.

Use cases

  • Team enterprise: set prUrlTemplate trong ~/.claude/settings.json để PR badge trỏ về code-review tool nội bộ; dùng --from-pr trực tiếp với link GitLab/Bitbucket/GH Enterprise.
  • Content creator / livestream: export CLAUDE_CODE_HIDE_CWD=1 trước khi mở Claude Code — logo sạch, không lộ path.
  • Platform/DevOps: viết PostToolUse hook đẩy duration_ms cùng tool_use_id vào OTel → dashboard latency theo tool, alert khi spike.
  • Agent/SDK dev: --print mode giờ respect frontmatter tools:/disallowedTools: — viết script CI đánh giá agent chuẩn với môi trường runtime.
  • User restricted env: không còn phải mở Bash permission chỉ để Glob/Grep hoạt động.

Limitations & pricing

Không đổi pricing. Không breaking change — tất cả setting mới đều opt-in. Lưu ý duy nhất: Vertex AI giờ mặc định tắt tool search để tránh unsupported beta header — nếu đang dùng Vertex và cần tool search, set ENABLE_TOOL_SEARCH.

What's next

Nhìn tổng thể chuỗi 2.1.118 → 2.1.119, rõ ràng Anthropic đang ép Claude Code vào enterprise-ready mode: mở ra ngoài GitHub, thêm observability hook, polish hàng loạt pain point tồn tại từ lâu. Dự đoán các release kế tiếp trong series 2.1.x sẽ tiếp tục đánh vào team setting (policy override, managed settings cho WSL đã có từ 2.1.118) và MCP OAuth flows trước khi lên 2.2.

Nguồn: CHANGELOG.md, anthropics/claude-code releases, ClaudeCodeLog.