gitextract_l4du0bg5/ ├── .gemini/ │ └── config.yaml ├── .gitattributes ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.yml │ │ ├── config.yml │ │ ├── feature_request.yml │ │ └── general_issue.yml │ ├── code_of_conduct.md │ ├── code_owners │ ├── pull_request_template.md │ ├── quality-requirements/ │ │ ├── branch-commit-standards-zh.md │ │ ├── branch-commit-standards.md │ │ ├── code-requirements-zh.md │ │ ├── code-requirements.md │ │ └── langs/ │ │ ├── go-zh.md │ │ ├── go.md │ │ ├── java-zh.md │ │ ├── java.md │ │ ├── python-zh.md │ │ ├── python.md │ │ ├── typescript-zh.md │ │ └── typescript.md │ └── workflows/ │ ├── build-push.yml │ ├── ci.yml │ ├── claude-review.yml │ ├── claude.yml │ ├── codeql-security-analysis.yml │ └── release.yml ├── .gitignore ├── .pre-commit-config.yaml ├── AGENTS.md ├── CLAUDE.md ├── CONTRIBUTING.md ├── FAQ.md ├── LICENSE ├── Makefile ├── NOTICE ├── PR.md ├── README.md ├── console/ │ ├── .claude/ │ │ ├── DOC_VALIDATION_LOOP.md │ │ ├── QUICK_REFERENCE.md │ │ ├── WORKFLOW.md │ │ ├── docs/ │ │ │ ├── ai-tools/ │ │ │ │ └── module.md │ │ │ ├── bot-management/ │ │ │ │ └── module.md │ │ │ ├── chat/ │ │ │ │ └── module.md │ │ │ ├── enterprise-management/ │ │ │ │ └── module.md │ │ │ ├── knowledge/ │ │ │ │ └── module.md │ │ │ ├── model-management/ │ │ │ │ └── module.md │ │ │ ├── overview.md │ │ │ ├── publish/ │ │ │ │ └── module.md │ │ │ ├── space-management/ │ │ │ │ └── module.md │ │ │ ├── user-management/ │ │ │ │ └── module.md │ │ │ └── workflow/ │ │ │ └── module.md │ │ └── skills/ │ │ ├── backend-design.md │ │ ├── bugfix.md │ │ ├── context-check.md │ │ ├── doc-module.md │ │ ├── drift-check.md │ │ ├── frontend-design.md │ │ ├── requirement.md │ │ ├── spec.md │ │ ├── stories.md │ │ └── tasks.md │ ├── .gitignore │ ├── README.md │ ├── backend/ │ │ ├── commons/ │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ ├── main/ │ │ │ │ ├── java/ │ │ │ │ │ └── com/ │ │ │ │ │ └── iflytek/ │ │ │ │ │ └── astron/ │ │ │ │ │ └── console/ │ │ │ │ │ └── commons/ │ │ │ │ │ ├── annotation/ │ │ │ │ │ │ ├── RateLimit.java │ │ │ │ │ │ └── space/ │ │ │ │ │ │ ├── EnterprisePreAuth.java │ │ │ │ │ │ └── SpacePreAuth.java │ │ │ │ │ ├── aspect/ │ │ │ │ │ │ ├── RateLimitAspect.java │ │ │ │ │ │ └── space/ │ │ │ │ │ │ ├── EnterpriseAuthAspect.java │ │ │ │ │ │ ├── PermissionValidator.java │ │ │ │ │ │ └── SpaceAuthAspect.java │ │ │ │ │ ├── config/ │ │ │ │ │ │ └── JwtClaimsFilter.java │ │ │ │ │ ├── constant/ │ │ │ │ │ │ ├── RedisKeyConstant.java │ │ │ │ │ │ └── ResponseEnum.java │ │ │ │ │ ├── data/ │ │ │ │ │ │ ├── UserInfoDataService.java │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ └── UserInfoDataServiceImpl.java │ │ │ │ │ ├── dto/ │ │ │ │ │ │ ├── bot/ │ │ │ │ │ │ │ ├── AdvancedConfig.java │ │ │ │ │ │ │ ├── BotCloneWorkflowDto.java │ │ │ │ │ │ │ ├── BotCreateForm.java │ │ │ │ │ │ │ ├── BotDetail.java │ │ │ │ │ │ │ ├── BotFavoriteItemDto.java │ │ │ │ │ │ │ ├── BotFavoritePageDto.java │ │ │ │ │ │ │ ├── BotFavoriteQueryDto.java │ │ │ │ │ │ │ ├── BotInfoDto.java │ │ │ │ │ │ │ ├── BotListRequestDto.java │ │ │ │ │ │ │ ├── BotMarketForm.java │ │ │ │ │ │ │ ├── BotModelDto.java │ │ │ │ │ │ │ ├── BotPublishQueryResult.java │ │ │ │ │ │ │ ├── BotQueryCondition.java │ │ │ │ │ │ │ ├── BotTag.java │ │ │ │ │ │ │ ├── ChatBotApi.java │ │ │ │ │ │ │ ├── ChatBotMarketPage.java │ │ │ │ │ │ │ ├── ChatBotReqDto.java │ │ │ │ │ │ │ ├── DebugChatBotReqDto.java │ │ │ │ │ │ │ ├── PersonalityConfigDto.java │ │ │ │ │ │ │ ├── PromptBotDetail.java │ │ │ │ │ │ │ ├── TalkAgentConfigDto.java │ │ │ │ │ │ │ ├── TalkAgentCreateDto.java │ │ │ │ │ │ │ ├── TalkAgentHistoryDto.java │ │ │ │ │ │ │ ├── TalkAgentSceneDto.java │ │ │ │ │ │ │ └── TalkAgentUpgradeDto.java │ │ │ │ │ │ ├── chat/ │ │ │ │ │ │ │ ├── ChatBotListDto.java │ │ │ │ │ │ │ ├── ChatContentMeta.java │ │ │ │ │ │ │ ├── ChatFileReq.java │ │ │ │ │ │ │ ├── ChatListCreateRequest.java │ │ │ │ │ │ │ ├── ChatListCreateResponse.java │ │ │ │ │ │ │ ├── ChatListDelRequest.java │ │ │ │ │ │ │ ├── ChatListResponseDto.java │ │ │ │ │ │ │ ├── ChatModelMeta.java │ │ │ │ │ │ │ ├── ChatReqModelDto.java │ │ │ │ │ │ │ ├── ChatRequestDto.java │ │ │ │ │ │ │ ├── ChatRequestDtoList.java │ │ │ │ │ │ │ └── ChatRespModelDto.java │ │ │ │ │ │ ├── dataset/ │ │ │ │ │ │ │ └── DatasetStats.java │ │ │ │ │ │ ├── llm/ │ │ │ │ │ │ │ ├── ChatCompletionRequest.java │ │ │ │ │ │ │ ├── ChatCompletionResponse.java │ │ │ │ │ │ │ ├── ChatMessage.java │ │ │ │ │ │ │ └── SparkChatRequest.java │ │ │ │ │ │ ├── space/ │ │ │ │ │ │ │ ├── ApplyRecordParam.java │ │ │ │ │ │ │ ├── ApplyRecordVO.java │ │ │ │ │ │ │ ├── BatchChatUserVO.java │ │ │ │ │ │ │ ├── ChatUserVO.java │ │ │ │ │ │ │ ├── EnterpriseAddDTO.java │ │ │ │ │ │ │ ├── EnterpriseSpaceCountVO.java │ │ │ │ │ │ │ ├── EnterpriseUserParam.java │ │ │ │ │ │ │ ├── EnterpriseUserVO.java │ │ │ │ │ │ │ ├── EnterpriseVO.java │ │ │ │ │ │ │ ├── InviteRecordAddDTO.java │ │ │ │ │ │ │ ├── InviteRecordParam.java │ │ │ │ │ │ │ ├── InviteRecordVO.java │ │ │ │ │ │ │ ├── PageParam.java │ │ │ │ │ │ │ ├── SpaceAddDTO.java │ │ │ │ │ │ │ ├── SpaceUpdateDTO.java │ │ │ │ │ │ │ ├── SpaceUserParam.java │ │ │ │ │ │ │ ├── SpaceUserVO.java │ │ │ │ │ │ │ ├── SpaceVO.java │ │ │ │ │ │ │ └── UserLimitVO.java │ │ │ │ │ │ ├── user/ │ │ │ │ │ │ │ ├── BotDataParam.java │ │ │ │ │ │ │ └── JwtInfoDto.java │ │ │ │ │ │ ├── vcn/ │ │ │ │ │ │ │ └── CustomV2VCNDTO.java │ │ │ │ │ │ └── workflow/ │ │ │ │ │ │ ├── CloneSynchronize.java │ │ │ │ │ │ ├── MaasApi.java │ │ │ │ │ │ ├── WorkflowApiRequest.java │ │ │ │ │ │ ├── WorkflowChatRequest.java │ │ │ │ │ │ ├── WorkflowEventData.java │ │ │ │ │ │ ├── WorkflowInfoDto.java │ │ │ │ │ │ ├── WorkflowInputTypeDto.java │ │ │ │ │ │ ├── WorkflowInputsResponseDto.java │ │ │ │ │ │ ├── WorkflowResumeReq.java │ │ │ │ │ │ └── WorkflowResumeRequest.java │ │ │ │ │ ├── entity/ │ │ │ │ │ │ ├── bot/ │ │ │ │ │ │ │ ├── BotChatFileParam.java │ │ │ │ │ │ │ ├── BotDataset.java │ │ │ │ │ │ │ ├── BotFavorite.java │ │ │ │ │ │ │ ├── BotTemplate.java │ │ │ │ │ │ │ ├── BotTypeList.java │ │ │ │ │ │ │ ├── ChatBotBase.java │ │ │ │ │ │ │ ├── ChatBotList.java │ │ │ │ │ │ │ ├── ChatBotMarket.java │ │ │ │ │ │ │ ├── ChatBotPromptStruct.java │ │ │ │ │ │ │ ├── ChatBotTag.java │ │ │ │ │ │ │ ├── DatasetFile.java │ │ │ │ │ │ │ ├── DatasetInfo.java │ │ │ │ │ │ │ ├── TakeoffList.java │ │ │ │ │ │ │ ├── UserLangChainInfo.java │ │ │ │ │ │ │ └── UserLangChainLog.java │ │ │ │ │ │ ├── chat/ │ │ │ │ │ │ │ ├── ChatFileUser.java │ │ │ │ │ │ │ ├── ChatList.java │ │ │ │ │ │ │ ├── ChatReanwserRecords.java │ │ │ │ │ │ │ ├── ChatReasonRecords.java │ │ │ │ │ │ │ ├── ChatReqModel.java │ │ │ │ │ │ │ ├── ChatReqRecords.java │ │ │ │ │ │ │ ├── ChatRespAlltoolData.java │ │ │ │ │ │ │ ├── ChatRespModel.java │ │ │ │ │ │ │ ├── ChatRespRecords.java │ │ │ │ │ │ │ ├── ChatTokenRecords.java │ │ │ │ │ │ │ ├── ChatTraceSource.java │ │ │ │ │ │ │ └── ChatTreeIndex.java │ │ │ │ │ │ ├── dataset/ │ │ │ │ │ │ │ └── BotDatasetMaas.java │ │ │ │ │ │ ├── model/ │ │ │ │ │ │ │ └── McpData.java │ │ │ │ │ │ ├── space/ │ │ │ │ │ │ │ ├── AgentShareRecord.java │ │ │ │ │ │ │ ├── ApplyRecord.java │ │ │ │ │ │ │ ├── Enterprise.java │ │ │ │ │ │ │ ├── EnterprisePermission.java │ │ │ │ │ │ │ ├── EnterpriseUser.java │ │ │ │ │ │ │ ├── InviteRecord.java │ │ │ │ │ │ │ ├── Space.java │ │ │ │ │ │ │ ├── SpacePermission.java │ │ │ │ │ │ │ └── SpaceUser.java │ │ │ │ │ │ ├── user/ │ │ │ │ │ │ │ ├── AppMst.java │ │ │ │ │ │ │ └── UserInfo.java │ │ │ │ │ │ ├── wechat/ │ │ │ │ │ │ │ └── BotOffiaccount.java │ │ │ │ │ │ └── workflow/ │ │ │ │ │ │ └── Workflow.java │ │ │ │ │ ├── enums/ │ │ │ │ │ │ ├── BotOffiaccountStatusEnum.java │ │ │ │ │ │ ├── PublishChannelEnum.java │ │ │ │ │ │ ├── ShelfStatusEnum.java │ │ │ │ │ │ ├── bot/ │ │ │ │ │ │ │ ├── BotStatusEnum.java │ │ │ │ │ │ │ ├── BotTypeEnum.java │ │ │ │ │ │ │ ├── BotUploadEnum.java │ │ │ │ │ │ │ ├── BotVersionEnum.java │ │ │ │ │ │ │ ├── DefaultBotModelEnum.java │ │ │ │ │ │ │ └── ReleaseTypeEnum.java │ │ │ │ │ │ ├── space/ │ │ │ │ │ │ │ ├── EnterpriseRoleEnum.java │ │ │ │ │ │ │ ├── EnterpriseServiceTypeEnum.java │ │ │ │ │ │ │ ├── InviteRecordRoleEnum.java │ │ │ │ │ │ │ ├── InviteRecordStatusEnum.java │ │ │ │ │ │ │ ├── InviteRecordTypeEnum.java │ │ │ │ │ │ │ ├── SpaceRoleEnum.java │ │ │ │ │ │ │ └── SpaceTypeEnum.java │ │ │ │ │ │ └── user/ │ │ │ │ │ │ └── WordsTypeEnum.java │ │ │ │ │ ├── event/ │ │ │ │ │ │ └── UserNicknameUpdatedEvent.java │ │ │ │ │ ├── exception/ │ │ │ │ │ │ └── BusinessException.java │ │ │ │ │ ├── listener/ │ │ │ │ │ │ └── UserNicknameUpdateEventListener.java │ │ │ │ │ ├── mapper/ │ │ │ │ │ │ ├── AgentShareRecordMapper.java │ │ │ │ │ │ ├── UserLangChainInfoMapper.java │ │ │ │ │ │ ├── UserLangChainLogMapper.java │ │ │ │ │ │ ├── bot/ │ │ │ │ │ │ │ ├── BotDatasetMapper.java │ │ │ │ │ │ │ ├── BotFavoriteMapper.java │ │ │ │ │ │ │ ├── BotTemplateMapper.java │ │ │ │ │ │ │ ├── BotTypeListMapper.java │ │ │ │ │ │ │ ├── ChatBotApiMapper.java │ │ │ │ │ │ │ ├── ChatBotBaseMapper.java │ │ │ │ │ │ │ ├── ChatBotListMapper.java │ │ │ │ │ │ │ ├── ChatBotMarketMapper.java │ │ │ │ │ │ │ ├── ChatBotPromptStructMapper.java │ │ │ │ │ │ │ ├── ChatBotTagMapper.java │ │ │ │ │ │ │ ├── DatasetFileMapper.java │ │ │ │ │ │ │ └── DatasetInfoMapper.java │ │ │ │ │ │ ├── chat/ │ │ │ │ │ │ │ ├── ChatListMapper.java │ │ │ │ │ │ │ └── ChatTreeIndexMapper.java │ │ │ │ │ │ ├── dataset/ │ │ │ │ │ │ │ └── BotDatasetMaasMapper.java │ │ │ │ │ │ ├── model/ │ │ │ │ │ │ │ └── McpDataMapper.java │ │ │ │ │ │ ├── space/ │ │ │ │ │ │ │ ├── ApplyRecordMapper.java │ │ │ │ │ │ │ ├── EnterpriseMapper.java │ │ │ │ │ │ │ ├── EnterprisePermissionMapper.java │ │ │ │ │ │ │ ├── EnterpriseUserMapper.java │ │ │ │ │ │ │ ├── InviteRecordMapper.java │ │ │ │ │ │ │ ├── SpaceMapper.java │ │ │ │ │ │ │ ├── SpacePermissionMapper.java │ │ │ │ │ │ │ └── SpaceUserMapper.java │ │ │ │ │ │ ├── user/ │ │ │ │ │ │ │ ├── AppMstMapper.java │ │ │ │ │ │ │ └── UserInfoMapper.java │ │ │ │ │ │ ├── vcn/ │ │ │ │ │ │ │ └── CustomVCNMapper.java │ │ │ │ │ │ └── wechat/ │ │ │ │ │ │ └── BotOffiaccountMapper.java │ │ │ │ │ ├── request/ │ │ │ │ │ │ └── .gitkeep │ │ │ │ │ ├── response/ │ │ │ │ │ │ └── ApiResult.java │ │ │ │ │ ├── service/ │ │ │ │ │ │ ├── ChatRecordModelService.java │ │ │ │ │ │ ├── WssListenerService.java │ │ │ │ │ │ ├── bot/ │ │ │ │ │ │ │ ├── BotDatasetService.java │ │ │ │ │ │ │ ├── BotFavoriteService.java │ │ │ │ │ │ │ ├── BotMarketDataService.java │ │ │ │ │ │ │ ├── BotService.java │ │ │ │ │ │ │ ├── BotTypeListService.java │ │ │ │ │ │ │ ├── ChatBotDataService.java │ │ │ │ │ │ │ ├── ChatBotMarketService.java │ │ │ │ │ │ │ ├── ChatBotTagService.java │ │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ │ ├── BotDatasetServiceImpl.java │ │ │ │ │ │ │ ├── BotFavoriteServiceImpl.java │ │ │ │ │ │ │ ├── BotMarketDataServiceImpl.java │ │ │ │ │ │ │ ├── BotServiceImpl.java │ │ │ │ │ │ │ ├── ChatBotDataServiceImpl.java │ │ │ │ │ │ │ ├── ChatBotMarketServiceImpl.java │ │ │ │ │ │ │ └── ChatBotTagServiceImpl.java │ │ │ │ │ │ ├── data/ │ │ │ │ │ │ │ ├── ChatDataService.java │ │ │ │ │ │ │ ├── ChatHistoryService.java │ │ │ │ │ │ │ ├── ChatListDataService.java │ │ │ │ │ │ │ ├── DatasetDataService.java │ │ │ │ │ │ │ ├── IDatasetFileService.java │ │ │ │ │ │ │ ├── IDatasetInfoService.java │ │ │ │ │ │ │ ├── UserLangChainDataService.java │ │ │ │ │ │ │ ├── UserLangChainLogService.java │ │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ │ ├── BotTypeListServiceImpl.java │ │ │ │ │ │ │ ├── ChatListDataServiceImpl.java │ │ │ │ │ │ │ ├── DatasetDataServiceImpl.java │ │ │ │ │ │ │ ├── DatasetFileServiceImpl.java │ │ │ │ │ │ │ ├── DatasetInfoServiceImpl.java │ │ │ │ │ │ │ ├── UserLangChainInfoDataServiceImpl.java │ │ │ │ │ │ │ └── UserLangChainLogServiceImpl.java │ │ │ │ │ │ ├── mcp/ │ │ │ │ │ │ │ ├── McpDataService.java │ │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ │ └── McpDataServiceImpl.java │ │ │ │ │ │ ├── space/ │ │ │ │ │ │ │ ├── ApplyRecordService.java │ │ │ │ │ │ │ ├── EnterprisePermissionService.java │ │ │ │ │ │ │ ├── EnterpriseService.java │ │ │ │ │ │ │ ├── EnterpriseSpaceService.java │ │ │ │ │ │ │ ├── EnterpriseUserService.java │ │ │ │ │ │ │ ├── InviteRecordService.java │ │ │ │ │ │ │ ├── SpacePermissionService.java │ │ │ │ │ │ │ ├── SpaceService.java │ │ │ │ │ │ │ ├── SpaceUserService.java │ │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ │ ├── ApplyRecordServiceImpl.java │ │ │ │ │ │ │ ├── EnterprisePermissionServiceImpl.java │ │ │ │ │ │ │ ├── EnterpriseServiceImpl.java │ │ │ │ │ │ │ ├── EnterpriseSpaceServiceImpl.java │ │ │ │ │ │ │ ├── EnterpriseUserServiceImpl.java │ │ │ │ │ │ │ ├── InviteRecordServiceImpl.java │ │ │ │ │ │ │ ├── SpacePermissionServiceImpl.java │ │ │ │ │ │ │ ├── SpaceServiceImpl.java │ │ │ │ │ │ │ └── SpaceUserServiceImpl.java │ │ │ │ │ │ ├── user/ │ │ │ │ │ │ │ ├── AppMstService.java │ │ │ │ │ │ │ ├── Impl/ │ │ │ │ │ │ │ │ └── AppMstServiceImpl.java │ │ │ │ │ │ │ └── MessageCodeService.java │ │ │ │ │ │ └── workflow/ │ │ │ │ │ │ ├── WorkflowBotChatService.java │ │ │ │ │ │ ├── WorkflowBotParamService.java │ │ │ │ │ │ ├── WorkflowBotService.java │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ ├── WorkflowBotChatServiceImpl.java │ │ │ │ │ │ ├── WorkflowBotParamServiceImpl.java │ │ │ │ │ │ └── WorkflowServiceImpl.java │ │ │ │ │ ├── util/ │ │ │ │ │ │ ├── AudioValidator.java │ │ │ │ │ │ ├── AuthStringUtil.java │ │ │ │ │ │ ├── BotFileParamUtil.java │ │ │ │ │ │ ├── BotUtil.java │ │ │ │ │ │ ├── ChatFileHttpClient.java │ │ │ │ │ │ ├── I18nUtil.java │ │ │ │ │ │ ├── MaasUtil.java │ │ │ │ │ │ ├── RequestContextUtil.java │ │ │ │ │ │ ├── S3ClientUtil.java │ │ │ │ │ │ ├── SpringContextHolder.java │ │ │ │ │ │ ├── SseEmitterUtil.java │ │ │ │ │ │ └── space/ │ │ │ │ │ │ ├── EnterpriseInfoUtil.java │ │ │ │ │ │ ├── OrderInfoUtil.java │ │ │ │ │ │ └── SpaceInfoUtil.java │ │ │ │ │ └── workflow/ │ │ │ │ │ ├── WorkflowClient.java │ │ │ │ │ └── WorkflowListener.java │ │ │ │ └── resources/ │ │ │ │ ├── mapper/ │ │ │ │ │ ├── ApplyRecordMapper.xml │ │ │ │ │ ├── BotDatasetMaasMapper.xml │ │ │ │ │ ├── BotDatasetMapper.xml │ │ │ │ │ ├── BotFavoriteMapper.xml │ │ │ │ │ ├── ChatBotApiMapper.xml │ │ │ │ │ ├── ChatBotBaseMapper.xml │ │ │ │ │ ├── ChatBotListMapper.xml │ │ │ │ │ ├── ChatBotMarketMapper.xml │ │ │ │ │ ├── ChatTreeIndexMapper.xml │ │ │ │ │ ├── CustomVCNMapper.xml │ │ │ │ │ ├── EnterpriseMapper.xml │ │ │ │ │ ├── EnterpriseUserMapper.xml │ │ │ │ │ ├── InviteRecordMapper.xml │ │ │ │ │ ├── McpDataMapper.xml │ │ │ │ │ ├── SpaceMapper.xml │ │ │ │ │ └── SpaceUserMapper.xml │ │ │ │ ├── messages_en.properties │ │ │ │ ├── messages_zh.properties │ │ │ │ ├── speaker_en.properties │ │ │ │ └── speaker_zh.properties │ │ │ └── test/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── iflytek/ │ │ │ └── astron/ │ │ │ └── console/ │ │ │ └── commons/ │ │ │ ├── CommonsModuleTests.java │ │ │ ├── data/ │ │ │ │ └── impl/ │ │ │ │ └── UserInfoDataServiceImplUnitTest.java │ │ │ ├── event/ │ │ │ │ └── UserNicknameEventSimpleTest.java │ │ │ ├── service/ │ │ │ │ ├── bot/ │ │ │ │ │ └── impl/ │ │ │ │ │ └── ChatBotDataServiceImplTest.java │ │ │ │ ├── data/ │ │ │ │ │ └── impl/ │ │ │ │ │ ├── ChatListDataServiceImplTest.java │ │ │ │ │ └── UserLangChainInfoDataServiceImplTest.java │ │ │ │ ├── space/ │ │ │ │ │ └── impl/ │ │ │ │ │ ├── ApplyRecordServiceImplTest.java │ │ │ │ │ ├── EnterprisePermissionServiceImplTest.java │ │ │ │ │ ├── EnterpriseServiceImplTest.java │ │ │ │ │ ├── EnterpriseSpaceServiceImplTest.java │ │ │ │ │ ├── EnterpriseUserServiceImplTest.java │ │ │ │ │ ├── InviteRecordServiceImplTest.java │ │ │ │ │ ├── SpacePermissionServiceImplTest.java │ │ │ │ │ ├── SpaceServiceImplTest.java │ │ │ │ │ └── SpaceUserServiceImplTest.java │ │ │ │ └── workflow/ │ │ │ │ └── impl/ │ │ │ │ ├── WorkflowBotChatServiceImplTest.java │ │ │ │ └── WorkflowBotParamServiceImplTest.java │ │ │ └── util/ │ │ │ ├── BotFileParamUtilTest.java │ │ │ ├── MaasUtilTest.java │ │ │ ├── S3ClientUtilTest.java │ │ │ └── SseEmitterUtilTest.java │ │ ├── config/ │ │ │ ├── checkstyle.xml │ │ │ ├── eclipse-formatter.xml │ │ │ ├── pmd-ruleset.xml │ │ │ └── spotbugs-exclude.xml │ │ ├── hub/ │ │ │ ├── Dockerfile │ │ │ ├── pom.xml │ │ │ └── src/ │ │ │ ├── main/ │ │ │ │ ├── java/ │ │ │ │ │ └── com/ │ │ │ │ │ └── iflytek/ │ │ │ │ │ └── astron/ │ │ │ │ │ └── console/ │ │ │ │ │ └── hub/ │ │ │ │ │ ├── HubApplication.java │ │ │ │ │ ├── annotation/ │ │ │ │ │ │ └── DistributedLock.java │ │ │ │ │ ├── aspect/ │ │ │ │ │ │ └── DistributedLockAspect.java │ │ │ │ │ ├── config/ │ │ │ │ │ │ ├── DeepSeekConfig.java │ │ │ │ │ │ ├── DistributedLockConfig.java │ │ │ │ │ │ ├── GlobalExceptionHandler.java │ │ │ │ │ │ ├── InternationalConfig.java │ │ │ │ │ │ ├── JacksonConfig.java │ │ │ │ │ │ ├── MyBatisPlusConfig.java │ │ │ │ │ │ ├── RedisCacheConfig.java │ │ │ │ │ │ ├── SecurityConfig.java │ │ │ │ │ │ ├── SpringDocConfig.java │ │ │ │ │ │ ├── VoiceTrainConfig.java │ │ │ │ │ │ ├── WebMvcConfig.java │ │ │ │ │ │ ├── WorkflowConfig.java │ │ │ │ │ │ ├── security/ │ │ │ │ │ │ │ ├── RestfulAccessDeniedHandler.java │ │ │ │ │ │ │ └── RestfulAuthenticationEntryPoint.java │ │ │ │ │ │ └── space/ │ │ │ │ │ │ └── EnterpriseSpaceConfig.java │ │ │ │ │ ├── controller/ │ │ │ │ │ │ ├── HealthController.java │ │ │ │ │ │ ├── S3Controller.java │ │ │ │ │ │ ├── SparkChatController.java │ │ │ │ │ │ ├── WorkflowChatController.java │ │ │ │ │ │ ├── bot/ │ │ │ │ │ │ │ ├── BotController.java │ │ │ │ │ │ │ ├── BotCreateController.java │ │ │ │ │ │ │ ├── BotFavoriteController.java │ │ │ │ │ │ │ ├── PersonalityController.java │ │ │ │ │ │ │ ├── SpeakerTrainController.java │ │ │ │ │ │ │ ├── TalkAgentController.java │ │ │ │ │ │ │ └── VoiceApiController.java │ │ │ │ │ │ ├── chat/ │ │ │ │ │ │ │ ├── ChatEnhanceController.java │ │ │ │ │ │ │ ├── ChatHistoryController.java │ │ │ │ │ │ │ ├── ChatListController.java │ │ │ │ │ │ │ ├── ChatMessageController.java │ │ │ │ │ │ │ └── ChatRestartController.java │ │ │ │ │ │ ├── extra/ │ │ │ │ │ │ │ └── RtasrController.java │ │ │ │ │ │ ├── homepage/ │ │ │ │ │ │ │ └── AgentSquareController.java │ │ │ │ │ │ ├── notification/ │ │ │ │ │ │ │ └── NotificationController.java │ │ │ │ │ │ ├── publish/ │ │ │ │ │ │ │ ├── BotPublishController.java │ │ │ │ │ │ │ └── PublishApiController.java │ │ │ │ │ │ ├── share/ │ │ │ │ │ │ │ └── ShareController.java │ │ │ │ │ │ ├── space/ │ │ │ │ │ │ │ ├── ApplyRecordController.java │ │ │ │ │ │ │ ├── EnterpriseController.java │ │ │ │ │ │ │ ├── EnterprisePermissionController.java │ │ │ │ │ │ │ ├── EnterpriseUserController.java │ │ │ │ │ │ │ ├── InviteRecordController.java │ │ │ │ │ │ │ ├── SpaceController.java │ │ │ │ │ │ │ ├── SpacePermissionController.java │ │ │ │ │ │ │ └── SpaceUserController.java │ │ │ │ │ │ ├── user/ │ │ │ │ │ │ │ ├── MyBotController.java │ │ │ │ │ │ │ └── UserInfoController.java │ │ │ │ │ │ ├── wechat/ │ │ │ │ │ │ │ └── WechatCallbackController.java │ │ │ │ │ │ └── workflow/ │ │ │ │ │ │ ├── ChatWorkflowController.java │ │ │ │ │ │ └── WorkflowBotController.java │ │ │ │ │ ├── converter/ │ │ │ │ │ │ ├── BotPublishConverter.java │ │ │ │ │ │ ├── McpDataConverter.java │ │ │ │ │ │ └── WorkflowVersionConverter.java │ │ │ │ │ ├── data/ │ │ │ │ │ │ ├── NotificationDataService.java │ │ │ │ │ │ ├── ReqKnowledgeRecordsDataService.java │ │ │ │ │ │ ├── ShareDataService.java │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ ├── ChatDataServiceImpl.java │ │ │ │ │ │ ├── NotificationDataServiceImpl.java │ │ │ │ │ │ ├── ReqKnowledgeRecordsDataServiceImpl.java │ │ │ │ │ │ └── ShareDataServiceImpl.java │ │ │ │ │ ├── dto/ │ │ │ │ │ │ ├── DeepSeekChatRequest.java │ │ │ │ │ │ ├── DeepSeekChatResponse.java │ │ │ │ │ │ ├── PageResponse.java │ │ │ │ │ │ ├── bot/ │ │ │ │ │ │ │ ├── BotGenerationDTO.java │ │ │ │ │ │ │ ├── ChatBotMarketPage.java │ │ │ │ │ │ │ ├── MaasDuplicate.java │ │ │ │ │ │ │ └── PromptStructDTO.java │ │ │ │ │ │ ├── chat/ │ │ │ │ │ │ │ ├── BotDebugRequest.java │ │ │ │ │ │ │ ├── ChatEnhanceChatHistoryListFileVo.java │ │ │ │ │ │ │ ├── ChatEnhanceSaveFileVo.java │ │ │ │ │ │ │ ├── ChatHistoryResponseDto.java │ │ │ │ │ │ │ ├── LongFileDto.java │ │ │ │ │ │ │ └── StopStreamResponse.java │ │ │ │ │ │ ├── homepage/ │ │ │ │ │ │ │ ├── BotInfoDto.java │ │ │ │ │ │ │ ├── BotListPageDto.java │ │ │ │ │ │ │ ├── BotTypeDto.java │ │ │ │ │ │ │ └── GetBotListPageRequestDto.java │ │ │ │ │ │ ├── notification/ │ │ │ │ │ │ │ ├── MarkReadRequest.java │ │ │ │ │ │ │ ├── NotificationDto.java │ │ │ │ │ │ │ ├── NotificationPageResponse.java │ │ │ │ │ │ │ ├── NotificationQueryRequest.java │ │ │ │ │ │ │ └── SendNotificationRequest.java │ │ │ │ │ │ ├── publish/ │ │ │ │ │ │ │ ├── AppListDTO.java │ │ │ │ │ │ │ ├── BotApiInfoDTO.java │ │ │ │ │ │ │ ├── BotApiRealTimeUsageDTO.java │ │ │ │ │ │ │ ├── BotDetailResponseDto.java │ │ │ │ │ │ │ ├── BotPublishInfoDto.java │ │ │ │ │ │ │ ├── BotSummaryStatsVO.java │ │ │ │ │ │ │ ├── BotTimeSeriesResponseDto.java │ │ │ │ │ │ │ ├── BotTimeSeriesStatsVO.java │ │ │ │ │ │ │ ├── BotTraceRequestDto.java │ │ │ │ │ │ │ ├── BotVersionVO.java │ │ │ │ │ │ │ ├── CreateAppVo.java │ │ │ │ │ │ │ ├── CreateBotApiVo.java │ │ │ │ │ │ │ ├── PublishStatusUpdateDto.java │ │ │ │ │ │ │ ├── ReleaseBotReqDto.java │ │ │ │ │ │ │ ├── ReleaseBotRespDto.java │ │ │ │ │ │ │ ├── UnifiedPrepareDto.java │ │ │ │ │ │ │ ├── UnifiedPublishRequestDto.java │ │ │ │ │ │ │ ├── WechatAuthUrlRequestDto.java │ │ │ │ │ │ │ ├── WechatAuthUrlResponseDto.java │ │ │ │ │ │ │ ├── cbm/ │ │ │ │ │ │ │ │ ├── AssistantInfo.java │ │ │ │ │ │ │ │ ├── CbmBody.java │ │ │ │ │ │ │ │ ├── CbmForm.java │ │ │ │ │ │ │ │ ├── CbmResponse.java │ │ │ │ │ │ │ │ └── Options.java │ │ │ │ │ │ │ ├── mcp/ │ │ │ │ │ │ │ │ ├── McpContentResponseDto.java │ │ │ │ │ │ │ │ └── McpPublishRequestDto.java │ │ │ │ │ │ │ └── prepare/ │ │ │ │ │ │ │ ├── ApiPrepareDto.java │ │ │ │ │ │ │ ├── BasePrepareDto.java │ │ │ │ │ │ │ ├── FeishuPrepareDto.java │ │ │ │ │ │ │ ├── MarketPrepareDto.java │ │ │ │ │ │ │ ├── McpPrepareDto.java │ │ │ │ │ │ │ └── WechatPrepareDto.java │ │ │ │ │ │ ├── share/ │ │ │ │ │ │ │ ├── CardAddBody.java │ │ │ │ │ │ │ └── ShareKey.java │ │ │ │ │ │ ├── user/ │ │ │ │ │ │ │ ├── MyBotPageDTO.java │ │ │ │ │ │ │ ├── MyBotParamDTO.java │ │ │ │ │ │ │ ├── MyBotResponseDTO.java │ │ │ │ │ │ │ ├── TenantAuth.java │ │ │ │ │ │ │ ├── UpdateUserBasicInfoRequest.java │ │ │ │ │ │ │ ├── UserInfoExcelDTO.java │ │ │ │ │ │ │ └── UserInfoResultExcelDTO.java │ │ │ │ │ │ ├── wechat/ │ │ │ │ │ │ │ └── WechatAuthCallbackDto.java │ │ │ │ │ │ └── workflow/ │ │ │ │ │ │ ├── WorkflowReleaseRequestDto.java │ │ │ │ │ │ └── WorkflowReleaseResponseDto.java │ │ │ │ │ ├── entity/ │ │ │ │ │ │ ├── AiPromptTemplate.java │ │ │ │ │ │ ├── ApplicationForm.java │ │ │ │ │ │ ├── BotConversationStats.java │ │ │ │ │ │ ├── BotOffiaccountChat.java │ │ │ │ │ │ ├── BotOffiaccountRecord.java │ │ │ │ │ │ ├── ChatBotRemove.java │ │ │ │ │ │ ├── CustomSpeaker.java │ │ │ │ │ │ ├── PronunciationPersonConfig.java │ │ │ │ │ │ ├── ReqKnowledgeRecords.java │ │ │ │ │ │ ├── ShareChat.java │ │ │ │ │ │ ├── ShareQa.java │ │ │ │ │ │ ├── WorkflowTemplateGroup.java │ │ │ │ │ │ ├── XingchenOfficialPrompt.java │ │ │ │ │ │ ├── XingchenPromptManage.java │ │ │ │ │ │ ├── XingchenPromptVersion.java │ │ │ │ │ │ ├── maas/ │ │ │ │ │ │ │ ├── MaasDuplicate.java │ │ │ │ │ │ │ ├── MaasTemplate.java │ │ │ │ │ │ │ └── WorkflowTemplateQueryDto.java │ │ │ │ │ │ ├── notification/ │ │ │ │ │ │ │ ├── Notification.java │ │ │ │ │ │ │ ├── UserBroadcastRead.java │ │ │ │ │ │ │ └── UserNotification.java │ │ │ │ │ │ └── personality/ │ │ │ │ │ │ ├── PersonalityCategory.java │ │ │ │ │ │ ├── PersonalityConfig.java │ │ │ │ │ │ └── PersonalityRole.java │ │ │ │ │ ├── enums/ │ │ │ │ │ │ ├── ChatFileLimitEnum.java │ │ │ │ │ │ ├── ConfigTypeEnum.java │ │ │ │ │ │ ├── LongContextStatusEnum.java │ │ │ │ │ │ ├── NotificationType.java │ │ │ │ │ │ ├── PersonalitySceneTypeEnum.java │ │ │ │ │ │ ├── TalkAgentSceneEnum.java │ │ │ │ │ │ ├── TtsTypeEnum.java │ │ │ │ │ │ ├── UserInfoResultEnum.java │ │ │ │ │ │ └── WordsTypeEnum.java │ │ │ │ │ ├── event/ │ │ │ │ │ │ ├── BotPublishStatusChangedEvent.java │ │ │ │ │ │ └── PublishChannelUpdateEvent.java │ │ │ │ │ ├── exception/ │ │ │ │ │ │ └── DistributedLockException.java │ │ │ │ │ ├── listener/ │ │ │ │ │ │ └── WorkflowBotPublishListener.java │ │ │ │ │ ├── mapper/ │ │ │ │ │ │ ├── AiPromptTemplateMapper.java │ │ │ │ │ │ ├── ApplicationFormMapper.java │ │ │ │ │ │ ├── BotChatFileParamMapper.java │ │ │ │ │ │ ├── BotConversationStatsMapper.java │ │ │ │ │ │ ├── BotOffiaccountChatMapper.java │ │ │ │ │ │ ├── BotOffiaccountRecordMapper.java │ │ │ │ │ │ ├── ChatBotRemoveMapper.java │ │ │ │ │ │ ├── ChatFileReqMapper.java │ │ │ │ │ │ ├── ChatFileUserMapper.java │ │ │ │ │ │ ├── ChatReanwserRecordsMapper.java │ │ │ │ │ │ ├── ChatReasonRecordsMapper.java │ │ │ │ │ │ ├── ChatReqModelMapper.java │ │ │ │ │ │ ├── ChatReqRecordsMapper.java │ │ │ │ │ │ ├── ChatRespAlltoolDataMapper.java │ │ │ │ │ │ ├── ChatRespModelMapper.java │ │ │ │ │ │ ├── ChatRespRecordsMapper.java │ │ │ │ │ │ ├── ChatTokenRecordsMapper.java │ │ │ │ │ │ ├── ChatTraceSourceMapper.java │ │ │ │ │ │ ├── CustomSpeakerMapper.java │ │ │ │ │ │ ├── MaasTemplateMapper.java │ │ │ │ │ │ ├── PronunciationPersonConfigMapper.java │ │ │ │ │ │ ├── ReqKnowledgeRecordsMapper.java │ │ │ │ │ │ ├── ShareChatMapper.java │ │ │ │ │ │ ├── ShareQaMapper.java │ │ │ │ │ │ ├── WorkflowTemplateGroupMapper.java │ │ │ │ │ │ ├── XingchenOfficialPromptMapper.java │ │ │ │ │ │ ├── XingchenPromptManageMapper.java │ │ │ │ │ │ ├── XingchenPromptVersionMapper.java │ │ │ │ │ │ ├── notification/ │ │ │ │ │ │ │ ├── NotificationMapper.java │ │ │ │ │ │ │ ├── UserBroadcastReadMapper.java │ │ │ │ │ │ │ └── UserNotificationMapper.java │ │ │ │ │ │ └── personality/ │ │ │ │ │ │ ├── PersonalityCategoryMapper.java │ │ │ │ │ │ ├── PersonalityConfigMapper.java │ │ │ │ │ │ └── PersonalityRoleMapper.java │ │ │ │ │ ├── properties/ │ │ │ │ │ │ ├── InviteMessageTempProperties.java │ │ │ │ │ │ └── SpaceLimitProperties.java │ │ │ │ │ ├── service/ │ │ │ │ │ │ ├── ManagedWebSearchService.java │ │ │ │ │ │ ├── PromptChatService.java │ │ │ │ │ │ ├── SparkChatService.java │ │ │ │ │ │ ├── WorkflowChatService.java │ │ │ │ │ │ ├── bot/ │ │ │ │ │ │ │ ├── BotAIService.java │ │ │ │ │ │ │ ├── BotTransactionalService.java │ │ │ │ │ │ │ ├── CustomSpeakerService.java │ │ │ │ │ │ │ ├── PersonalityConfigService.java │ │ │ │ │ │ │ ├── SpeakerTrainService.java │ │ │ │ │ │ │ ├── TalkAgentService.java │ │ │ │ │ │ │ ├── VoiceService.java │ │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ │ ├── BotAIServiceImpl.java │ │ │ │ │ │ │ ├── BotTransactionalServiceImpl.java │ │ │ │ │ │ │ ├── CustomSpeakerServiceImpl.java │ │ │ │ │ │ │ ├── PersonalityConfigServiceImpl.java │ │ │ │ │ │ │ ├── SpeakerTrainServiceImpl.java │ │ │ │ │ │ │ ├── TalkAgentServiceImpl.java │ │ │ │ │ │ │ └── VoiceServiceImpl.java │ │ │ │ │ │ ├── chat/ │ │ │ │ │ │ │ ├── BotChatService.java │ │ │ │ │ │ │ ├── ChatBotApiService.java │ │ │ │ │ │ │ ├── ChatEnhanceService.java │ │ │ │ │ │ │ ├── ChatHistoryMultiModalService.java │ │ │ │ │ │ │ ├── ChatListService.java │ │ │ │ │ │ │ ├── ChatReasonRecordsService.java │ │ │ │ │ │ │ ├── ChatReqRespService.java │ │ │ │ │ │ │ ├── ChatRestartService.java │ │ │ │ │ │ │ ├── TraceToSourceService.java │ │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ │ ├── BotChatServiceImpl.java │ │ │ │ │ │ │ ├── ChatBotApiServiceImpl.java │ │ │ │ │ │ │ ├── ChatEnhanceServiceImpl.java │ │ │ │ │ │ │ ├── ChatHistoryMultiModalServiceImpl.java │ │ │ │ │ │ │ ├── ChatHistoryServiceImpl.java │ │ │ │ │ │ │ ├── ChatListServiceImpl.java │ │ │ │ │ │ │ ├── ChatReasonRecordsServiceImpl.java │ │ │ │ │ │ │ ├── ChatRecordModelServiceImpl.java │ │ │ │ │ │ │ ├── ChatReqRespServiceImpl.java │ │ │ │ │ │ │ ├── ChatRestartServiceImpl.java │ │ │ │ │ │ │ ├── ProviderToolOrchestrator.java │ │ │ │ │ │ │ └── TraceToSourceServiceImpl.java │ │ │ │ │ │ ├── homepage/ │ │ │ │ │ │ │ ├── AgentSquareService.java │ │ │ │ │ │ │ └── Impl/ │ │ │ │ │ │ │ └── AgentSquareServiceImpl.java │ │ │ │ │ │ ├── knowledge/ │ │ │ │ │ │ │ ├── KnowledgeService.java │ │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ │ └── KnowledgeServiceImpl.java │ │ │ │ │ │ ├── notification/ │ │ │ │ │ │ │ ├── NotificationService.java │ │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ │ └── NotificationServiceImpl.java │ │ │ │ │ │ ├── publish/ │ │ │ │ │ │ │ ├── BotPublishService.java │ │ │ │ │ │ │ ├── McpService.java │ │ │ │ │ │ │ ├── PublishApiService.java │ │ │ │ │ │ │ ├── PublishChannelService.java │ │ │ │ │ │ │ ├── ReleaseManageClientService.java │ │ │ │ │ │ │ ├── TenantService.java │ │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ │ ├── BotPublishServiceImpl.java │ │ │ │ │ │ │ ├── McpServiceImpl.java │ │ │ │ │ │ │ ├── PublishApiServiceImpl.java │ │ │ │ │ │ │ ├── PublishChannelServiceImpl.java │ │ │ │ │ │ │ ├── ReleaseManageClientServiceImpl.java │ │ │ │ │ │ │ └── TenantServiceImpl.java │ │ │ │ │ │ ├── share/ │ │ │ │ │ │ │ ├── ShareService.java │ │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ │ └── ShareServiceImpl.java │ │ │ │ │ │ ├── space/ │ │ │ │ │ │ │ ├── ApplyRecordBizService.java │ │ │ │ │ │ │ ├── EnterpriseBizService.java │ │ │ │ │ │ │ ├── EnterpriseUserBizService.java │ │ │ │ │ │ │ ├── InviteRecordBizService.java │ │ │ │ │ │ │ ├── SpaceBizService.java │ │ │ │ │ │ │ ├── SpaceUserBizService.java │ │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ │ ├── ApplyRecordBizServiceImpl.java │ │ │ │ │ │ │ ├── EnterpriseBizServiceImpl.java │ │ │ │ │ │ │ ├── EnterpriseUserBizServiceImpl.java │ │ │ │ │ │ │ ├── InviteRecordBizServiceImpl.java │ │ │ │ │ │ │ ├── SpaceBizServiceImpl.java │ │ │ │ │ │ │ └── SpaceUserBizServiceImpl.java │ │ │ │ │ │ ├── user/ │ │ │ │ │ │ │ ├── UserBotService.java │ │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ │ └── UserBotServiceImpl.java │ │ │ │ │ │ ├── wechat/ │ │ │ │ │ │ │ ├── BotOffiaccountService.java │ │ │ │ │ │ │ ├── WechatThirdpartyService.java │ │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ │ ├── BotOffiaccountServiceImpl.java │ │ │ │ │ │ │ └── WechatThirdpartyServiceImpl.java │ │ │ │ │ │ └── workflow/ │ │ │ │ │ │ ├── BotChainService.java │ │ │ │ │ │ ├── BotMaasService.java │ │ │ │ │ │ ├── WorkflowReleaseService.java │ │ │ │ │ │ ├── WorkflowTemplateGroupService.java │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ ├── BotChainServiceImpl.java │ │ │ │ │ │ ├── BotMaasServiceImpl.java │ │ │ │ │ │ ├── WorkflowReleaseServiceImpl.java │ │ │ │ │ │ └── WorkflowTemplateGroupServiceImpl.java │ │ │ │ │ ├── strategy/ │ │ │ │ │ │ └── publish/ │ │ │ │ │ │ ├── PublishStrategy.java │ │ │ │ │ │ ├── PublishStrategyFactory.java │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ ├── ApiPublishStrategy.java │ │ │ │ │ │ ├── FeishuPublishStrategy.java │ │ │ │ │ │ ├── MarketPublishStrategy.java │ │ │ │ │ │ ├── McpPublishStrategy.java │ │ │ │ │ │ └── WechatPublishStrategy.java │ │ │ │ │ └── util/ │ │ │ │ │ ├── AESUtil.java │ │ │ │ │ ├── BotAIServiceClient.java │ │ │ │ │ ├── BotPermissionUtil.java │ │ │ │ │ ├── CommonUtil.java │ │ │ │ │ ├── DistributedLockExample.java │ │ │ │ │ ├── HttpServiceClient.java │ │ │ │ │ ├── ImageUtil.java │ │ │ │ │ ├── Md5Util.java │ │ │ │ │ ├── NameUtil.java │ │ │ │ │ └── wechat/ │ │ │ │ │ ├── AesException.java │ │ │ │ │ ├── WXBizMsgCrypt.java │ │ │ │ │ ├── WXBizMsgParse.java │ │ │ │ │ ├── WechatMessageCrypto.java │ │ │ │ │ ├── WechatMessageParser.java │ │ │ │ │ └── XMLParse.java │ │ │ │ └── resources/ │ │ │ │ ├── application.yml │ │ │ │ ├── db/ │ │ │ │ │ └── migration/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── V1.10__insert_permission_data.sql │ │ │ │ │ ├── V1.11__insert_template_data.sql │ │ │ │ │ ├── V1.12__insert_other_data.sql │ │ │ │ │ ├── V1.13__insert_config_data.sql │ │ │ │ │ ├── V1.14__insert_config_data2.sql │ │ │ │ │ ├── V1.15__fix_missing_alter.sql │ │ │ │ │ ├── V1.16__insert_workflow_data.sql │ │ │ │ │ ├── V1.17__insert_workflow_node_config.sql │ │ │ │ │ ├── V1.18__update_ai_code_prompts.sql │ │ │ │ │ ├── V1.19__update_sensitive_sql_info.sql │ │ │ │ │ ├── V1.1__init_core.sql │ │ │ │ │ ├── V1.20__add_model_provider.sql │ │ │ │ │ ├── V1.21__add_official_deepseek_models.sql │ │ │ │ │ ├── V1.22__add_is_think_to_model_table.sql │ │ │ │ │ ├── V1.23__add_variable_aggregation_node_template.sql │ │ │ │ │ ├── V1.2__init_enterprise.sql │ │ │ │ │ ├── V1.3__init_space.sql │ │ │ │ │ ├── V1.4__init_bot.sql │ │ │ │ │ ├── V1.5__init_workflow.sql │ │ │ │ │ ├── V1.6__init_model.sql │ │ │ │ │ ├── V1.7__init_knowledge.sql │ │ │ │ │ └── V1.9__init_toolbox.sql │ │ │ │ ├── logback-spring.xml │ │ │ │ ├── mapper/ │ │ │ │ │ ├── BotConversationStatsMapper.xml │ │ │ │ │ ├── ChatReasonRecordsMapper.xml │ │ │ │ │ ├── CustomSpeakerMapper.xml │ │ │ │ │ ├── notification/ │ │ │ │ │ │ ├── NotificationMapper.xml │ │ │ │ │ │ ├── UserBroadcastReadMapper.xml │ │ │ │ │ │ └── UserNotificationMapper.xml │ │ │ │ │ └── personality/ │ │ │ │ │ ├── PersonalityConfigMapper.xml │ │ │ │ │ └── PersonalityRoleMapper.xml │ │ │ │ └── sql/ │ │ │ │ └── req_knowledge_records.sql │ │ │ └── test/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── iflytek/ │ │ │ └── astron/ │ │ │ └── console/ │ │ │ └── hub/ │ │ │ ├── data/ │ │ │ │ ├── UserInfoDataServiceFinalTest.java │ │ │ │ └── impl/ │ │ │ │ ├── ChatDataServiceImplTest.java │ │ │ │ ├── ReqKnowledgeRecordsDataServiceImplTest.java │ │ │ │ └── ShareDataServiceImplTest.java │ │ │ ├── dto/ │ │ │ │ └── notification/ │ │ │ │ ├── NotificationDtoTest.java │ │ │ │ ├── NotificationGroupingTest.java │ │ │ │ └── NotificationPageResponseTest.java │ │ │ ├── enums/ │ │ │ │ └── NotificationTypeTest.java │ │ │ ├── mapper/ │ │ │ │ └── notification/ │ │ │ │ └── NotificationEnumMappingTest.java │ │ │ └── service/ │ │ │ ├── PromptChatServiceTest.java │ │ │ ├── SparkChatServiceTest.java │ │ │ ├── bot/ │ │ │ │ └── impl/ │ │ │ │ └── BotTransactionalServiceImplTest.java │ │ │ ├── chat/ │ │ │ │ └── impl/ │ │ │ │ ├── BotChatServiceImplUnitTest.java │ │ │ │ ├── ChatEnhanceServiceImplTest.java │ │ │ │ ├── ChatHistoryMultiModalServiceImplTest.java │ │ │ │ ├── ChatHistoryServiceImplTest.java │ │ │ │ ├── ChatListServiceImplTest.java │ │ │ │ ├── ChatReasonRecordsServiceImplTest.java │ │ │ │ ├── ChatRecordModelServiceImplTest.java │ │ │ │ ├── ChatReqRespServiceImplTest.java │ │ │ │ ├── ChatRestartServiceImplTest.java │ │ │ │ └── TraceToSourceServiceImplTest.java │ │ │ ├── knowledge/ │ │ │ │ └── impl/ │ │ │ │ └── KnowledgeServiceImplTest.java │ │ │ ├── notification/ │ │ │ │ └── impl/ │ │ │ │ └── NotificationServiceImplTest.java │ │ │ ├── share/ │ │ │ │ └── impl/ │ │ │ │ └── ShareServiceImplTest.java │ │ │ ├── space/ │ │ │ │ └── impl/ │ │ │ │ ├── ApplyRecordBizServiceImplTest.java │ │ │ │ ├── EnterpriseBizServiceImplTest.java │ │ │ │ ├── EnterpriseUserBizServiceImplTest.java │ │ │ │ ├── InviteRecordBizServiceImplTest.java │ │ │ │ └── SpaceUserBizServiceImplTest.java │ │ │ └── workflow/ │ │ │ └── impl/ │ │ │ └── BotChainServiceImplTest.java │ │ ├── pom.xml │ │ └── toolkit/ │ │ ├── pom.xml │ │ └── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── com/ │ │ │ │ └── iflytek/ │ │ │ │ └── astron/ │ │ │ │ └── console/ │ │ │ │ └── toolkit/ │ │ │ │ ├── common/ │ │ │ │ │ ├── CustomExceptionCode.java │ │ │ │ │ ├── Result.java │ │ │ │ │ ├── ResultStatus.java │ │ │ │ │ ├── ResultStatusEN.java │ │ │ │ │ ├── anno/ │ │ │ │ │ │ ├── ExcelHeader.java │ │ │ │ │ │ └── ResponseResultBody.java │ │ │ │ │ └── constant/ │ │ │ │ │ ├── ChatConstant.java │ │ │ │ │ ├── CommonConst.java │ │ │ │ │ ├── EffectEvalConst.java │ │ │ │ │ ├── EsConst.java │ │ │ │ │ ├── LLMConstant.java │ │ │ │ │ ├── OpenApiConst.java │ │ │ │ │ ├── ProjectContent.java │ │ │ │ │ ├── ToolConst.java │ │ │ │ │ ├── WorkflowConst.java │ │ │ │ │ ├── core/ │ │ │ │ │ │ └── ToolErrorStatus.java │ │ │ │ │ └── http/ │ │ │ │ │ └── CustomHeader.java │ │ │ │ ├── config/ │ │ │ │ │ ├── aop/ │ │ │ │ │ │ └── ResponseResultBodyAdvice.java │ │ │ │ │ ├── exception/ │ │ │ │ │ │ ├── CustomException.java │ │ │ │ │ │ ├── OpenApiException.java │ │ │ │ │ │ └── handler/ │ │ │ │ │ │ └── GlobalExceptionHandler.java │ │ │ │ │ ├── jooq/ │ │ │ │ │ │ ├── JooqBatchExecutor.java │ │ │ │ │ │ ├── JooqConfig.java │ │ │ │ │ │ ├── JooqRetry.java │ │ │ │ │ │ └── SqlSender.java │ │ │ │ │ ├── mybatis/ │ │ │ │ │ │ ├── MyBatisConfig.java │ │ │ │ │ │ └── MybatisPlusConfig.java │ │ │ │ │ ├── properties/ │ │ │ │ │ │ ├── ApiUrl.java │ │ │ │ │ │ ├── AsyncExecutorProperties.java │ │ │ │ │ │ ├── BizConfig.java │ │ │ │ │ │ ├── CommonConfig.java │ │ │ │ │ │ ├── RepoAuthorizedConfig.java │ │ │ │ │ │ └── SchedulingPoolProperties.java │ │ │ │ │ ├── rest/ │ │ │ │ │ │ └── RestConfig.java │ │ │ │ │ ├── spring/ │ │ │ │ │ │ └── ExecuteShutdown.java │ │ │ │ │ ├── task/ │ │ │ │ │ │ └── SchedulingConfig.java │ │ │ │ │ ├── thread/ │ │ │ │ │ │ ├── AppSchedulingConfig.java │ │ │ │ │ │ └── AsyncExecutorConfig.java │ │ │ │ │ └── web/ │ │ │ │ │ └── CorsConfig.java │ │ │ │ ├── controller/ │ │ │ │ │ ├── bot/ │ │ │ │ │ │ └── PromptController.java │ │ │ │ │ ├── common/ │ │ │ │ │ │ ├── ConfigInfoController.java │ │ │ │ │ │ ├── ImageController.java │ │ │ │ │ │ └── LLMController.java │ │ │ │ │ ├── database/ │ │ │ │ │ │ └── DataBaseController.java │ │ │ │ │ ├── knowledge/ │ │ │ │ │ │ ├── FileController.java │ │ │ │ │ │ ├── KnowledgeController.java │ │ │ │ │ │ └── RepoController.java │ │ │ │ │ ├── model/ │ │ │ │ │ │ └── ModelController.java │ │ │ │ │ ├── node/ │ │ │ │ │ │ └── TextNodeConfigController.java │ │ │ │ │ ├── open/ │ │ │ │ │ │ └── OpenApiController.java │ │ │ │ │ ├── tool/ │ │ │ │ │ │ ├── RpaController.java │ │ │ │ │ │ └── ToolBoxController.java │ │ │ │ │ └── workflow/ │ │ │ │ │ ├── VersionController.java │ │ │ │ │ └── WorkflowController.java │ │ │ │ ├── entity/ │ │ │ │ │ ├── UserInfo.java │ │ │ │ │ ├── biz/ │ │ │ │ │ │ ├── AiCode.java │ │ │ │ │ │ ├── AiGenerate.java │ │ │ │ │ │ ├── BizChatRequest.java │ │ │ │ │ │ ├── ChatSampleDto.java │ │ │ │ │ │ ├── FeedbackRequest.java │ │ │ │ │ │ ├── QaData.java │ │ │ │ │ │ ├── apply/ │ │ │ │ │ │ │ └── AuthApplyInfo.java │ │ │ │ │ │ ├── external/ │ │ │ │ │ │ │ ├── app/ │ │ │ │ │ │ │ │ ├── AkSk.java │ │ │ │ │ │ │ │ ├── App3Ele.java │ │ │ │ │ │ │ │ ├── PlatformApp.java │ │ │ │ │ │ │ │ └── PlatformAppDetail.java │ │ │ │ │ │ │ └── shelf/ │ │ │ │ │ │ │ ├── LLMExpeDto.java │ │ │ │ │ │ │ └── LLMServerInfo.java │ │ │ │ │ │ ├── modelconfig/ │ │ │ │ │ │ │ ├── CompletionParams.java │ │ │ │ │ │ │ ├── Config.java │ │ │ │ │ │ │ ├── ConversationStarter.java │ │ │ │ │ │ │ ├── Enabled.java │ │ │ │ │ │ │ ├── Flow.java │ │ │ │ │ │ │ ├── LocalModelDto.java │ │ │ │ │ │ │ ├── Model.java │ │ │ │ │ │ │ ├── ModelConfigProtocolDto.java │ │ │ │ │ │ │ ├── ModelDto.java │ │ │ │ │ │ │ ├── ModelValidationRequest.java │ │ │ │ │ │ │ ├── Models.java │ │ │ │ │ │ │ ├── PresetQuestion.java │ │ │ │ │ │ │ ├── RepoConfigs.java │ │ │ │ │ │ │ ├── TextToSpeech.java │ │ │ │ │ │ │ └── Tool.java │ │ │ │ │ │ ├── openplatform/ │ │ │ │ │ │ │ └── XfYunRepo.java │ │ │ │ │ │ └── workflow/ │ │ │ │ │ │ ├── AgentStrategy.java │ │ │ │ │ │ ├── BizChatInput.java │ │ │ │ │ │ ├── BizWorkflowData.java │ │ │ │ │ │ ├── BizWorkflowEdge.java │ │ │ │ │ │ ├── BizWorkflowNode.java │ │ │ │ │ │ ├── ChatBizReq.java │ │ │ │ │ │ ├── ChatInputHistory.java │ │ │ │ │ │ ├── ChatResumeReq.java │ │ │ │ │ │ ├── FlowReleaseReq.java │ │ │ │ │ │ ├── WorkflowDebugDto.java │ │ │ │ │ │ ├── channel/ │ │ │ │ │ │ │ └── AiuiAgentInfo.java │ │ │ │ │ │ └── node/ │ │ │ │ │ │ ├── BizInputOutput.java │ │ │ │ │ │ ├── BizNodeData.java │ │ │ │ │ │ ├── BizProperty.java │ │ │ │ │ │ ├── BizSchema.java │ │ │ │ │ │ ├── BizValue.java │ │ │ │ │ │ └── IntentChain.java │ │ │ │ │ ├── botConfigProtocol/ │ │ │ │ │ │ ├── BotConfig.java │ │ │ │ │ │ ├── BotConfigOld.java │ │ │ │ │ │ ├── KnowledgeConfig.java │ │ │ │ │ │ ├── Match.java │ │ │ │ │ │ ├── ModelConfig.java │ │ │ │ │ │ ├── ModelParameter.java │ │ │ │ │ │ ├── ModelProperty.java │ │ │ │ │ │ ├── Rag.java │ │ │ │ │ │ └── RegularConfig.java │ │ │ │ │ ├── common/ │ │ │ │ │ │ ├── FlagResponseEntity.java │ │ │ │ │ │ ├── PageData.java │ │ │ │ │ │ ├── PagedList.java │ │ │ │ │ │ ├── Pagination.java │ │ │ │ │ │ └── ValueLabelTree.java │ │ │ │ │ ├── core/ │ │ │ │ │ │ ├── knowledge/ │ │ │ │ │ │ │ ├── CbgKnowledgeData.java │ │ │ │ │ │ │ ├── ChunkInfo.java │ │ │ │ │ │ │ ├── KnowledgeRequest.java │ │ │ │ │ │ │ ├── KnowledgeResponse.java │ │ │ │ │ │ │ ├── QueryMatchObj.java │ │ │ │ │ │ │ ├── QueryRequest.java │ │ │ │ │ │ │ ├── QueryRespData.java │ │ │ │ │ │ │ └── SplitRequest.java │ │ │ │ │ │ ├── openapi/ │ │ │ │ │ │ │ ├── Components.java │ │ │ │ │ │ │ ├── Info.java │ │ │ │ │ │ │ ├── MediaType.java │ │ │ │ │ │ │ ├── OpenApiSchema.java │ │ │ │ │ │ │ ├── Operation.java │ │ │ │ │ │ │ ├── Parameter.java │ │ │ │ │ │ │ ├── Property.java │ │ │ │ │ │ │ ├── RequestBody.java │ │ │ │ │ │ │ ├── Response.java │ │ │ │ │ │ │ ├── Schema.java │ │ │ │ │ │ │ ├── SecurityScheme.java │ │ │ │ │ │ │ └── Server.java │ │ │ │ │ │ └── workflow/ │ │ │ │ │ │ ├── Edge.java │ │ │ │ │ │ ├── FlowProtocol.java │ │ │ │ │ │ ├── FlowProtocolData.java │ │ │ │ │ │ ├── Node.java │ │ │ │ │ │ ├── NodeDebugResponse.java │ │ │ │ │ │ ├── node/ │ │ │ │ │ │ │ ├── FunctionTextItem.java │ │ │ │ │ │ │ ├── InputOutput.java │ │ │ │ │ │ │ ├── NodeData.java │ │ │ │ │ │ │ ├── Property.java │ │ │ │ │ │ │ ├── Schema.java │ │ │ │ │ │ │ └── Value.java │ │ │ │ │ │ ├── sse/ │ │ │ │ │ │ │ ├── ChatResponse.java │ │ │ │ │ │ │ ├── ChatSysReq.java │ │ │ │ │ │ │ ├── Choice.java │ │ │ │ │ │ │ ├── Delta.java │ │ │ │ │ │ │ ├── EventData.java │ │ │ │ │ │ │ ├── Node.java │ │ │ │ │ │ │ ├── PromptChatResponse.java │ │ │ │ │ │ │ ├── PromptChatX1Response.java │ │ │ │ │ │ │ ├── Usage.java │ │ │ │ │ │ │ ├── V3Request.java │ │ │ │ │ │ │ ├── V3Response.java │ │ │ │ │ │ │ ├── Value.java │ │ │ │ │ │ │ └── WorkflowStep.java │ │ │ │ │ │ └── ws/ │ │ │ │ │ │ ├── ChatInput.java │ │ │ │ │ │ ├── SparkFlowResponse.java │ │ │ │ │ │ ├── SparkFlowResponseHeader.java │ │ │ │ │ │ ├── SparkFlowResponsePayloadContent.java │ │ │ │ │ │ └── Step.java │ │ │ │ │ ├── dto/ │ │ │ │ │ │ ├── BotSquareDto.java │ │ │ │ │ │ ├── CloneFlowReq.java │ │ │ │ │ │ ├── ConsultDto.java │ │ │ │ │ │ ├── FeedbackDto.java │ │ │ │ │ │ ├── FileDirectoryTreeDto.java │ │ │ │ │ │ ├── FileInfoV2Dto.java │ │ │ │ │ │ ├── KnowledgeDto.java │ │ │ │ │ │ ├── McpPushDto.java │ │ │ │ │ │ ├── McpToolReq.java │ │ │ │ │ │ ├── PreviewKnowledgeDto.java │ │ │ │ │ │ ├── RelatedDocDto.java │ │ │ │ │ │ ├── RepoDto.java │ │ │ │ │ │ ├── ResourceParameter.java │ │ │ │ │ │ ├── SparkBotVO.java │ │ │ │ │ │ ├── TagDto.java │ │ │ │ │ │ ├── ToolBoxDto.java │ │ │ │ │ │ ├── ToolBoxFeedbackReq.java │ │ │ │ │ │ ├── ToolBoxVo.java │ │ │ │ │ │ ├── ToolFavoriteToolDto.java │ │ │ │ │ │ ├── ToolSquareDto.java │ │ │ │ │ │ ├── ToolUseDto.java │ │ │ │ │ │ ├── UploadDocTaskDto.java │ │ │ │ │ │ ├── WorkflowComparisonReq.java │ │ │ │ │ │ ├── WorkflowDsl.java │ │ │ │ │ │ ├── WorkflowFeedbackReq.java │ │ │ │ │ │ ├── WorkflowModelErrorReq.java │ │ │ │ │ │ ├── WorkflowModelReq.java │ │ │ │ │ │ ├── WorkflowReq.java │ │ │ │ │ │ ├── database/ │ │ │ │ │ │ │ ├── DatabaseDto.java │ │ │ │ │ │ │ ├── DatabaseExportDto.java │ │ │ │ │ │ │ ├── DbTableCountDto.java │ │ │ │ │ │ │ ├── DbTableDataDto.java │ │ │ │ │ │ │ ├── DbTableDto.java │ │ │ │ │ │ │ ├── DbTableFieldDto.java │ │ │ │ │ │ │ ├── DbTableOperateDto.java │ │ │ │ │ │ │ ├── DbTableSelectDataDto.java │ │ │ │ │ │ │ └── FlowDbRelCountDto.java │ │ │ │ │ │ ├── eval/ │ │ │ │ │ │ │ ├── NodeDataDto.java │ │ │ │ │ │ │ ├── NodeSimpleDto.java │ │ │ │ │ │ │ └── WorkflowComparisonSaveReq.java │ │ │ │ │ │ ├── external/ │ │ │ │ │ │ │ └── AppInfoResponse.java │ │ │ │ │ │ ├── openapi/ │ │ │ │ │ │ │ └── WorkflowIoTransRequest.java │ │ │ │ │ │ ├── rpa/ │ │ │ │ │ │ │ └── StartReq.java │ │ │ │ │ │ └── talkagent/ │ │ │ │ │ │ └── TalkAgentConfigDto.java │ │ │ │ │ ├── enumVo/ │ │ │ │ │ │ ├── DBOperateEnum.java │ │ │ │ │ │ ├── DBTableEnvEnum.java │ │ │ │ │ │ ├── DebugStatus.java │ │ │ │ │ │ ├── DomainNameEnum.java │ │ │ │ │ │ ├── ModelStatusEnum.java │ │ │ │ │ │ ├── ScoreEnum.java │ │ │ │ │ │ ├── TagsEnum.java │ │ │ │ │ │ ├── ToolboxStatusEnum.java │ │ │ │ │ │ └── VarType.java │ │ │ │ │ ├── es/ │ │ │ │ │ │ ├── ChatHistory.java │ │ │ │ │ │ ├── DialogueHistory.java │ │ │ │ │ │ └── agentBuilder/ │ │ │ │ │ │ ├── FlowDataLog.java │ │ │ │ │ │ ├── FlowTraceLog.java │ │ │ │ │ │ ├── SparkAgentBuilder.java │ │ │ │ │ │ ├── Status.java │ │ │ │ │ │ ├── Trace.java │ │ │ │ │ │ ├── TraceData.java │ │ │ │ │ │ └── TraceDataConfig.java │ │ │ │ │ ├── finetune/ │ │ │ │ │ │ ├── AlpacaTrainLine.java │ │ │ │ │ │ ├── Conversation.java │ │ │ │ │ │ └── ShareGptTrainLine.java │ │ │ │ │ ├── knowledge/ │ │ │ │ │ │ ├── ChunkInfo.java │ │ │ │ │ │ ├── KnowledgeRequest.java │ │ │ │ │ │ ├── KnowledgeResponse.java │ │ │ │ │ │ ├── QueryMatchObj.java │ │ │ │ │ │ ├── QueryRequest.java │ │ │ │ │ │ ├── QueryRespData.java │ │ │ │ │ │ └── SplitRequest.java │ │ │ │ │ ├── metrological/ │ │ │ │ │ │ ├── MetrologicalAppLicenseDto.java │ │ │ │ │ │ ├── MetrologicalAuthorizationResponse.java │ │ │ │ │ │ └── MetrologicalV2AuthDto.java │ │ │ │ │ ├── mongo/ │ │ │ │ │ │ ├── Knowledge.java │ │ │ │ │ │ └── PreviewKnowledge.java │ │ │ │ │ ├── pojo/ │ │ │ │ │ │ ├── ChunkResult.java │ │ │ │ │ │ ├── DealFileResult.java │ │ │ │ │ │ ├── DeleteKnowledgeFileExecuteResult.java │ │ │ │ │ │ ├── DeleteKnowledgeFileFailedResult.java │ │ │ │ │ │ ├── DeleteKnowledgeFileResult.java │ │ │ │ │ │ ├── FileSummary.java │ │ │ │ │ │ ├── KnowledgeFileResult.java │ │ │ │ │ │ ├── KnowledgeResult.java │ │ │ │ │ │ ├── KnowledgeTaskResult.java │ │ │ │ │ │ └── SliceConfig.java │ │ │ │ │ ├── spark/ │ │ │ │ │ │ ├── Header.java │ │ │ │ │ │ ├── Parameter.java │ │ │ │ │ │ ├── Payload.java │ │ │ │ │ │ ├── SparkApiProtocol.java │ │ │ │ │ │ ├── Text.java │ │ │ │ │ │ ├── chat/ │ │ │ │ │ │ │ ├── ChatRecord.java │ │ │ │ │ │ │ ├── ChatRequest.java │ │ │ │ │ │ │ ├── ChatResponse.java │ │ │ │ │ │ │ ├── ExtraInfo.java │ │ │ │ │ │ │ ├── Header.java │ │ │ │ │ │ │ ├── KnowledgeKwargs.java │ │ │ │ │ │ │ ├── LlmModelConfig.java │ │ │ │ │ │ │ ├── Message.java │ │ │ │ │ │ │ ├── ModelCallParameter.java │ │ │ │ │ │ │ ├── Payload.java │ │ │ │ │ │ │ └── ToolUpstreamKwargs.java │ │ │ │ │ │ ├── request/ │ │ │ │ │ │ │ ├── Chat.java │ │ │ │ │ │ │ ├── FcFunction.java │ │ │ │ │ │ │ └── Message.java │ │ │ │ │ │ └── response/ │ │ │ │ │ │ ├── Choices.java │ │ │ │ │ │ ├── Usage.java │ │ │ │ │ │ └── UsageText.java │ │ │ │ │ ├── table/ │ │ │ │ │ │ ├── BaseModelMap.java │ │ │ │ │ │ ├── CallLog.java │ │ │ │ │ │ ├── ConfigInfo.java │ │ │ │ │ │ ├── FineTuneTask.java │ │ │ │ │ │ ├── VcnInfo.java │ │ │ │ │ │ ├── auth/ │ │ │ │ │ │ │ └── AuthApplyRecord.java │ │ │ │ │ │ ├── bot/ │ │ │ │ │ │ │ ├── BotModelBind.java │ │ │ │ │ │ │ ├── BotModelConfig.java │ │ │ │ │ │ │ ├── BotRepoSubscript.java │ │ │ │ │ │ │ ├── CreateBotContext.java │ │ │ │ │ │ │ ├── SparkBot.java │ │ │ │ │ │ │ └── UserFavoriteBot.java │ │ │ │ │ │ ├── database/ │ │ │ │ │ │ │ ├── DbInfo.java │ │ │ │ │ │ │ ├── DbTable.java │ │ │ │ │ │ │ └── DbTableField.java │ │ │ │ │ │ ├── eval/ │ │ │ │ │ │ │ ├── EffectEvalSetVerExcelDataValue.java │ │ │ │ │ │ │ ├── EffectEvalSetVerExcelHeader.java │ │ │ │ │ │ │ ├── EffectEvalTaskOnlineLog.java │ │ │ │ │ │ │ ├── EvalDimension.java │ │ │ │ │ │ │ ├── EvalDimensionTemplate.java │ │ │ │ │ │ │ ├── EvalScene.java │ │ │ │ │ │ │ ├── EvalSet.java │ │ │ │ │ │ │ ├── EvalSetVer.java │ │ │ │ │ │ │ ├── EvalSetVerData.java │ │ │ │ │ │ │ ├── EvalTask.java │ │ │ │ │ │ │ ├── EvalTaskData.java │ │ │ │ │ │ │ ├── EvalTaskOnlineData.java │ │ │ │ │ │ │ ├── EvalTaskReport.java │ │ │ │ │ │ │ ├── EvalTaskUnfinished.java │ │ │ │ │ │ │ ├── ModelListConfig.java │ │ │ │ │ │ │ ├── ModelOptimizeTask.java │ │ │ │ │ │ │ ├── NodeMarkData.java │ │ │ │ │ │ │ ├── NodeScoreData.java │ │ │ │ │ │ │ ├── TrainSet.java │ │ │ │ │ │ │ ├── TrainSetVer.java │ │ │ │ │ │ │ ├── TrainSetVerData.java │ │ │ │ │ │ │ └── UserThreadPoolConfig.java │ │ │ │ │ │ ├── group/ │ │ │ │ │ │ │ ├── GroupTag.java │ │ │ │ │ │ │ ├── GroupUser.java │ │ │ │ │ │ │ └── GroupVisibility.java │ │ │ │ │ │ ├── knowledge/ │ │ │ │ │ │ │ ├── MysqlKnowledge.java │ │ │ │ │ │ │ └── MysqlPreviewKnowledge.java │ │ │ │ │ │ ├── model/ │ │ │ │ │ │ │ ├── Model.java │ │ │ │ │ │ │ ├── ModelCategory.java │ │ │ │ │ │ │ ├── ModelCommon.java │ │ │ │ │ │ │ └── ModelCustomCategory.java │ │ │ │ │ │ ├── node/ │ │ │ │ │ │ │ └── TextNodeConfig.java │ │ │ │ │ │ ├── relation/ │ │ │ │ │ │ │ ├── BotFlowRel.java │ │ │ │ │ │ │ ├── BotRepoRel.java │ │ │ │ │ │ │ ├── BotToolRel.java │ │ │ │ │ │ │ ├── FlowDbRel.java │ │ │ │ │ │ │ ├── FlowRepoRel.java │ │ │ │ │ │ │ └── FlowToolRel.java │ │ │ │ │ │ ├── repo/ │ │ │ │ │ │ │ ├── ExtractKnowledgeTask.java │ │ │ │ │ │ │ ├── FileDirectoryTree.java │ │ │ │ │ │ │ ├── FileInfo.java │ │ │ │ │ │ │ ├── FileInfoV2.java │ │ │ │ │ │ │ ├── HitTestHistory.java │ │ │ │ │ │ │ ├── Repo.java │ │ │ │ │ │ │ ├── TagInfoV2.java │ │ │ │ │ │ │ └── UploadDocTask.java │ │ │ │ │ │ ├── tool/ │ │ │ │ │ │ │ ├── RpaInfo.java │ │ │ │ │ │ │ ├── RpaUserAssistant.java │ │ │ │ │ │ │ ├── RpaUserAssistantField.java │ │ │ │ │ │ │ ├── ToolBox.java │ │ │ │ │ │ │ ├── ToolBoxFeedback.java │ │ │ │ │ │ │ ├── ToolBoxOperateHistory.java │ │ │ │ │ │ │ └── UserFavoriteTool.java │ │ │ │ │ │ ├── trace/ │ │ │ │ │ │ │ ├── ChatInfo.java │ │ │ │ │ │ │ ├── FeedbackInfo.java │ │ │ │ │ │ │ └── NodeInfo.java │ │ │ │ │ │ ├── users/ │ │ │ │ │ │ │ └── SystemUser.java │ │ │ │ │ │ └── workflow/ │ │ │ │ │ │ ├── FlowProtocolTemp.java │ │ │ │ │ │ ├── FlowReleaseAiuiInfo.java │ │ │ │ │ │ ├── FlowReleaseChannel.java │ │ │ │ │ │ ├── McpToolConfig.java │ │ │ │ │ │ ├── PromptTemplate.java │ │ │ │ │ │ ├── WorkflowComparison.java │ │ │ │ │ │ ├── WorkflowConfig.java │ │ │ │ │ │ ├── WorkflowDialog.java │ │ │ │ │ │ ├── WorkflowFeedback.java │ │ │ │ │ │ ├── WorkflowNodeHistory.java │ │ │ │ │ │ ├── WorkflowVersion.java │ │ │ │ │ │ └── node/ │ │ │ │ │ │ ├── BizNodeData.java │ │ │ │ │ │ ├── BizProperty.java │ │ │ │ │ │ ├── BizSchema.java │ │ │ │ │ │ ├── BizValue.java │ │ │ │ │ │ └── IntentChain.java │ │ │ │ │ ├── tool/ │ │ │ │ │ │ ├── CreateRpaAssistantReq.java │ │ │ │ │ │ ├── McpServerTool.java │ │ │ │ │ │ ├── Message.java │ │ │ │ │ │ ├── PlatformFieldSpec.java │ │ │ │ │ │ ├── RpaAssistantResp.java │ │ │ │ │ │ ├── ServiceAuthInfo.java │ │ │ │ │ │ ├── Text.java │ │ │ │ │ │ ├── Tool.java │ │ │ │ │ │ ├── ToolDebugRequest.java │ │ │ │ │ │ ├── ToolHeader.java │ │ │ │ │ │ ├── ToolParameter.java │ │ │ │ │ │ ├── ToolPayload.java │ │ │ │ │ │ ├── ToolProtocolDto.java │ │ │ │ │ │ ├── ToolResp.java │ │ │ │ │ │ ├── UpdateRpaAssistantReq.java │ │ │ │ │ │ ├── WebSchema.java │ │ │ │ │ │ └── WebSchemaItem.java │ │ │ │ │ └── vo/ │ │ │ │ │ ├── ApplicationVo.java │ │ │ │ │ ├── BotUsedToolVo.java │ │ │ │ │ ├── CategoryTreeVO.java │ │ │ │ │ ├── DocStatusVO.java │ │ │ │ │ ├── HtmlFileVO.java │ │ │ │ │ ├── LLMInfoVo.java │ │ │ │ │ ├── McpServerToolDetailVO.java │ │ │ │ │ ├── ModelCategoryReq.java │ │ │ │ │ ├── OpenResult.java │ │ │ │ │ ├── ToolBoxExportVo.java │ │ │ │ │ ├── WorkflowErrorModelVo.java │ │ │ │ │ ├── WorkflowErrorVo.java │ │ │ │ │ ├── WorkflowListVo.java │ │ │ │ │ ├── WorkflowModelVo.java │ │ │ │ │ ├── WorkflowUserFeedbackErrorVo.java │ │ │ │ │ ├── WorkflowVo.java │ │ │ │ │ ├── bot/ │ │ │ │ │ │ ├── SparkBotDto.java │ │ │ │ │ │ └── SparkBotSquaerVo.java │ │ │ │ │ ├── database/ │ │ │ │ │ │ ├── DataBaseSearchVo.java │ │ │ │ │ │ ├── DatabaseVo.java │ │ │ │ │ │ ├── DbTableInfoVo.java │ │ │ │ │ │ └── DbTableVo.java │ │ │ │ │ ├── eval/ │ │ │ │ │ │ └── EvalSetVerDataVo.java │ │ │ │ │ ├── group/ │ │ │ │ │ │ ├── DeleteGroupUserVO.java │ │ │ │ │ │ ├── GroupTagVO.java │ │ │ │ │ │ ├── GroupUserTagVO.java │ │ │ │ │ │ └── GroupUserVO.java │ │ │ │ │ ├── knowledge/ │ │ │ │ │ │ ├── RepoVO.java │ │ │ │ │ │ └── SparkUploadVo.java │ │ │ │ │ ├── model/ │ │ │ │ │ │ ├── ModelDeployVo.java │ │ │ │ │ │ └── ModelFileVo.java │ │ │ │ │ ├── openapi/ │ │ │ │ │ │ └── WorkflowIoTransVo.java │ │ │ │ │ ├── repo/ │ │ │ │ │ │ ├── CreateChunkVO.java │ │ │ │ │ │ ├── CreateFolderVO.java │ │ │ │ │ │ ├── CreateRepoVO.java │ │ │ │ │ │ ├── DealFileVO.java │ │ │ │ │ │ ├── DeleteRepoVO.java │ │ │ │ │ │ ├── FileStatusVO.java │ │ │ │ │ │ ├── KnowledgeQueryVO.java │ │ │ │ │ │ ├── KnowledgeVO.java │ │ │ │ │ │ └── SparkFileVo.java │ │ │ │ │ └── rpa/ │ │ │ │ │ └── DebugSession.java │ │ │ │ ├── handler/ │ │ │ │ │ ├── KnowledgeV2ServiceCallHandler.java │ │ │ │ │ ├── LocalModelHandler.java │ │ │ │ │ ├── McpServerHandler.java │ │ │ │ │ ├── MySqlJsonHandler.java │ │ │ │ │ ├── RpaHandler.java │ │ │ │ │ ├── SidManagerHandler.java │ │ │ │ │ ├── SparkKnowledgeCallHandler.java │ │ │ │ │ ├── ToolServiceCallHandler.java │ │ │ │ │ ├── UserInfoManagerHandler.java │ │ │ │ │ └── language/ │ │ │ │ │ └── LanguageContext.java │ │ │ │ ├── mapper/ │ │ │ │ │ ├── BaseModelMapMapper.java │ │ │ │ │ ├── CallLogMapper.java │ │ │ │ │ ├── ConfigInfoMapper.java │ │ │ │ │ ├── bot/ │ │ │ │ │ │ ├── BotRepoSubscriptMapper.java │ │ │ │ │ │ ├── SparkBotMapper.java │ │ │ │ │ │ └── UserFavoriteBotMapper.java │ │ │ │ │ ├── database/ │ │ │ │ │ │ ├── DbInfoMapper.java │ │ │ │ │ │ ├── DbTableFieldMapper.java │ │ │ │ │ │ └── DbTableMapper.java │ │ │ │ │ ├── eval/ │ │ │ │ │ │ ├── EvalSetMapper.java │ │ │ │ │ │ ├── EvalSetVerDataMapper.java │ │ │ │ │ │ └── EvalSetVerMapper.java │ │ │ │ │ ├── group/ │ │ │ │ │ │ ├── GroupTagMapper.java │ │ │ │ │ │ ├── GroupUserMapper.java │ │ │ │ │ │ └── GroupVisibilityMapper.java │ │ │ │ │ ├── knowledge/ │ │ │ │ │ │ ├── KnowledgeMapper.java │ │ │ │ │ │ └── PreviewKnowledgeMapper.java │ │ │ │ │ ├── model/ │ │ │ │ │ │ ├── ModelCategoryMapper.java │ │ │ │ │ │ ├── ModelCommonMapper.java │ │ │ │ │ │ ├── ModelCustomCategoryMapper.java │ │ │ │ │ │ └── ModelMapper.java │ │ │ │ │ ├── node/ │ │ │ │ │ │ └── TextNodeConfigMapper.java │ │ │ │ │ ├── relation/ │ │ │ │ │ │ ├── BotFlowRelMapper.java │ │ │ │ │ │ ├── BotRepoRelMapper.java │ │ │ │ │ │ ├── BotToolRelMapper.java │ │ │ │ │ │ ├── FlowDbRelMapper.java │ │ │ │ │ │ ├── FlowRepoRelMapper.java │ │ │ │ │ │ └── FlowToolRelMapper.java │ │ │ │ │ ├── repo/ │ │ │ │ │ │ ├── ExtractKnowledgeTaskMapper.java │ │ │ │ │ │ ├── FileDirectoryTreeMapper.java │ │ │ │ │ │ ├── FileInfoMapper.java │ │ │ │ │ │ ├── FileInfoV2Mapper.java │ │ │ │ │ │ ├── HitTestHistoryMapper.java │ │ │ │ │ │ ├── RepoMapper.java │ │ │ │ │ │ ├── TagInfoV2Mapper.java │ │ │ │ │ │ └── UploadDocTaskMapper.java │ │ │ │ │ ├── tool/ │ │ │ │ │ │ ├── RpaInfoMapper.java │ │ │ │ │ │ ├── RpaUserAssistantFieldMapper.java │ │ │ │ │ │ ├── RpaUserAssistantMapper.java │ │ │ │ │ │ ├── ToolBoxFeedbackMapper.java │ │ │ │ │ │ ├── ToolBoxMapper.java │ │ │ │ │ │ ├── ToolBoxOperateHistoryMapper.java │ │ │ │ │ │ └── UserFavoriteToolMapper.java │ │ │ │ │ ├── trace/ │ │ │ │ │ │ ├── ChatInfoMapper.java │ │ │ │ │ │ ├── FeedbackInfoMapper.java │ │ │ │ │ │ └── NodeInfoMapper.java │ │ │ │ │ ├── users/ │ │ │ │ │ │ └── SystemUserMapper.java │ │ │ │ │ └── workflow/ │ │ │ │ │ ├── FlowProtocolTempMapper.java │ │ │ │ │ ├── FlowReleaseAiuiInfoMapper.java │ │ │ │ │ ├── FlowReleaseChannelMapper.java │ │ │ │ │ ├── McpToolConfigMapper.java │ │ │ │ │ ├── PromptTemplateMapper.java │ │ │ │ │ ├── WorkflowComparisonMapper.java │ │ │ │ │ ├── WorkflowConfigMapper.java │ │ │ │ │ ├── WorkflowDialogMapper.java │ │ │ │ │ ├── WorkflowFeedbackMapper.java │ │ │ │ │ ├── WorkflowMapper.java │ │ │ │ │ ├── WorkflowNodeHistoryMapper.java │ │ │ │ │ └── WorkflowVersionMapper.java │ │ │ │ ├── service/ │ │ │ │ │ ├── bot/ │ │ │ │ │ │ ├── BotRepoRelService.java │ │ │ │ │ │ ├── BotRepoSubscriptService.java │ │ │ │ │ │ ├── BotToolRelService.java │ │ │ │ │ │ ├── OpenAiModelProcessService.java │ │ │ │ │ │ └── PromptService.java │ │ │ │ │ ├── common/ │ │ │ │ │ │ ├── ConfigInfoService.java │ │ │ │ │ │ └── ImageService.java │ │ │ │ │ ├── database/ │ │ │ │ │ │ ├── DBExcelReadListener.java │ │ │ │ │ │ ├── DBTableExcelReadListener.java │ │ │ │ │ │ └── DatabaseService.java │ │ │ │ │ ├── external/ │ │ │ │ │ │ └── ExternalApiService.java │ │ │ │ │ ├── extra/ │ │ │ │ │ │ ├── AppService.java │ │ │ │ │ │ ├── CoreSystemService.java │ │ │ │ │ │ └── OpenPlatformService.java │ │ │ │ │ ├── group/ │ │ │ │ │ │ └── GroupVisibilityService.java │ │ │ │ │ ├── model/ │ │ │ │ │ │ ├── LLMService.java │ │ │ │ │ │ ├── ModelCategoryService.java │ │ │ │ │ │ ├── ModelCommonService.java │ │ │ │ │ │ ├── ModelService.java │ │ │ │ │ │ └── ShelfModelService.java │ │ │ │ │ ├── node/ │ │ │ │ │ │ └── TextNodeConfigService.java │ │ │ │ │ ├── openapi/ │ │ │ │ │ │ ├── OpenApiService.java │ │ │ │ │ │ └── impl/ │ │ │ │ │ │ └── OpenApiServiceImpl.java │ │ │ │ │ ├── repo/ │ │ │ │ │ │ ├── FileDirectoryTreeService.java │ │ │ │ │ │ ├── FileInfoV2Service.java │ │ │ │ │ │ ├── HitTestHistoryService.java │ │ │ │ │ │ ├── KnowledgeService.java │ │ │ │ │ │ ├── MassDatasetInfoService.java │ │ │ │ │ │ └── RepoService.java │ │ │ │ │ ├── task/ │ │ │ │ │ │ ├── ExtractKnowledgeTaskService.java │ │ │ │ │ │ └── UploadDocTaskService.java │ │ │ │ │ ├── tool/ │ │ │ │ │ │ ├── RpaAssistantService.java │ │ │ │ │ │ ├── RpaInfoService.java │ │ │ │ │ │ └── ToolBoxService.java │ │ │ │ │ └── workflow/ │ │ │ │ │ ├── TalkAgentService.java │ │ │ │ │ ├── VersionService.java │ │ │ │ │ ├── WorkflowExportService.java │ │ │ │ │ └── WorkflowService.java │ │ │ │ ├── sse/ │ │ │ │ │ ├── WorkflowInnerEventSourceListener.java │ │ │ │ │ └── WorkflowSseEventSourceListener.java │ │ │ │ ├── task/ │ │ │ │ │ ├── EmbeddingFileTask.java │ │ │ │ │ ├── SliceFileTask.java │ │ │ │ │ └── scheduler/ │ │ │ │ │ └── ModelStatusScheduler.java │ │ │ │ ├── tool/ │ │ │ │ │ ├── CommonTool.java │ │ │ │ │ ├── DataPermissionCheckTool.java │ │ │ │ │ ├── FileUploadTool.java │ │ │ │ │ ├── JsonConverter.java │ │ │ │ │ ├── MyThreadTool.java │ │ │ │ │ ├── OpenPlatformTool.java │ │ │ │ │ ├── UrlCheckTool.java │ │ │ │ │ ├── http/ │ │ │ │ │ │ ├── AssembleParam.java │ │ │ │ │ │ ├── HeaderAuthHttpTool.java │ │ │ │ │ │ └── HttpAuthTool.java │ │ │ │ │ └── spark/ │ │ │ │ │ ├── MessageBuilder.java │ │ │ │ │ └── SparkApiTool.java │ │ │ │ ├── util/ │ │ │ │ │ ├── CsvExportUtil.java │ │ │ │ │ ├── JacksonUtil.java │ │ │ │ │ ├── ObjectIsNull.java │ │ │ │ │ ├── OkHttpUtil.java │ │ │ │ │ ├── RedisUtil.java │ │ │ │ │ ├── S3Util.java │ │ │ │ │ ├── SpringUtils.java │ │ │ │ │ ├── URIUtils.java │ │ │ │ │ ├── XssSanitizer.java │ │ │ │ │ ├── database/ │ │ │ │ │ │ ├── NamePolicy.java │ │ │ │ │ │ └── SqlRenderer.java │ │ │ │ │ ├── idata/ │ │ │ │ │ │ └── RSAUtil.java │ │ │ │ │ ├── sid/ │ │ │ │ │ │ └── SidGenerator2.java │ │ │ │ │ └── ssrf/ │ │ │ │ │ ├── SsrfParamGuard.java │ │ │ │ │ ├── SsrfProperties.java │ │ │ │ │ └── SsrfValidators.java │ │ │ │ └── websocket/ │ │ │ │ ├── FlowCanvasHoldWebSocketHandler.java │ │ │ │ └── WebSocketConfig.java │ │ │ └── resources/ │ │ │ ├── application-toolkit.yml │ │ │ ├── mcp-server/ │ │ │ │ ├── iat.json │ │ │ │ ├── ost.json │ │ │ │ └── translate.json │ │ │ └── mybatis/ │ │ │ └── mapper/ │ │ │ └── mysql/ │ │ │ ├── BotRepoRelMapper.xml │ │ │ ├── BotToolRelMapper.xml │ │ │ ├── ChatInfoMapper.xml │ │ │ ├── ConfigInfoMapper.xml │ │ │ ├── DbTableFieldMapper.xml │ │ │ ├── DbTableMapper.xml │ │ │ ├── FileDirectoryTreeMapper.xml │ │ │ ├── FileInfoV2Mapper.xml │ │ │ ├── FlowDbRelMapper.xml │ │ │ ├── FlowToolRelMapper.xml │ │ │ ├── GroupTagMapper.xml │ │ │ ├── GroupUserMapper.xml │ │ │ ├── GroupVisibilityMapper.xml │ │ │ ├── HitTestHistoryMapper.xml │ │ │ ├── KnowledgeMapper.xml │ │ │ ├── ModelCategoryMapper.xml │ │ │ ├── NodeInfoMapper.xml │ │ │ ├── PreviewKnowledgeMapper.xml │ │ │ ├── RepoMapper.xml │ │ │ ├── SparkBotMapper.xml │ │ │ ├── SystemUserMapper.xml │ │ │ ├── TagInfoV2Mapper.xml │ │ │ ├── ToolBoxMapper.xml │ │ │ ├── UserFavoriteBotMapper.xml │ │ │ ├── UserFavoriteToolMapper.xml │ │ │ ├── UserLangChainDataService.xml │ │ │ └── WorkflowVersionMapper.xml │ │ └── test/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── iflytek/ │ │ │ └── astron/ │ │ │ └── console/ │ │ │ └── toolkit/ │ │ │ ├── controller/ │ │ │ │ ├── bot/ │ │ │ │ │ └── PromptControllerTest.java │ │ │ │ ├── common/ │ │ │ │ │ ├── ConfigInfoControllerTest.java │ │ │ │ │ ├── ImageControllerTest.java │ │ │ │ │ └── LLMControllerTest.java │ │ │ │ ├── knowledge/ │ │ │ │ │ ├── FileControllerTest.java │ │ │ │ │ ├── KnowledgeControllerTest.java │ │ │ │ │ └── RepoControllerTest.java │ │ │ │ ├── model/ │ │ │ │ │ └── ModelControllerTest.java │ │ │ │ ├── node/ │ │ │ │ │ └── TextNodeConfigControllerTest.java │ │ │ │ └── workflow/ │ │ │ │ ├── VersionControllerTest.java │ │ │ │ └── WorkflowControllerTest.java │ │ │ └── service/ │ │ │ ├── bot/ │ │ │ │ └── PromptServiceTest.java │ │ │ ├── common/ │ │ │ │ ├── ConfigInfoServiceTest.java │ │ │ │ └── ImageServiceTest.java │ │ │ ├── extra/ │ │ │ │ ├── AppServiceTest.java │ │ │ │ └── OpenPlatformServiceTest.java │ │ │ ├── group/ │ │ │ │ └── GroupVisibilityServiceTest.java │ │ │ ├── knowledge/ │ │ │ │ ├── FileInfoV2ServiceTest.java │ │ │ │ ├── KnowledgeServiceTest.java │ │ │ │ └── RepoServiceTest.java │ │ │ └── model/ │ │ │ └── ModelServiceTest.java │ │ └── resources/ │ │ ├── application-test.yml │ │ └── mcp-servers/ │ │ └── test-server-1.json │ └── frontend/ │ ├── .env.development │ ├── .env.production │ ├── .env.test │ ├── .prettierignore │ ├── .prettierrc │ ├── CLAUDE.md │ ├── Dockerfile │ ├── Dockerfile.dev │ ├── I18N.md │ ├── _tests_/ │ │ ├── utils.test.ts │ │ └── workflow.test.tsx │ ├── deployment.yml │ ├── docker-entrypoint.sh │ ├── eslint.config.js │ ├── index.html │ ├── nginx.conf │ ├── nginx.conf.template │ ├── package.json │ ├── postcss.config.js │ ├── public/ │ │ ├── fonts/ │ │ │ ├── D-DIN-PRO-500-Medium.otf │ │ │ └── PingFang.ttc │ │ └── runtime-config.js │ ├── src/ │ │ ├── app.tsx │ │ ├── assets/ │ │ │ └── fonts/ │ │ │ ├── Barlow-SemiBoldItalic.otf │ │ │ └── barlow-emibold-italic.otf │ │ ├── components/ │ │ │ ├── agent-creation/ │ │ │ │ ├── index.module.scss │ │ │ │ └── index.tsx │ │ │ ├── bot-center/ │ │ │ │ └── edit-bot/ │ │ │ │ └── placeholder.ts │ │ │ ├── button-group/ │ │ │ │ ├── README.md │ │ │ │ ├── button-group.module.scss │ │ │ │ ├── button-group.tsx │ │ │ │ ├── index.ts │ │ │ │ ├── space-button.module.scss │ │ │ │ ├── space-button.tsx │ │ │ │ └── types.ts │ │ │ ├── combo-modal/ │ │ │ │ ├── combo-config.ts │ │ │ │ ├── combo-contrast-modal.module.scss │ │ │ │ ├── combo-contrast-modal.tsx │ │ │ │ ├── combo-modal.module.scss │ │ │ │ ├── combo-modal.tsx │ │ │ │ ├── index.ts │ │ │ │ └── table-body.tsx │ │ │ ├── config-page-component/ │ │ │ │ ├── bot-analysis/ │ │ │ │ │ ├── config.ts │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── config-base/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── CapabilityDevelopment.module.scss │ │ │ │ │ │ ├── CapabilityDevelopment.tsx │ │ │ │ │ │ └── personality-component/ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ ├── personality-detail-modal.tsx │ │ │ │ │ │ └── personality-library-modal.tsx │ │ │ │ │ ├── index.module.scss │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── types.ts │ │ │ │ ├── config-header/ │ │ │ │ │ ├── ConfigHeader.module.scss │ │ │ │ │ └── ConfigHeader.tsx │ │ │ │ └── config-overview/ │ │ │ │ ├── index.module.scss │ │ │ │ └── index.tsx │ │ │ ├── crash-error-component/ │ │ │ │ └── index.tsx │ │ │ ├── create-application-modal/ │ │ │ │ ├── index.module.scss │ │ │ │ └── index.tsx │ │ │ ├── create-key-modal/ │ │ │ │ ├── index.module.scss │ │ │ │ └── index.tsx │ │ │ ├── drawer/ │ │ │ │ └── plugin/ │ │ │ │ └── version-management/ │ │ │ │ ├── index.css │ │ │ │ └── index.tsx │ │ │ ├── global-markdown/ │ │ │ │ └── index.tsx │ │ │ ├── header/ │ │ │ │ ├── index.module.scss │ │ │ │ └── index.tsx │ │ │ ├── language-switcher/ │ │ │ │ └── index.tsx │ │ │ ├── loading/ │ │ │ │ └── index.tsx │ │ │ ├── login-pop/ │ │ │ │ ├── index.tsx │ │ │ │ └── style.module.scss │ │ │ ├── make-creation/ │ │ │ │ ├── components/ │ │ │ │ │ └── WorkflowImportModal.tsx │ │ │ │ ├── index.module.scss │ │ │ │ └── index.tsx │ │ │ ├── markdown-render/ │ │ │ │ ├── custom-footnote-plugin.ts │ │ │ │ └── index.tsx │ │ │ ├── modal/ │ │ │ │ ├── json-modal/ │ │ │ │ │ ├── index.css │ │ │ │ │ └── index.tsx │ │ │ │ ├── more-icons/ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ └── use-more-icons.ts │ │ │ │ │ └── index.tsx │ │ │ │ ├── plugin/ │ │ │ │ │ ├── array-default.tsx │ │ │ │ │ ├── feedback/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ ├── use-create-tool.tsx │ │ │ │ │ │ └── use-tool-debugger.ts │ │ │ │ │ ├── import/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── index.tsx │ │ │ │ └── workflow/ │ │ │ │ └── array-default/ │ │ │ │ ├── hooks/ │ │ │ │ │ ├── use-array-default.tsx │ │ │ │ │ └── use-columns.tsx │ │ │ │ └── index.tsx │ │ │ ├── monaco-editor/ │ │ │ │ ├── JsonMonacoEditor.tsx │ │ │ │ ├── index.tsx │ │ │ │ └── json-monaco-editor/ │ │ │ │ └── index.tsx │ │ │ ├── more-icons/ │ │ │ │ └── index.tsx │ │ │ ├── plugin/ │ │ │ │ └── PluginContext.tsx │ │ │ ├── plugin-store/ │ │ │ │ ├── debugger-table.tsx │ │ │ │ ├── tool-input-parameters-detail.tsx │ │ │ │ └── tool-output-parameters-detail.tsx │ │ │ ├── prompt-try/ │ │ │ │ ├── index.tsx │ │ │ │ ├── input-box.tsx │ │ │ │ └── message-list.tsx │ │ │ ├── sidebar/ │ │ │ │ ├── bottom-login/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── control-modal/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── create-button.tsx │ │ │ │ ├── icon-entry/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── menu-list/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── notice-modal/ │ │ │ │ │ ├── bot-card/ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── order-type-display/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── personal-center/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ └── sidebar-logo/ │ │ │ │ └── index.tsx │ │ │ ├── sider-container/ │ │ │ │ ├── index.module.scss │ │ │ │ └── index.tsx │ │ │ ├── space/ │ │ │ │ ├── add-member-modal/ │ │ │ │ │ ├── config.ts │ │ │ │ │ ├── cus-check-box/ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── index.module.scss │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── selected-user-item/ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── user-item/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── delete-space-modal/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── empty/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── leave-space-modal/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── person-space/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── share-space-modal/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── space-card/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── action-list/ │ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── join-status/ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── space-list/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── space-modal/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── upload-avatar/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── space-search/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── space-tab/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── space-table/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── space-tag/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ └── transfer-ownership-modal/ │ │ │ │ ├── index.module.scss │ │ │ │ └── index.tsx │ │ │ ├── speaker-modal/ │ │ │ │ ├── index.tsx │ │ │ │ └── voice-training.tsx │ │ │ ├── svg-icons/ │ │ │ │ ├── index.tsx │ │ │ │ ├── model.tsx │ │ │ │ └── space.tsx │ │ │ ├── table/ │ │ │ │ ├── debugger-table/ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ ├── use-columns.tsx │ │ │ │ │ │ ├── use-debugger-table.tsx │ │ │ │ │ │ └── use-render-input.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── tool-input-parameters/ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ ├── use-columns.tsx │ │ │ │ │ │ └── use-tool-input-parameters.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── tool-input-parameters-detail/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── tool-output-parameters/ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ ├── use-columns.tsx │ │ │ │ │ │ └── use-table-logic.tsx │ │ │ │ │ └── index.tsx │ │ │ │ └── tool-output-parameters-detail/ │ │ │ │ └── index.tsx │ │ │ ├── tailwind-important-examples.tsx │ │ │ ├── tts-module/ │ │ │ │ └── index.tsx │ │ │ ├── ui/ │ │ │ │ ├── back/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── btns/ │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── primary-btn/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── second-btn/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── empty-state/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── global/ │ │ │ │ │ └── retract-table-input/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── index.tsx │ │ │ │ └── table/ │ │ │ │ └── index.tsx │ │ │ ├── upload-avatar/ │ │ │ │ ├── crop-modal.tsx │ │ │ │ ├── index.module.scss │ │ │ │ ├── index.tsx │ │ │ │ └── upload-display.tsx │ │ │ ├── upload-background/ │ │ │ │ ├── index.module.scss │ │ │ │ └── index.tsx │ │ │ ├── virtual-config-modal/ │ │ │ │ ├── component/ │ │ │ │ │ └── iconModal.tsx │ │ │ │ ├── index.module.scss │ │ │ │ └── index.tsx │ │ │ ├── vms-interaction-cmp/ │ │ │ │ └── index.tsx │ │ │ ├── voice-broadcast/ │ │ │ │ └── index.jsx │ │ │ ├── workflow/ │ │ │ │ ├── constant/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── drawer/ │ │ │ │ │ ├── advanced-config/ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ └── opening-remarks.tsx │ │ │ │ │ ├── chat-debugger/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── chat-content.tsx │ │ │ │ │ │ │ └── chat-input.tsx │ │ │ │ │ │ ├── index.scss │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── chat-result/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── code-idea/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── debugger-check/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── node-detail/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── single-node-debugging/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── version-management/ │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── version-management.css │ │ │ │ ├── edges/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── hooks/ │ │ │ │ │ ├── use-flow-common.ts │ │ │ │ │ ├── use-flow-type-render.tsx │ │ │ │ │ ├── use-if-else-node-compare-operator.tsx │ │ │ │ │ ├── use-node-common.tsx │ │ │ │ │ ├── use-one-click-update.tsx │ │ │ │ │ └── use-variable-memory-handlers.ts │ │ │ │ ├── icons/ │ │ │ │ │ └── index.ts │ │ │ │ ├── modal/ │ │ │ │ │ ├── add-flow/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── add-knowledge/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── add-mcp/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── add-plugin/ │ │ │ │ │ │ ├── delete-plugin.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── add-rpa/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── clear-flow-canvas/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── delete-chat-history/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── feedback-dialog/ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── flow-edit/ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ └── more-icons/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── iterative-amplification/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── knowledge-detail/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── knowledge-parameter/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── knowledge-pro-parameter/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── modal-detail/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── modal-rpa-run/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── node-detail/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── prompt-optimize/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── select-agent-prompt/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── set-default-value/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── nodes/ │ │ │ │ │ ├── agent/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── add-tool/ │ │ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ │ │ ├── knowledge-list.tsx │ │ │ │ │ │ │ │ │ └── mcp-detail.tsx │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ └── model-select/ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── code/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── chat-history/ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── connection-line/ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── exception-handling/ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── fixed-inputs/ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── fixed-outputs/ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── handle/ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── inputs/ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── model-params/ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── model-select/ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── node-debugger/ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── node-operation/ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── outputs/ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── remark/ │ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── single-input/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── database/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── AddDataInputs.tsx │ │ │ │ │ │ │ ├── CasesInputs.tsx │ │ │ │ │ │ │ ├── OutputDatabase.tsx │ │ │ │ │ │ │ ├── QueryField.tsx │ │ │ │ │ │ │ └── QueryLimit.tsx │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── decision-making/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── end/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── extractor-parameterNode/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ └── OutputParams.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── flow/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── if-else/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── iterator/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ └── flow-container/ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── knowledge/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── knowledge-pro/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── llm/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── mcp/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── message/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── node-common/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── plugin/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── question-answer/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── answer-settings.tsx │ │ │ │ │ │ │ ├── fixed-options.tsx │ │ │ │ │ │ │ └── output-params.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── rpa/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── start/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── text-handle/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── variable-aggregation/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── variable-memory/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ └── inputs.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── panel/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── store/ │ │ │ │ │ ├── flow-chat-function.ts │ │ │ │ │ ├── flow-function.ts │ │ │ │ │ ├── flow-manager-function.ts │ │ │ │ │ ├── use-chat-store.ts │ │ │ │ │ ├── use-flow-store.ts │ │ │ │ │ ├── use-flows-manager.ts │ │ │ │ │ └── use-iterator-flow-store.ts │ │ │ │ ├── tips/ │ │ │ │ │ └── select-node/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── types/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── drawer/ │ │ │ │ │ │ ├── advanced-config.ts │ │ │ │ │ │ ├── chat-debugger.ts │ │ │ │ │ │ ├── code-idea.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── single-node-debugging.ts │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── modal/ │ │ │ │ │ │ ├── add-flow.ts │ │ │ │ │ │ ├── add-knowledge.ts │ │ │ │ │ │ ├── add-mcp.ts │ │ │ │ │ │ ├── add-plugin.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── iterative-amplification.ts │ │ │ │ │ │ ├── knowledge-detail.tsx │ │ │ │ │ │ ├── knowledge-parameter.ts │ │ │ │ │ │ ├── knowledge-pro-parameter.ts │ │ │ │ │ │ ├── node-detail.ts │ │ │ │ │ │ ├── prompt-optimize.ts │ │ │ │ │ │ ├── select-agent-prompt.ts │ │ │ │ │ │ └── select-llm-prompt.ts │ │ │ │ │ ├── nodes/ │ │ │ │ │ │ ├── agent.ts │ │ │ │ │ │ ├── code.ts │ │ │ │ │ │ ├── components.ts │ │ │ │ │ │ ├── database.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── zustand/ │ │ │ │ │ ├── chat/ │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── flow/ │ │ │ │ │ │ └── index.ts │ │ │ │ │ └── flowsManager/ │ │ │ │ │ └── index.ts │ │ │ │ ├── ui/ │ │ │ │ │ ├── flow-cascader.tsx │ │ │ │ │ ├── flow-collapse.tsx │ │ │ │ │ ├── flow-input-number.tsx │ │ │ │ │ ├── flow-input.tsx │ │ │ │ │ ├── flow-node-input.tsx │ │ │ │ │ ├── flow-node-textarea.tsx │ │ │ │ │ ├── flow-select.tsx │ │ │ │ │ ├── flow-template-editor.tsx │ │ │ │ │ ├── flow-textarea.tsx │ │ │ │ │ ├── flow-tree.tsx │ │ │ │ │ ├── flow-type-cascader.tsx │ │ │ │ │ ├── flow-upload.tsx │ │ │ │ │ └── index.tsx │ │ │ │ └── utils/ │ │ │ │ ├── index.ts │ │ │ │ ├── reactflowUtils.ts │ │ │ │ └── variable-aggregation.ts │ │ │ └── wx-modal/ │ │ │ ├── index.module.scss │ │ │ └── index.tsx │ │ ├── config/ │ │ │ ├── casdoor.ts │ │ │ ├── file-icon-config.ts │ │ │ ├── index.ts │ │ │ └── monaco-config.ts │ │ ├── constants/ │ │ │ ├── config.ts │ │ │ ├── index.ts │ │ │ └── lottie-react/ │ │ │ ├── chat-loading.json │ │ │ ├── chatSpeaking.json │ │ │ ├── jiexi.json │ │ │ ├── loading.json │ │ │ ├── mingzhong.json │ │ │ └── voice.json │ │ ├── hooks/ │ │ │ ├── index.ts │ │ │ ├── search-event-bind.ts │ │ │ ├── use-ant-modal.tsx │ │ │ ├── use-chat-file-upload.ts │ │ │ ├── use-chat.ts │ │ │ ├── use-enterprise.ts │ │ │ ├── use-image-crop-upload-core.ts │ │ │ ├── use-image-crop-upload-helpers.ts │ │ │ ├── use-image-crop-upload.ts │ │ │ ├── use-login.ts │ │ │ ├── use-order-data.ts │ │ │ ├── use-permissions.ts │ │ │ ├── use-prompt.ts │ │ │ ├── use-screen-width.ts │ │ │ ├── use-scrollbar.ts │ │ │ ├── use-space-type.ts │ │ │ ├── use-toggle.ts │ │ │ └── use-user-store.ts │ │ ├── i18n/ │ │ │ └── index.ts │ │ ├── layouts/ │ │ │ └── index.tsx │ │ ├── locales/ │ │ │ ├── README.md │ │ │ ├── en-En/ │ │ │ │ ├── common.ts │ │ │ │ ├── database.ts │ │ │ │ ├── effectEvaluation.ts │ │ │ │ ├── index.ts │ │ │ │ ├── knowledge.ts │ │ │ │ ├── mcp.ts │ │ │ │ ├── model.ts │ │ │ │ ├── openPlatform-En/ │ │ │ │ │ ├── agentPage.ts │ │ │ │ │ ├── appManage.ts │ │ │ │ │ ├── botApi.ts │ │ │ │ │ ├── chatPage.ts │ │ │ │ │ ├── comboContrastModal.ts │ │ │ │ │ ├── commonModal.ts │ │ │ │ │ ├── configBase.ts │ │ │ │ │ ├── createAgent.ts │ │ │ │ │ ├── feedback.ts │ │ │ │ │ ├── global.ts │ │ │ │ │ ├── home.ts │ │ │ │ │ ├── loginModal.ts │ │ │ │ │ ├── orderManagement.ts │ │ │ │ │ ├── prompt.ts │ │ │ │ │ ├── promption.ts │ │ │ │ │ ├── releaseManagement.ts │ │ │ │ │ ├── shareModal.ts │ │ │ │ │ ├── space.ts │ │ │ │ │ ├── systemMessage.ts │ │ │ │ │ ├── virtualConfig.ts │ │ │ │ │ └── vmsInteractionCmp.ts │ │ │ │ ├── openPlatformEnModule.ts │ │ │ │ ├── plugin.ts │ │ │ │ ├── rpa.ts │ │ │ │ └── workflow.ts │ │ │ ├── en.js │ │ │ ├── i18n/ │ │ │ │ └── index.ts │ │ │ ├── index.ts │ │ │ ├── localeConfig.ts │ │ │ ├── zh-ZH/ │ │ │ │ ├── common.ts │ │ │ │ ├── database.ts │ │ │ │ ├── effectEvaluation.ts │ │ │ │ ├── index.ts │ │ │ │ ├── knowledge.ts │ │ │ │ ├── mcp.ts │ │ │ │ ├── model.ts │ │ │ │ ├── openPlatform-ZH/ │ │ │ │ │ ├── agentPage.ts │ │ │ │ │ ├── appManage.ts │ │ │ │ │ ├── botApi.ts │ │ │ │ │ ├── chatPage.ts │ │ │ │ │ ├── comboContrastModal.ts │ │ │ │ │ ├── commonModal.ts │ │ │ │ │ ├── configBase.ts │ │ │ │ │ ├── createAgent.ts │ │ │ │ │ ├── feedback.ts │ │ │ │ │ ├── global.ts │ │ │ │ │ ├── home.ts │ │ │ │ │ ├── loginModal.ts │ │ │ │ │ ├── orderManagement.ts │ │ │ │ │ ├── prompt.ts │ │ │ │ │ ├── promption.ts │ │ │ │ │ ├── releaseManagement.ts │ │ │ │ │ ├── shareModal.ts │ │ │ │ │ ├── space.ts │ │ │ │ │ ├── systemMessage.ts │ │ │ │ │ ├── virtualConfig.ts │ │ │ │ │ └── vmsInteractionCmp.ts │ │ │ │ ├── openPlatformZHModule.ts │ │ │ │ ├── plugin.ts │ │ │ │ ├── rpa.ts │ │ │ │ └── workflow.ts │ │ │ └── zh.js │ │ ├── main.tsx │ │ ├── pages/ │ │ │ ├── bot-api/ │ │ │ │ ├── api.module.scss │ │ │ │ ├── api.tsx │ │ │ │ ├── app-list.module.scss │ │ │ │ └── app-list.tsx │ │ │ ├── callback/ │ │ │ │ └── index.tsx │ │ │ ├── chat-page/ │ │ │ │ ├── components/ │ │ │ │ │ ├── audio-animate.tsx │ │ │ │ │ ├── chat-header.tsx │ │ │ │ │ ├── chat-input.tsx │ │ │ │ │ ├── chat-side.tsx │ │ │ │ │ ├── deep-think-progress.tsx │ │ │ │ │ ├── delete-modal.tsx │ │ │ │ │ ├── file-grid-display.tsx │ │ │ │ │ ├── file-preview.tsx │ │ │ │ │ ├── message-list.tsx │ │ │ │ │ ├── multi-upload-buttons.tsx │ │ │ │ │ ├── recorder-com.tsx │ │ │ │ │ ├── resq-bottom-buttons.tsx │ │ │ │ │ ├── source-info-box.tsx │ │ │ │ │ ├── use-tools-info.tsx │ │ │ │ │ └── workflow-node-options.tsx │ │ │ │ ├── index.module.scss │ │ │ │ └── index.tsx │ │ │ ├── config-page/ │ │ │ │ ├── index.module.scss │ │ │ │ └── index.tsx │ │ │ ├── home-page/ │ │ │ │ ├── index.module.scss │ │ │ │ └── index.tsx │ │ │ ├── model-management/ │ │ │ │ ├── components/ │ │ │ │ │ ├── category-aside.tsx │ │ │ │ │ ├── integer-step.tsx │ │ │ │ │ ├── modal-component.tsx │ │ │ │ │ ├── model-card-list.tsx │ │ │ │ │ ├── model-card.module.scss │ │ │ │ │ ├── model-card.tsx │ │ │ │ │ ├── model-management-header.tsx │ │ │ │ │ ├── model-modal-components.tsx │ │ │ │ │ ├── model-params-table.tsx │ │ │ │ │ └── status-tag/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── context/ │ │ │ │ │ └── model-context.tsx │ │ │ │ ├── hooks/ │ │ │ │ │ ├── use-model-filters.ts │ │ │ │ │ ├── use-model-initializer.ts │ │ │ │ │ └── use-model-operations.ts │ │ │ │ ├── index.tsx │ │ │ │ ├── model-detail/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── model-config-section.tsx │ │ │ │ │ │ ├── model-detail-header.tsx │ │ │ │ │ │ └── model-info-display.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── official-model/ │ │ │ │ │ └── official-model-home.tsx │ │ │ │ ├── personal-model/ │ │ │ │ │ └── personal-model-home.tsx │ │ │ │ └── utils/ │ │ │ │ └── provider.ts │ │ │ ├── plugin-store/ │ │ │ │ ├── components/ │ │ │ │ │ ├── banner/ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── category-tabs/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── tool-card/ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── toolbar/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── detail/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── index.tsx │ │ │ │ └── style.css │ │ │ ├── release-management/ │ │ │ │ ├── agent-list/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── detail-list-page/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── detail-overview/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── index.module.scss │ │ │ │ ├── index.tsx │ │ │ │ ├── released-page/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ └── trace-logs/ │ │ │ │ ├── CheckModal/ │ │ │ │ │ ├── ContentDisplay/ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── TreeNode/ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── ExportBtn/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── common/ │ │ │ │ │ └── CopyButton/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── config/ │ │ │ │ │ ├── README.md │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── type.d.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── index.module.scss │ │ │ │ └── index.tsx │ │ │ ├── resource-management/ │ │ │ │ ├── card-button-group/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── database/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── card-item/ │ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── create-database.tsx │ │ │ │ │ │ ├── database-grid.tsx │ │ │ │ │ │ ├── delete-database.tsx │ │ │ │ │ │ └── import-data-modal.tsx │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ ├── use-database-list.ts │ │ │ │ │ │ └── use-infinite-scroll.ts │ │ │ │ │ └── index.tsx │ │ │ │ ├── database-detail/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── action-buttons.tsx │ │ │ │ │ │ ├── add-tablerow-modal.tsx │ │ │ │ │ │ ├── database-sidebar.tsx │ │ │ │ │ │ ├── main-content.module.scss │ │ │ │ │ │ ├── main-content.tsx │ │ │ │ │ │ ├── modal-components.tsx │ │ │ │ │ │ ├── test-table.module.scss │ │ │ │ │ │ └── test-table.tsx │ │ │ │ │ ├── context/ │ │ │ │ │ │ └── database-context.tsx │ │ │ │ │ ├── database-table-add/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── action-buttons.tsx │ │ │ │ │ │ │ ├── back-button.tsx │ │ │ │ │ │ │ ├── database-table.tsx │ │ │ │ │ │ │ ├── field-actions.tsx │ │ │ │ │ │ │ └── table-form.tsx │ │ │ │ │ │ ├── context/ │ │ │ │ │ │ │ └── table-add-context.tsx │ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ │ ├── use-table-actions.ts │ │ │ │ │ │ │ ├── use-table-datasource.ts │ │ │ │ │ │ │ ├── use-table-field-validation.ts │ │ │ │ │ │ │ ├── use-table-import-ops.ts │ │ │ │ │ │ │ ├── use-table-initializer.ts │ │ │ │ │ │ │ └── use-table-save.ts │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ ├── use-data-event-handlers.ts │ │ │ │ │ │ ├── use-data-ops.ts │ │ │ │ │ │ ├── use-database-actions.ts │ │ │ │ │ │ ├── use-database-initializer.ts │ │ │ │ │ │ ├── use-database-ops.ts │ │ │ │ │ │ ├── use-modal-ops.ts │ │ │ │ │ │ └── use-table-ops.ts │ │ │ │ │ └── index.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── knowledge-detail/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── knowledge-header.tsx │ │ │ │ │ │ └── knowledge-info.tsx │ │ │ │ │ ├── document-page/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ └── modal-components.tsx │ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ │ ├── use-columns.tsx │ │ │ │ │ │ │ └── use-document-page.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── file-page/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ └── modal-components.tsx │ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ │ └── use-file-page.tsx │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── hit-page/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── history-content.tsx │ │ │ │ │ │ │ └── modal-components.tsx │ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ │ └── use-hit-page.ts │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── segmentation-page/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── data-clean.tsx │ │ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ │ │ └── use-data-clean.tsx │ │ │ │ │ │ │ └── processing-completion.tsx │ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ │ └── use-processing-completion.ts │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── setting-page/ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ └── use-setting-page.ts │ │ │ │ │ └── index.tsx │ │ │ │ ├── knowledge-page/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── card-item/ │ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── knowledge-content.tsx │ │ │ │ │ │ └── modal-component.tsx │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ └── use-knowledge-page.ts │ │ │ │ │ └── index.tsx │ │ │ │ ├── plugin-create/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── plugin-detail/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ └── tool-header.tsx │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ └── use-tool-header.ts │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── setting-page/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── plugin-page/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── card-item/ │ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── modal-component.tsx │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ └── use-plugin-page.ts │ │ │ │ │ └── index.tsx │ │ │ │ ├── resource-empty/ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── rpa-detail/ │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ └── use-rpa-detail.ts │ │ │ │ │ └── index.tsx │ │ │ │ ├── rpa-page/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── card-item/ │ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── modal-form/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ └── use-rpa-page.tsx │ │ │ │ │ └── index.tsx │ │ │ │ └── upload-page/ │ │ │ │ ├── components/ │ │ │ │ │ ├── data-clean.tsx │ │ │ │ │ ├── hooks/ │ │ │ │ │ │ ├── use-config-management.ts │ │ │ │ │ │ ├── use-data-clean.ts │ │ │ │ │ │ ├── use-data-operations.ts │ │ │ │ │ │ ├── use-file-display.ts │ │ │ │ │ │ ├── use-knowledge-select.ts │ │ │ │ │ │ ├── use-pagination.ts │ │ │ │ │ │ └── use-slice-operations.ts │ │ │ │ │ ├── import-data.tsx │ │ │ │ │ ├── import-upload.tsx │ │ │ │ │ ├── processing-completion-info.tsx │ │ │ │ │ ├── processing-completion.tsx │ │ │ │ │ ├── upload-header.tsx │ │ │ │ │ └── utils/ │ │ │ │ │ └── data-clean-utils.ts │ │ │ │ ├── hooks/ │ │ │ │ │ ├── use-import-data.ts │ │ │ │ │ └── use-upload-page.ts │ │ │ │ ├── index.tsx │ │ │ │ └── utils/ │ │ │ │ └── index.ts │ │ │ ├── share-page/ │ │ │ │ ├── index.module.scss │ │ │ │ └── index.tsx │ │ │ ├── space/ │ │ │ │ ├── config.ts │ │ │ │ ├── enterprise/ │ │ │ │ │ ├── base-layout/ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── config.ts │ │ │ │ │ ├── index.module.scss │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── page-components/ │ │ │ │ │ ├── member-manage/ │ │ │ │ │ │ ├── components/ │ │ │ │ │ │ │ ├── batch-import/ │ │ │ │ │ │ │ │ ├── config.ts │ │ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ │ │ └── utils.ts │ │ │ │ │ │ │ ├── invitation-list/ │ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ │ └── member-list/ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── space-manage/ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ └── index.tsx │ │ │ │ │ └── team-settings/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── enterprise-certification-card/ │ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── info-header/ │ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── leave-team-modal/ │ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── team-info/ │ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── upload-image/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── hooks/ │ │ │ │ │ └── use-space-i18n.ts │ │ │ │ ├── personal/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ └── personal-space-card/ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ ├── space-detail/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── apply-management/ │ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── detail-header/ │ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── invitation-management/ │ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── member-management/ │ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── space-settings/ │ │ │ │ │ │ ├── index.module.scss │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ └── team-create/ │ │ │ │ ├── index.module.scss │ │ │ │ └── index.tsx │ │ │ ├── space-page/ │ │ │ │ ├── agent-page/ │ │ │ │ │ ├── components/ │ │ │ │ │ │ ├── create-bot/ │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ └── delete-bot/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── index.module.scss │ │ │ │ │ └── index.tsx │ │ │ │ └── index.tsx │ │ │ └── workflow/ │ │ │ ├── components/ │ │ │ │ ├── btn-groups/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── community-qr-code/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── flow-container/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── flow-drawer/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── flow-header/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── flow-modal/ │ │ │ │ │ └── index.tsx │ │ │ │ ├── multiple-canvases-tip/ │ │ │ │ │ └── index.tsx │ │ │ │ └── node-list/ │ │ │ │ └── index.tsx │ │ │ ├── index.tsx │ │ │ └── workflow-analysis/ │ │ │ └── index.tsx │ │ ├── permissions/ │ │ │ ├── config/ │ │ │ │ ├── enterprise-permissions.ts │ │ │ │ ├── index.ts │ │ │ │ ├── route-permissions.ts │ │ │ │ └── share-permissions.ts │ │ │ └── utils.ts │ │ ├── router/ │ │ │ └── index.tsx │ │ ├── services/ │ │ │ ├── agent-personality.ts │ │ │ ├── agent-square.ts │ │ │ ├── agent.ts │ │ │ ├── api-key.ts │ │ │ ├── chat.ts │ │ │ ├── common.ts │ │ │ ├── database.ts │ │ │ ├── enterprise-auth-api.ts │ │ │ ├── enterprise.ts │ │ │ ├── flow.ts │ │ │ ├── knowledge.ts │ │ │ ├── login.ts │ │ │ ├── model.ts │ │ │ ├── notification.ts │ │ │ ├── order.ts │ │ │ ├── plugin.ts │ │ │ ├── prompt.ts │ │ │ ├── release-management.ts │ │ │ ├── rpa.ts │ │ │ ├── space.ts │ │ │ ├── spark-common.ts │ │ │ ├── square.ts │ │ │ ├── tool.ts │ │ │ └── trace.ts │ │ ├── store/ │ │ │ ├── agent-directive-create.ts │ │ │ ├── bot-info-store.ts │ │ │ ├── chat-store.ts │ │ │ ├── database-store.ts │ │ │ ├── enterprise-store.ts │ │ │ ├── global-store.ts │ │ │ ├── home-store.ts │ │ │ ├── index.ts │ │ │ ├── login-store.ts │ │ │ ├── space-store.ts │ │ │ ├── spark-store/ │ │ │ │ ├── bot-state.ts │ │ │ │ ├── locale-store.ts │ │ │ │ ├── multi-modle-store.ts │ │ │ │ ├── order-store.ts │ │ │ │ └── spark-common.ts │ │ │ ├── user-store.tsx │ │ │ └── voice-play-store.tsx │ │ ├── styles/ │ │ │ ├── antd.scss │ │ │ ├── applies.scss │ │ │ ├── classes.scss │ │ │ ├── flow.scss │ │ │ ├── global.scss │ │ │ └── ui.scss │ │ ├── types/ │ │ │ ├── agent-create.ts │ │ │ ├── agent-square.ts │ │ │ ├── chat.ts │ │ │ ├── common.ts │ │ │ ├── database.ts │ │ │ ├── global.d.ts │ │ │ ├── jquery.d.ts │ │ │ ├── model-extensions.d.ts │ │ │ ├── model.ts │ │ │ ├── permission.ts │ │ │ ├── plugin-store.ts │ │ │ ├── resource.ts │ │ │ ├── rpa.ts │ │ │ ├── space.ts │ │ │ ├── types-services/ │ │ │ │ └── index.ts │ │ │ └── typesServices.ts │ │ └── utils/ │ │ ├── agent-create-utils.ts │ │ ├── auth.ts │ │ ├── avatar-sdk-web_3.1.2.1002/ │ │ │ ├── index-OS7Lza_r.js │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── webrtc-player--YuOiwFd.js │ │ │ └── xrtc-player-BJTnVhG9.js │ │ ├── chat.ts │ │ ├── event-bus.ts │ │ ├── http.ts │ │ ├── index.ts │ │ ├── lang.ts │ │ ├── pattern.ts │ │ ├── reactflow-utils.ts │ │ ├── record/ │ │ │ ├── media.js │ │ │ ├── pcm.js │ │ │ ├── record.js │ │ │ ├── recorder-core.js │ │ │ ├── sampleRate.js │ │ │ ├── wav.js │ │ │ └── ws.js │ │ ├── rpa.ts │ │ ├── sanitizer.ts │ │ ├── spark-utils.ts │ │ ├── tts.ts │ │ └── utils.ts │ ├── tailwind.config.js │ ├── tsconfig.json │ ├── tsconfig.node.json │ ├── vite-env.d.ts │ └── vite.config.js ├── core/ │ ├── agent/ │ │ ├── .gitignore │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── __init__.py │ │ ├── api/ │ │ │ ├── __init__.py │ │ │ ├── router.py │ │ │ ├── schemas/ │ │ │ │ ├── agent_response.py │ │ │ │ ├── base_inputs.py │ │ │ │ ├── completion_chunk.py │ │ │ │ ├── llm_message.py │ │ │ │ ├── node_trace_patch.py │ │ │ │ └── workflow_agent_inputs.py │ │ │ └── v1/ │ │ │ ├── base_api.py │ │ │ └── workflow_agent.py │ │ ├── config.env │ │ ├── domain/ │ │ │ ├── __init__.py │ │ │ └── models/ │ │ │ └── base.py │ │ ├── engine/ │ │ │ ├── __init__.py │ │ │ └── nodes/ │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── chat/ │ │ │ │ ├── chat_prompt.py │ │ │ │ └── chat_runner.py │ │ │ ├── cot/ │ │ │ │ ├── cot_prompt.py │ │ │ │ └── cot_runner.py │ │ │ └── cot_process/ │ │ │ ├── cot_process_prompt.py │ │ │ └── cot_process_runner.py │ │ ├── exceptions/ │ │ │ ├── __init__.py │ │ │ ├── agent_exc.py │ │ │ ├── base.py │ │ │ ├── codes.py │ │ │ ├── cot_exc.py │ │ │ ├── llm_codes.py │ │ │ ├── middleware_exc.py │ │ │ └── plugin_exc.py │ │ ├── infra/ │ │ │ ├── __init__.py │ │ │ └── app_auth.py │ │ ├── main.py │ │ ├── pyproject.toml │ │ ├── service/ │ │ │ ├── __init__.py │ │ │ ├── builder/ │ │ │ │ ├── __init__.py │ │ │ │ ├── base_builder.py │ │ │ │ └── workflow_agent_builder.py │ │ │ ├── plugin/ │ │ │ │ ├── __init__.py │ │ │ │ ├── base.py │ │ │ │ ├── knowledge.py │ │ │ │ ├── link.py │ │ │ │ ├── mcp.py │ │ │ │ └── workflow.py │ │ │ └── runner/ │ │ │ ├── __init__.py │ │ │ └── workflow_agent_runner.py │ │ └── tests/ │ │ ├── __init__.py │ │ ├── test_app_auth.py │ │ ├── test_base_api.py │ │ ├── test_base_builder.py │ │ ├── test_base_inputs.py │ │ ├── test_base_llm_model.py │ │ ├── test_knowledge_plugin.py │ │ ├── test_plugin_base_link_mcp_workflow.py │ │ ├── test_router_and_schemas.py │ │ ├── test_runner_base_and_chat_cot.py │ │ ├── test_workflow_agent.py │ │ ├── test_workflow_agent_builder.py │ │ ├── test_workflow_agent_inputs_and_plugin_inputs.py │ │ └── test_workflow_agent_runner.py │ ├── common/ │ │ ├── README.md │ │ ├── __init__.py │ │ ├── audit_system/ │ │ │ ├── __init__.py │ │ │ ├── audit_api/ │ │ │ │ ├── __init__.py │ │ │ │ ├── base.py │ │ │ │ └── iflytek/ │ │ │ │ ├── __init__.py │ │ │ │ └── ifly_audit_api.py │ │ │ ├── base.py │ │ │ ├── enums.py │ │ │ ├── orchestrator.py │ │ │ ├── strategy/ │ │ │ │ ├── __init__.py │ │ │ │ ├── base_strategy.py │ │ │ │ └── text_strategy.py │ │ │ └── utils.py │ │ ├── exceptions/ │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── codes.py │ │ │ └── errs.py │ │ ├── initialize/ │ │ │ └── initialize.py │ │ ├── ma-sdk.toml │ │ ├── metrology_auth/ │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── calc.py │ │ │ ├── conc.py │ │ │ ├── config_client.toml.findercache │ │ │ ├── errors.py │ │ │ ├── include/ │ │ │ │ └── ma_sdk.h │ │ │ ├── licc.py │ │ │ ├── ma-sdk-cfg/ │ │ │ │ ├── config_ma-sdk.toml.findercache │ │ │ │ └── service_janus_1.0.0.findercache │ │ │ ├── ma-sdk-default.toml │ │ │ ├── ma-sdk.cfg.toml │ │ │ ├── ma-sdk.toml │ │ │ ├── ma_sdk_linux_x64.h │ │ │ ├── ma_sdk_macos_arm64.h │ │ │ ├── ma_sdk_windows.h │ │ │ └── rep.py │ │ ├── otlp/ │ │ │ ├── __init__.py │ │ │ ├── args/ │ │ │ │ ├── __init__.py │ │ │ │ ├── base.py │ │ │ │ ├── metric.py │ │ │ │ ├── node_log.py │ │ │ │ ├── sid.py │ │ │ │ └── trace.py │ │ │ ├── ip.py │ │ │ ├── log_trace/ │ │ │ │ ├── __init__.py │ │ │ │ ├── base.py │ │ │ │ ├── node_log.py │ │ │ │ ├── node_trace_log.py │ │ │ │ └── workflow_log.py │ │ │ ├── metrics/ │ │ │ │ ├── consts.py │ │ │ │ ├── meter.py │ │ │ │ └── metric.py │ │ │ ├── sid.py │ │ │ └── trace/ │ │ │ ├── span.py │ │ │ ├── span_instance.py │ │ │ └── trace.py │ │ ├── pyproject.toml │ │ ├── pytest.ini │ │ ├── run_basic_tests.sh │ │ ├── run_simple_tests.sh │ │ ├── run_tests.sh │ │ ├── service/ │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── cache/ │ │ │ │ ├── base_cache.py │ │ │ │ ├── factory.py │ │ │ │ └── redis_cache.py │ │ │ ├── db/ │ │ │ │ ├── db_service.py │ │ │ │ └── factory.py │ │ │ ├── kafka/ │ │ │ │ ├── factory.py │ │ │ │ └── kafka_service.py │ │ │ ├── log/ │ │ │ │ ├── factory.py │ │ │ │ └── logger_service.py │ │ │ ├── ma/ │ │ │ │ ├── factory.py │ │ │ │ └── metrology_auth_service.py │ │ │ ├── oss/ │ │ │ │ ├── base_oss.py │ │ │ │ ├── factory.py │ │ │ │ ├── ifly_storage_gateway_service.py │ │ │ │ └── s3_service.py │ │ │ ├── otlp/ │ │ │ │ ├── metric/ │ │ │ │ │ ├── base_metric.py │ │ │ │ │ ├── factory.py │ │ │ │ │ └── metric_service.py │ │ │ │ ├── node_log/ │ │ │ │ │ ├── base_node_log.py │ │ │ │ │ ├── factory.py │ │ │ │ │ └── node_log_service.py │ │ │ │ ├── sid/ │ │ │ │ │ ├── factory.py │ │ │ │ │ └── sid_service.py │ │ │ │ └── span/ │ │ │ │ ├── factory.py │ │ │ │ └── span_service.py │ │ │ ├── settings/ │ │ │ │ ├── base_settings.py │ │ │ │ ├── factory.py │ │ │ │ └── settings_service.py │ │ │ └── utils.py │ │ ├── settings/ │ │ │ ├── polaris.py │ │ │ └── settings.py │ │ ├── tests/ │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── conftest.py │ │ │ ├── test_audit_system.py │ │ │ ├── test_exceptions.py │ │ │ ├── test_json_schema_cn.py │ │ │ ├── test_json_schema_validator.py │ │ │ ├── test_main.py │ │ │ ├── test_metrology_auth.py │ │ │ ├── test_otlp_args.py │ │ │ ├── test_otlp_log_trace.py │ │ │ ├── test_otlp_utils.py │ │ │ ├── test_service_base.py │ │ │ ├── test_service_utils.py │ │ │ ├── test_snowfake.py │ │ │ └── test_utils.py │ │ └── utils/ │ │ ├── __init__.py │ │ ├── hmac_auth.py │ │ ├── json_schema/ │ │ │ ├── __init__.py │ │ │ ├── json_schema_cn.py │ │ │ └── json_schema_validator.py │ │ └── snowfake.py │ ├── knowledge/ │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── __init__.py │ │ ├── api/ │ │ │ ├── __init__.py │ │ │ └── v1/ │ │ │ ├── __init__.py │ │ │ └── api.py │ │ ├── config.env │ │ ├── consts/ │ │ │ ├── __init__.py │ │ │ ├── constants.py │ │ │ └── error_code.py │ │ ├── domain/ │ │ │ ├── __init__.py │ │ │ ├── entity/ │ │ │ │ ├── __init__.py │ │ │ │ ├── chunk_dto.py │ │ │ │ └── rag_do.py │ │ │ └── response.py │ │ ├── exceptions/ │ │ │ ├── __init__.py │ │ │ └── exception.py │ │ ├── infra/ │ │ │ ├── __init__.py │ │ │ ├── aiui/ │ │ │ │ ├── __init__.py │ │ │ │ └── aiui.py │ │ │ ├── desk/ │ │ │ │ ├── __init__.py │ │ │ │ └── sparkdesk.py │ │ │ ├── ragflow/ │ │ │ │ ├── __init__.py │ │ │ │ ├── ragflow_client.py │ │ │ │ └── ragflow_utils.py │ │ │ └── xinghuo/ │ │ │ ├── __init__.py │ │ │ └── xinghuo.py │ │ ├── llm/ │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ └── openai_llm.py │ │ ├── main.py │ │ ├── pyproject.toml │ │ ├── service/ │ │ │ ├── __init__.py │ │ │ ├── impl/ │ │ │ │ ├── __init__.py │ │ │ │ ├── aiui_strategy.py │ │ │ │ ├── cbg_strategy.py │ │ │ │ ├── ragflow_strategy.py │ │ │ │ └── sparkdesk_strategy.py │ │ │ ├── rag_strategy.py │ │ │ ├── rag_strategy_factory.py │ │ │ └── rq/ │ │ │ ├── __init__.py │ │ │ └── rewrite_query.py │ │ ├── tests/ │ │ │ ├── __init__.py │ │ │ ├── domain/ │ │ │ │ ├── __init__.py │ │ │ │ ├── entity/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── chunk_dto_test.py │ │ │ │ │ └── rag_do_test.py │ │ │ │ └── response_test.py │ │ │ ├── exceptions/ │ │ │ │ ├── __init__.py │ │ │ │ └── exception_test.py │ │ │ ├── infra/ │ │ │ │ ├── __init__.py │ │ │ │ ├── aiui/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── aiui_test.py │ │ │ │ ├── desk/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── sparkdesk_test.py │ │ │ │ ├── ragflow/ │ │ │ │ │ └── __init__.py │ │ │ │ └── xinghuo/ │ │ │ │ ├── __init__.py │ │ │ │ └── xinghuo_test.py │ │ │ └── service/ │ │ │ ├── __init__.py │ │ │ └── impl/ │ │ │ ├── __init__.py │ │ │ ├── aiui_strategy_test.py │ │ │ ├── cbg_strategy_test.py │ │ │ ├── ragflow_strategy_test.py │ │ │ └── sparkdesk_strategy_test.py │ │ └── utils/ │ │ ├── __init__.py │ │ ├── file_utils.py │ │ ├── spark_signature.py │ │ └── verification.py │ ├── memory/ │ │ ├── __init__.py │ │ └── database/ │ │ ├── .gitignore │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── __init__.py │ │ ├── alembic/ │ │ │ ├── README.md │ │ │ ├── alembic.ini │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions/ │ │ │ └── 2026_02_11_1801-f2a4ce6e3198_init.py │ │ ├── api/ │ │ │ ├── __init__.py │ │ │ ├── router.py │ │ │ ├── schemas/ │ │ │ │ ├── __init__.py │ │ │ │ ├── clone_db_types.py │ │ │ │ ├── common_types.py │ │ │ │ ├── create_db_types.py │ │ │ │ ├── drop_db_types.py │ │ │ │ ├── exec_ddl_types.py │ │ │ │ ├── exec_dml_types.py │ │ │ │ ├── export_data_types.py │ │ │ │ ├── modify_db_desc_types.py │ │ │ │ └── upload_data_types.py │ │ │ └── v1/ │ │ │ ├── __init__.py │ │ │ ├── common.py │ │ │ ├── db_operator.py │ │ │ ├── exec_ddl.py │ │ │ ├── exec_dml.py │ │ │ ├── export_data.py │ │ │ └── upload_data.py │ │ ├── config.env │ │ ├── consts/ │ │ │ └── consts.py │ │ ├── domain/ │ │ │ ├── __init__.py │ │ │ ├── entity/ │ │ │ │ ├── __init__.py │ │ │ │ ├── database_meta.py │ │ │ │ ├── general.py │ │ │ │ ├── schema.py │ │ │ │ ├── schema_meta.py │ │ │ │ └── views/ │ │ │ │ ├── __init__.py │ │ │ │ └── http_resp.py │ │ │ └── models/ │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── database_meta.py │ │ │ └── schema_meta.py │ │ ├── exceptions/ │ │ │ ├── e.py │ │ │ └── error_code.py │ │ ├── main.py │ │ ├── pyproject.toml │ │ ├── repository/ │ │ │ ├── __init__.py │ │ │ └── middleware/ │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── database/ │ │ │ │ ├── __init__.py │ │ │ │ ├── database_migration.py │ │ │ │ ├── db_factory.py │ │ │ │ └── db_manager.py │ │ │ ├── factory.py │ │ │ ├── getters.py │ │ │ ├── initialize.py │ │ │ ├── manager.py │ │ │ └── mid_utils.py │ │ ├── tests/ │ │ │ ├── __init__.py │ │ │ ├── common_test.py │ │ │ ├── db_operator_test.py │ │ │ ├── exec_ddl_test.py │ │ │ ├── exec_dml_test.py │ │ │ ├── export_data_test.py │ │ │ └── upload_data_test.py │ │ └── utils/ │ │ ├── __init__.py │ │ ├── exception_util.py │ │ └── retry.py │ ├── plugin/ │ │ ├── __init__.py │ │ ├── aitools/ │ │ │ ├── .gitignore │ │ │ ├── Dockerfile │ │ │ ├── __init__.py │ │ │ ├── api/ │ │ │ │ ├── decorators/ │ │ │ │ │ ├── api_meta.py │ │ │ │ │ └── api_service.py │ │ │ │ ├── middlewares/ │ │ │ │ │ └── otlp_middleware.py │ │ │ │ ├── routes/ │ │ │ │ │ ├── endpoint_factory.py │ │ │ │ │ ├── register.py │ │ │ │ │ └── service_scanner.py │ │ │ │ └── schemas/ │ │ │ │ └── types.py │ │ │ ├── app/ │ │ │ │ └── start_server.py │ │ │ ├── common/ │ │ │ │ ├── clients/ │ │ │ │ │ ├── adapters.py │ │ │ │ │ ├── aiohttp_client.py │ │ │ │ │ ├── hooks.py │ │ │ │ │ ├── task_factory.py │ │ │ │ │ └── websockets_client.py │ │ │ │ ├── exceptions/ │ │ │ │ │ ├── error/ │ │ │ │ │ │ └── code_enums.py │ │ │ │ │ └── exceptions.py │ │ │ │ └── log/ │ │ │ │ └── logger.py │ │ │ ├── config.env │ │ │ ├── conftest.py │ │ │ ├── const/ │ │ │ │ └── const.py │ │ │ ├── main.py │ │ │ ├── pyproject.toml │ │ │ ├── pytest.ini │ │ │ ├── service/ │ │ │ │ ├── ase_image_generator/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── req_ase_ability_image_generate_service.py │ │ │ │ ├── dial_test/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── dial_test.py │ │ │ │ │ └── dial_test_client.py │ │ │ │ ├── image_understanding/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── image_understanding_service.py │ │ │ │ ├── ise/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── ise_client.py │ │ │ │ │ └── ise_evaluate_service.py │ │ │ │ ├── ocr_llm/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── req_ase_ability_ocr_service.py │ │ │ │ ├── smart_tts/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── smart_tts_service.py │ │ │ │ └── translation/ │ │ │ │ ├── __init__.py │ │ │ │ ├── translation_client.py │ │ │ │ └── translation_service.py │ │ │ ├── tests/ │ │ │ │ ├── __init__.py │ │ │ │ ├── api/ │ │ │ │ │ ├── decorators/ │ │ │ │ │ │ ├── test_api_meta.py │ │ │ │ │ │ └── test_api_service.py │ │ │ │ │ ├── routes/ │ │ │ │ │ │ ├── test_endpoint_factory.py │ │ │ │ │ │ └── test_service_scanner.py │ │ │ │ │ ├── schemas/ │ │ │ │ │ │ └── test_types.py │ │ │ │ │ └── test_api.py │ │ │ │ ├── app/ │ │ │ │ │ ├── test_main.py │ │ │ │ │ └── test_start_server.py │ │ │ │ ├── common/ │ │ │ │ │ ├── clients/ │ │ │ │ │ │ ├── test_adapters.py │ │ │ │ │ │ ├── test_hooks.py │ │ │ │ │ │ ├── test_http_client.py │ │ │ │ │ │ ├── test_task_factory.py │ │ │ │ │ │ └── test_websocket_client.py │ │ │ │ │ ├── exceptions/ │ │ │ │ │ │ ├── test_code_enums.py │ │ │ │ │ │ └── test_exceptions.py │ │ │ │ │ └── log/ │ │ │ │ │ └── test_logger.py │ │ │ │ ├── const/ │ │ │ │ │ └── test_const.py │ │ │ │ └── utils/ │ │ │ │ ├── test_aiokafka_factory.py │ │ │ │ ├── test_aiokafka_service.py │ │ │ │ ├── test_aitools_service_manager.py │ │ │ │ ├── test_config_utils.py │ │ │ │ ├── test_env_utils.py │ │ │ │ └── test_otlp_utils.py │ │ │ └── utils/ │ │ │ ├── __init__.py │ │ │ ├── aiokafka_factory.py │ │ │ ├── aiokafka_service.py │ │ │ ├── config_utils.py │ │ │ ├── env_utils.py │ │ │ ├── initialize.py │ │ │ ├── oss_utils.py │ │ │ └── otlp_utils.py │ │ ├── link/ │ │ │ ├── .gitignore │ │ │ ├── Dockerfile │ │ │ ├── __init__.py │ │ │ ├── alembic/ │ │ │ │ ├── README │ │ │ │ ├── env.py │ │ │ │ ├── script.py.mako │ │ │ │ └── versions/ │ │ │ │ └── 2026_03_06_0257-5c4f1b5ab83d_init.py │ │ │ ├── alembic.ini │ │ │ ├── api/ │ │ │ │ ├── __init__.py │ │ │ │ ├── router.py │ │ │ │ ├── schemas/ │ │ │ │ │ ├── community/ │ │ │ │ │ │ ├── deprecated/ │ │ │ │ │ │ │ └── management_schema.py │ │ │ │ │ │ └── tools/ │ │ │ │ │ │ ├── http/ │ │ │ │ │ │ │ ├── execution_schema.py │ │ │ │ │ │ │ └── management_schema.py │ │ │ │ │ │ └── mcp/ │ │ │ │ │ │ └── mcp_tools_schema.py │ │ │ │ │ └── enterprise/ │ │ │ │ │ └── extension_schema.py │ │ │ │ └── v1/ │ │ │ │ ├── community/ │ │ │ │ │ ├── deprecated/ │ │ │ │ │ │ └── management.py │ │ │ │ │ └── tools/ │ │ │ │ │ ├── http/ │ │ │ │ │ │ ├── execution.py │ │ │ │ │ │ └── management.py │ │ │ │ │ └── mcp/ │ │ │ │ │ └── mcp_tools.py │ │ │ │ └── enterprise/ │ │ │ │ └── extension.py │ │ │ ├── app/ │ │ │ │ ├── __init__.py │ │ │ │ └── start_server.py │ │ │ ├── config.env │ │ │ ├── consts/ │ │ │ │ ├── __init__.py │ │ │ │ ├── const.py │ │ │ │ └── keys/ │ │ │ │ ├── common_keys.py │ │ │ │ ├── mysql_keys.py │ │ │ │ ├── redis_keys.py │ │ │ │ ├── spark_keys.py │ │ │ │ ├── uvicorn_keys.py │ │ │ │ └── xc_utils_keys.py │ │ │ ├── domain/ │ │ │ │ ├── __init__.py │ │ │ │ ├── entity/ │ │ │ │ │ └── tool_schema.py │ │ │ │ └── models/ │ │ │ │ ├── manager.py │ │ │ │ └── utils.py │ │ │ ├── exceptions/ │ │ │ │ ├── __init__.py │ │ │ │ └── sparklink_exceptions.py │ │ │ ├── extensions/ │ │ │ │ ├── __init__.py │ │ │ │ └── database_migration.py │ │ │ ├── infra/ │ │ │ │ ├── __init__.py │ │ │ │ ├── kafka_telemetry.py │ │ │ │ ├── tool_crud/ │ │ │ │ │ └── process.py │ │ │ │ └── tool_exector/ │ │ │ │ ├── http_auth.py │ │ │ │ └── process.py │ │ │ ├── main.py │ │ │ ├── pyproject.toml │ │ │ ├── pytest.ini │ │ │ ├── service/ │ │ │ │ ├── __init__.py │ │ │ │ ├── community/ │ │ │ │ │ ├── deprecated/ │ │ │ │ │ │ └── management_server.py │ │ │ │ │ └── tools/ │ │ │ │ │ ├── http/ │ │ │ │ │ │ ├── execution_server.py │ │ │ │ │ │ └── management_server.py │ │ │ │ │ └── mcp/ │ │ │ │ │ └── mcp_server.py │ │ │ │ └── enterprise/ │ │ │ │ └── extension.py │ │ │ ├── tests/ │ │ │ │ ├── FINAL_STATUS.md │ │ │ │ ├── IMPLEMENTATION_STATUS.md │ │ │ │ ├── README.md │ │ │ │ ├── SUMMARY.md │ │ │ │ ├── __init__.py │ │ │ │ ├── conftest.py │ │ │ │ ├── integration/ │ │ │ │ │ └── __init__.py │ │ │ │ ├── test_runner.py │ │ │ │ └── unit/ │ │ │ │ ├── __init__.py │ │ │ │ ├── test_alembic_migration.py │ │ │ │ ├── test_domain_models.py │ │ │ │ ├── test_infra.py │ │ │ │ ├── test_infra_fixed.py │ │ │ │ ├── test_main.py │ │ │ │ ├── test_response_filter.py │ │ │ │ ├── test_schemas.py │ │ │ │ ├── test_schemas_fixed.py │ │ │ │ ├── test_services.py │ │ │ │ └── test_utils.py │ │ │ └── utils/ │ │ │ ├── __init__.py │ │ │ ├── errors/ │ │ │ │ └── code.py │ │ │ ├── json_schemas/ │ │ │ │ ├── read_json_schemas.py │ │ │ │ ├── schema_files/ │ │ │ │ │ ├── action_run_schema.json │ │ │ │ │ ├── create_tools_schema.json │ │ │ │ │ ├── http_run_schema.json │ │ │ │ │ ├── mcp_register_schema.json │ │ │ │ │ ├── tool_debug_schema.json │ │ │ │ │ └── update_tools_schema.json │ │ │ │ └── schema_validate.py │ │ │ ├── log/ │ │ │ │ └── logger.py │ │ │ ├── open_api_schema/ │ │ │ │ ├── common_schema.py │ │ │ │ ├── response_filter.py │ │ │ │ ├── schema_parser.py │ │ │ │ ├── schema_validate.py │ │ │ │ └── types/ │ │ │ │ └── schema_parser_types.py │ │ │ ├── security/ │ │ │ │ └── access_interceptor.py │ │ │ ├── sid/ │ │ │ │ └── sid_generator2.py │ │ │ ├── snowflake/ │ │ │ │ └── gen_snowflake.py │ │ │ └── uid/ │ │ │ └── generate_uid.py │ │ └── rpa/ │ │ ├── .flake8 │ │ ├── .gitignore │ │ ├── Dockerfile │ │ ├── __init__.py │ │ ├── api/ │ │ │ ├── __init__.py │ │ │ ├── app.py │ │ │ ├── router.py │ │ │ ├── schemas/ │ │ │ │ └── execution_schema.py │ │ │ └── v1/ │ │ │ ├── execution.py │ │ │ └── health_check.py │ │ ├── config.env │ │ ├── consts/ │ │ │ ├── __init__.py │ │ │ ├── app/ │ │ │ │ └── app_keys.py │ │ │ ├── const.py │ │ │ ├── log/ │ │ │ │ └── log_keys.py │ │ │ ├── otlp/ │ │ │ │ └── otlp_keys.py │ │ │ └── rpa/ │ │ │ └── rpa_keys.py │ │ ├── doc/ │ │ │ ├── API_EXAMPLES.md │ │ │ ├── DEPLOYMENT.md │ │ │ └── TEST_SUMMARY.md │ │ ├── errors/ │ │ │ ├── __init__.py │ │ │ └── error_code.py │ │ ├── exceptions/ │ │ │ ├── __init__.py │ │ │ └── config_exceptions.py │ │ ├── infra/ │ │ │ ├── __init__.py │ │ │ └── xiaowu/ │ │ │ └── tasks.py │ │ ├── main.py │ │ ├── pyproject.toml │ │ ├── run_tests.py │ │ ├── service/ │ │ │ ├── __init__.py │ │ │ └── xiaowu/ │ │ │ └── process.py │ │ ├── tests/ │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── conftest.py │ │ │ ├── integration/ │ │ │ │ ├── __init__.py │ │ │ │ └── test_api_integration.py │ │ │ ├── test_runner.py │ │ │ └── unit/ │ │ │ ├── __init__.py │ │ │ ├── api/ │ │ │ │ ├── schemas/ │ │ │ │ │ └── test_execution_schema.py │ │ │ │ ├── test_app.py │ │ │ │ ├── test_router.py │ │ │ │ └── v1/ │ │ │ │ ├── test_execution.py │ │ │ │ └── test_health_check.py │ │ │ ├── consts/ │ │ │ │ └── test_const.py │ │ │ ├── errors/ │ │ │ │ └── test_error_code.py │ │ │ ├── exceptions/ │ │ │ │ └── test_config_exceptions.py │ │ │ ├── infra/ │ │ │ │ └── xiaowu/ │ │ │ │ └── test_tasks.py │ │ │ ├── service/ │ │ │ │ └── xiaowu/ │ │ │ │ └── test_process.py │ │ │ ├── test_main.py │ │ │ └── utils/ │ │ │ ├── log/ │ │ │ │ └── test_logger.py │ │ │ └── urls/ │ │ │ └── test_url_util.py │ │ └── utils/ │ │ ├── __init__.py │ │ ├── log/ │ │ │ └── logger.py │ │ └── urls/ │ │ └── url_util.py │ ├── tenant/ │ │ ├── .gitkeep │ │ ├── Dockerfile │ │ ├── app/ │ │ │ └── server.go │ │ ├── config/ │ │ │ ├── config.go │ │ │ ├── config_test.go │ │ │ ├── env_loader.go │ │ │ ├── env_loader_test.go │ │ │ ├── loader.go │ │ │ ├── loader_test.go │ │ │ ├── local_loader.go │ │ │ └── local_loader_test.go │ │ ├── config.toml │ │ ├── go.mod │ │ ├── go.sum │ │ ├── internal/ │ │ │ ├── dao/ │ │ │ │ ├── app_dao.go │ │ │ │ ├── app_dao_test.go │ │ │ │ ├── auth_dao.go │ │ │ │ ├── auth_dao_test.go │ │ │ │ ├── base.go │ │ │ │ └── base_test.go │ │ │ ├── handler/ │ │ │ │ ├── app_handler.go │ │ │ │ ├── app_handler_test.go │ │ │ │ ├── auth_handler.go │ │ │ │ ├── auth_handler_test.go │ │ │ │ ├── errors.go │ │ │ │ ├── errors_test.go │ │ │ │ ├── req.go │ │ │ │ ├── req_test.go │ │ │ │ ├── resp.go │ │ │ │ ├── resp_test.go │ │ │ │ ├── router.go │ │ │ │ └── router_test.go │ │ │ ├── models/ │ │ │ │ ├── app.go │ │ │ │ └── auth.go │ │ │ └── service/ │ │ │ ├── app_service.go │ │ │ ├── app_service_test.go │ │ │ ├── auth_service.go │ │ │ ├── auth_service_test.go │ │ │ ├── base.go │ │ │ └── base_test.go │ │ ├── main.go │ │ └── tools/ │ │ ├── database/ │ │ │ ├── database.go │ │ │ └── database_test.go │ │ └── generator/ │ │ ├── app.go │ │ ├── app_test.go │ │ ├── ip.go │ │ ├── ip_test.go │ │ ├── sid.go │ │ └── sid_test.go │ └── workflow/ │ ├── .gitignore │ ├── Dockerfile │ ├── __init__.py │ ├── alembic/ │ │ ├── README.md │ │ ├── alembic.ini │ │ ├── env.py │ │ ├── script.py.mako │ │ └── versions/ │ │ └── 2026_01_23_0929-b13356244aea_init_tables.py │ ├── api/ │ │ ├── __init__.py │ │ └── v1/ │ │ ├── __init__.py │ │ ├── chat/ │ │ │ ├── __init__.py │ │ │ ├── debug.py │ │ │ ├── node_debug.py │ │ │ └── open.py │ │ ├── flow/ │ │ │ ├── __init__.py │ │ │ ├── auth.py │ │ │ ├── file.py │ │ │ └── layout.py │ │ └── router.py │ ├── cache/ │ │ ├── __init__.py │ │ ├── app.py │ │ ├── event_registry.py │ │ ├── flow.py │ │ └── license.py │ ├── config.env │ ├── configs/ │ │ ├── __init__.py │ │ └── app_config.py │ ├── consts/ │ │ ├── __init__.py │ │ ├── app_audit.py │ │ ├── comparisons.py │ │ ├── config_env.py │ │ ├── database.py │ │ ├── engine/ │ │ │ ├── __init__.py │ │ │ ├── chat_status.py │ │ │ ├── error_handler.py │ │ │ ├── model_provider.py │ │ │ ├── template.py │ │ │ ├── timeout.py │ │ │ ├── tool_type.py │ │ │ └── value_type.py │ │ ├── runtime_env.py │ │ └── tenant_publish_matrix.py │ ├── domain/ │ │ ├── __init__.py │ │ ├── entities/ │ │ │ ├── __init__.py │ │ │ ├── chat.py │ │ │ ├── compare_flow.py │ │ │ ├── flow.py │ │ │ ├── node_debug_vo.py │ │ │ └── response.py │ │ └── models/ │ │ ├── __init__.py │ │ ├── ai_app.py │ │ ├── app_source.py │ │ ├── base.py │ │ ├── flow.py │ │ ├── history.py │ │ └── license.py │ ├── engine/ │ │ ├── callbacks/ │ │ │ ├── __init__.py │ │ │ ├── callback_handler.py │ │ │ └── openai_types_sse.py │ │ ├── dsl_engine.py │ │ ├── entities/ │ │ │ ├── chains.py │ │ │ ├── file.py │ │ │ ├── history.py │ │ │ ├── msg_or_end_dep_info.py │ │ │ ├── node_entities.py │ │ │ ├── node_running_status.py │ │ │ ├── output_mode.py │ │ │ ├── private_config.py │ │ │ ├── retry_config.py │ │ │ ├── variable_pool.py │ │ │ └── workflow_dsl.py │ │ ├── node.py │ │ └── nodes/ │ │ ├── agent/ │ │ │ └── agent_node.py │ │ ├── base_node.py │ │ ├── cache_node.py │ │ ├── code/ │ │ │ ├── __init__.py │ │ │ ├── code_node.py │ │ │ └── executor/ │ │ │ ├── base_executor.py │ │ │ ├── ifly/ │ │ │ │ ├── ifly_executor.py │ │ │ │ └── ifly_executor_v2.py │ │ │ ├── langchain/ │ │ │ │ └── langchain_executor.py │ │ │ └── local/ │ │ │ └── local_executor.py │ │ ├── decision/ │ │ │ ├── decision_node.py │ │ │ ├── prompt_v1_0.py │ │ │ └── router_prompt.py │ │ ├── end/ │ │ │ └── end_node.py │ │ ├── entities/ │ │ │ ├── llm_response.py │ │ │ └── node_run_result.py │ │ ├── flow/ │ │ │ ├── __init__.py │ │ │ └── flow_node.py │ │ ├── global_variables/ │ │ │ └── global_variables_node.py │ │ ├── if_else/ │ │ │ ├── __init__.py │ │ │ └── if_else_node.py │ │ ├── iteration/ │ │ │ ├── __init__.py │ │ │ └── iteration_node.py │ │ ├── knowledge/ │ │ │ ├── adaptive_search_prompt.py │ │ │ ├── knowledge_client.py │ │ │ ├── knowledge_expert_node.py │ │ │ └── knowledge_node.py │ │ ├── knowledge_pro/ │ │ │ ├── consts.py │ │ │ └── knowledge_pro_node.py │ │ ├── llm/ │ │ │ ├── prompt_ai_personal.py │ │ │ └── spark_llm_node.py │ │ ├── mcp/ │ │ │ └── mcp_node.py │ │ ├── memory/ │ │ │ ├── __init__.py │ │ │ ├── add_node.py │ │ │ ├── base.py │ │ │ └── search_node.py │ │ ├── message/ │ │ │ ├── __init__.py │ │ │ └── message_node.py │ │ ├── params_extractor/ │ │ │ ├── __init__.py │ │ │ ├── pe_node.py │ │ │ └── prompt.py │ │ ├── pgsql/ │ │ │ ├── pgsql_client.py │ │ │ └── pgsql_node.py │ │ ├── plugin_tool/ │ │ │ ├── link_client.py │ │ │ └── plugin_node.py │ │ ├── question_answer/ │ │ │ ├── prompt.py │ │ │ └── question_answer_node.py │ │ ├── rpa/ │ │ │ └── rpa_node.py │ │ ├── start/ │ │ │ └── start_node.py │ │ ├── text_joiner/ │ │ │ ├── __init__.py │ │ │ └── text_joiner_node.py │ │ ├── util/ │ │ │ ├── __init__.py │ │ │ ├── dict_util.py │ │ │ ├── frame_processor.py │ │ │ └── prompt.py │ │ └── variable_aggregation/ │ │ ├── __init__.py │ │ └── variable_aggregation_node.py │ ├── exception/ │ │ ├── __init__.py │ │ ├── e.py │ │ └── errors/ │ │ ├── __init__.py │ │ ├── code_convert.py │ │ ├── err_code.py │ │ └── third_api_code.py │ ├── extensions/ │ │ ├── __init__.py │ │ ├── fastapi/ │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── handler/ │ │ │ │ ├── __init__.py │ │ │ │ └── validation.py │ │ │ ├── lifespan/ │ │ │ │ ├── __init__.py │ │ │ │ ├── database_migration.py │ │ │ │ ├── http_client.py │ │ │ │ └── utils.py │ │ │ └── middleware/ │ │ │ ├── __init__.py │ │ │ ├── auth.py │ │ │ └── otlp.py │ │ ├── graceful_shutdown/ │ │ │ ├── base_shutdown_event.py │ │ │ └── graceful_shutdown.py │ │ ├── middleware/ │ │ │ ├── asynchronous/ │ │ │ │ ├── base.py │ │ │ │ ├── celery_app.py │ │ │ │ ├── factory.py │ │ │ │ └── manager.py │ │ │ ├── base.py │ │ │ ├── cache/ │ │ │ │ ├── base.py │ │ │ │ ├── factory.py │ │ │ │ └── manager.py │ │ │ ├── database/ │ │ │ │ ├── factory.py │ │ │ │ ├── manager.py │ │ │ │ └── utils.py │ │ │ ├── factory.py │ │ │ ├── getters.py │ │ │ ├── initialize.py │ │ │ ├── kafka/ │ │ │ │ ├── factory.py │ │ │ │ └── manager.py │ │ │ ├── log/ │ │ │ │ ├── factory.py │ │ │ │ └── manager.py │ │ │ ├── manager.py │ │ │ ├── masdk/ │ │ │ │ ├── factory.py │ │ │ │ └── manager.py │ │ │ ├── oss/ │ │ │ │ ├── base.py │ │ │ │ ├── factory.py │ │ │ │ └── manager.py │ │ │ ├── otlp/ │ │ │ │ ├── base.py │ │ │ │ ├── factory.py │ │ │ │ └── manager.py │ │ │ └── utils.py │ │ └── otlp/ │ │ ├── __init__.py │ │ ├── log_trace/ │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── node_log.py │ │ │ └── workflow_log.py │ │ ├── metric/ │ │ │ ├── atomic_int.py │ │ │ ├── consts.py │ │ │ ├── meter.py │ │ │ └── metric.py │ │ ├── sid/ │ │ │ └── sid_generator2.py │ │ ├── trace/ │ │ │ ├── span.py │ │ │ └── trace.py │ │ └── util/ │ │ └── ip.py │ ├── infra/ │ │ ├── audit_system/ │ │ │ ├── __init__.py │ │ │ ├── audit_api/ │ │ │ │ ├── __init__.py │ │ │ │ ├── base.py │ │ │ │ ├── iflytek/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── ifly_audit_api.py │ │ │ │ └── mock/ │ │ │ │ ├── __init__.py │ │ │ │ └── mock_audit_api.py │ │ │ ├── base.py │ │ │ ├── enums.py │ │ │ ├── orchestrator.py │ │ │ ├── strategy/ │ │ │ │ ├── __init__.py │ │ │ │ ├── base_strategy.py │ │ │ │ └── text_strategy.py │ │ │ └── utils.py │ │ └── providers/ │ │ └── llm/ │ │ ├── anthropic/ │ │ │ └── anthropic_chat_llm.py │ │ ├── chat_ai.py │ │ ├── chat_ai_factory.py │ │ ├── google/ │ │ │ └── google_chat_llm.py │ │ ├── iflytek_spark/ │ │ │ ├── const.py │ │ │ ├── schemas.py │ │ │ ├── spark_chat_auth.py │ │ │ ├── spark_chat_llm.py │ │ │ └── spark_fc_llm.py │ │ ├── openai/ │ │ │ ├── const.py │ │ │ ├── openai_chat_llm.py │ │ │ └── schemas.py │ │ └── types.py │ ├── main.py │ ├── pyproject.toml │ ├── repository/ │ │ ├── flow_dao.py │ │ └── license_dao.py │ ├── service/ │ │ ├── __init__.py │ │ ├── app_service.py │ │ ├── audit_service.py │ │ ├── auth_service.py │ │ ├── chat_service.py │ │ ├── file_service.py │ │ ├── flow_service.py │ │ ├── history_service.py │ │ ├── license_service.py │ │ ├── ops_service.py │ │ └── publish_service.py │ ├── tests/ │ │ ├── __init__.py │ │ ├── engine/ │ │ │ ├── __init__.py │ │ │ ├── callbacks/ │ │ │ │ ├── __init__.py │ │ │ │ └── test_callback_handler.py │ │ │ ├── dsl/ │ │ │ │ ├── __init__.py │ │ │ │ ├── base.py │ │ │ │ ├── test_engine.py │ │ │ │ ├── test_engine_builder.py │ │ │ │ ├── test_engine_factory.py │ │ │ │ ├── test_error_handler.py │ │ │ │ ├── test_node_execution_strategies.py │ │ │ │ └── test_workflow_engine_ctx.py │ │ │ └── nodes/ │ │ │ ├── __init__.py │ │ │ ├── test_variable_aggregation_node.py │ │ │ └── util/ │ │ │ ├── __init__.py │ │ │ ├── test_frame_processor.py │ │ │ └── test_prompt.py │ │ ├── extensions/ │ │ │ ├── __init__.py │ │ │ └── fastapi/ │ │ │ ├── __init__.py │ │ │ └── test_auth.py │ │ ├── infra/ │ │ │ ├── __init__.py │ │ │ ├── audit_system/ │ │ │ │ ├── __init__.py │ │ │ │ ├── test_sentence.py │ │ │ │ └── test_text_strategy_output_review.py │ │ │ └── providers/ │ │ │ └── llm/ │ │ │ └── test_chat_ai_factory.py │ │ └── pytest.ini │ └── utils/ │ ├── __init__.py │ ├── system_workers.py │ └── validation.py ├── docker/ │ ├── astronAgent/ │ │ ├── astronRPA/ │ │ │ ├── docker-compose.yml │ │ │ └── volumes/ │ │ │ ├── atlas/ │ │ │ │ ├── atlas.hcl │ │ │ │ └── schema.hcl │ │ │ ├── mysql/ │ │ │ │ ├── init_app_market_dict_data.sql │ │ │ │ ├── init_c_atom_meta_data.sql │ │ │ │ ├── init_c_atom_meta_new_data.sql │ │ │ │ ├── init_his_data_enum_data.sql │ │ │ │ ├── init_sample_template_data.sql │ │ │ │ ├── my.cnf │ │ │ │ └── schema.sql │ │ │ └── nginx/ │ │ │ ├── default.conf │ │ │ └── lua/ │ │ │ ├── auth_handler.lua │ │ │ └── resty/ │ │ │ ├── http.lua │ │ │ ├── http_connect.lua │ │ │ └── http_headers.lua │ │ ├── casdoor/ │ │ │ ├── conf/ │ │ │ │ ├── app.conf │ │ │ │ ├── init_data.json │ │ │ │ └── init_data.json.template │ │ │ └── entrypoint.sh │ │ ├── config/ │ │ │ ├── agent/ │ │ │ │ └── config.env │ │ │ ├── aitools/ │ │ │ │ └── config.env │ │ │ ├── database/ │ │ │ │ └── config.env │ │ │ ├── knowledge/ │ │ │ │ └── config.env │ │ │ ├── link/ │ │ │ │ └── config.env │ │ │ ├── rpa/ │ │ │ │ └── config.env │ │ │ ├── tenant/ │ │ │ │ └── config.toml │ │ │ └── workflow/ │ │ │ └── config.env │ │ ├── docker-compose-auth.yml │ │ ├── docker-compose-with-auth-rpa.yaml │ │ ├── docker-compose-with-auth.yaml │ │ ├── docker-compose.yaml │ │ ├── logstash/ │ │ │ └── pipeline/ │ │ │ └── logstash.conf │ │ ├── mysql/ │ │ │ ├── console.sql │ │ │ ├── link.sql │ │ │ └── tenant.sql │ │ └── nginx/ │ │ └── nginx.conf │ └── ragflow/ │ ├── README.md │ ├── docker-compose-CN-oc9.yml │ ├── docker-compose-base.yml │ ├── docker-compose-gpu-CN-oc9.yml │ ├── docker-compose-gpu.yml │ ├── docker-compose-macos.yml │ ├── docker-compose.yml │ ├── entrypoint.sh │ ├── infinity_conf.toml │ ├── init.sql │ ├── launch_backend_service.sh │ ├── migration.sh │ ├── nginx/ │ │ ├── nginx.conf │ │ ├── proxy.conf │ │ ├── ragflow.conf │ │ └── ragflow.https.conf │ └── service_conf.yaml.template ├── docs/ │ ├── CONFIGURATION.md │ ├── CONFIGURATION_zh.md │ ├── CONTRIBUTING_CN.md │ ├── DEPLOYMENT_FAQ_zh.md │ ├── DEPLOYMENT_GUIDE.md │ ├── DEPLOYMENT_GUIDE_WITH_AUTH.md │ ├── DEPLOYMENT_GUIDE_WITH_AUTH_RPA.md │ ├── DEPLOYMENT_GUIDE_WITH_AUTH_RPA_zh.md │ ├── DEPLOYMENT_GUIDE_WITH_AUTH_zh.md │ ├── DEPLOYMENT_GUIDE_zh.md │ ├── Makefile-readme-zh.md │ ├── Makefile-readme.md │ ├── PRE-COMMIT.md │ ├── PRE-COMMIT_zh.md │ ├── PROJECT_MODULES.md │ ├── PROJECT_MODULES_zh.md │ ├── README-zh.md │ └── xinghuo_rag_tool.html ├── faq/ │ ├── config.md │ ├── features.md │ ├── models.md │ ├── setup.md │ └── troubleshooting.md ├── helm/ │ ├── README.md │ └── astron-agent/ │ ├── .helmignore │ ├── Chart.yaml │ ├── files/ │ │ ├── casdoor/ │ │ │ ├── conf/ │ │ │ │ ├── app.conf │ │ │ │ ├── init_data.json │ │ │ │ └── init_data.json.template │ │ │ └── entrypoint.sh │ │ ├── config/ │ │ │ ├── agent/ │ │ │ │ └── config.env │ │ │ ├── aitools/ │ │ │ │ └── config.env │ │ │ ├── database/ │ │ │ │ └── config.env │ │ │ ├── knowledge/ │ │ │ │ └── config.env │ │ │ ├── link/ │ │ │ │ └── config.env │ │ │ ├── rpa/ │ │ │ │ └── config.env │ │ │ ├── tenant/ │ │ │ │ └── config.toml │ │ │ └── workflow/ │ │ │ └── config.env │ │ ├── mysql/ │ │ │ ├── agent.sql │ │ │ ├── console.sql │ │ │ ├── link.sql │ │ │ ├── tenant.sql │ │ │ └── workflow.sql │ │ └── pgsql/ │ │ └── memory.sql │ ├── templates/ │ │ ├── NOTES.txt │ │ ├── _helpers.tpl │ │ ├── auth/ │ │ │ ├── casdoor-deployment.yaml │ │ │ ├── casdoor-mysql-service.yaml │ │ │ ├── casdoor-mysql-statefulset.yaml │ │ │ └── casdoor-service.yaml │ │ ├── configmaps.yaml │ │ ├── console/ │ │ │ ├── console-frontend-deployment.yaml │ │ │ ├── console-frontend-service.yaml │ │ │ ├── console-hub-deployment.yaml │ │ │ └── console-hub-service.yaml │ │ ├── core/ │ │ │ └── core-services.yaml │ │ ├── infrastructure/ │ │ │ ├── minio-service.yaml │ │ │ ├── minio-statefulset.yaml │ │ │ ├── mysql-service.yaml │ │ │ ├── mysql-statefulset.yaml │ │ │ ├── postgresql-service.yaml │ │ │ ├── postgresql-statefulset.yaml │ │ │ ├── redis-service.yaml │ │ │ └── redis-statefulset.yaml │ │ ├── ingress.yaml │ │ ├── secrets.yaml │ │ └── serviceaccount.yaml │ └── values.yaml └── makefiles/ ├── check-comments.sh ├── comment-check.mk ├── common.mk ├── core/ │ ├── detection.mk │ └── workflows.mk ├── git.mk ├── go.mk ├── java.mk ├── localci.toml ├── parse_localci.sh ├── python.mk └── typescript.mk