* changeset version bump
* Updating CHANGELOG.md format
* Update changelog for v3.29.2 release
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Kevin Bond <kevin@Mac.hsd1.ca.comcast.net>
Move duplicated code to utils.ts
Replace context.globalStorageUri with the HostProvider.globalStorageFsPath.
This is part of removing dependencies on the VSCode API fom the codebase except for in platform specific code in src/hosts/vscode and src/extension.ts.
* changeset version bump
* Updating CHANGELOG.md format
* Update changelog for release
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@github.com>
Co-authored-by: Kevin Bond <kevin@Mac.hsd1.ca.comcast.net>
* Replace context.globalStorageUri with the HostProvider in CheckpointTracker
Replace context.globalStorageUri with the HostProvider.globalStorageFsPath.
Remove globalStoragePath param, it doesn't need to be passed around anymore.
Remove unused param taskId from shadowGit
* Remove globalStoragePath param from checkpoint manager.
Now tht the global storage path is available from the HostProvider anywhere, it doesn't need to be passed around.
* fix: test e2e click “Show Code Actions” button then wait for listbox on macOS
* fix: trigger code actions during test with shortcut
* fix: add reasonable timeout to the menu and listbox call in test
* test: refactor chat e2e tests to support multiple workspace types
- Convert single test functions to parameterized test suite using describe blocks
- Add workspace type iteration for both chat messaging and slash command tests
- Consolidate test structure to run against different workspace configurations
- Maintain existing test logic while improving test coverage and organization
- consolidate chat input tests into single comprehensive test
Merged three separate chat input tests (slash commands, @ mentions, and partial completion) into one comprehensive test to reduce test setup time and improve test efficiency. Simplified test structure while maintaining all original functionality checks.
* update keybindings
Add a the field `globalStorageFsPath` to replace the VSCode `context.globalStorageUri`
Remove duplicated code for getting the cache directory.
Add a util function to the HostProvider to get sub-directories of the global storage dir, and ensure that the sub-directory is created.
Move all the logic for waiting for the host bridge into `hostbridge-client.ts`
Add some comments
Use try/finally, remove unused param, log the error message when the health check fails.
* fix: CreditLimitError should use server returned url when available
- Add useMemo hook for dashboard URL computation
- Display credit balance, spent, and promotions when available
- Replace inline styles with Tailwind CSS classes
- Simplify TaskServiceClient call by removing unnecessary properties
- Add proper conditional rendering for credit information
- Improve code organization and readability
* changeset added
* props
* Update storybook
* Updated Baseten models to use dynamic fetching, added docs
* removed unused function, supportsImages
* added parsePrice into model-utils.ts
* updated toolcalling comment
* updated tools to fetch from API
* fixed conflicts and updated supportTools
* applied npm run format:fix
* added bedrock stuff back in that was breaking test
---------
Co-authored-by: AlexKer <AlexKer@users.noreply.github.com>
Add detailed documentation for end-to-end testing with Playwright including:
- Test execution commands and debug mode usage
- Test structure overview with file descriptions
- Writing test guidelines with fixtures and best practices
- Mock API server setup and workspace configuration
- Interactive debugging features and troubleshooting tips
Updates both CONTRIBUTING.md and E2E README to provide complete guidance for contributors working with the test suite.
* feat: add Storybook configuration
- Bump package version from 3.28.3 to 3.28.4
- Add comprehensive Storybook setup with React-Vite framework and TypeScript support
- Configure Storybook with custom viewport settings and environment variables
- Add extensive story files for chat components, MCP displays, and browser automation
- Update gitignore files to exclude Storybook build artifacts and logs
* Add docs and changeset
* feat: refactor Storybook decorator to support state overrides and custom styling
- Extract ExtensionStateProviderWithOverrides component to safely use useExtensionState within provider context
- Add optional classNames parameter to createStorybookDecorator for custom styling
- Import cn utility from @heroui/react for className merging
- Fix margin class from m-x-auto to mx-auto
* Add message to mock history
---------
Co-authored-by: Jose R. Perez <trupix@gmail.com>
Removed favorited_model_ids field from API configuration models in proto files and migrated storage handling to global state key management.
Cleans up configuration separation by removing non-API-related data from model definitions. Enables more consistent state handling across the application.
* Use the correct version number in cline-core
cline-core should use the same version number as the extension because they share the same code for the core functionality.
Use the version number from the ExtensionRegistryInfo instead of from the standalone package.json
* Use node:fs instead of fs
* Refactor API configuration to use proto enums and structured types
- Replace JSON string fields with proper proto message types
- Convert snake_case field names to camelCase for consistency
- Use ApiProvider enum instead of string for provider fields
- Add structured types for model info and selectors
- Remove deprecated settings conversion module
- Update proto conversions to handle new structured format
* fix types errors caused by changing to generic string
* Add a field to the HostProvider `extensionFsPath`
Replace vscode.ExtensionContext `extensionUri` with `HostProvider.extensionFsPath`.
This part of removing uses of the VSCode API fom the codebase except for in platform specific code (these are src/hosts/vscode and src/extension.ts).
* Remove extra leading slash from webview URL on JetBrains
* Remove vscode.Uri from the WebviewProvider
Replace `vscode.Uri` with URL strings.
Replace Uri with Url in variable names.
* Add task-specific settings caching to StateManager
Implement per-task settings storage with automatic loading/clearing:
- Add taskStateCache for isolated task settings
- Load task settings on task creation and reinitialize
- Clear task settings cache when tasks end
- Prioritize task cache over global state in getters
* update error wording for taskSettings read failure
* add missing return statement in promise.all
* fix: persist pending task settings before clearing cache
Changed clearTaskSettings to be async and ensure any pending task state
changes are persisted to storage before clearing the in-memory cache.
This prevents potential data loss when a task ends with unpersisted
settings still in the pending state queue.
- Made clearTaskSettings async and added optional taskId parameter
- Added logic to persist pending task state batch before clearing
- Updated controller to await clearTaskSettings and pass taskId
* fix process.env access in build script
- Add CLINE_ENVIRONMENT=production to esbuild define config
- Remove fallback empty strings for API keys in build config
- Simplify optional chaining to direct property access for process.env
- Ensure consistent environment variable handling across config files
* verify CI secrets
* revert temp test
* Don't construct the redirect URL in the webview.
Add an RPC to the ProtoBus to get the URI to redirect back to the host IDE.
Support for JetBrains will be added in a second PR.
* Remove the uriScheme and extension name from the ExtensionStateContext.
These are being used to construct the IDE redirect URI, but this is not a cross-platform compatible way to do this.
* Update the host bridge to return the whole URL to redirect to the IDE
Return the whole redirect URI instead of just the URI scheme. VSCode needs the whole URI to redirect back to VSCode and open the cline extension.
* Update js doc
* Remove unused propertu uriScheme
All uses of vscode.env.uriScheme have been moved to platform specific code, so add it to linter rules for vscode API.