@cortexkit/aft-opencode 0.55.1 → 0.56.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/dist/bg-notifications.d.ts +56 -10
  2. package/dist/bg-notifications.d.ts.map +1 -1
  3. package/dist/cancellation/effect-abort.d.ts +13 -0
  4. package/dist/cancellation/effect-abort.d.ts.map +1 -0
  5. package/dist/config.d.ts +85 -2
  6. package/dist/config.d.ts.map +1 -1
  7. package/dist/entry/server.js +45488 -0
  8. package/dist/index.d.ts +0 -1
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +20437 -16564
  11. package/dist/lsp-cache.d.ts +5 -0
  12. package/dist/lsp-cache.d.ts.map +1 -1
  13. package/dist/lsp-github-install.d.ts +2 -1
  14. package/dist/lsp-github-install.d.ts.map +1 -1
  15. package/dist/permissions/v2.d.ts +51 -0
  16. package/dist/permissions/v2.d.ts.map +1 -0
  17. package/dist/plugin-version.d.ts +15 -0
  18. package/dist/plugin-version.d.ts.map +1 -0
  19. package/dist/rpc/contract.d.ts +2 -0
  20. package/dist/rpc/contract.d.ts.map +1 -0
  21. package/dist/rpc/register.d.ts +33 -0
  22. package/dist/rpc/register.d.ts.map +1 -0
  23. package/dist/shutdown-hooks.d.ts +13 -4
  24. package/dist/shutdown-hooks.d.ts.map +1 -1
  25. package/dist/subc-tool-schemas.d.ts +1 -1
  26. package/dist/subc-tool-schemas.d.ts.map +1 -1
  27. package/dist/tool-registration.d.ts +46 -1
  28. package/dist/tool-registration.d.ts.map +1 -1
  29. package/dist/tools/_shared.d.ts +2 -0
  30. package/dist/tools/_shared.d.ts.map +1 -1
  31. package/dist/tools/ast.d.ts.map +1 -1
  32. package/dist/tools/bash/executor.d.ts +10 -0
  33. package/dist/tools/bash/executor.d.ts.map +1 -0
  34. package/dist/tools/bash.d.ts +1 -1
  35. package/dist/tools/bash.d.ts.map +1 -1
  36. package/dist/tools/bash_watch.d.ts.map +1 -1
  37. package/dist/tools/definitions/v2.d.ts +57 -0
  38. package/dist/tools/definitions/v2.d.ts.map +1 -0
  39. package/dist/tools/hoisted/v2.d.ts +8 -0
  40. package/dist/tools/hoisted/v2.d.ts.map +1 -0
  41. package/dist/tools/hoisted.d.ts +2 -0
  42. package/dist/tools/hoisted.d.ts.map +1 -1
  43. package/dist/tools/inspect.d.ts.map +1 -1
  44. package/dist/tools/navigation.d.ts.map +1 -1
  45. package/dist/tools/permissions.d.ts +21 -3
  46. package/dist/tools/permissions.d.ts.map +1 -1
  47. package/dist/tools/reading.d.ts.map +1 -1
  48. package/dist/tools/semantic.d.ts.map +1 -1
  49. package/dist/tui/aft-rpc.d.ts +48 -0
  50. package/dist/tui/aft-rpc.d.ts.map +1 -0
  51. package/dist/tui/v2-status.d.ts +11 -0
  52. package/dist/tui/v2-status.d.ts.map +1 -0
  53. package/dist/wakes/runtime-consumer.d.ts +19 -0
  54. package/dist/wakes/runtime-consumer.d.ts.map +1 -0
  55. package/dist/wakes/session-delivery.d.ts +45 -0
  56. package/dist/wakes/session-delivery.d.ts.map +1 -0
  57. package/dist/workflow-hints.d.ts +12 -1
  58. package/dist/workflow-hints.d.ts.map +1 -1
  59. package/package.json +21 -16
  60. package/src/entry/server-runtime.mjs +109 -0
  61. package/src/entry/server.d.ts +10 -0
  62. package/src/entry/server.mjs +10 -0
  63. package/src/entry/tui.d.ts +8 -0
  64. package/src/entry/tui.mjs +9 -0
  65. package/src/tui/aft-rpc.ts +43 -0
  66. package/src/tui/index.tsx +3 -1
  67. package/src/tui/sidebar.tsx +1 -1
  68. package/src/tui/types/opencode-plugin-tui.d.ts +4 -3
  69. package/src/tui/v2-status.ts +56 -0
  70. package/src/tui/v2.tsx +209 -0
  71. package/src/tui-compiled/aft-rpc.ts +43 -0
  72. package/src/tui-compiled/index.tsx +3 -1
  73. package/src/tui-compiled/types/opencode-plugin-tui.d.ts +4 -3
  74. package/src/tui-compiled/v2-status.ts +56 -0
  75. package/src/tui-compiled/v2.tsx +181 -0
  76. package/dist/tools/refactoring.d.ts +0 -7
  77. package/dist/tools/refactoring.d.ts.map +0 -1
