Commit Graph

133 Commits

Author SHA1 Message Date
mlogclub 1440c3c4c3 Add AI workflow run management with listing and detail retrieval endpoints, including corresponding response structures and UI integration 2026-06-23 23:05:17 +08:00
mlogclub 560843686b Refactor AIAgent runtime handling and remove unused fields 2026-06-23 08:37:52 +08:00
mlogclub d1f39ae57e feat: Enhance AI Workflow with Variable Contracts and Input Mapping
- Added ConfigSchema, InputSchema, OutputSchema, and DefaultInputs to AIWorkflowNodeSpecResponse.
- Implemented BuildAIWorkflowNodeSpecs to include variable contracts for start and send_reply nodes.
- Introduced applyAutoInputMappings to automatically map inputs based on node connections.
- Enhanced validation to check for required input mappings in workflows.
- Updated workflow editor to support variable selection for node inputs.
- Translated node names and labels to Chinese for better localization.
- Added tests for variable mapping and validation logic.
2026-06-22 18:33:39 +08:00
mlogclub 32ab43e7c2 refactor: make AI workflows agent-centric 2026-06-22 10:08:51 +08:00
mlogclub df7b199c18 feat: bind AI agents to workflow versions 2026-06-22 00:14:36 +08:00
mlogclub 0127455be5 feat: add AI workflow service foundation 2026-06-22 00:11:26 +08:00
mlogclub 541e4c5874 refactor: replace skill code with skill ID across the application
- Updated skill handling to use skill IDs instead of skill codes in various components, services, and models.
- Modified tests to reflect changes in skill identification.
- Removed references to skill codes in favor of skill IDs for consistency and clarity.
- Updated localization files to remove skill code references and adjust error messages accordingly.
2026-06-20 20:42:07 +08:00
mlogclub daf1a176c1 feat: update configuration loading to use viper and add environment variable overrides 2026-06-13 10:40:09 +08:00
mlogclub c3387ec4a9 feat: add LanceDB vector database provider
- Implemented LanceDBProvider for managing vector collections, including methods for creating, deleting, and searching collections.
- Added support for LanceDB configuration in VectorDBConfig.
- Introduced stub for LanceDB provider when not built with the appropriate tag.
- Updated provider initialization to include LanceDB as a supported type.
- Created types and interfaces for vector operations, including Vector, SearchRequest, and SearchResult.
- Added tests for VectorDBConfig unmarshalling and for ensuring proper error handling when LanceDB is not built.
- Updated enums to include LanceDB type and labels.
- Modified frontend enums to reflect the addition of LanceDB.
2026-06-07 17:32:29 +08:00
mlogclub 3439d20537 feat(i18n): Enhance internationalization support for tool specifications and notifications
- Added TitleKey and DescriptionKey fields to ToolSpec for dynamic localization.
- Updated tool specifications to use i18nx for titles, descriptions, and appendices.
- Refactored notification messages to utilize i18nx for localization in conversation and ticket assignment events.
- Improved localization in the debug dialog component for skill definitions.
- Added new translation keys in English and Chinese for ticket and conversation assignment notifications.
- Ensured that fallback messages are properly localized based on user locale.
2026-06-03 09:36:33 +08:00
mlogclub 5b6c54de34 feat: enhance error handling with internationalized messages across services and locales 2026-06-02 21:10:17 +08:00
mlogclub 0b4a1b4594 Refactor error handling in services to use internationalized error messages
- Updated OSSStorage validation errors to use internationalized messages.
- Changed error messages in provider.go for unsupported file storage types.
- Refactored tag_service.go to replace hardcoded error messages with internationalized versions.
- Updated ticket_service.go to use internationalized error messages for various validation checks.
- Refactored ticket_tag_service.go to use internationalized error messages for tag validation.
- Changed ticket_view_service.go to use internationalized error messages for view validation.
- Updated tool_catalog_service.go to use internationalized error messages for tool code validation.
- Refactored user_service.go to replace error messages with internationalized versions.
- Updated ws_service.go to use internationalized error messages for WebSocket handling.
- Refactored wxwork_kf_inbound_service.go to use internationalized error messages for message handling.
- Updated wxwork_kf_outbound_service.go to use internationalized error messages for outbound message handling.
- Refactored wxwork_login_service.go to use internationalized error messages for login handling.
- Updated login.go in wxwork package to use internationalized error messages for login state and ticket validation.
2026-06-02 20:51:13 +08:00
mlogclub 77be1b4f5e feat: enhance localization support for KnowledgeFAQ import and conversation error messages 2026-06-02 20:12:04 +08:00
mlogclub 842f827c86 feat: implement batch move and delete functionality for documents and FAQs 2026-06-02 16:13:08 +08:00
mlogclub 853ae71b3d feat: add knowledge directory management for documents and FAQs
- Implemented directory validation in Create and Update knowledge document services.
- Added directory selection in document and FAQ edit dialogs with a new KnowledgeDirectoryPanel component.
- Enhanced API to support fetching, creating, updating, and deleting knowledge directories.
- Updated data models to include directory information for knowledge documents and FAQs.
- Added translations for directory-related messages in English and Chinese.
2026-06-02 15:37:50 +08:00
mlogclub 8933e963f5 feat(knowledge): add FAQ Excel import export 2026-06-01 13:57:49 +08:00
mlogclub b128447a7e Refactor localization strings to English across various services and UI components
- Updated titles and subtitles in channel_service.go for web channel and WeChat MP channel configurations.
- Changed handoff messages in conversation_human_dispatch_service.go to English.
- Modified notification messages in event handlers for ticket and conversation assignments to English.
- Adjusted ticket creation messages in ticket_service.go to reflect English localization.
- Updated default locale settings in i18n configuration files to English (en-US).
- Changed HTML language attribute in layout.tsx to English.
- Refactored widget locale detection logic in agent-desk-sdk.ts to prioritize English.
2026-05-31 21:57:31 +08:00
mlogclub 101577f163 Refactor internal services to use agent-desk package structure
- Updated import paths in multiple service files to reflect the new agent-desk module.
- Added a new configuration file for agent-desk in the Docker setup.
2026-05-31 18:43:48 +08:00
mlogclub a2f238b3f8 refactor: replace APIKey with HasAPIKey in AIConfig and related components 2026-05-30 22:41:21 +08:00
mlogclub 5d7c10aeab refactor: rename agent widget references to AI agent for consistency
- Updated runtime configuration to use __CS_AI_AGENT_WIDGET_CONFIG__ instead of __CS_AGENT_WIDGET_CONFIG__.
- Changed message types in support host bridge from "cs-agent" to "cs-ai-agent".
- Minified SDK script updated to reflect new AI agent naming conventions.
- Adjusted scrollbar styles in main.scss to use .cs-ai-agent-scrollbar instead of .cs-agent-scrollbar.
2026-05-30 21:19:36 +08:00
mlogclub c246b85a9e feat: add support for request ID tracking across services
- Implemented request ID handling in various services and handlers to improve traceability of requests.
- Added new AuthOptions endpoint to expose WxWork and OIDC configuration options.
- Updated message and event logging to include request ID for better debugging.
- Enhanced login form to dynamically show available authentication options based on server configuration.
- Introduced utility functions for normalizing and ensuring valid request IDs.
- Updated tests to verify request ID functionality in message sending and event logging.
2026-05-27 22:18:43 +08:00
mlogclub 4d816182ee feat: implement CORS support with configurable allowed origins 2026-05-27 22:05:02 +08:00
mlogclub 988f55c80d refactor: support i18n 2026-05-25 12:06:15 +08:00
mlogclub eac039bba4 feat: add OIDC login support
- Introduced OIDC configuration options in config.example.yaml.
- Added OIDC client initialization and routes for OIDC login, callback, and exchange.
- Implemented OIDC login service to handle user authentication via OIDC.
- Created frontend components for OIDC login and callback handling.
- Updated user creation logic to support OIDC users and their identities.
- Enhanced error handling for OIDC login processes.
2026-05-24 20:49:10 +08:00
mlogclub 467759d547 feat: update AIConfig route handler and add validation utility function with tests 2026-05-24 19:57:36 +08:00
mlogclub c80bae5106 feat: enhance Makefile commands and update README for improved development workflow
refactor: separate API and SPA handling in server routes and add static file serving options

