@marcopeg/hal 1.0.18 → 1.0.22

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 (163) hide show
  1. package/README.md +90 -743
  2. package/dist/agent/index.d.ts +3 -3
  3. package/dist/agent/index.d.ts.map +1 -1
  4. package/dist/agent/index.js +5 -5
  5. package/dist/agent/index.js.map +1 -1
  6. package/dist/bot/commands/git/callback.d.ts +8 -0
  7. package/dist/bot/commands/git/callback.d.ts.map +1 -0
  8. package/dist/bot/commands/git/callback.js +72 -0
  9. package/dist/bot/commands/git/callback.js.map +1 -0
  10. package/dist/bot/commands/git/clean.d.ts +4 -0
  11. package/dist/bot/commands/git/clean.d.ts.map +1 -0
  12. package/dist/bot/commands/git/clean.js +50 -0
  13. package/dist/bot/commands/git/clean.js.map +1 -0
  14. package/dist/bot/commands/git/commit.d.ts +4 -0
  15. package/dist/bot/commands/git/commit.d.ts.map +1 -0
  16. package/dist/bot/commands/git/commit.js +72 -0
  17. package/dist/bot/commands/git/commit.js.map +1 -0
  18. package/dist/bot/commands/git/exec.d.ts +6 -0
  19. package/dist/bot/commands/git/exec.d.ts.map +1 -0
  20. package/dist/bot/commands/git/exec.js +16 -0
  21. package/dist/bot/commands/git/exec.js.map +1 -0
  22. package/dist/bot/commands/git/index.d.ts +6 -0
  23. package/dist/bot/commands/git/index.d.ts.map +1 -0
  24. package/dist/bot/commands/git/index.js +6 -0
  25. package/dist/bot/commands/git/index.js.map +1 -0
  26. package/dist/bot/commands/git/init.d.ts +4 -0
  27. package/dist/bot/commands/git/init.d.ts.map +1 -0
  28. package/dist/bot/commands/git/init.js +22 -0
  29. package/dist/bot/commands/git/init.js.map +1 -0
  30. package/dist/bot/commands/git/status.d.ts +4 -0
  31. package/dist/bot/commands/git/status.d.ts.map +1 -0
  32. package/dist/bot/commands/git/status.js +18 -0
  33. package/dist/bot/commands/git/status.js.map +1 -0
  34. package/dist/bot/commands/help.js +1 -1
  35. package/dist/bot/commands/help.js.map +1 -1
  36. package/dist/bot/commands/loader.d.ts +14 -6
  37. package/dist/bot/commands/loader.d.ts.map +1 -1
  38. package/dist/bot/commands/loader.js +126 -34
  39. package/dist/bot/commands/loader.js.map +1 -1
  40. package/dist/bot/commands/message.d.ts.map +1 -1
  41. package/dist/bot/commands/message.js +51 -25
  42. package/dist/bot/commands/message.js.map +1 -1
  43. package/dist/bot/commands/model-callback.d.ts +4 -0
  44. package/dist/bot/commands/model-callback.d.ts.map +1 -0
  45. package/dist/bot/commands/model-callback.js +34 -0
  46. package/dist/bot/commands/model-callback.js.map +1 -0
  47. package/dist/bot/commands/model.d.ts +4 -0
  48. package/dist/bot/commands/model.d.ts.map +1 -0
  49. package/dist/bot/commands/model.js +83 -0
  50. package/dist/bot/commands/model.js.map +1 -0
  51. package/dist/bot/commands/reset.d.ts +3 -2
  52. package/dist/bot/commands/reset.d.ts.map +1 -1
  53. package/dist/bot/commands/reset.js +73 -10
  54. package/dist/bot/commands/reset.js.map +1 -1
  55. package/dist/bot/commands/resetPrompt.d.ts +20 -0
  56. package/dist/bot/commands/resetPrompt.d.ts.map +1 -0
  57. package/dist/bot/commands/resetPrompt.js +58 -0
  58. package/dist/bot/commands/resetPrompt.js.map +1 -0
  59. package/dist/bot/commands/session.d.ts +2 -2
  60. package/dist/bot/commands/session.d.ts.map +1 -1
  61. package/dist/bot/commands/session.js +7 -4
  62. package/dist/bot/commands/session.js.map +1 -1
  63. package/dist/bot/commands/start.js +2 -2
  64. package/dist/bot/commands/start.js.map +1 -1
  65. package/dist/bot/commands/watcher.d.ts +2 -1
  66. package/dist/bot/commands/watcher.d.ts.map +1 -1
  67. package/dist/bot/commands/watcher.js +11 -5
  68. package/dist/bot/commands/watcher.js.map +1 -1
  69. package/dist/bot/handlers/text.d.ts.map +1 -1
  70. package/dist/bot/handlers/text.js +11 -6
  71. package/dist/bot/handlers/text.js.map +1 -1
  72. package/dist/bot/middleware/auth.d.ts +0 -3
  73. package/dist/bot/middleware/auth.d.ts.map +1 -1
  74. package/dist/bot/middleware/auth.js +13 -12
  75. package/dist/bot/middleware/auth.js.map +1 -1
  76. package/dist/bot.d.ts.map +1 -1
  77. package/dist/bot.js +43 -11
  78. package/dist/bot.js.map +1 -1
  79. package/dist/cli.js +52 -29
  80. package/dist/cli.js.map +1 -1
  81. package/dist/config-watcher.d.ts +10 -0
  82. package/dist/config-watcher.d.ts.map +1 -0
  83. package/dist/config-watcher.js +55 -0
  84. package/dist/config-watcher.js.map +1 -0
  85. package/dist/config-writer.d.ts +8 -0
  86. package/dist/config-writer.d.ts.map +1 -0
  87. package/dist/config-writer.js +57 -0
  88. package/dist/config-writer.js.map +1 -0
  89. package/dist/config.d.ts +338 -53
  90. package/dist/config.d.ts.map +1 -1
  91. package/dist/config.js +337 -92
  92. package/dist/config.js.map +1 -1
  93. package/dist/context/resolver.d.ts +4 -0
  94. package/dist/context/resolver.d.ts.map +1 -1
  95. package/dist/context/resolver.js +8 -2
  96. package/dist/context/resolver.js.map +1 -1
  97. package/dist/default-models.d.ts +3 -0
  98. package/dist/default-models.d.ts.map +1 -0
  99. package/dist/default-models.js +16 -0
  100. package/dist/default-models.js.map +1 -0
  101. package/dist/engine/adapters/antigravity.d.ts +13 -0
  102. package/dist/engine/adapters/antigravity.d.ts.map +1 -0
  103. package/dist/engine/adapters/antigravity.js +230 -0
  104. package/dist/engine/adapters/antigravity.js.map +1 -0
  105. package/dist/engine/adapters/claude.js +2 -2
  106. package/dist/engine/adapters/claude.js.map +1 -1
  107. package/dist/engine/adapters/codex.d.ts.map +1 -1
  108. package/dist/engine/adapters/codex.js +27 -8
  109. package/dist/engine/adapters/codex.js.map +1 -1
  110. package/dist/engine/adapters/copilot.d.ts.map +1 -1
  111. package/dist/engine/adapters/copilot.js +6 -3
  112. package/dist/engine/adapters/copilot.js.map +1 -1
  113. package/dist/engine/adapters/cursor.d.ts +3 -0
  114. package/dist/engine/adapters/cursor.d.ts.map +1 -0
  115. package/dist/engine/adapters/cursor.js +106 -0
  116. package/dist/engine/adapters/cursor.js.map +1 -0
  117. package/dist/engine/adapters/opencode.d.ts +2 -2
  118. package/dist/engine/adapters/opencode.d.ts.map +1 -1
  119. package/dist/engine/adapters/opencode.js +33 -13
  120. package/dist/engine/adapters/opencode.js.map +1 -1
  121. package/dist/engine/detect.d.ts +26 -0
  122. package/dist/engine/detect.d.ts.map +1 -0
  123. package/dist/engine/detect.js +129 -0
  124. package/dist/engine/detect.js.map +1 -0
  125. package/dist/engine/model-cache.d.ts +25 -0
  126. package/dist/engine/model-cache.d.ts.map +1 -0
  127. package/dist/engine/model-cache.js +162 -0
  128. package/dist/engine/model-cache.js.map +1 -0
  129. package/dist/engine/model-validation.d.ts +9 -0
  130. package/dist/engine/model-validation.d.ts.map +1 -0
  131. package/dist/engine/model-validation.js +21 -0
  132. package/dist/engine/model-validation.js.map +1 -0
  133. package/dist/engine/models-data.generated.d.ts +4 -0
  134. package/dist/engine/models-data.generated.d.ts.map +1 -0
  135. package/dist/engine/models-data.generated.js +196 -0
  136. package/dist/engine/models-data.generated.js.map +1 -0
  137. package/dist/engine/models-fetch.d.ts +5 -0
  138. package/dist/engine/models-fetch.d.ts.map +1 -0
  139. package/dist/engine/models-fetch.js +54 -0
  140. package/dist/engine/models-fetch.js.map +1 -0
  141. package/dist/engine/probe-utils.d.ts +6 -0
  142. package/dist/engine/probe-utils.d.ts.map +1 -0
  143. package/dist/engine/probe-utils.js +42 -0
  144. package/dist/engine/probe-utils.js.map +1 -0
  145. package/dist/engine/prompt.d.ts.map +1 -1
  146. package/dist/engine/prompt.js +8 -0
  147. package/dist/engine/prompt.js.map +1 -1
  148. package/dist/engine/registry.d.ts.map +1 -1
  149. package/dist/engine/registry.js +4 -0
  150. package/dist/engine/registry.js.map +1 -1
  151. package/dist/engine/types.d.ts +3 -3
  152. package/dist/engine/types.d.ts.map +1 -1
  153. package/dist/engine/types.js +2 -0
  154. package/dist/engine/types.js.map +1 -1
  155. package/dist/prompts.d.ts +19 -0
  156. package/dist/prompts.d.ts.map +1 -0
  157. package/dist/prompts.js +73 -0
  158. package/dist/prompts.js.map +1 -0
  159. package/dist/setup-wizard.d.ts +4 -0
  160. package/dist/setup-wizard.d.ts.map +1 -0
  161. package/dist/setup-wizard.js +258 -0
  162. package/dist/setup-wizard.js.map +1 -0
  163. package/package.json +6 -2