@@ -20,6 +20,13 @@ export interface BgCompletion {
20
20
  compressed_tokens?: number;
21
21
  tokens_skipped?: boolean;
22
22
  status_reason?: string;
23
+ live_descendants?: Array<{
24
+ pid: number;
25
+ comm: string;
26
+ argv0: string;
27
+ }> | null;
28
+ live_descendants_omitted?: number;
29
+ live_descendants_summary?: string;
23
30
  mode?: "pipes" | "pty" | string;
24
31
  output_path?: string;
25
32
  }
@@ -94,18 +101,25 @@ type SessionBgState = {
94
101
  * Task IDs DELIVERED to the agent but whose `bash_ack_completions` has not yet
95
102
  * confirmed (so the Rust registry still holds them and, over subc, re-nudges).
96
103
  * Ingest skips these for fresh delivery AND a forced drain RE-ACKs them (the
97
- * self-terminating close of the re-nudge loop, C-#3). Entries are removed by
98
- * DAEMON RECONCILIATION, not a timer: a forced drain that no longer returns a
99
- * task proves the daemon dropped it, so it is safe to forget (R2-T3 — a
100
- * time-based TTL could evict a task the daemon still holds, reopening the
101
- * double-deliver). Self-drains: the module re-nudges (→ drain → re-ack) until
102
- * ack confirms. Insertion-ordered for the FIFO OOM backstop cap.
104
+ * self-terminating close of the re-nudge loop). Entries are removed by
105
+ * DAEMON RECONCILIATION, not a timer: when a forced drain no longer returns a
106
+ * task as unacknowledged, it is safe to forget. A time-based TTL could evict a
107
+ * task the daemon still holds, reopening the double-deliver. Self-drains: the
108
+ * module re-nudges (→ drain → re-ack) until ack confirms. Insertion-ordered
109
+ * for the FIFO OOM backstop cap.
103
110
  */
104
111
  deliveredAwaitingAckTaskIds: Set<string>;
112
+ hostStatus: "idle" | "busy" | "retry" | undefined;
113
+ wakeAdmissions: Map<string, WakeAdmission>;
114
+ confirmedWakeDeliveryIds: Set<string>;
115
+ refiredWakeDeliveryIds: Set<string>;
116
+ wakeDeliveryOrder: string[];
105
117
  lastSeenAt: number;
106
118
  };
107
119
  export declare const sessionBgStates: Map<string, SessionBgState>;
108
120
  export declare const SESSION_BG_STATE_IDLE_TTL_MS: number;
