diff --git a/packages/rangelink-vscode-extension/.vscode-test.with-extensions.mjs b/packages/rangelink-vscode-extension/.vscode-test.with-extensions.mjs index 177c2f2a8..915ae956a 100644 --- a/packages/rangelink-vscode-extension/.vscode-test.with-extensions.mjs +++ b/packages/rangelink-vscode-extension/.vscode-test.with-extensions.mjs @@ -3,9 +3,9 @@ import { defineConfig } from '@vscode/test-cli'; import { ASSISTED_TIMEOUT_MS, BASE_CONFIG, userDataDir } from './.vscode-test.base.mjs'; // Marketplace extensions installed before tests run. With these present, -// isClaudeCodeAvailable() returns true, enabling tests that verify real -// focus + paste behavior. -const MARKETPLACE_EXTENSIONS = ['anthropic.claude-code']; +// isGeminiCodeAssistAvailable() and isClaudeCodeAvailable() return true, +// enabling tests that verify real focus + paste behavior. +const MARKETPLACE_EXTENSIONS = ['google.geminicodeassist', 'anthropic.claude-code']; export default defineConfig([ { diff --git a/packages/rangelink-vscode-extension/CHANGELOG.md b/packages/rangelink-vscode-extension/CHANGELOG.md index 91d3f7537..9cd01e5c8 100644 --- a/packages/rangelink-vscode-extension/CHANGELOG.md +++ b/packages/rangelink-vscode-extension/CHANGELOG.md @@ -35,12 +35,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - When more open files exist beyond the inline list, extras collapse into "More files..." which opens a secondary picker - Secondary picker organizes all open files into "Active Files" section + per-"Tab Group N" sections - Escaping the secondary picker returns to the destination picker +- **Gemini Code Assist Integration** - Paste destination for Google's Gemini Code Assist (#529) Unreleased + - Automatically inserts links and selected text directly into Gemini Code Assist + - Requires [Gemini Code Assist](https://marketplace.visualstudio.com/items?itemName=Google.geminicodeassist) extension (`Google.geminicodeassist`) + - Configurable cold-start timing: `rangelink.destinations.gemini.coldStartDelayMs` (default: `2500`) and `rangelink.destinations.gemini.coldRefocusIntervalMs` (default: `300`) — tune for your machine's speed; increase the delay on slower hardware if the initial paste after binding silently fails to reach the Gemini panel - **Custom AI Assistants** - Connect RangeLink to any AI tool with a VS Code extension (#500) Unreleased - New setting `rangelink.customAiAssistants`: three-tier command schema — `insertCommands` (direct text delivery), `focusAndPasteCommands` (focus + auto-paste), `focusCommands` (focus + manual paste toast) - Custom assistants appear in the destination picker (R-D) alongside built-in destinations - Lazy tier resolution: RangeLink checks which commands are registered on first use and caches the winning tier — no per-operation overhead - Override built-in assistants (Cursor, Claude Code, Copilot) via config with automatic fallback to hardcoded commands - `${content}` template interpolation for insert commands with non-standard argument formats +- **Claude Code Cold-Start Timing** - Configurable cold-start settings for the Claude Code Extension destination Unreleased + - `rangelink.destinations.claudeCode.coldStartDelayMs` (default: `2500`) and `rangelink.destinations.claudeCode.coldRefocusIntervalMs` (default: `300`) — tune for your machine's speed; increase the delay on slower hardware if the initial paste after binding silently fails to reach the Claude Code panel - **Release Notifier** - Once-per-upgrade notification so new versions don't go unnoticed (#525) - On upgrade, shows "RangeLink updated to vX.Y.Z. See what changed!" with "What's New" and "Skip for this version" buttons - "What's New" opens the GitHub releases page; "Skip for this version" silences without opening the browser @@ -116,9 +122,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - **Forgiving filename navigation** - Links with bare filenames (no directory path) now navigate when exactly one matching file exists in the workspace (#342) - Covers links generated by AI tools that omit directory prefixes (e.g., `RangeLinkNavigationHandler.ts#L10`) - When the filename is ambiguous (multiple matches) or not found, the existing "Cannot find file" warning is shown -- **Claude Code cold-start re-focus loop** - Adds configurable `coldStartDelayMs` and `coldRefocusIntervalMs` settings under `rangelink.destinations.claudeCode.*` to ensure the chat panel is ready before the first paste dispatch after binding. - -