package/dist/config.d.ts CHANGED
@@ -4,10 +4,13 @@ declare const EngineNameSchema: z.ZodEnum<{
4
4
  copilot: "copilot";
5
5
  codex: "codex";
6
6
  opencode: "opencode";
7
+ cursor: "cursor";
8
+ antigravity: "antigravity";
7
9
  }>;
8
10
  declare const GlobalsFileSchema: z.ZodOptional<z.ZodObject<{
9
11
  access: z.ZodOptional<z.ZodObject<{
10
- allowedUserIds: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
12
+ allowedUserIds: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>>;
13
+ dangerouslyAllowUnrestrictedAccess: z.ZodOptional<z.ZodBoolean>;
11
14
  }, z.core.$strip>>;
12
15
  engine: z.ZodOptional<z.ZodObject<{
13
16
  name: z.ZodOptional<z.ZodEnum<{
@@ -15,11 +18,52 @@ declare const GlobalsFileSchema: z.ZodOptional<z.ZodObject<{
15
18
  copilot: "copilot";
16
19
  codex: "codex";
17
20
  opencode: "opencode";
21
+ cursor: "cursor";
22
+ antigravity: "antigravity";
18
23
  }>>;
19
24
  command: z.ZodOptional<z.ZodString>;
20
25
  model: z.ZodOptional<z.ZodString>;
21
26
  session: z.ZodOptional<z.ZodBoolean>;
22
27
  sessionMsg: z.ZodOptional<z.ZodString>;
28
+ codex: z.ZodOptional<z.ZodOptional<z.ZodObject<{
29
+ networkAccess: z.ZodOptional<z.ZodBoolean>;
30
+ fullDiskAccess: z.ZodOptional<z.ZodBoolean>;
31
+ dangerouslyEnableYolo: z.ZodOptional<z.ZodBoolean>;
32
+ }, z.core.$strip>>>;
33
+ antigravity: z.ZodOptional<z.ZodOptional<z.ZodObject<{
34
+ approvalMode: z.ZodOptional<z.ZodEnum<{
35
+ default: "default";
36
+ auto_edit: "auto_edit";
37
+ yolo: "yolo";
38
+ }>>;
39
+ sandbox: z.ZodOptional<z.ZodBoolean>;
40
+ }, z.core.$strip>>>;
41
+ }, z.core.$strip>>;
42
+ providers: z.ZodOptional<z.ZodObject<{
43
+ claude: z.ZodOptional<z.ZodArray<z.ZodObject<{
44
+ name: z.ZodString;
45
+ description: z.ZodOptional<z.ZodString>;
46
+ }, z.core.$strip>>>;
47
+ copilot: z.ZodOptional<z.ZodArray<z.ZodObject<{
48
+ name: z.ZodString;
49
+ description: z.ZodOptional<z.ZodString>;
50
+ }, z.core.$strip>>>;
51
+ codex: z.ZodOptional<z.ZodArray<z.ZodObject<{
52
+ name: z.ZodString;
53
+ description: z.ZodOptional<z.ZodString>;
54
+ }, z.core.$strip>>>;
55
+ opencode: z.ZodOptional<z.ZodArray<z.ZodObject<{
56
+ name: z.ZodString;
57
+ description: z.ZodOptional<z.ZodString>;
58
+ }, z.core.$strip>>>;
59
+ cursor: z.ZodOptional<z.ZodArray<z.ZodObject<{
60
+ name: z.ZodString;
61
+ description: z.ZodOptional<z.ZodString>;
62
+ }, z.core.$strip>>>;
63
+ antigravity: z.ZodOptional<z.ZodArray<z.ZodObject<{
64
+ name: z.ZodString;
65
+ description: z.ZodOptional<z.ZodString>;
66
+ }, z.core.$strip>>>;
23
67
  }, z.core.$strip>>;
24
68
  logging: z.ZodOptional<z.ZodObject<{
25
69
  level: z.ZodOptional<z.ZodEnum<{
@@ -54,31 +98,45 @@ declare const GlobalsFileSchema: z.ZodOptional<z.ZodObject<{
54
98
  dataDir: z.ZodOptional<z.ZodString>;
55
99
  commands: z.ZodOptional<z.ZodObject<{
56
100
  start: z.ZodOptional<z.ZodObject<{
101
+ enabled: z.ZodOptional<z.ZodBoolean>;
57
102
  session: z.ZodOptional<z.ZodObject<{
58
103
  reset: z.ZodOptional<z.ZodBoolean>;
59
104
  }, z.core.$strip>>;
60
- message: z.ZodObject<{
105
+ message: z.ZodOptional<z.ZodObject<{
61
106
  text: z.ZodOptional<z.ZodString>;
62
107
  from: z.ZodOptional<z.ZodString>;
63
- }, z.core.$strip>;
108
+ }, z.core.$strip>>;
64
109
  }, z.core.$strip>>;
65
110
  help: z.ZodOptional<z.ZodObject<{
66
- message: z.ZodObject<{
111
+ enabled: z.ZodOptional<z.ZodBoolean>;
112
+ message: z.ZodOptional<z.ZodObject<{
67
113
  text: z.ZodOptional<z.ZodString>;
68
114
  from: z.ZodOptional<z.ZodString>;
69
- }, z.core.$strip>;
115
+ }, z.core.$strip>>;
70
116
  }, z.core.$strip>>;
71
117
  reset: z.ZodOptional<z.ZodObject<{
72
- message: z.ZodObject<{
73
- text: z.ZodOptional<z.ZodString>;
74
- from: z.ZodOptional<z.ZodString>;
75
- }, z.core.$strip>;
118
+ enabled: z.ZodOptional<z.ZodBoolean>;
119
+ session: z.ZodOptional<z.ZodObject<{
120
+ reset: z.ZodOptional<z.ZodBoolean>;
121
+ }, z.core.$strip>>;
122
+ message: z.ZodOptional<z.ZodObject<{
123
+ confirm: z.ZodOptional<z.ZodString>;
124
+ done: z.ZodOptional<z.ZodString>;
125
+ }, z.core.$strip>>;
126
+ timeout: z.ZodOptional<z.ZodNumber>;
76
127
  }, z.core.$strip>>;
77
128
  clean: z.ZodOptional<z.ZodObject<{
78
- message: z.ZodObject<{
129
+ enabled: z.ZodOptional<z.ZodBoolean>;
130
+ message: z.ZodOptional<z.ZodObject<{
79
131
  text: z.ZodOptional<z.ZodString>;
80
132
  from: z.ZodOptional<z.ZodString>;
81
- }, z.core.$strip>;
133
+ }, z.core.$strip>>;
134
+ }, z.core.$strip>>;
135
+ git: z.ZodOptional<z.ZodObject<{
136
+ enabled: z.ZodOptional<z.ZodBoolean>;
137
+ }, z.core.$strip>>;
138
+ model: z.ZodOptional<z.ZodObject<{
139
+ enabled: z.ZodOptional<z.ZodBoolean>;
82
140
  }, z.core.$strip>>;
83
141
  }, z.core.$strip>>;
84
142
  }, z.core.$strip>>;
@@ -90,7 +148,8 @@ declare const ProjectFileSchema: z.ZodObject<{
90
148
  botToken: z.ZodString;
91
149
  }, z.core.$strip>;
92
150
  access: z.ZodOptional<z.ZodObject<{
93
- allowedUserIds: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
151
+ allowedUserIds: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>>;
152
+ dangerouslyAllowUnrestrictedAccess: z.ZodOptional<z.ZodBoolean>;
94
153
  }, z.core.$strip>>;
95
154
  engine: z.ZodOptional<z.ZodObject<{
96
155
  name: z.ZodOptional<z.ZodEnum<{
@@ -98,11 +157,52 @@ declare const ProjectFileSchema: z.ZodObject<{
98
157
  copilot: "copilot";
99
158
  codex: "codex";
100
159
  opencode: "opencode";
160
+ cursor: "cursor";
161
+ antigravity: "antigravity";
101
162
  }>>;
102
163
  command: z.ZodOptional<z.ZodString>;
103
164
  model: z.ZodOptional<z.ZodString>;
104
165
  session: z.ZodOptional<z.ZodBoolean>;
105
166
  sessionMsg: z.ZodOptional<z.ZodString>;
167
+ codex: z.ZodOptional<z.ZodOptional<z.ZodObject<{
168
+ networkAccess: z.ZodOptional<z.ZodBoolean>;
169
+ fullDiskAccess: z.ZodOptional<z.ZodBoolean>;
170
+ dangerouslyEnableYolo: z.ZodOptional<z.ZodBoolean>;
171
+ }, z.core.$strip>>>;
172
+ antigravity: z.ZodOptional<z.ZodOptional<z.ZodObject<{
173
+ approvalMode: z.ZodOptional<z.ZodEnum<{
174
+ default: "default";
175
+ auto_edit: "auto_edit";
176
+ yolo: "yolo";
177
+ }>>;
178
+ sandbox: z.ZodOptional<z.ZodBoolean>;
179
+ }, z.core.$strip>>>;
180
+ }, z.core.$strip>>;
181
+ providers: z.ZodOptional<z.ZodObject<{
182
+ claude: z.ZodOptional<z.ZodArray<z.ZodObject<{
183
+ name: z.ZodString;
184
+ description: z.ZodOptional<z.ZodString>;
185
+ }, z.core.$strip>>>;
186
+ copilot: z.ZodOptional<z.ZodArray<z.ZodObject<{
187
+ name: z.ZodString;
188
+ description: z.ZodOptional<z.ZodString>;
189
+ }, z.core.$strip>>>;
190
+ codex: z.ZodOptional<z.ZodArray<z.ZodObject<{
191
+ name: z.ZodString;
192
+ description: z.ZodOptional<z.ZodString>;
193
+ }, z.core.$strip>>>;
194
+ opencode: z.ZodOptional<z.ZodArray<z.ZodObject<{
195
+ name: z.ZodString;
196
+ description: z.ZodOptional<z.ZodString>;
197
+ }, z.core.$strip>>>;
198
+ cursor: z.ZodOptional<z.ZodArray<z.ZodObject<{
199
+ name: z.ZodString;
200
+ description: z.ZodOptional<z.ZodString>;
201
+ }, z.core.$strip>>>;
202
+ antigravity: z.ZodOptional<z.ZodArray<z.ZodObject<{
203
+ name: z.ZodString;
204
+ description: z.ZodOptional<z.ZodString>;
205
+ }, z.core.$strip>>>;
106
206
  }, z.core.$strip>>;
107
207
  logging: z.ZodOptional<z.ZodObject<{
108
208
  level: z.ZodOptional<z.ZodEnum<{
@@ -138,38 +238,53 @@ declare const ProjectFileSchema: z.ZodObject<{
138
238
  context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
139
239
  commands: z.ZodOptional<z.ZodObject<{
140
240
  start: z.ZodOptional<z.ZodObject<{
241
+ enabled: z.ZodOptional<z.ZodBoolean>;
141
242
  session: z.ZodOptional<z.ZodObject<{
142
243
  reset: z.ZodOptional<z.ZodBoolean>;
143
244
  }, z.core.$strip>>;
144
- message: z.ZodObject<{
245
+ message: z.ZodOptional<z.ZodObject<{
145
246
  text: z.ZodOptional<z.ZodString>;
146
247
  from: z.ZodOptional<z.ZodString>;
147
- }, z.core.$strip>;
248
+ }, z.core.$strip>>;
148
249
  }, z.core.$strip>>;
149
250
  help: z.ZodOptional<z.ZodObject<{
150
- message: z.ZodObject<{
251
+ enabled: z.ZodOptional<z.ZodBoolean>;
252
+ message: z.ZodOptional<z.ZodObject<{
151
253
  text: z.ZodOptional<z.ZodString>;
152
254
  from: z.ZodOptional<z.ZodString>;
153
- }, z.core.$strip>;
255
+ }, z.core.$strip>>;
154
256
  }, z.core.$strip>>;
155
257
  reset: z.ZodOptional<z.ZodObject<{
156
- message: z.ZodObject<{
157
- text: z.ZodOptional<z.ZodString>;
158
- from: z.ZodOptional<z.ZodString>;
159
- }, z.core.$strip>;
258
+ enabled: z.ZodOptional<z.ZodBoolean>;
259
+ session: z.ZodOptional<z.ZodObject<{
260
+ reset: z.ZodOptional<z.ZodBoolean>;
261
+ }, z.core.$strip>>;
262
+ message: z.ZodOptional<z.ZodObject<{
263
+ confirm: z.ZodOptional<z.ZodString>;
264
+ done: z.ZodOptional<z.ZodString>;
265
+ }, z.core.$strip>>;
266
+ timeout: z.ZodOptional<z.ZodNumber>;
160
267
  }, z.core.$strip>>;
161
268
  clean: z.ZodOptional<z.ZodObject<{
162
- message: z.ZodObject<{
269
+ enabled: z.ZodOptional<z.ZodBoolean>;
270
+ message: z.ZodOptional<z.ZodObject<{
163
271
  text: z.ZodOptional<z.ZodString>;
164
272
  from: z.ZodOptional<z.ZodString>;
165
- }, z.core.$strip>;
273
+ }, z.core.$strip>>;
274
+ }, z.core.$strip>>;
275
+ git: z.ZodOptional<z.ZodObject<{
276
+ enabled: z.ZodOptional<z.ZodBoolean>;
277
+ }, z.core.$strip>>;
278
+ model: z.ZodOptional<z.ZodObject<{
279
+ enabled: z.ZodOptional<z.ZodBoolean>;
166
280
  }, z.core.$strip>>;
167
281
  }, z.core.$strip>>;
168
282
  }, z.core.$strip>;
169
283
  declare const MultiConfigFileSchema: z.ZodObject<{
170
284
  globals: z.ZodOptional<z.ZodObject<{
171
285
  access: z.ZodOptional<z.ZodObject<{
172
- allowedUserIds: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
286
+ allowedUserIds: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>>;
287
+ dangerouslyAllowUnrestrictedAccess: z.ZodOptional<z.ZodBoolean>;
173
288
  }, z.core.$strip>>;
174
289
  engine: z.ZodOptional<z.ZodObject<{
175
290
  name: z.ZodOptional<z.ZodEnum<{
@@ -177,11 +292,52 @@ declare const MultiConfigFileSchema: z.ZodObject<{
177
292
  copilot: "copilot";
178
293
  codex: "codex";
179
294
  opencode: "opencode";
295
+ cursor: "cursor";
296
+ antigravity: "antigravity";
180
297
  }>>;
181
298
  command: z.ZodOptional<z.ZodString>;
182
299
  model: z.ZodOptional<z.ZodString>;
183
300
  session: z.ZodOptional<z.ZodBoolean>;
184
301
  sessionMsg: z.ZodOptional<z.ZodString>;
302
+ codex: z.ZodOptional<z.ZodOptional<z.ZodObject<{
303
+ networkAccess: z.ZodOptional<z.ZodBoolean>;
304
+ fullDiskAccess: z.ZodOptional<z.ZodBoolean>;
305
+ dangerouslyEnableYolo: z.ZodOptional<z.ZodBoolean>;
306
+ }, z.core.$strip>>>;
307
+ antigravity: z.ZodOptional<z.ZodOptional<z.ZodObject<{
308
+ approvalMode: z.ZodOptional<z.ZodEnum<{
309
+ default: "default";
310
+ auto_edit: "auto_edit";
311
+ yolo: "yolo";
312
+ }>>;
313
+ sandbox: z.ZodOptional<z.ZodBoolean>;
314
+ }, z.core.$strip>>>;
315
+ }, z.core.$strip>>;
316
+ providers: z.ZodOptional<z.ZodObject<{
317
+ claude: z.ZodOptional<z.ZodArray<z.ZodObject<{
318
+ name: z.ZodString;
319
+ description: z.ZodOptional<z.ZodString>;
320
+ }, z.core.$strip>>>;
321
+ copilot: z.ZodOptional<z.ZodArray<z.ZodObject<{
322
+ name: z.ZodString;
323
+ description: z.ZodOptional<z.ZodString>;
324
+ }, z.core.$strip>>>;
325
+ codex: z.ZodOptional<z.ZodArray<z.ZodObject<{
326
+ name: z.ZodString;
327
+ description: z.ZodOptional<z.ZodString>;
328
+ }, z.core.$strip>>>;
329
+ opencode: z.ZodOptional<z.ZodArray<z.ZodObject<{
330
+ name: z.ZodString;
331
+ description: z.ZodOptional<z.ZodString>;
332
+ }, z.core.$strip>>>;
333
+ cursor: z.ZodOptional<z.ZodArray<z.ZodObject<{
334
+ name: z.ZodString;
335
+ description: z.ZodOptional<z.ZodString>;
336
+ }, z.core.$strip>>>;
337
+ antigravity: z.ZodOptional<z.ZodArray<z.ZodObject<{
338
+ name: z.ZodString;
339
+ description: z.ZodOptional<z.ZodString>;
340
+ }, z.core.$strip>>>;
185
341
  }, z.core.$strip>>;
186
342
  logging: z.ZodOptional<z.ZodObject<{
187
343
  level: z.ZodOptional<z.ZodEnum<{
@@ -216,31 +372,45 @@ declare const MultiConfigFileSchema: z.ZodObject<{
216
372
  dataDir: z.ZodOptional<z.ZodString>;
217
373
  commands: z.ZodOptional<z.ZodObject<{
218
374
  start: z.ZodOptional<z.ZodObject<{
375
+ enabled: z.ZodOptional<z.ZodBoolean>;
219
376
  session: z.ZodOptional<z.ZodObject<{
220
377
  reset: z.ZodOptional<z.ZodBoolean>;
221
378
  }, z.core.$strip>>;
222
- message: z.ZodObject<{
379
+ message: z.ZodOptional<z.ZodObject<{
223
380
  text: z.ZodOptional<z.ZodString>;
224
381
  from: z.ZodOptional<z.ZodString>;
225
- }, z.core.$strip>;
382
+ }, z.core.$strip>>;
226
383
  }, z.core.$strip>>;
227
384
  help: z.ZodOptional<z.ZodObject<{
228
- message: z.ZodObject<{
385
+ enabled: z.ZodOptional<z.ZodBoolean>;
386
+ message: z.ZodOptional<z.ZodObject<{
229
387
  text: z.ZodOptional<z.ZodString>;
230
388
  from: z.ZodOptional<z.ZodString>;
231
- }, z.core.$strip>;
389
+ }, z.core.$strip>>;
232
390
  }, z.core.$strip>>;
233
391
  reset: z.ZodOptional<z.ZodObject<{
234
- message: z.ZodObject<{
235
- text: z.ZodOptional<z.ZodString>;
236
- from: z.ZodOptional<z.ZodString>;
237
- }, z.core.$strip>;
392
+ enabled: z.ZodOptional<z.ZodBoolean>;
393
+ session: z.ZodOptional<z.ZodObject<{
394
+ reset: z.ZodOptional<z.ZodBoolean>;
395
+ }, z.core.$strip>>;
396
+ message: z.ZodOptional<z.ZodObject<{
397
+ confirm: z.ZodOptional<z.ZodString>;
398
+ done: z.ZodOptional<z.ZodString>;
399
+ }, z.core.$strip>>;
400
+ timeout: z.ZodOptional<z.ZodNumber>;
238
401
  }, z.core.$strip>>;
239
402
  clean: z.ZodOptional<z.ZodObject<{
240
- message: z.ZodObject<{
403
+ enabled: z.ZodOptional<z.ZodBoolean>;
404
+ message: z.ZodOptional<z.ZodObject<{
241
405
  text: z.ZodOptional<z.ZodString>;
242
406
  from: z.ZodOptional<z.ZodString>;
243
- }, z.core.$strip>;
407
+ }, z.core.$strip>>;
408
+ }, z.core.$strip>>;
409
+ git: z.ZodOptional<z.ZodObject<{
410
+ enabled: z.ZodOptional<z.ZodBoolean>;
411
+ }, z.core.$strip>>;
412
+ model: z.ZodOptional<z.ZodObject<{
413
+ enabled: z.ZodOptional<z.ZodBoolean>;
244
414
  }, z.core.$strip>>;
245
415
  }, z.core.$strip>>;
246
416
  }, z.core.$strip>>;
@@ -253,7 +423,8 @@ declare const MultiConfigFileSchema: z.ZodObject<{
253
423
  botToken: z.ZodString;
254
424
  }, z.core.$strip>;
255
425
  access: z.ZodOptional<z.ZodObject<{
256
- allowedUserIds: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
426
+ allowedUserIds: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>>;
427
+ dangerouslyAllowUnrestrictedAccess: z.ZodOptional<z.ZodBoolean>;
257
428
  }, z.core.$strip>>;
258
429
  engine: z.ZodOptional<z.ZodObject<{
259
430
  name: z.ZodOptional<z.ZodEnum<{
@@ -261,11 +432,52 @@ declare const MultiConfigFileSchema: z.ZodObject<{
261
432
  copilot: "copilot";
262
433
  codex: "codex";
263
434
  opencode: "opencode";
435
+ cursor: "cursor";
436
+ antigravity: "antigravity";
264
437
  }>>;
265
438
  command: z.ZodOptional<z.ZodString>;
266
439
  model: z.ZodOptional<z.ZodString>;
267
440
  session: z.ZodOptional<z.ZodBoolean>;
268
441
  sessionMsg: z.ZodOptional<z.ZodString>;
442
+ codex: z.ZodOptional<z.ZodOptional<z.ZodObject<{
443
+ networkAccess: z.ZodOptional<z.ZodBoolean>;
444
+ fullDiskAccess: z.ZodOptional<z.ZodBoolean>;
445
+ dangerouslyEnableYolo: z.ZodOptional<z.ZodBoolean>;
446
+ }, z.core.$strip>>>;
447
+ antigravity: z.ZodOptional<z.ZodOptional<z.ZodObject<{
448
+ approvalMode: z.ZodOptional<z.ZodEnum<{
449
+ default: "default";
450
+ auto_edit: "auto_edit";
451
+ yolo: "yolo";
452
+ }>>;
453
+ sandbox: z.ZodOptional<z.ZodBoolean>;
454
+ }, z.core.$strip>>>;
455
+ }, z.core.$strip>>;
456
+ providers: z.ZodOptional<z.ZodObject<{
457
+ claude: z.ZodOptional<z.ZodArray<z.ZodObject<{
458
+ name: z.ZodString;
459
+ description: z.ZodOptional<z.ZodString>;
460
+ }, z.core.$strip>>>;
461
+ copilot: z.ZodOptional<z.ZodArray<z.ZodObject<{
462
+ name: z.ZodString;
463
+ description: z.ZodOptional<z.ZodString>;
464
+ }, z.core.$strip>>>;
465
+ codex: z.ZodOptional<z.ZodArray<z.ZodObject<{
466
+ name: z.ZodString;
467
+ description: z.ZodOptional<z.ZodString>;
468
+ }, z.core.$strip>>>;
469
+ opencode: z.ZodOptional<z.ZodArray<z.ZodObject<{
470
+ name: z.ZodString;
471
+ description: z.ZodOptional<z.ZodString>;
472
+ }, z.core.$strip>>>;
473
+ cursor: z.ZodOptional<z.ZodArray<z.ZodObject<{
474
+ name: z.ZodString;
475
+ description: z.ZodOptional<z.ZodString>;
476
+ }, z.core.$strip>>>;
477
+ antigravity: z.ZodOptional<z.ZodArray<z.ZodObject<{
478
+ name: z.ZodString;
479
+ description: z.ZodOptional<z.ZodString>;
480
+ }, z.core.$strip>>>;
269
481
  }, z.core.$strip>>;
270
482
  logging: z.ZodOptional<z.ZodObject<{
271
483
  level: z.ZodOptional<z.ZodEnum<{
@@ -301,31 +513,45 @@ declare const MultiConfigFileSchema: z.ZodObject<{
301
513
  context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
302
514
  commands: z.ZodOptional<z.ZodObject<{
303
515
  start: z.ZodOptional<z.ZodObject<{
516
+ enabled: z.ZodOptional<z.ZodBoolean>;
304
517
  session: z.ZodOptional<z.ZodObject<{
305
518
  reset: z.ZodOptional<z.ZodBoolean>;
306
519
  }, z.core.$strip>>;
307
- message: z.ZodObject<{
520
+ message: z.ZodOptional<z.ZodObject<{
308
521
  text: z.ZodOptional<z.ZodString>;
309
522
  from: z.ZodOptional<z.ZodString>;
310
- }, z.core.$strip>;
523
+ }, z.core.$strip>>;
311
524
  }, z.core.$strip>>;
312
525
  help: z.ZodOptional<z.ZodObject<{
313
- message: z.ZodObject<{
526
+ enabled: z.ZodOptional<z.ZodBoolean>;
527
+ message: z.ZodOptional<z.ZodObject<{
314
528
  text: z.ZodOptional<z.ZodString>;
315
529
  from: z.ZodOptional<z.ZodString>;
316
- }, z.core.$strip>;
530
+ }, z.core.$strip>>;
317
531
  }, z.core.$strip>>;
318
532
  reset: z.ZodOptional<z.ZodObject<{
319
- message: z.ZodObject<{
320
- text: z.ZodOptional<z.ZodString>;
321
- from: z.ZodOptional<z.ZodString>;
322
- }, z.core.$strip>;
533
+ enabled: z.ZodOptional<z.ZodBoolean>;
534
+ session: z.ZodOptional<z.ZodObject<{
535
+ reset: z.ZodOptional<z.ZodBoolean>;
536
+ }, z.core.$strip>>;
537
+ message: z.ZodOptional<z.ZodObject<{
538
+ confirm: z.ZodOptional<z.ZodString>;
539
+ done: z.ZodOptional<z.ZodString>;
540
+ }, z.core.$strip>>;
541
+ timeout: z.ZodOptional<z.ZodNumber>;
323
542
  }, z.core.$strip>>;
324
543
  clean: z.ZodOptional<z.ZodObject<{
325
- message: z.ZodObject<{
544
+ enabled: z.ZodOptional<z.ZodBoolean>;
545
+ message: z.ZodOptional<z.ZodObject<{
326
546
  text: z.ZodOptional<z.ZodString>;
327
547
  from: z.ZodOptional<z.ZodString>;
328
- }, z.core.$strip>;
548
+ }, z.core.$strip>>;
549
+ }, z.core.$strip>>;
550
+ git: z.ZodOptional<z.ZodObject<{
551
+ enabled: z.ZodOptional<z.ZodBoolean>;
552
+ }, z.core.$strip>>;
553
+ model: z.ZodOptional<z.ZodObject<{
554
+ enabled: z.ZodOptional<z.ZodBoolean>;
329
555
  }, z.core.$strip>>;
330
556
  }, z.core.$strip>>;
331
557
  }, z.core.$strip>>;
@@ -334,6 +560,10 @@ type ProjectFileEntry = z.infer<typeof ProjectFileSchema>;
334
560
  type GlobalsFile = NonNullable<z.infer<typeof GlobalsFileSchema>>;
335
561
  type MultiConfigFile = z.infer<typeof MultiConfigFileSchema>;
336
562
  export type EngineName = z.infer<typeof EngineNameSchema>;
563
+ export interface ProviderModel {
564
+ name: string;
565
+ description?: string;
566
+ }
337
567
  export interface ResolvedProjectConfig {
338
568
  slug: string;
339
569
  name: string | undefined;
@@ -346,12 +576,22 @@ export interface ResolvedProjectConfig {
346
576
  };
347
577
  access: {
348
578
  allowedUserIds: number[];
579
+ dangerouslyAllowUnrestrictedAccess: boolean;
349
580
  };
350
581
  engine: EngineName;
351
- engineCommand: string;
582
+ engineCommand: string | undefined;
352
583
  engineModel: string | undefined;
353
584
  engineSession: boolean;
354
585
  engineSessionMsg: string;
586
+ codex: {
587
+ networkAccess: boolean;
588
+ fullDiskAccess: boolean;
589
+ dangerouslyEnableYolo: boolean;
590
+ };
591
+ antigravity: {
592
+ approvalMode: "default" | "auto_edit" | "yolo";
593
+ sandbox: boolean;
594
+ };
355
595
  logging: {
356
596
  level: string;
357
597
  flow: boolean;
@@ -366,22 +606,41 @@ export interface ResolvedProjectConfig {
366
606
  showTranscription: boolean;
367
607
  } | undefined;
368
608
  context: Record<string, string> | undefined;
609
+ providerModels: ProviderModel[];
369
610
  commands: {
370
- start?: {
611
+ start: {
612
+ enabled: boolean;
371
613
  sessionReset: boolean;
372
- message: string;
614
+ message?: string;
373
615
  };
374
- help?: {
375
- message: string;
616
+ help: {
617
+ enabled: boolean;
618
+ message?: string;
619
+ };
620
+ reset: {
621
+ enabled: boolean;
622
+ sessionReset: boolean;
623
+ message: {
624
+ confirm?: string;
625
+ done?: string;
626
+ };
627
+ timeout: number;
376
628
  };
377
- reset?: {
378
- message: string;
629
+ clean: {
630
+ enabled: boolean;
631
+ message?: string;
379
632
  };
380
- clean?: {
381
- message: string;
633
+ git: {
634
+ enabled: boolean;
635
+ };
636
+ model: {
637
+ enabled: boolean;
382
638
  };
383
639
  };
384
640
  }
641
+ export declare class ConfigLoadError extends Error {
642
+ constructor(message: string);
643
+ }
385
644
  export interface LoadedConfigResult {
386
645
  config: MultiConfigFile;
387
646
  loadedFiles: string[];
@@ -389,6 +648,32 @@ export interface LoadedConfigResult {
389
648
  export declare function deriveSlug(name: string | undefined, cwd: string): string;
390
649
  export declare function resolveProjectConfig(project: ProjectFileEntry, globals: GlobalsFile, configDir: string, rootContext?: Record<string, string>): ResolvedProjectConfig;
391
650
  export declare function validateProjects(projects: ResolvedProjectConfig[]): void;
651
+ export declare function validateAccessPolicies(projects: ResolvedProjectConfig[]): void;
652
+ export type ConfigFormat = "json" | "jsonc" | "yaml";
653
+ interface ResolvedConfigFile {
654
+ path: string;
655
+ format: ConfigFormat;
656
+ }
657
+ /**
658
+ * Scan configDir for a config file matching the given slot basename
659
+ * (e.g. "hal.config" or "hal.config.local") in any supported format.
660
+ * Returns null when no file is found.
661
+ * Throws ConfigLoadError when multiple formats exist for the same slot.
662
+ */
663
+ export declare function resolveConfigFile(configDir: string, slotBasename: string): ResolvedConfigFile | null;
664
+ /**
665
+ * Parse raw config file content using the appropriate parser for the format.
666
+ */
667
+ export declare function parseConfigContent(content: string, format: ConfigFormat, filePath: string): unknown;
668
+ /**
669
+ * Load multi-project config. On any error, logs and exits the process.
670
+ * Use for initial startup.
671
+ */
392
672
  export declare function loadMultiConfig(configDir: string): LoadedConfigResult;
673
+ /**
674
+ * Load multi-project config without exiting. Throws on error.
675
+ * Use for hot-reload so callers can log and retry on next file change.
676
+ */
677
+ export declare function tryLoadMultiConfig(configDir: string): LoadedConfigResult;
393
678
  export {};
394
679
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}