121
+ export declare function setActiveSessionId(sessionId: string | undefined): void;
122
+ export declare function getActiveSessionId(): string | undefined;
109
123
  interface DrainContext {
110
124
  ctx: PluginContext;
111
125
  directory: string;
@@ -125,6 +139,31 @@ interface DrainContext {
125
139
  /** Cached bridge so one nudge resolves drain and ack through one authority. */
126
140
  resolvedBridge?: AftProjectTransport;
127
141
  }
142
+ interface OpenCodeSessionApi {
143
+ promptAsync?: (input: unknown) => Promise<unknown> | unknown;
144
+ messages?: (input: {
145
+ path: {
146
+ id: string;
147
+ };
148
+ }) => Promise<{
149
+ data?: unknown[];
150
+ }>;
151
+ }
152
+ interface WakeAdmission {
153
+ deliveryID: string;
154
+ admittedAt: number;
155
+ admittedMessageIDs: Set<string>;
156
+ requestBody: Record<string, unknown>;
157
+ sessionApi: OpenCodeSessionApi & {
158
+ promptAsync: NonNullable<OpenCodeSessionApi["promptAsync"]>;
159
+ };
160
+ drainContext: DrainContext;
161
+ taskIDs: string[];
162
+ watchId?: string;
163
+ confirmationTimer: NodeJS.Timeout | null;
164
+ refireTimer: NodeJS.Timeout | null;
165
+ refireQueued: boolean;
166
+ }
128
167
  /**
129
168
  * Mark a bg task's completion as consumed by an explicit bash_status wait.
130
169
  * Removes it from pendingCompletions so the next wake/in-turn drain
@@ -171,8 +210,9 @@ export declare function handleIdleBgCompletions(drainContext: DrainContext & {
171
210
  }): Promise<void>;
172
211
  /**
173
212
  * Subc bg_events wake entrypoint. Over subc, an idle-completion WAKE is a thin
174
- * payload-less nudge: the module only nudges while it holds pending completions
175
- * (re-armed each tick until acked), so a nudge ALWAYS means "drain me now". This
213
+ * payload-less nudge. The module sends one optimistic nudge when the subscription
214
+ * opens, then re-nudges while completions or pattern matches remain unacknowledged;
215
+ * either case means "drain me now". This
176
216
  * differs from {@link handleIdleBgCompletions}, whose drain is GATED — once
177
217
  * `forcedDrainCompleted` is set and nothing is locally outstanding, it skips the
178
218
  * drain. A subc completion can be for a task this process never tracked (a prior
@@ -180,18 +220,24 @@ export declare function handleIdleBgCompletions(drainContext: DrainContext & {
180
220
  * drain would skip it and the module would re-arm and nudge forever. The
181
221
  * module-side loop is
182
222
  * `crates/aft/src/subc/push.rs::{emit_bg_event_wakes,clear_stale_bg_wakes_for_empty_sessions}`:
183
- * it re-emits pending wakes until ack empties the queue, so coalescing a duplicate
223
+ * it re-emits pending wakes until ack clears durable items, so coalescing a duplicate
184
224
  * while this handler is in flight is safe. This path forces an UNCONDITIONAL drain
185
- * so the completion is fetched, delivered, and acked.
225
+ * so each durable notification is fetched, delivered, and acked.
186
226
  */
187
227
  export declare function handleSubcBgEventsNudge(drainContext: DrainContext & {
188
228
  client: unknown;
189
229
  }): Promise<void>;
230
+ /**
231
+ * Observe the OpenCode event hook already owned by the plugin. Unknown and
232
+ * malformed event shapes are ignored so host event delivery can never fail.
233
+ */
234
+ export declare function observeOpenCodeBgNotificationEvent(event: unknown): void;
190
235
  export declare function formatSystemReminder(completions: readonly BgCompletion[]): string;
191
236
  export declare function formatLongRunningReminder(reminders: readonly BgLongRunningReminder[]): string;
192
237
  export declare function formatPatternMatchReminder(matches: readonly PatternMatchEntry[]): string;
193
238
  export declare function extractSessionID(value: unknown): string | undefined;
194
239
  export declare function __setBgNotificationHopTimeoutForTests(timeoutMs: number): void;
240
+ export declare function __setWakeConfirmationWindowForTests(timeoutMs: number): void;
195
241
  export declare function __resetBgNotificationStateForTests(): void;
196
242
  export {};
197
243
  //# sourceMappingURL=bg-notifications.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bg-notifications.d.ts","sourceRoot":"","sources":["../src/bg-notifications.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bg-notifications.d.ts","sourceRoot":"","sources":["../src/bg-notifications.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export interface EffectAbortForwarder {
2
+ /** Whether this invocation has already forwarded an interruption. */
3
+ readonly forwarded: boolean;
4
+ /** Stop accepting interruption without triggering cancellation. */
5
+ dispose(): void;
6
+ }
7
+ /**
8
+ * Forward one Effect-owned AbortSignal without retaining process-global state.
9
+ * Disposal wins any later interruption, while an already-started best-effort
10
+ * send is observed so transport teardown cannot create an unhandled rejection.
11
+ */
12
+ export declare function forwardEffectAbort(signal: AbortSignal, send: () => unknown | PromiseLike<unknown>): EffectAbortForwarder;
13
+ //# sourceMappingURL=effect-abort.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"effect-abort.d.ts","sourceRoot":"","sources":["../../src/cancellation/effect-abort.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,oBAAoB;IACnC,qEAAqE;IACrE,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,mEAAmE;IACnE,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,GACzC,oBAAoB,CA2BtB"}
package/dist/config.d.ts CHANGED
@@ -7,9 +7,27 @@ export declare const ConfigureWarningsDeliveryEnum: z.ZodEnum<{
7
7
  chat: "chat";
8
8
  }>;
