@eduwork/dsh-oidc 0.3.0-dev.2 → 0.3.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.
- package/CHANGELOG.en.md +6 -0
- package/CHANGELOG.md +6 -0
- package/README.md +9 -1
- package/README_EN.md +9 -1
- package/THIRD_PARTY_NOTICES.en.md +5 -4
- package/THIRD_PARTY_NOTICES.md +5 -5
- package/docs/account-extensions.en.md +7 -1
- package/docs/account-extensions.md +7 -1
- package/docs/compatibility.en.md +3 -1
- package/docs/compatibility.md +3 -1
- package/docs/development.en.md +1 -1
- package/docs/development.md +1 -1
- package/docs/dsh-integration.en.md +3 -3
- package/docs/dsh-integration.md +3 -3
- package/docs/enterprise-profile.en.md +47 -0
- package/docs/enterprise-profile.md +47 -0
- package/docs/gateway-auth/README.md +6 -5
- package/docs/gateway-auth/README_EN.md +6 -5
- package/docs/gateway-auth/experimental-oidc-llm.en.md +9 -7
- package/docs/gateway-auth/experimental-oidc-llm.md +8 -6
- package/docs/gateway-auth/litellm-setup.en.md +9 -3
- package/docs/gateway-auth/litellm-setup.md +9 -3
- package/docs/gateway-auth/oidc-llm-draft.en.md +89 -63
- package/docs/gateway-auth/oidc-llm-draft.md +86 -60
- package/docs/getting-started.en.md +3 -1
- package/docs/getting-started.md +3 -1
- package/docs/key-binding-protocol.en.md +1 -1
- package/docs/key-binding-protocol.md +1 -1
- package/docs/oidc-interoperability.en.md +1 -1
- package/docs/oidc-interoperability.md +1 -1
- package/docs/open-integration.en.md +3 -1
- package/docs/open-integration.md +3 -1
- package/examples/ecnu.enterprise-profile.example.json +2 -0
- package/examples/enterprise-profile.example.json +2 -0
- package/examples/litellm.enterprise-profile.example.json +9 -1
- package/examples/oidc-llm.enterprise-profile.example.json +33 -1
- package/examples/resources-discovery.example.json +7 -1
- package/lib/callback-page.js +9 -4
- package/lib/client.js +460 -360
- package/lib/desktop-oidc.js +2 -2
- package/lib/gateway-backend.js +20 -5
- package/lib/index.js +8 -6
- package/lib/litellm-protocol.js +2 -1
- package/lib/model-types.js +7 -0
- package/lib/oidc-llm-protocol.js +6 -2
- package/lib/oidc.js +19 -13
- package/lib/profile.js +24 -9
- package/lib/provider/authorization-scope.js +4 -0
- package/lib/provider/core.js +3 -3
- package/lib/provider/index.js +18 -2
- package/lib/provider/transform-adapter.js +4 -0
- package/lib/resources.js +12 -4
- package/lib/token-lifetime.js +15 -0
- package/lib/typert-schemas.js +14 -12
- package/package.json +104 -97
- package/protocol/resources.openapi.yaml +11 -3
- package/schema/enterprise-profile.v1alpha1.schema.json +36 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eduwork/dsh-oidc",
|
|
3
|
-
"version": "0.3.0
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Standards-based OIDC identity, token-authorized model access, declarative branding, and OpenAI-compatible model integration for DeepSeek Harness",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"deepseek-harness",
|
|
@@ -65,7 +65,8 @@
|
|
|
65
65
|
"@deepseek-ai/dsh-client-ui-settings-general",
|
|
66
66
|
"@deepseek-ai/dsh-client-ui-settings-models",
|
|
67
67
|
"@deepseek-ai/dsh-client-ui-sidebar",
|
|
68
|
-
"@deepseek-ai/dsh-client-ui-theme"
|
|
68
|
+
"@deepseek-ai/dsh-client-ui-theme",
|
|
69
|
+
"@deepseek-ai/dsh-client-locale"
|
|
69
70
|
],
|
|
70
71
|
"platform": "web",
|
|
71
72
|
"immediately": true
|
|
@@ -90,118 +91,115 @@
|
|
|
90
91
|
"check:lock": "node scripts/check-dependency-lock.mjs"
|
|
91
92
|
},
|
|
92
93
|
"engines": {
|
|
93
|
-
"node": ">=
|
|
94
|
+
"node": ">=24.18.0"
|
|
94
95
|
},
|
|
95
96
|
"publishConfig": {
|
|
96
97
|
"access": "public"
|
|
97
98
|
},
|
|
98
99
|
"repository": {
|
|
99
100
|
"type": "git",
|
|
100
|
-
"url": "git+https://github.com/
|
|
101
|
+
"url": "git+https://github.com/ECNU/EduWork.git",
|
|
101
102
|
"directory": "packages/dsh-oidc"
|
|
102
103
|
},
|
|
103
104
|
"bugs": {
|
|
104
|
-
"url": "https://github.com/
|
|
105
|
+
"url": "https://github.com/ECNU/EduWork/issues"
|
|
105
106
|
},
|
|
106
|
-
"homepage": "https://github.com/
|
|
107
|
+
"homepage": "https://github.com/ECNU/EduWork/tree/main/packages/dsh-oidc#readme",
|
|
107
108
|
"license": "MIT",
|
|
108
109
|
"dependencies": {
|
|
109
110
|
"zod": "4.4.3"
|
|
110
111
|
},
|
|
111
112
|
"peerDependencies": {
|
|
112
|
-
"@deepseek-ai/cordis": "4.0.
|
|
113
|
-
"@deepseek-ai/dsh-api-remotes": "0.
|
|
114
|
-
"@deepseek-ai/dsh-attachment": "0.
|
|
115
|
-
"@deepseek-ai/dsh-authorization": "0.
|
|
116
|
-
"@deepseek-ai/dsh-brand": "0.
|
|
117
|
-
"@deepseek-ai/dsh-client-ui-conversation": "0.
|
|
118
|
-
"@deepseek-ai/dsh-client-ui-renderer": "0.
|
|
119
|
-
"@deepseek-ai/dsh-client-ui-settings": "0.
|
|
120
|
-
"@deepseek-ai/dsh-client-ui-settings-general": "0.
|
|
121
|
-
"@deepseek-ai/dsh-client-ui-settings-models": "0.
|
|
122
|
-
"@deepseek-ai/dsh-client-ui-sidebar": "0.
|
|
123
|
-
"@deepseek-ai/dsh-client-ui-theme": "0.
|
|
124
|
-
"@deepseek-ai/dsh-credentials": "0.
|
|
125
|
-
"@deepseek-ai/dsh-fs": "0.
|
|
126
|
-
"@deepseek-ai/dsh-host-webserver": "0.
|
|
127
|
-
"@deepseek-ai/dsh-
|
|
128
|
-
"@deepseek-ai/dsh-
|
|
129
|
-
"@deepseek-ai/dsh-llm": "0.
|
|
130
|
-
"@deepseek-ai/dsh-
|
|
131
|
-
"@deepseek-ai/dsh-
|
|
132
|
-
"@deepseek-ai/dsh-
|
|
133
|
-
"@deepseek-ai/dsh-
|
|
134
|
-
"@deepseek-ai/dsh-
|
|
135
|
-
"@deepseek-ai/dsh-
|
|
136
|
-
"@
|
|
137
|
-
"@earendil-works/pi-ai": "^0.84.2 || ^0.85.1",
|
|
113
|
+
"@deepseek-ai/cordis": ">=4.0.5 <4.1.0",
|
|
114
|
+
"@deepseek-ai/dsh-api-remotes": ">=0.2.1-rc.2 <0.3.0-0",
|
|
115
|
+
"@deepseek-ai/dsh-attachment": ">=0.2.1-rc.2 <0.3.0-0",
|
|
116
|
+
"@deepseek-ai/dsh-authorization": ">=0.2.1-rc.2 <0.3.0-0",
|
|
117
|
+
"@deepseek-ai/dsh-brand": ">=0.2.1-rc.2 <0.3.0-0",
|
|
118
|
+
"@deepseek-ai/dsh-client-ui-conversation": ">=0.2.1-rc.2 <0.3.0-0",
|
|
119
|
+
"@deepseek-ai/dsh-client-ui-renderer": ">=0.2.1-rc.2 <0.3.0-0",
|
|
120
|
+
"@deepseek-ai/dsh-client-ui-settings": ">=0.2.1-rc.2 <0.3.0-0",
|
|
121
|
+
"@deepseek-ai/dsh-client-ui-settings-general": ">=0.2.1-rc.2 <0.3.0-0",
|
|
122
|
+
"@deepseek-ai/dsh-client-ui-settings-models": ">=0.2.1-rc.2 <0.3.0-0",
|
|
123
|
+
"@deepseek-ai/dsh-client-ui-sidebar": ">=0.2.1-rc.2 <0.3.0-0",
|
|
124
|
+
"@deepseek-ai/dsh-client-ui-theme": ">=0.2.1-rc.2 <0.3.0-0",
|
|
125
|
+
"@deepseek-ai/dsh-credentials": ">=0.2.1-rc.2 <0.3.0-0",
|
|
126
|
+
"@deepseek-ai/dsh-fs": ">=0.2.1-rc.2 <0.3.0-0",
|
|
127
|
+
"@deepseek-ai/dsh-host-webserver": ">=0.2.1-rc.2 <0.3.0-0",
|
|
128
|
+
"@deepseek-ai/dsh-launch-environment": ">=0.2.1-rc.2 <0.3.0-0",
|
|
129
|
+
"@deepseek-ai/dsh-llm": ">=0.2.1-rc.2 <0.3.0-0",
|
|
130
|
+
"@deepseek-ai/dsh-llm-pi-ai": ">=0.2.1-rc.2 <0.3.0-0",
|
|
131
|
+
"@deepseek-ai/dsh-sandbox": ">=0.2.1-rc.2 <0.3.0-0",
|
|
132
|
+
"@deepseek-ai/dsh-scope": ">=0.2.1-rc.2 <0.3.0-0",
|
|
133
|
+
"@deepseek-ai/dsh-session": ">=0.2.1-rc.2 <0.3.0-0",
|
|
134
|
+
"@deepseek-ai/dsh-settings": ">=0.2.1-rc.2 <0.3.0-0",
|
|
135
|
+
"@deepseek-ai/dsh-timeout": ">=0.2.1-rc.2 <0.3.0-0",
|
|
136
|
+
"@deepseek-ai/dsh-typert-protocol": ">=0.2.1-rc.2 <0.3.0-0",
|
|
137
|
+
"@earendil-works/pi-ai": "^1.1.0",
|
|
138
138
|
"react": "^18.2.0",
|
|
139
|
-
"react-dom": "^18.2.0"
|
|
139
|
+
"react-dom": "^18.2.0",
|
|
140
|
+
"@deepseek-ai/dsh-client-locale": ">=0.2.1-rc.2 <0.3.0-0"
|
|
140
141
|
},
|
|
141
142
|
"devDependencies": {
|
|
142
|
-
"@deepseek-ai/cordis": "4.0.
|
|
143
|
-
"@deepseek-ai/dsh-agent": "0.1
|
|
144
|
-
"@deepseek-ai/dsh-agent-default-model": "0.1
|
|
145
|
-
"@deepseek-ai/dsh-
|
|
146
|
-
"@deepseek-ai/dsh-api-
|
|
147
|
-
"@deepseek-ai/dsh-api-
|
|
148
|
-
"@deepseek-ai/dsh-
|
|
149
|
-
"@deepseek-ai/dsh-
|
|
150
|
-
"@deepseek-ai/dsh-
|
|
151
|
-
"@deepseek-ai/dsh-
|
|
152
|
-
"@deepseek-ai/dsh-
|
|
153
|
-
"@deepseek-ai/dsh-
|
|
154
|
-
"@deepseek-ai/dsh-client-
|
|
155
|
-
"@deepseek-ai/dsh-client-
|
|
156
|
-
"@deepseek-ai/dsh-client-ui-
|
|
157
|
-
"@deepseek-ai/dsh-client-ui-
|
|
158
|
-
"@deepseek-ai/dsh-client-ui-
|
|
159
|
-
"@deepseek-ai/dsh-client-ui-settings": "0.1
|
|
160
|
-
"@deepseek-ai/dsh-client-ui-settings-
|
|
161
|
-
"@deepseek-ai/dsh-client-ui-
|
|
162
|
-
"@deepseek-ai/dsh-client-ui-
|
|
163
|
-
"@deepseek-ai/dsh-
|
|
164
|
-
"@deepseek-ai/dsh-
|
|
165
|
-
"@deepseek-ai/dsh-
|
|
166
|
-
"@deepseek-ai/dsh-
|
|
167
|
-
"@deepseek-ai/dsh-
|
|
168
|
-
"@deepseek-ai/dsh-
|
|
169
|
-
"@deepseek-ai/dsh-
|
|
170
|
-
"@deepseek-ai/dsh-
|
|
171
|
-
"@deepseek-ai/dsh-
|
|
172
|
-
"@deepseek-ai/dsh-
|
|
173
|
-
"@deepseek-ai/dsh-
|
|
174
|
-
"@deepseek-ai/dsh-
|
|
175
|
-
"@deepseek-ai/dsh-
|
|
176
|
-
"@deepseek-ai/dsh-
|
|
177
|
-
"@deepseek-ai/dsh-
|
|
178
|
-
"@deepseek-ai/dsh-
|
|
179
|
-
"@deepseek-ai/dsh-
|
|
180
|
-
"@deepseek-ai/dsh-
|
|
181
|
-
"@deepseek-ai/dsh-session": "0.1
|
|
182
|
-
"@deepseek-ai/dsh-session-
|
|
183
|
-
"@deepseek-ai/dsh-session-
|
|
184
|
-
"@deepseek-ai/dsh-
|
|
185
|
-
"@deepseek-ai/dsh-
|
|
186
|
-
"@deepseek-ai/dsh-
|
|
187
|
-
"@deepseek-ai/dsh-
|
|
188
|
-
"@deepseek-ai/dsh-
|
|
189
|
-
"@deepseek-ai/dsh-
|
|
190
|
-
"@deepseek-ai/dsh-
|
|
191
|
-
"@deepseek-ai/dsh-
|
|
192
|
-
"@deepseek-ai/dsh-
|
|
193
|
-
"@deepseek-ai/dsh-
|
|
194
|
-
"@deepseek-ai/dsh-
|
|
195
|
-
"@deepseek-ai/dsh-
|
|
196
|
-
"@deepseek-ai/dsh-
|
|
197
|
-
"@deepseek-ai/dsh-
|
|
198
|
-
"@deepseek-ai/dsh-
|
|
199
|
-
"@deepseek-ai/dsh-util-
|
|
200
|
-
"@deepseek-ai/dsh-
|
|
201
|
-
"@
|
|
202
|
-
"@deepseek-ai/dsh-util-workspace-path": "0.1.5-rc.1",
|
|
203
|
-
"@deepseek-ai/dsh-workspace": "0.1.5-rc.1",
|
|
204
|
-
"@earendil-works/pi-ai": "0.85.1",
|
|
143
|
+
"@deepseek-ai/cordis": "4.0.5",
|
|
144
|
+
"@deepseek-ai/dsh-agent": "0.2.1-rc.2",
|
|
145
|
+
"@deepseek-ai/dsh-agent-default-model": "0.2.1-rc.2",
|
|
146
|
+
"@deepseek-ai/dsh-api-gateway": "0.2.1-rc.2",
|
|
147
|
+
"@deepseek-ai/dsh-api-remotes": "0.2.1-rc.2",
|
|
148
|
+
"@deepseek-ai/dsh-api-session-controller": "0.2.1-rc.2",
|
|
149
|
+
"@deepseek-ai/dsh-atomic-write": "0.2.1-rc.2",
|
|
150
|
+
"@deepseek-ai/dsh-attachment": "0.2.1-rc.2",
|
|
151
|
+
"@deepseek-ai/dsh-authorization": "0.2.1-rc.2",
|
|
152
|
+
"@deepseek-ai/dsh-brand": "0.2.1-rc.2",
|
|
153
|
+
"@deepseek-ai/dsh-chunked-list": "0.2.1-rc.2",
|
|
154
|
+
"@deepseek-ai/dsh-client-connection": "0.2.1-rc.2",
|
|
155
|
+
"@deepseek-ai/dsh-client-file-upload": "0.2.1-rc.2",
|
|
156
|
+
"@deepseek-ai/dsh-client-ui-conversation": "0.2.1-rc.2",
|
|
157
|
+
"@deepseek-ai/dsh-client-ui-model-selection": "0.2.1-rc.2",
|
|
158
|
+
"@deepseek-ai/dsh-client-ui-renderer": "0.2.1-rc.2",
|
|
159
|
+
"@deepseek-ai/dsh-client-ui-settings": "0.2.1-rc.2",
|
|
160
|
+
"@deepseek-ai/dsh-client-ui-settings-general": "0.2.1-rc.2",
|
|
161
|
+
"@deepseek-ai/dsh-client-ui-settings-models": "0.2.1-rc.2",
|
|
162
|
+
"@deepseek-ai/dsh-client-ui-sidebar": "0.2.1-rc.2",
|
|
163
|
+
"@deepseek-ai/dsh-client-ui-theme": "0.2.1-rc.2",
|
|
164
|
+
"@deepseek-ai/dsh-commands": "0.2.1-rc.2",
|
|
165
|
+
"@deepseek-ai/dsh-credentials": "0.2.1-rc.2",
|
|
166
|
+
"@deepseek-ai/dsh-deque": "0.2.1-rc.2",
|
|
167
|
+
"@deepseek-ai/dsh-file-reference": "0.2.1-rc.2",
|
|
168
|
+
"@deepseek-ai/dsh-fs": "0.2.1-rc.2",
|
|
169
|
+
"@deepseek-ai/dsh-home-paths": "0.2.1-rc.2",
|
|
170
|
+
"@deepseek-ai/dsh-host-webserver": "0.2.1-rc.2",
|
|
171
|
+
"@deepseek-ai/dsh-jobs": "0.2.1-rc.2",
|
|
172
|
+
"@deepseek-ai/dsh-launch-environment": "0.2.1-rc.2",
|
|
173
|
+
"@deepseek-ai/dsh-llm": "0.2.1-rc.2",
|
|
174
|
+
"@deepseek-ai/dsh-llm-pi-ai": "0.2.1-rc.2",
|
|
175
|
+
"@deepseek-ai/dsh-native-command": "0.2.1-rc.2",
|
|
176
|
+
"@deepseek-ai/dsh-sandbox": "0.2.1-rc.2",
|
|
177
|
+
"@deepseek-ai/dsh-sandbox-policy": "0.2.1-rc.2",
|
|
178
|
+
"@deepseek-ai/dsh-scope": "0.2.1-rc.2",
|
|
179
|
+
"@deepseek-ai/dsh-session": "0.2.1-rc.2",
|
|
180
|
+
"@deepseek-ai/dsh-session-persistence": "0.2.1-rc.2",
|
|
181
|
+
"@deepseek-ai/dsh-session-projection": "0.2.1-rc.2",
|
|
182
|
+
"@deepseek-ai/dsh-session-projection-cache": "0.2.1-rc.2",
|
|
183
|
+
"@deepseek-ai/dsh-session-query": "0.2.1-rc.2",
|
|
184
|
+
"@deepseek-ai/dsh-session-title": "0.2.1-rc.2",
|
|
185
|
+
"@deepseek-ai/dsh-settings": "0.2.1-rc.2",
|
|
186
|
+
"@deepseek-ai/dsh-skill": "0.2.1-rc.2",
|
|
187
|
+
"@deepseek-ai/dsh-storage": "0.2.1-rc.2",
|
|
188
|
+
"@deepseek-ai/dsh-storage-domain": "0.2.1-rc.2",
|
|
189
|
+
"@deepseek-ai/dsh-subagent": "0.2.1-rc.2",
|
|
190
|
+
"@deepseek-ai/dsh-system-prompt": "0.2.1-rc.2",
|
|
191
|
+
"@deepseek-ai/dsh-timeout": "0.2.1-rc.2",
|
|
192
|
+
"@deepseek-ai/dsh-tool-todo": "0.2.1-rc.2",
|
|
193
|
+
"@deepseek-ai/dsh-tools": "0.2.1-rc.2",
|
|
194
|
+
"@deepseek-ai/dsh-typert-protocol": "0.2.1-rc.2",
|
|
195
|
+
"@deepseek-ai/dsh-typert-registry": "0.2.1-rc.2",
|
|
196
|
+
"@deepseek-ai/dsh-user-approval": "0.2.1-rc.2",
|
|
197
|
+
"@deepseek-ai/dsh-util-crypto": "0.2.1-rc.2",
|
|
198
|
+
"@deepseek-ai/dsh-util-time": "0.2.1-rc.2",
|
|
199
|
+
"@deepseek-ai/dsh-util-values": "0.2.1-rc.2",
|
|
200
|
+
"@deepseek-ai/dsh-util-workspace-path": "0.2.1-rc.2",
|
|
201
|
+
"@deepseek-ai/dsh-workspace": "0.2.1-rc.2",
|
|
202
|
+
"@earendil-works/pi-ai": "1.1.0",
|
|
205
203
|
"@types/react": "^18.3.28",
|
|
206
204
|
"@types/react-dom": "^18.3.7",
|
|
207
205
|
"ajv": "^8.17.1",
|
|
@@ -210,6 +208,15 @@
|
|
|
210
208
|
"react-dom": "18.3.1",
|
|
211
209
|
"tsdown": "0.22.14",
|
|
212
210
|
"typescript": "^5.9.3",
|
|
213
|
-
"yaml": "^2.8.1"
|
|
211
|
+
"yaml": "^2.8.1",
|
|
212
|
+
"@deepseek-ai/dsh-client-locale": "0.2.1-rc.2",
|
|
213
|
+
"@deepseek-ai/dsh": "0.2.1-rc.2",
|
|
214
|
+
"@deepseek-ai/schemastery": "3.18.5",
|
|
215
|
+
"semver": "7.7.4"
|
|
216
|
+
},
|
|
217
|
+
"peerDependenciesMeta": {
|
|
218
|
+
"@deepseek-ai/dsh-client-locale": {
|
|
219
|
+
"optional": true
|
|
220
|
+
}
|
|
214
221
|
}
|
|
215
222
|
}
|
|
@@ -17,7 +17,7 @@ paths:
|
|
|
17
17
|
operationId: listResourceModels
|
|
18
18
|
responses:
|
|
19
19
|
'200':
|
|
20
|
-
description:
|
|
20
|
+
description: Authorized model identifiers and optional purpose metadata; reviewed capabilities remain in the client Profile
|
|
21
21
|
content:
|
|
22
22
|
application/json:
|
|
23
23
|
schema:
|
|
@@ -26,13 +26,21 @@ paths:
|
|
|
26
26
|
properties:
|
|
27
27
|
data:
|
|
28
28
|
type: array
|
|
29
|
-
minItems:
|
|
29
|
+
minItems: 0
|
|
30
30
|
maxItems: 128
|
|
31
31
|
items:
|
|
32
32
|
type: object
|
|
33
33
|
required: [id]
|
|
34
34
|
properties:
|
|
35
35
|
id: { type: string, minLength: 1, maxLength: 256 }
|
|
36
|
+
type:
|
|
37
|
+
type: string
|
|
38
|
+
description: >-
|
|
39
|
+
Optional EduWork purpose extension, independent of input modalities and
|
|
40
|
+
the OpenAI object field. Known values are llm, embedding, rerank, image,
|
|
41
|
+
tts and unknown. Server declarations take precedence over client Profile
|
|
42
|
+
metadata; absent types use Profile metadata. Unsupported or unresolved
|
|
43
|
+
types normalize to unknown. Only llm registers for conversation.
|
|
36
44
|
'401': { description: Access Token is invalid or expired }
|
|
37
45
|
'403': { description: Model discovery is not permitted }
|
|
38
46
|
'404': { description: Discovery endpoint is unavailable }
|
|
@@ -45,6 +53,6 @@ components:
|
|
|
45
53
|
headers:
|
|
46
54
|
Retry-After: { schema: { type: string }, description: Seconds or HTTP date for a future retry; never a refresh-token grant }
|
|
47
55
|
Unavailable:
|
|
48
|
-
description: Temporary resource failure; do not clear identity or
|
|
56
|
+
description: Temporary resource failure; do not clear identity or a still-valid Access Token
|
|
49
57
|
securitySchemes:
|
|
50
58
|
accessToken: { type: http, scheme: bearer, description: Model runtime credential }
|
|
@@ -166,6 +166,16 @@
|
|
|
166
166
|
"oauth",
|
|
167
167
|
"oidc"
|
|
168
168
|
]
|
|
169
|
+
},
|
|
170
|
+
"additionalScopes": {
|
|
171
|
+
"type": "array",
|
|
172
|
+
"maxItems": 64,
|
|
173
|
+
"uniqueItems": true,
|
|
174
|
+
"items": {
|
|
175
|
+
"type": "string",
|
|
176
|
+
"maxLength": 128,
|
|
177
|
+
"pattern": "^[\\u0021\\u0023-\\u005b\\u005d-\\u007e]+$"
|
|
178
|
+
}
|
|
169
179
|
}
|
|
170
180
|
},
|
|
171
181
|
"allOf": [
|
|
@@ -194,6 +204,7 @@
|
|
|
194
204
|
"properties": {
|
|
195
205
|
"clientId": false,
|
|
196
206
|
"identityMode": false,
|
|
207
|
+
"additionalScopes": false,
|
|
197
208
|
"discoveryUrl": {
|
|
198
209
|
"$ref": "#/$defs/secureEndpointURL"
|
|
199
210
|
},
|
|
@@ -331,6 +342,11 @@
|
|
|
331
342
|
"minLength": 1,
|
|
332
343
|
"maxLength": 120
|
|
333
344
|
},
|
|
345
|
+
"loginButtonLabel": {
|
|
346
|
+
"type": "string",
|
|
347
|
+
"minLength": 1,
|
|
348
|
+
"maxLength": 40
|
|
349
|
+
},
|
|
334
350
|
"loginDescription": {
|
|
335
351
|
"type": "string",
|
|
336
352
|
"minLength": 1,
|
|
@@ -338,6 +354,14 @@
|
|
|
338
354
|
},
|
|
339
355
|
"supportURL": {
|
|
340
356
|
"$ref": "#/$defs/httpsURL"
|
|
357
|
+
},
|
|
358
|
+
"language": {
|
|
359
|
+
"enum": [
|
|
360
|
+
"auto",
|
|
361
|
+
"zh-CN",
|
|
362
|
+
"en"
|
|
363
|
+
],
|
|
364
|
+
"type": "string"
|
|
341
365
|
}
|
|
342
366
|
}
|
|
343
367
|
},
|
|
@@ -495,6 +519,18 @@
|
|
|
495
519
|
"minLength": 1,
|
|
496
520
|
"maxLength": 256
|
|
497
521
|
},
|
|
522
|
+
"type": {
|
|
523
|
+
"type": "string",
|
|
524
|
+
"enum": [
|
|
525
|
+
"llm",
|
|
526
|
+
"embedding",
|
|
527
|
+
"rerank",
|
|
528
|
+
"image",
|
|
529
|
+
"tts",
|
|
530
|
+
"unknown"
|
|
531
|
+
],
|
|
532
|
+
"description": "Model purpose, independent of input modalities. Server type takes precedence; local metadata fills absent server types. Missing types resolve to unknown; only llm registers for conversation."
|
|
533
|
+
},
|
|
498
534
|
"name": {
|
|
499
535
|
"type": "string",
|
|
500
536
|
"minLength": 1,
|