Fetches the platform-specific native binary directly — npm registry
first (sha512-verified tarball, streamed through a minimal in-tree
tar parser) with the Anthropic CDN as a fallback (sha256-verified raw
binary). Writes to context.globalStorageUri/bin/claude[.exe] and
auto-sets executable.path so there's no PATH, sudo, PowerShell
execution-policy, npm EACCES, or Node-version failure modes left.
Adds typed DownloaderError codes (UNSUPPORTED_PLATFORM / NETWORK /
INTEGRITY / WRITE / CANCELLED / AGGREGATE) and threads source /
version / npmCode / cdnCode into analytics so install failures are
finally bucketable instead of collapsed under "the shell command
failed". Error messages are scrubbed of user paths to keep analytics
PII-free.
Fixes a Windows path-with-spaces edge case by skipping cmd.exe shell
wrapping when spawning claude with an absolute executable.path.
Ships 28 tests: 24 unit (tar parser, platform detection, error
helpers) and 4 integration that hit real npm + real CDN end-to-end.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Major release adding:
- MCP marketplace with curated registry and search across multiple registries
- Plugins and skills marketplace integration
- OpenCredits payment integration with model selection and checkout flow
- Image preview before sending (paste, file picker)
- Self-hosted Umami analytics with custom events
- Support feedback modal with Discord webhook
- Local OpenAI to Anthropic router for model routing
- Inline stop button replacing send during processing
- Improved install flow requiring Node.js 18+
- WSL env var passthrough fixes
- Better error handling and Windows compatibility
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Build script that creates Open VSIX variant with different branding:
- Changes displayName to "Claude Code Chat"
- Uses icon.png instead of icon-bubble.png
- Automatically backs up and restores files after build
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Replace MCP permission server with stdio-based permission flow that
communicates directly with Claude CLI via stdin/stdout. This simplifies
the architecture and fixes permission expiration issues.
Key changes:
- Use --permission-prompt-tool stdio and --input-format stream-json
- Handle control_request messages for permission prompts
- Send control_response via stdin to approve/deny
- Check local permissions for auto-approval of pre-approved tools
- Only expire pending permissions when VS Code restarts, not panel close
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>