9
9
  export type ConfigureWarningsDelivery = z.infer<typeof ConfigureWarningsDeliveryEnum>;
10
+ declare const GithubConfigSchema: z.ZodObject<{
11
+ enabled: z.ZodOptional<z.ZodBoolean>;
12
+ shim: z.ZodOptional<z.ZodBoolean>;
13
+ read: z.ZodOptional<z.ZodBoolean>;
14
+ write: z.ZodOptional<z.ZodBoolean>;
15
+ }, z.core.$strip>;
10
16
  export declare const DEFAULT_INSPECT_DIAGNOSTICS_TIMEOUT_MS = 120000;
11
17
  export declare const MIN_INSPECT_DIAGNOSTICS_TIMEOUT_MS = 10000;
12
18
  export declare const MAX_INSPECT_DIAGNOSTICS_TIMEOUT_MS = 600000;
19
+ export declare const PiToolPresentationEnum: z.ZodEnum<{
20
+ top_level: "top_level";
21
+ host_default: "host_default";
22
+ }>;
23
+ export type PiToolPresentation = z.infer<typeof PiToolPresentationEnum>;
24
+ export declare const PiConfigSchema: z.ZodObject<{
25
+ tool_presentation: z.ZodOptional<z.ZodEnum<{
26
+ top_level: "top_level";
27
+ host_default: "host_default";
28
+ }>>;
29
+ }, z.core.$strip>;
30
+ export type PiConfig = z.infer<typeof PiConfigSchema>;
13
31
  export declare const AftConfigSchema: z.ZodPreprocess<z.ZodObject<{
14
32
  $schema: z.ZodOptional<z.ZodString>;
15
33
  enabled: z.ZodOptional<z.ZodBoolean>;
@@ -77,6 +95,9 @@ export declare const AftConfigSchema: z.ZodPreprocess<z.ZodObject<{
77
95
  }>>>>;
78
96
  }, z.core.$strip>>;
79
97
  semantic_search: z.ZodOptional<z.ZodBoolean>;
98
+ views: z.ZodOptional<z.ZodObject<{
99
+ enabled: z.ZodOptional<z.ZodBoolean>;
100
+ }, z.core.$strip>>;
80
101
  callgraph_store: z.ZodOptional<z.ZodBoolean>;
81
102
  callgraph_chunk_size: z.ZodOptional<z.ZodNumber>;
82
103
  inspect: z.ZodOptional<z.ZodObject<{
@@ -90,6 +111,10 @@ export declare const AftConfigSchema: z.ZodPreprocess<z.ZodObject<{
90
111
  expected_mirrors: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodString, z.ZodString], null>>>;
91
112
  }, z.core.$strip>>;
92
113
  }, z.core.$strip>>;
