@bastani/atomic 0.9.29 → 0.9.30-alpha.2
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.md +27 -0
- package/dist/builtin/intercom/package.json +1 -1
- package/dist/builtin/mcp/package.json +1 -1
- package/dist/builtin/subagents/package.json +1 -1
- package/dist/builtin/web-access/package.json +1 -1
- package/dist/builtin/workflows/package.json +1 -1
- package/dist/core/anthropic-thinking-guard.js.map +1 -1
- package/dist/core/extensions/loader-virtual-modules.d.ts.map +1 -1
- package/dist/core/extensions/loader-virtual-modules.js +6 -0
- package/dist/core/extensions/loader-virtual-modules.js.map +1 -1
- package/dist/core/http-dispatcher.d.ts +1 -1
- package/dist/core/http-dispatcher.d.ts.map +1 -1
- package/dist/core/http-dispatcher.js +2 -1
- package/dist/core/http-dispatcher.js.map +1 -1
- package/dist/core/key-id-schema.d.ts +6 -0
- package/dist/core/key-id-schema.d.ts.map +1 -0
- package/dist/core/key-id-schema.js +16 -0
- package/dist/core/key-id-schema.js.map +1 -0
- package/dist/core/keybindings-schema.d.ts +4 -0
- package/dist/core/keybindings-schema.d.ts.map +1 -0
- package/dist/core/keybindings-schema.js +20 -0
- package/dist/core/keybindings-schema.js.map +1 -0
- package/dist/core/keybindings.d.ts +226 -79
- package/dist/core/keybindings.d.ts.map +1 -1
- package/dist/core/keybindings.js +25 -20
- package/dist/core/keybindings.js.map +1 -1
- package/dist/core/model-config.d.ts +685 -164
- package/dist/core/model-config.d.ts.map +1 -1
- package/dist/core/model-config.js +22 -176
- package/dist/core/model-config.js.map +1 -1
- package/dist/core/project-trust.d.ts.map +1 -1
- package/dist/core/project-trust.js +2 -1
- package/dist/core/project-trust.js.map +1 -1
- package/dist/core/resource-loader-context-files.d.ts.map +1 -1
- package/dist/core/resource-loader-context-files.js +10 -6
- package/dist/core/resource-loader-context-files.js.map +1 -1
- package/dist/core/settings-defaults.d.ts +80 -0
- package/dist/core/settings-defaults.d.ts.map +1 -0
- package/dist/core/settings-defaults.js +81 -0
- package/dist/core/settings-defaults.js.map +1 -0
- package/dist/core/settings-manager-basic-accessors.d.ts.map +1 -1
- package/dist/core/settings-manager-basic-accessors.js +34 -29
- package/dist/core/settings-manager-basic-accessors.js.map +1 -1
- package/dist/core/settings-manager-resource-accessors.d.ts.map +1 -1
- package/dist/core/settings-manager-resource-accessors.js +10 -9
- package/dist/core/settings-manager-resource-accessors.js.map +1 -1
- package/dist/core/settings-manager-ui-accessors.d.ts.map +1 -1
- package/dist/core/settings-manager-ui-accessors.js +26 -18
- package/dist/core/settings-manager-ui-accessors.js.map +1 -1
- package/dist/core/settings-schema.d.ts +292 -0
- package/dist/core/settings-schema.d.ts.map +1 -0
- package/dist/core/settings-schema.js +403 -0
- package/dist/core/settings-schema.js.map +1 -0
- package/dist/core/settings-types.d.ts +2 -181
- package/dist/core/settings-types.d.ts.map +1 -1
- package/dist/core/settings-types.js.map +1 -1
- package/dist/extensions/codemode/index.d.ts.map +1 -1
- package/dist/extensions/codemode/index.js +2 -1
- package/dist/extensions/codemode/index.js.map +1 -1
- package/dist/extensions/codemode/tool.d.ts +1 -1
- package/dist/extensions/codemode/tool.d.ts.map +1 -1
- package/dist/extensions/codemode/tool.js +2 -1
- package/dist/extensions/codemode/tool.js.map +1 -1
- package/dist/extensions/herdr/index.d.ts.map +1 -1
- package/dist/extensions/herdr/index.js +4 -1
- package/dist/extensions/herdr/index.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector-items.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector-items.js +2 -4
- package/dist/modes/interactive/components/settings-selector-items.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector-submenus.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector-submenus.js +2 -1
- package/dist/modes/interactive/components/settings-selector-submenus.js.map +1 -1
- package/dist/modes/interactive/theme/catppuccin-frappe.json +1 -1
- package/dist/modes/interactive/theme/catppuccin-latte.json +1 -1
- package/dist/modes/interactive/theme/catppuccin-macchiato.json +1 -1
- package/dist/modes/interactive/theme/catppuccin-mocha.json +1 -1
- package/dist/modes/interactive/theme/dark.json +1 -1
- package/dist/modes/interactive/theme/light.json +1 -1
- package/dist/modes/interactive/theme/theme-class.d.ts +3 -12
- package/dist/modes/interactive/theme/theme-class.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme-class.js +2 -9
- package/dist/modes/interactive/theme/theme-class.js.map +1 -1
- package/dist/modes/interactive/theme/theme-loading.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme-loading.js +3 -21
- package/dist/modes/interactive/theme/theme-loading.js.map +1 -1
- package/dist/modes/interactive/theme/theme-parse.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme-parse.js +3 -0
- package/dist/modes/interactive/theme/theme-parse.js.map +1 -1
- package/dist/modes/interactive/theme/theme-schema.d.ts +5 -224
- package/dist/modes/interactive/theme/theme-schema.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme-schema.js +47 -72
- package/dist/modes/interactive/theme/theme-schema.js.map +1 -1
- package/dist/modes/interactive/theme/theme-tokens.d.ts +262 -0
- package/dist/modes/interactive/theme/theme-tokens.d.ts.map +1 -0
- package/dist/modes/interactive/theme/theme-tokens.js +126 -0
- package/dist/modes/interactive/theme/theme-tokens.js.map +1 -0
- package/docs/compaction/reference.md +1 -1
- package/docs/compaction.md +2 -2
- package/docs/keybindings.md +2 -0
- package/docs/models.md +2 -0
- package/docs/providers.md +1 -1
- package/docs/settings.md +2 -0
- package/docs/themes/reference.md +2 -2
- package/docs/themes.md +3 -1
- package/examples/extensions/dynamic-resources/dynamic.json +1 -1
- package/npm-shrinkwrap.json +36 -36
- package/package.json +5 -3
- package/schemas/keybindings.schema.json +413 -0
- package/schemas/models.schema.json +1178 -0
- package/schemas/settings.schema.json +940 -0
- package/schemas/theme.schema.json +369 -0
- package/dist/modes/interactive/theme/theme-schema.json +0 -361
|
@@ -0,0 +1,940 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://raw.githubusercontent.com/bastani-inc/atomic/main/packages/coding-agent/schemas/settings.schema.json",
|
|
4
|
+
"$comment": "This file is generated from TypeScript source. Do not edit it manually; run npm run generate:schemas --workspace=@bastani/atomic.",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"$schema": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "JSON Schema reference."
|
|
10
|
+
},
|
|
11
|
+
"lastChangelogVersion": {
|
|
12
|
+
"type": "string"
|
|
13
|
+
},
|
|
14
|
+
"firstRunOnboardingStartedVersion": {
|
|
15
|
+
"type": "string",
|
|
16
|
+
"description": "Managed onboarding state; leave unchanged."
|
|
17
|
+
},
|
|
18
|
+
"onboardedVersion": {
|
|
19
|
+
"type": "string",
|
|
20
|
+
"description": "Managed onboarding completion state; leave unchanged."
|
|
21
|
+
},
|
|
22
|
+
"defaultProvider": {
|
|
23
|
+
"type": "string"
|
|
24
|
+
},
|
|
25
|
+
"defaultModel": {
|
|
26
|
+
"type": "string"
|
|
27
|
+
},
|
|
28
|
+
"routerModel": {
|
|
29
|
+
"type": "string",
|
|
30
|
+
"description": "Inference model for workflow-stage and subagent model: \"auto\" selection only. An exact provider/model selects a registered chat or classifier model; \"auto\" and an empty string use the current chat model.",
|
|
31
|
+
"default": ""
|
|
32
|
+
},
|
|
33
|
+
"compactionModel": {
|
|
34
|
+
"type": "string",
|
|
35
|
+
"description": "Compaction model: \"auto\" or an empty string uses the session model, and an exact provider/model selects a registered chat model, classifier, or compactor."
|
|
36
|
+
},
|
|
37
|
+
"modelRouting": {
|
|
38
|
+
"type": "object",
|
|
39
|
+
"properties": {
|
|
40
|
+
"allowedProviders": {
|
|
41
|
+
"type": "array",
|
|
42
|
+
"items": {
|
|
43
|
+
"type": "string"
|
|
44
|
+
},
|
|
45
|
+
"description": "When nonempty, only models from these provider IDs are routing candidates."
|
|
46
|
+
},
|
|
47
|
+
"excludedProviders": {
|
|
48
|
+
"type": "array",
|
|
49
|
+
"items": {
|
|
50
|
+
"type": "string"
|
|
51
|
+
},
|
|
52
|
+
"description": "Provider IDs that are never routing candidates. Applied after allowedProviders."
|
|
53
|
+
},
|
|
54
|
+
"allowedModels": {
|
|
55
|
+
"type": "array",
|
|
56
|
+
"items": {
|
|
57
|
+
"type": "string"
|
|
58
|
+
},
|
|
59
|
+
"description": "When nonempty, only models matching these full-ID or glob patterns, as in enabledModels, are routing candidates."
|
|
60
|
+
},
|
|
61
|
+
"excludedModels": {
|
|
62
|
+
"type": "array",
|
|
63
|
+
"items": {
|
|
64
|
+
"type": "string"
|
|
65
|
+
},
|
|
66
|
+
"description": "Models matching these full-ID or glob patterns are never routing candidates. Applied after allowedModels."
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
"description": "Provider and model filters for the candidates model \"auto\" may route to. Does not affect routerModel."
|
|
70
|
+
},
|
|
71
|
+
"defaultThinkingLevel": {
|
|
72
|
+
"$ref": "#/$defs/ModelThinkingLevel"
|
|
73
|
+
},
|
|
74
|
+
"modelThinkingLevels": {
|
|
75
|
+
"type": "object",
|
|
76
|
+
"patternProperties": {
|
|
77
|
+
"^.*$": {
|
|
78
|
+
"$ref": "#/$defs/ModelThinkingLevel"
|
|
79
|
+
}
|
|
80
|
+
},
|
|
81
|
+
"description": "Per-model default thinking level overrides keyed by \"provider/modelId\"."
|
|
82
|
+
},
|
|
83
|
+
"fallbackModels": {
|
|
84
|
+
"type": "array",
|
|
85
|
+
"items": {
|
|
86
|
+
"type": "string"
|
|
87
|
+
},
|
|
88
|
+
"description": "Ordered main-chat fallback models, written as \"provider/model\" with an optional thinking-level suffix such as \":high\"."
|
|
89
|
+
},
|
|
90
|
+
"transport": {
|
|
91
|
+
"anyOf": [
|
|
92
|
+
{
|
|
93
|
+
"type": "string",
|
|
94
|
+
"const": "auto"
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
"type": "string",
|
|
98
|
+
"const": "sse"
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"type": "string",
|
|
102
|
+
"const": "websocket"
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"type": "string",
|
|
106
|
+
"const": "websocket-cached"
|
|
107
|
+
}
|
|
108
|
+
],
|
|
109
|
+
"default": "auto"
|
|
110
|
+
},
|
|
111
|
+
"steeringMode": {
|
|
112
|
+
"anyOf": [
|
|
113
|
+
{
|
|
114
|
+
"type": "string",
|
|
115
|
+
"const": "all"
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"type": "string",
|
|
119
|
+
"const": "one-at-a-time"
|
|
120
|
+
}
|
|
121
|
+
],
|
|
122
|
+
"default": "one-at-a-time"
|
|
123
|
+
},
|
|
124
|
+
"followUpMode": {
|
|
125
|
+
"anyOf": [
|
|
126
|
+
{
|
|
127
|
+
"type": "string",
|
|
128
|
+
"const": "all"
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
"type": "string",
|
|
132
|
+
"const": "one-at-a-time"
|
|
133
|
+
}
|
|
134
|
+
],
|
|
135
|
+
"default": "one-at-a-time"
|
|
136
|
+
},
|
|
137
|
+
"theme": {
|
|
138
|
+
"type": "string"
|
|
139
|
+
},
|
|
140
|
+
"enableAnalytics": {
|
|
141
|
+
"type": "boolean",
|
|
142
|
+
"description": "Opt in to analytics data sharing. Storage only; Atomic does not transmit analytics."
|
|
143
|
+
},
|
|
144
|
+
"trackingId": {
|
|
145
|
+
"type": "string",
|
|
146
|
+
"description": "Analytics tracking identifier, generated when analytics is enabled."
|
|
147
|
+
},
|
|
148
|
+
"deviceId": {
|
|
149
|
+
"type": "string",
|
|
150
|
+
"description": "Stable installation UUID, generated when authentication first needs it. Global only."
|
|
151
|
+
},
|
|
152
|
+
"showCacheMissNotices": {
|
|
153
|
+
"type": "boolean",
|
|
154
|
+
"description": "Show cache cost and provider recovery notices.",
|
|
155
|
+
"default": false
|
|
156
|
+
},
|
|
157
|
+
"compaction": {
|
|
158
|
+
"type": "object",
|
|
159
|
+
"properties": {
|
|
160
|
+
"enabled": {
|
|
161
|
+
"type": "boolean",
|
|
162
|
+
"default": true
|
|
163
|
+
},
|
|
164
|
+
"reserveTokens": {
|
|
165
|
+
"type": "integer",
|
|
166
|
+
"minimum": 0,
|
|
167
|
+
"maximum": 9007199254740991,
|
|
168
|
+
"description": "Tokens reserved for the next model response.",
|
|
169
|
+
"default": 16384
|
|
170
|
+
},
|
|
171
|
+
"compression_ratio": {
|
|
172
|
+
"type": "number",
|
|
173
|
+
"exclusiveMinimum": 0,
|
|
174
|
+
"exclusiveMaximum": 1,
|
|
175
|
+
"description": "Fraction of compactable transcript lines to keep.",
|
|
176
|
+
"default": 0.5
|
|
177
|
+
},
|
|
178
|
+
"preserve_recent": {
|
|
179
|
+
"type": "integer",
|
|
180
|
+
"minimum": 0,
|
|
181
|
+
"maximum": 9007199254740991,
|
|
182
|
+
"description": "Exact number of newest context-visible messages kept outside the compactable region.",
|
|
183
|
+
"default": 2
|
|
184
|
+
},
|
|
185
|
+
"query": {
|
|
186
|
+
"type": "string",
|
|
187
|
+
"description": "Relevance focus for selecting older lines to retain. Defaults to the last user message when omitted."
|
|
188
|
+
},
|
|
189
|
+
"modelOverrides": {
|
|
190
|
+
"type": "object",
|
|
191
|
+
"patternProperties": {
|
|
192
|
+
"^.*$": {
|
|
193
|
+
"type": "object",
|
|
194
|
+
"properties": {
|
|
195
|
+
"reserveTokens": {
|
|
196
|
+
"type": "integer",
|
|
197
|
+
"minimum": 0,
|
|
198
|
+
"maximum": 9007199254740991
|
|
199
|
+
},
|
|
200
|
+
"preserve_recent": {
|
|
201
|
+
"type": "integer",
|
|
202
|
+
"minimum": 0,
|
|
203
|
+
"maximum": 9007199254740991
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
},
|
|
208
|
+
"description": "Per-model overrides keyed by exact \"provider/modelId\" strings."
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
},
|
|
212
|
+
"branchSummary": {
|
|
213
|
+
"type": "object",
|
|
214
|
+
"properties": {
|
|
215
|
+
"reserveTokens": {
|
|
216
|
+
"type": "number",
|
|
217
|
+
"description": "Tokens reserved for the prompt and LLM response.",
|
|
218
|
+
"default": 16384
|
|
219
|
+
},
|
|
220
|
+
"skipPrompt": {
|
|
221
|
+
"type": "boolean",
|
|
222
|
+
"description": "When true, skips the \"Summarize branch?\" prompt and defaults to no summary.",
|
|
223
|
+
"default": false
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
},
|
|
227
|
+
"sessionSummary": {
|
|
228
|
+
"type": "object",
|
|
229
|
+
"properties": {
|
|
230
|
+
"enabled": {
|
|
231
|
+
"type": "boolean",
|
|
232
|
+
"description": "Generate a one-line resume-picker summary once the agent goes idle.",
|
|
233
|
+
"default": true
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
},
|
|
237
|
+
"retry": {
|
|
238
|
+
"type": "object",
|
|
239
|
+
"properties": {
|
|
240
|
+
"enabled": {
|
|
241
|
+
"type": "boolean",
|
|
242
|
+
"default": true
|
|
243
|
+
},
|
|
244
|
+
"maxRetries": {
|
|
245
|
+
"type": "number",
|
|
246
|
+
"default": 3
|
|
247
|
+
},
|
|
248
|
+
"baseDelayMs": {
|
|
249
|
+
"type": "number",
|
|
250
|
+
"description": "Exponential backoff base delay in milliseconds: 2s, 4s, 8s.",
|
|
251
|
+
"default": 2000
|
|
252
|
+
},
|
|
253
|
+
"maxAgentDelayMs": {
|
|
254
|
+
"type": "number",
|
|
255
|
+
"description": "Maximum agent-level backoff delay in milliseconds. 0 retries immediately.",
|
|
256
|
+
"default": 60000
|
|
257
|
+
},
|
|
258
|
+
"provider": {
|
|
259
|
+
"type": "object",
|
|
260
|
+
"properties": {
|
|
261
|
+
"timeoutMs": {
|
|
262
|
+
"type": "number",
|
|
263
|
+
"description": "SDK or provider request timeout in milliseconds."
|
|
264
|
+
},
|
|
265
|
+
"maxRetries": {
|
|
266
|
+
"type": "number",
|
|
267
|
+
"description": "SDK or provider retry attempts."
|
|
268
|
+
},
|
|
269
|
+
"maxRetryDelayMs": {
|
|
270
|
+
"type": "number",
|
|
271
|
+
"description": "Maximum server-requested delay before failing.",
|
|
272
|
+
"default": 60000
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
},
|
|
276
|
+
"maxDelayMs": {
|
|
277
|
+
"type": "number",
|
|
278
|
+
"description": "Legacy retry delay setting. Use provider.maxRetryDelayMs instead.",
|
|
279
|
+
"deprecated": true
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
},
|
|
283
|
+
"hideThinkingBlock": {
|
|
284
|
+
"type": "boolean",
|
|
285
|
+
"default": false
|
|
286
|
+
},
|
|
287
|
+
"externalEditor": {
|
|
288
|
+
"type": "string",
|
|
289
|
+
"description": "Command for Ctrl+G external editor; takes precedence over VISUAL and EDITOR."
|
|
290
|
+
},
|
|
291
|
+
"shellPath": {
|
|
292
|
+
"type": "string",
|
|
293
|
+
"description": "Custom shell path, for example for Cygwin on Windows, with support for leading ~ expansion."
|
|
294
|
+
},
|
|
295
|
+
"quietStartup": {
|
|
296
|
+
"anyOf": [
|
|
297
|
+
{
|
|
298
|
+
"type": "boolean"
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
"type": "string",
|
|
302
|
+
"const": "header"
|
|
303
|
+
}
|
|
304
|
+
],
|
|
305
|
+
"description": "When true, hide all startup output. When \"header\", keep only the startup header.",
|
|
306
|
+
"default": false
|
|
307
|
+
},
|
|
308
|
+
"defaultProjectTrust": {
|
|
309
|
+
"anyOf": [
|
|
310
|
+
{
|
|
311
|
+
"type": "string",
|
|
312
|
+
"const": "ask"
|
|
313
|
+
},
|
|
314
|
+
{
|
|
315
|
+
"type": "string",
|
|
316
|
+
"const": "always"
|
|
317
|
+
},
|
|
318
|
+
{
|
|
319
|
+
"type": "string",
|
|
320
|
+
"const": "never"
|
|
321
|
+
}
|
|
322
|
+
],
|
|
323
|
+
"description": "Global setting only.",
|
|
324
|
+
"default": "ask"
|
|
325
|
+
},
|
|
326
|
+
"shellCommandPrefix": {
|
|
327
|
+
"type": "string",
|
|
328
|
+
"description": "Prefix prepended to every bash command, for example to enable shell aliases."
|
|
329
|
+
},
|
|
330
|
+
"bashInterceptor": {
|
|
331
|
+
"type": "object",
|
|
332
|
+
"properties": {
|
|
333
|
+
"enabled": {
|
|
334
|
+
"type": "boolean",
|
|
335
|
+
"description": "When true, block shell commands that have dedicated tools and offer remaining bash tool calls to user_bash extension handlers before local execution.",
|
|
336
|
+
"default": false
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
},
|
|
340
|
+
"search": {
|
|
341
|
+
"type": "object",
|
|
342
|
+
"properties": {
|
|
343
|
+
"contextBefore": {
|
|
344
|
+
"type": "number",
|
|
345
|
+
"description": "Number of context lines before each search match.",
|
|
346
|
+
"default": 1
|
|
347
|
+
},
|
|
348
|
+
"contextAfter": {
|
|
349
|
+
"type": "number",
|
|
350
|
+
"description": "Number of context lines after each search match.",
|
|
351
|
+
"default": 3
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
},
|
|
355
|
+
"npmCommand": {
|
|
356
|
+
"type": "array",
|
|
357
|
+
"items": {
|
|
358
|
+
"type": "string"
|
|
359
|
+
},
|
|
360
|
+
"description": "Command used for npm package lookup and installation, in argv form such as [\"mise\", \"exec\", \"node@20\", \"--\", \"npm\"]."
|
|
361
|
+
},
|
|
362
|
+
"collapseChangelog": {
|
|
363
|
+
"type": "boolean",
|
|
364
|
+
"description": "Show the condensed changelog after update; use /changelog for the full changelog.",
|
|
365
|
+
"default": false
|
|
366
|
+
},
|
|
367
|
+
"enableInstallTelemetry": {
|
|
368
|
+
"type": "boolean",
|
|
369
|
+
"description": "Send an anonymous version-adoption ping on eligible interactive launches.",
|
|
370
|
+
"default": true
|
|
371
|
+
},
|
|
372
|
+
"packages": {
|
|
373
|
+
"type": "array",
|
|
374
|
+
"items": {
|
|
375
|
+
"anyOf": [
|
|
376
|
+
{
|
|
377
|
+
"type": "string",
|
|
378
|
+
"description": "Load all resources from the package."
|
|
379
|
+
},
|
|
380
|
+
{
|
|
381
|
+
"type": "object",
|
|
382
|
+
"required": [
|
|
383
|
+
"source"
|
|
384
|
+
],
|
|
385
|
+
"properties": {
|
|
386
|
+
"source": {
|
|
387
|
+
"type": "string"
|
|
388
|
+
},
|
|
389
|
+
"autoload": {
|
|
390
|
+
"type": "boolean",
|
|
391
|
+
"description": "When false, start empty and only apply explicit resource patterns."
|
|
392
|
+
},
|
|
393
|
+
"extensions": {
|
|
394
|
+
"type": "array",
|
|
395
|
+
"items": {
|
|
396
|
+
"type": "string"
|
|
397
|
+
}
|
|
398
|
+
},
|
|
399
|
+
"skills": {
|
|
400
|
+
"type": "array",
|
|
401
|
+
"items": {
|
|
402
|
+
"type": "string"
|
|
403
|
+
}
|
|
404
|
+
},
|
|
405
|
+
"prompts": {
|
|
406
|
+
"type": "array",
|
|
407
|
+
"items": {
|
|
408
|
+
"type": "string"
|
|
409
|
+
}
|
|
410
|
+
},
|
|
411
|
+
"themes": {
|
|
412
|
+
"type": "array",
|
|
413
|
+
"items": {
|
|
414
|
+
"type": "string"
|
|
415
|
+
}
|
|
416
|
+
},
|
|
417
|
+
"workflows": {
|
|
418
|
+
"type": "array",
|
|
419
|
+
"items": {
|
|
420
|
+
"type": "string"
|
|
421
|
+
}
|
|
422
|
+
},
|
|
423
|
+
"mcpServers": {
|
|
424
|
+
"type": "array",
|
|
425
|
+
"items": {
|
|
426
|
+
"type": "string"
|
|
427
|
+
}
|
|
428
|
+
}
|
|
429
|
+
}
|
|
430
|
+
}
|
|
431
|
+
],
|
|
432
|
+
"description": "Package source for npm or git packages. Use the string form to load all resources or the object form to filter resources."
|
|
433
|
+
},
|
|
434
|
+
"description": "npm or git package sources, as strings or objects with resource filtering."
|
|
435
|
+
},
|
|
436
|
+
"extensions": {
|
|
437
|
+
"type": "array",
|
|
438
|
+
"items": {
|
|
439
|
+
"type": "string"
|
|
440
|
+
},
|
|
441
|
+
"description": "Local extension file paths or directories."
|
|
442
|
+
},
|
|
443
|
+
"skills": {
|
|
444
|
+
"anyOf": [
|
|
445
|
+
{
|
|
446
|
+
"type": "array",
|
|
447
|
+
"items": {
|
|
448
|
+
"type": "string"
|
|
449
|
+
}
|
|
450
|
+
},
|
|
451
|
+
{
|
|
452
|
+
"type": "object",
|
|
453
|
+
"properties": {
|
|
454
|
+
"enableSkillCommands": {
|
|
455
|
+
"type": "boolean"
|
|
456
|
+
},
|
|
457
|
+
"customDirectories": {
|
|
458
|
+
"type": "array",
|
|
459
|
+
"items": {
|
|
460
|
+
"type": "string"
|
|
461
|
+
}
|
|
462
|
+
}
|
|
463
|
+
},
|
|
464
|
+
"deprecated": true
|
|
465
|
+
}
|
|
466
|
+
],
|
|
467
|
+
"description": "Local skill file paths or directories."
|
|
468
|
+
},
|
|
469
|
+
"prompts": {
|
|
470
|
+
"type": "array",
|
|
471
|
+
"items": {
|
|
472
|
+
"type": "string"
|
|
473
|
+
},
|
|
474
|
+
"description": "Local prompt template file paths or directories."
|
|
475
|
+
},
|
|
476
|
+
"themes": {
|
|
477
|
+
"type": "array",
|
|
478
|
+
"items": {
|
|
479
|
+
"type": "string"
|
|
480
|
+
},
|
|
481
|
+
"description": "Local theme file paths or directories."
|
|
482
|
+
},
|
|
483
|
+
"workflows": {
|
|
484
|
+
"anyOf": [
|
|
485
|
+
{
|
|
486
|
+
"type": "array",
|
|
487
|
+
"items": {
|
|
488
|
+
"type": "string"
|
|
489
|
+
}
|
|
490
|
+
},
|
|
491
|
+
{
|
|
492
|
+
"type": "object",
|
|
493
|
+
"properties": {
|
|
494
|
+
"paths": {
|
|
495
|
+
"type": "array",
|
|
496
|
+
"items": {
|
|
497
|
+
"type": "string"
|
|
498
|
+
},
|
|
499
|
+
"description": "Workflow resource paths."
|
|
500
|
+
},
|
|
501
|
+
"durability": {
|
|
502
|
+
"type": "object",
|
|
503
|
+
"properties": {
|
|
504
|
+
"systemDatabaseUrl": {
|
|
505
|
+
"type": "string",
|
|
506
|
+
"description": "PostgreSQL URL for the workflow database."
|
|
507
|
+
},
|
|
508
|
+
"systemDatabaseUrlFile": {
|
|
509
|
+
"type": "string",
|
|
510
|
+
"description": "Read the PostgreSQL URL from a UTF-8 file instead of storing credentials in settings."
|
|
511
|
+
}
|
|
512
|
+
},
|
|
513
|
+
"description": "Existing PostgreSQL database for durable workflows. Set only one URL source per scope.",
|
|
514
|
+
"additionalProperties": false
|
|
515
|
+
}
|
|
516
|
+
}
|
|
517
|
+
}
|
|
518
|
+
],
|
|
519
|
+
"description": "Local workflow paths, or an object with \"paths\" and \"durability\" for the workflow database."
|
|
520
|
+
},
|
|
521
|
+
"enableSkillCommands": {
|
|
522
|
+
"type": "boolean",
|
|
523
|
+
"description": "Register skills as /skill:name commands.",
|
|
524
|
+
"default": true
|
|
525
|
+
},
|
|
526
|
+
"terminal": {
|
|
527
|
+
"type": "object",
|
|
528
|
+
"properties": {
|
|
529
|
+
"showImages": {
|
|
530
|
+
"type": "boolean",
|
|
531
|
+
"description": "Show images when the terminal supports them.",
|
|
532
|
+
"default": true
|
|
533
|
+
},
|
|
534
|
+
"imageWidthCells": {
|
|
535
|
+
"type": "number",
|
|
536
|
+
"description": "Preferred inline image width in terminal cells.",
|
|
537
|
+
"default": 60
|
|
538
|
+
},
|
|
539
|
+
"clearOnShrink": {
|
|
540
|
+
"type": "boolean",
|
|
541
|
+
"description": "Clear empty rows when content shrinks.",
|
|
542
|
+
"default": false
|
|
543
|
+
},
|
|
544
|
+
"showTerminalProgress": {
|
|
545
|
+
"type": "boolean",
|
|
546
|
+
"description": "Show OSC 9;4 terminal progress indicators.",
|
|
547
|
+
"default": false
|
|
548
|
+
},
|
|
549
|
+
"hyperlinks": {
|
|
550
|
+
"anyOf": [
|
|
551
|
+
{
|
|
552
|
+
"type": "boolean"
|
|
553
|
+
},
|
|
554
|
+
{
|
|
555
|
+
"type": "string",
|
|
556
|
+
"const": "auto"
|
|
557
|
+
}
|
|
558
|
+
],
|
|
559
|
+
"description": "Hyperlink capability override. \"auto\" and invalid values keep terminal detection."
|
|
560
|
+
},
|
|
561
|
+
"images": {
|
|
562
|
+
"anyOf": [
|
|
563
|
+
{
|
|
564
|
+
"type": "string",
|
|
565
|
+
"const": "kitty"
|
|
566
|
+
},
|
|
567
|
+
{
|
|
568
|
+
"type": "string",
|
|
569
|
+
"const": "iterm2"
|
|
570
|
+
},
|
|
571
|
+
{
|
|
572
|
+
"type": "string",
|
|
573
|
+
"const": "auto"
|
|
574
|
+
},
|
|
575
|
+
{
|
|
576
|
+
"type": "boolean",
|
|
577
|
+
"const": false
|
|
578
|
+
}
|
|
579
|
+
],
|
|
580
|
+
"description": "Inline-image protocol override. false disables images; \"auto\" keeps terminal detection."
|
|
581
|
+
},
|
|
582
|
+
"trueColor": {
|
|
583
|
+
"anyOf": [
|
|
584
|
+
{
|
|
585
|
+
"type": "boolean"
|
|
586
|
+
},
|
|
587
|
+
{
|
|
588
|
+
"type": "string",
|
|
589
|
+
"const": "auto"
|
|
590
|
+
}
|
|
591
|
+
],
|
|
592
|
+
"description": "Truecolor capability override. \"auto\" and invalid values keep terminal detection."
|
|
593
|
+
}
|
|
594
|
+
}
|
|
595
|
+
},
|
|
596
|
+
"herdr": {
|
|
597
|
+
"type": "object",
|
|
598
|
+
"properties": {
|
|
599
|
+
"enabled": {
|
|
600
|
+
"type": "boolean",
|
|
601
|
+
"description": "Enable the built-in reporter in an eligible Herdr pane.",
|
|
602
|
+
"default": true
|
|
603
|
+
}
|
|
604
|
+
}
|
|
605
|
+
},
|
|
606
|
+
"images": {
|
|
607
|
+
"type": "object",
|
|
608
|
+
"properties": {
|
|
609
|
+
"autoResize": {
|
|
610
|
+
"type": "boolean",
|
|
611
|
+
"description": "Resize images to 2000x2000 maximum for better model compatibility.",
|
|
612
|
+
"default": true
|
|
613
|
+
},
|
|
614
|
+
"blockImages": {
|
|
615
|
+
"type": "boolean",
|
|
616
|
+
"description": "When true, prevents all images from being sent to LLM providers.",
|
|
617
|
+
"default": false
|
|
618
|
+
}
|
|
619
|
+
}
|
|
620
|
+
},
|
|
621
|
+
"enabledModels": {
|
|
622
|
+
"type": "array",
|
|
623
|
+
"items": {
|
|
624
|
+
"type": "string"
|
|
625
|
+
},
|
|
626
|
+
"description": "Model patterns for cycling, in the same format as the --models CLI flag."
|
|
627
|
+
},
|
|
628
|
+
"defaultTools": {
|
|
629
|
+
"type": "array",
|
|
630
|
+
"items": {
|
|
631
|
+
"type": "string"
|
|
632
|
+
},
|
|
633
|
+
"description": "Initial tool selection. Plain names replace the inherited selection; +name and -name entries add or remove tools."
|
|
634
|
+
},
|
|
635
|
+
"doubleEscapeAction": {
|
|
636
|
+
"anyOf": [
|
|
637
|
+
{
|
|
638
|
+
"type": "string",
|
|
639
|
+
"const": "fork"
|
|
640
|
+
},
|
|
641
|
+
{
|
|
642
|
+
"type": "string",
|
|
643
|
+
"const": "tree"
|
|
644
|
+
},
|
|
645
|
+
{
|
|
646
|
+
"type": "string",
|
|
647
|
+
"const": "none"
|
|
648
|
+
}
|
|
649
|
+
],
|
|
650
|
+
"description": "Action for double-escape with an empty editor.",
|
|
651
|
+
"default": "tree"
|
|
652
|
+
},
|
|
653
|
+
"treeFilterMode": {
|
|
654
|
+
"anyOf": [
|
|
655
|
+
{
|
|
656
|
+
"type": "string",
|
|
657
|
+
"const": "default"
|
|
658
|
+
},
|
|
659
|
+
{
|
|
660
|
+
"type": "string",
|
|
661
|
+
"const": "no-tools"
|
|
662
|
+
},
|
|
663
|
+
{
|
|
664
|
+
"type": "string",
|
|
665
|
+
"const": "user-only"
|
|
666
|
+
},
|
|
667
|
+
{
|
|
668
|
+
"type": "string",
|
|
669
|
+
"const": "labeled-only"
|
|
670
|
+
},
|
|
671
|
+
{
|
|
672
|
+
"type": "string",
|
|
673
|
+
"const": "all"
|
|
674
|
+
}
|
|
675
|
+
],
|
|
676
|
+
"description": "Default filter when opening /tree.",
|
|
677
|
+
"default": "default"
|
|
678
|
+
},
|
|
679
|
+
"thinkingBudgets": {
|
|
680
|
+
"type": "object",
|
|
681
|
+
"properties": {
|
|
682
|
+
"minimal": {
|
|
683
|
+
"type": "number"
|
|
684
|
+
},
|
|
685
|
+
"low": {
|
|
686
|
+
"type": "number"
|
|
687
|
+
},
|
|
688
|
+
"medium": {
|
|
689
|
+
"type": "number"
|
|
690
|
+
},
|
|
691
|
+
"high": {
|
|
692
|
+
"type": "number"
|
|
693
|
+
}
|
|
694
|
+
},
|
|
695
|
+
"description": "Custom token budgets for thinking levels."
|
|
696
|
+
},
|
|
697
|
+
"editorPaddingX": {
|
|
698
|
+
"type": "number",
|
|
699
|
+
"description": "Horizontal padding for the input editor (0-3).",
|
|
700
|
+
"default": 0
|
|
701
|
+
},
|
|
702
|
+
"outputPad": {
|
|
703
|
+
"anyOf": [
|
|
704
|
+
{
|
|
705
|
+
"type": "number",
|
|
706
|
+
"const": 0
|
|
707
|
+
},
|
|
708
|
+
{
|
|
709
|
+
"type": "number",
|
|
710
|
+
"const": 1
|
|
711
|
+
}
|
|
712
|
+
],
|
|
713
|
+
"description": "Horizontal padding for transcript content.",
|
|
714
|
+
"default": 1
|
|
715
|
+
},
|
|
716
|
+
"autocompleteMaxVisible": {
|
|
717
|
+
"type": "number",
|
|
718
|
+
"description": "Maximum visible items in the autocomplete dropdown (3-20).",
|
|
719
|
+
"default": 5
|
|
720
|
+
},
|
|
721
|
+
"showHardwareCursor": {
|
|
722
|
+
"type": "boolean",
|
|
723
|
+
"description": "Show the terminal cursor while still positioning it for IME."
|
|
724
|
+
},
|
|
725
|
+
"fullscreenScrollbar": {
|
|
726
|
+
"anyOf": [
|
|
727
|
+
{
|
|
728
|
+
"type": "string",
|
|
729
|
+
"const": "auto"
|
|
730
|
+
},
|
|
731
|
+
{
|
|
732
|
+
"type": "string",
|
|
733
|
+
"const": "always"
|
|
734
|
+
},
|
|
735
|
+
{
|
|
736
|
+
"type": "string",
|
|
737
|
+
"const": "hidden"
|
|
738
|
+
}
|
|
739
|
+
],
|
|
740
|
+
"description": "Fullscreen transcript scrollbar visibility.",
|
|
741
|
+
"default": "auto"
|
|
742
|
+
},
|
|
743
|
+
"fullscreenExitOutput": {
|
|
744
|
+
"anyOf": [
|
|
745
|
+
{
|
|
746
|
+
"type": "string",
|
|
747
|
+
"const": "transcript"
|
|
748
|
+
},
|
|
749
|
+
{
|
|
750
|
+
"type": "string",
|
|
751
|
+
"const": "resume-hint"
|
|
752
|
+
}
|
|
753
|
+
],
|
|
754
|
+
"description": "What the terminal keeps when a fullscreen session exits: the final transcript with a resume hint, or only the resume hint.",
|
|
755
|
+
"default": "transcript"
|
|
756
|
+
},
|
|
757
|
+
"fullscreenCopyOnSelect": {
|
|
758
|
+
"type": "boolean",
|
|
759
|
+
"description": "Copy fullscreen text selections automatically on mouse release.",
|
|
760
|
+
"default": true
|
|
761
|
+
},
|
|
762
|
+
"fullscreenWheelScrollLines": {
|
|
763
|
+
"anyOf": [
|
|
764
|
+
{
|
|
765
|
+
"type": "number"
|
|
766
|
+
},
|
|
767
|
+
{
|
|
768
|
+
"type": "string",
|
|
769
|
+
"const": "auto"
|
|
770
|
+
}
|
|
771
|
+
],
|
|
772
|
+
"description": "Lines scrolled per wheel event in fullscreen mode; numeric values are clamped from 1 to 100.",
|
|
773
|
+
"default": "auto"
|
|
774
|
+
},
|
|
775
|
+
"codemode": {
|
|
776
|
+
"type": "object",
|
|
777
|
+
"properties": {
|
|
778
|
+
"mode": {
|
|
779
|
+
"anyOf": [
|
|
780
|
+
{
|
|
781
|
+
"type": "string",
|
|
782
|
+
"const": "on"
|
|
783
|
+
},
|
|
784
|
+
{
|
|
785
|
+
"type": "string",
|
|
786
|
+
"const": "only"
|
|
787
|
+
}
|
|
788
|
+
],
|
|
789
|
+
"description": "How codemode presents tools. \"on\" keeps direct tool declarations visible with script-call information; \"only\" hides ordinary direct callable declarations so the model uses scripts. Model-only tools remain directly available.",
|
|
790
|
+
"default": "on"
|
|
791
|
+
},
|
|
792
|
+
"inlineBudget": {
|
|
793
|
+
"type": "number",
|
|
794
|
+
"minimum": 0,
|
|
795
|
+
"description": "Estimated tokens available for inline codemode tool declarations.",
|
|
796
|
+
"default": 3000
|
|
797
|
+
}
|
|
798
|
+
}
|
|
799
|
+
},
|
|
800
|
+
"markdown": {
|
|
801
|
+
"type": "object",
|
|
802
|
+
"properties": {
|
|
803
|
+
"codeBlockIndent": {
|
|
804
|
+
"type": "string",
|
|
805
|
+
"default": " "
|
|
806
|
+
},
|
|
807
|
+
"mermaid": {
|
|
808
|
+
"anyOf": [
|
|
809
|
+
{
|
|
810
|
+
"type": "string",
|
|
811
|
+
"const": "off"
|
|
812
|
+
},
|
|
813
|
+
{
|
|
814
|
+
"type": "string",
|
|
815
|
+
"const": "final"
|
|
816
|
+
},
|
|
817
|
+
{
|
|
818
|
+
"type": "string",
|
|
819
|
+
"const": "streaming"
|
|
820
|
+
}
|
|
821
|
+
],
|
|
822
|
+
"default": "streaming"
|
|
823
|
+
},
|
|
824
|
+
"latex": {
|
|
825
|
+
"type": "boolean",
|
|
826
|
+
"description": "Render LaTeX expressions as terminal-friendly Unicode math.",
|
|
827
|
+
"default": true
|
|
828
|
+
}
|
|
829
|
+
}
|
|
830
|
+
},
|
|
831
|
+
"warnings": {
|
|
832
|
+
"type": "object",
|
|
833
|
+
"properties": {
|
|
834
|
+
"anthropicExtraUsage": {
|
|
835
|
+
"type": "boolean",
|
|
836
|
+
"default": true
|
|
837
|
+
}
|
|
838
|
+
}
|
|
839
|
+
},
|
|
840
|
+
"sessionDir": {
|
|
841
|
+
"type": "string",
|
|
842
|
+
"description": "Custom session storage directory, in the same format as the --session-dir CLI flag."
|
|
843
|
+
},
|
|
844
|
+
"httpProxy": {
|
|
845
|
+
"type": "string",
|
|
846
|
+
"description": "Proxy URL applied as HTTP_PROXY and HTTPS_PROXY for Atomic-managed HTTP clients. Global only."
|
|
847
|
+
},
|
|
848
|
+
"httpIdleTimeoutMs": {
|
|
849
|
+
"anyOf": [
|
|
850
|
+
{
|
|
851
|
+
"type": "number",
|
|
852
|
+
"minimum": 0
|
|
853
|
+
},
|
|
854
|
+
{
|
|
855
|
+
"type": "string",
|
|
856
|
+
"pattern": "^(?:[dD][iI][sS][aA][bB][lL][eE][dD]|[0-9]+(?:[mM][sS]|[smhSMH])?)$"
|
|
857
|
+
}
|
|
858
|
+
],
|
|
859
|
+
"description": "HTTP idle timeout as milliseconds, a duration such as \"30s\", \"5m\", or \"1h\", or \"disabled\"; 0 or \"disabled\" disables it.",
|
|
860
|
+
"default": 600000
|
|
861
|
+
},
|
|
862
|
+
"cacheWarming": {
|
|
863
|
+
"anyOf": [
|
|
864
|
+
{
|
|
865
|
+
"type": "string",
|
|
866
|
+
"const": "off"
|
|
867
|
+
},
|
|
868
|
+
{
|
|
869
|
+
"type": "string",
|
|
870
|
+
"const": "streaming"
|
|
871
|
+
},
|
|
872
|
+
{
|
|
873
|
+
"type": "string",
|
|
874
|
+
"const": "idle"
|
|
875
|
+
}
|
|
876
|
+
],
|
|
877
|
+
"description": "Cache-warming profile. \"idle\" also warms between agent runs. Global only because each refresh costs money.",
|
|
878
|
+
"default": "streaming"
|
|
879
|
+
},
|
|
880
|
+
"websocketConnectTimeoutMs": {
|
|
881
|
+
"anyOf": [
|
|
882
|
+
{
|
|
883
|
+
"type": "number",
|
|
884
|
+
"minimum": 0
|
|
885
|
+
},
|
|
886
|
+
{
|
|
887
|
+
"type": "string",
|
|
888
|
+
"pattern": "^(?:[dD][iI][sS][aA][bB][lL][eE][dD]|[0-9]+(?:[mM][sS]|[smhSMH])?)$"
|
|
889
|
+
}
|
|
890
|
+
],
|
|
891
|
+
"description": "WebSocket connect or open handshake timeout as milliseconds, a duration such as \"30s\", or \"disabled\"; 0 or \"disabled\" disables it."
|
|
892
|
+
},
|
|
893
|
+
"streamDeadlineMs": {
|
|
894
|
+
"anyOf": [
|
|
895
|
+
{
|
|
896
|
+
"type": "number",
|
|
897
|
+
"minimum": 0
|
|
898
|
+
},
|
|
899
|
+
{
|
|
900
|
+
"type": "string",
|
|
901
|
+
"pattern": "^(?:[dD][iI][sS][aA][bB][lL][eE][dD]|[0-9]+(?:[mM][sS]|[smhSMH])?)$"
|
|
902
|
+
}
|
|
903
|
+
],
|
|
904
|
+
"description": "Maximum idle gap between two provider stream events as milliseconds, a duration such as \"30s\", or \"disabled\"; 0 or \"disabled\" disables it."
|
|
905
|
+
},
|
|
906
|
+
"queueMode": {
|
|
907
|
+
"anyOf": [
|
|
908
|
+
{
|
|
909
|
+
"type": "string",
|
|
910
|
+
"const": "all"
|
|
911
|
+
},
|
|
912
|
+
{
|
|
913
|
+
"type": "string",
|
|
914
|
+
"const": "one-at-a-time"
|
|
915
|
+
}
|
|
916
|
+
],
|
|
917
|
+
"description": "Legacy setting migrated to steeringMode.",
|
|
918
|
+
"deprecated": true
|
|
919
|
+
},
|
|
920
|
+
"websockets": {
|
|
921
|
+
"type": "boolean",
|
|
922
|
+
"description": "Legacy setting migrated to transport.",
|
|
923
|
+
"deprecated": true
|
|
924
|
+
}
|
|
925
|
+
},
|
|
926
|
+
"additionalProperties": true,
|
|
927
|
+
"$defs": {
|
|
928
|
+
"ModelThinkingLevel": {
|
|
929
|
+
"enum": [
|
|
930
|
+
"off",
|
|
931
|
+
"minimal",
|
|
932
|
+
"low",
|
|
933
|
+
"medium",
|
|
934
|
+
"high",
|
|
935
|
+
"xhigh",
|
|
936
|
+
"max"
|
|
937
|
+
]
|
|
938
|
+
}
|
|
939
|
+
}
|
|
940
|
+
}
|