- Standardized import statements and added semicolons for consistency in `tsup.config.ts` and `bridge.ts`.
- Enhanced type definitions and formatting in `prompt-input.tsx` and `input-area.tsx` for better readability and maintainability.
- Updated text query examples in the tools-reference.md file to use lowercase for consistency, changing '*[Ll]ogin*' to '*login*' and '*[Ss]earch*' to '*search*'.
- Updated type assertions in the ManualReplayController to ensure proper event handling.
- Refactored test cases in replay-controller.test.ts for improved clarity and structure.
- Enhanced type definitions in share-conversation.ts to ensure metadata is correctly typed.
- Improved test assertions in share-conversation.test.ts for better reliability and readability.
- Removed the byokEnabled parameter from the useAgent hook to simplify its interface.
- Streamlined the handleCheckAuth function in ChatApp for improved readability and conciseness.
- Added a pre-flight authentication check before sending messages, displaying an inline login prompt if authentication is required.
- Updated the ChatbotProvider to use a wrapped sendMessage function that incorporates the authentication check.
- Enhanced type definitions to include AuthCheckResult for better clarity in authentication handling.
- Refactored the useAgent hook to differentiate between BYOK and non-BYOK configurations, improving validation logic.
- Streamlined the model factory in the browser extension to support both BYOK and proxy modes, ensuring a seamless user experience.
- Consolidated error logging in the ErrorBoundary component for clarity.
- Streamlined error messages in the background script for better readability.
- Enhanced formatting of type definitions and data validation in various services to improve code organization and maintainability.
- Updated test cases to ensure consistent formatting and readability.
- Added a feature to open the onboarding page for new installs in production.
- Implemented a user manual replay request handler, validating input data and managing replay steps.
- Introduced a side panel for replay setup, allowing users to navigate and initialize replay sessions.
- Enhanced the chat header with options to share conversations and save them as skills, improving user interaction.
- Added error handling and validation for user-provided host URLs to mitigate security risks.
- Moved the system message filtering logic to a more appropriate location within the DefaultMessageItem component for better clarity and performance.
- Updated the message list rendering to generate stable keys for turns, enhancing React's reconciliation process.
- Streamlined the rendering of assistant messages with improved handling of collapsible components for better user experience.
- Cleaned up code formatting and structure for improved readability across the message-related components.
- Removed redundant model fetching from the Chatbot component, simplifying the logic to rely on prop-provided models.
- Enhanced the DefaultInputArea component to fetch models from the API on mount, with fallback to prop-provided models if the fetch fails.
- Improved the handling of model selection, ensuring the current model is included in the list and updating settings accordingly.
- Added loading state management for model fetching to enhance user experience during API calls.
- Added support for passing an EphemeralSession to the run() method in stateless mode, ensuring session management is consistent.
- Implemented callModelInputFilter to shape screenshot items before model calls, enhancing the handling of image data and user messages.
- Updated screenshot shaping logic to accommodate various output formats, ensuring compatibility with both legacy and SDK formats.
- Enhanced unit tests for screenshot shaping to cover new scenarios and ensure robust functionality.
- Streamlined code formatting in multiple files for better consistency and clarity.
- Consolidated import statements and removed unnecessary line breaks to enhance organization.
- Updated state initialization and prop handling in various components to follow best practices.
- Improved the readability of complex expressions by simplifying their structure.
- Added functionality to extract and apply screenshots from tool results in the ChatAdapter, improving user experience by allowing immediate rendering of screenshots.
- Implemented a new ToolScreenshot component to display screenshots inline, supporting both base64 data and IndexedDB references.
- Updated message item rendering to transform screenshot placeholders into actual images, enhancing the visual feedback for users.
- Introduced collapsible message items for intermediate assistant messages, improving the organization of conversation turns in the message list.
- Enhanced model fetching logic in the Chatbot component to ensure server models are prioritized, improving model selection reliability.
- Updated localization files to include new translation keys for improved user guidance.
- Replaced the text input for AI model selection with a dropdown for better user experience, allowing users to select from available models or enter a custom value.
- Added a tip for users in the settings page to guide model selection based on their needs.
- Updated the browser extension manifest to include audio capture permissions.
- Improved the Vite configuration comments for clarity regarding sidepanel entry handling.
- Implemented functionality to open the sidepanel on demand and collect screenshots for download from the sidepanel.
- Introduced validation and download helpers for chat image export in the background script.
- Initialized QuickJS and ZenFS on sidepanel startup to optimize performance.
- Changed the host placeholder in English and Chinese localization files to reflect the new API endpoint for DeepSeek.
- Updated the host URLs for various AI providers in the configuration file to remove the specific endpoint paths, ensuring compatibility with the latest API structure.
- Updated the Biome schema version from 2.3.13 to 2.3.14 for compatibility.
- Enhanced the PromptInput component by changing the skill label from a span to a button for better accessibility and user interaction.
- Corrected spelling of "AIPex" to "AIpex" in multiple test cases for consistency.
- Added a comment in the SettingsPage component to clarify the purpose of the initialSkill prop for future use.
- Improved type checking in the app-root component to ensure timestamp is a number before comparison.
- Streamlined formatting in various components for better consistency and clarity.
- Removed unnecessary line breaks and adjusted import statements for improved organization.
- Enhanced the handling of props and state updates in several components to follow best practices.
- Updated the `useEffect` dependencies to ensure proper reactivity and performance optimization.
- Introduced a new UX audit goal dialog for users to provide details about the interface they want to audit.
- Enhanced the PromptInput component to allow users to click on skill labels to open the skill settings.
- Updated the Chatbot component to handle UX audit submissions and integrate translation support.
- Improved the message list and welcome screen components to support UX audit suggestions.
- Added new translation keys and updated localization files for English and Chinese.
- Refactored skill management features to support deep-linking to specific skills in the options page.
- Introduced a new context for managing skills within the PromptInput component, allowing users to add, remove, and clear skills.
- Added SkillItem type and related components for displaying skill tags in the chatbot interface.
- Implemented initial input value support in the Chatbot component for better user experience.
- Enhanced the BrowserChatHeader to include a toggle for switching between voice and text input modes.
- Updated various components to support new skill management features and improved overall code organization.
- Updated version number to 2.2.39 for the AIPex browser extension.
- Revised description to reflect new features and capabilities.
- Changed icon file formats from SVG to PNG for better compatibility.
- Moved website URL helper exports to a more appropriate location for better organization.
- Removed redundant imports in `version-checker.ts` to enhance clarity and maintainability.
- Improved overall code structure by consolidating related exports in the `index.ts` file.
- Introduced `buildWebsiteUrl` function to standardize URL construction across components.
- Updated various components to use the centralized URL handling for external links.
- Added new exports for `BuyTokenPrompt`, `LoginPrompt`, and other components in the chatbot index.
- Improved code consistency and readability by reorganizing imports and export statements.
- Made `onSwitchToText` prop optional in `VoiceInput` component for better flexibility.
- Enhanced audio track cleanup in `AudioRecorder` by using a for-of loop for clarity.
- Changed `ServerSTTConfig` type to `Record<string, never>` for improved type safety.
- Added button types and accessibility attributes in `UserProfile` for better user experience.
- Cleaned up and reordered imports in `VoiceInput`, `particle-system`, and other related files for better readability.
- Consolidated export statements in `index.ts` to streamline component exports.
- Enhanced error handling by using underscore for caught errors in several files to maintain consistency.
- Minor formatting adjustments for improved code clarity.
- Added a new `VoiceInput` component that integrates voice activity detection (VAD), audio recording, and speech-to-text (STT) capabilities.
- Introduced a WebGL-based particle system for visual feedback during voice interactions.
- Created configuration options for voice mode, including audio settings and performance presets.
- Updated package dependencies to include `@ricky0123/vad-web` and `three` for enhanced voice processing and visualization.
- Resolved inconsistencies in the migration documentation regarding UI components related to voice input.
- Updated the status and impact of the `organize_tabs` tool in LOGIC_INCONSISTENCIES_BY_PACKAGE.md, noting its removal from the default bundle.
- Resolved naming inconsistencies for the `ungroup_tabs` tool in the tab-groups module.
- Implemented the `refreshSkillMetadata` method in SkillManager to update skill metadata from SKILL.md, including validation and error handling.