114
+ idle: z.ZodOptional<z.ZodObject<{
115
+ root_ttl_minutes: z.ZodPipe<z.ZodOptional<z.ZodNumber>, z.ZodTransform<number | undefined, number | undefined>>;
116
+ lsp_ttl_minutes: z.ZodPipe<z.ZodOptional<z.ZodNumber>, z.ZodTransform<number | undefined, number | undefined>>;
117
+ }, z.core.$strip>>;
93
118
  backup: z.ZodOptional<z.ZodObject<{
94
119
  enabled: z.ZodOptional<z.ZodBoolean>;
95
120
  max_depth: z.ZodOptional<z.ZodNumber>;
@@ -113,6 +138,8 @@ export declare const AftConfigSchema: z.ZodPreprocess<z.ZodObject<{
113
138
  long_running_reminder_enabled: z.ZodOptional<z.ZodBoolean>;
114
139
  long_running_reminder_interval_ms: z.ZodOptional<z.ZodNumber>;
115
140
  foreground_wait_window_ms: z.ZodOptional<z.ZodNumber>;
141
+ watch_sync_max_ms: z.ZodOptional<z.ZodNumber>;
142
+ linux_scope: z.ZodOptional<z.ZodBoolean>;
116
143
  powershell_tool: z.ZodOptional<z.ZodBoolean>;
117
144
  }, z.core.$strip>]>>;
