@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,181 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from "../base-entity.model";
2
+ import { I18nObject, IconDefinition } from "../types";
3
+ import { JsonSchemaObjectType } from "./types";
4
+ import { IWorkflowNode, WorkflowNodeTypeEnum } from "./xpert-workflow.model";
5
+ import { IBasePerWorkspaceEntityModel } from "./xpert-workspace.model";
6
+ export type SkillId = string;
7
+ export interface SkillMetadata {
8
+ name: string;
9
+ displayName?: I18nObject;
10
+ version: string;
11
+ summary?: I18nObject;
12
+ description?: I18nObject;
13
+ tags?: string[];
14
+ author?: {
15
+ name: string;
16
+ email?: string;
17
+ org?: string;
18
+ };
19
+ license?: string;
20
+ visibility: 'private' | 'team' | 'tenant' | 'public';
21
+ categories?: string[];
22
+ runtime?: {
23
+ entry?: string;
24
+ language?: 'js' | 'py' | 'bash';
25
+ permissions?: string[];
26
+ tools?: string[];
27
+ };
28
+ mcp?: {
29
+ servers?: string[];
30
+ };
31
+ }
32
+ export interface SkillResourcesIndex {
33
+ files: Array<{
34
+ path: string;
35
+ kind: 'script' | 'template' | 'doc' | 'asset';
36
+ hash: string;
37
+ size: number;
38
+ }>;
39
+ chunks?: Array<{
40
+ id: string;
41
+ path: string;
42
+ summary: string;
43
+ tokens: number;
44
+ }>;
45
+ }
46
+ export interface TSkillPackage {
47
+ metadata: SkillMetadata;
48
+ instructions: {
49
+ system?: string;
50
+ developer?: string;
51
+ examples?: Array<{
52
+ user: string;
53
+ assistant: string;
54
+ }>;
55
+ guidelines?: string[];
56
+ };
57
+ resources?: SkillResourcesIndex;
58
+ abac?: {
59
+ owners: string[];
60
+ readers: string[];
61
+ writers: string[];
62
+ policies?: any;
63
+ };
64
+ signatures?: string[];
65
+ provenance?: any;
66
+ }
67
+ /**
68
+ * 表示一个仓库(如 anthropics/skills)
69
+ */
70
+ export interface ISkillRepository<O = Record<string, any>, C = Record<string, any>> extends IBasePerTenantAndOrganizationEntityModel {
71
+ name: string;
72
+ provider: string;
73
+ /**
74
+ * Provider credentials such as GitHub tokens
75
+ */
76
+ credentials?: C;
77
+ /**
78
+ * Options configured using the strategy's configSchema
79
+ */
80
+ options?: O;
81
+ lastSyncAt?: string;
82
+ deletedAt?: Date;
83
+ }
84
+ /**
85
+ * 仓库同步扫描得到的技能索引(每个技能目录一条)
86
+ */
87
+ export interface ISkillRepositoryIndex extends IBasePerTenantAndOrganizationEntityModel {
88
+ repositoryId: string;
89
+ repository?: ISkillRepository;
90
+ skillPath: string;
91
+ skillId: string;
92
+ name?: string;
93
+ description?: string;
94
+ license?: string;
95
+ tags?: string[];
96
+ version?: string;
97
+ resources?: any[];
98
+ deletedAt?: Date;
99
+ }
100
+ /**
101
+ * 安装后的技能包主记录(skill.yaml)
102
+ */
103
+ export interface ISkillPackage extends IBasePerWorkspaceEntityModel, TSkillPackage {
104
+ skillIndexId?: SkillId;
105
+ skillIndex?: ISkillRepositoryIndex;
106
+ name?: any;
107
+ visibility: 'private' | 'team' | 'tenant';
108
+ packagePath?: string;
109
+ }
110
+ /**
111
+ * 技能的版本(1个 Skill 多版本共存)
112
+ */
113
+ export interface ISkillVersion extends IBasePerWorkspaceEntityModel {
114
+ packageId: string;
115
+ version: string;
116
+ metadata: any;
117
+ instructions: any;
118
+ installedAt?: string;
119
+ }
120
+ /**
121
+ * 技能资源文件(scripts/templates/assets)记录
122
+ */
123
+ export interface ISkillResource extends IBasePerWorkspaceEntityModel {
124
+ versionId: string;
125
+ path: string;
126
+ type: 'script' | 'template' | 'asset' | 'doc';
127
+ hash?: string;
128
+ size?: number;
129
+ meta?: any;
130
+ }
131
+ /**
132
+ * 租户/组织/团队/用户安装行为记录
133
+ */
134
+ export interface ISkillInstallation extends IBasePerTenantAndOrganizationEntityModel {
135
+ versionId: string;
136
+ installedBy: string;
137
+ visibility: 'private' | 'team' | 'tenant';
138
+ targetScope?: string;
139
+ status: 'pending' | 'installed' | 'failed';
140
+ }
141
+ /**
142
+ * 技能安装过程中详细日志
143
+ */
144
+ export interface ISkillInstallLog extends IBasePerTenantAndOrganizationEntityModel {
145
+ installationId: string;
146
+ level: 'info' | 'warn' | 'error';
147
+ message: string;
148
+ timestamp: string;
149
+ }
150
+ /**
151
+ * 技能运行期审计日志
152
+ */
153
+ export interface ISkillAuditLog extends IBasePerTenantAndOrganizationEntityModel {
154
+ skillId: string;
155
+ versionId: string;
156
+ sessionId: string;
157
+ eventType: string;
158
+ metadata: any;
159
+ }
160
+ export type TSkillSourceMeta = {
161
+ /**
162
+ * Provider name, e.g. github / git / zip / marketplace
163
+ */
164
+ name: string;
165
+ label: I18nObject;
166
+ icon?: IconDefinition;
167
+ description?: I18nObject;
168
+ /**
169
+ * Optional configuration schema for frontend forms
170
+ */
171
+ configSchema?: JsonSchemaObjectType;
172
+ /**
173
+ * Credential schema for source authentication
174
+ */
175
+ credentialSchema?: JsonSchemaObjectType;
176
+ };
177
+ export interface IWFNSkill extends IWorkflowNode {
178
+ type: WorkflowNodeTypeEnum.SKILL;
179
+ skills?: string[];
180
+ }
181
+ export declare function genXpertSkillKey(): string;
@@ -0,0 +1,77 @@
1
+ import { JsonSchema7TypeUnion } from "zod-to-json-schema";
2
+ import { I18nObject, TSelectOption } from "../types";
3
+ import { TXpertAttachmentType, XpertParameterTypeEnum } from "./xpert.model";
4
+ export type TErrorHandling = {
5
+ type?: null | 'defaultValue' | 'failBranch';
6
+ defaultValue?: {
7
+ content?: string;
8
+ } & Record<string, any>;
9
+ failBranch?: string;
10
+ };
11
+ export declare enum ApiAuthType {
12
+ /**
13
+ * Enum class for api provider auth type.
14
+ */
15
+ NONE = "none",
16
+ API_KEY = "api_key",
17
+ BASIC = "basic"
18
+ }
19
+ /**
20
+ * Reference variable (parameter)
21
+ */
22
+ export type TXpertRefParameter = {
23
+ type?: XpertParameterTypeEnum;
24
+ name: string;
25
+ optional?: boolean;
26
+ /**
27
+ * Referencing other variable
28
+ */
29
+ variable?: string;
30
+ };
31
+ /**
32
+ * Embedding status of an entity, such as an bi indicator or kb document.
33
+ */
34
+ export declare enum EmbeddingStatusEnum {
35
+ PROCESSING = "processing",
36
+ SUCCESS = "success",
37
+ FAILED = "failed",
38
+ REQUIRED = "required"
39
+ }
40
+ export declare const Attachment_Type_Options: TSelectOption<string, TXpertAttachmentType>[];
41
+ type JsonSchema7Meta = {
42
+ title?: I18nObject;
43
+ default?: any;
44
+ description?: I18nObject;
45
+ markdownDescription?: I18nObject;
46
+ /**
47
+ * UI schema extensions
48
+ */
49
+ 'x-ui'?: {
50
+ /**
51
+ * UI component variant, or custom component name
52
+ */
53
+ component?: 'textarea' | 'select' | 'radio' | 'checkbox' | 'switch' | 'password' | string;
54
+ /**
55
+ * UI component display span (for grid layouts)
56
+ */
57
+ span?: number;
58
+ /**
59
+ * Additional inputs for the Custom UI component
60
+ */
61
+ inputs?: Record<string, unknown>;
62
+ /**
63
+ * Whether this component supports selecting LangGraph state variables
64
+ */
65
+ variable?: boolean;
66
+ enumLabels?: Record<string, I18nObject | string>;
67
+ styles?: Record<string, string>;
68
+ };
69
+ };
70
+ export type JsonSchemaObjectType = {
71
+ type: "object";
72
+ properties: Record<string, JsonSchema7Type>;
73
+ additionalProperties?: boolean | JsonSchema7Type;
74
+ required?: string[];
75
+ };
76
+ type JsonSchema7Type = (JsonSchema7TypeUnion | JsonSchemaObjectType) & JsonSchema7Meta;
77
+ export {};
@@ -0,0 +1,96 @@
1
+ import { StoredMessage } from '@langchain/core/messages';
2
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
3
+ import { IXpert, TXpertTeamNodeType } from './xpert.model';
4
+ import { IXpertAgent } from './xpert-agent.model';
5
+ import { TSensitiveOperation } from './chat.model';
6
+ import { WorkflowNodeTypeEnum } from './xpert-workflow.model';
7
+ export type TXpertExecution = {
8
+ category?: TXpertTeamNodeType;
9
+ type?: WorkflowNodeTypeEnum | string;
10
+ title?: string;
11
+ inputs?: any;
12
+ outputs?: any;
13
+ status?: XpertAgentExecutionStatusEnum;
14
+ error?: string;
15
+ elapsedTime?: number;
16
+ threadId?: string;
17
+ checkpointNs?: string;
18
+ checkpointId?: string;
19
+ channelName?: string;
20
+ parent_thread_id?: string;
21
+ /**
22
+ * Include workflow node key
23
+ */
24
+ agentKey?: string;
25
+ predecessor?: string;
26
+ xpert?: IXpert;
27
+ xpertId?: string;
28
+ parentId?: string;
29
+ };
30
+ /**
31
+ * Corresponds to the run in the [Agent Protocol](https://github.com/langchain-ai/agent-protocol).
32
+ */
33
+ export type TXpertAgentExecution = TXpertExecution & {
34
+ /**
35
+ * Total token usage of chat model
36
+ */
37
+ tokens?: number;
38
+ /**
39
+ * Token usage of embedding
40
+ */
41
+ embedTokens?: number;
42
+ metadata?: TAgentExecutionMetadata;
43
+ /**
44
+ * Latency of response from provider (s)
45
+ */
46
+ responseLatency?: number;
47
+ totalPrice?: number;
48
+ currency?: string;
49
+ inputTokens?: number;
50
+ inputUnitPrice?: number;
51
+ inputPriceUnit?: number;
52
+ outputTokens?: number;
53
+ outputUnitPrice?: number;
54
+ outputPriceUnit?: number;
55
+ /**
56
+ * Latest operation when interrupted
57
+ */
58
+ operation?: TSensitiveOperation;
59
+ messages?: StoredMessage[];
60
+ agent?: IXpertAgent;
61
+ totalTokens?: number;
62
+ /**
63
+ * Summary of conversation
64
+ */
65
+ summary?: string;
66
+ };
67
+ /**
68
+ * Execution of agent or workflow nodes.
69
+ *
70
+ * Corresponds to the run in the [Agent Protocol](https://github.com/langchain-ai/agent-protocol).
71
+ */
72
+ export interface IXpertAgentExecution extends IBasePerTenantAndOrganizationEntityModel, TXpertAgentExecution {
73
+ subExecutions?: IXpertAgentExecution[];
74
+ runningExecution?: IXpertAgentExecution;
75
+ }
76
+ /**
77
+ * Corresponds to the status of Run in [Agent Protocol](https://github.com/langchain-ai/agent-protocol).
78
+ */
79
+ export declare enum XpertAgentExecutionStatusEnum {
80
+ RUNNING = "running",
81
+ SUCCESS = "success",
82
+ ERROR = "error",
83
+ PENDING = "pending",
84
+ TIMEOUT = "timeout",
85
+ INTERRUPTED = "interrupted"
86
+ }
87
+ export type TAgentExecutionMetadata = {
88
+ /**
89
+ * AI model provider
90
+ */
91
+ provider: string;
92
+ /**
93
+ * AI Model
94
+ */
95
+ model: string;
96
+ };
@@ -0,0 +1,222 @@
1
+ import { STATE_VARIABLE_HUMAN, TChatRequestHuman, TInterruptCommand } from '@xpert-ai/chatkit-types';
2
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
3
+ import { ICopilotModel, TCopilotModel } from './copilot-model.model';
4
+ import { IKnowledgebase, TKBRecallParams } from './knowledgebase.model';
5
+ import { I18nObject, TAvatar } from '../types';
6
+ import { IXpertToolset } from './xpert-toolset.model';
7
+ import { IXpert, TXpertParameter } from './xpert.model';
8
+ import { TVariableAssigner } from './xpert-workflow.model';
9
+ import { TErrorHandling } from './types';
10
+ export type TXpertAgent = {
11
+ key: string;
12
+ name?: string;
13
+ title?: string;
14
+ description?: string;
15
+ avatar?: TAvatar;
16
+ /**
17
+ * System prompt
18
+ */
19
+ prompt?: string;
20
+ /**
21
+ * Prompt templates (ai or human)
22
+ */
23
+ promptTemplates?: TAgentPromptTemplate[];
24
+ /**
25
+ * Input parameters for agent
26
+ */
27
+ parameters?: TXpertParameter[];
28
+ /**
29
+ * Output variables of agent
30
+ */
31
+ outputVariables?: TAgentOutputVariable[];
32
+ /**
33
+ * More configuration
34
+ */
35
+ options?: TXpertAgentOptions;
36
+ /**
37
+ * This is the xpert's primary agent
38
+ */
39
+ xpert?: IXpert;
40
+ xpertId?: string;
41
+ /**
42
+ * Copilot model of this agent
43
+ */
44
+ copilotModel?: ICopilotModel;
45
+ copilotModelId?: string;
46
+ /**
47
+ * This is one of the xpert team's agent
48
+ */
49
+ team?: IXpert;
50
+ teamId?: string;
51
+ /**
52
+ * My leader in xpert team
53
+ */
54
+ leader?: IXpertAgent;
55
+ leaderKey?: string;
56
+ /**
57
+ * I am the leader of followers in xpert's team
58
+ */
59
+ followers?: IXpertAgent[];
60
+ /**
61
+ * External xpert teams
62
+ */
63
+ collaborators?: IXpert[];
64
+ collaboratorNames?: string[];
65
+ /**
66
+ * I used toolsets
67
+ */
68
+ toolsets?: IXpertToolset[];
69
+ toolsetIds?: string[];
70
+ /**
71
+ * I used knowledgebases
72
+ */
73
+ knowledgebases?: IKnowledgebase[];
74
+ knowledgebaseIds?: string[];
75
+ };
76
+ /**
77
+ * Expert agent, ai agent for the xperts.
78
+ */
79
+ export interface IXpertAgent extends IBasePerTenantAndOrganizationEntityModel, TXpertAgent {
80
+ }
81
+ export type TXpertAgentOptions = {
82
+ /**
83
+ * Hide this agent node in the graph
84
+ */
85
+ hidden?: boolean;
86
+ /**
87
+ * Disable message history for agent conversation
88
+ */
89
+ disableMessageHistory?: boolean;
90
+ /**
91
+ * The variable of message history to use
92
+ */
93
+ historyVariable?: string;
94
+ /**
95
+ * Write output variables to memory (state)
96
+ */
97
+ memories?: TVariableAssigner[];
98
+ /**
99
+ * Whether to enable parallel tool calls, default: true
100
+ */
101
+ parallelToolCalls?: boolean;
102
+ /**
103
+ * Retry on failure
104
+ */
105
+ retry?: {
106
+ enabled?: boolean;
107
+ stopAfterAttempt?: number;
108
+ };
109
+ /**
110
+ * Fallback model
111
+ */
112
+ fallback?: {
113
+ enabled?: boolean;
114
+ copilotModel?: TCopilotModel;
115
+ };
116
+ /**
117
+ * Error handling
118
+ */
119
+ errorHandling?: TErrorHandling;
120
+ /**
121
+ * Recall params for kbs
122
+ */
123
+ recall?: TKBRecallParams;
124
+ /**
125
+ * Available tools
126
+ */
127
+ availableTools?: Record<string, string[]>;
128
+ /**
129
+ * Options for tools of agent
130
+ */
131
+ tools?: Record<string, {
132
+ timeout?: number;
133
+ }>;
134
+ /**
135
+ * How to achieve structured output (`StructuredOutputMethodOptions['method']`)
136
+ * - *functionCalling*
137
+ * - *jsonMode*
138
+ * - *jsonSchema*
139
+ *
140
+ */
141
+ structuredOutputMethod?: "functionCalling" | "jsonMode" | "jsonSchema" | string;
142
+ /**
143
+ * @deprecated use attachment
144
+ */
145
+ vision?: TXpertAgentVision;
146
+ /**
147
+ * Attachment config of agent
148
+ */
149
+ attachment?: TXpertAgentAttachment;
150
+ /**
151
+ * Config of middlewares for agent
152
+ */
153
+ middlewares?: {
154
+ order: string[];
155
+ };
156
+ };
157
+ export type TXpertAgentVision = {
158
+ enabled?: boolean;
159
+ /**
160
+ * Variable name that store the list of files to be understood
161
+ */
162
+ variable?: string;
163
+ /**
164
+ * Image resolution for vision tasks
165
+ */
166
+ resolution?: 'high' | 'low';
167
+ };
168
+ export type TXpertAgentAttachment = TXpertAgentVision & {
169
+ /**
170
+ * Max number of files to be processed
171
+ */
172
+ maxNum?: number;
173
+ };
174
+ export type TAgentPromptTemplate = {
175
+ id: string;
176
+ role: 'ai' | 'human';
177
+ text: string;
178
+ };
179
+ export type TAgentOutputVariable = TXpertParameter & {
180
+ /**
181
+ * value write to state's variable
182
+ */
183
+ variableSelector: string;
184
+ /**
185
+ * How to write value to variable
186
+ */
187
+ operation: 'append' | 'extends' | 'overwrite' | 'clear';
188
+ };
189
+ /**
190
+ * @deprecated use TChatRequest
191
+ */
192
+ export type TChatAgentParams = {
193
+ /**
194
+ * @deprecated use state instead
195
+ */
196
+ input?: {
197
+ input?: string;
198
+ [key: string]: unknown;
199
+ };
200
+ state: {
201
+ [STATE_VARIABLE_HUMAN]: TChatRequestHuman;
202
+ [key: string]: any;
203
+ };
204
+ agentKey: string;
205
+ xpertId: string;
206
+ executionId?: string;
207
+ environmentId?: string;
208
+ /**
209
+ */
210
+ command?: TInterruptCommand;
211
+ /**
212
+ * Reject the sensitive tool calls
213
+ */
214
+ reject?: boolean;
215
+ };
216
+ export declare function agentLabel(agent: Partial<IXpertAgent>): string;
217
+ export declare function agentUniqueName(agent: IXpertAgent): string;
218
+ export declare function convertToUrlPath(title: string): string;
219
+ export declare const VariableOperations: {
220
+ value: TAgentOutputVariable['operation'];
221
+ label: I18nObject;
222
+ }[];
@@ -0,0 +1,86 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
2
+ import { IIntegration } from '../integration.model';
3
+ import { IStorageFile, TFile } from '../storage-file.model';
4
+ import { TAvatar } from '../types';
5
+ import { IUser } from '../user.model';
6
+ import { ICopilotModel } from './copilot-model.model';
7
+ import { IKnowledgebase } from './knowledgebase.model';
8
+ import { IXpertToolset } from './xpert-toolset.model';
9
+ import { IXpertWorkspace } from './xpert-workspace.model';
10
+ import { IXpert, TXpertTeamDraft } from './xpert.model';
11
+ export type TXpertProjectSettings = {
12
+ instruction: string;
13
+ mode?: '' | 'plan';
14
+ };
15
+ export type TXpertProjectStatus = 'active' | 'deprecated' | 'archived';
16
+ export type TXpertProject = {
17
+ name: string;
18
+ avatar?: TAvatar;
19
+ description?: string;
20
+ status: TXpertProjectStatus;
21
+ settings?: TXpertProjectSettings;
22
+ copilotModel?: ICopilotModel;
23
+ copilotModelId?: string;
24
+ vcsId?: string;
25
+ };
26
+ /**
27
+ * Expert Project
28
+ */
29
+ export interface IXpertProject extends TXpertProject, IBasePerTenantAndOrganizationEntityModel {
30
+ workspaceId?: string;
31
+ workspace?: IXpertWorkspace;
32
+ ownerId: string;
33
+ owner?: IUser;
34
+ xperts?: IXpert[];
35
+ toolsets?: IXpertToolset[];
36
+ knowledges?: IKnowledgebase[];
37
+ members?: IUser[];
38
+ /**
39
+ * @deprecated Use *file volume* instead
40
+ */
41
+ files?: IXpertProjectFile[];
42
+ attachments?: IStorageFile[];
43
+ vcs?: IXpertProjectVCS;
44
+ }
45
+ export interface IBasePerXpertProjectEntityModel extends IBasePerTenantAndOrganizationEntityModel {
46
+ projectId?: string;
47
+ project?: IXpertProject;
48
+ }
49
+ export interface IXpertProjectTask extends IBasePerXpertProjectEntityModel {
50
+ threadId?: string;
51
+ name: string;
52
+ type?: string;
53
+ status: 'pending' | 'in_progress' | 'completed' | 'failed';
54
+ steps: IXpertProjectTaskStep[];
55
+ }
56
+ export interface IXpertProjectTaskStep extends IBasePerXpertProjectEntityModel {
57
+ taskId: string;
58
+ stepIndex: number;
59
+ description: string;
60
+ notes: string;
61
+ status: 'pending' | 'running' | 'done' | 'failed';
62
+ }
63
+ export interface IXpertProjectTaskLog extends IBasePerXpertProjectEntityModel {
64
+ stepId: string;
65
+ logType: 'input' | 'output' | 'error';
66
+ content: string;
67
+ }
68
+ export interface IXpertProjectVCS extends IBasePerXpertProjectEntityModel {
69
+ integrationId?: string;
70
+ integration?: IIntegration;
71
+ auth?: {
72
+ token_type?: string;
73
+ access_token?: string;
74
+ state?: string;
75
+ };
76
+ installationId?: number | string;
77
+ repository?: string;
78
+ }
79
+ /**
80
+ * @deprecated Use `attachments`
81
+ */
82
+ export interface IXpertProjectFile extends IBasePerXpertProjectEntityModel, Omit<TFile, 'createdAt'> {
83
+ }
84
+ export type TXpertProjectDSL = IXpertProject & {
85
+ xperts?: TXpertTeamDraft[];
86
+ };