@compozy/extension-sdk 0.3.0-beta.16 → 0.3.0-beta.18

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.
@@ -7,7 +7,7 @@ export interface AcceptedCapabilities {
7
7
  export interface AgentCrashedPatch {
8
8
  labels?: Record<string, string>;
9
9
  }
10
- export type HookEvent = "session.pre_create" | "session.post_create" | "session.pre_resume" | "session.post_resume" | "session.pre_stop" | "session.post_stop" | "session.message_persisted" | "sandbox.prepare" | "sandbox.ready" | "sandbox.sync.before" | "sandbox.sync.after" | "sandbox.stop" | "input.pre_submit" | "prompt.post_assemble" | "event.pre_record" | "event.post_record" | "automation.job.pre_fire" | "automation.job.post_fire" | "automation.trigger.pre_fire" | "automation.trigger.post_fire" | "automation.run.completed" | "automation.run.failed" | "agent.pre_start" | "agent.spawned" | "agent.crashed" | "agent.stopped" | "agent.soul.snapshot.resolved" | "agent.soul.mutation.after" | "agent.heartbeat.policy.resolved" | "agent.heartbeat.wake.before" | "agent.heartbeat.wake.after" | "session.health.update.after" | "turn.start" | "turn.end" | "message.start" | "message.delta" | "message.end" | "tool.pre_call" | "tool.post_call" | "tool.post_error" | "permission.request" | "permission.resolved" | "permission.denied" | "context.pre_compact" | "context.post_compact" | "coordinator.pre_spawn" | "coordinator.spawned" | "coordinator.decision" | "coordinator.stopped" | "coordinator.failed" | "task.blocked" | "task.unblocked" | "task.needs_attention" | "task.recovered" | "task.status_changed" | "task.run.enqueued" | "task.run.pre_claim" | "task.run.post_claim" | "task.run.lease_extended" | "task.run.lease_expired" | "task.run.lease_recovered" | "task.run.released" | "task.run.completed" | "task.run.failed" | "loop.started" | "loop.generation.pre" | "loop.generation.post" | "loop.gate.pre" | "loop.gate.post" | "loop.node.terminal" | "loop.terminal" | "spawn.pre_create" | "spawn.created" | "spawn.parent_stopped" | "spawn.ttl_expired" | "spawn.reaped" | "network.thread.opened" | "network.direct_room.opened" | "network.message.persisted" | "network.work.opened" | "network.work.transitioned" | "network.work.closed" | "network.peer.joined" | "network.peer.left" | "network.participation.pre_resolve" | "network.participation.resolved" | "window_manager.layout.applied" | "window_manager.desktop.created" | "window_manager.desktop.deleted" | "window_manager.window.moved" | "window_manager.window.opened" | "window_manager.window.closed" | "window_manager.stack.grouped" | "window_manager.stack.ungrouped" | "window_manager.stack.activated";
10
+ export type HookEvent = "session.pre_create" | "session.post_create" | "session.pre_resume" | "session.post_resume" | "session.pre_stop" | "session.post_stop" | "session.message_persisted" | "sandbox.prepare" | "sandbox.ready" | "sandbox.sync.before" | "sandbox.sync.after" | "sandbox.stop" | "input.pre_submit" | "prompt.post_assemble" | "event.pre_record" | "event.post_record" | "automation.job.pre_fire" | "automation.job.post_fire" | "automation.trigger.pre_fire" | "automation.trigger.post_fire" | "automation.run.completed" | "automation.run.failed" | "agent.pre_start" | "agent.spawned" | "agent.crashed" | "agent.stopped" | "agent.soul.snapshot.resolved" | "agent.soul.mutation.after" | "agent.heartbeat.policy.resolved" | "agent.heartbeat.wake.before" | "agent.heartbeat.wake.after" | "session.health.update.after" | "turn.start" | "turn.end" | "message.start" | "message.delta" | "message.end" | "tool.pre_call" | "tool.post_call" | "tool.post_error" | "permission.request" | "permission.resolved" | "permission.denied" | "context.pre_compact" | "context.post_compact" | "coordinator.pre_spawn" | "coordinator.spawned" | "coordinator.decision" | "coordinator.stopped" | "coordinator.failed" | "task.blocked" | "task.unblocked" | "task.needs_attention" | "task.recovered" | "task.status_changed" | "task.run.enqueued" | "task.run.pre_claim" | "task.run.post_claim" | "task.run.lease_extended" | "task.run.lease_expired" | "task.run.lease_recovered" | "task.run.released" | "task.run.completed" | "task.run.failed" | "loop.started" | "loop.generation.pre" | "loop.generation.post" | "loop.gate.pre" | "loop.gate.post" | "loop.node.terminal" | "loop.terminal" | "spawn.pre_create" | "spawn.created" | "spawn.parent_stopped" | "spawn.ttl_expired" | "spawn.reaped" | "session.attention.changed" | "network.thread.opened" | "network.direct_room.opened" | "network.message.persisted" | "network.work.opened" | "network.work.transitioned" | "network.work.closed" | "network.peer.joined" | "network.peer.left" | "network.participation.pre_resolve" | "network.participation.resolved" | "window_manager.layout.applied" | "window_manager.desktop.created" | "window_manager.desktop.deleted" | "window_manager.window.moved" | "window_manager.window.opened" | "window_manager.window.closed" | "window_manager.stack.grouped" | "window_manager.stack.ungrouped" | "window_manager.stack.activated" | "worktree.pre_create" | "worktree.pre_remove" | "worktree.created" | "worktree.adopted" | "worktree.removed";
11
11
  export interface AgentCrashedPayload {
12
12
  event: HookEvent;
13
13
  timestamp: ISODateTime;
@@ -17,6 +17,7 @@ export interface AgentCrashedPayload {
17
17
  agent_name?: string;
18
18
  workspace_id?: string;
19
19
  workspace?: string;
20
+ worktree_id?: string;
20
21
  acp_session_id?: string;
21
22
  state?: string;
22
23
  soul_snapshot_id?: string;
@@ -97,6 +98,7 @@ export interface AgentHeartbeatWakeAfterPayload {
97
98
  agent_name?: string;
98
99
  workspace_id?: string;
99
100
  workspace?: string;
101
+ worktree_id?: string;
100
102
  acp_session_id?: string;
101
103
  state?: string;
102
104
  soul_snapshot_id?: string;
@@ -121,6 +123,7 @@ export interface AgentHeartbeatWakeBeforePayload {
121
123
  agent_name?: string;
122
124
  workspace_id?: string;
123
125
  workspace?: string;
126
+ worktree_id?: string;
124
127
  acp_session_id?: string;
125
128
  state?: string;
126
129
  soul_snapshot_id?: string;
@@ -154,6 +157,7 @@ export interface AgentLifecyclePayload {
154
157
  agent_name?: string;
155
158
  workspace_id?: string;
156
159
  workspace?: string;
160
+ worktree_id?: string;
157
161
  acp_session_id?: string;
158
162
  state?: string;
159
163
  soul_snapshot_id?: string;
@@ -177,6 +181,7 @@ export interface AgentPreStartPayload {
177
181
  agent_name?: string;
178
182
  workspace_id?: string;
179
183
  workspace?: string;
184
+ worktree_id?: string;
180
185
  acp_session_id?: string;
181
186
  state?: string;
182
187
  soul_snapshot_id?: string;
@@ -397,6 +402,7 @@ export interface AgentSpawnedPayload {
397
402
  agent_name?: string;
398
403
  workspace_id?: string;
399
404
  workspace?: string;
405
+ worktree_id?: string;
400
406
  acp_session_id?: string;
401
407
  state?: string;
402
408
  soul_snapshot_id?: string;
@@ -430,6 +436,7 @@ export interface AgentStoppedPayload {
430
436
  agent_name?: string;
431
437
  workspace_id?: string;
432
438
  workspace?: string;
439
+ worktree_id?: string;
433
440
  acp_session_id?: string;
434
441
  state?: string;
435
442
  soul_snapshot_id?: string;
@@ -955,6 +962,7 @@ export interface ContextCompactPayload {
955
962
  agent_name?: string;
956
963
  workspace_id?: string;
957
964
  workspace?: string;
965
+ worktree_id?: string;
958
966
  acp_session_id?: string;
959
967
  state?: string;
960
968
  soul_snapshot_id?: string;
@@ -990,6 +998,7 @@ export interface ContextPostCompactPayload {
990
998
  agent_name?: string;
991
999
  workspace_id?: string;
992
1000
  workspace?: string;
1001
+ worktree_id?: string;
993
1002
  acp_session_id?: string;
994
1003
  state?: string;
995
1004
  soul_snapshot_id?: string;
@@ -1018,6 +1027,7 @@ export interface ContextPreCompactPayload {
1018
1027
  agent_name?: string;
1019
1028
  workspace_id?: string;
1020
1029
  workspace?: string;
1030
+ worktree_id?: string;
1021
1031
  acp_session_id?: string;
1022
1032
  state?: string;
1023
1033
  soul_snapshot_id?: string;
@@ -1346,6 +1356,7 @@ export interface EventPostRecordPayload {
1346
1356
  agent_name?: string;
1347
1357
  workspace_id?: string;
1348
1358
  workspace?: string;
1359
+ worktree_id?: string;
1349
1360
  acp_session_id?: string;
1350
1361
  state?: string;
1351
1362
  soul_snapshot_id?: string;
@@ -1369,6 +1380,7 @@ export interface EventPreRecordPayload {
1369
1380
  agent_name?: string;
1370
1381
  workspace_id?: string;
1371
1382
  workspace?: string;
1383
+ worktree_id?: string;
1372
1384
  acp_session_id?: string;
1373
1385
  state?: string;
1374
1386
  soul_snapshot_id?: string;
@@ -1392,6 +1404,7 @@ export interface EventRecordPayload {
1392
1404
  agent_name?: string;
1393
1405
  workspace_id?: string;
1394
1406
  workspace?: string;
1407
+ worktree_id?: string;
1395
1408
  acp_session_id?: string;
1396
1409
  state?: string;
1397
1410
  soul_snapshot_id?: string;
@@ -1453,9 +1466,15 @@ export interface ToolResult {
1453
1466
  export interface ExtensionToolCallResponse {
1454
1467
  result: ToolResult;
1455
1468
  }
1456
- export type IssueSeverity = "error" | "warning";
1469
+ export interface ExtensionValidationComponent {
1470
+ kind: string;
1471
+ name: string;
1472
+ transport?: string;
1473
+ }
1474
+ export type IssueSeverity = "error" | "warning" | "warn";
1457
1475
  export interface ValidationIssue {
1458
1476
  path: string;
1477
+ scope?: string;
1459
1478
  line?: number;
1460
1479
  column?: number;
1461
1480
  field?: string;
@@ -1463,9 +1482,60 @@ export interface ValidationIssue {
1463
1482
  severity: IssueSeverity;
1464
1483
  }
1465
1484
  export interface ExtensionValidatePayload {
1485
+ status: string;
1486
+ format: string;
1487
+ name?: string;
1488
+ version?: string;
1489
+ would_ingest?: ExtensionValidationComponent[];
1466
1490
  manifest?: ExtensionManifestSummary;
1467
1491
  issues: ValidationIssue[];
1468
- consent_areas: ConsentArea[];
1492
+ consent_areas?: ConsentArea[];
1493
+ }
1494
+ export interface ForgeCapabilitiesRequest {
1495
+ remote_urls: string[];
1496
+ }
1497
+ export interface ForgeCapabilitiesResponse {
1498
+ served: boolean;
1499
+ available: boolean;
1500
+ winner?: string;
1501
+ provider?: string;
1502
+ served_remote?: string;
1503
+ request_noun?: string;
1504
+ open_action_label?: string;
1505
+ view_action_label?: string;
1506
+ supports_draft?: boolean;
1507
+ compare_url_template?: string;
1508
+ template_paths?: string[];
1509
+ credential_source?: string;
1510
+ default_branch?: string;
1511
+ cause?: string;
1512
+ }
1513
+ export interface ForgePRCreateRequest {
1514
+ remote_urls: string[];
1515
+ head: string;
1516
+ base: string;
1517
+ title: string;
1518
+ body?: string;
1519
+ draft?: boolean;
1520
+ }
1521
+ export interface ForgePRCreateResponse {
1522
+ status: string;
1523
+ number?: number;
1524
+ url?: string;
1525
+ cause?: string;
1526
+ }
1527
+ export interface ForgeStatusRequest {
1528
+ remote_urls: string[];
1529
+ branch: string;
1530
+ }
1531
+ export interface ForgeStatusResponse {
1532
+ provider: string;
1533
+ pr_number?: number;
1534
+ pr_state?: string;
1535
+ pr_url?: string;
1536
+ merged?: boolean;
1537
+ fetched_at: ISODateTime;
1538
+ cause?: string;
1469
1539
  }
1470
1540
  export interface HeartbeatDeleteRequest {
1471
1541
  workspace_id?: string;
@@ -1700,6 +1770,7 @@ export interface HookMatcher {
1700
1770
  agent_name?: string;
1701
1771
  agent_type?: string;
1702
1772
  workspace_id?: string;
1773
+ worktree_id?: string;
1703
1774
  workspace_root?: string;
1704
1775
  session_type?: string;
1705
1776
  sandbox_id?: string;
@@ -1745,7 +1816,7 @@ export interface HookDecl {
1745
1816
  source: HookSource;
1746
1817
  required?: boolean;
1747
1818
  }
1748
- export type HookEventFamily = "session" | "sandbox" | "input" | "prompt" | "event" | "automation" | "agent" | "turn" | "message" | "tool" | "permission" | "context" | "coordinator" | "task" | "task.run" | "loop" | "spawn" | "network" | "window_manager";
1819
+ export type HookEventFamily = "session" | "sandbox" | "input" | "prompt" | "event" | "automation" | "agent" | "turn" | "message" | "tool" | "permission" | "context" | "coordinator" | "task" | "task.run" | "loop" | "spawn" | "network" | "window_manager" | "worktree";
1749
1820
  export type HookRunOutcome = "applied" | "denied" | "failed" | "skipped" | "dropped" | "rejected";
1750
1821
  export type HookSkillSource = "bundled" | "marketplace" | "user" | "additional" | "workspace";
1751
1822
  export interface InboundAction {
@@ -1892,6 +1963,13 @@ export interface InputPreSubmitPatch {
1892
1963
  message?: string;
1893
1964
  context_blocks?: ContextBlock[];
1894
1965
  }
1966
+ export interface InputAttachmentMetadata {
1967
+ id: string;
1968
+ name: string;
1969
+ mime: string;
1970
+ bytes: number;
1971
+ kind: string;
1972
+ }
1895
1973
  export interface InputPreSubmitPayload {
1896
1974
  event: HookEvent;
1897
1975
  timestamp: ISODateTime;
@@ -1901,6 +1979,7 @@ export interface InputPreSubmitPayload {
1901
1979
  agent_name?: string;
1902
1980
  workspace_id?: string;
1903
1981
  workspace?: string;
1982
+ worktree_id?: string;
1904
1983
  acp_session_id?: string;
1905
1984
  state?: string;
1906
1985
  soul_snapshot_id?: string;
@@ -1911,6 +1990,7 @@ export interface InputPreSubmitPayload {
1911
1990
  input_class?: string;
1912
1991
  message?: string;
1913
1992
  context_blocks?: ContextBlock[];
1993
+ attachments?: InputAttachmentMetadata[];
1914
1994
  }
1915
1995
  export interface ListLogsParams {
1916
1996
  workspace_id: string;
@@ -2223,6 +2303,7 @@ export interface MessageDeltaPayload {
2223
2303
  agent_name?: string;
2224
2304
  workspace_id?: string;
2225
2305
  workspace?: string;
2306
+ worktree_id?: string;
2226
2307
  acp_session_id?: string;
2227
2308
  state?: string;
2228
2309
  soul_snapshot_id?: string;
@@ -2252,6 +2333,7 @@ export interface MessageEndPayload {
2252
2333
  agent_name?: string;
2253
2334
  workspace_id?: string;
2254
2335
  workspace?: string;
2336
+ worktree_id?: string;
2255
2337
  acp_session_id?: string;
2256
2338
  state?: string;
2257
2339
  soul_snapshot_id?: string;
@@ -2281,6 +2363,7 @@ export interface MessagePayload {
2281
2363
  agent_name?: string;
2282
2364
  workspace_id?: string;
2283
2365
  workspace?: string;
2366
+ worktree_id?: string;
2284
2367
  acp_session_id?: string;
2285
2368
  state?: string;
2286
2369
  soul_snapshot_id?: string;
@@ -2310,6 +2393,7 @@ export interface MessageStartPayload {
2310
2393
  agent_name?: string;
2311
2394
  workspace_id?: string;
2312
2395
  workspace?: string;
2396
+ worktree_id?: string;
2313
2397
  acp_session_id?: string;
2314
2398
  state?: string;
2315
2399
  soul_snapshot_id?: string;
@@ -3122,6 +3206,7 @@ export interface PermissionDeniedPayload {
3122
3206
  agent_name?: string;
3123
3207
  workspace_id?: string;
3124
3208
  workspace?: string;
3209
+ worktree_id?: string;
3125
3210
  acp_session_id?: string;
3126
3211
  state?: string;
3127
3212
  soul_snapshot_id?: string;
@@ -3134,7 +3219,6 @@ export interface PermissionDeniedPayload {
3134
3219
  resource?: string;
3135
3220
  decision?: string;
3136
3221
  decision_class?: string;
3137
- tool_input?: JSONValue;
3138
3222
  tool_call: PermissionToolCall;
3139
3223
  }
3140
3224
  export interface PermissionOption {
@@ -3159,6 +3243,7 @@ export interface PermissionRequestPayload {
3159
3243
  agent_name?: string;
3160
3244
  workspace_id?: string;
3161
3245
  workspace?: string;
3246
+ worktree_id?: string;
3162
3247
  acp_session_id?: string;
3163
3248
  state?: string;
3164
3249
  soul_snapshot_id?: string;
@@ -3184,6 +3269,7 @@ export interface PermissionResolutionPayload {
3184
3269
  agent_name?: string;
3185
3270
  workspace_id?: string;
3186
3271
  workspace?: string;
3272
+ worktree_id?: string;
3187
3273
  acp_session_id?: string;
3188
3274
  state?: string;
3189
3275
  soul_snapshot_id?: string;
@@ -3209,6 +3295,7 @@ export interface PermissionResolvedPayload {
3209
3295
  agent_name?: string;
3210
3296
  workspace_id?: string;
3211
3297
  workspace?: string;
3298
+ worktree_id?: string;
3212
3299
  acp_session_id?: string;
3213
3300
  state?: string;
3214
3301
  soul_snapshot_id?: string;
@@ -3247,6 +3334,7 @@ export interface PromptPayload {
3247
3334
  agent_name?: string;
3248
3335
  workspace_id?: string;
3249
3336
  workspace?: string;
3337
+ worktree_id?: string;
3250
3338
  acp_session_id?: string;
3251
3339
  state?: string;
3252
3340
  soul_snapshot_id?: string;
@@ -3446,6 +3534,7 @@ export interface SandboxPreparePayload {
3446
3534
  agent_name?: string;
3447
3535
  workspace_id?: string;
3448
3536
  workspace?: string;
3537
+ worktree_id?: string;
3449
3538
  acp_session_id?: string;
3450
3539
  state?: string;
3451
3540
  soul_snapshot_id?: string;
@@ -3475,6 +3564,7 @@ export interface SandboxReadyPayload {
3475
3564
  agent_name?: string;
3476
3565
  workspace_id?: string;
3477
3566
  workspace?: string;
3567
+ worktree_id?: string;
3478
3568
  acp_session_id?: string;
3479
3569
  state?: string;
3480
3570
  soul_snapshot_id?: string;
@@ -3501,6 +3591,7 @@ export interface SandboxStopPayload {
3501
3591
  agent_name?: string;
3502
3592
  workspace_id?: string;
3503
3593
  workspace?: string;
3594
+ worktree_id?: string;
3504
3595
  acp_session_id?: string;
3505
3596
  state?: string;
3506
3597
  soul_snapshot_id?: string;
@@ -3527,6 +3618,7 @@ export interface SandboxSyncAfterPayload {
3527
3618
  agent_name?: string;
3528
3619
  workspace_id?: string;
3529
3620
  workspace?: string;
3621
+ worktree_id?: string;
3530
3622
  acp_session_id?: string;
3531
3623
  state?: string;
3532
3624
  soul_snapshot_id?: string;
@@ -3559,6 +3651,7 @@ export interface SandboxSyncBeforePayload {
3559
3651
  agent_name?: string;
3560
3652
  workspace_id?: string;
3561
3653
  workspace?: string;
3654
+ worktree_id?: string;
3562
3655
  acp_session_id?: string;
3563
3656
  state?: string;
3564
3657
  soul_snapshot_id?: string;
@@ -3576,6 +3669,28 @@ export interface SandboxSyncBeforePayload {
3576
3669
  denied?: boolean;
3577
3670
  deny_reason?: string;
3578
3671
  }
3672
+ export interface SessionAttentionChangedPayload {
3673
+ event: HookEvent;
3674
+ timestamp: ISODateTime;
3675
+ session_id?: string;
3676
+ session_name?: string;
3677
+ session_type?: string;
3678
+ agent_name?: string;
3679
+ workspace_id?: string;
3680
+ workspace?: string;
3681
+ worktree_id?: string;
3682
+ acp_session_id?: string;
3683
+ state?: string;
3684
+ soul_snapshot_id?: string;
3685
+ soul_digest?: string;
3686
+ created_at: ISODateTime;
3687
+ updated_at: ISODateTime;
3688
+ from: string;
3689
+ to: string;
3690
+ class: string;
3691
+ at: ISODateTime;
3692
+ }
3693
+ export type SessionAttentionObservationPatch = Record<string, never>;
3579
3694
  export interface SessionContext {
3580
3695
  session_id?: string;
3581
3696
  session_name?: string;
@@ -3583,6 +3698,7 @@ export interface SessionContext {
3583
3698
  agent_name?: string;
3584
3699
  workspace_id?: string;
3585
3700
  workspace?: string;
3701
+ worktree_id?: string;
3586
3702
  acp_session_id?: string;
3587
3703
  state?: string;
3588
3704
  soul_snapshot_id?: string;
@@ -3633,6 +3749,7 @@ export interface SessionHealthUpdateAfterPayload {
3633
3749
  agent_name?: string;
3634
3750
  workspace_id?: string;
3635
3751
  workspace?: string;
3752
+ worktree_id?: string;
3636
3753
  acp_session_id?: string;
3637
3754
  state?: string;
3638
3755
  soul_snapshot_id?: string;
@@ -3721,6 +3838,7 @@ export interface SessionLifecyclePayload {
3721
3838
  agent_name?: string;
3722
3839
  workspace_id?: string;
3723
3840
  workspace?: string;
3841
+ worktree_id?: string;
3724
3842
  acp_session_id?: string;
3725
3843
  state?: string;
3726
3844
  soul_snapshot_id?: string;
@@ -3737,6 +3855,7 @@ export interface SessionMessagePersistedPayload {
3737
3855
  agent_name?: string;
3738
3856
  workspace_id?: string;
3739
3857
  workspace?: string;
3858
+ worktree_id?: string;
3740
3859
  acp_session_id?: string;
3741
3860
  state?: string;
3742
3861
  soul_snapshot_id?: string;
@@ -3773,6 +3892,7 @@ export interface SessionPostCreatePayload {
3773
3892
  agent_name?: string;
3774
3893
  workspace_id?: string;
3775
3894
  workspace?: string;
3895
+ worktree_id?: string;
3776
3896
  acp_session_id?: string;
3777
3897
  state?: string;
3778
3898
  soul_snapshot_id?: string;
@@ -3798,6 +3918,7 @@ export interface SessionPostResumePayload {
3798
3918
  agent_name?: string;
3799
3919
  workspace_id?: string;
3800
3920
  workspace?: string;
3921
+ worktree_id?: string;
3801
3922
  acp_session_id?: string;
3802
3923
  state?: string;
3803
3924
  soul_snapshot_id?: string;
@@ -3823,6 +3944,7 @@ export interface SessionPostStopPayload {
3823
3944
  agent_name?: string;
3824
3945
  workspace_id?: string;
3825
3946
  workspace?: string;
3947
+ worktree_id?: string;
3826
3948
  acp_session_id?: string;
3827
3949
  state?: string;
3828
3950
  soul_snapshot_id?: string;
@@ -3839,6 +3961,7 @@ export interface SessionPreCreatePayload {
3839
3961
  agent_name?: string;
3840
3962
  workspace_id?: string;
3841
3963
  workspace?: string;
3964
+ worktree_id?: string;
3842
3965
  acp_session_id?: string;
3843
3966
  state?: string;
3844
3967
  soul_snapshot_id?: string;
@@ -3864,6 +3987,7 @@ export interface SessionPreResumePayload {
3864
3987
  agent_name?: string;
3865
3988
  workspace_id?: string;
3866
3989
  workspace?: string;
3990
+ worktree_id?: string;
3867
3991
  acp_session_id?: string;
3868
3992
  state?: string;
3869
3993
  soul_snapshot_id?: string;
@@ -3889,6 +4013,7 @@ export interface SessionPreStopPayload {
3889
4013
  agent_name?: string;
3890
4014
  workspace_id?: string;
3891
4015
  workspace?: string;
4016
+ worktree_id?: string;
3892
4017
  acp_session_id?: string;
3893
4018
  state?: string;
3894
4019
  soul_snapshot_id?: string;
@@ -3969,6 +4094,9 @@ export interface SessionConfigOptionPayload {
3969
4094
  }
3970
4095
  export interface ACPCapsPayload {
3971
4096
  supports_load_session: boolean;
4097
+ prompt_image: boolean;
4098
+ prompt_audio: boolean;
4099
+ prompt_embedded_context: boolean;
3972
4100
  supported_modes?: string[];
3973
4101
  config_options?: SessionConfigOptionPayload[];
3974
4102
  }
@@ -4002,17 +4130,34 @@ export interface SessionStatusGetParams {
4002
4130
  workspace_id: string;
4003
4131
  session_id: string;
4004
4132
  }
4133
+ export type Badge = string;
4134
+ export interface PendingInteractionPayload {
4135
+ interaction_id: string;
4136
+ kind: string;
4137
+ provider_request_id: string;
4138
+ turn_id?: string;
4139
+ title?: string;
4140
+ choices?: string[];
4141
+ decisions?: string[];
4142
+ status: string;
4143
+ created_at: ISODateTime;
4144
+ resolved_at?: ISODateTime;
4145
+ resolution?: string;
4146
+ resolved_by?: string;
4147
+ }
4005
4148
  export interface SessionStatusResponse {
4006
4149
  session_id: string;
4007
4150
  workspace_id: string;
4008
4151
  agent_name: string;
4009
4152
  state: SessionHealthState;
4153
+ badge: Badge;
4010
4154
  health: SessionHealthStatus;
4011
4155
  active_prompt: boolean;
4012
4156
  attachable: boolean;
4013
4157
  eligible_for_wake: boolean;
4014
4158
  ineligibility_reason?: SessionHealthIneligibilityReason;
4015
4159
  wake_state?: HeartbeatWakeStatePayload;
4160
+ pending_interactions: PendingInteractionPayload[];
4016
4161
  updated_at: ISODateTime;
4017
4162
  }
4018
4163
  export interface SessionSummary {
@@ -4518,6 +4663,7 @@ export interface TaskDashboard {
4518
4663
  export interface TaskDashboardParams {
4519
4664
  scope?: Scope;
4520
4665
  workspace?: string;
4666
+ worktree?: string;
4521
4667
  owner_kind?: OwnerKind;
4522
4668
  owner_ref?: string;
4523
4669
  participation_channel?: string;
@@ -4545,6 +4691,7 @@ export interface TaskDependencyReferencePayload {
4545
4691
  created_at: ISODateTime;
4546
4692
  depends_on: TaskReferencePayload;
4547
4693
  }
4694
+ export type ResolvedWorktreeMode = string;
4548
4695
  export type CoordinationMessageKind = string;
4549
4696
  export interface CoordinationChannelPayload {
4550
4697
  id: string;
@@ -4571,6 +4718,9 @@ export interface TaskRunSummaryPayload {
4571
4718
  failure_kind?: string;
4572
4719
  max_attempts: number;
4573
4720
  session_id?: string;
4721
+ worktree_id?: string;
4722
+ resolved_worktree_mode: ResolvedWorktreeMode;
4723
+ resolved_worktree_ref?: string;
4574
4724
  claimed_by?: ActorIdentity;
4575
4725
  claim_token_hash?: string;
4576
4726
  lease_until?: ISODateTime;
@@ -4642,6 +4792,9 @@ export interface TaskRun {
4642
4792
  failure_kind?: string;
4643
4793
  claimed_by?: ActorIdentity;
4644
4794
  session_id?: string;
4795
+ worktree_id?: string;
4796
+ resolved_worktree_mode: ResolvedWorktreeMode;
4797
+ resolved_worktree_ref?: string;
4645
4798
  origin: Origin;
4646
4799
  idempotency_key?: string;
4647
4800
  resolved_network_participation?: NetworkParticipationSpec;
@@ -4707,6 +4860,9 @@ export interface TaskCatalogRunPayload {
4707
4860
  failure_kind?: string;
4708
4861
  max_attempts: number;
4709
4862
  session_id?: string;
4863
+ worktree_id?: string;
4864
+ resolved_worktree_mode: ResolvedWorktreeMode;
4865
+ resolved_worktree_ref?: string;
4710
4866
  claimed_by?: ActorIdentity;
4711
4867
  lease_until?: ISODateTime;
4712
4868
  heartbeat_at?: ISODateTime;
@@ -4765,6 +4921,7 @@ export type CatalogScope = string;
4765
4921
  export interface TaskInboxParams {
4766
4922
  scope?: CatalogScope;
4767
4923
  workspace?: string;
4924
+ worktree?: string;
4768
4925
  owner_kind?: OwnerKind;
4769
4926
  owner_ref?: string;
4770
4927
  lane?: TaskInboxLane;
@@ -5361,6 +5518,7 @@ export interface TasksParams {
5361
5518
  owner_kind?: OwnerKind;
5362
5519
  owner_ref?: string;
5363
5520
  parent_task_id?: string;
5521
+ worktree?: string;
5364
5522
  participation_channel?: string;
5365
5523
  query?: string;
5366
5524
  sort?: CatalogSort;
@@ -5485,6 +5643,7 @@ export interface ToolPostCallPayload {
5485
5643
  agent_name?: string;
5486
5644
  workspace_id?: string;
5487
5645
  workspace?: string;
5646
+ worktree_id?: string;
5488
5647
  acp_session_id?: string;
5489
5648
  state?: string;
5490
5649
  soul_snapshot_id?: string;
@@ -5515,6 +5674,7 @@ export interface ToolPostErrorPayload {
5515
5674
  agent_name?: string;
5516
5675
  workspace_id?: string;
5517
5676
  workspace?: string;
5677
+ worktree_id?: string;
5518
5678
  acp_session_id?: string;
5519
5679
  state?: string;
5520
5680
  soul_snapshot_id?: string;
@@ -5538,6 +5698,7 @@ export interface ToolPreCallPayload {
5538
5698
  agent_name?: string;
5539
5699
  workspace_id?: string;
5540
5700
  workspace?: string;
5701
+ worktree_id?: string;
5541
5702
  acp_session_id?: string;
5542
5703
  state?: string;
5543
5704
  soul_snapshot_id?: string;
@@ -5578,6 +5739,7 @@ export interface TurnEndPayload {
5578
5739
  agent_name?: string;
5579
5740
  workspace_id?: string;
5580
5741
  workspace?: string;
5742
+ worktree_id?: string;
5581
5743
  acp_session_id?: string;
5582
5744
  state?: string;
5583
5745
  soul_snapshot_id?: string;
@@ -5602,6 +5764,7 @@ export interface TurnPayload {
5602
5764
  agent_name?: string;
5603
5765
  workspace_id?: string;
5604
5766
  workspace?: string;
5767
+ worktree_id?: string;
5605
5768
  acp_session_id?: string;
5606
5769
  state?: string;
5607
5770
  soul_snapshot_id?: string;
@@ -5626,6 +5789,7 @@ export interface TurnStartPayload {
5626
5789
  agent_name?: string;
5627
5790
  workspace_id?: string;
5628
5791
  workspace?: string;
5792
+ worktree_id?: string;
5629
5793
  acp_session_id?: string;
5630
5794
  state?: string;
5631
5795
  soul_snapshot_id?: string;
@@ -5740,6 +5904,63 @@ export interface WindowManagerWindowOpenedPayload {
5740
5904
  actor: WindowManagerActor;
5741
5905
  origin?: string;
5742
5906
  }
5907
+ export interface WorktreeControlPatch {
5908
+ deny?: boolean;
5909
+ deny_reason?: string;
5910
+ }
5911
+ export type WorktreeObservationPatch = Record<string, never>;
5912
+ export interface WorktreeObservationPayload {
5913
+ event: HookEvent;
5914
+ timestamp: ISODateTime;
5915
+ worktree_id: string;
5916
+ workspace_id: string;
5917
+ workspace_root?: string;
5918
+ name: string;
5919
+ branch: string;
5920
+ path: string;
5921
+ origin: string;
5922
+ run_id?: string;
5923
+ }
5924
+ export interface WorktreePreCreatePayload {
5925
+ event: HookEvent;
5926
+ timestamp: ISODateTime;
5927
+ worktree_id: string;
5928
+ workspace_id: string;
5929
+ workspace_root?: string;
5930
+ name: string;
5931
+ branch: string;
5932
+ path: string;
5933
+ origin: string;
5934
+ run_id?: string;
5935
+ denied?: boolean;
5936
+ deny_reason?: string;
5937
+ }
5938
+ export interface WorktreeContext {
5939
+ worktree_id: string;
5940
+ workspace_id: string;
5941
+ workspace_root?: string;
5942
+ name: string;
5943
+ branch: string;
5944
+ path: string;
5945
+ origin: string;
5946
+ run_id?: string;
5947
+ }
5948
+ export interface WorktreeRisk {
5949
+ changed_files: number;
5950
+ insertions: number;
5951
+ deletions: number;
5952
+ unpushed_commits: number;
5953
+ exists_on_remote: boolean;
5954
+ }
5955
+ export interface WorktreePreRemovePayload {
5956
+ event: HookEvent;
5957
+ timestamp: ISODateTime;
5958
+ worktree: WorktreeContext;
5959
+ force: boolean;
5960
+ risk: WorktreeRisk;
5961
+ denied?: boolean;
5962
+ deny_reason?: string;
5963
+ }
5743
5964
  export interface HookPayloadByEvent {
5744
5965
  "session.pre_create": SessionPreCreatePayload;
5745
5966
  "session.post_create": SessionPostCreatePayload;
@@ -5817,6 +6038,7 @@ export interface HookPayloadByEvent {
5817
6038
  "spawn.parent_stopped": SpawnParentStoppedPayload;
5818
6039
  "spawn.ttl_expired": SpawnTTLExpiredPayload;
5819
6040
  "spawn.reaped": SpawnReapedPayload;
6041
+ "session.attention.changed": SessionAttentionChangedPayload;
5820
6042
  "network.thread.opened": NetworkThreadOpenedPayload;
5821
6043
  "network.direct_room.opened": NetworkDirectRoomOpenedPayload;
5822
6044
  "network.message.persisted": NetworkMessagePersistedPayload;
@@ -5836,6 +6058,11 @@ export interface HookPayloadByEvent {
5836
6058
  "window_manager.stack.grouped": WindowManagerStackGroupedPayload;
5837
6059
  "window_manager.stack.ungrouped": WindowManagerStackUngroupedPayload;
5838
6060
  "window_manager.stack.activated": WindowManagerStackActivatedPayload;
6061
+ "worktree.pre_create": WorktreePreCreatePayload;
6062
+ "worktree.pre_remove": WorktreePreRemovePayload;
6063
+ "worktree.created": WorktreeObservationPayload;
6064
+ "worktree.adopted": WorktreeObservationPayload;
6065
+ "worktree.removed": WorktreeObservationPayload;
5839
6066
  }
5840
6067
  export interface HookPatchByEvent {
5841
6068
  "session.pre_create": SessionCreatePatch;
@@ -5914,6 +6141,7 @@ export interface HookPatchByEvent {
5914
6141
  "spawn.parent_stopped": SpawnObservationPatch;
5915
6142
  "spawn.ttl_expired": SpawnObservationPatch;
5916
6143
  "spawn.reaped": SpawnObservationPatch;
6144
+ "session.attention.changed": SessionAttentionObservationPatch;
5917
6145
  "network.thread.opened": NetworkObservationPatch;
5918
6146
  "network.direct_room.opened": NetworkObservationPatch;
5919
6147
  "network.message.persisted": NetworkObservationPatch;
@@ -5933,6 +6161,11 @@ export interface HookPatchByEvent {
5933
6161
  "window_manager.stack.grouped": WindowManagerObservationPatch;
5934
6162
  "window_manager.stack.ungrouped": WindowManagerObservationPatch;
5935
6163
  "window_manager.stack.activated": WindowManagerObservationPatch;
6164
+ "worktree.pre_create": WorktreeControlPatch;
6165
+ "worktree.pre_remove": WorktreeControlPatch;
6166
+ "worktree.created": WorktreeObservationPatch;
6167
+ "worktree.adopted": WorktreeObservationPatch;
6168
+ "worktree.removed": WorktreeObservationPatch;
5936
6169
  }
5937
6170
  export interface HostAPIMethodMap {
5938
6171
  "sessions/list": {
@@ -6319,6 +6552,7 @@ export interface HostAPIMethodMap {
6319
6552
  export declare const REQUIRED_METHODS_BY_PROVIDE: {
6320
6553
  readonly "bridge.adapter": readonly ["bridges/deliver", "bridges/targets/snapshot"];
6321
6554
  readonly "connectivity.provider": readonly ["connectivity/establish", "connectivity/status", "connectivity/teardown"];
6555
+ readonly "forge.provider": readonly ["forge/capabilities", "forge/pr_create", "forge/status"];
6322
6556
  readonly "loop.watch_source": readonly ["watch/poll"];
6323
6557
  readonly "memory.backend": readonly ["memory/forget", "memory/recall", "memory/store"];
6324
6558
  readonly "model.source": readonly ["models/list"];