@metad/contracts 3.6.7 → 3.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (293) hide show
  1. package/README.md +2 -2
  2. package/index.cjs.d.ts +1 -0
  3. package/index.cjs.js +4044 -5
  4. package/index.esm.d.ts +1 -0
  5. package/index.esm.js +3911 -0
  6. package/package.json +6 -2
  7. package/src/agent/{ai-model.ts → ai-model.d.ts} +2 -2
  8. package/src/agent/graph.d.ts +167 -0
  9. package/src/agent/index.d.ts +6 -0
  10. package/src/agent/interrupt.d.ts +51 -0
  11. package/src/agent/token.d.ts +21 -0
  12. package/src/agent/utils.d.ts +19 -0
  13. package/src/agent/variables.d.ts +16 -0
  14. package/src/ai/ai-model.model.d.ts +198 -0
  15. package/src/ai/ai-provider.model.d.ts +43 -0
  16. package/src/ai/ai.model.d.ts +82 -0
  17. package/src/ai/chat-message-feedback.model.d.ts +24 -0
  18. package/src/ai/chat-message.model.d.ts +92 -0
  19. package/src/ai/chat.model.d.ts +185 -0
  20. package/src/ai/copilot-checkpoint.model.d.ts +23 -0
  21. package/src/ai/copilot-example.model.d.ts +19 -0
  22. package/src/ai/copilot-model.model.d.ts +30 -0
  23. package/src/ai/copilot-organization.model.d.ts +17 -0
  24. package/src/ai/copilot-provider.model.d.ts +31 -0
  25. package/src/ai/copilot-role.model.d.ts +43 -0
  26. package/src/ai/copilot-store.model.d.ts +29 -0
  27. package/src/ai/copilot-user.model.d.ts +27 -0
  28. package/src/ai/copilot.model.d.ts +36 -0
  29. package/src/ai/{environment.model.ts → environment.model.d.ts} +10 -12
  30. package/src/ai/feature.model.d.ts +6 -0
  31. package/src/ai/index.d.ts +44 -0
  32. package/src/ai/knowledge-doc-chunk.model.d.ts +61 -0
  33. package/src/ai/knowledge-doc-page.model.d.ts +15 -0
  34. package/src/ai/knowledge-doc.model.d.ts +222 -0
  35. package/src/ai/knowledge-pipeline.d.ts +107 -0
  36. package/src/ai/knowledge-retrieval-log.model.d.ts +10 -0
  37. package/src/ai/knowledgebase-task.model.d.ts +39 -0
  38. package/src/ai/knowledgebase.model.d.ts +174 -0
  39. package/src/ai/middleware.model.d.ts +23 -0
  40. package/src/ai/rag-web.d.ts +26 -0
  41. package/src/ai/rag.d.ts +24 -0
  42. package/src/ai/role-permissions.d.ts +13 -0
  43. package/src/ai/sandbox.d.ts +6 -0
  44. package/src/ai/skill.model.d.ts +181 -0
  45. package/src/ai/types.d.ts +77 -0
  46. package/src/ai/xpert-agent-execution.model.d.ts +96 -0
  47. package/src/ai/xpert-agent.model.d.ts +222 -0
  48. package/src/ai/xpert-project.model.d.ts +86 -0
  49. package/src/ai/xpert-table.model.d.ts +84 -0
  50. package/src/ai/xpert-task.model.d.ts +26 -0
  51. package/src/ai/xpert-template.model.d.ts +47 -0
  52. package/src/ai/xpert-tool-mcp.model.d.ts +72 -0
  53. package/src/ai/xpert-tool.model.d.ts +154 -0
  54. package/src/ai/xpert-toolset.model.d.ts +200 -0
  55. package/src/ai/xpert-workflow-task.prompt.d.ts +2 -0
  56. package/src/ai/xpert-workflow.model.d.ts +445 -0
  57. package/src/ai/xpert-workspace.model.d.ts +32 -0
  58. package/src/ai/xpert.model.d.ts +502 -0
  59. package/src/ai/xpert.utils.d.ts +84 -0
  60. package/src/analytics/ai.d.ts +73 -0
  61. package/src/analytics/approval-policy.model.d.ts +30 -0
  62. package/src/analytics/business-area-user.model.d.ts +35 -0
  63. package/src/analytics/business-area.d.ts +17 -0
  64. package/src/analytics/certification.model.d.ts +11 -0
  65. package/src/analytics/chatbi-conversation.model.d.ts +15 -0
  66. package/src/analytics/chatbi-model.model.d.ts +18 -0
  67. package/src/analytics/collection.model.d.ts +6 -0
  68. package/src/analytics/comment.model.d.ts +10 -0
  69. package/src/analytics/data-source-type.d.ts +16 -0
  70. package/src/analytics/data-source.d.ts +62 -0
  71. package/src/analytics/favorite.d.ts +14 -0
  72. package/src/analytics/features.d.ts +19 -0
  73. package/src/analytics/feed-model.d.ts +13 -0
  74. package/src/analytics/gateway.d.ts +28 -0
  75. package/src/analytics/index.d.ts +38 -0
  76. package/src/analytics/indicator-app.d.ts +44 -0
  77. package/src/analytics/{indicator-market.ts → indicator-market.d.ts} +2 -6
  78. package/src/analytics/indicator.d.ts +105 -0
  79. package/src/analytics/model-query-log.model.d.ts +41 -0
  80. package/src/analytics/model-query.d.ts +21 -0
  81. package/src/analytics/{notification-destination.ts → notification-destination.d.ts} +5 -9
  82. package/src/analytics/{permission-approval-user.model.ts → permission-approval-user.model.d.ts} +8 -10
  83. package/src/analytics/permission-approval.model.d.ts +47 -0
  84. package/src/analytics/project.model.d.ts +50 -0
  85. package/src/analytics/role-permissions.d.ts +25 -0
  86. package/src/analytics/schema.d.ts +262 -0
  87. package/src/analytics/screenshot.model.d.ts +25 -0
  88. package/src/analytics/semantic-model-entity.d.ts +38 -0
  89. package/src/analytics/semantic-model-member.d.ts +27 -0
  90. package/src/analytics/semantic-model.d.ts +183 -0
  91. package/src/analytics/{story-point.ts → story-point.d.ts} +6 -11
  92. package/src/analytics/story-template.model.d.ts +28 -0
  93. package/src/analytics/story-widget.d.ts +12 -0
  94. package/src/analytics/story.d.ts +93 -0
  95. package/src/analytics/subscription.d.ts +38 -0
  96. package/src/analytics/visit.model.d.ts +34 -0
  97. package/src/analytics/webSocket.d.ts +48 -0
  98. package/src/api-key.model.d.ts +10 -0
  99. package/src/base-entity.model.d.ts +27 -0
  100. package/src/contact.model.d.ts +41 -0
  101. package/src/core.model.d.ts +97 -0
  102. package/src/{country.model.ts → country.model.d.ts} +2 -3
  103. package/src/currency.model.d.ts +579 -0
  104. package/src/{custom-smtp.model.ts → custom-smtp.model.d.ts} +17 -21
  105. package/src/date-picker.model.d.ts +5 -0
  106. package/src/email-template.model.d.ts +39 -0
  107. package/src/email.model.d.ts +36 -0
  108. package/src/employee.model.d.ts +128 -0
  109. package/src/entity-with-members.model.d.ts +13 -0
  110. package/src/feature.model.d.ts +93 -0
  111. package/src/file-provider.d.ts +33 -0
  112. package/src/help-center-article.model.d.ts +0 -0
  113. package/src/help-center.model.d.ts +0 -0
  114. package/src/http-status.enum.d.ts +57 -0
  115. package/src/import-export.model.d.ts +36 -0
  116. package/src/index.d.ts +48 -0
  117. package/src/integration/dify.d.ts +0 -0
  118. package/src/integration/dingtalk.d.ts +2 -0
  119. package/src/integration/fastgpt.d.ts +0 -0
  120. package/src/integration/firecrawl.d.ts +2 -0
  121. package/src/integration/github.d.ts +69 -0
  122. package/src/integration/index.d.ts +4 -0
  123. package/src/integration/lark.d.ts +5 -0
  124. package/src/integration/wecom.d.ts +2 -0
  125. package/src/integration.model.d.ts +85 -0
  126. package/src/invite.model.d.ts +123 -0
  127. package/src/language.model.d.ts +19 -0
  128. package/src/organization-contact.model.d.ts +72 -0
  129. package/src/{organization-department.model.ts → organization-department.model.d.ts} +10 -16
  130. package/src/organization-language.model.d.ts +18 -0
  131. package/src/organization-projects.model.d.ts +80 -0
  132. package/src/organization-team-employee-model.d.ts +12 -0
  133. package/src/organization-team-model.d.ts +19 -0
  134. package/src/organization.model.d.ts +238 -0
  135. package/src/{password-reset.model.ts → password-reset.model.d.ts} +10 -14
  136. package/src/{plain-object.model.ts → plain-object.model.d.ts} +1 -1
  137. package/src/plugin.d.ts +21 -0
  138. package/src/role-permission.model.d.ts +61 -0
  139. package/src/role.model.d.ts +26 -0
  140. package/src/schedule.d.ts +27 -0
  141. package/src/secret-token.model.d.ts +11 -0
  142. package/src/seed.model.d.ts +37 -0
  143. package/src/storage-file.model.d.ts +40 -0
  144. package/src/tag-entity.model.d.ts +20 -0
  145. package/src/tenant.model.d.ts +40 -0
  146. package/src/tools/index.d.ts +1 -0
  147. package/src/tools/sandbox.d.ts +5 -0
  148. package/src/translation.model.d.ts +26 -0
  149. package/src/types.d.ts +245 -0
  150. package/src/user-organization.model.d.ts +24 -0
  151. package/src/user.model.d.ts +131 -0
  152. package/src/visibility.model.d.ts +6 -0
  153. package/.babelrc +0 -5
  154. package/.eslintrc.json +0 -18
  155. package/babel.config.json +0 -1
  156. package/jest.config.ts +0 -16
  157. package/project.json +0 -53
  158. package/src/agent/graph.ts +0 -275
  159. package/src/agent/index.ts +0 -5
  160. package/src/agent/token.ts +0 -23
  161. package/src/agent/utils.spec.ts +0 -283
  162. package/src/agent/utils.ts +0 -122
  163. package/src/agent/variables.ts +0 -66
  164. package/src/ai/ai-model.model.ts +0 -232
  165. package/src/ai/ai-provider.model.ts +0 -53
  166. package/src/ai/ai.model.ts +0 -87
  167. package/src/ai/chat-message-feedback.model.ts +0 -31
  168. package/src/ai/chat-message.model.ts +0 -277
  169. package/src/ai/chat.model.ts +0 -207
  170. package/src/ai/copilot-checkpoint.model.ts +0 -25
  171. package/src/ai/copilot-example.model.ts +0 -23
  172. package/src/ai/copilot-model.model.ts +0 -31
  173. package/src/ai/copilot-organization.model.ts +0 -21
  174. package/src/ai/copilot-provider.model.ts +0 -46
  175. package/src/ai/copilot-role.model.ts +0 -48
  176. package/src/ai/copilot-store.model.ts +0 -34
  177. package/src/ai/copilot-user.model.ts +0 -24
  178. package/src/ai/copilot.model.ts +0 -47
  179. package/src/ai/feature.model.ts +0 -6
  180. package/src/ai/index.ts +0 -40
  181. package/src/ai/knowledge-doc-chunk.model.ts +0 -123
  182. package/src/ai/knowledge-doc-chunk.spec.ts +0 -47
  183. package/src/ai/knowledge-doc-page.model.ts +0 -20
  184. package/src/ai/knowledge-doc.model.ts +0 -364
  185. package/src/ai/knowledge-pipeline.ts +0 -138
  186. package/src/ai/knowledge-retrieval-log.model.ts +0 -19
  187. package/src/ai/knowledgebase-task.model.ts +0 -46
  188. package/src/ai/knowledgebase.model.ts +0 -205
  189. package/src/ai/rag-web.ts +0 -54
  190. package/src/ai/rag.ts +0 -24
  191. package/src/ai/role-permissions.ts +0 -13
  192. package/src/ai/types.ts +0 -83
  193. package/src/ai/xpert-agent-execution.model.ts +0 -115
  194. package/src/ai/xpert-agent.model.ts +0 -264
  195. package/src/ai/xpert-project.model.ts +0 -103
  196. package/src/ai/xpert-table.model.ts +0 -100
  197. package/src/ai/xpert-task.model.ts +0 -32
  198. package/src/ai/xpert-template.model.ts +0 -53
  199. package/src/ai/xpert-tool-mcp.model.ts +0 -77
  200. package/src/ai/xpert-tool.model.ts +0 -216
  201. package/src/ai/xpert-toolset.model.ts +0 -220
  202. package/src/ai/xpert-workflow-task.prompt.ts +0 -71
  203. package/src/ai/xpert-workflow.model.ts +0 -502
  204. package/src/ai/xpert-workspace.model.ts +0 -42
  205. package/src/ai/xpert.model.ts +0 -637
  206. package/src/ai/xpert.utils.ts +0 -214
  207. package/src/analytics/ai.ts +0 -79
  208. package/src/analytics/approval-policy.model.ts +0 -40
  209. package/src/analytics/business-area-user.model.ts +0 -43
  210. package/src/analytics/business-area.ts +0 -20
  211. package/src/analytics/certification.model.ts +0 -12
  212. package/src/analytics/chatbi-conversation.model.ts +0 -16
  213. package/src/analytics/chatbi-model.model.ts +0 -22
  214. package/src/analytics/collection.model.ts +0 -8
  215. package/src/analytics/comment.model.ts +0 -14
  216. package/src/analytics/data-source-type.ts +0 -19
  217. package/src/analytics/data-source.ts +0 -72
  218. package/src/analytics/favorite.ts +0 -18
  219. package/src/analytics/features.ts +0 -19
  220. package/src/analytics/feed-model.ts +0 -15
  221. package/src/analytics/gateway.ts +0 -31
  222. package/src/analytics/index.ts +0 -39
  223. package/src/analytics/indicator-app.ts +0 -49
  224. package/src/analytics/indicator.ts +0 -143
  225. package/src/analytics/model-query-log.model.ts +0 -45
  226. package/src/analytics/model-query.ts +0 -22
  227. package/src/analytics/permission-approval.model.ts +0 -58
  228. package/src/analytics/project.model.ts +0 -56
  229. package/src/analytics/role-permissions.ts +0 -36
  230. package/src/analytics/schema.ts +0 -300
  231. package/src/analytics/screenshot.model.ts +0 -28
  232. package/src/analytics/semantic-model-entity.ts +0 -50
  233. package/src/analytics/semantic-model-member.ts +0 -49
  234. package/src/analytics/semantic-model.ts +0 -237
  235. package/src/analytics/story-template.model.ts +0 -34
  236. package/src/analytics/story-widget.ts +0 -15
  237. package/src/analytics/story.ts +0 -109
  238. package/src/analytics/subscription.ts +0 -43
  239. package/src/analytics/visit.model.ts +0 -39
  240. package/src/analytics/webSocket.ts +0 -53
  241. package/src/api-key.model.ts +0 -11
  242. package/src/base-entity.model.ts +0 -34
  243. package/src/contact.model.ts +0 -45
  244. package/src/core.model.ts +0 -103
  245. package/src/currency.model.ts +0 -582
  246. package/src/date-picker.model.ts +0 -5
  247. package/src/email-template.model.ts +0 -50
  248. package/src/email.model.ts +0 -46
  249. package/src/employee.model.ts +0 -199
  250. package/src/entity-with-members.model.ts +0 -16
  251. package/src/feature.model.ts +0 -108
  252. package/src/file-provider.ts +0 -37
  253. package/src/help-center-article.model.ts +0 -35
  254. package/src/help-center.model.ts +0 -33
  255. package/src/http-status.enum.ts +0 -58
  256. package/src/import-export.model.ts +0 -42
  257. package/src/index.ts +0 -60
  258. package/src/integration/dify.ts +0 -31
  259. package/src/integration/dingtalk.ts +0 -16
  260. package/src/integration/fastgpt.ts +0 -32
  261. package/src/integration/firecrawl.ts +0 -46
  262. package/src/integration/github.ts +0 -149
  263. package/src/integration/index.ts +0 -15
  264. package/src/integration/lark.ts +0 -79
  265. package/src/integration/wecom.ts +0 -16
  266. package/src/integration.model.ts +0 -119
  267. package/src/invite.model.ts +0 -144
  268. package/src/language.model.ts +0 -22
  269. package/src/organization-contact.model.ts +0 -84
  270. package/src/organization-language.model.ts +0 -24
  271. package/src/organization-projects.model.ts +0 -99
  272. package/src/organization-team-employee-model.ts +0 -14
  273. package/src/organization-team-model.ts +0 -25
  274. package/src/organization.model.ts +0 -266
  275. package/src/plugin.ts +0 -15
  276. package/src/role-permission.model.ts +0 -123
  277. package/src/role.model.ts +0 -31
  278. package/src/schedule.ts +0 -71
  279. package/src/secret-token.model.ts +0 -15
  280. package/src/seed.model.ts +0 -50
  281. package/src/storage-file.model.ts +0 -46
  282. package/src/tag-entity.model.ts +0 -23
  283. package/src/tenant.model.ts +0 -52
  284. package/src/tools/index.ts +0 -1
  285. package/src/tools/sandbox.ts +0 -5
  286. package/src/translation.model.ts +0 -37
  287. package/src/types.ts +0 -277
  288. package/src/user-organization.model.ts +0 -31
  289. package/src/user.model.ts +0 -151
  290. package/src/visibility.model.ts +0 -6
  291. package/tsconfig.json +0 -22
  292. package/tsconfig.lib.json +0 -10
  293. package/tsconfig.spec.json +0 -9
