@metad/contracts 3.6.0 → 3.6.1
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.
- package/.babelrc +5 -0
- package/.eslintrc.json +18 -0
- package/babel.config.json +1 -0
- package/index.cjs.js +5 -3996
- package/jest.config.ts +16 -0
- package/package.json +2 -2
- package/project.json +53 -0
- package/src/agent/{ai-model.d.ts → ai-model.ts} +2 -2
- package/src/agent/graph.ts +272 -0
- package/src/agent/index.ts +5 -0
- package/src/agent/token.ts +23 -0
- package/src/agent/utils.spec.ts +283 -0
- package/src/agent/utils.ts +122 -0
- package/src/agent/variables.ts +21 -0
- package/src/ai/ai-model.model.ts +228 -0
- package/src/ai/ai-provider.model.ts +53 -0
- package/src/ai/ai.model.ts +87 -0
- package/src/ai/chat-message-feedback.model.ts +31 -0
- package/src/ai/chat-message.model.ts +277 -0
- package/src/ai/chat.model.ts +207 -0
- package/src/ai/copilot-checkpoint.model.ts +25 -0
- package/src/ai/copilot-example.model.ts +23 -0
- package/src/ai/copilot-model.model.ts +31 -0
- package/src/ai/copilot-organization.model.ts +21 -0
- package/src/ai/copilot-provider.model.ts +46 -0
- package/src/ai/copilot-role.model.ts +48 -0
- package/src/ai/copilot-store.model.ts +34 -0
- package/src/ai/copilot-user.model.ts +24 -0
- package/src/ai/copilot.model.ts +47 -0
- package/src/ai/{environment.model.d.ts → environment.model.ts} +12 -10
- package/src/ai/feature.model.ts +6 -0
- package/src/ai/index.ts +39 -0
- package/src/ai/knowledge-doc-chunk.model.ts +120 -0
- package/src/ai/knowledge-doc-chunk.spec.ts +47 -0
- package/src/ai/knowledge-doc-page.model.ts +20 -0
- package/src/ai/knowledge-doc.model.ts +252 -0
- package/src/ai/knowledge-pipeline.ts +138 -0
- package/src/ai/knowledge-retrieval-log.model.ts +19 -0
- package/src/ai/knowledgebase-task.model.ts +46 -0
- package/src/ai/knowledgebase.model.ts +190 -0
- package/src/ai/rag-web.ts +54 -0
- package/src/ai/rag.ts +24 -0
- package/src/ai/role-permissions.ts +13 -0
- package/src/ai/types.ts +83 -0
- package/src/ai/xpert-agent-execution.model.ts +115 -0
- package/src/ai/xpert-agent.model.ts +258 -0
- package/src/ai/xpert-project.model.ts +103 -0
- package/src/ai/xpert-task.model.ts +32 -0
- package/src/ai/xpert-template.model.ts +53 -0
- package/src/ai/xpert-tool-mcp.model.ts +72 -0
- package/src/ai/xpert-tool.model.ts +211 -0
- package/src/ai/xpert-toolset.model.ts +220 -0
- package/src/ai/xpert-workflow-task.prompt.ts +71 -0
- package/src/ai/xpert-workflow.model.ts +449 -0
- package/src/ai/xpert-workspace.model.ts +42 -0
- package/src/ai/xpert.model.ts +613 -0
- package/src/ai/xpert.utils.ts +214 -0
- package/src/analytics/ai.ts +79 -0
- package/src/analytics/approval-policy.model.ts +40 -0
- package/src/analytics/business-area-user.model.ts +43 -0
- package/src/analytics/business-area.ts +20 -0
- package/src/analytics/certification.model.ts +12 -0
- package/src/analytics/chatbi-conversation.model.ts +16 -0
- package/src/analytics/chatbi-model.model.ts +22 -0
- package/src/analytics/collection.model.ts +8 -0
- package/src/analytics/comment.model.ts +14 -0
- package/src/analytics/data-source-type.ts +19 -0
- package/src/analytics/data-source.ts +72 -0
- package/src/analytics/favorite.ts +18 -0
- package/src/analytics/features.ts +19 -0
- package/src/analytics/feed-model.ts +15 -0
- package/src/analytics/gateway.ts +30 -0
- package/src/analytics/index.ts +39 -0
- package/src/analytics/indicator-app.ts +49 -0
- package/src/analytics/{indicator-market.d.ts → indicator-market.ts} +6 -2
- package/src/analytics/indicator.ts +127 -0
- package/src/analytics/model-query-log.model.ts +45 -0
- package/src/analytics/model-query.ts +22 -0
- package/src/analytics/{notification-destination.d.ts → notification-destination.ts} +9 -5
- package/src/analytics/{permission-approval-user.model.d.ts → permission-approval-user.model.ts} +10 -8
- package/src/analytics/permission-approval.model.ts +58 -0
- package/src/analytics/project.model.ts +56 -0
- package/src/analytics/role-permissions.ts +36 -0
- package/src/analytics/schema.ts +300 -0
- package/src/analytics/screenshot.model.ts +28 -0
- package/src/analytics/semantic-model-entity.ts +49 -0
- package/src/analytics/semantic-model-member.ts +45 -0
- package/src/analytics/semantic-model.ts +227 -0
- package/src/analytics/{story-point.d.ts → story-point.ts} +11 -6
- package/src/analytics/story-template.model.ts +34 -0
- package/src/analytics/story-widget.ts +15 -0
- package/src/analytics/story.ts +109 -0
- package/src/analytics/subscription.ts +43 -0
- package/src/analytics/visit.model.ts +39 -0
- package/src/analytics/webSocket.ts +53 -0
- package/src/api-key.model.ts +11 -0
- package/src/base-entity.model.ts +34 -0
- package/src/contact.model.ts +45 -0
- package/src/core.model.ts +103 -0
- package/src/{country.model.d.ts → country.model.ts} +3 -2
- package/src/currency.model.ts +582 -0
- package/src/{custom-smtp.model.d.ts → custom-smtp.model.ts} +21 -17
- package/src/date-picker.model.ts +5 -0
- package/src/email-template.model.ts +50 -0
- package/src/email.model.ts +46 -0
- package/src/employee.model.ts +199 -0
- package/src/entity-with-members.model.ts +16 -0
- package/src/feature.model.ts +108 -0
- package/src/file-provider.ts +37 -0
- package/src/help-center-article.model.ts +35 -0
- package/src/help-center.model.ts +33 -0
- package/src/http-status.enum.ts +58 -0
- package/src/import-export.model.ts +42 -0
- package/src/index.ts +60 -0
- package/src/integration/dify.ts +31 -0
- package/src/integration/dingtalk.ts +16 -0
- package/src/integration/fastgpt.ts +32 -0
- package/src/integration/firecrawl.ts +46 -0
- package/src/integration/github.ts +149 -0
- package/src/integration/index.ts +15 -0
- package/src/integration/lark.ts +79 -0
- package/src/integration/wecom.ts +16 -0
- package/src/integration.model.ts +119 -0
- package/src/invite.model.ts +144 -0
- package/src/language.model.ts +22 -0
- package/src/organization-contact.model.ts +84 -0
- package/src/{organization-department.model.d.ts → organization-department.model.ts} +16 -10
- package/src/organization-language.model.ts +24 -0
- package/src/organization-projects.model.ts +99 -0
- package/src/organization-team-employee-model.ts +14 -0
- package/src/organization-team-model.ts +25 -0
- package/src/organization.model.ts +266 -0
- package/src/password-reset.model.ts +22 -0
- package/src/{plain-object.model.d.ts → plain-object.model.ts} +1 -1
- package/src/plugin.ts +15 -0
- package/src/role-permission.model.ts +123 -0
- package/src/role.model.ts +31 -0
- package/src/schedule.ts +71 -0
- package/src/secret-token.model.ts +15 -0
- package/src/seed.model.ts +50 -0
- package/src/storage-file.model.ts +46 -0
- package/src/tag-entity.model.ts +23 -0
- package/src/tenant.model.ts +52 -0
- package/src/tools/index.ts +1 -0
- package/src/tools/sandbox.ts +5 -0
- package/src/translation.model.ts +37 -0
- package/src/types.ts +277 -0
- package/src/user-organization.model.ts +31 -0
- package/src/user.model.ts +151 -0
- package/src/visibility.model.ts +6 -0
- package/tsconfig.json +22 -0
- package/tsconfig.lib.json +10 -0
- package/tsconfig.spec.json +9 -0
- package/index.cjs.d.ts +0 -1
- package/index.esm.d.ts +0 -1
- package/index.esm.js +0 -3900
- package/src/agent/graph.d.ts +0 -148
- package/src/agent/index.d.ts +0 -5
- package/src/agent/token.d.ts +0 -21
- package/src/agent/utils.d.ts +0 -19
- package/src/agent/variables.d.ts +0 -14
- package/src/ai/ai-model.model.d.ts +0 -195
- package/src/ai/ai-provider.model.d.ts +0 -43
- package/src/ai/ai.model.d.ts +0 -82
- package/src/ai/chat-message-feedback.model.d.ts +0 -24
- package/src/ai/chat-message.model.d.ts +0 -222
- package/src/ai/chat.model.d.ts +0 -189
- package/src/ai/copilot-checkpoint.model.d.ts +0 -23
- package/src/ai/copilot-example.model.d.ts +0 -19
- package/src/ai/copilot-model.model.d.ts +0 -26
- package/src/ai/copilot-organization.model.d.ts +0 -17
- package/src/ai/copilot-provider.model.d.ts +0 -31
- package/src/ai/copilot-role.model.d.ts +0 -43
- package/src/ai/copilot-store.model.d.ts +0 -29
- package/src/ai/copilot-user.model.d.ts +0 -20
- package/src/ai/copilot.model.d.ts +0 -36
- package/src/ai/feature.model.d.ts +0 -6
- package/src/ai/index.d.ts +0 -38
- package/src/ai/knowledge-doc-page.model.d.ts +0 -15
- package/src/ai/knowledge-doc.model.d.ts +0 -177
- package/src/ai/knowledge-pipeline.d.ts +0 -100
- package/src/ai/knowledge-retrieval-log.model.d.ts +0 -10
- package/src/ai/knowledgebase-task.model.d.ts +0 -36
- package/src/ai/knowledgebase.model.d.ts +0 -160
- package/src/ai/rag-web.d.ts +0 -26
- package/src/ai/rag.d.ts +0 -24
- package/src/ai/role-permissions.d.ts +0 -13
- package/src/ai/types.d.ts +0 -39
- package/src/ai/xpert-agent-execution.model.d.ts +0 -96
- package/src/ai/xpert-agent.model.d.ts +0 -192
- package/src/ai/xpert-project.model.d.ts +0 -86
- package/src/ai/xpert-task.model.d.ts +0 -26
- package/src/ai/xpert-template.model.d.ts +0 -47
- package/src/ai/xpert-tool-mcp.model.d.ts +0 -67
- package/src/ai/xpert-tool.model.d.ts +0 -147
- package/src/ai/xpert-toolset.model.d.ts +0 -200
- package/src/ai/xpert-workflow-task.prompt.d.ts +0 -2
- package/src/ai/xpert-workflow.model.d.ts +0 -365
- package/src/ai/xpert-workspace.model.d.ts +0 -32
- package/src/ai/xpert.model.d.ts +0 -497
- package/src/ai/xpert.utils.d.ts +0 -80
- package/src/analytics/ai.d.ts +0 -73
- package/src/analytics/approval-policy.model.d.ts +0 -30
- package/src/analytics/business-area-user.model.d.ts +0 -35
- package/src/analytics/business-area.d.ts +0 -17
- package/src/analytics/certification.model.d.ts +0 -11
- package/src/analytics/chatbi-conversation.model.d.ts +0 -15
- package/src/analytics/chatbi-model.model.d.ts +0 -18
- package/src/analytics/collection.model.d.ts +0 -6
- package/src/analytics/comment.model.d.ts +0 -10
- package/src/analytics/data-source-type.d.ts +0 -16
- package/src/analytics/data-source.d.ts +0 -62
- package/src/analytics/favorite.d.ts +0 -14
- package/src/analytics/features.d.ts +0 -19
- package/src/analytics/feed-model.d.ts +0 -13
- package/src/analytics/gateway.d.ts +0 -27
- package/src/analytics/index.d.ts +0 -38
- package/src/analytics/indicator-app.d.ts +0 -44
- package/src/analytics/indicator.d.ts +0 -106
- package/src/analytics/model-query-log.model.d.ts +0 -41
- package/src/analytics/model-query.d.ts +0 -21
- package/src/analytics/permission-approval.model.d.ts +0 -47
- package/src/analytics/project.model.d.ts +0 -50
- package/src/analytics/role-permissions.d.ts +0 -25
- package/src/analytics/schema.d.ts +0 -262
- package/src/analytics/screenshot.model.d.ts +0 -25
- package/src/analytics/semantic-model-entity.d.ts +0 -37
- package/src/analytics/semantic-model-member.d.ts +0 -24
- package/src/analytics/semantic-model.d.ts +0 -175
- package/src/analytics/story-template.model.d.ts +0 -28
- package/src/analytics/story-widget.d.ts +0 -12
- package/src/analytics/story.d.ts +0 -93
- package/src/analytics/subscription.d.ts +0 -38
- package/src/analytics/visit.model.d.ts +0 -34
- package/src/analytics/webSocket.d.ts +0 -48
- package/src/api-key.model.d.ts +0 -10
- package/src/base-entity.model.d.ts +0 -27
- package/src/contact.model.d.ts +0 -41
- package/src/core.model.d.ts +0 -97
- package/src/currency.model.d.ts +0 -579
- package/src/date-picker.model.d.ts +0 -5
- package/src/email-template.model.d.ts +0 -39
- package/src/email.model.d.ts +0 -36
- package/src/employee.model.d.ts +0 -128
- package/src/entity-with-members.model.d.ts +0 -13
- package/src/feature.model.d.ts +0 -93
- package/src/file-provider.d.ts +0 -33
- package/src/help-center-article.model.d.ts +0 -0
- package/src/help-center.model.d.ts +0 -0
- package/src/http-status.enum.d.ts +0 -57
- package/src/import-export.model.d.ts +0 -36
- package/src/index.d.ts +0 -48
- package/src/integration/dify.d.ts +0 -0
- package/src/integration/dingtalk.d.ts +0 -2
- package/src/integration/fastgpt.d.ts +0 -0
- package/src/integration/firecrawl.d.ts +0 -2
- package/src/integration/github.d.ts +0 -69
- package/src/integration/index.d.ts +0 -4
- package/src/integration/lark.d.ts +0 -11
- package/src/integration/ragflow.d.ts +0 -0
- package/src/integration/wecom.d.ts +0 -2
- package/src/integration.model.d.ts +0 -86
- package/src/invite.model.d.ts +0 -123
- package/src/language.model.d.ts +0 -19
- package/src/organization-contact.model.d.ts +0 -73
- package/src/organization-language.model.d.ts +0 -18
- package/src/organization-projects.model.d.ts +0 -80
- package/src/organization-team-employee-model.d.ts +0 -12
- package/src/organization-team-model.d.ts +0 -19
- package/src/organization.model.d.ts +0 -239
- package/src/password-reset.model.d.ts +0 -18
- package/src/plugin.d.ts +0 -13
- package/src/role-permission.model.d.ts +0 -61
- package/src/role.model.d.ts +0 -26
- package/src/schedule.d.ts +0 -27
- package/src/secret-token.model.d.ts +0 -11
- package/src/seed.model.d.ts +0 -37
- package/src/storage-file.model.d.ts +0 -40
- package/src/tag-entity.model.d.ts +0 -20
- package/src/tenant.model.d.ts +0 -40
- package/src/tools/index.d.ts +0 -1
- package/src/tools/sandbox.d.ts +0 -5
- package/src/translation.model.d.ts +0 -26
- package/src/types.d.ts +0 -240
- package/src/user-organization.model.d.ts +0 -24
- package/src/user.model.d.ts +0 -128
- package/src/visibility.model.d.ts +0 -6
|
@@ -0,0 +1,258 @@
|
|
|
1
|
+
import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model'
|
|
2
|
+
import { ICopilotModel, TCopilotModel } from './copilot-model.model'
|
|
3
|
+
import { IKnowledgebase, TKBRecallParams } from './knowledgebase.model'
|
|
4
|
+
import { I18nObject, TAvatar } from '../types'
|
|
5
|
+
import { IXpertToolset } from './xpert-toolset.model'
|
|
6
|
+
import { IXpert, TXpertParameter } from './xpert.model'
|
|
7
|
+
import { TVariableAssigner } from './xpert-workflow.model'
|
|
8
|
+
import { TErrorHandling } from './types'
|
|
9
|
+
import { TInterruptCommand } from '../agent'
|
|
10
|
+
|
|
11
|
+
export type TXpertAgent = {
|
|
12
|
+
key: string
|
|
13
|
+
name?: string
|
|
14
|
+
title?: string
|
|
15
|
+
description?: string
|
|
16
|
+
avatar?: TAvatar
|
|
17
|
+
/**
|
|
18
|
+
* System prompt
|
|
19
|
+
*/
|
|
20
|
+
prompt?: string
|
|
21
|
+
/**
|
|
22
|
+
* Prompt templates (ai or human)
|
|
23
|
+
*/
|
|
24
|
+
promptTemplates?: TAgentPromptTemplate[]
|
|
25
|
+
/**
|
|
26
|
+
* Input parameters for agent
|
|
27
|
+
*/
|
|
28
|
+
parameters?: TXpertParameter[]
|
|
29
|
+
/**
|
|
30
|
+
* Output variables of agent
|
|
31
|
+
*/
|
|
32
|
+
outputVariables?: TAgentOutputVariable[]
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* More configuration
|
|
36
|
+
*/
|
|
37
|
+
options?: TXpertAgentOptions
|
|
38
|
+
|
|
39
|
+
// One to one
|
|
40
|
+
/**
|
|
41
|
+
* This is the xpert's primary agent
|
|
42
|
+
*/
|
|
43
|
+
xpert?: IXpert
|
|
44
|
+
xpertId?: string
|
|
45
|
+
/**
|
|
46
|
+
* Copilot model of this agent
|
|
47
|
+
*/
|
|
48
|
+
copilotModel?: ICopilotModel
|
|
49
|
+
copilotModelId?: string
|
|
50
|
+
|
|
51
|
+
// Many to one
|
|
52
|
+
/**
|
|
53
|
+
* This is one of the xpert team's agent
|
|
54
|
+
*/
|
|
55
|
+
team?: IXpert
|
|
56
|
+
teamId?: string
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* My leader in xpert team
|
|
60
|
+
*/
|
|
61
|
+
leader?: IXpertAgent
|
|
62
|
+
leaderKey?: string
|
|
63
|
+
/**
|
|
64
|
+
* I am the leader of followers in xpert's team
|
|
65
|
+
*/
|
|
66
|
+
followers?: IXpertAgent[]
|
|
67
|
+
|
|
68
|
+
// Many to many
|
|
69
|
+
/**
|
|
70
|
+
* External xpert teams
|
|
71
|
+
*/
|
|
72
|
+
collaborators?: IXpert[]
|
|
73
|
+
collaboratorNames?: string[]
|
|
74
|
+
/**
|
|
75
|
+
* I used toolsets
|
|
76
|
+
*/
|
|
77
|
+
toolsets?: IXpertToolset[]
|
|
78
|
+
toolsetIds?: string[]
|
|
79
|
+
/**
|
|
80
|
+
* I used knowledgebases
|
|
81
|
+
*/
|
|
82
|
+
knowledgebases?: IKnowledgebase[]
|
|
83
|
+
knowledgebaseIds?: string[]
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Expert agent, ai agent for the xperts.
|
|
88
|
+
*/
|
|
89
|
+
export interface IXpertAgent extends IBasePerTenantAndOrganizationEntityModel, TXpertAgent {
|
|
90
|
+
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
export type TXpertAgentOptions = {
|
|
94
|
+
/**
|
|
95
|
+
* Hide this agent node in the graph
|
|
96
|
+
*/
|
|
97
|
+
hidden?: boolean
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* Disable message history for agent conversation
|
|
101
|
+
*/
|
|
102
|
+
disableMessageHistory?: boolean
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* The variable of message history to use
|
|
106
|
+
*/
|
|
107
|
+
historyVariable?: string
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* Write output variables to memory (state)
|
|
111
|
+
*/
|
|
112
|
+
memories?: TVariableAssigner[]
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* Whether to enable parallel tool calls, default: true
|
|
116
|
+
*/
|
|
117
|
+
parallelToolCalls?: boolean
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* Retry on failure
|
|
121
|
+
*/
|
|
122
|
+
retry?: {
|
|
123
|
+
enabled?: boolean
|
|
124
|
+
stopAfterAttempt?: number
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
/**
|
|
128
|
+
* Fallback model
|
|
129
|
+
*/
|
|
130
|
+
fallback?: {
|
|
131
|
+
enabled?: boolean
|
|
132
|
+
copilotModel?: TCopilotModel
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
/**
|
|
136
|
+
* Error handling
|
|
137
|
+
*/
|
|
138
|
+
errorHandling?: TErrorHandling
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* Recall params for kbs
|
|
142
|
+
*/
|
|
143
|
+
recall?: TKBRecallParams
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* Available tools
|
|
147
|
+
*/
|
|
148
|
+
availableTools?: Record<string, string[]>
|
|
149
|
+
/**
|
|
150
|
+
* Options for tools of agent
|
|
151
|
+
*/
|
|
152
|
+
tools?: Record<string, {
|
|
153
|
+
timeout?: number
|
|
154
|
+
}>
|
|
155
|
+
|
|
156
|
+
/**
|
|
157
|
+
* How to achieve structured output (`StructuredOutputMethodOptions['method']`)
|
|
158
|
+
* - *functionCalling*
|
|
159
|
+
* - *jsonMode*
|
|
160
|
+
* - *jsonSchema*
|
|
161
|
+
*
|
|
162
|
+
*/
|
|
163
|
+
structuredOutputMethod?: "functionCalling" | "jsonMode" | "jsonSchema" | string
|
|
164
|
+
/**
|
|
165
|
+
* Vision config of agent
|
|
166
|
+
*/
|
|
167
|
+
vision?: {
|
|
168
|
+
enabled?: boolean
|
|
169
|
+
variable?: string
|
|
170
|
+
resolution?: 'high' | 'low'
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
export type TAgentPromptTemplate = {
|
|
175
|
+
id: string;
|
|
176
|
+
role: 'ai' | 'human';
|
|
177
|
+
text: string
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
export type TAgentOutputVariable = TXpertParameter & {
|
|
181
|
+
/**
|
|
182
|
+
* value write to state's variable
|
|
183
|
+
*/
|
|
184
|
+
variableSelector: string
|
|
185
|
+
/**
|
|
186
|
+
* How to write value to variable
|
|
187
|
+
*/
|
|
188
|
+
operation: 'append' | 'extends' | 'overwrite' | 'clear'
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
/**
|
|
192
|
+
* @deprecated use TChatRequest
|
|
193
|
+
*/
|
|
194
|
+
export type TChatAgentParams = {
|
|
195
|
+
input: {
|
|
196
|
+
input?: string
|
|
197
|
+
[key: string]: unknown
|
|
198
|
+
}
|
|
199
|
+
agentKey: string
|
|
200
|
+
xpertId: string
|
|
201
|
+
executionId?: string
|
|
202
|
+
environmentId?: string
|
|
203
|
+
/**
|
|
204
|
+
*/
|
|
205
|
+
command?: TInterruptCommand
|
|
206
|
+
/**
|
|
207
|
+
* Reject the sensitive tool calls
|
|
208
|
+
*/
|
|
209
|
+
reject?: boolean
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
export function agentLabel(agent: Partial<IXpertAgent>) {
|
|
213
|
+
return agent.title || agent.name || agent.key
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
export function agentUniqueName(agent: IXpertAgent) {
|
|
217
|
+
return agent ? (convertToUrlPath(agent.name) || agent.key) : null
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
export function convertToUrlPath(title: string) {
|
|
221
|
+
return title?.toLowerCase() // Convert to lowercase
|
|
222
|
+
.replace(/\s+/g, '-') // Replace spaces with -
|
|
223
|
+
.replace(/[^a-z0-9-]/g, ''); // Remove non-alphanumeric characters
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
export const VariableOperations: {
|
|
227
|
+
value: TAgentOutputVariable['operation'];
|
|
228
|
+
label: I18nObject
|
|
229
|
+
}[] = [
|
|
230
|
+
{
|
|
231
|
+
value: 'append',
|
|
232
|
+
label: {
|
|
233
|
+
zh_Hans: '追加',
|
|
234
|
+
en_US: 'Append'
|
|
235
|
+
}
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
value: 'extends',
|
|
239
|
+
label: {
|
|
240
|
+
zh_Hans: '扩展',
|
|
241
|
+
en_US: 'Extend'
|
|
242
|
+
}
|
|
243
|
+
},
|
|
244
|
+
{
|
|
245
|
+
value: 'overwrite',
|
|
246
|
+
label: {
|
|
247
|
+
zh_Hans: '覆盖',
|
|
248
|
+
en_US: 'Overwrite'
|
|
249
|
+
}
|
|
250
|
+
},
|
|
251
|
+
{
|
|
252
|
+
value: 'clear',
|
|
253
|
+
label: {
|
|
254
|
+
zh_Hans: '清除',
|
|
255
|
+
en_US: 'Clear'
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
]
|
|
@@ -0,0 +1,103 @@
|
|
|
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
|
+
|
|
12
|
+
export type TXpertProjectSettings = {
|
|
13
|
+
instruction: string
|
|
14
|
+
mode?: '' | 'plan'
|
|
15
|
+
}
|
|
16
|
+
export type TXpertProjectStatus = 'active' | 'deprecated' | 'archived'
|
|
17
|
+
|
|
18
|
+
export type TXpertProject = {
|
|
19
|
+
name: string
|
|
20
|
+
avatar?: TAvatar
|
|
21
|
+
description?: string
|
|
22
|
+
status: TXpertProjectStatus
|
|
23
|
+
settings?: TXpertProjectSettings
|
|
24
|
+
|
|
25
|
+
// Used copilot model
|
|
26
|
+
copilotModel?: ICopilotModel
|
|
27
|
+
copilotModelId?: string
|
|
28
|
+
|
|
29
|
+
vcsId?: string
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Expert Project
|
|
34
|
+
*/
|
|
35
|
+
export interface IXpertProject extends TXpertProject, IBasePerTenantAndOrganizationEntityModel {
|
|
36
|
+
workspaceId?: string
|
|
37
|
+
workspace?: IXpertWorkspace
|
|
38
|
+
|
|
39
|
+
// Many to one
|
|
40
|
+
ownerId: string
|
|
41
|
+
owner?: IUser
|
|
42
|
+
|
|
43
|
+
// One to many
|
|
44
|
+
xperts?: IXpert[]
|
|
45
|
+
toolsets?: IXpertToolset[]
|
|
46
|
+
knowledges?: IKnowledgebase[]
|
|
47
|
+
members?: IUser[]
|
|
48
|
+
/**
|
|
49
|
+
* @deprecated Use *file volume* instead
|
|
50
|
+
*/
|
|
51
|
+
files?: IXpertProjectFile[]
|
|
52
|
+
attachments?: IStorageFile[]
|
|
53
|
+
|
|
54
|
+
vcs?: IXpertProjectVCS
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export interface IBasePerXpertProjectEntityModel extends IBasePerTenantAndOrganizationEntityModel {
|
|
58
|
+
projectId?: string
|
|
59
|
+
project?: IXpertProject
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export interface IXpertProjectTask extends IBasePerXpertProjectEntityModel {
|
|
63
|
+
threadId?: string
|
|
64
|
+
name: string
|
|
65
|
+
type?: string
|
|
66
|
+
status: 'pending' | 'in_progress' | 'completed' | 'failed'
|
|
67
|
+
steps: IXpertProjectTaskStep[]
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
export interface IXpertProjectTaskStep extends IBasePerXpertProjectEntityModel {
|
|
71
|
+
taskId: string
|
|
72
|
+
stepIndex: number
|
|
73
|
+
description: string
|
|
74
|
+
notes: string
|
|
75
|
+
status: 'pending' | 'running' | 'done' | 'failed'
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export interface IXpertProjectTaskLog extends IBasePerXpertProjectEntityModel {
|
|
79
|
+
stepId: string
|
|
80
|
+
logType: 'input' | 'output' | 'error'
|
|
81
|
+
content: string
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
export interface IXpertProjectVCS extends IBasePerXpertProjectEntityModel {
|
|
85
|
+
integrationId?: string
|
|
86
|
+
integration?: IIntegration
|
|
87
|
+
auth?: {
|
|
88
|
+
token_type?: string
|
|
89
|
+
access_token?: string
|
|
90
|
+
state?: string
|
|
91
|
+
}
|
|
92
|
+
installationId?: number | string // For GitHub Apps
|
|
93
|
+
repository?: string
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* @deprecated Use `attachments`
|
|
98
|
+
*/
|
|
99
|
+
export interface IXpertProjectFile extends IBasePerXpertProjectEntityModel, Omit<TFile, 'createdAt'> {}
|
|
100
|
+
|
|
101
|
+
export type TXpertProjectDSL = IXpertProject & {
|
|
102
|
+
xperts?: TXpertTeamDraft[]
|
|
103
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model'
|
|
2
|
+
import { ScheduleTaskStatus, TScheduleOptions } from '../schedule'
|
|
3
|
+
import { IChatConversation } from './chat.model'
|
|
4
|
+
import { IXpert } from './xpert.model'
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Tools for Xpert
|
|
9
|
+
*/
|
|
10
|
+
export interface IXpertTask extends IBasePerTenantAndOrganizationEntityModel, XpertTaskType {}
|
|
11
|
+
|
|
12
|
+
export type XpertTaskType = {
|
|
13
|
+
name?: string
|
|
14
|
+
schedule?: string
|
|
15
|
+
options?: TScheduleOptions
|
|
16
|
+
timeZone?: string
|
|
17
|
+
prompt?: string
|
|
18
|
+
status?: ScheduleTaskStatus
|
|
19
|
+
|
|
20
|
+
xpert?: IXpert
|
|
21
|
+
xpertId?: string
|
|
22
|
+
agentKey?: string
|
|
23
|
+
// One to many
|
|
24
|
+
conversations?: IChatConversation[]
|
|
25
|
+
|
|
26
|
+
// Temporary properties
|
|
27
|
+
job?: any
|
|
28
|
+
scheduleDescription?: string
|
|
29
|
+
executionCount?: number
|
|
30
|
+
errorCount?: number
|
|
31
|
+
successCount?: number
|
|
32
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { IBasePerTenantEntityModel } from '../base-entity.model'
|
|
2
|
+
import { IconDefinition, TAvatar } from '../types'
|
|
3
|
+
import { TCopilotModel } from './copilot-model.model'
|
|
4
|
+
import { MCPServerType, TMCPServer } from './xpert-tool-mcp.model'
|
|
5
|
+
import { XpertTypeEnum } from './xpert.model'
|
|
6
|
+
|
|
7
|
+
export interface IXpertTemplate extends IBasePerTenantEntityModel {
|
|
8
|
+
key: string
|
|
9
|
+
name?: string
|
|
10
|
+
visitCount: number
|
|
11
|
+
lastVisitedAt?: Date
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export type TTemplate = {
|
|
15
|
+
id: string
|
|
16
|
+
name: string
|
|
17
|
+
title: string
|
|
18
|
+
description: string
|
|
19
|
+
category: string
|
|
20
|
+
copyright: string
|
|
21
|
+
privacyPolicy?: string
|
|
22
|
+
export_data: string
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export type TXpertTemplate = TTemplate & {
|
|
26
|
+
avatar: TAvatar
|
|
27
|
+
// icon: IconDefinition | string
|
|
28
|
+
type: XpertTypeEnum | 'project'
|
|
29
|
+
copilotModel?: Partial<TCopilotModel>
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export interface IXpertMCPTemplate extends TTemplate {
|
|
33
|
+
/**
|
|
34
|
+
* string is the backward compatible image file URL format
|
|
35
|
+
*/
|
|
36
|
+
icon: IconDefinition | string
|
|
37
|
+
type: MCPServerType
|
|
38
|
+
author: string
|
|
39
|
+
transport: MCPServerType
|
|
40
|
+
explore: string
|
|
41
|
+
tags?: string[]
|
|
42
|
+
visitCount?: number
|
|
43
|
+
server: TMCPServer
|
|
44
|
+
options?: any
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export type TKnowledgePipelineTemplate = TTemplate & {
|
|
48
|
+
icon: IconDefinition
|
|
49
|
+
author: string
|
|
50
|
+
explore: string
|
|
51
|
+
tags?: string[]
|
|
52
|
+
visitCount?: number
|
|
53
|
+
}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
export enum MCPServerType {
|
|
2
|
+
SSE = 'sse',
|
|
3
|
+
STDIO = 'stdio',
|
|
4
|
+
CODE = 'code'
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Configuration for stdio transport connection
|
|
9
|
+
*/
|
|
10
|
+
export interface StdioConnection {
|
|
11
|
+
transport: "stdio";
|
|
12
|
+
command: string;
|
|
13
|
+
args: string[];
|
|
14
|
+
env?: Record<string, string>;
|
|
15
|
+
encoding?: string;
|
|
16
|
+
encodingErrorHandler?: "strict" | "ignore" | "replace";
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Configuration for SSE transport connection
|
|
21
|
+
*/
|
|
22
|
+
export interface SSEConnection {
|
|
23
|
+
transport: "sse";
|
|
24
|
+
url: string;
|
|
25
|
+
headers?: Record<string, string>;
|
|
26
|
+
useNodeEventSource?: boolean;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export type TMCPServerReconnect = {
|
|
30
|
+
/**
|
|
31
|
+
* Whether to automatically restart the process if it exits
|
|
32
|
+
*/
|
|
33
|
+
enabled?: boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Maximum number of restart attempts
|
|
36
|
+
*/
|
|
37
|
+
maxAttempts?: number;
|
|
38
|
+
/**
|
|
39
|
+
* Delay in milliseconds between restart attempts
|
|
40
|
+
*/
|
|
41
|
+
delayMs?: number;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export type TMCPServer = {
|
|
45
|
+
type: MCPServerType
|
|
46
|
+
command?: string
|
|
47
|
+
args?: string[]
|
|
48
|
+
env?: Record<string, string>
|
|
49
|
+
encoding?: string
|
|
50
|
+
encodingErrorHandler?: string
|
|
51
|
+
/**
|
|
52
|
+
* Additional reconnection settings
|
|
53
|
+
*/
|
|
54
|
+
reconnect?: TMCPServerReconnect
|
|
55
|
+
|
|
56
|
+
url?: string,
|
|
57
|
+
headers?: Record<string, string>
|
|
58
|
+
useNodeEventSource?: boolean
|
|
59
|
+
|
|
60
|
+
files?: {name: string; content: string}[]
|
|
61
|
+
|
|
62
|
+
toolNamePrefix?: string
|
|
63
|
+
/**
|
|
64
|
+
* Init scripts for sandbox
|
|
65
|
+
*/
|
|
66
|
+
initScripts?: string
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
export type TMCPSchema = {
|
|
70
|
+
servers?: Record<string, TMCPServer>
|
|
71
|
+
mcpServers?: Record<string, TMCPServer>
|
|
72
|
+
}
|