pi-namespace-patch 1.1.0-namespace.3 → 1.2.0-namespace.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. package/CHANGELOG.md +63 -0
  2. package/README.md +4 -7
  3. package/dist/bundle/chunks/anthropic-messages-Q7SXESRX.js +6 -0
  4. package/dist/bundle/chunks/{azure-openai-responses-6A4PNZTH.js → azure-openai-responses-LM52U7CK.js} +1 -1
  5. package/dist/bundle/chunks/chunk-3ZATHNCK.js +9 -0
  6. package/dist/bundle/chunks/chunk-5GTPJSRI.js +7 -0
  7. package/dist/bundle/chunks/chunk-6MWTY2OB.js +130 -0
  8. package/dist/bundle/chunks/chunk-6QGV3IWD.js +6 -0
  9. package/dist/bundle/chunks/{chunk-SYCGMWFH.js → chunk-AKJ3ZOR3.js} +1 -1
  10. package/dist/bundle/chunks/chunk-C2AEIDJZ.js +2 -0
  11. package/dist/bundle/chunks/{chunk-LTSARG5Q.js → chunk-CQ3XTLTY.js} +1 -1
  12. package/dist/bundle/chunks/{chunk-UH5J7I7X.js → chunk-D7PHKNBM.js} +26 -92
  13. package/dist/bundle/chunks/chunk-DOST5PQW.js +82 -0
  14. package/dist/bundle/chunks/{chunk-GXLAGZ3Z.js → chunk-GDR5JFDJ.js} +1 -1
  15. package/dist/bundle/chunks/{chunk-Q7ROD45H.js → chunk-H7S5Z6OB.js} +77 -71
  16. package/dist/bundle/chunks/{chunk-CH4ZBH45.js → chunk-HACVPRBJ.js} +1 -1
  17. package/dist/bundle/chunks/{chunk-O7YIWAPD.js → chunk-ITZNWD4K.js} +1 -1
  18. package/dist/bundle/chunks/chunk-RDZVAGPR.js +2 -0
  19. package/dist/bundle/chunks/{chunk-VLRCF7MR.js → chunk-TN4NLWHF.js} +1 -1
  20. package/dist/bundle/chunks/{chunk-Y4NYF362.js → chunk-WBQBCFWG.js} +1 -1
  21. package/dist/bundle/chunks/chunk-WJUNYZC5.js +2 -0
  22. package/dist/bundle/chunks/{chunk-33CRHCAK.js → chunk-XIX7LUWI.js} +1 -1
  23. package/dist/bundle/chunks/{cli-OQYLWLA3.js → cli-SWM4FQ6V.js} +3 -3
  24. package/dist/bundle/chunks/{cloudflare-workers-ai-system-one-U3AH4ODQ.js → cloudflare-workers-ai-system-one-UTBL2KOF.js} +1 -1
  25. package/dist/bundle/chunks/codemode-worker.js +17 -9
  26. package/dist/bundle/chunks/easter-egg-3d-OX6RUCIS.js +2 -0
  27. package/dist/bundle/chunks/execute-3CFUPDLS.js +499 -0
  28. package/dist/bundle/chunks/github-copilot.js +1 -1
  29. package/dist/bundle/chunks/{google-generative-ai-X2VFFS4I.js → google-generative-ai-DXKP72HC.js} +1 -1
  30. package/dist/bundle/chunks/{google-vertex-KMGHFTSP.js → google-vertex-W6SIDOVV.js} +1 -1
  31. package/dist/bundle/chunks/{mistral-conversations-PRZLM26U.js → mistral-conversations-GBMHTSYF.js} +1 -1
  32. package/dist/bundle/chunks/openai-codex-responses-RN6B5UPP.js +10 -0
  33. package/dist/bundle/chunks/{openai-completions-WWQW7S3V.js → openai-completions-QW2B4SML.js} +1 -1
  34. package/dist/bundle/chunks/{openai-decisions-QLZKZLAK.js → openai-decisions-WVPMQ4JD.js} +1 -1
  35. package/dist/bundle/chunks/{openai-responses-KV7QHJY6.js → openai-responses-KDJUSIU7.js} +1 -1
  36. package/dist/bundle/chunks/runtime-366HE7CW.js +2 -0
  37. package/dist/bundle/chunks/{typesafe-system-one-B4NNEG67.js → typesafe-system-one-ZSK3RN4B.js} +1 -1
  38. package/dist/bundle/chunks/virtual-modules-KHZAOPVZ.js +2 -0
  39. package/dist/bundle/cli-runtime.js +1 -1
  40. package/dist/bundle/index.js +1 -1
  41. package/dist/bundle/rpc-entry.js +1 -1
  42. package/dist/core/agent-session.d.ts +14 -1
  43. package/dist/core/agent-session.d.ts.map +1 -1
  44. package/dist/core/agent-session.js +89 -57
  45. package/dist/core/agent-session.js.map +1 -1
  46. package/dist/core/auth-storage.d.ts.map +1 -1
  47. package/dist/core/auth-storage.js +20 -13
  48. package/dist/core/auth-storage.js.map +1 -1
  49. package/dist/core/bug-report.d.ts +9 -1
  50. package/dist/core/bug-report.d.ts.map +1 -1
  51. package/dist/core/compaction/utils.d.ts +6 -0
  52. package/dist/core/compaction/utils.d.ts.map +1 -1
  53. package/dist/core/compaction/utils.js +7 -8
  54. package/dist/core/compaction/utils.js.map +1 -1
  55. package/dist/core/extensions/index.d.ts +1 -1
  56. package/dist/core/extensions/index.d.ts.map +1 -1
  57. package/dist/core/extensions/index.js.map +1 -1
  58. package/dist/core/extensions/runner.d.ts +4 -2
  59. package/dist/core/extensions/runner.d.ts.map +1 -1
  60. package/dist/core/extensions/runner.js +2 -3
  61. package/dist/core/extensions/runner.js.map +1 -1
  62. package/dist/core/extensions/types.d.ts +31 -7
  63. package/dist/core/extensions/types.d.ts.map +1 -1
  64. package/dist/core/extensions/types.js.map +1 -1
  65. package/dist/core/key-id-schema.d.ts +6 -0
  66. package/dist/core/key-id-schema.d.ts.map +1 -0
  67. package/dist/core/key-id-schema.js +16 -0
  68. package/dist/core/key-id-schema.js.map +1 -0
  69. package/dist/core/keybindings-schema.d.ts +4 -0
  70. package/dist/core/keybindings-schema.d.ts.map +1 -0
  71. package/dist/core/keybindings-schema.js +16 -0
  72. package/dist/core/keybindings-schema.js.map +1 -0
  73. package/dist/core/keybindings.d.ts +194 -62
  74. package/dist/core/keybindings.d.ts.map +1 -1
  75. package/dist/core/keybindings.js +26 -23
  76. package/dist/core/keybindings.js.map +1 -1
  77. package/dist/core/model-config.d.ts +695 -74
  78. package/dist/core/model-config.d.ts.map +1 -1
  79. package/dist/core/model-config.js +16 -166
  80. package/dist/core/model-config.js.map +1 -1
  81. package/dist/core/model-runtime.d.ts.map +1 -1
  82. package/dist/core/model-runtime.js +11 -6
  83. package/dist/core/model-runtime.js.map +1 -1
  84. package/dist/core/package-manager.d.ts.map +1 -1
  85. package/dist/core/package-manager.js +3 -3
  86. package/dist/core/package-manager.js.map +1 -1
  87. package/dist/core/project-trust.d.ts.map +1 -1
  88. package/dist/core/project-trust.js +2 -1
  89. package/dist/core/project-trust.js.map +1 -1
  90. package/dist/core/remote-catalog-provider.d.ts +12 -1
  91. package/dist/core/remote-catalog-provider.d.ts.map +1 -1
  92. package/dist/core/remote-catalog-provider.js +82 -24
  93. package/dist/core/remote-catalog-provider.js.map +1 -1
  94. package/dist/core/resource-loader.d.ts.map +1 -1
  95. package/dist/core/resource-loader.js +5 -1
  96. package/dist/core/resource-loader.js.map +1 -1
  97. package/dist/core/settings-defaults.d.ts +65 -0
  98. package/dist/core/settings-defaults.d.ts.map +1 -0
  99. package/dist/core/settings-defaults.js +66 -0
  100. package/dist/core/settings-defaults.js.map +1 -0
  101. package/dist/core/settings-manager.d.ts +4 -147
  102. package/dist/core/settings-manager.d.ts.map +1 -1
  103. package/dist/core/settings-manager.js +48 -44
  104. package/dist/core/settings-manager.js.map +1 -1
  105. package/dist/core/settings-schema.d.ts +228 -0
  106. package/dist/core/settings-schema.d.ts.map +1 -0
  107. package/dist/core/settings-schema.js +287 -0
  108. package/dist/core/settings-schema.js.map +1 -0
  109. package/dist/core/tools/render-utils.d.ts +18 -0
  110. package/dist/core/tools/render-utils.d.ts.map +1 -1
  111. package/dist/core/tools/render-utils.js +46 -0
  112. package/dist/core/tools/render-utils.js.map +1 -1
  113. package/dist/core/tools/renderers/bash.d.ts.map +1 -1
  114. package/dist/core/tools/renderers/bash.js +7 -40
  115. package/dist/core/tools/renderers/bash.js.map +1 -1
  116. package/dist/extensions/codemode/execute.d.ts.map +1 -1
  117. package/dist/extensions/codemode/execute.js +64 -45
  118. package/dist/extensions/codemode/execute.js.map +1 -1
  119. package/dist/extensions/codemode/index.d.ts.map +1 -1
  120. package/dist/extensions/codemode/index.js +2 -1
  121. package/dist/extensions/codemode/index.js.map +1 -1
  122. package/dist/extensions/codemode/renderer.d.ts +2 -2
  123. package/dist/extensions/codemode/renderer.d.ts.map +1 -1
  124. package/dist/extensions/codemode/renderer.js +9 -3
  125. package/dist/extensions/codemode/renderer.js.map +1 -1
  126. package/dist/extensions/codemode/tool.d.ts +6 -12
  127. package/dist/extensions/codemode/tool.d.ts.map +1 -1
  128. package/dist/extensions/codemode/tool.js +44 -32
  129. package/dist/extensions/codemode/tool.js.map +1 -1
  130. package/dist/extensions/mcp/cli.js +5 -8
  131. package/dist/extensions/mcp/cli.js.map +1 -1
  132. package/dist/extensions/mcp/index.d.ts.map +1 -1
  133. package/dist/extensions/mcp/index.js +26 -23
  134. package/dist/extensions/mcp/index.js.map +1 -1
  135. package/dist/extensions/mcp/resources.d.ts +0 -6
  136. package/dist/extensions/mcp/resources.d.ts.map +1 -1
  137. package/dist/extensions/mcp/resources.js +1 -1
  138. package/dist/extensions/mcp/resources.js.map +1 -1
  139. package/dist/extensions/mcp/runtime.d.ts +3 -6
  140. package/dist/extensions/mcp/runtime.d.ts.map +1 -1
  141. package/dist/extensions/mcp/runtime.js +4 -39
  142. package/dist/extensions/mcp/runtime.js.map +1 -1
  143. package/dist/extensions/mcp/tools.d.ts +2 -3
  144. package/dist/extensions/mcp/tools.d.ts.map +1 -1
  145. package/dist/extensions/mcp/tools.js +62 -6
  146. package/dist/extensions/mcp/tools.js.map +1 -1
  147. package/dist/extensions/tool-search/tool.d.ts +0 -2
  148. package/dist/extensions/tool-search/tool.d.ts.map +1 -1
  149. package/dist/extensions/tool-search/tool.js +2 -4
  150. package/dist/extensions/tool-search/tool.js.map +1 -1
  151. package/dist/index.d.ts +1 -1
  152. package/dist/index.d.ts.map +1 -1
  153. package/dist/index.js.map +1 -1
  154. package/dist/main.js +3 -3
  155. package/dist/main.js.map +1 -1
  156. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  157. package/dist/modes/interactive/components/settings-selector.js +3 -2
  158. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  159. package/dist/modes/interactive/components/status-indicator.d.ts +1 -1
  160. package/dist/modes/interactive/components/status-indicator.d.ts.map +1 -1
  161. package/dist/modes/interactive/components/status-indicator.js +2 -2
  162. package/dist/modes/interactive/components/status-indicator.js.map +1 -1
  163. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  164. package/dist/modes/interactive/interactive-mode.js +11 -5
  165. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  166. package/dist/modes/interactive/theme/dark.json +1 -1
  167. package/dist/modes/interactive/theme/light.json +1 -1
  168. package/dist/modes/interactive/theme/theme-schema.d.ts +28 -0
  169. package/dist/modes/interactive/theme/theme-schema.d.ts.map +1 -0
  170. package/dist/modes/interactive/theme/theme-schema.js +105 -0
  171. package/dist/modes/interactive/theme/theme-schema.js.map +1 -0
  172. package/dist/modes/interactive/theme/theme-tokens.d.ts +257 -0
  173. package/dist/modes/interactive/theme/theme-tokens.d.ts.map +1 -0
  174. package/dist/modes/interactive/theme/theme-tokens.js +94 -0
  175. package/dist/modes/interactive/theme/theme-tokens.js.map +1 -0
  176. package/dist/modes/interactive/theme/theme.d.ts +13 -16
  177. package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  178. package/dist/modes/interactive/theme/theme.js +21 -29
  179. package/dist/modes/interactive/theme/theme.js.map +1 -1
  180. package/dist/modes/print-mode.d.ts.map +1 -1
  181. package/dist/modes/print-mode.js +4 -0
  182. package/dist/modes/print-mode.js.map +1 -1
  183. package/dist/utils/clipboard.d.ts.map +1 -1
  184. package/dist/utils/clipboard.js +6 -1
  185. package/dist/utils/clipboard.js.map +1 -1
  186. package/docs/cli-integration.md +1 -1
  187. package/docs/cli.md +1 -1
  188. package/docs/codemode.md +1 -1
  189. package/docs/compaction.md +2 -2
  190. package/docs/environment-variables.md +2 -1
  191. package/docs/extensions.md +7 -4
  192. package/docs/keybindings.md +1 -0
  193. package/docs/mcp.md +1 -1
  194. package/docs/models.md +1 -0
  195. package/docs/providers.md +20 -0
  196. package/docs/settings.md +3 -1
  197. package/docs/themes.md +4 -2
  198. package/docs/tui.md +1 -1
  199. package/examples/README.md +0 -3
  200. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  201. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  202. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  203. package/examples/extensions/dynamic-resources/dynamic.json +1 -1
  204. package/examples/extensions/gondolin/package-lock.json +2 -2
  205. package/examples/extensions/gondolin/package.json +1 -1
  206. package/examples/extensions/overlay-test.ts +2 -2
  207. package/examples/extensions/plan-mode/index.ts +6 -2
  208. package/examples/extensions/sandbox/package-lock.json +2 -2
  209. package/examples/extensions/sandbox/package.json +1 -1
  210. package/examples/extensions/with-deps/package-lock.json +2 -2
  211. package/examples/extensions/with-deps/package.json +1 -1
  212. package/package.json +9 -20
  213. package/schemas/keybindings.schema.json +393 -0
  214. package/schemas/models.schema.json +1157 -0
  215. package/schemas/settings.schema.json +765 -0
  216. package/schemas/theme.schema.json +365 -0
  217. package/dist/bundle/chunks/anthropic-messages-KT2ID7DZ.js +0 -6
  218. package/dist/bundle/chunks/chunk-BK6FEHYX.js +0 -20
  219. package/dist/bundle/chunks/chunk-J757S5U3.js +0 -2
  220. package/dist/bundle/chunks/chunk-MXTZIDYW.js +0 -15
  221. package/dist/bundle/chunks/chunk-OTL6MGLJ.js +0 -134
  222. package/dist/bundle/chunks/chunk-W5MPVSHA.js +0 -82
  223. package/dist/bundle/chunks/easter-egg-3d-TQFQS342.js +0 -2
  224. package/dist/bundle/chunks/execute-7IRB5TUX.js +0 -490
  225. package/dist/bundle/chunks/openai-codex-responses-ZSLJZYOE.js +0 -10
  226. package/dist/bundle/chunks/runtime-ROGZ2EXI.js +0 -2
  227. package/dist/bundle/chunks/virtual-modules-4Y4G76EB.js +0 -2
  228. package/dist/modes/interactive/theme/theme-json.d.ts +0 -85
  229. package/dist/modes/interactive/theme/theme-json.d.ts.map +0 -1
  230. package/dist/modes/interactive/theme/theme-json.js +0 -132
  231. package/dist/modes/interactive/theme/theme-json.js.map +0 -1
  232. package/dist/modes/interactive/theme/theme-schema.json +0 -361
  233. package/examples/plugins/pi-example-plugin/README.md +0 -38
  234. package/examples/plugins/pi-example-plugin/package.json +0 -10
  235. package/examples/plugins/pi-example-plugin/src/contract.ts +0 -13
  236. package/examples/plugins/pi-example-plugin/src/session.ts +0 -24
  237. package/examples/plugins/pi-example-plugin/src/tui.ts +0 -31
