Skip to content

Latest commit

Β 

History

History
422 lines (341 loc) Β· 20.5 KB

File metadata and controls

422 lines (341 loc) Β· 20.5 KB

Change Log

All notable changes to the "claude-code-chat" extension will be documented in this file.

Check Keep a Changelog for recommendations on how to structure this file.

[2.0.7] - 2026-04-24

πŸš€ Features Added

  • In-process installer: Installing Claude Code no longer shells out to PowerShell, curl | bash, or npm install -g. The extension now fetches the platform-specific native binary directly (npm registry first, with Anthropic's CDN as a fallback), verifies the download with sha512/sha256, and writes it into the extension's own storage. Zero PATH, sudo, execution-policy, Node-version, or shell-quoting dependencies β€” if the extension installed, installing Claude works.
  • Progress updates during install: The install modal now reports "Looking up…", "Downloading… (X%)", "Verifying…", and "Installing…" as it runs, with an automatic retry message if it falls back to the CDN source.
  • Cleaner install analytics: Install success now includes source (npm/cdn) and version; Install failed now includes a typed errorCode (NETWORK / INTEGRITY / WRITE / AGGREGATE / UNSUPPORTED_PLATFORM) so failure buckets are meaningful instead of just "the shell command failed".

πŸ› Bug Fixes

  • Paths with spaces on Windows: Fixed an edge case where the main Claude spawn could fail when the executable path contained spaces (e.g. C:\Users\Some User\…). Absolute paths now bypass cmd.exe wrapping entirely.

πŸ”§ Technical Improvements

  • New src/claudeDownloader.ts module: self-contained, no new runtime dependencies. Includes a minimal in-tree tar parser so we can stream-extract the one binary we need from the npm tarball without bundling a tar library.
  • Removed the old PowerShell / curl / npm install paths and the associated _getKnownInstallLocation / _checkClaudeAvailable helpers β€” the download flow now owns the install location end-to-end.

[2.0.6] - 2026-04-23

πŸš€ Features Added

  • Smarter post-install setup: Fresh installs now "just work" without a VS Code restart. After install, the extension checks whether claude resolved on your PATH and, if not, auto-configures claudeCodeChat.executable.path to the known install location. An existing custom executable path is respected.
  • WSL: Node.js path is now optional: Recent Claude Code ships as a native binary and doesn't need Node. Leave the Node.js Path field blank unless you installed Claude via npm. The WSL settings panel was also reordered so Claude Path comes first.

πŸ› Bug Fixes

  • Rock-solid terminals across shells: Login, Model, /usage, and slash-command terminals now launch Claude directly instead of sending text through the shell. Fixes a class of quoting issues on Windows PowerShell and keeps behavior identical across PowerShell, cmd, bash, and zsh.

πŸ”§ Technical Improvements

  • Terminal sites now use createTerminal's shellPath/shellArgs β€” no shell quoting, consistent env inheritance, identical behavior across OSes.

[2.0.4] - 2026-04-21

πŸš€ Features Added

  • Plan Mode (Improved):
    • Plans now render as beautifully formatted markdown with headings, lists, and code blocks
    • Suggested actions shown as clickable buttons below the plan (e.g. "run npm build")
    • Permission prompt says "Approve the plan above?" with an Approve button instead of the generic tool approval
  • MCP, Skills & Plugins Marketplace:
    • Browse 30+ curated MCP servers (GitHub, Slack, Stripe, Notion, Supabase, etc.)
    • Search across both add-mcp curated and official Anthropic registries with smart ranking
    • Install MCP servers to project (.mcp.json) or global (~/.claude.json)
    • Skills marketplace with one-click install via npx skills add
    • Plugins marketplace to extend Claude Code
    • OAuth authentication support β€” open terminal to log in to MCPs
  • 150+ AI Models via OpenCredits:
    • Quick model switching: GPT, Gemini, MiniMax, Kimi, GLM, DeepSeek buttons above the text box
    • Browse and select from 150+ models across providers
    • Pay-as-you-go with OpenCredits β€” no subscription needed
    • US & EU provider filtering option in settings
    • Model selection persists correctly after checkout
  • Image Preview:
    • Paste or pick images with thumbnail preview before sending
    • Remove attached images before sending
    • Multiple image attachments per message
    • Image paths in text auto-detected and sent as base64
  • Support & Feedback:
    • "Support" button in status bar to send bug reports and feature requests
    • Submissions sent directly to Discord

🎨 UI Improvements

  • Inline stop button replaces send button during processing
  • Self-hosted Umami analytics with editor tracking (VS Code vs Cursor)
  • BETA badge on model section with instant tooltip
  • Cleaner model selector and Browse All Models alignment

πŸ› Bug Fixes & Reliability

  • Fix model not being selected after OpenCredits checkout
  • Fix provider choice modal appearing unexpectedly after settings changes
  • Fix duplicate login error toast
  • Fix WSL environment variable passthrough for OpenCredits
  • Fix Windows URL opening with start command
  • Fix --mcp-config error on fresh installs
  • Await setEnvsDisabled so settings reflect changes immediately
  • Skip npx install prompt with -y flag for skills
  • Better install error messages (Node.js 18+ requirement)
  • Add node and mocha types to tsconfig for clean editor diagnostics
  • Remove debug console.logs, add console.error to empty catch blocks

[1.1.0] - 2025-12-06

πŸš€ Features Added

  • Install Modal: Added installation flow for users without Claude Code CLI
    • Auto-detects when Claude Code is not installed
    • One-click installation with progress indicator
    • Platform-specific installation commands
  • Diff Viewer Improvements:
    • Show full diff in Edit, MultiEdit, and Write tool use messages
    • Add "Open Diff" button to open VS Code's native side-by-side diff editor
    • Add truncation with expand button for long diffs
    • Optimize diff storage and improve Open Diff button behavior
  • Processing Indicator: New morphing orange dot animation while Claude is working
  • Subscription Detection: Added usage badge to status bar showing plan type (Pro, Max) or API cost
  • Conversation Compacting: Handle /compact command in chat with status messages and token reset
  • Permission System: Migrated from MCP file-based to stdio-based permission prompts
  • Plan Mode: Now uses native --permission-mode plan CLI flag for cleaner implementation

πŸ› Bug Fixes

  • Fixed diff line alignment by removing ::before pseudo-elements
  • Fixed auto-scroll for diff tool results
  • Strip tool_use_error tags from error messages
  • Improved process termination handling

πŸ”§ Technical Improvements

  • Run /compact command in chat instead of spawning terminal
  • Improved terminal and UI experience
  • Updated diff icon colors

πŸ“Š Analytics

  • Added Umami analytics events to track install flow (modal shown, started, success/failed)

[1.0.7] - 2025-10-01

πŸš€ Features Added

  • Slash Commands Update: Added 4 new slash commands to the commands modal
    • /add-dir - Add additional working directories
    • /agents - Manage custom AI subagents for specialized tasks
    • /rewind - Rewind the conversation and/or code
    • /usage - Show plan usage limits and rate limit status (subscription plans only)

πŸ“š Documentation Updates

  • Updated slash commands count from 19+ to 23+ built-in commands
  • Enhanced command descriptions for better clarity:
    • /config - Now specifies "Open the Settings interface (Config tab)"
    • /cost - Added note about cost tracking guide for subscription-specific details
    • /status - Expanded description to mention version, model, account, and connectivity
    • /terminal-setup - Added clarification about iTerm2 and VSCode only support

[1.0.6] - 2025-08-26

πŸ› Bug Fixes

  • Fixed typo in codebase
  • Removed priority settings that were no longer needed

πŸ”§ Technical Improvements

  • Moved script to separate file for better code organization

[1.0.5] - 2025-07-30

πŸš€ Features Added

  • MCP Integration: Added claude-code-chat-permissions-mcp folder for enhanced permission management
  • Message Persistence: Save message in text box for better user experience
  • UI Improvements: Always display history and new chat options
  • Input Enhancement: Removed maxlength limit for custom command prompt textarea

πŸ› Bug Fixes

  • Fixed new chat functionality
  • Fixed request start time isProcessing issue
  • Fixed close and open conversation behavior

πŸ”„ Merged Pull Requests

  • Merged PR #87 from horatio-sans-serif/main

[1.0.4] - 2025-01-22

πŸ› Bug Fixes

  • Fixed input text area overflow issue by adding box-sizing: border-box to prevent padding from extending beyond container width
  • Fixed command parameter handling for claude-code-chat.openChat to properly handle both ViewColumn and Uri parameters from different invocation contexts

πŸ”§ Technical Improvements

  • Enhanced show() method to accept optional ViewColumn parameter with ViewColumn.Two as default
  • Added proper type checking for command parameters to handle context menu invocations
  • Improved webview panel positioning with flexible column parameter support

🎨 UI/UX Improvements

  • Resolved text input container sizing issues that caused visual overflow
  • Better input field styling consistency across different VS Code themes

[1.0.0] - 2025-01-15

πŸš€ Major Features Added

Advanced Permissions Management System

  • Complete permissions framework with MCP integration for secure tool execution
  • Interactive permission dialogs with detailed tool information and command previews
  • "Always Allow" functionality with smart command pattern matching for common tools (npm, git, docker, etc.)
  • YOLO mode for power users to skip all permission checks
  • Comprehensive permissions settings UI with ability to add/remove specific permissions
  • File system watcher for real-time permission request handling
  • Workspace-specific permission storage and management

MCP (Model Context Protocol) Server Management

  • Complete MCP server configuration interface
  • Popular MCP servers gallery with one-click installation
  • Custom MCP server creation with validation
  • Server management (edit, delete, enable/disable)
  • Automatic permissions server integration
  • WSL path conversion for cross-platform compatibility

Sidebar Integration & Multi-Panel Support

  • Native VS Code sidebar view with full chat functionality
  • Smart panel management (auto-close main panel when sidebar opens)
  • Persistent session state across panel switches
  • Proper webview lifecycle management
  • Activity bar integration with custom icon

Image & Clipboard Enhancements

  • Drag-and-drop image support directly into chat
  • Clipboard image paste functionality (Ctrl+V for screenshots)
  • Multiple image selection with VS Code's native file picker
  • Automatic image organization in .claude/claude-code-chat-images/ folder
  • Automatic .gitignore creation for image folders
  • Support for PNG, JPG, JPEG, GIF, SVG, WebP, BMP formats

Code Block & Syntax Improvements

  • Enhanced markdown parsing with proper code block detection
  • Syntax highlighting for code blocks with language detection
  • Copy-to-clipboard functionality for code blocks
  • Improved inline code rendering
  • Better handling of technical identifiers and underscores

🎨 UI/UX Improvements

Settings & Configuration

  • Comprehensive settings modal with organized sections
  • YOLO mode toggle with visual warnings and explanations
  • Real-time settings synchronization between UI and VS Code config
  • Better visual hierarchy and professional styling
  • Smart configuration validation and error handling

Message & Chat Interface

  • Improved message spacing and visual consistency
  • Enhanced tool result display with better formatting
  • Smart scrolling behavior (only auto-scroll if user is at bottom)
  • Loading indicators and processing states
  • Better error handling and user feedback

YOLO Mode Visual Design

  • Less subtle YOLO mode section (increased opacity and size)
  • Changed warning icon from ⚠️ to πŸš€ for less intimidating appearance
  • Soft tomato red styling that's noticeable but not scary
  • Clear explanation of YOLO mode functionality

πŸ”§ Technical Enhancements

Session & State Management

  • Persistent session state across VS Code restarts
  • Proper cleanup of resources and event listeners
  • Better error handling for failed operations
  • Improved memory management for large conversations

Cross-Platform Compatibility

  • Enhanced WSL support with proper path conversion
  • Windows-specific improvements and fixes
  • Better handling of different operating system environments
  • Improved subprocess management and cleanup

Performance Optimizations

  • Reduced context usage with more efficient tool operations
  • Better file search and workspace integration
  • Optimized message handling and UI updates
  • Improved extension activation and initialization times

Developer Experience

  • Better error messages and debugging information
  • Improved extension logging and troubleshooting
  • Enhanced development workflow support
  • Better TypeScript integration and type safety

πŸ› Bug Fixes

  • Fixed multiple permission prompts being sent simultaneously
  • Resolved panel management issues with multiple webviews
  • Fixed expand/collapse functionality for long content
  • Corrected Unix timestamp parsing for usage limit messages
  • Fixed WSL integration on Windows systems
  • Resolved markdown parsing issues with underscores in code
  • Fixed copy-paste functionality for images and code blocks
  • Corrected file path handling across different platforms

πŸ”„ Breaking Changes

  • Permission system now requires explicit approval for tool execution (unless YOLO mode is enabled)
  • Image files are now stored in .claude/claude-code-chat-images/ instead of root directory
  • MCP configuration moved to extension storage instead of global config

πŸ“š Documentation & Community

  • Updated README with comprehensive feature documentation
  • Fixed GitHub issues link in repository
  • Enhanced examples and usage guides
  • Better onboarding experience for new users

[0.1.3] - 2025-06-24

πŸš€ Features Added

MultiEdit and Edit Tool Diff Display

  • Added comprehensive diff visualization for MultiEdit tool operations
  • Shows file path with click-to-open functionality
  • Displays multiple edits with numbered labels (Edit #1, Edit #2, etc.)
  • Smart truncation handling - shows complete edits within line limits
  • Expandable interface with "Show X more edits" button
  • Visual separators between individual edits
  • Consistent styling with existing Edit tool diff display

Enhanced Tool Result Management

  • Added MultiEdit to hidden tool results list for cleaner interface
  • Tool results for Read, Edit, TodoWrite, and MultiEdit now show loading states instead of uninteresting success messages
  • Improved user experience by hiding redundant "Tool executed successfully" messages

🎨 UI/UX Improvements

Thinking Intensity Modal Enhancement

  • Fixed bug where thinking mode toggle text changed before user confirmation
  • Toggle text now only updates when user clicks "Confirm" button
  • Preview selection highlighting still works during option exploration
  • Improved user experience with proper confirmation workflow

Consistent Message Spacing

  • Standardized spacing between tool messages and user/Claude messages
  • Updated tool input padding from 12px to 8px to match message spacing
  • Unified visual consistency across all message types

Refined Visual Design

  • Changed MultiEdit edit number labels from purple to subtle professional styling
  • Used VS Code theme colors for better integration
  • Improved overall visual cohesion with more sober color palette

πŸ”§ Technical Improvements

  • Enhanced tool message formatting infrastructure
  • Improved diff rendering performance for multiple edits
  • Better error handling for malformed MultiEdit tool inputs
  • Optimized truncation logic for complex multi-edit operations

[0.1.2] - 2025-06-20

πŸ› Bug Fixes

  • Fixed markdown parsing bug where underscores in code identifiers (like "protein_id") were incorrectly converted to italic formatting
  • Updated regex pattern to only apply italic formatting when underscores are surrounded by whitespace or at string boundaries
  • Preserved proper formatting for code snippets and technical identifiers
  • Always show New Chat button

[0.1.0] - 2025-06-20

πŸš€ Major Features Added

Interactive Thinking Mode with Intensity Control

  • Added configurable thinking mode with 4 intensity levels: Think, Think Hard, Think Harder, Ultrathink
  • Beautiful slider interface in settings for intensity selection
  • Clickable intensity labels for easy selection
  • Different thinking prompts based on selected intensity level
  • Higher intensities provide more detailed reasoning but consume more tokens
  • Settings persist across sessions with VS Code configuration integration

Plan First Mode

  • New toggle for "Plan First" mode that instructs Claude to plan before making changes
  • Requires user approval before proceeding with implementation
  • Safer experimentation workflow for complex changes
  • Simple switch interface above the text input area

Slash Commands Modal System

  • Type "/" to open beautiful slash commands modal with 19+ commands
  • Complete Claude Code command integration: /bug, /clear, /compact, /config, /cost, /doctor, /help, /init, /login, /logout, /mcp, /memory, /model, /permissions, /pr_comments, /review, /status, /terminal-setup, /vim
  • Custom command input field for executing any Claude Code command
  • Session-aware command execution with automatic session resumption
  • Commands open in VS Code terminal with proper WSL support
  • Visual feedback and user guidance for terminal interaction

Enhanced Model Configuration

  • Updated "Default" model to show "User configured" instead of "Smart allocation"
  • Added "Configure" button next to Default model option
  • Configure button opens terminal with claude /model command for easy model setup
  • Session-aware model configuration with current session context
  • Clear user messaging about terminal interaction and return workflow

Advanced Settings Management

  • Restructured settings with better organization and grouping
  • Added "Coming Soon" sections for Custom Slash Commands and MCP Configuration
  • Consistent UI patterns across all settings sections
  • Clean, professional design matching VS Code aesthetics

🎨 UI/UX Improvements

  • Smaller, more subtle mode toggle switches (reduced by 2px)
  • Clickable text labels for all toggle switches
  • Improved slider positioning and label alignment
  • Sober, clean interface design without unnecessary colors or decorations
  • Better visual hierarchy in settings modal
  • Responsive design improvements

πŸ”§ Technical Enhancements

  • Session ID now passed to all slash commands for context awareness
  • Improved message handling between frontend and backend
  • Better error handling and user feedback
  • Enhanced WSL compatibility for all new features
  • Modular code structure for easier maintenance

πŸ“š Documentation Updates

  • Updated keyboard shortcuts documentation
  • Enhanced configuration examples
  • Improved feature descriptions and usage examples

[0.0.9] - 2025-06-19

Added

  • Model selector dropdown in the chat interface
    • Located to the left of the tools selector at the bottom of the chat box
    • Supports three models: Opus (most capable), Sonnet (balanced), and Default (smart allocation)
    • Model preference is saved and persists across sessions
    • Validates model selection to prevent invalid model names
    • Shows confirmation message when switching models

Changed

  • Reorganized input controls into left-controls and right-controls sections for better layout
  • Claude command now includes the --model flag when a specific model is selected

[0.0.8] - 2025-06-19

Added

  • WSL (Windows Subsystem for Linux) configuration support
    • New setting: claudeCodeChat.wsl.enabled to enable WSL integration
    • New setting: claudeCodeChat.wsl.distro to specify WSL distribution
    • New setting: claudeCodeChat.wsl.nodePath to configure Node.js path in WSL
    • New setting: claudeCodeChat.wsl.claudePath to configure Claude path in WSL
  • Automatic detection of execution environment (native vs WSL)
  • WSL support for Claude login terminal command

Changed

  • Claude execution now supports both native and WSL environments based on configuration
  • Terminal login command adapts to WSL settings when enabled

[0.0.7] - Previous Release

  • Initial release