118
145
  experimental: z.ZodOptional<z.ZodObject<{
@@ -159,7 +186,9 @@ export declare const AftConfigSchema: z.ZodPreprocess<z.ZodObject<{
159
186
  api_key_env: z.ZodOptional<z.ZodString>;
160
187
  timeout_ms: z.ZodOptional<z.ZodNumber>;
161
188
  query_timeout_ms: z.ZodOptional<z.ZodNumber>;
189
+ query_instruction: z.ZodOptional<z.ZodString>;
162
190
  max_batch_size: z.ZodOptional<z.ZodNumber>;
191
+ max_input_tokens: z.ZodOptional<z.ZodNumber>;
163
192
  max_files: z.ZodOptional<z.ZodNumber>;
164
193
  }, z.core.$strip>>;
165
194
  auto_update: z.ZodOptional<z.ZodBoolean>;
@@ -171,6 +200,12 @@ export declare const AftConfigSchema: z.ZodPreprocess<z.ZodObject<{
171
200
  connection_file: z.ZodOptional<z.ZodString>;
172
201
  client_reaper: z.ZodOptional<z.ZodBoolean>;
173
202
  }, z.core.$strip>>;
203
+ github: z.ZodOptional<z.ZodObject<{
204
+ enabled: z.ZodOptional<z.ZodBoolean>;
205
+ shim: z.ZodOptional<z.ZodBoolean>;
206
+ read: z.ZodOptional<z.ZodBoolean>;
207
+ write: z.ZodOptional<z.ZodBoolean>;
208
+ }, z.core.$strip>>;
174
209
  gh_shim: z.ZodOptional<z.ZodObject<{
175
210
  enabled: z.ZodOptional<z.ZodBoolean>;
176
211
  binary_path: z.ZodOptional<z.ZodString>;
@@ -181,6 +216,12 @@ export declare const AftConfigSchema: z.ZodPreprocess<z.ZodObject<{
181
216
  git: z.ZodOptional<z.ZodObject<{
182
217
  co_author: z.ZodOptional<z.ZodString>;
183
218
  }, z.core.$strip>>;
219
+ pi: z.ZodOptional<z.ZodObject<{
220
+ tool_presentation: z.ZodOptional<z.ZodEnum<{
221
+ top_level: "top_level";
222
+ host_default: "host_default";
223
+ }>>;
224
+ }, z.core.$strip>>;
184
225
  harnesses: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodPreprocess<z.ZodObject<{
185
226
  $schema: z.ZodOptional<z.ZodString>;
186
227
  enabled: z.ZodOptional<z.ZodBoolean>;
@@ -248,6 +289,9 @@ export declare const AftConfigSchema: z.ZodPreprocess<z.ZodObject<{
248
289
  }>>>>;
249
290
  }, z.core.$strip>>;
250
291
  semantic_search: z.ZodOptional<z.ZodBoolean>;
292
+ views: z.ZodOptional<z.ZodObject<{
293
+ enabled: z.ZodOptional<z.ZodBoolean>;
294
+ }, z.core.$strip>>;
251
295
  callgraph_store: z.ZodOptional<z.ZodBoolean>;
252
296
  callgraph_chunk_size: z.ZodOptional<z.ZodNumber>;
253
297
  inspect: z.ZodOptional<z.ZodObject<{
@@ -261,6 +305,10 @@ export declare const AftConfigSchema: z.ZodPreprocess<z.ZodObject<{
261
305
  expected_mirrors: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodString, z.ZodString], null>>>;
262
306
  }, z.core.$strip>>;
263
307
  }, z.core.$strip>>;
308
+ idle: z.ZodOptional<z.ZodObject<{
309
+ root_ttl_minutes: z.ZodPipe<z.ZodOptional<z.ZodNumber>, z.ZodTransform<number | undefined, number | undefined>>;
310
+ lsp_ttl_minutes: z.ZodPipe<z.ZodOptional<z.ZodNumber>, z.ZodTransform<number | undefined, number | undefined>>;
311
+ }, z.core.$strip>>;
264
312
  backup: z.ZodOptional<z.ZodObject<{
265
313
  enabled: z.ZodOptional<z.ZodBoolean>;
266
314
  max_depth: z.ZodOptional<z.ZodNumber>;
@@ -284,6 +332,8 @@ export declare const AftConfigSchema: z.ZodPreprocess<z.ZodObject<{
284
332
  long_running_reminder_enabled: z.ZodOptional<z.ZodBoolean>;
285
333
  long_running_reminder_interval_ms: z.ZodOptional<z.ZodNumber>;
286
334
  foreground_wait_window_ms: z.ZodOptional<z.ZodNumber>;
335
+ watch_sync_max_ms: z.ZodOptional<z.ZodNumber>;
336
+ linux_scope: z.ZodOptional<z.ZodBoolean>;
287
337
  powershell_tool: z.ZodOptional<z.ZodBoolean>;
288
338
  }, z.core.$strip>]>>;
289
339
  experimental: z.ZodOptional<z.ZodObject<{
@@ -330,7 +380,9 @@ export declare const AftConfigSchema: z.ZodPreprocess<z.ZodObject<{
330
380
  api_key_env: z.ZodOptional<z.ZodString>;
331
381
  timeout_ms: z.ZodOptional<z.ZodNumber>;
332
382
  query_timeout_ms: z.ZodOptional<z.ZodNumber>;
383
+ query_instruction: z.ZodOptional<z.ZodString>;
333
384
  max_batch_size: z.ZodOptional<z.ZodNumber>;
385
+ max_input_tokens: z.ZodOptional<z.ZodNumber>;
334
386
  max_files: z.ZodOptional<z.ZodNumber>;
335
387
  }, z.core.$strip>>;
336
388
  auto_update: z.ZodOptional<z.ZodBoolean>;
@@ -342,6 +394,12 @@ export declare const AftConfigSchema: z.ZodPreprocess<z.ZodObject<{
342
394
  connection_file: z.ZodOptional<z.ZodString>;
343
395
  client_reaper: z.ZodOptional<z.ZodBoolean>;
344
396
  }, z.core.$strip>>;
397
+ github: z.ZodOptional<z.ZodObject<{
398
+ enabled: z.ZodOptional<z.ZodBoolean>;
399
+ shim: z.ZodOptional<z.ZodBoolean>;
400
+ read: z.ZodOptional<z.ZodBoolean>;
401
+ write: z.ZodOptional<z.ZodBoolean>;
402
+ }, z.core.$strip>>;
345
403
  gh_shim: z.ZodOptional<z.ZodObject<{
346
404
  enabled: z.ZodOptional<z.ZodBoolean>;
347
405
  binary_path: z.ZodOptional<z.ZodString>;
@@ -352,9 +410,25 @@ export declare const AftConfigSchema: z.ZodPreprocess<z.ZodObject<{
352
410
  git: z.ZodOptional<z.ZodObject<{
353
411
  co_author: z.ZodOptional<z.ZodString>;
354
412
  }, z.core.$strip>>;
413
+ pi: z.ZodOptional<z.ZodObject<{
414
+ tool_presentation: z.ZodOptional<z.ZodEnum<{
415
+ top_level: "top_level";
416
+ host_default: "host_default";
417
+ }>>;
418
+ }, z.core.$strip>>;
355
419
  }, z.core.$strict>>>>;
356
420
  }, z.core.$strict>>;
357
421
  export type AftConfig = z.infer<typeof AftConfigSchema>;
422
+ export type GithubConfig = z.infer<typeof GithubConfigSchema>;
423
+ export interface ResolvedGithubConfig {
424
+ enabled: boolean;
425
+ shim: boolean;
426
+ read: boolean;
427
+ write: boolean;
428
+ }
429
+ /** Resolve master/feature precedence and the write-implies-read safety rule. */
430
+ export declare function resolveGithubConfig(config: AftConfig): ResolvedGithubConfig;
431
+ export declare function toolEnabled(config: AftConfig, toolName: string): boolean;
358
432
  /** Resolve the blocking diagnostics deadline for tools that wait on `aft_inspect`. */
359
433
  export declare function resolveInspectDiagnosticsTimeoutMs(config: AftConfig): number;
360
434
  export interface ConfigureLspServer {
@@ -397,7 +471,7 @@ export declare function resolveLspConfigForConfigure(config: AftConfig): Configu
397
471
  * one OpenCode/Pi process.
398
472
  *
399
473
  * **DO NOT** put fields that affect plugin-side tool registration here.
400
- * `enabled`, `tool_surface`, `disabled_tools`, and `hoist_builtin_tools` lock
474
+ * `enabled`, `tool_surface`, and `hoist_builtin_tools` lock
401
475
  * at plugin init because OpenCode registers tools synchronously when the plugin
402
476
  * function returns. Per-bridge changes to those fields wouldn't take effect.
403
477
  */
@@ -420,7 +494,7 @@ export interface ResolvedBashConfig {
420
494
  background: boolean;
421
495
  /** Emergency local execution gate. Default false, including for `bash: true`. */
422
496
  host_fallback: boolean;
423
- /** See BashFeaturesSchema.subagent_background. Default false. */
497
+ /** See BashFeaturesSchema.subagent_background. Default true. */
424
498
  subagent_background: boolean;
425
499
  /** Detach wait:true bash calls on user messages; `&detach` overrides and is stripped before delivery. */
426
500
  detach_on_user_message: boolean;
@@ -431,6 +505,8 @@ export interface ResolvedBashConfig {
431
505
  * Always resolved: defaults to 15000, floored at 5000.
432
506
  */
433
507
  foreground_wait_window_ms: number;
508
+ /** Maximum synchronous bash_watch wait. Defaults to 120000 and is clamped to 1000..1800000. */
509
+ watch_sync_max_ms: number;
434
510
  /** Pi-only manual PowerShell registration fallback. Default false. */
435
511
  powershell_tool: boolean;
436
512
  }
@@ -438,6 +514,13 @@ export interface ResolvedBashConfig {
438
514
  export declare const FOREGROUND_WAIT_WINDOW_DEFAULT_MS = 15000;
439
515
  /** Minimum allowed foreground wait-window (ms); smaller values clamp up. */
440
516
  export declare const FOREGROUND_WAIT_WINDOW_MIN_MS = 5000;
517
+ /** Default maximum synchronous bash_watch wait (ms). */
518
+ export declare const DEFAULT_BASH_WATCH_SYNC_MAX_MS = 120000;
519
+ /** Minimum synchronous bash_watch wait cap (ms). */
520
+ export declare const MIN_BASH_WATCH_SYNC_MAX_MS = 1000;
521
+ /** Static schema maximum and hard upper bound for synchronous bash_watch waits (ms). */
522
+ export declare const MAX_BASH_WATCH_SYNC_MAX_MS = 1800000;
523
+ export declare function clampBashWatchSyncMaxMs(value: number | undefined): number;
441
524
  /**
442
525
  * Single source of truth for bash config across the plugin. Resolution
443
526
  * order (highest priority wins):
@@ -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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"}