Commit graph

3815 commits

Author SHA1 Message Date
Anish Sarkar
85462675a0 feat: add update functionality for Gmail drafts
- Introduced a new tool to update existing Gmail drafts, allowing users to modify draft content, recipients, and subject lines.
- Updated the Gmail tools registry to include the new update_gmail_draft tool.
- Enhanced the GmailKBSyncService to support draft ID handling during synchronization.
- Added UI components for the update draft functionality in the web application, improving user interaction with Gmail drafts.
2026-03-20 23:50:27 +05:30
Anish Sarkar
5e23949af6 feat: implement date and time picker in HITL edit panel
- Added a DateTimePickerField component to allow users to select date and time in the HITL edit panel.
- Updated the EmailsTagField to use a ref for onChange to improve performance.
- Modified the ExtraField type to support "datetime-local" for better event management in Google Calendar tools.
2026-03-20 23:07:54 +05:30
Anish Sarkar
4b54826d78 refactor: update ApprovalCard to use state for wasAlreadyDecided across all HITL tools
- Changed the wasAlreadyDecided variable to use useState for better state management in ApprovalCard.
- Updated multiple components including Gmail, Google Calendar, and Notion to reflect this change, ensuring consistency across the application.
2026-03-20 23:06:58 +05:30
Anish Sarkar
b4309f13be feat: add email tag input functionality to HITL edit panel
- Updated the HITL edit panel to support multiple email inputs using a tag input component.
- Modified the ExtraField type to include "emails" as a valid type.
- Enhanced the Gmail draft creation process to utilize the new email input format for "To", "CC", and "BCC" fields.
2026-03-20 22:46:49 +05:30
Anish Sarkar
282e913c50 refactor: update ApprovalCard to display account names instead of emails across Gmail tools 2026-03-20 22:02:35 +05:30
Anish Sarkar
9b38626723 feat: add pending edits functionality to ApprovalCard across all HITL tools 2026-03-20 21:38:19 +05:30
Anish Sarkar
4bd2071a8d refactor: streamline ApprovalCard component across various tools 2026-03-20 20:53:59 +05:30
Anish Sarkar
bd2d633546 feat: enhance Gmail account handling and expand chat tool capabilities
- Updated the GmailAccount class to extract email from the connector name when formatted with " - ".
- Added new tool actions for Gmail and Google Calendar, including creating drafts, sending emails, and managing calendar events, improving integration and user functionality.
2026-03-20 20:18:03 +05:30
Anish Sarkar
f938c4018e refactor: streamline authentication handling and UI feedback for connectors showing re-authentication button in the config edit area as well 2026-03-20 19:36:55 +05:30
Anish Sarkar
283b4194cc feat: enhance permission handling and user feedback for Gmail and Google Calendar tools
- Implemented logic to persist authentication expiration status for connectors when insufficient permissions are detected, improving error handling and user experience.
- Updated messages to guide users to re-authenticate in connector settings for Gmail, Google Calendar, and Google Drive tools.
- Added InsufficientPermissionsResult type and corresponding UI components to display permission-related messages consistently across Gmail and Google Calendar tools.
2026-03-20 19:36:00 +05:30
Anish Sarkar
f4c0c8c945 feat: add initial logic for HITL for gmail and google calendar connectors 2026-03-20 18:47:06 +05:30
Anish Sarkar
6d1c7731f0 refactor: improve spacing and layout in ApprovalCard component 2026-03-20 18:13:53 +05:30
Anish Sarkar
151dcd26e1 refactor: enhance UI components for consistency and user experience
- Updated various card components across Google Drive, Linear, and Notion tools to include the `select-none` class for improved user interaction by preventing text selection.
- Ensured consistent styling and behavior in loading states and error handling across different tool UIs, enhancing overall usability and visual coherence.
2026-03-20 17:51:11 +05:30
Anish Sarkar
8850fac722 feat: implement knowledge base synchronization for Linear and Notion issue creation
- Added `sync_after_create` methods in `LinearKBSyncService` and `NotionKBSyncService` to handle synchronization of newly created issues and pages with the knowledge base.
- Enhanced the `create_issue.py` and `create_page.py` tools to provide user feedback on the success of the knowledge base update, indicating whether the content has been synced or will be added in the next scheduled sync.
- Improved error handling during synchronization to log failures and manage duplicate document scenarios effectively.
2026-03-20 17:50:36 +05:30
Anish Sarkar
23c23c7528 feat: implement ToggleGroup and Toggle components for improved label selection
- Introduced ToggleGroup and Toggle components to enhance the user interface for selecting multiple labels in the Linear issue creation and update forms.
- Updated ApprovalCard component to utilize the new ToggleGroup for better label management.
- Refactored label rendering to use Badge components for improved styling and user experience across various components.
2026-03-20 17:32:05 +05:30
Anish Sarkar
15857ecfd6 refactor: update radio group implementation and improve input styling 2026-03-20 17:09:31 +05:30
Anish Sarkar
f16e0d95ad refactor: remove conditional rendering for step title in ThinkingStepsDisplay component 2026-03-20 16:46:05 +05:30
Anish Sarkar
75cf12974a refactor: simplify header text generation in ThinkingStepsDisplay component 2026-03-20 16:41:51 +05:30
Anish Sarkar
9fbf0992f3 feat: add conditional rendering in ApprovalCard component to prevent rendering when a decision has been made and is not a rejection 2026-03-20 16:41:30 +05:30
Anish Sarkar
f4da05d0ea refactor: streamline authentication expiration handling in Notion tool metadata service 2026-03-20 16:29:50 +05:30
Anish Sarkar
10af5d3f3e feat: add authentication expiration handling for Notion tools
- Implemented checks for expired authentication in the Notion page creation and deletion tools, returning appropriate error messages for re-authentication.
- Updated the Notion tool metadata service to track account health and persist authentication status, improving error handling and user feedback during operations.
2026-03-20 16:12:18 +05:30
Anish Sarkar
db5fddb104 feat: replace checkbox inputs with Checkbox component in file deletion UIs
- Updated the file deletion UI components for Google Drive, Linear, and Notion to use the new Checkbox component for better consistency and styling.
- Enhanced the accessibility of the checkbox inputs by associating labels with their respective checkboxes, improving user experience during file deletion operations.
2026-03-20 15:46:43 +05:30
Anish Sarkar
3d6ff39bf4 feat: implement Google Drive knowledge base synchronization after file creation
- Added a new GoogleDriveKBSyncService to handle synchronization of newly created Google Drive files with the knowledge base.
- Enhanced the create_file.py tool to include feedback on the success of the knowledge base update, informing users if their file has been added or will be synced later.
- Updated the Google Drive tool metadata service to include parent folder information for improved file organization.
- Modified the UI components to support selection of parent folders during file creation, enhancing user experience and file management.
2026-03-20 15:41:08 +05:30
Anish Sarkar
510f9150cb feat: improve error handling for Google Drive authentication
- Enhanced error handling in both Composio and Google Drive folder listing functions to check for expired authentication and mark connectors as 'auth_expired' when necessary.
- Added logging for failed persistence of authentication status and raised appropriate HTTP exceptions to prompt users for re-authentication.
- Streamlined the error checking process to include various authentication failure scenarios, improving overall robustness of the integration.
2026-03-20 14:48:31 +05:30
Anish Sarkar
df0d9bb2b5 feat: improve Composio Drive folder listing and authentication handling
- Simplified the folder and file listing process in the Composio Drive integration by utilizing the GoogleDriveClient for fetching contents.
- Enhanced error handling for authentication issues, marking connectors as 'auth_expired' when necessary and prompting users to re-authenticate.
- Updated UI components to display authentication status and provide re-authentication options, improving user experience during folder selection.
2026-03-20 14:48:19 +05:30
Anish Sarkar
a27c10a5f5 feat: update Google Drive connector UI and authentication handling 2026-03-20 13:39:28 +05:30
Anish Sarkar
75f0975674 feat: enhance Google Drive account authentication handling
- Added checks for expired authentication in Google Drive file creation and deletion tools, returning appropriate error messages for re-authentication.
- Updated the Google Drive tool metadata service to track account health and persist authentication status.
- Enhanced UI components to display authentication errors and differentiate between valid and expired accounts, improving user experience during file operations.
2026-03-20 12:34:30 +05:30
Anish Sarkar
d21593ee71 feat: unify handling of native and legacy document types for Google connectors
- Introduced a mapping of native Google document types to their legacy Composio equivalents, ensuring seamless search and indexing for both types.
- Updated relevant components to utilize the new mapping, enhancing the consistency of document type handling across the application.
- Improved search functionality to transparently include legacy types, maintaining accessibility for older documents until re-indexed.
2026-03-20 03:41:32 +05:30
Anish Sarkar
aaf34800e6 feat: enhance legacy document migration for Google connectors
- Implemented fallback logic in Google Calendar, Drive, and Gmail indexers to handle legacy Composio document types, ensuring smooth migration to native types.
- Updated document indexing functions to check for existing documents using both primary and legacy hashes, improving data integrity during indexing.
2026-03-20 03:39:05 +05:30
Anish Sarkar
8e7cda31c5 feat: update Google indexing functions to track skipped messages
- Modified the indexing functions for Google Calendar and Gmail to return the count of skipped messages alongside indexed messages, enhancing performance tracking.
- Updated related tests to accommodate the new return values, ensuring comprehensive coverage of the indexing process.
- Improved error handling to maintain consistency in returned values across different indexing functions.
2026-03-19 20:56:40 +05:30
Anish Sarkar
80f7d5f34a feat: enhance document deletion feedback in UI 2026-03-19 20:34:31 +05:30
Anish Sarkar
e9485ab2df feat: update Google Drive indexing to include skipped file tracking 2026-03-19 20:27:50 +05:30
Anish Sarkar
eac4cb6075 feat: enhance Google Drive indexing to track skipped files
- Updated the indexing function to return the count of skipped files alongside indexed files, improving tracking of indexing performance.
- Added logic to accumulate skipped file counts during the indexing process, providing better insights into potential issues.
- Enhanced notification updates to include skipped file counts, ensuring comprehensive progress reporting for users.
2026-03-19 20:27:36 +05:30
Anish Sarkar
83d9c49a50 feat: enhance Composio connector handling and status management
- Updated the .env.example file to include a note about disabling "Mask Connected Account Secrets" for Google indexing.
- Implemented a wait_for_connection method in ComposioService to ensure connected accounts reach ACTIVE status after authentication.
- Added logic in composio_callback and composio_reauth_callback to wait for Composio to finish processing tokens, improving reliability in token handling.
- Enhanced logging to provide clearer warnings when connection timeouts occur, ensuring better visibility into potential issues.
2026-03-19 19:24:55 +05:30
Anish Sarkar
2390bd7d26 feat: enhance Google Drive authentication error handling
- Improved error handling for Google Drive indexing and listing operations to manage authentication failures more effectively.
- Added logic to mark connectors as 'auth_expired' when a 401 error or invalid credentials are detected, prompting users to re-authenticate.
- Updated error messages to provide clearer guidance on authentication issues, ensuring a better user experience.
2026-03-19 18:24:41 +05:30
Anish Sarkar
53e555f10c feat: implement Composio re-authentication endpoints and refresh logic
- Added new endpoints for re-authenticating Composio connectors, allowing users to refresh their authentication when expired.
- Introduced a method in ComposioService to handle the refresh of connected accounts.
- Updated the frontend to support re-authentication flows, including success notifications and redirection after re-authentication.
- Enhanced error handling for re-authentication processes to improve user experience.
2026-03-19 18:08:23 +05:30
Anish Sarkar
90481b9462 feat: Added logic to encrypt the access token, refresh token, and client secret if the configuration specifies token encryption for native Gmail connector 2026-03-19 17:57:51 +05:30
Anish Sarkar
c9deae940c feat: implement re-authentication flows for Google Drive, Gmail, and Calendar connectors
- Added re-authentication endpoints for Google Drive, Gmail, and Calendar connectors to handle expired authentication.
- Enhanced the UI to prompt users for re-authentication when their credentials are expired.
- Updated backend logic to mark connectors as 'auth_expired' and manage re-authentication requests effectively.
- Improved error handling for authentication failures across Google connectors.
2026-03-19 17:51:59 +05:30
Anish Sarkar
36f4709225 feat: add integration and unit tests for Google unification connectors
- Introduced comprehensive integration tests for Google Drive, Gmail, and Calendar indexers, ensuring proper credential handling for both Composio and native connectors.
- Added unit tests to validate the acceptance of Composio-sourced credentials across various connector types.
- Implemented fixtures to seed test data and facilitate testing of hybrid search functionality, ensuring accurate document type filtering.
2026-03-19 17:51:15 +05:30
Anish Sarkar
83152e8e7e refactor: unify all 3 google Composio and non-Composio connector types and pipelines keeping same credential adapters 2026-03-19 05:08:21 +05:30
Anish Sarkar
6c37b563c0 fix: update re-authentication messages for Linear and Notion connectors 2026-03-19 01:31:26 +05:30
Anish Sarkar
7ba5e9c662 feat: implement re-authentication flow for connectors and enhance auth expiration handling
- Added a mechanism to mark connectors as 'auth_expired' in the database, allowing the frontend to prompt users for re-authentication.
- Updated Linear and Notion connector routes to handle token refresh failures by invoking the new expiration flagging function.
- Enhanced UI components to display re-authentication options when a connector's authentication status is expired.
2026-03-19 01:20:48 +05:30
Anish Sarkar
81ddac1f54 refactor: update connector status messages and remove deprecated Google OAuth connector entries 2026-03-18 17:01:07 +05:30
Anish Sarkar
95f11521c3 refactor: migrate OAuth result handling from sessionStorage to cookies and update connector callback implementation
- Removed the ConnectorCallbackPage component and replaced it with a route handler that sets the OAuth result in a cookie.
- Updated the useConnectorDialog hook to read from the cookie instead of sessionStorage, ensuring a more consistent state management approach.
2026-03-18 17:00:54 +05:30
Anish Sarkar
8baba0693d feat: ensure unique connector names for MCP connectors 2026-03-18 16:09:35 +05:30
Anish Sarkar
c343368456 refactor: remove query params for connector popup and improve connector callback URLs 2026-03-18 16:08:30 +05:30
Anish Sarkar
9c93d32f20 feat: made non-composio OAuth connectors for Google Drive, Gmail, and Google Calendar available for self-hosted users only
- Introduced OAuth connectors for Google Drive, Gmail, and Google Calendar, enabling users to authenticate and access their data.
- Each connector includes a selfHostedOnly property to specify hosting requirements.
- Enhanced user experience by providing clear descriptions and authentication endpoints for each connector.
2026-03-18 15:00:00 +05:30
Anish Sarkar
df872e261e feat: implement re-authentication flow for Linear and Notion HITL connectors and improve their HITL flow and error states
- Added re-authentication endpoints for Linear and Notion connectors to handle expired authentication.
- Enhanced error handling in issue creation, deletion, and update tools to return appropriate authentication error messages.
- Updated UI components to display authentication status and guide users on re-authentication steps.
- Improved account health checks to ensure valid tokens are used for operations.
2026-03-18 14:10:11 +05:30
Anish Sarkar
5fb33b7cff refactor: improve UI and functionality for Google Drive and Notion HITL tools
- Updated approval components for Google Drive file creation, deletion, and Notion page updates to enhance user feedback and interaction.
- Replaced deprecated icons and streamlined state management for better performance.
- Integrated keyboard shortcuts for approving actions, improving accessibility and user experience.
- Refactored UI elements for consistency and clarity across approval processes.
2026-03-18 03:49:52 +05:30
Anish Sarkar
804106af11 refactor: clarify usage instructions for Google Drive file HITL creation tool 2026-03-18 03:36:02 +05:30