@@ -0,0 +1,765 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://pi.dev/schemas/settings.schema.json",
4
+ "$comment": "This file is generated from TypeScript source. Do not edit it manually; run npm run generate:schemas.",
5
+ "type": "object",
6
+ "properties": {
7
+ "$schema": {
8
+ "type": "string",
9
+ "description": "JSON Schema reference."
10
+ },
11
+ "lastChangelogVersion": {
12
+ "type": "string"
13
+ },
14
+ "defaultProvider": {
15
+ "type": "string"
16
+ },
17
+ "defaultModel": {
18
+ "type": "string"
19
+ },
20
+ "defaultThinkingLevel": {
21
+ "$ref": "#/$defs/ModelThinkingLevel"
22
+ },
23
+ "modelThinkingLevels": {
24
+ "type": "object",
25
+ "patternProperties": {
26
+ "^.*$": {
27
+ "$ref": "#/$defs/ModelThinkingLevel"
28
+ }
29
+ },
30
+ "description": "Per-model default thinking level overrides keyed by \"provider/modelId\"."
31
+ },
32
+ "transport": {
33
+ "anyOf": [
34
+ {
35
+ "type": "string",
36
+ "const": "auto"
37
+ },
38
+ {
39
+ "type": "string",
40
+ "const": "sse"
41
+ },
42
+ {
43
+ "type": "string",
44
+ "const": "websocket"
45
+ },
46
+ {
47
+ "type": "string",
48
+ "const": "websocket-cached"
49
+ }
50
+ ],
51
+ "default": "auto"
52
+ },
53
+ "steeringMode": {
54
+ "anyOf": [
55
+ {
56
+ "type": "string",
57
+ "const": "all"
58
+ },
59
+ {
60
+ "type": "string",
61
+ "const": "one-at-a-time"
62
+ }
63
+ ],
64
+ "default": "one-at-a-time"
65
+ },
66
+ "followUpMode": {
67
+ "anyOf": [
68
+ {
69
+ "type": "string",
70
+ "const": "all"
71
+ },
72
+ {
73
+ "type": "string",
74
+ "const": "one-at-a-time"
75
+ }
76
+ ],
77
+ "default": "one-at-a-time"
78
+ },
79
+ "theme": {
80
+ "type": "string"
81
+ },
82
+ "compaction": {
83
+ "type": "object",
84
+ "properties": {
85
+ "enabled": {
86
+ "type": "boolean",
87
+ "default": true
88
+ },
89
+ "reserveTokens": {
90
+ "type": "integer",
91
+ "minimum": 0,
92
+ "maximum": 9007199254740991,
93
+ "default": 16384
94
+ },
95
+ "keepRecentTokens": {
96
+ "type": "integer",
97
+ "minimum": 0,
98
+ "maximum": 9007199254740991,
99
+ "default": 20000
100
+ },
101
+ "modelOverrides": {
102
+ "type": "object",
103
+ "patternProperties": {
104
+ "^.*$": {
105
+ "type": "object",
106
+ "properties": {
107
+ "reserveTokens": {
108
+ "type": "integer",
109
+ "minimum": 0,
110
+ "maximum": 9007199254740991
111
+ },
112
+ "keepRecentTokens": {
113
+ "type": "integer",
114
+ "minimum": 0,
115
+ "maximum": 9007199254740991
116
+ }
117
+ }
118
+ }
119
+ },
120
+ "description": "Per-model overrides keyed by exact \"provider/modelId\" strings."
121
+ }
122
+ }
123
+ },
124
+ "branchSummary": {
125
+ "type": "object",
126
+ "properties": {
127
+ "reserveTokens": {
128
+ "type": "number",
129
+ "description": "Tokens reserved for the prompt and LLM response.",
130
+ "default": 16384
131
+ },
132
+ "skipPrompt": {
133
+ "type": "boolean",
134
+ "description": "When true, skips the \"Summarize branch?\" prompt and defaults to no summary.",
135
+ "default": false
136
+ }
137
+ }
138
+ },
139
+ "retry": {
140
+ "type": "object",
141
+ "properties": {
142
+ "enabled": {
143
+ "type": "boolean",
144
+ "default": true
145
+ },
146
+ "maxRetries": {
147
+ "type": "number",
148
+ "default": 3
149
+ },
150
+ "baseDelayMs": {
151
+ "type": "number",
152
+ "description": "Exponential backoff base delay in milliseconds: 2s, 4s, 8s.",
153
+ "default": 2000
154
+ },
155
+ "maxAgentDelayMs": {
156
+ "type": "number",
157
+ "default": 60000
158
+ },
159
+ "provider": {
160
+ "type": "object",
161
+ "properties": {
162
+ "timeoutMs": {
163
+ "type": "number",
164
+ "description": "SDK or provider request timeout in milliseconds."
165
+ },
166
+ "maxRetries": {
167
+ "type": "number",
168
+ "description": "SDK or provider retry attempts."
169
+ },
170
+ "maxRetryDelayMs": {
171
+ "type": "number",
172
+ "description": "Maximum server-requested delay before failing.",
173
+ "default": 60000
174
+ }
175
+ }
176
+ },
177
+ "maxDelayMs": {
178
+ "type": "number",
179
+ "description": "Legacy retry delay setting. Use provider.maxRetryDelayMs instead.",
180
+ "deprecated": true
181
+ }
182
+ }
183
+ },
184
+ "hideThinkingBlock": {
185
+ "type": "boolean",
186
+ "default": false
187
+ },
188
+ "showCacheMissNotices": {
189
+ "type": "boolean",
190
+ "description": "Show cache cost and provider recovery notices.",
191
+ "default": false
192
+ },
193
+ "externalEditor": {
194
+ "type": "string",
195
+ "description": "Command for Ctrl+G external editor; takes precedence over VISUAL and EDITOR."
196
+ },
197
+ "shellPath": {
198
+ "type": "string",
199
+ "description": "Custom shell path, for example for Cygwin on Windows, with support for leading ~ expansion."
200
+ },
201
+ "quietStartup": {
202
+ "anyOf": [
203
+ {
204
+ "type": "boolean"
205
+ },
206
+ {
207
+ "type": "string",
208
+ "const": "header"
209
+ }
210
+ ],
211
+ "description": "When true, hide all startup output. When \"header\", keep only the startup header.",
212
+ "default": false
213
+ },
214
+ "defaultProjectTrust": {
215
+ "anyOf": [
216
+ {
217
+ "type": "string",
218
+ "const": "ask"
219
+ },
220
+ {
221
+ "type": "string",
222
+ "const": "always"
223
+ },
224
+ {
225
+ "type": "string",
226
+ "const": "never"
227
+ }
228
+ ],
229
+ "description": "Global setting only.",
230
+ "default": "ask"
231
+ },
232
+ "shellCommandPrefix": {
233
+ "type": "string",
234
+ "description": "Prefix prepended to every bash command, for example to enable shell aliases."
235
+ },
236
+ "npmCommand": {
237
+ "type": "array",
238
+ "items": {
239
+ "type": "string"
240
+ },
241
+ "description": "Command used for npm package lookup and installation, in argv form such as [\"mise\", \"exec\", \"node@20\", \"--\", \"npm\"]."
242
+ },
243
+ "collapseChangelog": {
244
+ "type": "boolean",
245
+ "description": "Show the condensed changelog after update; use /changelog for the full changelog.",
246
+ "default": false
247
+ },
248
+ "enableInstallTelemetry": {
249
+ "type": "boolean",
250
+ "description": "Send an anonymous version and update ping after changelog-detected updates.",
251
+ "default": true
252
+ },
253
+ "enableAnalytics": {
254
+ "type": "boolean",
255
+ "description": "Opt in to analytics data sharing.",
256
+ "default": false
257
+ },
258
+ "trackingId": {
259
+ "type": "string",
260
+ "description": "Analytics tracking identifier, generated when analytics is enabled."
261
+ },
262
+ "packages": {
263
+ "type": "array",
264
+ "items": {
265
+ "anyOf": [
266
+ {
267
+ "type": "string",
268
+ "description": "Load all resources from the package."
269
+ },
270
+ {
271
+ "type": "object",
272
+ "required": [
273
+ "source"
274
+ ],
275
+ "properties": {
276
+ "source": {
277
+ "type": "string"
278
+ },
279
+ "autoload": {
280
+ "type": "boolean",
281
+ "description": "When false, start empty and only apply explicit resource patterns."
282
+ },
283
+ "extensions": {
284
+ "type": "array",
285
+ "items": {
286
+ "type": "string"
287
+ }
288
+ },
289
+ "skills": {
290
+ "type": "array",
291
+ "items": {
292
+ "type": "string"
293
+ }
294
+ },
295
+ "prompts": {
296
+ "type": "array",
297
+ "items": {
298
+ "type": "string"
299
+ }
300
+ },
301
+ "themes": {
302
+ "type": "array",
303
+ "items": {
304
+ "type": "string"
305
+ }
306
+ }
307
+ }
308
+ }
309
+ ],
310
+ "description": "Package source for npm or git packages. Use the string form to load all resources or the object form to filter resources."
311
+ },
312
+ "description": "npm or git package sources, as strings or objects with resource filtering."
313
+ },
314
+ "extensions": {
315
+ "type": "array",
316
+ "items": {
317
+ "type": "string"
318
+ },
319
+ "description": "Local extension file paths or directories."
320
+ },
321
+ "deviceId": {
322
+ "type": "string",
323
+ "description": "Stable installation UUID, generated when authentication first needs it. Global only."
324
+ },
325
+ "skills": {
326
+ "anyOf": [
327
+ {
328
+ "type": "array",
329
+ "items": {
330
+ "type": "string"
331
+ }
332
+ },
333
+ {
334
+ "type": "object",
335
+ "properties": {
336
+ "enableSkillCommands": {
337
+ "type": "boolean"
338
+ },
339
+ "customDirectories": {
340
+ "type": "array",
341
+ "items": {
342
+ "type": "string"
343
+ }
344
+ }
345
+ },
346
+ "deprecated": true
347
+ }
348
+ ],
349
+ "description": "Local skill file paths or directories."
350
+ },
351
+ "prompts": {
352
+ "type": "array",
353
+ "items": {
354
+ "type": "string"
355
+ },
356
+ "description": "Local prompt template file paths or directories."
357
+ },
358
+ "themes": {
359
+ "type": "array",
360
+ "items": {
361
+ "type": "string"
362
+ },
363
+ "description": "Local theme file paths or directories."
364
+ },
365
+ "enableSkillCommands": {
366
+ "type": "boolean",
367
+ "description": "Register skills as /skill:name commands.",
368
+ "default": true
369
+ },
370
+ "terminal": {
371
+ "type": "object",
372
+ "properties": {
373
+ "showImages": {
374
+ "type": "boolean",
375
+ "description": "Show images when the terminal supports them.",
376
+ "default": true
377
+ },
378
+ "imageWidthCells": {
379
+ "type": "number",
380
+ "description": "Preferred inline image width in terminal cells.",
381
+ "default": 60
382
+ },
383
+ "clearOnShrink": {
384
+ "type": "boolean",
385
+ "description": "Clear empty rows when content shrinks.",
386
+ "default": false
387
+ },
388
+ "showTerminalProgress": {
389
+ "type": "boolean",
390
+ "description": "Show OSC 9;4 terminal progress indicators.",
391
+ "default": false
392
+ },
393
+ "hyperlinks": {
394
+ "anyOf": [
395
+ {
396
+ "type": "boolean"
397
+ },
398
+ {
399
+ "type": "string",
400
+ "const": "auto"
401
+ }
402
+ ]
403
+ },
404
+ "images": {
405
+ "anyOf": [
406
+ {
407
+ "type": "string",
408
+ "const": "kitty"
409
+ },
410
+ {
411
+ "type": "string",
412
+ "const": "iterm2"
413
+ },
414
+ {
415
+ "type": "string",
416
+ "const": "auto"
417
+ },
418
+ {
419
+ "type": "boolean",
420
+ "const": false
421
+ }
422
+ ]
423
+ },
424
+ "trueColor": {
425
+ "anyOf": [
426
+ {
427
+ "type": "boolean"
428
+ },
429
+ {
430
+ "type": "string",
431
+ "const": "auto"
432
+ }
433
+ ]
434
+ }
435
+ }
436
+ },
437
+ "images": {
438
+ "type": "object",
439
+ "properties": {
440
+ "autoResize": {
441
+ "type": "boolean",
442
+ "description": "Resize images to 2000x2000 maximum for better model compatibility.",
443
+ "default": true
444
+ },
445
+ "blockImages": {
446
+ "type": "boolean",
447
+ "description": "When true, prevents all images from being sent to LLM providers.",
448
+ "default": false
449
+ }
450
+ }
451
+ },
452
+ "enabledModels": {
453
+ "type": "array",
454
+ "items": {
455
+ "type": "string"
456
+ },
457
+ "description": "Model patterns for cycling, in the same format as the --models CLI flag."
458
+ },
459
+ "defaultTools": {
460
+ "type": "array",
461
+ "items": {
462
+ "type": "string"
463
+ },
464
+ "description": "Initial tool selection. Plain names replace the inherited selection; +name and -name entries add or remove tools."
465
+ },
466
+ "doubleEscapeAction": {
467
+ "anyOf": [
468
+ {
469
+ "type": "string",
470
+ "const": "fork"
471
+ },
472
+ {
473
+ "type": "string",
474
+ "const": "tree"
475
+ },
476
+ {
477
+ "type": "string",
478
+ "const": "none"
479
+ }
480
+ ],
481
+ "description": "Action for double-escape with an empty editor.",
482
+ "default": "tree"
483
+ },
484
+ "treeFilterMode": {
485
+ "anyOf": [
486
+ {
487
+ "type": "string",
488
+ "const": "default"
489
+ },
490
+ {
491
+ "type": "string",
492
+ "const": "no-tools"
493
+ },
494
+ {
495
+ "type": "string",
496
+ "const": "user-only"
497
+ },
498
+ {
499
+ "type": "string",
500
+ "const": "labeled-only"
501
+ },
502
+ {
503
+ "type": "string",
504
+ "const": "all"
505
+ }
506
+ ],
507
+ "description": "Default filter when opening /tree.",
508
+ "default": "default"
509
+ },
510
+ "thinkingBudgets": {
511
+ "type": "object",
512
+ "properties": {
513
+ "minimal": {
514
+ "type": "number"
515
+ },
516
+ "low": {
517
+ "type": "number"
518
+ },
519
+ "medium": {
520
+ "type": "number"
521
+ },
522
+ "high": {
523
+ "type": "number"
524
+ }
525
+ },
526
+ "description": "Custom token budgets for thinking levels."
527
+ },
528
+ "editorPaddingX": {
529
+ "type": "number",
530
+ "description": "Horizontal padding for the input editor.",
531
+ "default": 0
532
+ },
533
+ "outputPad": {
534
+ "anyOf": [
535
+ {
536
+ "type": "number",
537
+ "const": 0
538
+ },
539
+ {
540
+ "type": "number",
541
+ "const": 1
542
+ }
543
+ ],
544
+ "description": "Horizontal padding for transcript content.",
545
+ "default": 1
546
+ },
547
+ "autocompleteMaxVisible": {
548
+ "type": "number",
549
+ "description": "Maximum visible items in the autocomplete dropdown.",
550
+ "default": 5
551
+ },
552
+ "showHardwareCursor": {
553
+ "type": "boolean",
554
+ "description": "Show the terminal cursor while still positioning it for IME."
555
+ },
556
+ "markdown": {
557
+ "type": "object",
558
+ "properties": {
559
+ "codeBlockIndent": {
560
+ "type": "string",
561
+ "default": " "
562
+ },
563
+ "mermaid": {
564
+ "anyOf": [
565
+ {
566
+ "type": "string",
567
+ "const": "off"
568
+ },
569
+ {
570
+ "type": "string",
571
+ "const": "final"
572
+ },
573
+ {
574
+ "type": "string",
575
+ "const": "streaming"
576
+ }
577
+ ],
578
+ "default": "streaming"
579
+ }
580
+ }
581
+ },
582
+ "warnings": {
583
+ "type": "object",
584
+ "properties": {
585
+ "anthropicExtraUsage": {
586
+ "type": "boolean",
587
+ "default": true
588
+ }
589
+ }
590
+ },
591
+ "codemode": {
592
+ "type": "object",
593
+ "properties": {
594
+ "mode": {
595
+ "anyOf": [
596
+ {
597
+ "type": "string",
598
+ "const": "on"
599
+ },
600
+ {
601
+ "type": "string",
602
+ "const": "only"
603
+ }
604
+ ],
605
+ "description": "How codemode presents tools. \"on\" keeps direct tools declared and annotates tools callable from scripts; codemode lists only tools without direct exposure. \"only\" lists every script-callable tool in codemode and does not declare active direct tools.",
606
+ "default": "on"
607
+ },
608
+ "inlineBudget": {
609
+ "type": "number",
610
+ "minimum": 0,
611
+ "description": "Estimated tokens available for inline codemode tool declarations.",
612
+ "default": 3000
613
+ }
614
+ }
615
+ },
616
+ "sessionDir": {
617
+ "type": "string",
618
+ "description": "Custom session storage directory, in the same format as the --session-dir CLI flag."
619
+ },
620
+ "httpProxy": {
621
+ "type": "string",
622
+ "description": "Proxy URL applied as HTTP_PROXY and HTTPS_PROXY for Pi-managed HTTP clients."
623
+ },
624
+ "httpIdleTimeoutMs": {
625
+ "anyOf": [
626
+ {
627
+ "type": "number",
628
+ "minimum": 0
629
+ },
630
+ {
631
+ "type": "string",
632
+ "const": "disabled"
633
+ }
634
+ ],
635
+ "description": "HTTP header or body idle timeout in milliseconds; 0 or \"disabled\" disables it."
636
+ },
637
+ "cacheWarming": {
638
+ "anyOf": [
639
+ {
640
+ "type": "string",
641
+ "const": "off"
642
+ },
643
+ {
644
+ "type": "string",
645
+ "const": "streaming"
646
+ },
647
+ {
648
+ "type": "string",
649
+ "const": "idle"
650
+ }
651
+ ],
652
+ "description": "Cache-warming profile. \"idle\" also warms between agent runs. Global only because each refresh costs money.",
653
+ "default": "streaming"
654
+ },
655
+ "websocketConnectTimeoutMs": {
656
+ "anyOf": [
657
+ {
658
+ "type": "number",
659
+ "minimum": 0
660
+ },
661
+ {
662
+ "type": "string",
663
+ "const": "disabled"
664
+ }
665
+ ],
666
+ "description": "WebSocket connect or open handshake timeout in milliseconds; 0 or \"disabled\" disables it."
667
+ },
668
+ "tuiMode": {
669
+ "anyOf": [
670
+ {
671
+ "type": "string",
672
+ "const": "regular"
673
+ },
674
+ {
675
+ "type": "string",
676
+ "const": "fullscreen"
677
+ }
678
+ ],
679
+ "default": "fullscreen"
680
+ },
681
+ "fullscreenExitOutput": {
682
+ "anyOf": [
683
+ {
684
+ "type": "string",
685
+ "const": "transcript"
686
+ },
687
+ {
688
+ "type": "string",
689
+ "const": "resume-hint"
690
+ }
691
+ ],
692
+ "description": "No effect in regular TUI mode.",
693
+ "default": "transcript"
694
+ },
695
+ "fullscreenScrollbar": {
696
+ "anyOf": [
697
+ {
698
+ "type": "string",
699
+ "const": "auto"
700
+ },
701
+ {
702
+ "type": "string",
703
+ "const": "always"
704
+ },
705
+ {
706
+ "type": "string",
707
+ "const": "hidden"
708
+ }
709
+ ],
710
+ "description": "No effect in regular TUI mode.",
711
+ "default": "auto"
712
+ },
713
+ "fullscreenCopyOnSelect": {
714
+ "type": "boolean",
715
+ "description": "No effect in regular TUI mode.",
716
+ "default": true
717
+ },
718
+ "fullscreenWheelScrollLines": {
719
+ "anyOf": [
720
+ {
721
+ "type": "number"
722
+ },
723
+ {
724
+ "type": "string",
725
+ "const": "auto"
726
+ }
727
+ ],
728
+ "description": "Lines scrolled per wheel event in fullscreen mode; numeric values are clamped from 1 to 100.",
729
+ "default": "auto"
730
+ },
731
+ "queueMode": {
732
+ "anyOf": [
733
+ {
734
+ "type": "string",
735
+ "const": "all"
736
+ },
737
+ {
738
+ "type": "string",
739
+ "const": "one-at-a-time"
740
+ }
741
+ ],
742
+ "description": "Legacy setting migrated to steeringMode.",
743
+ "deprecated": true
744
+ },
745
+ "websockets": {
746
+ "type": "boolean",
747
+ "description": "Legacy setting migrated to transport.",
748
+ "deprecated": true
749
+ }
750
+ },
751
+ "additionalProperties": true,
752
+ "$defs": {
753
+ "ModelThinkingLevel": {
754
+ "enum": [
755
+ "off",
756
+ "minimal",
757
+ "low",
758
+ "medium",
759
+ "high",
760
+ "xhigh",
761
+ "max"
762
+ ]
763
+ }
764
+ }
765
+ }