- Add GitHub OAuth 2.0 authentication flow
- Create authentication routes: /auth/login, /auth/callback, /auth/logout
- Implement OAuth server utilities with proper session management
- Add authentication hooks and client-side state management
- Update header with login/logout controls and user menu
- Create user profile page with GitHub integration
- Add environment variables for GitHub OAuth configuration
- Include comprehensive documentation for setup and usage
- Enhance profile store with authentication state
- Add authentication status API endpoint
Closes: GitHub authentication implementation
- Added claude-3-7-sonnet and gpt-4o-mini as static models
- Fixes 500 'Model not found' error during inference
- Now properly returns 401 for invalid API key (expected behavior)
- Models now appear in /api/models response
- Inference pipeline working correctly
This resolves the core 500 error. Next step is configuring valid API key.
- Remove overly complex validateApiConfig method
- Follow exact same pattern as working OpenAI provider
- Simplify getModelInstance method to be more robust
- Fix 500 error in inference by removing strict validation
- Maintains dynamic model fetching functionality
This should resolve the inference execution issues while keeping model listing working.
Key improvements:
- Switch from getOpenAILikeModel to createOpenAI for better control
- Comprehensive error handling and validation
- Better base URL normalization and configuration
- Enhanced logging for debugging inference issues
- Proper header configuration for API requests
- Detailed error messages for troubleshooting
This should resolve the inference execution issues while maintaining model listing functionality.
- Added debug guide with manual testing procedures
- Created debug API route for testing endpoints
- Includes models endpoint, chat completions, and AI SDK testing
- Provides detailed error logging and response analysis
- CORS support for browser testing
- Added comprehensive logging for model fetching and instance creation
- Improved error handling with detailed error messages
- Added input validation for API responses
- Better debugging for inference endpoint issues
- Implemented BayerMGAProvider extending BaseProvider
- Configured base URL: https://chat.int.bayer.com/api/v2
- Added dynamic model fetching from /models endpoint with filters
- Integrated provider into UI (CloudProvidersTab, ServiceStatusTab)
- Added provider registration in LLM registry
- Supports user-configurable API token input
- Filters models by availability status
- Maps API response to ModelInfo format with proper token limits
Pass model and provider information through chat components to include in quick action messages. This fixes the issue of defaulting to anthropic model.
The isStreaming prop was passed through multiple chat components but wasn't being strict enough in the Markdown component where it was ultimately passed causing the quick actions to be disabled.
- Pass isStreaming prop through message components to disable actions during streaming
- Improve action button styling with icons and better spacing
- Disable buttons while streaming to prevent concurrent actions
- Implement discuss mode toggle and UI in chat box
- Add quick action buttons for file, message, implement and link actions
- Extend markdown parser to handle quick action elements
- Update message components to support discuss mode and quick actions
- Add discuss prompt for technical consulting responses
- Refactor chat components to support new functionality
The changes introduce a new discuss mode that allows users to switch between code implementation and technical discussion modes. Quick action buttons provide immediate interaction options like opening files, sending messages, or switching modes.
The Docker build process was failing with an out-of-memory error during the `pnpm run build` step in the `bolt-ai-production` stage.
This commit increases the memory available to Node.js by modifying the build command to include the `--max-old-space-size=4096` flag. This provides 4GB of memory to the Node.js process, which should be sufficient to complete the build.
Remove redundant checks for deleted paths and streamline binary file handling. This fixes the browser using excessive memory and freezing.
Improve DiffView to use a singleton instance of Shiki
- Added logging for dynamic max tokens based on model details.
- Increased max token limit for Claude model from 8000 to 128000.
- Included beta header for Anthropik API call.
Add steps to build and upload Electron app artifacts as part of the release workflow. This includes setting up Node.js, installing dependencies, and building the app for different platforms (Windows, macOS, Linux). The built artifacts are then uploaded as release assets.
Remove redundant error type handling in webcontainer to simplify logic and improve maintainability. Additionally, comment out lock file patterns to speed up npm install process.
* feat: Add reusable UI components and fix GitHub repository display
* style: Fix linting issues in UI components
* fix: Add close icon to GitHub Connection Required dialog
* fix: Add CloseButton component to fix white background issue in dialog close icons
* Fix close button styling in dialog components to address ghost white issue in dark mode
* fix: update icon color to tertiary for consistency
The icon color was changed from `text-bolt-elements-icon-info` to `text-bolt-elements-icon-tertiary`
* fix: improve repository selection dialog tab styling for dark mode
- Update tab menu styling to prevent white background in dark mode
- Use explicit color values for better dark/light mode compatibility
- Improve hover and active states for better visual hierarchy
- Remove unused Tabs imports
---------
Co-authored-by: KevIsDev <zennerd404@gmail.com>
* Add persistent file locking feature with enhanced UI
* Fix file locking to be scoped by chat ID
* Add folder locking functionality
* Update CHANGES.md to include folder locking functionality
* Add early detection of locked files/folders in user prompts
* Improve locked files detection with smarter pattern matching and prevent AI from attempting to modify locked files
* Add detection for unlocked files to allow AI to continue with modifications in the same chat session
* Implement dialog-based Lock Manager with improved styling for dark/light modes
* Add remaining files for file locking implementation
* refactor(lock-manager): simplify lock management UI and remove scoped lock options
Consolidate lock management UI by removing scoped lock options and integrating LockManager directly into the EditorPanel. Simplify the lock management interface by removing the dialog and replacing it with a tab-based view. This improves maintainability and user experience by reducing complexity and streamlining the lock management process.
Change Lock & Unlock action to use toast instead of alert.
Remove LockManagerDialog as it is now tab based.
* Optimize file locking mechanism for better performance
- Add in-memory caching to reduce localStorage reads
- Implement debounced localStorage writes
- Use Map data structures for faster lookups
- Add batch operations for locking/unlocking multiple items
- Reduce polling frequency and add event-based updates
- Add performance monitoring and cross-tab synchronization
* refactor(file-locking): simplify file locking mechanism and remove scoped locks
This commit removes the scoped locking feature and simplifies the file locking mechanism. The `LockMode` type and related logic have been removed, and all locks are now treated as full locks. The `isLocked` property has been standardized across the codebase, replacing the previous `locked` and `lockMode` properties. Additionally, the `useLockedFilesChecker` hook and `LockAlert` component have been removed as they are no longer needed with the simplified locking system.
This gives the LLM a clear understanding of locked files and strict instructions not to make any changes to these files
* refactor: remove debug console.log statements
---------
Co-authored-by: KevIsDev <zennerd404@gmail.com>
The code signing credentials for macOS were removed from the GitHub Actions workflow and the identity field in the electron-builder.yml was set to null. This change was made to include unsigned .dmg releases