@@ -0,0 +1,92 @@
1
+ import { MessageType } from '@langchain/core/messages';
2
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
3
+ import { IChatConversation } from './chat.model';
4
+ import { LongTermMemoryTypeEnum } from './xpert.model';
5
+ import { XpertAgentExecutionStatusEnum } from './xpert-agent-execution.model';
6
+ import { JSONValue } from '../core.model';
7
+ import { IStorageFile } from '../storage-file.model';
8
+ import { TChatMessageStep, TMessageContent, TMessageContentReasoning } from '@xpert-ai/chatkit-types';
9
+ export type TSummaryJob = Record<LongTermMemoryTypeEnum, {
10
+ jobId: number | string;
11
+ status: string;
12
+ progress?: number;
13
+ memoryKey?: string;
14
+ }>;
15
+ /**
16
+ * Chat message entity type
17
+ */
18
+ export interface IChatMessage extends IBasePerTenantAndOrganizationEntityModel, Omit<Omit<CopilotBaseMessage, 'createdAt'>, 'id'> {
19
+ parent?: IChatMessage | null;
20
+ children?: IChatMessage[];
21
+ parentId?: string | null;
22
+ /**
23
+ * Files
24
+ */
25
+ attachments?: IStorageFile[];
26
+ /**
27
+ * Job of summary
28
+ */
29
+ summaryJob?: TSummaryJob;
30
+ /**
31
+ * the third-party platform's message
32
+ */
33
+ thirdPartyMessage?: any;
34
+ /**
35
+ * Step messages from tools or others
36
+ */
37
+ events?: TChatMessageStep[];
38
+ /**
39
+ * Chat conversation
40
+ */
41
+ conversation?: IChatConversation;
42
+ conversationId?: string | null;
43
+ executionId?: string;
44
+ }
45
+ /**
46
+ * @deprecated
47
+ */
48
+ export type DeprecatedMessageType = 'assistant' | 'user' | 'info' | 'component';
49
+ export type CopilotMessageType = MessageType | DeprecatedMessageType;
50
+ export type ChatMessageStatusEnum = XpertAgentExecutionStatusEnum | 'thinking' | 'reasoning' | 'answering' | 'aborted';
51
+ /**
52
+ * BaseMessage or AIMessage in Langchain.js
53
+ */
54
+ export interface CopilotBaseMessage {
55
+ id: string;
56
+ createdAt?: Date;
57
+ role: CopilotMessageType;
58
+ /**
59
+ * Status of the message:
60
+ */
61
+ status?: ChatMessageStatusEnum;
62
+ content?: string | TMessageContent;
63
+ /**
64
+ * Reasoning step messages
65
+ */
66
+ reasoning?: TMessageContentReasoning[];
67
+ /**
68
+ * Error info when status is error
69
+ */
70
+ error?: string;
71
+ }
72
+ export type CopilotChatMessage = CopilotBaseMessage & {
73
+ tool_call_id?: string;
74
+ /**
75
+ * If the message has a role of `function`, the `name` field is the name of the function.
76
+ * Otherwise, the name field should not be set.
77
+ */
78
+ name?: string;
79
+ data?: JSONValue;
80
+ messages?: Array<any>;
81
+ executionId?: string;
82
+ };
83
+ /**
84
+ * @deprecated use data attr in message (subMessages)
85
+ */
86
+ export interface CopilotMessageGroup extends CopilotBaseMessage {
87
+ messages?: CopilotChatMessage[];
88
+ }
89
+ /**
90
+ * @deprecated use content in message
91
+ */
92
+ export declare function isMessageGroup(message: CopilotBaseMessage): message is CopilotMessageGroup;
@@ -0,0 +1,185 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
2
+ import { IXpertAgentExecution } from './xpert-agent-execution.model';
3
+ import { IXpert } from './xpert.model';
4
+ import { I18nObject } from '../types';
5
+ import { CopilotChatMessage, CopilotMessageGroup, IChatMessage } from './chat-message.model';
6
+ import { IXpertAgent } from './xpert-agent.model';
7
+ import { IXpertProject } from './xpert-project.model';
8
+ import { IStorageFile } from '../storage-file.model';
9
+ import { IXpertTask } from './xpert-task.model';
10
+ import { TToolCall } from '../agent';
11
+ import { TInterrupt } from '../agent/interrupt';
12
+ export type TChatConversationOptions = {
13
+ parameters?: {
14
+ input?: string;
15
+ [key: string]: unknown;
16
+ };
17
+ knowledgebases?: string[];
18
+ toolsets?: string[];
19
+ features?: Array<'timeline' | 'sandbox' | 'files'>;
20
+ workspacePath?: string;
21
+ workspaceUrl?: string;
22
+ };
23
+ export type TChatConversationStatus = "idle" | "busy" | "interrupted" | "error";
24
+ export type TToolCallType = 'agent' | 'tool';
25
+ export type TChatFrom = 'platform' | 'webapp' | 'debugger' | 'knowledge' | 'job' | 'api' | 'feishu' | 'lark' | 'dingtalk' | 'wecom';
26
+ /**
27
+ * Operation for interrupt
28
+ */
29
+ export type TSensitiveOperation = {
30
+ messageId?: string;
31
+ tasks?: {
32
+ name: string;
33
+ interrupts: TInterrupt[];
34
+ type?: TToolCallType;
35
+ info?: {
36
+ name: string;
37
+ title?: string;
38
+ description: string;
39
+ };
40
+ parameters?: {
41
+ name: string;
42
+ title: I18nObject | string;
43
+ type: string;
44
+ description: I18nObject | string;
45
+ placeholder?: I18nObject | string;
46
+ }[];
47
+ call?: TToolCall;
48
+ agent?: IXpertAgent;
49
+ }[];
50
+ };
51
+ /**
52
+ * Chat conversation for xpert ai agent.
53
+ *
54
+ * Corresponds to the thread in the [Agent Protocol](https://github.com/langchain-ai/agent-protocol).
55
+ */
56
+ export interface IChatConversation extends IBasePerTenantAndOrganizationEntityModel {
57
+ /**
58
+ * Thread id for agent execution
59
+ */
60
+ threadId: string;
61
+ /**
62
+ * A short title summarizing the session
63
+ */
64
+ title?: string;
65
+ /**
66
+ * Current status of conversation
67
+ */
68
+ status?: TChatConversationStatus;
69
+ /**
70
+ * Options
71
+ */
72
+ options?: TChatConversationOptions;
73
+ /**
74
+ * Error message when status is error
75
+ */
76
+ error?: string;
77
+ /**
78
+ * ChatMessages in conversation
79
+ */
80
+ messages?: IChatMessage[] | null;
81
+ /**
82
+ * The last operation when interrupted
83
+ */
84
+ operation?: TSensitiveOperation;
85
+ /**
86
+ * Conversation source / user type
87
+ */
88
+ from: TChatFrom;
89
+ /**
90
+ * End anonymous user
91
+ */
92
+ fromEndUserId?: string;
93
+ /**
94
+ * Chat with Xpert
95
+ */
96
+ xpert?: IXpert;
97
+ xpertId?: string | null;
98
+ project?: IXpertProject;
99
+ projectId?: string | null;
100
+ task?: IXpertTask;
101
+ taskId?: string | null;
102
+ executions?: IXpertAgentExecution[];
103
+ /**
104
+ * Files
105
+ */
106
+ attachments?: IStorageFile[];
107
+ }
108
+ export type TChatConversationLog = IChatConversation & {
109
+ messageCount: number;
110
+ };
111
+ export type ChatMessage = {
112
+ conversationId: string;
113
+ id: string;
114
+ content: string;
115
+ };
116
+ export type ChatUserMessage = ChatMessage & {
117
+ language: string;
118
+ };
119
+ /**
120
+ * @deprecated use ChatMessageEventTypeEnum
121
+ */
122
+ export declare enum ChatGatewayEvent {
123
+ ACK = "ack",// acknowledgment for received message
124
+ ConversationCreated = "conversation_created",
125
+ Message = "message",
126
+ MessageStream = "message_stream",
127
+ StepStart = "step_start",
128
+ StepEnd = "step_end",
129
+ ToolStart = "tool_start",
130
+ ToolEnd = "tool_end",
131
+ ChainStart = "chain_start",
132
+ ChainEnd = "chain_end",
133
+ CancelChain = "cancel_chain",
134
+ ChainAborted = "chain_aborted",
135
+ Error = "error",
136
+ Agent = "agent"
137
+ }
138
+ /**
139
+ * @deprecated use ChatMessageEventTypeEnum
140
+ */
141
+ export type ChatGatewayMessage = {
142
+ organizationId?: string;
143
+ xpert?: {
144
+ id: string;
145
+ knowledgebases?: string[];
146
+ toolsets: string[] | null;
147
+ };
148
+ } & ({
149
+ event: ChatGatewayEvent.CancelChain;
150
+ data: {
151
+ conversationId: string;
152
+ };
153
+ } | {
154
+ event: ChatGatewayEvent.ChainAborted;
155
+ data: {
156
+ conversationId: string;
157
+ id?: string;
158
+ };
159
+ } | {
160
+ event: ChatGatewayEvent.ConversationCreated;
161
+ data: IChatConversation;
162
+ } | {
163
+ event: ChatGatewayEvent.MessageStream;
164
+ data: ChatUserMessage;
165
+ } | {
166
+ event: ChatGatewayEvent.ToolStart | ChatGatewayEvent.ToolEnd;
167
+ data: CopilotMessageGroup | CopilotMessageGroup[];
168
+ } | {
169
+ event: ChatGatewayEvent.ChainStart | ChatGatewayEvent.ChainEnd;
170
+ data: {
171
+ id: string;
172
+ };
173
+ } | {
174
+ event: ChatGatewayEvent.StepStart | ChatGatewayEvent.StepEnd;
175
+ data: CopilotChatMessage;
176
+ } | {
177
+ event: ChatGatewayEvent.Message | ChatGatewayEvent.Error;
178
+ data: CopilotChatMessage;
179
+ } | {
180
+ event: ChatGatewayEvent.Agent;
181
+ data: {
182
+ id: string;
183
+ message: CopilotChatMessage;
184
+ };
185
+ });
@@ -0,0 +1,23 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
2
+ /**
3
+ * Checkpoints for copilot, for langgraph framework
4
+ */
5
+ export interface ICopilotCheckpoint extends IBasePerTenantAndOrganizationEntityModel {
6
+ thread_id: string;
7
+ checkpoint_ns: string;
8
+ checkpoint_id: string;
9
+ parent_id?: string;
10
+ type?: string;
11
+ checkpoint: Uint8Array;
12
+ metadata: Uint8Array;
13
+ }
14
+ export interface ICopilotCheckpointWrites extends IBasePerTenantAndOrganizationEntityModel {
15
+ thread_id: string;
16
+ checkpoint_ns: string;
17
+ checkpoint_id: string;
18
+ task_id?: string;
19
+ idx?: number;
20
+ channel?: string;
21
+ type?: string;
22
+ value: Uint8Array;
23
+ }
@@ -0,0 +1,19 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
2
+ import { AiProvider } from './ai.model';
3
+ import { IXpert } from './xpert.model';
4
+ /**
5
+ * Examples for copilot, which is used to few shot user question
6
+ */
7
+ export interface ICopilotKnowledge extends IBasePerTenantAndOrganizationEntityModel {
8
+ provider?: AiProvider | string;
9
+ /**
10
+ * The name of xpert (copilot type)
11
+ */
12
+ role?: string;
13
+ command?: string;
14
+ input?: string;
15
+ output?: string;
16
+ vector?: boolean;
17
+ xpert?: IXpert;
18
+ xpertId?: string;
19
+ }
@@ -0,0 +1,30 @@
1
+ import { AiModelTypeEnum } from '../agent';
2
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
3
+ import { ICopilot } from './copilot.model';
4
+ export interface ICopilotModel extends TCopilotModel, IBasePerTenantAndOrganizationEntityModel {
5
+ }
6
+ export type TCopilotModel = {
7
+ /**
8
+ * Use a separate copilot
9
+ */
10
+ copilot?: ICopilot;
11
+ copilotId?: string;
12
+ /**
13
+ * Referenced copilot model if not using a separate copilot
14
+ */
15
+ referencedModel?: ICopilotModel;
16
+ referencedId?: string;
17
+ modelType?: AiModelTypeEnum;
18
+ model?: string;
19
+ /**
20
+ * Details config for ai model
21
+ */
22
+ options?: TCopilotModelOptions;
23
+ };
24
+ export type TCopilotModelOptions = {
25
+ /**
26
+ * Max input context size of selected model
27
+ */
28
+ context_size?: number;
29
+ [key: string]: any;
30
+ };
@@ -0,0 +1,17 @@
1
+ import { IBasePerTenantEntityModel } from '../base-entity.model';
2
+ import { IOrganization } from '../organization.model';
3
+ import { AiProvider } from './ai.model';
4
+ import { ICopilot, TCopilotTokenUsage } from './copilot.model';
5
+ /**
6
+ * Organization token usage of global copilot
7
+ */
8
+ export interface ICopilotOrganization extends IBasePerTenantEntityModel, TCopilotTokenUsage {
9
+ organizationId?: string;
10
+ organization?: IOrganization;
11
+ copilotId?: string;
12
+ copilot?: ICopilot;
13
+ provider?: AiProvider | string;
14
+ model?: string;
15
+ tokenTotalUsed?: number;
16
+ priceTotalUsed?: number;
17
+ }
@@ -0,0 +1,31 @@
1
+ import { AiModelTypeEnum } from '../agent';
2
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
3
+ import { IAiProviderEntity } from './ai-model.model';
4
+ import { ICopilot } from './copilot.model';
5
+ export interface ICopilotProvider extends IBasePerTenantAndOrganizationEntityModel {
6
+ providerName?: string;
7
+ providerType?: string;
8
+ credentials?: Record<string, any>;
9
+ isValid?: boolean;
10
+ lastUsed?: Date;
11
+ quotaType?: string;
12
+ quotaLimit?: number;
13
+ quotaUsed?: number;
14
+ /**
15
+ */
16
+ options?: any;
17
+ copilot?: ICopilot;
18
+ copilotId?: string;
19
+ models?: ICopilotProviderModel[];
20
+ provider?: IAiProviderEntity;
21
+ }
22
+ export interface ICopilotProviderModel extends IBasePerTenantAndOrganizationEntityModel {
23
+ providerName?: string;
24
+ modelName?: string;
25
+ modelType?: AiModelTypeEnum;
26
+ modelProperties?: Record<string, any>;
27
+ isValid?: boolean;
28
+ provider?: ICopilotProvider;
29
+ providerId?: string;
30
+ }
31
+ export type TCopilotProviderPublicDto = Omit<ICopilotProvider, 'credentials'>;
@@ -0,0 +1,43 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
2
+ import { IXpertToolset } from './xpert-toolset.model';
3
+ import { IKnowledgebase } from './knowledgebase.model';
4
+ /**
5
+ * @deprecated use Xpert
6
+ *
7
+ * Copilot role, business role for the copilot
8
+ */
9
+ export interface ICopilotRole extends IBasePerTenantAndOrganizationEntityModel {
10
+ name: string;
11
+ title?: string;
12
+ titleCN?: string;
13
+ description?: string;
14
+ /**
15
+ * 系统提示语
16
+ */
17
+ prompt?: string;
18
+ /**
19
+ * 对话开场白
20
+ */
21
+ starters?: string[];
22
+ active?: boolean;
23
+ avatar?: string;
24
+ toolsets?: IXpertToolset[];
25
+ /**
26
+ * More configuration
27
+ */
28
+ options?: TCopilotRoleOptions;
29
+ knowledgebases?: IKnowledgebase[];
30
+ }
31
+ /**
32
+ * @deprecated use XpertRole
33
+ */
34
+ export type TCopilotRoleOptions = {
35
+ context?: Record<string, any>;
36
+ toolsets: {
37
+ [id: string]: {
38
+ [tool: string]: {
39
+ defaultArgs: Record<string, any>;
40
+ };
41
+ };
42
+ };
43
+ };
@@ -0,0 +1,29 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
2
+ export interface ICopilotStore extends TCopilotStore, IBasePerTenantAndOrganizationEntityModel {
3
+ }
4
+ export interface ICopilotStoreVector extends TCopilotStoreVector, IBasePerTenantAndOrganizationEntityModel {
5
+ }
6
+ export type TCopilotStore = {
7
+ prefix: string;
8
+ key?: string;
9
+ value: any;
10
+ };
11
+ export type TCopilotStoreVector = {
12
+ prefix: string;
13
+ key: string;
14
+ field_name: any;
15
+ embedding: number[];
16
+ };
17
+ export declare const MEMORY_QA_PROMPT = "Summarize the experience of the above conversation and output a short question and answer.";
18
+ export declare const MEMORY_PROFILE_PROMPT = "Extract new user profile information from the above conversation in one short sentence. If no new information is available, return nothing.";
19
+ export type TMemory = {
20
+ memoryId?: string;
21
+ };
22
+ export type TMemoryUserProfile = TMemory & {
23
+ profile: string;
24
+ context?: string;
25
+ };
26
+ export type TMemoryQA = TMemory & {
27
+ question: string;
28
+ answer: string;
29
+ };
@@ -0,0 +1,27 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
2
+ import { IOrganization } from '../organization.model';
3
+ import { IUser } from '../user.model';
4
+ import { AiProvider } from './ai.model';
5
+ import { ICopilot, TCopilotTokenUsage } from './copilot.model';
6
+ export declare const USAGE_HOUR_FORMAT = "yyyy-MM-dd HH";
7
+ /**
8
+ *
9
+ */
10
+ export interface ICopilotUser extends IBasePerTenantAndOrganizationEntityModel, TCopilotTokenUsage {
11
+ orgId?: string;
12
+ org?: IOrganization;
13
+ copilotId?: string;
14
+ copilot?: ICopilot;
15
+ userId?: string;
16
+ user?: IUser;
17
+ xpertId?: string;
18
+ /**
19
+ * Usage hour in format 'yyyy-MM-dd HH' {@link USAGE_HOUR_FORMAT}
20
+ */
21
+ usageHour: string;
22
+ threadId: string;
23
+ provider?: AiProvider | string;
24
+ model?: string;
25
+ tokenTotalUsed?: number;
26
+ priceTotalUsed?: number;
27
+ }
@@ -0,0 +1,36 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
2
+ import { ICopilotModel } from './copilot-model.model';
3
+ import { ICopilotProvider } from './copilot-provider.model';
4
+ export interface ICopilot extends IBasePerTenantAndOrganizationEntityModel {
5
+ name?: string;
6
+ role: AiProviderRole;
7
+ enabled?: boolean;
8
+ showTokenizer?: boolean;
9
+ /**
10
+ * Balance of Token
11
+ */
12
+ tokenBalance?: number;
13
+ /**
14
+ * Details config for openai api
15
+ */
16
+ options?: any;
17
+ modelProvider?: ICopilotProvider;
18
+ copilotModel?: ICopilotModel;
19
+ usage?: TCopilotTokenUsage;
20
+ }
21
+ /**
22
+ * The order of priority is: `Embedding`, `Secondary`, `Primary`
23
+ */
24
+ export declare enum AiProviderRole {
25
+ Primary = "primary",
26
+ Secondary = "secondary",
27
+ Embedding = "embedding",
28
+ Reasoning = "reasoning"
29
+ }
30
+ export type TCopilotTokenUsage = {
31
+ tokenLimit?: number;
32
+ priceLimit?: number;
33
+ tokenUsed?: number;
34
+ priceUsed?: number;
35
+ currency?: string;
36
+ };
@@ -1,18 +1,16 @@
1
- import { IBasePerWorkspaceEntityModel } from "./xpert-workspace.model"
2
-
1
+ import { IBasePerWorkspaceEntityModel } from "./xpert-workspace.model";
3
2
  export type TEnvironmentVariable = {
4
- name: string
5
- value: string
6
- type: 'default' | 'secret'
3
+ name: string;
4
+ value: string;
5
+ type: 'default' | 'secret';
7
6
  /**
8
7
  * Has owner, private variable
9
8
  */
10
- owner?: string
11
- }
12
-
9
+ owner?: string;
10
+ };
13
11
  export interface IEnvironment extends IBasePerWorkspaceEntityModel {
14
- name: string
15
- isDefault?: boolean
16
- isArchived?: boolean
17
- variables: TEnvironmentVariable[]
12
+ name: string;
13
+ isDefault?: boolean;
14
+ isArchived?: boolean;
15
+ variables: TEnvironmentVariable[];
18
16
  }