test: add tests for SPA handling and static file serving

feat: implement embedded SPA support for production and development environments
2026-05-23 22:44:06 +08:00
mlogclub f9ddf39c83 refactor: simplify route handlers by removing redundant ID parsing logic 2026-05-23 22:28:21 +08:00
mlogclub 7fdf96dd9d feat: implement httpx response utilities and refactor API controllers to use them 2026-05-23 22:18:40 +08:00
mlogclub d21b420765 feat: restructure API routing and remove ginx package
- Added new routing functions for API and dashboard endpoints in controller_routes.go.
- Replaced previous ginx.HandleController calls with explicit route registrations.
- Removed the ginx package as it is no longer needed for handling controllers.
- Improved organization and readability of route definitions.
2026-05-23 22:12:13 +08:00
mlogclub 79614b2d07 Refactor import paths to use internal/pkg/httpx/params
- Updated multiple repository and service files to replace imports from "github.com/mlogclub/simple/web/params" with "cs-agent/internal/pkg/httpx/params".
- Adjusted context handling in auth_service and ws_service to use gin.Context instead of iris.Context.
- Ensured consistent usage of HTTP status responses across websocket handlers.
2026-05-23 22:10:20 +08:00
mlogclub 7a9cffe21e fix: add structured graph tool results 2026-05-10 00:02:23 +08:00
mlogclub d30e211996 refactor: enhance conversation handling and websocket integration with new team ID support 2026-05-09 22:05:34 +08:00
mlogclub dba175b0fa feat(ticket): add customer linking functionality to tickets 2026-05-06 17:40:11 +08:00
mlogclub d181ff4947 fix(ticket): remove batch assign and restructure detail dialog 2026-05-06 17:40:10 +08:00
mlogclub d10c6cee67 fix(ticket): align progress routes 2026-05-02 21:05:11 +08:00
mlogclub 6d75ea9988 fix(ticket): close final integration gaps 2026-05-02 21:00:00 +08:00
mlogclub a06ce7074e fix(ticket): close backend core review gaps 2026-05-02 18:57:40 +08:00
mlogclub fce0b5709d refactor(ticket): contract backend ticket core 2026-05-02 18:49:10 +08:00
mlogclub 0e0747bfc4 feat(conversation): expose current team in responses 2026-05-02 11:34:32 +08:00
mlogclub fbafb13a8a refactor(auth): simplify admin session token flow 2026-04-30 17:42:24 +08:00
mlogclub 8be2d06283 fix(knowledge): paginate document list without content 2026-04-30 13:43:22 +08:00
mlogclub 630f25df95 feat: add batch schedule dto and repository methods 2026-04-29 19:03:58 +08:00
mlogclub 6331ce32c4 feat(schedule): remove sourceType from schedule models and payloads 2026-04-29 15:09:35 +08:00
mlogclub 8646b002c1 feat: add calendar scheduling feature for agent teams
- Implemented FindCalendarSchedules method in agentTeamScheduleService to retrieve schedules within a specified time range.
- Added new API endpoint fetchAgentTeamScheduleCalendar to fetch schedules for the calendar view.
- Created ScheduleCalendar component to display agent team schedules in a calendar format with drag-and-drop functionality for moving and resizing schedules.
- Updated EditDialog component to support deleting schedules and handling default values for new entries.
- Enhanced DashboardAgentTeamSchedulesPage to toggle between calendar and list views, and to load calendar data based on selected week.
- Added tests for FindCalendarSchedules to ensure correct schedule retrieval and validation of time ranges.
2026-04-29 09:23:54 +08:00
mlogclub 14e3df64f1 feat: add customer session refresh functionality and improve session management
- Introduced RealtimeCustomerSessionRefreshPayload and RealtimeCustomerSessionRefreshEvent types for handling session refresh events.
- Updated ws_service to verify customer session and handle session refresh notifications.
- Enhanced API client to manage customer session tokens and expiration.
- Implemented customer session validation and storage in session storage.
- Added functions to exchange and ensure customer sessions.
- Updated IM real-time connection to include customer session tokens in WebSocket requests.
- Modified SDK and widget configurations to support external IDs and user tokens.
2026-04-28 23:00:22 +08:00
mlogclub 909854cd03 feat(notification): add dashboard notification center 2026-04-28 19:20:38 +08:00
mlogclub cf63b75590 refactor: rename ExternalInfo to ExternalUser and update related functions for consistency
Co-authored-by: Copilot <copilot@github.com>
2026-04-28 11:10:47 +08:00
mlogclub 0ad2ef83df refactor: rename VerifyUserToken function to verifyUserToken for consistency 2026-04-28 10:46:58 +08:00
mlogclub 864c3cc61a refactor: rename parsing functions for clarity and consistency 2026-04-28 10:46:28 +08:00
mlogclub fe4a6e63af refactor: streamline UserTokenClaims structure and simplify VerifyUserToken function 2026-04-28 10:43:38 +08:00