melchizedek-agents 1.0.3 → 1.2.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/.env.example +29 -2
- package/AGENT_SETUP.md +3 -1
- package/CHANGELOG.md +524 -0
- package/DOCUMENTATION.md +178 -43
- package/ONBOARDING.md +339 -0
- package/QUICKSTART.md +15 -2
- package/README.md +6 -2
- package/config/agents/README.md +2 -2
- package/config/agents/examples/ares.yaml +6 -10
- package/config/agents/examples/assistant.yaml +6 -6
- package/config/agents/examples/augustin.yaml +9 -15
- package/config/agents/examples/cartographers.yaml +6 -6
- package/config/agents/examples/council.yaml +7 -7
- package/config/agents/examples/critic.yaml +24 -24
- package/config/agents/examples/harness.yaml +4 -4
- package/config/agents/examples/image_production.yaml +37 -35
- package/config/agents/examples/librarian.yaml +4 -4
- package/config/agents/examples/patient_advocate.yaml +6 -10
- package/config/agents/examples/pipeline.yaml +20 -19
- package/config/agents/examples/research.yaml +36 -43
- package/config/agents/examples/scribe.yaml +31 -32
- package/config/agents/examples/scriptorium.yaml +6 -6
- package/config/agents/examples/structured_critic.yaml +82 -0
- package/config/agents/examples/style_council.yaml +9 -11
- package/config/agents/examples/syndicate.yaml +3 -5
- package/config/agents/examples/tutor.yaml +2 -2
- package/config/agents/examples/weather.yaml +2 -2
- package/config/agents/syndicate.schema.json +859 -13
- package/config/agents/syndicateSchema.yaml +122 -73
- package/config/agents/templates/README.md +1 -1
- package/config/agents/templates/account_memory.yaml +4 -4
- package/config/agents/templates/case_desk.yaml +6 -6
- package/config/agents/templates/conversational.yaml +2 -2
- package/config/agents/templates/draft_review.yaml +6 -6
- package/config/agents/templates/intake_extractor.yaml +64 -62
- package/config/agents/templates/research_brief.yaml +6 -6
- package/config/agents/templates/research_desk.yaml +6 -6
- package/config/agents/templates/review_panel.yaml +8 -8
- package/config/agents/templates/support_triage.yaml +30 -29
- package/config/agents/templates/systems_operator.yaml +24 -5
- package/db/migrations/0014_durable_runs.sql +31 -0
- package/dist/lib/a2a/app.d.ts +27 -0
- package/dist/lib/a2a/app.js +64 -5
- package/dist/lib/a2a/executor.d.ts +7 -1
- package/dist/lib/a2a/executor.js +43 -5
- package/dist/lib/a2a/oauthSetup.d.ts +106 -0
- package/dist/lib/a2a/oauthSetup.js +259 -0
- package/dist/lib/agentDialect.d.ts +76 -0
- package/dist/lib/agentDialect.js +151 -0
- package/dist/lib/compile.d.ts +42 -6
- package/dist/lib/compile.js +97 -45
- package/dist/lib/compileNative.d.ts +11 -3
- package/dist/lib/compileNative.js +20 -1
- package/dist/lib/dispatch.d.ts +10 -5
- package/dist/lib/dispatch.js +10 -5
- package/dist/lib/doctor.d.ts +110 -1
- package/dist/lib/doctor.js +205 -9
- package/dist/lib/loadSyndicate.d.ts +54 -2
- package/dist/lib/loadSyndicate.js +22 -2
- package/dist/lib/memory/namespace.d.ts +6 -5
- package/dist/lib/memory/namespace.js +6 -5
- package/dist/lib/memory/providers.js +3 -4
- package/dist/lib/models/capabilities.d.ts +25 -1
- package/dist/lib/models/capabilities.js +79 -1
- package/dist/lib/models/chatCompletionsAdapter.d.ts +11 -3
- package/dist/lib/models/chatCompletionsAdapter.js +19 -5
- package/dist/lib/models/claudeAdapter.js +4 -0
- package/dist/lib/models/contract.d.ts +5 -2
- package/dist/lib/models/gateway.d.ts +2 -1
- package/dist/lib/models/gateway.js +4 -2
- package/dist/lib/models/gatewayAdapter.d.ts +7 -1
- package/dist/lib/models/gatewayAdapter.js +8 -0
- package/dist/lib/models/geminiAdapter.js +8 -2
- package/dist/lib/models/genaiMapping.d.ts +8 -4
- package/dist/lib/models/genaiMapping.js +23 -9
- package/dist/lib/models/gptAdapter.d.ts +4 -2
- package/dist/lib/models/gptAdapter.js +11 -4
- package/dist/lib/models/grokAdapter.d.ts +3 -1
- package/dist/lib/models/grokAdapter.js +11 -3
- package/dist/lib/models/kimiAdapter.d.ts +2 -1
- package/dist/lib/models/kimiAdapter.js +3 -3
- package/dist/lib/models/reasoning.d.ts +30 -2
- package/dist/lib/models/reasoning.js +56 -5
- package/dist/lib/observability/tracer.d.ts +8 -1
- package/dist/lib/observability/tracer.js +33 -5
- package/dist/lib/onboarding.d.ts +134 -0
- package/dist/lib/onboarding.js +539 -0
- package/dist/lib/runtime/approvals.d.ts +8 -0
- package/dist/lib/runtime/approvals.js +4 -3
- package/dist/lib/runtime/credentials.d.ts +6 -0
- package/dist/lib/runtime/native/agentLoop.d.ts +23 -3
- package/dist/lib/runtime/native/agentLoop.js +107 -11
- package/dist/lib/runtime/native/checkpoint.d.ts +171 -0
- package/dist/lib/runtime/native/checkpoint.js +359 -0
- package/dist/lib/runtime/native/delegate.d.ts +222 -18
- package/dist/lib/runtime/native/delegate.js +390 -39
- package/dist/lib/runtime/native/interrupts.d.ts +184 -2
- package/dist/lib/runtime/native/interrupts.js +391 -1
- package/dist/lib/runtime/native/request.d.ts +13 -3
- package/dist/lib/runtime/native/request.js +28 -4
- package/dist/lib/runtime/native/telemetry.js +10 -15
- package/dist/lib/runtime/questions.d.ts +7 -4
- package/dist/lib/runtime/sessions.d.ts +1 -1
- package/dist/lib/runtime/syndicateTurn.d.ts +11 -3
- package/dist/lib/runtime/syndicateTurn.js +353 -68
- package/dist/lib/runtime/turnControl.d.ts +56 -0
- package/dist/lib/runtime/turnControl.js +10 -0
- package/dist/lib/session/transcript.d.ts +9 -0
- package/dist/lib/session/transcript.js +20 -1
- package/dist/lib/skills.d.ts +18 -0
- package/dist/lib/skills.js +73 -1
- package/dist/lib/storage/postgres/index.d.ts +12 -2
- package/dist/lib/storage/postgres/index.js +8 -3
- package/dist/lib/storage/postgres/taskQueue.d.ts +20 -4
- package/dist/lib/storage/postgres/taskQueue.js +29 -5
- package/dist/lib/storage/postgres/taskStore.d.ts +26 -2
- package/dist/lib/storage/postgres/taskStore.js +74 -8
- package/dist/lib/syndicateSchema.d.ts +316 -1
- package/dist/lib/syndicateSchema.js +203 -29
- package/dist/lib/tools/auth.d.ts +20 -6
- package/dist/lib/tools/auth.js +21 -5
- package/dist/lib/tools/credentialEnv.d.ts +28 -0
- package/dist/lib/tools/credentialEnv.js +52 -0
- package/dist/lib/tools/credentialHosts.d.ts +88 -0
- package/dist/lib/tools/credentialHosts.js +165 -0
- package/dist/lib/tools/credentialStore.js +9 -2
- package/dist/lib/tools/credentialUses.d.ts +92 -0
- package/dist/lib/tools/credentialUses.js +112 -0
- package/dist/lib/tools/mcpToolFactory.d.ts +25 -2
- package/dist/lib/tools/mcpToolFactory.js +179 -21
- package/dist/lib/tools/oauthConsent.js +8 -1
- package/dist/lib/tools/oauthHosts.d.ts +73 -0
- package/dist/lib/tools/oauthHosts.js +154 -0
- package/dist/lib/tools/oauthTools.d.ts +242 -0
- package/dist/lib/tools/oauthTools.js +447 -0
- package/dist/lib/tools/openapiTools.d.ts +11 -6
- package/dist/lib/tools/openapiTools.js +88 -38
- package/dist/lib/tools/taskTools.d.ts +61 -6
- package/dist/lib/tools/taskTools.js +145 -21
- package/dist/lib/workflow/turn.d.ts +22 -3
- package/dist/lib/workflow/turn.js +151 -31
- package/dist/lib/workflow.d.ts +14 -7
- package/dist/lib/workflow.js +14 -7
- package/dist/lib/workflowConfig.d.ts +6 -0
- package/dist/scripts/a2a_server.d.ts +36 -0
- package/dist/scripts/a2a_server.js +131 -1
- package/dist/scripts/assistant_worker.d.ts +12 -0
- package/dist/scripts/assistant_worker.js +81 -22
- package/dist/scripts/doctor.d.ts +7 -2
- package/dist/scripts/doctor.js +9 -4
- package/dist/scripts/setup.d.ts +23 -0
- package/dist/scripts/setup.js +154 -0
- package/dist/scripts/skills_install.d.ts +3 -1
- package/dist/scripts/skills_install.js +17 -2
- package/dist/scripts/yaml_codemod.d.ts +62 -0
- package/dist/scripts/yaml_codemod.js +652 -0
- package/package.json +8 -2
- package/skills/README.md +11 -2
- package/skills/briefs/_shared.md +1 -1
- package/skills/briefs/melchizedek-author.md +7 -5
- package/skills/briefs/melchizedek-models.md +7 -4
- package/skills/briefs/melchizedek.md +1 -0
- package/skills/briefs/skills-readme.md +3 -1
- package/skills/melchizedek/SKILL.md +1 -0
- package/skills/melchizedek-author/SKILL.md +7 -4
- package/skills/melchizedek-author/assets/minimal.yaml +13 -13
- package/skills/melchizedek-models/SKILL.md +11 -4
- package/skills/melchizedek-onboard/SKILL.md +49 -0
- package/skills/melchizedek-onboard-cloud/SKILL.md +38 -0
- package/skills/melchizedek-onboard-keys/SKILL.md +35 -0
- package/skills/melchizedek-onboard-local/SKILL.md +41 -0
- package/skills/melchizedek-onboard-serve/SKILL.md +43 -0
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
}
|
|
48
48
|
},
|
|
49
49
|
"require_approval": {
|
|
50
|
-
"description": "Tools from this agent's `tools` that run only after a person approves the exact call (ADR 0028): the A2A task ends input-required until the caller answers approve or reject. Allowed on the
|
|
50
|
+
"description": "Tools from this agent's `tools` that run only after a person approves the exact call (ADR 0028): the A2A task ends input-required until the caller answers approve or reject. Allowed on any agent but one a workflow map node runs; inside a delegated subagent the pause reaches the caller through its open call (ADR 0110).",
|
|
51
51
|
"type": "array",
|
|
52
52
|
"items": {
|
|
53
53
|
"type": "string",
|
|
@@ -156,7 +156,8 @@
|
|
|
156
156
|
}
|
|
157
157
|
},
|
|
158
158
|
"additionalProperties": {},
|
|
159
|
-
"description": "
|
|
159
|
+
"description": "Deprecated v1 spelling (ADR 0115): write `sampling` (temperature, top_p, max_output_tokens, stop), `output.mime` (responseMimeType), `reasoning` (thinkingConfig, reasoningEffort) and `tool_choice` (toolConfig.functionCallingConfig) instead; npx melchizedek-codemod rewrites a file. Still read: the Gemini GenerateContentConfig shape the engine takes. Do not set tools here.",
|
|
160
|
+
"deprecated": true
|
|
160
161
|
},
|
|
161
162
|
"reasoning": {
|
|
162
163
|
"anyOf": [
|
|
@@ -166,7 +167,9 @@
|
|
|
166
167
|
"none",
|
|
167
168
|
"low",
|
|
168
169
|
"medium",
|
|
169
|
-
"high"
|
|
170
|
+
"high",
|
|
171
|
+
"xhigh",
|
|
172
|
+
"max"
|
|
170
173
|
]
|
|
171
174
|
},
|
|
172
175
|
{
|
|
@@ -185,15 +188,278 @@
|
|
|
185
188
|
"additionalProperties": false
|
|
186
189
|
}
|
|
187
190
|
],
|
|
188
|
-
"description": "How hard this agent reasons, on any provider: none | low | medium | high, or { budget_tokens: <int> }. Replaces generateContentConfig.thinkingConfig and reasoningEffort (ADR 0047)."
|
|
191
|
+
"description": "How hard this agent reasons, on any provider: none | low | medium | high | xhigh | max, or { budget_tokens: <int> }. xhigh and max reach the models that take them; elsewhere they go as the model's highest setting (ADR 0117). Replaces generateContentConfig.thinkingConfig and reasoningEffort (ADR 0047)."
|
|
192
|
+
},
|
|
193
|
+
"sampling": {
|
|
194
|
+
"type": "object",
|
|
195
|
+
"properties": {
|
|
196
|
+
"temperature": {
|
|
197
|
+
"description": "Sampling temperature. Replaces generateContentConfig.temperature.",
|
|
198
|
+
"type": "number"
|
|
199
|
+
},
|
|
200
|
+
"top_p": {
|
|
201
|
+
"description": "Nucleus sampling. Replaces generateContentConfig.topP.",
|
|
202
|
+
"type": "number"
|
|
203
|
+
},
|
|
204
|
+
"max_output_tokens": {
|
|
205
|
+
"description": "Cap on the reply's tokens. Replaces generateContentConfig.maxOutputTokens.",
|
|
206
|
+
"type": "integer",
|
|
207
|
+
"exclusiveMinimum": 0,
|
|
208
|
+
"maximum": 9007199254740991
|
|
209
|
+
},
|
|
210
|
+
"stop": {
|
|
211
|
+
"description": "Stop sequences. Replaces generateContentConfig.stopSequences.",
|
|
212
|
+
"minItems": 1,
|
|
213
|
+
"type": "array",
|
|
214
|
+
"items": {
|
|
215
|
+
"type": "string"
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
},
|
|
219
|
+
"additionalProperties": false,
|
|
220
|
+
"description": "How this agent samples, on any provider (ADR 0115). Replaces the same keys under generateContentConfig; cannot be combined with them.",
|
|
221
|
+
"minProperties": 1
|
|
222
|
+
},
|
|
223
|
+
"output": {
|
|
224
|
+
"type": "object",
|
|
225
|
+
"properties": {
|
|
226
|
+
"schema": {
|
|
227
|
+
"description": "JSON Schema the final reply is one object of. Replaces outputSchema; same behaviour beside tools and subagents (ADR 0109).",
|
|
228
|
+
"type": "object",
|
|
229
|
+
"propertyNames": {
|
|
230
|
+
"type": "string"
|
|
231
|
+
},
|
|
232
|
+
"additionalProperties": {}
|
|
233
|
+
},
|
|
234
|
+
"mime": {
|
|
235
|
+
"description": "application/json: JSON mode without a schema. Replaces generateContentConfig.responseMimeType.",
|
|
236
|
+
"type": "string",
|
|
237
|
+
"enum": [
|
|
238
|
+
"application/json",
|
|
239
|
+
"text/plain"
|
|
240
|
+
]
|
|
241
|
+
}
|
|
242
|
+
},
|
|
243
|
+
"additionalProperties": false,
|
|
244
|
+
"description": "What this agent's final reply is (ADR 0115). Replaces outputSchema and generateContentConfig.responseMimeType; cannot be combined with them.",
|
|
245
|
+
"minProperties": 1
|
|
246
|
+
},
|
|
247
|
+
"tool_choice": {
|
|
248
|
+
"anyOf": [
|
|
249
|
+
{
|
|
250
|
+
"type": "string",
|
|
251
|
+
"enum": [
|
|
252
|
+
"auto",
|
|
253
|
+
"none",
|
|
254
|
+
"required"
|
|
255
|
+
]
|
|
256
|
+
},
|
|
257
|
+
{
|
|
258
|
+
"type": "object",
|
|
259
|
+
"properties": {
|
|
260
|
+
"name": {
|
|
261
|
+
"type": "string",
|
|
262
|
+
"minLength": 1,
|
|
263
|
+
"description": "The one tool the model must call: a name from this agent's tools, subagents or MCP tools."
|
|
264
|
+
}
|
|
265
|
+
},
|
|
266
|
+
"required": [
|
|
267
|
+
"name"
|
|
268
|
+
],
|
|
269
|
+
"additionalProperties": false
|
|
270
|
+
}
|
|
271
|
+
],
|
|
272
|
+
"description": "Which tools the model may call, on any provider (ADR 0117): auto (the default), none, required (some tool), or { name: <tool> } (that tool). A provider that rejects forcing sends a weaker choice and marks the span llm.tool_choice.weakened. Replaces generateContentConfig.toolConfig.functionCallingConfig; cannot be combined with it."
|
|
273
|
+
},
|
|
274
|
+
"model_overrides": {
|
|
275
|
+
"type": "object",
|
|
276
|
+
"properties": {
|
|
277
|
+
"gemini": {
|
|
278
|
+
"type": "object",
|
|
279
|
+
"properties": {
|
|
280
|
+
"instruction": {
|
|
281
|
+
"description": "Replaces the agent's instruction on this provider.",
|
|
282
|
+
"type": "string",
|
|
283
|
+
"minLength": 1
|
|
284
|
+
},
|
|
285
|
+
"instruction_append": {
|
|
286
|
+
"description": "Appended to the agent's instruction, after a blank line, on this provider.",
|
|
287
|
+
"type": "string",
|
|
288
|
+
"minLength": 1
|
|
289
|
+
}
|
|
290
|
+
},
|
|
291
|
+
"additionalProperties": false,
|
|
292
|
+
"description": "The instruction on one provider: exactly one of instruction or instruction_append.",
|
|
293
|
+
"oneOf": [
|
|
294
|
+
{
|
|
295
|
+
"required": [
|
|
296
|
+
"instruction"
|
|
297
|
+
]
|
|
298
|
+
},
|
|
299
|
+
{
|
|
300
|
+
"required": [
|
|
301
|
+
"instruction_append"
|
|
302
|
+
]
|
|
303
|
+
}
|
|
304
|
+
]
|
|
305
|
+
},
|
|
306
|
+
"anthropic": {
|
|
307
|
+
"type": "object",
|
|
308
|
+
"properties": {
|
|
309
|
+
"instruction": {
|
|
310
|
+
"description": "Replaces the agent's instruction on this provider.",
|
|
311
|
+
"type": "string",
|
|
312
|
+
"minLength": 1
|
|
313
|
+
},
|
|
314
|
+
"instruction_append": {
|
|
315
|
+
"description": "Appended to the agent's instruction, after a blank line, on this provider.",
|
|
316
|
+
"type": "string",
|
|
317
|
+
"minLength": 1
|
|
318
|
+
}
|
|
319
|
+
},
|
|
320
|
+
"additionalProperties": false,
|
|
321
|
+
"description": "The instruction on one provider: exactly one of instruction or instruction_append.",
|
|
322
|
+
"oneOf": [
|
|
323
|
+
{
|
|
324
|
+
"required": [
|
|
325
|
+
"instruction"
|
|
326
|
+
]
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
"required": [
|
|
330
|
+
"instruction_append"
|
|
331
|
+
]
|
|
332
|
+
}
|
|
333
|
+
]
|
|
334
|
+
},
|
|
335
|
+
"openai": {
|
|
336
|
+
"type": "object",
|
|
337
|
+
"properties": {
|
|
338
|
+
"instruction": {
|
|
339
|
+
"description": "Replaces the agent's instruction on this provider.",
|
|
340
|
+
"type": "string",
|
|
341
|
+
"minLength": 1
|
|
342
|
+
},
|
|
343
|
+
"instruction_append": {
|
|
344
|
+
"description": "Appended to the agent's instruction, after a blank line, on this provider.",
|
|
345
|
+
"type": "string",
|
|
346
|
+
"minLength": 1
|
|
347
|
+
}
|
|
348
|
+
},
|
|
349
|
+
"additionalProperties": false,
|
|
350
|
+
"description": "The instruction on one provider: exactly one of instruction or instruction_append.",
|
|
351
|
+
"oneOf": [
|
|
352
|
+
{
|
|
353
|
+
"required": [
|
|
354
|
+
"instruction"
|
|
355
|
+
]
|
|
356
|
+
},
|
|
357
|
+
{
|
|
358
|
+
"required": [
|
|
359
|
+
"instruction_append"
|
|
360
|
+
]
|
|
361
|
+
}
|
|
362
|
+
]
|
|
363
|
+
},
|
|
364
|
+
"xai": {
|
|
365
|
+
"type": "object",
|
|
366
|
+
"properties": {
|
|
367
|
+
"instruction": {
|
|
368
|
+
"description": "Replaces the agent's instruction on this provider.",
|
|
369
|
+
"type": "string",
|
|
370
|
+
"minLength": 1
|
|
371
|
+
},
|
|
372
|
+
"instruction_append": {
|
|
373
|
+
"description": "Appended to the agent's instruction, after a blank line, on this provider.",
|
|
374
|
+
"type": "string",
|
|
375
|
+
"minLength": 1
|
|
376
|
+
}
|
|
377
|
+
},
|
|
378
|
+
"additionalProperties": false,
|
|
379
|
+
"description": "The instruction on one provider: exactly one of instruction or instruction_append.",
|
|
380
|
+
"oneOf": [
|
|
381
|
+
{
|
|
382
|
+
"required": [
|
|
383
|
+
"instruction"
|
|
384
|
+
]
|
|
385
|
+
},
|
|
386
|
+
{
|
|
387
|
+
"required": [
|
|
388
|
+
"instruction_append"
|
|
389
|
+
]
|
|
390
|
+
}
|
|
391
|
+
]
|
|
392
|
+
},
|
|
393
|
+
"moonshot": {
|
|
394
|
+
"type": "object",
|
|
395
|
+
"properties": {
|
|
396
|
+
"instruction": {
|
|
397
|
+
"description": "Replaces the agent's instruction on this provider.",
|
|
398
|
+
"type": "string",
|
|
399
|
+
"minLength": 1
|
|
400
|
+
},
|
|
401
|
+
"instruction_append": {
|
|
402
|
+
"description": "Appended to the agent's instruction, after a blank line, on this provider.",
|
|
403
|
+
"type": "string",
|
|
404
|
+
"minLength": 1
|
|
405
|
+
}
|
|
406
|
+
},
|
|
407
|
+
"additionalProperties": false,
|
|
408
|
+
"description": "The instruction on one provider: exactly one of instruction or instruction_append.",
|
|
409
|
+
"oneOf": [
|
|
410
|
+
{
|
|
411
|
+
"required": [
|
|
412
|
+
"instruction"
|
|
413
|
+
]
|
|
414
|
+
},
|
|
415
|
+
{
|
|
416
|
+
"required": [
|
|
417
|
+
"instruction_append"
|
|
418
|
+
]
|
|
419
|
+
}
|
|
420
|
+
]
|
|
421
|
+
},
|
|
422
|
+
"ollama": {
|
|
423
|
+
"type": "object",
|
|
424
|
+
"properties": {
|
|
425
|
+
"instruction": {
|
|
426
|
+
"description": "Replaces the agent's instruction on this provider.",
|
|
427
|
+
"type": "string",
|
|
428
|
+
"minLength": 1
|
|
429
|
+
},
|
|
430
|
+
"instruction_append": {
|
|
431
|
+
"description": "Appended to the agent's instruction, after a blank line, on this provider.",
|
|
432
|
+
"type": "string",
|
|
433
|
+
"minLength": 1
|
|
434
|
+
}
|
|
435
|
+
},
|
|
436
|
+
"additionalProperties": false,
|
|
437
|
+
"description": "The instruction on one provider: exactly one of instruction or instruction_append.",
|
|
438
|
+
"oneOf": [
|
|
439
|
+
{
|
|
440
|
+
"required": [
|
|
441
|
+
"instruction"
|
|
442
|
+
]
|
|
443
|
+
},
|
|
444
|
+
{
|
|
445
|
+
"required": [
|
|
446
|
+
"instruction_append"
|
|
447
|
+
]
|
|
448
|
+
}
|
|
449
|
+
]
|
|
450
|
+
}
|
|
451
|
+
},
|
|
452
|
+
"additionalProperties": false,
|
|
453
|
+
"description": "Per-provider instruction, keyed by the provider of the agent's model id (lib/models/providerMap.ts). Applied at compile time before the skills index; not to fallback_model, and never to globalInstruction (ADR 0115)."
|
|
189
454
|
},
|
|
190
455
|
"outputSchema": {
|
|
191
|
-
"description": "JSON Schema for structured output: the agent answers with one JSON object matching it.
|
|
456
|
+
"description": "Deprecated v1 spelling (ADR 0115): write output.schema. JSON Schema for structured output: the agent answers with one JSON object matching it. An agent that also calls tools or delegates to subagents does that first, then ends its turn on that JSON: the schema travels beside the tools where the model takes both in one request, as a set_model_response tool elsewhere (the capability matrix's structured_output_with_tools, ADR 0109).",
|
|
192
457
|
"type": "object",
|
|
193
458
|
"propertyNames": {
|
|
194
459
|
"type": "string"
|
|
195
460
|
},
|
|
196
|
-
"additionalProperties": {}
|
|
461
|
+
"additionalProperties": {},
|
|
462
|
+
"deprecated": true
|
|
197
463
|
},
|
|
198
464
|
"mcp_server_url": {
|
|
199
465
|
"description": "MCP server (SSE) whose tools are discovered at runtime and merged with `tools`.",
|
|
@@ -208,6 +474,88 @@
|
|
|
208
474
|
"minLength": 1
|
|
209
475
|
}
|
|
210
476
|
},
|
|
477
|
+
"mcp_auth": {
|
|
478
|
+
"description": "The OAuth grant the MCP server takes (ADR 0112). With authorization_code, each user's own token on their own connection, and mcp_tools is required. Needs mcp_server_url; replaces MCP_BEARER_TOKENS for this server.",
|
|
479
|
+
"type": "object",
|
|
480
|
+
"properties": {
|
|
481
|
+
"oauth2": {
|
|
482
|
+
"type": "object",
|
|
483
|
+
"properties": {
|
|
484
|
+
"provider": {
|
|
485
|
+
"type": "string",
|
|
486
|
+
"pattern": "^[a-z0-9][a-z0-9._-]{0,63}$",
|
|
487
|
+
"description": "The credential store's name for the provider (e.g. github). Every tool naming it shares one grant."
|
|
488
|
+
},
|
|
489
|
+
"grant": {
|
|
490
|
+
"type": "string",
|
|
491
|
+
"enum": [
|
|
492
|
+
"authorization_code",
|
|
493
|
+
"client_credentials"
|
|
494
|
+
],
|
|
495
|
+
"description": "authorization_code: each user's own token, granted through the consent pause (ADR 0085). client_credentials: the server's own token, from the token endpoint."
|
|
496
|
+
},
|
|
497
|
+
"authorization_url": {
|
|
498
|
+
"description": "The provider's authorization endpoint (https). authorization_code only.",
|
|
499
|
+
"type": "string",
|
|
500
|
+
"format": "uri"
|
|
501
|
+
},
|
|
502
|
+
"token_url": {
|
|
503
|
+
"type": "string",
|
|
504
|
+
"format": "uri",
|
|
505
|
+
"description": "The provider's token endpoint (https)."
|
|
506
|
+
},
|
|
507
|
+
"client_id": {
|
|
508
|
+
"description": "The OAuth client id, written out (it is not a secret). Or client_id_env.",
|
|
509
|
+
"type": "string",
|
|
510
|
+
"minLength": 1,
|
|
511
|
+
"maxLength": 512
|
|
512
|
+
},
|
|
513
|
+
"client_id_env": {
|
|
514
|
+
"description": "Environment variable holding the client id. Or client_id.",
|
|
515
|
+
"type": "string",
|
|
516
|
+
"pattern": "^[A-Z_][A-Z0-9_]*$"
|
|
517
|
+
},
|
|
518
|
+
"client_secret_env": {
|
|
519
|
+
"description": "Environment variable NAME holding the client secret, never the value. Required for client_credentials; omit for a public client (PKCE alone).",
|
|
520
|
+
"type": "string",
|
|
521
|
+
"pattern": "^[A-Z_][A-Z0-9_]*$"
|
|
522
|
+
},
|
|
523
|
+
"scopes": {
|
|
524
|
+
"description": "The scopes the grant asks for.",
|
|
525
|
+
"maxItems": 64,
|
|
526
|
+
"type": "array",
|
|
527
|
+
"items": {
|
|
528
|
+
"type": "string",
|
|
529
|
+
"pattern": "^[\\x21\\x23-\\x5b\\x5d-\\x7e]{1,256}$"
|
|
530
|
+
}
|
|
531
|
+
},
|
|
532
|
+
"authorization_params": {
|
|
533
|
+
"description": "Extra authorization parameters (e.g. access_type: offline). authorization_code only; never state, redirect_uri, scope, client_id or the PKCE pair.",
|
|
534
|
+
"type": "object",
|
|
535
|
+
"propertyNames": {
|
|
536
|
+
"type": "string",
|
|
537
|
+
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
|
|
538
|
+
},
|
|
539
|
+
"additionalProperties": {
|
|
540
|
+
"type": "string",
|
|
541
|
+
"maxLength": 512
|
|
542
|
+
}
|
|
543
|
+
}
|
|
544
|
+
},
|
|
545
|
+
"required": [
|
|
546
|
+
"provider",
|
|
547
|
+
"grant",
|
|
548
|
+
"token_url"
|
|
549
|
+
],
|
|
550
|
+
"additionalProperties": false,
|
|
551
|
+
"description": "An OAuth 2 access token sent as a bearer token on every call (lib/tools/oauthTools.ts). Secrets come from environment variable names, never values."
|
|
552
|
+
}
|
|
553
|
+
},
|
|
554
|
+
"required": [
|
|
555
|
+
"oauth2"
|
|
556
|
+
],
|
|
557
|
+
"additionalProperties": false
|
|
558
|
+
},
|
|
211
559
|
"skills": {
|
|
212
560
|
"type": "object",
|
|
213
561
|
"properties": {
|
|
@@ -320,6 +668,78 @@
|
|
|
320
668
|
"name"
|
|
321
669
|
],
|
|
322
670
|
"additionalProperties": false
|
|
671
|
+
},
|
|
672
|
+
"oauth2": {
|
|
673
|
+
"type": "object",
|
|
674
|
+
"properties": {
|
|
675
|
+
"provider": {
|
|
676
|
+
"type": "string",
|
|
677
|
+
"pattern": "^[a-z0-9][a-z0-9._-]{0,63}$",
|
|
678
|
+
"description": "The credential store's name for the provider (e.g. github). Every tool naming it shares one grant."
|
|
679
|
+
},
|
|
680
|
+
"grant": {
|
|
681
|
+
"type": "string",
|
|
682
|
+
"enum": [
|
|
683
|
+
"authorization_code",
|
|
684
|
+
"client_credentials"
|
|
685
|
+
],
|
|
686
|
+
"description": "authorization_code: each user's own token, granted through the consent pause (ADR 0085). client_credentials: the server's own token, from the token endpoint."
|
|
687
|
+
},
|
|
688
|
+
"authorization_url": {
|
|
689
|
+
"description": "The provider's authorization endpoint (https). authorization_code only.",
|
|
690
|
+
"type": "string",
|
|
691
|
+
"format": "uri"
|
|
692
|
+
},
|
|
693
|
+
"token_url": {
|
|
694
|
+
"type": "string",
|
|
695
|
+
"format": "uri",
|
|
696
|
+
"description": "The provider's token endpoint (https)."
|
|
697
|
+
},
|
|
698
|
+
"client_id": {
|
|
699
|
+
"description": "The OAuth client id, written out (it is not a secret). Or client_id_env.",
|
|
700
|
+
"type": "string",
|
|
701
|
+
"minLength": 1,
|
|
702
|
+
"maxLength": 512
|
|
703
|
+
},
|
|
704
|
+
"client_id_env": {
|
|
705
|
+
"description": "Environment variable holding the client id. Or client_id.",
|
|
706
|
+
"type": "string",
|
|
707
|
+
"pattern": "^[A-Z_][A-Z0-9_]*$"
|
|
708
|
+
},
|
|
709
|
+
"client_secret_env": {
|
|
710
|
+
"description": "Environment variable NAME holding the client secret, never the value. Required for client_credentials; omit for a public client (PKCE alone).",
|
|
711
|
+
"type": "string",
|
|
712
|
+
"pattern": "^[A-Z_][A-Z0-9_]*$"
|
|
713
|
+
},
|
|
714
|
+
"scopes": {
|
|
715
|
+
"description": "The scopes the grant asks for.",
|
|
716
|
+
"maxItems": 64,
|
|
717
|
+
"type": "array",
|
|
718
|
+
"items": {
|
|
719
|
+
"type": "string",
|
|
720
|
+
"pattern": "^[\\x21\\x23-\\x5b\\x5d-\\x7e]{1,256}$"
|
|
721
|
+
}
|
|
722
|
+
},
|
|
723
|
+
"authorization_params": {
|
|
724
|
+
"description": "Extra authorization parameters (e.g. access_type: offline). authorization_code only; never state, redirect_uri, scope, client_id or the PKCE pair.",
|
|
725
|
+
"type": "object",
|
|
726
|
+
"propertyNames": {
|
|
727
|
+
"type": "string",
|
|
728
|
+
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
|
|
729
|
+
},
|
|
730
|
+
"additionalProperties": {
|
|
731
|
+
"type": "string",
|
|
732
|
+
"maxLength": 512
|
|
733
|
+
}
|
|
734
|
+
}
|
|
735
|
+
},
|
|
736
|
+
"required": [
|
|
737
|
+
"provider",
|
|
738
|
+
"grant",
|
|
739
|
+
"token_url"
|
|
740
|
+
],
|
|
741
|
+
"additionalProperties": false,
|
|
742
|
+
"description": "An OAuth 2 access token sent as a bearer token on every call (lib/tools/oauthTools.ts). Secrets come from environment variable names, never values."
|
|
323
743
|
}
|
|
324
744
|
},
|
|
325
745
|
"additionalProperties": false
|
|
@@ -465,7 +885,7 @@
|
|
|
465
885
|
}
|
|
466
886
|
},
|
|
467
887
|
"require_approval": {
|
|
468
|
-
"description": "Tools from this agent's `tools` that run only after a person approves the exact call (ADR 0028): the A2A task ends input-required until the caller answers approve or reject. Allowed on the
|
|
888
|
+
"description": "Tools from this agent's `tools` that run only after a person approves the exact call (ADR 0028): the A2A task ends input-required until the caller answers approve or reject. Allowed on any agent but one a workflow map node runs; inside a delegated subagent the pause reaches the caller through its open call (ADR 0110).",
|
|
469
889
|
"type": "array",
|
|
470
890
|
"items": {
|
|
471
891
|
"type": "string",
|
|
@@ -574,7 +994,8 @@
|
|
|
574
994
|
}
|
|
575
995
|
},
|
|
576
996
|
"additionalProperties": {},
|
|
577
|
-
"description": "
|
|
997
|
+
"description": "Deprecated v1 spelling (ADR 0115): write `sampling` (temperature, top_p, max_output_tokens, stop), `output.mime` (responseMimeType), `reasoning` (thinkingConfig, reasoningEffort) and `tool_choice` (toolConfig.functionCallingConfig) instead; npx melchizedek-codemod rewrites a file. Still read: the Gemini GenerateContentConfig shape the engine takes. Do not set tools here.",
|
|
998
|
+
"deprecated": true
|
|
578
999
|
},
|
|
579
1000
|
"reasoning": {
|
|
580
1001
|
"anyOf": [
|
|
@@ -584,7 +1005,9 @@
|
|
|
584
1005
|
"none",
|
|
585
1006
|
"low",
|
|
586
1007
|
"medium",
|
|
587
|
-
"high"
|
|
1008
|
+
"high",
|
|
1009
|
+
"xhigh",
|
|
1010
|
+
"max"
|
|
588
1011
|
]
|
|
589
1012
|
},
|
|
590
1013
|
{
|
|
@@ -603,15 +1026,278 @@
|
|
|
603
1026
|
"additionalProperties": false
|
|
604
1027
|
}
|
|
605
1028
|
],
|
|
606
|
-
"description": "How hard this agent reasons, on any provider: none | low | medium | high, or { budget_tokens: <int> }. Replaces generateContentConfig.thinkingConfig and reasoningEffort (ADR 0047)."
|
|
1029
|
+
"description": "How hard this agent reasons, on any provider: none | low | medium | high | xhigh | max, or { budget_tokens: <int> }. xhigh and max reach the models that take them; elsewhere they go as the model's highest setting (ADR 0117). Replaces generateContentConfig.thinkingConfig and reasoningEffort (ADR 0047)."
|
|
1030
|
+
},
|
|
1031
|
+
"sampling": {
|
|
1032
|
+
"type": "object",
|
|
1033
|
+
"properties": {
|
|
1034
|
+
"temperature": {
|
|
1035
|
+
"description": "Sampling temperature. Replaces generateContentConfig.temperature.",
|
|
1036
|
+
"type": "number"
|
|
1037
|
+
},
|
|
1038
|
+
"top_p": {
|
|
1039
|
+
"description": "Nucleus sampling. Replaces generateContentConfig.topP.",
|
|
1040
|
+
"type": "number"
|
|
1041
|
+
},
|
|
1042
|
+
"max_output_tokens": {
|
|
1043
|
+
"description": "Cap on the reply's tokens. Replaces generateContentConfig.maxOutputTokens.",
|
|
1044
|
+
"type": "integer",
|
|
1045
|
+
"exclusiveMinimum": 0,
|
|
1046
|
+
"maximum": 9007199254740991
|
|
1047
|
+
},
|
|
1048
|
+
"stop": {
|
|
1049
|
+
"description": "Stop sequences. Replaces generateContentConfig.stopSequences.",
|
|
1050
|
+
"minItems": 1,
|
|
1051
|
+
"type": "array",
|
|
1052
|
+
"items": {
|
|
1053
|
+
"type": "string"
|
|
1054
|
+
}
|
|
1055
|
+
}
|
|
1056
|
+
},
|
|
1057
|
+
"additionalProperties": false,
|
|
1058
|
+
"description": "How this agent samples, on any provider (ADR 0115). Replaces the same keys under generateContentConfig; cannot be combined with them.",
|
|
1059
|
+
"minProperties": 1
|
|
1060
|
+
},
|
|
1061
|
+
"output": {
|
|
1062
|
+
"type": "object",
|
|
1063
|
+
"properties": {
|
|
1064
|
+
"schema": {
|
|
1065
|
+
"description": "JSON Schema the final reply is one object of. Replaces outputSchema; same behaviour beside tools and subagents (ADR 0109).",
|
|
1066
|
+
"type": "object",
|
|
1067
|
+
"propertyNames": {
|
|
1068
|
+
"type": "string"
|
|
1069
|
+
},
|
|
1070
|
+
"additionalProperties": {}
|
|
1071
|
+
},
|
|
1072
|
+
"mime": {
|
|
1073
|
+
"description": "application/json: JSON mode without a schema. Replaces generateContentConfig.responseMimeType.",
|
|
1074
|
+
"type": "string",
|
|
1075
|
+
"enum": [
|
|
1076
|
+
"application/json",
|
|
1077
|
+
"text/plain"
|
|
1078
|
+
]
|
|
1079
|
+
}
|
|
1080
|
+
},
|
|
1081
|
+
"additionalProperties": false,
|
|
1082
|
+
"description": "What this agent's final reply is (ADR 0115). Replaces outputSchema and generateContentConfig.responseMimeType; cannot be combined with them.",
|
|
1083
|
+
"minProperties": 1
|
|
1084
|
+
},
|
|
1085
|
+
"tool_choice": {
|
|
1086
|
+
"anyOf": [
|
|
1087
|
+
{
|
|
1088
|
+
"type": "string",
|
|
1089
|
+
"enum": [
|
|
1090
|
+
"auto",
|
|
1091
|
+
"none",
|
|
1092
|
+
"required"
|
|
1093
|
+
]
|
|
1094
|
+
},
|
|
1095
|
+
{
|
|
1096
|
+
"type": "object",
|
|
1097
|
+
"properties": {
|
|
1098
|
+
"name": {
|
|
1099
|
+
"type": "string",
|
|
1100
|
+
"minLength": 1,
|
|
1101
|
+
"description": "The one tool the model must call: a name from this agent's tools, subagents or MCP tools."
|
|
1102
|
+
}
|
|
1103
|
+
},
|
|
1104
|
+
"required": [
|
|
1105
|
+
"name"
|
|
1106
|
+
],
|
|
1107
|
+
"additionalProperties": false
|
|
1108
|
+
}
|
|
1109
|
+
],
|
|
1110
|
+
"description": "Which tools the model may call, on any provider (ADR 0117): auto (the default), none, required (some tool), or { name: <tool> } (that tool). A provider that rejects forcing sends a weaker choice and marks the span llm.tool_choice.weakened. Replaces generateContentConfig.toolConfig.functionCallingConfig; cannot be combined with it."
|
|
1111
|
+
},
|
|
1112
|
+
"model_overrides": {
|
|
1113
|
+
"type": "object",
|
|
1114
|
+
"properties": {
|
|
1115
|
+
"gemini": {
|
|
1116
|
+
"type": "object",
|
|
1117
|
+
"properties": {
|
|
1118
|
+
"instruction": {
|
|
1119
|
+
"description": "Replaces the agent's instruction on this provider.",
|
|
1120
|
+
"type": "string",
|
|
1121
|
+
"minLength": 1
|
|
1122
|
+
},
|
|
1123
|
+
"instruction_append": {
|
|
1124
|
+
"description": "Appended to the agent's instruction, after a blank line, on this provider.",
|
|
1125
|
+
"type": "string",
|
|
1126
|
+
"minLength": 1
|
|
1127
|
+
}
|
|
1128
|
+
},
|
|
1129
|
+
"additionalProperties": false,
|
|
1130
|
+
"description": "The instruction on one provider: exactly one of instruction or instruction_append.",
|
|
1131
|
+
"oneOf": [
|
|
1132
|
+
{
|
|
1133
|
+
"required": [
|
|
1134
|
+
"instruction"
|
|
1135
|
+
]
|
|
1136
|
+
},
|
|
1137
|
+
{
|
|
1138
|
+
"required": [
|
|
1139
|
+
"instruction_append"
|
|
1140
|
+
]
|
|
1141
|
+
}
|
|
1142
|
+
]
|
|
1143
|
+
},
|
|
1144
|
+
"anthropic": {
|
|
1145
|
+
"type": "object",
|
|
1146
|
+
"properties": {
|
|
1147
|
+
"instruction": {
|
|
1148
|
+
"description": "Replaces the agent's instruction on this provider.",
|
|
1149
|
+
"type": "string",
|
|
1150
|
+
"minLength": 1
|
|
1151
|
+
},
|
|
1152
|
+
"instruction_append": {
|
|
1153
|
+
"description": "Appended to the agent's instruction, after a blank line, on this provider.",
|
|
1154
|
+
"type": "string",
|
|
1155
|
+
"minLength": 1
|
|
1156
|
+
}
|
|
1157
|
+
},
|
|
1158
|
+
"additionalProperties": false,
|
|
1159
|
+
"description": "The instruction on one provider: exactly one of instruction or instruction_append.",
|
|
1160
|
+
"oneOf": [
|
|
1161
|
+
{
|
|
1162
|
+
"required": [
|
|
1163
|
+
"instruction"
|
|
1164
|
+
]
|
|
1165
|
+
},
|
|
1166
|
+
{
|
|
1167
|
+
"required": [
|
|
1168
|
+
"instruction_append"
|
|
1169
|
+
]
|
|
1170
|
+
}
|
|
1171
|
+
]
|
|
1172
|
+
},
|
|
1173
|
+
"openai": {
|
|
1174
|
+
"type": "object",
|
|
1175
|
+
"properties": {
|
|
1176
|
+
"instruction": {
|
|
1177
|
+
"description": "Replaces the agent's instruction on this provider.",
|
|
1178
|
+
"type": "string",
|
|
1179
|
+
"minLength": 1
|
|
1180
|
+
},
|
|
1181
|
+
"instruction_append": {
|
|
1182
|
+
"description": "Appended to the agent's instruction, after a blank line, on this provider.",
|
|
1183
|
+
"type": "string",
|
|
1184
|
+
"minLength": 1
|
|
1185
|
+
}
|
|
1186
|
+
},
|
|
1187
|
+
"additionalProperties": false,
|
|
1188
|
+
"description": "The instruction on one provider: exactly one of instruction or instruction_append.",
|
|
1189
|
+
"oneOf": [
|
|
1190
|
+
{
|
|
1191
|
+
"required": [
|
|
1192
|
+
"instruction"
|
|
1193
|
+
]
|
|
1194
|
+
},
|
|
1195
|
+
{
|
|
1196
|
+
"required": [
|
|
1197
|
+
"instruction_append"
|
|
1198
|
+
]
|
|
1199
|
+
}
|
|
1200
|
+
]
|
|
1201
|
+
},
|
|
1202
|
+
"xai": {
|
|
1203
|
+
"type": "object",
|
|
1204
|
+
"properties": {
|
|
1205
|
+
"instruction": {
|
|
1206
|
+
"description": "Replaces the agent's instruction on this provider.",
|
|
1207
|
+
"type": "string",
|
|
1208
|
+
"minLength": 1
|
|
1209
|
+
},
|
|
1210
|
+
"instruction_append": {
|
|
1211
|
+
"description": "Appended to the agent's instruction, after a blank line, on this provider.",
|
|
1212
|
+
"type": "string",
|
|
1213
|
+
"minLength": 1
|
|
1214
|
+
}
|
|
1215
|
+
},
|
|
1216
|
+
"additionalProperties": false,
|
|
1217
|
+
"description": "The instruction on one provider: exactly one of instruction or instruction_append.",
|
|
1218
|
+
"oneOf": [
|
|
1219
|
+
{
|
|
1220
|
+
"required": [
|
|
1221
|
+
"instruction"
|
|
1222
|
+
]
|
|
1223
|
+
},
|
|
1224
|
+
{
|
|
1225
|
+
"required": [
|
|
1226
|
+
"instruction_append"
|
|
1227
|
+
]
|
|
1228
|
+
}
|
|
1229
|
+
]
|
|
1230
|
+
},
|
|
1231
|
+
"moonshot": {
|
|
1232
|
+
"type": "object",
|
|
1233
|
+
"properties": {
|
|
1234
|
+
"instruction": {
|
|
1235
|
+
"description": "Replaces the agent's instruction on this provider.",
|
|
1236
|
+
"type": "string",
|
|
1237
|
+
"minLength": 1
|
|
1238
|
+
},
|
|
1239
|
+
"instruction_append": {
|
|
1240
|
+
"description": "Appended to the agent's instruction, after a blank line, on this provider.",
|
|
1241
|
+
"type": "string",
|
|
1242
|
+
"minLength": 1
|
|
1243
|
+
}
|
|
1244
|
+
},
|
|
1245
|
+
"additionalProperties": false,
|
|
1246
|
+
"description": "The instruction on one provider: exactly one of instruction or instruction_append.",
|
|
1247
|
+
"oneOf": [
|
|
1248
|
+
{
|
|
1249
|
+
"required": [
|
|
1250
|
+
"instruction"
|
|
1251
|
+
]
|
|
1252
|
+
},
|
|
1253
|
+
{
|
|
1254
|
+
"required": [
|
|
1255
|
+
"instruction_append"
|
|
1256
|
+
]
|
|
1257
|
+
}
|
|
1258
|
+
]
|
|
1259
|
+
},
|
|
1260
|
+
"ollama": {
|
|
1261
|
+
"type": "object",
|
|
1262
|
+
"properties": {
|
|
1263
|
+
"instruction": {
|
|
1264
|
+
"description": "Replaces the agent's instruction on this provider.",
|
|
1265
|
+
"type": "string",
|
|
1266
|
+
"minLength": 1
|
|
1267
|
+
},
|
|
1268
|
+
"instruction_append": {
|
|
1269
|
+
"description": "Appended to the agent's instruction, after a blank line, on this provider.",
|
|
1270
|
+
"type": "string",
|
|
1271
|
+
"minLength": 1
|
|
1272
|
+
}
|
|
1273
|
+
},
|
|
1274
|
+
"additionalProperties": false,
|
|
1275
|
+
"description": "The instruction on one provider: exactly one of instruction or instruction_append.",
|
|
1276
|
+
"oneOf": [
|
|
1277
|
+
{
|
|
1278
|
+
"required": [
|
|
1279
|
+
"instruction"
|
|
1280
|
+
]
|
|
1281
|
+
},
|
|
1282
|
+
{
|
|
1283
|
+
"required": [
|
|
1284
|
+
"instruction_append"
|
|
1285
|
+
]
|
|
1286
|
+
}
|
|
1287
|
+
]
|
|
1288
|
+
}
|
|
1289
|
+
},
|
|
1290
|
+
"additionalProperties": false,
|
|
1291
|
+
"description": "Per-provider instruction, keyed by the provider of the agent's model id (lib/models/providerMap.ts). Applied at compile time before the skills index; not to fallback_model, and never to globalInstruction (ADR 0115)."
|
|
607
1292
|
},
|
|
608
1293
|
"outputSchema": {
|
|
609
|
-
"description": "JSON Schema for structured output: the agent answers with one JSON object matching it.
|
|
1294
|
+
"description": "Deprecated v1 spelling (ADR 0115): write output.schema. JSON Schema for structured output: the agent answers with one JSON object matching it. An agent that also calls tools or delegates to subagents does that first, then ends its turn on that JSON: the schema travels beside the tools where the model takes both in one request, as a set_model_response tool elsewhere (the capability matrix's structured_output_with_tools, ADR 0109).",
|
|
610
1295
|
"type": "object",
|
|
611
1296
|
"propertyNames": {
|
|
612
1297
|
"type": "string"
|
|
613
1298
|
},
|
|
614
|
-
"additionalProperties": {}
|
|
1299
|
+
"additionalProperties": {},
|
|
1300
|
+
"deprecated": true
|
|
615
1301
|
},
|
|
616
1302
|
"mcp_server_url": {
|
|
617
1303
|
"description": "MCP server (SSE) whose tools are discovered at runtime and merged with `tools`.",
|
|
@@ -626,6 +1312,88 @@
|
|
|
626
1312
|
"minLength": 1
|
|
627
1313
|
}
|
|
628
1314
|
},
|
|
1315
|
+
"mcp_auth": {
|
|
1316
|
+
"description": "The OAuth grant the MCP server takes (ADR 0112). With authorization_code, each user's own token on their own connection, and mcp_tools is required. Needs mcp_server_url; replaces MCP_BEARER_TOKENS for this server.",
|
|
1317
|
+
"type": "object",
|
|
1318
|
+
"properties": {
|
|
1319
|
+
"oauth2": {
|
|
1320
|
+
"type": "object",
|
|
1321
|
+
"properties": {
|
|
1322
|
+
"provider": {
|
|
1323
|
+
"type": "string",
|
|
1324
|
+
"pattern": "^[a-z0-9][a-z0-9._-]{0,63}$",
|
|
1325
|
+
"description": "The credential store's name for the provider (e.g. github). Every tool naming it shares one grant."
|
|
1326
|
+
},
|
|
1327
|
+
"grant": {
|
|
1328
|
+
"type": "string",
|
|
1329
|
+
"enum": [
|
|
1330
|
+
"authorization_code",
|
|
1331
|
+
"client_credentials"
|
|
1332
|
+
],
|
|
1333
|
+
"description": "authorization_code: each user's own token, granted through the consent pause (ADR 0085). client_credentials: the server's own token, from the token endpoint."
|
|
1334
|
+
},
|
|
1335
|
+
"authorization_url": {
|
|
1336
|
+
"description": "The provider's authorization endpoint (https). authorization_code only.",
|
|
1337
|
+
"type": "string",
|
|
1338
|
+
"format": "uri"
|
|
1339
|
+
},
|
|
1340
|
+
"token_url": {
|
|
1341
|
+
"type": "string",
|
|
1342
|
+
"format": "uri",
|
|
1343
|
+
"description": "The provider's token endpoint (https)."
|
|
1344
|
+
},
|
|
1345
|
+
"client_id": {
|
|
1346
|
+
"description": "The OAuth client id, written out (it is not a secret). Or client_id_env.",
|
|
1347
|
+
"type": "string",
|
|
1348
|
+
"minLength": 1,
|
|
1349
|
+
"maxLength": 512
|
|
1350
|
+
},
|
|
1351
|
+
"client_id_env": {
|
|
1352
|
+
"description": "Environment variable holding the client id. Or client_id.",
|
|
1353
|
+
"type": "string",
|
|
1354
|
+
"pattern": "^[A-Z_][A-Z0-9_]*$"
|
|
1355
|
+
},
|
|
1356
|
+
"client_secret_env": {
|
|
1357
|
+
"description": "Environment variable NAME holding the client secret, never the value. Required for client_credentials; omit for a public client (PKCE alone).",
|
|
1358
|
+
"type": "string",
|
|
1359
|
+
"pattern": "^[A-Z_][A-Z0-9_]*$"
|
|
1360
|
+
},
|
|
1361
|
+
"scopes": {
|
|
1362
|
+
"description": "The scopes the grant asks for.",
|
|
1363
|
+
"maxItems": 64,
|
|
1364
|
+
"type": "array",
|
|
1365
|
+
"items": {
|
|
1366
|
+
"type": "string",
|
|
1367
|
+
"pattern": "^[\\x21\\x23-\\x5b\\x5d-\\x7e]{1,256}$"
|
|
1368
|
+
}
|
|
1369
|
+
},
|
|
1370
|
+
"authorization_params": {
|
|
1371
|
+
"description": "Extra authorization parameters (e.g. access_type: offline). authorization_code only; never state, redirect_uri, scope, client_id or the PKCE pair.",
|
|
1372
|
+
"type": "object",
|
|
1373
|
+
"propertyNames": {
|
|
1374
|
+
"type": "string",
|
|
1375
|
+
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
|
|
1376
|
+
},
|
|
1377
|
+
"additionalProperties": {
|
|
1378
|
+
"type": "string",
|
|
1379
|
+
"maxLength": 512
|
|
1380
|
+
}
|
|
1381
|
+
}
|
|
1382
|
+
},
|
|
1383
|
+
"required": [
|
|
1384
|
+
"provider",
|
|
1385
|
+
"grant",
|
|
1386
|
+
"token_url"
|
|
1387
|
+
],
|
|
1388
|
+
"additionalProperties": false,
|
|
1389
|
+
"description": "An OAuth 2 access token sent as a bearer token on every call (lib/tools/oauthTools.ts). Secrets come from environment variable names, never values."
|
|
1390
|
+
}
|
|
1391
|
+
},
|
|
1392
|
+
"required": [
|
|
1393
|
+
"oauth2"
|
|
1394
|
+
],
|
|
1395
|
+
"additionalProperties": false
|
|
1396
|
+
},
|
|
629
1397
|
"skills": {
|
|
630
1398
|
"type": "object",
|
|
631
1399
|
"properties": {
|
|
@@ -738,6 +1506,78 @@
|
|
|
738
1506
|
"name"
|
|
739
1507
|
],
|
|
740
1508
|
"additionalProperties": false
|
|
1509
|
+
},
|
|
1510
|
+
"oauth2": {
|
|
1511
|
+
"type": "object",
|
|
1512
|
+
"properties": {
|
|
1513
|
+
"provider": {
|
|
1514
|
+
"type": "string",
|
|
1515
|
+
"pattern": "^[a-z0-9][a-z0-9._-]{0,63}$",
|
|
1516
|
+
"description": "The credential store's name for the provider (e.g. github). Every tool naming it shares one grant."
|
|
1517
|
+
},
|
|
1518
|
+
"grant": {
|
|
1519
|
+
"type": "string",
|
|
1520
|
+
"enum": [
|
|
1521
|
+
"authorization_code",
|
|
1522
|
+
"client_credentials"
|
|
1523
|
+
],
|
|
1524
|
+
"description": "authorization_code: each user's own token, granted through the consent pause (ADR 0085). client_credentials: the server's own token, from the token endpoint."
|
|
1525
|
+
},
|
|
1526
|
+
"authorization_url": {
|
|
1527
|
+
"description": "The provider's authorization endpoint (https). authorization_code only.",
|
|
1528
|
+
"type": "string",
|
|
1529
|
+
"format": "uri"
|
|
1530
|
+
},
|
|
1531
|
+
"token_url": {
|
|
1532
|
+
"type": "string",
|
|
1533
|
+
"format": "uri",
|
|
1534
|
+
"description": "The provider's token endpoint (https)."
|
|
1535
|
+
},
|
|
1536
|
+
"client_id": {
|
|
1537
|
+
"description": "The OAuth client id, written out (it is not a secret). Or client_id_env.",
|
|
1538
|
+
"type": "string",
|
|
1539
|
+
"minLength": 1,
|
|
1540
|
+
"maxLength": 512
|
|
1541
|
+
},
|
|
1542
|
+
"client_id_env": {
|
|
1543
|
+
"description": "Environment variable holding the client id. Or client_id.",
|
|
1544
|
+
"type": "string",
|
|
1545
|
+
"pattern": "^[A-Z_][A-Z0-9_]*$"
|
|
1546
|
+
},
|
|
1547
|
+
"client_secret_env": {
|
|
1548
|
+
"description": "Environment variable NAME holding the client secret, never the value. Required for client_credentials; omit for a public client (PKCE alone).",
|
|
1549
|
+
"type": "string",
|
|
1550
|
+
"pattern": "^[A-Z_][A-Z0-9_]*$"
|
|
1551
|
+
},
|
|
1552
|
+
"scopes": {
|
|
1553
|
+
"description": "The scopes the grant asks for.",
|
|
1554
|
+
"maxItems": 64,
|
|
1555
|
+
"type": "array",
|
|
1556
|
+
"items": {
|
|
1557
|
+
"type": "string",
|
|
1558
|
+
"pattern": "^[\\x21\\x23-\\x5b\\x5d-\\x7e]{1,256}$"
|
|
1559
|
+
}
|
|
1560
|
+
},
|
|
1561
|
+
"authorization_params": {
|
|
1562
|
+
"description": "Extra authorization parameters (e.g. access_type: offline). authorization_code only; never state, redirect_uri, scope, client_id or the PKCE pair.",
|
|
1563
|
+
"type": "object",
|
|
1564
|
+
"propertyNames": {
|
|
1565
|
+
"type": "string",
|
|
1566
|
+
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
|
|
1567
|
+
},
|
|
1568
|
+
"additionalProperties": {
|
|
1569
|
+
"type": "string",
|
|
1570
|
+
"maxLength": 512
|
|
1571
|
+
}
|
|
1572
|
+
}
|
|
1573
|
+
},
|
|
1574
|
+
"required": [
|
|
1575
|
+
"provider",
|
|
1576
|
+
"grant",
|
|
1577
|
+
"token_url"
|
|
1578
|
+
],
|
|
1579
|
+
"additionalProperties": false,
|
|
1580
|
+
"description": "An OAuth 2 access token sent as a bearer token on every call (lib/tools/oauthTools.ts). Secrets come from environment variable names, never values."
|
|
741
1581
|
}
|
|
742
1582
|
},
|
|
743
1583
|
"additionalProperties": false
|
|
@@ -831,7 +1671,7 @@
|
|
|
831
1671
|
"additionalProperties": false
|
|
832
1672
|
},
|
|
833
1673
|
"yaml_reference": {
|
|
834
|
-
"description": "A whole nested syndicate (filename under the agents dir) used as this subagent.",
|
|
1674
|
+
"description": "A whole nested syndicate (filename under the agents dir) used as this subagent. An approval request or ask_user question raised inside it pauses the turn with the agent path (ADR 0110, ADR 0111): a delegate syndicate's gates anywhere, a dispatch syndicate's on its routes, which it classifies and runs as at the top, its route's answer being its own (ADR 0120), and a workflow's ask_user nodes and gates, wherever each runs: delegated to as a subagent, as a dispatch route or as a workflow node (ADR 0119).",
|
|
835
1675
|
"type": "string",
|
|
836
1676
|
"minLength": 1
|
|
837
1677
|
},
|
|
@@ -1166,6 +2006,12 @@
|
|
|
1166
2006
|
"exclusiveMinimum": 0,
|
|
1167
2007
|
"maximum": 9007199254740991
|
|
1168
2008
|
},
|
|
2009
|
+
"max_concurrency": {
|
|
2010
|
+
"description": "Subagent calls from one orchestrator step that run at once; the rest wait their turn, in call order. Default 4; 1 runs them one after another. A delegate syndicate only (ADR 0116).",
|
|
2011
|
+
"type": "integer",
|
|
2012
|
+
"exclusiveMinimum": 0,
|
|
2013
|
+
"maximum": 32
|
|
2014
|
+
},
|
|
1169
2015
|
"bundled_references": {
|
|
1170
2016
|
"description": "Written by the registry publisher, not by hand: every nested yaml_reference this syndicate reaches, as it was when published, so a registry version is one unit (ADR 0018). Nested references load from here instead of from files.",
|
|
1171
2017
|
"type": "object",
|