@@ -0,0 +1,6 @@
1
+ export declare enum AiFeatureEnum {
2
+ FEATURE_COPILOT = "FEATURE_COPILOT",
3
+ FEATURE_COPILOT_KNOWLEDGEBASE = "FEATURE_COPILOT_KNOWLEDGEBASE",
4
+ FEATURE_COPILOT_CHAT = "FEATURE_COPILOT_CHAT",
5
+ FEATURE_XPERT = "FEATURE_XPERT"
6
+ }
@@ -0,0 +1,44 @@
1
+ export * from '@xpert-ai/chatkit-types';
2
+ export * from './ai-model.model';
3
+ export * from './ai.model';
4
+ export * from './chat.model';
5
+ export * from './chat-message.model';
6
+ export * from './chat-message-feedback.model';
7
+ export * from './copilot-checkpoint.model';
8
+ export * from './copilot-example.model';
9
+ export * from './copilot-model.model';
10
+ export * from './copilot-organization.model';
11
+ export * from './copilot-provider.model';
12
+ export * from './copilot-store.model';
13
+ export * from './copilot-user.model';
14
+ export * from './copilot.model';
15
+ export * from './feature.model';
16
+ export * from './rag';
17
+ export * from './rag-web';
18
+ export * from './knowledgebase.model';
19
+ export * from './knowledge-doc.model';
20
+ export * from './knowledge-doc-page.model';
21
+ export * from './role-permissions';
22
+ export * from './xpert-agent-execution.model';
23
+ export * from './xpert-agent.model';
24
+ export * from './xpert-tool.model';
25
+ export * from './xpert-toolset.model';
26
+ export * from './xpert-workspace.model';
27
+ export * from './xpert-table.model';
28
+ export * from './xpert.model';
29
+ export * from './xpert.utils';
30
+ export * from './types';
31
+ export * from './xpert-template.model';
32
+ export * from './xpert-task.model';
33
+ export * from './xpert-workflow.model';
34
+ export * from './xpert-workflow-task.prompt';
35
+ export * from './xpert-tool-mcp.model';
36
+ export * from './xpert-project.model';
37
+ export * from './environment.model';
38
+ export * from './knowledgebase-task.model';
39
+ export * from './knowledge-pipeline';
40
+ export * from './knowledge-retrieval-log.model';
41
+ export * from './knowledge-doc-chunk.model';
42
+ export * from './skill.model';
43
+ export * from './middleware.model';
44
+ export * from './sandbox';
@@ -0,0 +1,61 @@
1
+ import { DocumentInterface } from '@langchain/core/documents';
2
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
3
+ import { IKnowledgeDocument } from './knowledge-doc.model';
4
+ import { IKnowledgebase } from './knowledgebase.model';
5
+ export type TDocumentAsset = {
6
+ type: 'image' | 'video' | 'audio' | 'file';
7
+ url: string;
8
+ filePath: string;
9
+ };
10
+ export interface IDocChunkMetadata {
11
+ chunkId: string;
12
+ parentId?: string | null;
13
+ children?: DocumentInterface<IDocChunkMetadata>[];
14
+ knowledgeId?: string;
15
+ chunkIndex?: number;
16
+ enabled?: boolean;
17
+ /**
18
+ * Default to 'text'. Indicates the original media type of the chunk.
19
+ * @default text
20
+ */
21
+ mediaType?: 'text' | 'image' | 'video' | 'audio';
22
+ /**
23
+ * Associated assets like images, videos, etc.
24
+ */
25
+ assets?: TDocumentAsset[];
26
+ /**
27
+ * Whether the chunk is represented as a vector in the vector store
28
+ */
29
+ isVector?: boolean;
30
+ score?: number;
31
+ relevanceScore?: number;
32
+ tokens?: number;
33
+ [key: string]: any;
34
+ }
35
+ /**
36
+ * Segmented chunk of a knowledge document
37
+ */
38
+ export interface IKnowledgeDocumentChunk<Metadata extends IDocChunkMetadata = any> extends DocumentInterface<Metadata>, IBasePerTenantAndOrganizationEntityModel {
39
+ documentId?: string;
40
+ document?: IKnowledgeDocument;
41
+ knowledgebaseId?: string;
42
+ knowledgebase?: IKnowledgebase;
43
+ parent?: IKnowledgeDocumentChunk<Metadata>;
44
+ children?: IKnowledgeDocumentChunk<Metadata>[];
45
+ }
46
+ /**
47
+ * Build a hierarchical tree structure from a flat list of DocumentInterface objects,
48
+ * and
49
+ *
50
+ * @template Metadata - Type of metadata, defaults to IDocChunkMetadata
51
+ * @param documents - A flat array of DocumentInterface objects
52
+ * @returns the hierarchical tree (root-level DocumentInterface[])
53
+ */
54
+ export declare function buildChunkTree<Metadata extends IDocChunkMetadata = IDocChunkMetadata>(documents: DocumentInterface<Metadata>[]): DocumentInterface<Metadata>[];
55
+ /**
56
+ * Find all leaf nodes (nodes without children).
57
+ *
58
+ * @param roots
59
+ * @returns
60
+ */
61
+ export declare function collectTreeLeaves(roots: IKnowledgeDocumentChunk[]): IKnowledgeDocumentChunk<any>[];