@trenchwork/erosolar 1.1.40 → 1.1.41
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/LICENSE +21 -21
- package/README.md +236 -225
- package/agents/erosolar-code.rules.json +199 -199
- package/dist/bin/deepseek.js +18 -198
- package/dist/bin/deepseek.js.map +1 -1
- package/dist/bin/erosolar.js +0 -0
- package/dist/capabilities/enhancedGitCapability.js +63 -63
- package/dist/config.js +12 -12
- package/dist/contracts/agent-profiles.schema.json +5 -23
- package/dist/contracts/agent-schemas.json +31 -343
- package/dist/contracts/models.schema.json +9 -9
- package/dist/contracts/module-schema.json +367 -367
- package/dist/contracts/schemas/agent-profile.schema.json +157 -157
- package/dist/contracts/schemas/agent-rules.schema.json +238 -238
- package/dist/contracts/schemas/agent-schemas.schema.json +528 -528
- package/dist/contracts/schemas/agent.schema.json +90 -90
- package/dist/contracts/schemas/tool-selection.schema.json +174 -174
- package/dist/contracts/tools.schema.json +42 -42
- package/dist/contracts/unified-schema.json +8 -628
- package/dist/core/constants.js +7 -7
- package/dist/core/contextManager.js +16 -16
- package/dist/core/modelDiscovery.d.ts +0 -3
- package/dist/core/modelDiscovery.d.ts.map +1 -1
- package/dist/core/modelDiscovery.js +3 -355
- package/dist/core/modelDiscovery.js.map +1 -1
- package/dist/core/quotaErrors.d.ts +42 -0
- package/dist/core/quotaErrors.d.ts.map +1 -0
- package/dist/core/quotaErrors.js +88 -0
- package/dist/core/quotaErrors.js.map +1 -0
- package/dist/core/secretStore.d.ts.map +1 -1
- package/dist/core/secretStore.js +1 -14
- package/dist/core/secretStore.js.map +1 -1
- package/dist/core/taskCompletionDetector.js +17 -17
- package/dist/headless/interactiveShell.d.ts.map +1 -1
- package/dist/headless/interactiveShell.js +7 -58
- package/dist/headless/interactiveShell.js.map +1 -1
- package/dist/leanAgent.js +38 -38
- package/dist/plugins/providers/deepseek/index.d.ts +1 -0
- package/dist/plugins/providers/deepseek/index.d.ts.map +1 -1
- package/dist/plugins/providers/deepseek/index.js +65 -4
- package/dist/plugins/providers/deepseek/index.js.map +1 -1
- package/dist/plugins/providers/index.d.ts.map +1 -1
- package/dist/plugins/providers/index.js +0 -7
- package/dist/plugins/providers/index.js.map +1 -1
- package/dist/providers/openaiChatCompletionsProvider.js +7 -30
- package/dist/providers/openaiChatCompletionsProvider.js.map +1 -1
- package/dist/providers/resilientProvider.d.ts.map +1 -1
- package/dist/providers/resilientProvider.js +0 -31
- package/dist/providers/resilientProvider.js.map +1 -1
- package/dist/runtime/agentSession.js +4 -4
- package/dist/shell/vimMode.js +29 -29
- package/dist/tools/hitlTools.js +18 -18
- package/dist/tools/webTools.d.ts.map +1 -1
- package/dist/tools/webTools.js +10 -0
- package/dist/tools/webTools.js.map +1 -1
- package/package.json +116 -123
- package/scripts/postinstall.cjs +57 -58
- package/dist/bin/cliMode.d.ts +0 -8
- package/dist/bin/cliMode.d.ts.map +0 -1
- package/dist/bin/cliMode.js +0 -20
- package/dist/bin/cliMode.js.map +0 -1
- package/dist/bin/selfTest.d.ts +0 -14
- package/dist/bin/selfTest.d.ts.map +0 -1
- package/dist/bin/selfTest.js +0 -298
- package/dist/bin/selfTest.js.map +0 -1
- package/dist/headless/printMode.d.ts +0 -17
- package/dist/headless/printMode.d.ts.map +0 -1
- package/dist/headless/printMode.js +0 -40
- package/dist/headless/printMode.js.map +0 -1
- package/dist/plugins/providers/anthropic/index.d.ts +0 -9
- package/dist/plugins/providers/anthropic/index.d.ts.map +0 -1
- package/dist/plugins/providers/anthropic/index.js +0 -48
- package/dist/plugins/providers/anthropic/index.js.map +0 -1
- package/dist/plugins/providers/openai/index.d.ts +0 -10
- package/dist/plugins/providers/openai/index.d.ts.map +0 -1
- package/dist/plugins/providers/openai/index.js +0 -47
- package/dist/plugins/providers/openai/index.js.map +0 -1
- package/dist/plugins/providers/xai/index.d.ts +0 -10
- package/dist/plugins/providers/xai/index.d.ts.map +0 -1
- package/dist/plugins/providers/xai/index.js +0 -47
- package/dist/plugins/providers/xai/index.js.map +0 -1
|
@@ -1,528 +1,528 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
-
"$id": "https://agi.ai/schemas/agent-schemas.schema.json",
|
|
4
|
-
"title": "Agent Schemas Configuration",
|
|
5
|
-
"description": "Centralized schema for all agent configurations, models, providers, and capabilities",
|
|
6
|
-
"type": "object",
|
|
7
|
-
"required": ["contractVersion", "version", "providers", "models", "profiles"],
|
|
8
|
-
"properties": {
|
|
9
|
-
"$schema": {
|
|
10
|
-
"type": "string",
|
|
11
|
-
"description": "JSON Schema reference"
|
|
12
|
-
},
|
|
13
|
-
"contractVersion": {
|
|
14
|
-
"type": "string",
|
|
15
|
-
"description": "Version of the contract schema",
|
|
16
|
-
"pattern": "^\\d+\\.\\d+\\.\\d+$"
|
|
17
|
-
},
|
|
18
|
-
"version": {
|
|
19
|
-
"type": "string",
|
|
20
|
-
"description": "Version of this configuration file"
|
|
21
|
-
},
|
|
22
|
-
"label": {
|
|
23
|
-
"type": "string",
|
|
24
|
-
"description": "Human-readable label for this configuration"
|
|
25
|
-
},
|
|
26
|
-
"description": {
|
|
27
|
-
"type": "string",
|
|
28
|
-
"description": "Description of this configuration"
|
|
29
|
-
},
|
|
30
|
-
"providers": {
|
|
31
|
-
"type": "array",
|
|
32
|
-
"description": "Available LLM providers",
|
|
33
|
-
"items": {
|
|
34
|
-
"$ref": "#/definitions/provider"
|
|
35
|
-
},
|
|
36
|
-
"minItems": 1
|
|
37
|
-
},
|
|
38
|
-
"models": {
|
|
39
|
-
"type": "array",
|
|
40
|
-
"description": "Available models across all providers",
|
|
41
|
-
"items": {
|
|
42
|
-
"$ref": "#/definitions/model"
|
|
43
|
-
},
|
|
44
|
-
"minItems": 1
|
|
45
|
-
},
|
|
46
|
-
"profiles": {
|
|
47
|
-
"type": "array",
|
|
48
|
-
"description": "Agent profiles with their configurations",
|
|
49
|
-
"items": {
|
|
50
|
-
"$ref": "#/definitions/profile"
|
|
51
|
-
},
|
|
52
|
-
"minItems": 1
|
|
53
|
-
},
|
|
54
|
-
"slashCommands": {
|
|
55
|
-
"type": "array",
|
|
56
|
-
"description": "Available slash commands",
|
|
57
|
-
"items": {
|
|
58
|
-
"$ref": "#/definitions/slashCommand"
|
|
59
|
-
}
|
|
60
|
-
},
|
|
61
|
-
"capabilities": {
|
|
62
|
-
"type": "array",
|
|
63
|
-
"description": "Capability definitions",
|
|
64
|
-
"items": {
|
|
65
|
-
"$ref": "#/definitions/capability"
|
|
66
|
-
}
|
|
67
|
-
},
|
|
68
|
-
"metadata": {
|
|
69
|
-
"type": "object",
|
|
70
|
-
"description": "Additional metadata about this configuration"
|
|
71
|
-
}
|
|
72
|
-
},
|
|
73
|
-
"definitions": {
|
|
74
|
-
"provider": {
|
|
75
|
-
"type": "object",
|
|
76
|
-
"required": ["id", "label"],
|
|
77
|
-
"properties": {
|
|
78
|
-
"id": {
|
|
79
|
-
"type": "string",
|
|
80
|
-
"description": "Unique identifier for the provider",
|
|
81
|
-
"enum": ["
|
|
82
|
-
},
|
|
83
|
-
"label": {
|
|
84
|
-
"type": "string",
|
|
85
|
-
"description": "Human-readable label"
|
|
86
|
-
},
|
|
87
|
-
"description": {
|
|
88
|
-
"type": "string",
|
|
89
|
-
"description": "Description of the provider"
|
|
90
|
-
},
|
|
91
|
-
"envVars": {
|
|
92
|
-
"type": "object",
|
|
93
|
-
"description": "Environment variable mappings",
|
|
94
|
-
"properties": {
|
|
95
|
-
"apiKey": {
|
|
96
|
-
"type": "string",
|
|
97
|
-
"description": "Environment variable name for API key"
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
},
|
|
101
|
-
"capabilities": {
|
|
102
|
-
"type": "array",
|
|
103
|
-
"description": "Capabilities supported by this provider",
|
|
104
|
-
"items": {
|
|
105
|
-
"type": "string"
|
|
106
|
-
}
|
|
107
|
-
},
|
|
108
|
-
"metadata": {
|
|
109
|
-
"type": "object",
|
|
110
|
-
"description": "Additional provider metadata"
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
},
|
|
114
|
-
"model": {
|
|
115
|
-
"type": "object",
|
|
116
|
-
"required": ["id", "label", "provider"],
|
|
117
|
-
"properties": {
|
|
118
|
-
"id": {
|
|
119
|
-
"type": "string",
|
|
120
|
-
"description": "Unique model identifier"
|
|
121
|
-
},
|
|
122
|
-
"label": {
|
|
123
|
-
"type": "string",
|
|
124
|
-
"description": "Human-readable label for the model"
|
|
125
|
-
},
|
|
126
|
-
"provider": {
|
|
127
|
-
"type": "string",
|
|
128
|
-
"description": "Provider ID this model belongs to",
|
|
129
|
-
"enum": ["
|
|
130
|
-
},
|
|
131
|
-
"description": {
|
|
132
|
-
"type": "string",
|
|
133
|
-
"description": "Description of the model's capabilities"
|
|
134
|
-
},
|
|
135
|
-
"reasoningEffort": {
|
|
136
|
-
"type": "string",
|
|
137
|
-
"description": "Reasoning effort level",
|
|
138
|
-
"enum": ["low", "medium", "high"]
|
|
139
|
-
},
|
|
140
|
-
"temperature": {
|
|
141
|
-
"type": "number",
|
|
142
|
-
"description": "Default temperature setting",
|
|
143
|
-
"minimum": 0,
|
|
144
|
-
"maximum": 2
|
|
145
|
-
},
|
|
146
|
-
"maxTokens": {
|
|
147
|
-
"type": "integer",
|
|
148
|
-
"description": "Maximum tokens for output",
|
|
149
|
-
"minimum": 1
|
|
150
|
-
},
|
|
151
|
-
"capabilities": {
|
|
152
|
-
"type": "array",
|
|
153
|
-
"description": "Capabilities supported by this model",
|
|
154
|
-
"items": {
|
|
155
|
-
"type": "string"
|
|
156
|
-
}
|
|
157
|
-
},
|
|
158
|
-
"metadata": {
|
|
159
|
-
"type": "object",
|
|
160
|
-
"description": "Additional model metadata"
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
},
|
|
164
|
-
"profile": {
|
|
165
|
-
"type": "object",
|
|
166
|
-
"required": ["name", "label", "defaultProvider", "defaultModel", "systemPrompt", "rulebook"],
|
|
167
|
-
"properties": {
|
|
168
|
-
"name": {
|
|
169
|
-
"type": "string",
|
|
170
|
-
"description": "Unique profile identifier"
|
|
171
|
-
},
|
|
172
|
-
"label": {
|
|
173
|
-
"type": "string",
|
|
174
|
-
"description": "Human-readable label"
|
|
175
|
-
},
|
|
176
|
-
"description": {
|
|
177
|
-
"type": "string",
|
|
178
|
-
"description": "Description of the profile's purpose"
|
|
179
|
-
},
|
|
180
|
-
"defaultProvider": {
|
|
181
|
-
"type": "string",
|
|
182
|
-
"description": "Default provider for this profile",
|
|
183
|
-
"enum": ["
|
|
184
|
-
},
|
|
185
|
-
"defaultModel": {
|
|
186
|
-
"type": "string",
|
|
187
|
-
"description": "Default model for this profile"
|
|
188
|
-
},
|
|
189
|
-
"temperature": {
|
|
190
|
-
"type": "number",
|
|
191
|
-
"description": "Default temperature",
|
|
192
|
-
"minimum": 0,
|
|
193
|
-
"maximum": 2
|
|
194
|
-
},
|
|
195
|
-
"maxTokens": {
|
|
196
|
-
"type": "integer",
|
|
197
|
-
"description": "Maximum tokens",
|
|
198
|
-
"minimum": 1
|
|
199
|
-
},
|
|
200
|
-
"systemPrompt": {
|
|
201
|
-
"$ref": "#/definitions/systemPromptConfig"
|
|
202
|
-
},
|
|
203
|
-
"rulebook": {
|
|
204
|
-
"$ref": "#/definitions/rulebookReference"
|
|
205
|
-
},
|
|
206
|
-
"metadata": {
|
|
207
|
-
"type": "object",
|
|
208
|
-
"description": "Additional profile metadata"
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
},
|
|
212
|
-
"systemPromptConfig": {
|
|
213
|
-
"oneOf": [
|
|
214
|
-
{
|
|
215
|
-
"type": "object",
|
|
216
|
-
"required": ["type"],
|
|
217
|
-
"properties": {
|
|
218
|
-
"type": {
|
|
219
|
-
"type": "string",
|
|
220
|
-
"const": "literal"
|
|
221
|
-
},
|
|
222
|
-
"content": {
|
|
223
|
-
"type": "string",
|
|
224
|
-
"description": "Literal prompt content"
|
|
225
|
-
},
|
|
226
|
-
"metadata": {
|
|
227
|
-
"type": "object"
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
},
|
|
231
|
-
{
|
|
232
|
-
"type": "object",
|
|
233
|
-
"required": ["type"],
|
|
234
|
-
"properties": {
|
|
235
|
-
"type": {
|
|
236
|
-
"type": "string",
|
|
237
|
-
"const": "rulebook"
|
|
238
|
-
},
|
|
239
|
-
"template": {
|
|
240
|
-
"type": "string",
|
|
241
|
-
"description": "Template with placeholders like {{rulebook}}, {{profile}}, {{profile_name}}"
|
|
242
|
-
},
|
|
243
|
-
"metadata": {
|
|
244
|
-
"type": "object"
|
|
245
|
-
}
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
]
|
|
249
|
-
},
|
|
250
|
-
"rulebookReference": {
|
|
251
|
-
"oneOf": [
|
|
252
|
-
{
|
|
253
|
-
"type": "object",
|
|
254
|
-
"required": ["file"],
|
|
255
|
-
"properties": {
|
|
256
|
-
"file": {
|
|
257
|
-
"type": "string",
|
|
258
|
-
"description": "Path to external rulebook JSON file"
|
|
259
|
-
},
|
|
260
|
-
"version": {
|
|
261
|
-
"type": "string",
|
|
262
|
-
"description": "Rulebook version"
|
|
263
|
-
},
|
|
264
|
-
"contractVersion": {
|
|
265
|
-
"type": "string",
|
|
266
|
-
"description": "Contract version this rulebook adheres to"
|
|
267
|
-
},
|
|
268
|
-
"description": {
|
|
269
|
-
"type": "string",
|
|
270
|
-
"description": "Rulebook description"
|
|
271
|
-
},
|
|
272
|
-
"metadata": {
|
|
273
|
-
"type": "object",
|
|
274
|
-
"description": "Additional rulebook metadata"
|
|
275
|
-
}
|
|
276
|
-
}
|
|
277
|
-
},
|
|
278
|
-
{
|
|
279
|
-
"type": "object",
|
|
280
|
-
"required": ["inline"],
|
|
281
|
-
"properties": {
|
|
282
|
-
"inline": {
|
|
283
|
-
"$ref": "#/definitions/inlineRulebook"
|
|
284
|
-
},
|
|
285
|
-
"version": {
|
|
286
|
-
"type": "string",
|
|
287
|
-
"description": "Rulebook version"
|
|
288
|
-
},
|
|
289
|
-
"contractVersion": {
|
|
290
|
-
"type": "string",
|
|
291
|
-
"description": "Contract version this rulebook adheres to"
|
|
292
|
-
},
|
|
293
|
-
"description": {
|
|
294
|
-
"type": "string",
|
|
295
|
-
"description": "Rulebook description"
|
|
296
|
-
},
|
|
297
|
-
"metadata": {
|
|
298
|
-
"type": "object",
|
|
299
|
-
"description": "Additional rulebook metadata"
|
|
300
|
-
}
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
|
-
]
|
|
304
|
-
},
|
|
305
|
-
"inlineRulebook": {
|
|
306
|
-
"type": "object",
|
|
307
|
-
"properties": {
|
|
308
|
-
"label": {
|
|
309
|
-
"type": "string",
|
|
310
|
-
"description": "Human-readable label for the rulebook"
|
|
311
|
-
},
|
|
312
|
-
"description": {
|
|
313
|
-
"type": "string",
|
|
314
|
-
"description": "Description of the rulebook's purpose"
|
|
315
|
-
},
|
|
316
|
-
"globalPrinciples": {
|
|
317
|
-
"type": "array",
|
|
318
|
-
"description": "Global principles that apply across all phases",
|
|
319
|
-
"items": {
|
|
320
|
-
"$ref": "#/definitions/rule"
|
|
321
|
-
}
|
|
322
|
-
},
|
|
323
|
-
"phases": {
|
|
324
|
-
"type": "array",
|
|
325
|
-
"description": "Execution phases with their steps",
|
|
326
|
-
"items": {
|
|
327
|
-
"$ref": "#/definitions/phase"
|
|
328
|
-
}
|
|
329
|
-
}
|
|
330
|
-
}
|
|
331
|
-
},
|
|
332
|
-
"rule": {
|
|
333
|
-
"type": "object",
|
|
334
|
-
"required": ["id", "summary"],
|
|
335
|
-
"properties": {
|
|
336
|
-
"id": {
|
|
337
|
-
"type": "string",
|
|
338
|
-
"description": "Unique rule identifier"
|
|
339
|
-
},
|
|
340
|
-
"summary": {
|
|
341
|
-
"type": "string",
|
|
342
|
-
"description": "Concise rule summary"
|
|
343
|
-
},
|
|
344
|
-
"detail": {
|
|
345
|
-
"type": "string",
|
|
346
|
-
"description": "Detailed explanation of the rule"
|
|
347
|
-
},
|
|
348
|
-
"severity": {
|
|
349
|
-
"type": "string",
|
|
350
|
-
"enum": ["critical", "required", "recommended", "info"],
|
|
351
|
-
"description": "Rule severity level"
|
|
352
|
-
},
|
|
353
|
-
"evidenceRequired": {
|
|
354
|
-
"type": "string",
|
|
355
|
-
"description": "Evidence required to satisfy this rule"
|
|
356
|
-
},
|
|
357
|
-
"toolHints": {
|
|
358
|
-
"type": "array",
|
|
359
|
-
"description": "Suggested tools for implementing this rule",
|
|
360
|
-
"items": {
|
|
361
|
-
"type": "string"
|
|
362
|
-
}
|
|
363
|
-
},
|
|
364
|
-
"references": {
|
|
365
|
-
"type": "array",
|
|
366
|
-
"description": "Reference materials",
|
|
367
|
-
"items": {
|
|
368
|
-
"type": "object",
|
|
369
|
-
"properties": {
|
|
370
|
-
"label": {
|
|
371
|
-
"type": "string"
|
|
372
|
-
},
|
|
373
|
-
"file": {
|
|
374
|
-
"type": "string"
|
|
375
|
-
}
|
|
376
|
-
}
|
|
377
|
-
}
|
|
378
|
-
}
|
|
379
|
-
}
|
|
380
|
-
},
|
|
381
|
-
"phase": {
|
|
382
|
-
"type": "object",
|
|
383
|
-
"required": ["id", "label", "steps"],
|
|
384
|
-
"properties": {
|
|
385
|
-
"id": {
|
|
386
|
-
"type": "string",
|
|
387
|
-
"description": "Unique phase identifier"
|
|
388
|
-
},
|
|
389
|
-
"label": {
|
|
390
|
-
"type": "string",
|
|
391
|
-
"description": "Human-readable phase label"
|
|
392
|
-
},
|
|
393
|
-
"description": {
|
|
394
|
-
"type": "string",
|
|
395
|
-
"description": "Description of the phase's purpose"
|
|
396
|
-
},
|
|
397
|
-
"trigger": {
|
|
398
|
-
"type": "string",
|
|
399
|
-
"description": "Condition that triggers this phase"
|
|
400
|
-
},
|
|
401
|
-
"steps": {
|
|
402
|
-
"type": "array",
|
|
403
|
-
"description": "Steps within this phase",
|
|
404
|
-
"items": {
|
|
405
|
-
"$ref": "#/definitions/step"
|
|
406
|
-
}
|
|
407
|
-
}
|
|
408
|
-
}
|
|
409
|
-
},
|
|
410
|
-
"step": {
|
|
411
|
-
"type": "object",
|
|
412
|
-
"required": ["id", "title", "rules"],
|
|
413
|
-
"properties": {
|
|
414
|
-
"id": {
|
|
415
|
-
"type": "string",
|
|
416
|
-
"description": "Unique step identifier"
|
|
417
|
-
},
|
|
418
|
-
"title": {
|
|
419
|
-
"type": "string",
|
|
420
|
-
"description": "Step title"
|
|
421
|
-
},
|
|
422
|
-
"intent": {
|
|
423
|
-
"type": "string",
|
|
424
|
-
"description": "Intent or purpose of this step"
|
|
425
|
-
},
|
|
426
|
-
"description": {
|
|
427
|
-
"type": "string",
|
|
428
|
-
"description": "Detailed description"
|
|
429
|
-
},
|
|
430
|
-
"entryCriteria": {
|
|
431
|
-
"type": "array",
|
|
432
|
-
"description": "Criteria for entering this step",
|
|
433
|
-
"items": {
|
|
434
|
-
"type": "string"
|
|
435
|
-
}
|
|
436
|
-
},
|
|
437
|
-
"exitCriteria": {
|
|
438
|
-
"type": "array",
|
|
439
|
-
"description": "Criteria for completing this step",
|
|
440
|
-
"items": {
|
|
441
|
-
"type": "string"
|
|
442
|
-
}
|
|
443
|
-
},
|
|
444
|
-
"allowedTools": {
|
|
445
|
-
"type": "array",
|
|
446
|
-
"description": "Tools allowed in this step",
|
|
447
|
-
"items": {
|
|
448
|
-
"type": "string"
|
|
449
|
-
}
|
|
450
|
-
},
|
|
451
|
-
"blockedTools": {
|
|
452
|
-
"type": "array",
|
|
453
|
-
"description": "Tools blocked in this step",
|
|
454
|
-
"items": {
|
|
455
|
-
"type": "string"
|
|
456
|
-
}
|
|
457
|
-
},
|
|
458
|
-
"notes": {
|
|
459
|
-
"type": "array",
|
|
460
|
-
"description": "Additional notes",
|
|
461
|
-
"items": {
|
|
462
|
-
"type": "string"
|
|
463
|
-
}
|
|
464
|
-
},
|
|
465
|
-
"rules": {
|
|
466
|
-
"type": "array",
|
|
467
|
-
"description": "Rules for this step",
|
|
468
|
-
"items": {
|
|
469
|
-
"$ref": "#/definitions/rule"
|
|
470
|
-
}
|
|
471
|
-
},
|
|
472
|
-
"subSteps": {
|
|
473
|
-
"type": "array",
|
|
474
|
-
"description": "Sub-steps within this step",
|
|
475
|
-
"items": {
|
|
476
|
-
"$ref": "#/definitions/step"
|
|
477
|
-
}
|
|
478
|
-
}
|
|
479
|
-
}
|
|
480
|
-
},
|
|
481
|
-
"slashCommand": {
|
|
482
|
-
"type": "object",
|
|
483
|
-
"required": ["command", "description"],
|
|
484
|
-
"properties": {
|
|
485
|
-
"command": {
|
|
486
|
-
"type": "string",
|
|
487
|
-
"description": "The slash command (e.g., /model)",
|
|
488
|
-
"pattern": "^/"
|
|
489
|
-
},
|
|
490
|
-
"description": {
|
|
491
|
-
"type": "string",
|
|
492
|
-
"description": "Description of what the command does"
|
|
493
|
-
},
|
|
494
|
-
"category": {
|
|
495
|
-
"type": "string",
|
|
496
|
-
"description": "Category this command belongs to",
|
|
497
|
-
"enum": ["configuration", "diagnostics", "workspace", "other"]
|
|
498
|
-
},
|
|
499
|
-
"metadata": {
|
|
500
|
-
"type": "object",
|
|
501
|
-
"description": "Additional command metadata"
|
|
502
|
-
}
|
|
503
|
-
}
|
|
504
|
-
},
|
|
505
|
-
"capability": {
|
|
506
|
-
"type": "object",
|
|
507
|
-
"required": ["id", "label"],
|
|
508
|
-
"properties": {
|
|
509
|
-
"id": {
|
|
510
|
-
"type": "string",
|
|
511
|
-
"description": "Unique capability identifier"
|
|
512
|
-
},
|
|
513
|
-
"label": {
|
|
514
|
-
"type": "string",
|
|
515
|
-
"description": "Human-readable label"
|
|
516
|
-
},
|
|
517
|
-
"description": {
|
|
518
|
-
"type": "string",
|
|
519
|
-
"description": "Description of the capability"
|
|
520
|
-
},
|
|
521
|
-
"metadata": {
|
|
522
|
-
"type": "object",
|
|
523
|
-
"description": "Additional capability metadata"
|
|
524
|
-
}
|
|
525
|
-
}
|
|
526
|
-
}
|
|
527
|
-
}
|
|
528
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "https://agi.ai/schemas/agent-schemas.schema.json",
|
|
4
|
+
"title": "Agent Schemas Configuration",
|
|
5
|
+
"description": "Centralized schema for all agent configurations, models, providers, and capabilities",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"required": ["contractVersion", "version", "providers", "models", "profiles"],
|
|
8
|
+
"properties": {
|
|
9
|
+
"$schema": {
|
|
10
|
+
"type": "string",
|
|
11
|
+
"description": "JSON Schema reference"
|
|
12
|
+
},
|
|
13
|
+
"contractVersion": {
|
|
14
|
+
"type": "string",
|
|
15
|
+
"description": "Version of the contract schema",
|
|
16
|
+
"pattern": "^\\d+\\.\\d+\\.\\d+$"
|
|
17
|
+
},
|
|
18
|
+
"version": {
|
|
19
|
+
"type": "string",
|
|
20
|
+
"description": "Version of this configuration file"
|
|
21
|
+
},
|
|
22
|
+
"label": {
|
|
23
|
+
"type": "string",
|
|
24
|
+
"description": "Human-readable label for this configuration"
|
|
25
|
+
},
|
|
26
|
+
"description": {
|
|
27
|
+
"type": "string",
|
|
28
|
+
"description": "Description of this configuration"
|
|
29
|
+
},
|
|
30
|
+
"providers": {
|
|
31
|
+
"type": "array",
|
|
32
|
+
"description": "Available LLM providers",
|
|
33
|
+
"items": {
|
|
34
|
+
"$ref": "#/definitions/provider"
|
|
35
|
+
},
|
|
36
|
+
"minItems": 1
|
|
37
|
+
},
|
|
38
|
+
"models": {
|
|
39
|
+
"type": "array",
|
|
40
|
+
"description": "Available models across all providers",
|
|
41
|
+
"items": {
|
|
42
|
+
"$ref": "#/definitions/model"
|
|
43
|
+
},
|
|
44
|
+
"minItems": 1
|
|
45
|
+
},
|
|
46
|
+
"profiles": {
|
|
47
|
+
"type": "array",
|
|
48
|
+
"description": "Agent profiles with their configurations",
|
|
49
|
+
"items": {
|
|
50
|
+
"$ref": "#/definitions/profile"
|
|
51
|
+
},
|
|
52
|
+
"minItems": 1
|
|
53
|
+
},
|
|
54
|
+
"slashCommands": {
|
|
55
|
+
"type": "array",
|
|
56
|
+
"description": "Available slash commands",
|
|
57
|
+
"items": {
|
|
58
|
+
"$ref": "#/definitions/slashCommand"
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
"capabilities": {
|
|
62
|
+
"type": "array",
|
|
63
|
+
"description": "Capability definitions",
|
|
64
|
+
"items": {
|
|
65
|
+
"$ref": "#/definitions/capability"
|
|
66
|
+
}
|
|
67
|
+
},
|
|
68
|
+
"metadata": {
|
|
69
|
+
"type": "object",
|
|
70
|
+
"description": "Additional metadata about this configuration"
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
"definitions": {
|
|
74
|
+
"provider": {
|
|
75
|
+
"type": "object",
|
|
76
|
+
"required": ["id", "label"],
|
|
77
|
+
"properties": {
|
|
78
|
+
"id": {
|
|
79
|
+
"type": "string",
|
|
80
|
+
"description": "Unique identifier for the provider",
|
|
81
|
+
"enum": ["deepseek"]
|
|
82
|
+
},
|
|
83
|
+
"label": {
|
|
84
|
+
"type": "string",
|
|
85
|
+
"description": "Human-readable label"
|
|
86
|
+
},
|
|
87
|
+
"description": {
|
|
88
|
+
"type": "string",
|
|
89
|
+
"description": "Description of the provider"
|
|
90
|
+
},
|
|
91
|
+
"envVars": {
|
|
92
|
+
"type": "object",
|
|
93
|
+
"description": "Environment variable mappings",
|
|
94
|
+
"properties": {
|
|
95
|
+
"apiKey": {
|
|
96
|
+
"type": "string",
|
|
97
|
+
"description": "Environment variable name for API key"
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
"capabilities": {
|
|
102
|
+
"type": "array",
|
|
103
|
+
"description": "Capabilities supported by this provider",
|
|
104
|
+
"items": {
|
|
105
|
+
"type": "string"
|
|
106
|
+
}
|
|
107
|
+
},
|
|
108
|
+
"metadata": {
|
|
109
|
+
"type": "object",
|
|
110
|
+
"description": "Additional provider metadata"
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
},
|
|
114
|
+
"model": {
|
|
115
|
+
"type": "object",
|
|
116
|
+
"required": ["id", "label", "provider"],
|
|
117
|
+
"properties": {
|
|
118
|
+
"id": {
|
|
119
|
+
"type": "string",
|
|
120
|
+
"description": "Unique model identifier"
|
|
121
|
+
},
|
|
122
|
+
"label": {
|
|
123
|
+
"type": "string",
|
|
124
|
+
"description": "Human-readable label for the model"
|
|
125
|
+
},
|
|
126
|
+
"provider": {
|
|
127
|
+
"type": "string",
|
|
128
|
+
"description": "Provider ID this model belongs to",
|
|
129
|
+
"enum": ["deepseek"]
|
|
130
|
+
},
|
|
131
|
+
"description": {
|
|
132
|
+
"type": "string",
|
|
133
|
+
"description": "Description of the model's capabilities"
|
|
134
|
+
},
|
|
135
|
+
"reasoningEffort": {
|
|
136
|
+
"type": "string",
|
|
137
|
+
"description": "Reasoning effort level",
|
|
138
|
+
"enum": ["low", "medium", "high"]
|
|
139
|
+
},
|
|
140
|
+
"temperature": {
|
|
141
|
+
"type": "number",
|
|
142
|
+
"description": "Default temperature setting",
|
|
143
|
+
"minimum": 0,
|
|
144
|
+
"maximum": 2
|
|
145
|
+
},
|
|
146
|
+
"maxTokens": {
|
|
147
|
+
"type": "integer",
|
|
148
|
+
"description": "Maximum tokens for output",
|
|
149
|
+
"minimum": 1
|
|
150
|
+
},
|
|
151
|
+
"capabilities": {
|
|
152
|
+
"type": "array",
|
|
153
|
+
"description": "Capabilities supported by this model",
|
|
154
|
+
"items": {
|
|
155
|
+
"type": "string"
|
|
156
|
+
}
|
|
157
|
+
},
|
|
158
|
+
"metadata": {
|
|
159
|
+
"type": "object",
|
|
160
|
+
"description": "Additional model metadata"
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
},
|
|
164
|
+
"profile": {
|
|
165
|
+
"type": "object",
|
|
166
|
+
"required": ["name", "label", "defaultProvider", "defaultModel", "systemPrompt", "rulebook"],
|
|
167
|
+
"properties": {
|
|
168
|
+
"name": {
|
|
169
|
+
"type": "string",
|
|
170
|
+
"description": "Unique profile identifier"
|
|
171
|
+
},
|
|
172
|
+
"label": {
|
|
173
|
+
"type": "string",
|
|
174
|
+
"description": "Human-readable label"
|
|
175
|
+
},
|
|
176
|
+
"description": {
|
|
177
|
+
"type": "string",
|
|
178
|
+
"description": "Description of the profile's purpose"
|
|
179
|
+
},
|
|
180
|
+
"defaultProvider": {
|
|
181
|
+
"type": "string",
|
|
182
|
+
"description": "Default provider for this profile",
|
|
183
|
+
"enum": ["deepseek"]
|
|
184
|
+
},
|
|
185
|
+
"defaultModel": {
|
|
186
|
+
"type": "string",
|
|
187
|
+
"description": "Default model for this profile"
|
|
188
|
+
},
|
|
189
|
+
"temperature": {
|
|
190
|
+
"type": "number",
|
|
191
|
+
"description": "Default temperature",
|
|
192
|
+
"minimum": 0,
|
|
193
|
+
"maximum": 2
|
|
194
|
+
},
|
|
195
|
+
"maxTokens": {
|
|
196
|
+
"type": "integer",
|
|
197
|
+
"description": "Maximum tokens",
|
|
198
|
+
"minimum": 1
|
|
199
|
+
},
|
|
200
|
+
"systemPrompt": {
|
|
201
|
+
"$ref": "#/definitions/systemPromptConfig"
|
|
202
|
+
},
|
|
203
|
+
"rulebook": {
|
|
204
|
+
"$ref": "#/definitions/rulebookReference"
|
|
205
|
+
},
|
|
206
|
+
"metadata": {
|
|
207
|
+
"type": "object",
|
|
208
|
+
"description": "Additional profile metadata"
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
},
|
|
212
|
+
"systemPromptConfig": {
|
|
213
|
+
"oneOf": [
|
|
214
|
+
{
|
|
215
|
+
"type": "object",
|
|
216
|
+
"required": ["type"],
|
|
217
|
+
"properties": {
|
|
218
|
+
"type": {
|
|
219
|
+
"type": "string",
|
|
220
|
+
"const": "literal"
|
|
221
|
+
},
|
|
222
|
+
"content": {
|
|
223
|
+
"type": "string",
|
|
224
|
+
"description": "Literal prompt content"
|
|
225
|
+
},
|
|
226
|
+
"metadata": {
|
|
227
|
+
"type": "object"
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
"type": "object",
|
|
233
|
+
"required": ["type"],
|
|
234
|
+
"properties": {
|
|
235
|
+
"type": {
|
|
236
|
+
"type": "string",
|
|
237
|
+
"const": "rulebook"
|
|
238
|
+
},
|
|
239
|
+
"template": {
|
|
240
|
+
"type": "string",
|
|
241
|
+
"description": "Template with placeholders like {{rulebook}}, {{profile}}, {{profile_name}}"
|
|
242
|
+
},
|
|
243
|
+
"metadata": {
|
|
244
|
+
"type": "object"
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
]
|
|
249
|
+
},
|
|
250
|
+
"rulebookReference": {
|
|
251
|
+
"oneOf": [
|
|
252
|
+
{
|
|
253
|
+
"type": "object",
|
|
254
|
+
"required": ["file"],
|
|
255
|
+
"properties": {
|
|
256
|
+
"file": {
|
|
257
|
+
"type": "string",
|
|
258
|
+
"description": "Path to external rulebook JSON file"
|
|
259
|
+
},
|
|
260
|
+
"version": {
|
|
261
|
+
"type": "string",
|
|
262
|
+
"description": "Rulebook version"
|
|
263
|
+
},
|
|
264
|
+
"contractVersion": {
|
|
265
|
+
"type": "string",
|
|
266
|
+
"description": "Contract version this rulebook adheres to"
|
|
267
|
+
},
|
|
268
|
+
"description": {
|
|
269
|
+
"type": "string",
|
|
270
|
+
"description": "Rulebook description"
|
|
271
|
+
},
|
|
272
|
+
"metadata": {
|
|
273
|
+
"type": "object",
|
|
274
|
+
"description": "Additional rulebook metadata"
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
"type": "object",
|
|
280
|
+
"required": ["inline"],
|
|
281
|
+
"properties": {
|
|
282
|
+
"inline": {
|
|
283
|
+
"$ref": "#/definitions/inlineRulebook"
|
|
284
|
+
},
|
|
285
|
+
"version": {
|
|
286
|
+
"type": "string",
|
|
287
|
+
"description": "Rulebook version"
|
|
288
|
+
},
|
|
289
|
+
"contractVersion": {
|
|
290
|
+
"type": "string",
|
|
291
|
+
"description": "Contract version this rulebook adheres to"
|
|
292
|
+
},
|
|
293
|
+
"description": {
|
|
294
|
+
"type": "string",
|
|
295
|
+
"description": "Rulebook description"
|
|
296
|
+
},
|
|
297
|
+
"metadata": {
|
|
298
|
+
"type": "object",
|
|
299
|
+
"description": "Additional rulebook metadata"
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
]
|
|
304
|
+
},
|
|
305
|
+
"inlineRulebook": {
|
|
306
|
+
"type": "object",
|
|
307
|
+
"properties": {
|
|
308
|
+
"label": {
|
|
309
|
+
"type": "string",
|
|
310
|
+
"description": "Human-readable label for the rulebook"
|
|
311
|
+
},
|
|
312
|
+
"description": {
|
|
313
|
+
"type": "string",
|
|
314
|
+
"description": "Description of the rulebook's purpose"
|
|
315
|
+
},
|
|
316
|
+
"globalPrinciples": {
|
|
317
|
+
"type": "array",
|
|
318
|
+
"description": "Global principles that apply across all phases",
|
|
319
|
+
"items": {
|
|
320
|
+
"$ref": "#/definitions/rule"
|
|
321
|
+
}
|
|
322
|
+
},
|
|
323
|
+
"phases": {
|
|
324
|
+
"type": "array",
|
|
325
|
+
"description": "Execution phases with their steps",
|
|
326
|
+
"items": {
|
|
327
|
+
"$ref": "#/definitions/phase"
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
}
|
|
331
|
+
},
|
|
332
|
+
"rule": {
|
|
333
|
+
"type": "object",
|
|
334
|
+
"required": ["id", "summary"],
|
|
335
|
+
"properties": {
|
|
336
|
+
"id": {
|
|
337
|
+
"type": "string",
|
|
338
|
+
"description": "Unique rule identifier"
|
|
339
|
+
},
|
|
340
|
+
"summary": {
|
|
341
|
+
"type": "string",
|
|
342
|
+
"description": "Concise rule summary"
|
|
343
|
+
},
|
|
344
|
+
"detail": {
|
|
345
|
+
"type": "string",
|
|
346
|
+
"description": "Detailed explanation of the rule"
|
|
347
|
+
},
|
|
348
|
+
"severity": {
|
|
349
|
+
"type": "string",
|
|
350
|
+
"enum": ["critical", "required", "recommended", "info"],
|
|
351
|
+
"description": "Rule severity level"
|
|
352
|
+
},
|
|
353
|
+
"evidenceRequired": {
|
|
354
|
+
"type": "string",
|
|
355
|
+
"description": "Evidence required to satisfy this rule"
|
|
356
|
+
},
|
|
357
|
+
"toolHints": {
|
|
358
|
+
"type": "array",
|
|
359
|
+
"description": "Suggested tools for implementing this rule",
|
|
360
|
+
"items": {
|
|
361
|
+
"type": "string"
|
|
362
|
+
}
|
|
363
|
+
},
|
|
364
|
+
"references": {
|
|
365
|
+
"type": "array",
|
|
366
|
+
"description": "Reference materials",
|
|
367
|
+
"items": {
|
|
368
|
+
"type": "object",
|
|
369
|
+
"properties": {
|
|
370
|
+
"label": {
|
|
371
|
+
"type": "string"
|
|
372
|
+
},
|
|
373
|
+
"file": {
|
|
374
|
+
"type": "string"
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
},
|
|
381
|
+
"phase": {
|
|
382
|
+
"type": "object",
|
|
383
|
+
"required": ["id", "label", "steps"],
|
|
384
|
+
"properties": {
|
|
385
|
+
"id": {
|
|
386
|
+
"type": "string",
|
|
387
|
+
"description": "Unique phase identifier"
|
|
388
|
+
},
|
|
389
|
+
"label": {
|
|
390
|
+
"type": "string",
|
|
391
|
+
"description": "Human-readable phase label"
|
|
392
|
+
},
|
|
393
|
+
"description": {
|
|
394
|
+
"type": "string",
|
|
395
|
+
"description": "Description of the phase's purpose"
|
|
396
|
+
},
|
|
397
|
+
"trigger": {
|
|
398
|
+
"type": "string",
|
|
399
|
+
"description": "Condition that triggers this phase"
|
|
400
|
+
},
|
|
401
|
+
"steps": {
|
|
402
|
+
"type": "array",
|
|
403
|
+
"description": "Steps within this phase",
|
|
404
|
+
"items": {
|
|
405
|
+
"$ref": "#/definitions/step"
|
|
406
|
+
}
|
|
407
|
+
}
|
|
408
|
+
}
|
|
409
|
+
},
|
|
410
|
+
"step": {
|
|
411
|
+
"type": "object",
|
|
412
|
+
"required": ["id", "title", "rules"],
|
|
413
|
+
"properties": {
|
|
414
|
+
"id": {
|
|
415
|
+
"type": "string",
|
|
416
|
+
"description": "Unique step identifier"
|
|
417
|
+
},
|
|
418
|
+
"title": {
|
|
419
|
+
"type": "string",
|
|
420
|
+
"description": "Step title"
|
|
421
|
+
},
|
|
422
|
+
"intent": {
|
|
423
|
+
"type": "string",
|
|
424
|
+
"description": "Intent or purpose of this step"
|
|
425
|
+
},
|
|
426
|
+
"description": {
|
|
427
|
+
"type": "string",
|
|
428
|
+
"description": "Detailed description"
|
|
429
|
+
},
|
|
430
|
+
"entryCriteria": {
|
|
431
|
+
"type": "array",
|
|
432
|
+
"description": "Criteria for entering this step",
|
|
433
|
+
"items": {
|
|
434
|
+
"type": "string"
|
|
435
|
+
}
|
|
436
|
+
},
|
|
437
|
+
"exitCriteria": {
|
|
438
|
+
"type": "array",
|
|
439
|
+
"description": "Criteria for completing this step",
|
|
440
|
+
"items": {
|
|
441
|
+
"type": "string"
|
|
442
|
+
}
|
|
443
|
+
},
|
|
444
|
+
"allowedTools": {
|
|
445
|
+
"type": "array",
|
|
446
|
+
"description": "Tools allowed in this step",
|
|
447
|
+
"items": {
|
|
448
|
+
"type": "string"
|
|
449
|
+
}
|
|
450
|
+
},
|
|
451
|
+
"blockedTools": {
|
|
452
|
+
"type": "array",
|
|
453
|
+
"description": "Tools blocked in this step",
|
|
454
|
+
"items": {
|
|
455
|
+
"type": "string"
|
|
456
|
+
}
|
|
457
|
+
},
|
|
458
|
+
"notes": {
|
|
459
|
+
"type": "array",
|
|
460
|
+
"description": "Additional notes",
|
|
461
|
+
"items": {
|
|
462
|
+
"type": "string"
|
|
463
|
+
}
|
|
464
|
+
},
|
|
465
|
+
"rules": {
|
|
466
|
+
"type": "array",
|
|
467
|
+
"description": "Rules for this step",
|
|
468
|
+
"items": {
|
|
469
|
+
"$ref": "#/definitions/rule"
|
|
470
|
+
}
|
|
471
|
+
},
|
|
472
|
+
"subSteps": {
|
|
473
|
+
"type": "array",
|
|
474
|
+
"description": "Sub-steps within this step",
|
|
475
|
+
"items": {
|
|
476
|
+
"$ref": "#/definitions/step"
|
|
477
|
+
}
|
|
478
|
+
}
|
|
479
|
+
}
|
|
480
|
+
},
|
|
481
|
+
"slashCommand": {
|
|
482
|
+
"type": "object",
|
|
483
|
+
"required": ["command", "description"],
|
|
484
|
+
"properties": {
|
|
485
|
+
"command": {
|
|
486
|
+
"type": "string",
|
|
487
|
+
"description": "The slash command (e.g., /model)",
|
|
488
|
+
"pattern": "^/"
|
|
489
|
+
},
|
|
490
|
+
"description": {
|
|
491
|
+
"type": "string",
|
|
492
|
+
"description": "Description of what the command does"
|
|
493
|
+
},
|
|
494
|
+
"category": {
|
|
495
|
+
"type": "string",
|
|
496
|
+
"description": "Category this command belongs to",
|
|
497
|
+
"enum": ["configuration", "diagnostics", "workspace", "other"]
|
|
498
|
+
},
|
|
499
|
+
"metadata": {
|
|
500
|
+
"type": "object",
|
|
501
|
+
"description": "Additional command metadata"
|
|
502
|
+
}
|
|
503
|
+
}
|
|
504
|
+
},
|
|
505
|
+
"capability": {
|
|
506
|
+
"type": "object",
|
|
507
|
+
"required": ["id", "label"],
|
|
508
|
+
"properties": {
|
|
509
|
+
"id": {
|
|
510
|
+
"type": "string",
|
|
511
|
+
"description": "Unique capability identifier"
|
|
512
|
+
},
|
|
513
|
+
"label": {
|
|
514
|
+
"type": "string",
|
|
515
|
+
"description": "Human-readable label"
|
|
516
|
+
},
|
|
517
|
+
"description": {
|
|
518
|
+
"type": "string",
|
|
519
|
+
"description": "Description of the capability"
|
|
520
|
+
},
|
|
521
|
+
"metadata": {
|
|
522
|
+
"type": "object",
|
|
523
|
+
"description": "Additional capability metadata"
|
|
524
|
+
}
|
|
525
|
+
}
|
|
526
|
+
}
|
|
527
|
+
}
|
|
528
|
+
}
|