@inferencesh/sdk 0.6.30 → 0.6.48

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 (53) hide show
  1. package/README.md +35 -0
  2. package/dist/agent/actions.js +72 -13
  3. package/dist/agent/api.d.ts +30 -51
  4. package/dist/agent/api.js +129 -154
  5. package/dist/agent/provider.js +18 -1
  6. package/dist/agent/reducer.js +50 -11
  7. package/dist/agent/types.d.ts +34 -1
  8. package/dist/api/agents.d.ts +23 -14
  9. package/dist/api/agents.js +22 -4
  10. package/dist/api/api-keys.d.ts +4 -3
  11. package/dist/api/apps.d.ts +16 -15
  12. package/dist/api/chats.d.ts +14 -9
  13. package/dist/api/chats.js +6 -0
  14. package/dist/api/engines.d.ts +14 -13
  15. package/dist/api/files.d.ts +4 -3
  16. package/dist/api/files.js +2 -2
  17. package/dist/api/flow-runs.d.ts +8 -7
  18. package/dist/api/flows.d.ts +11 -10
  19. package/dist/api/integrations.d.ts +9 -8
  20. package/dist/api/integrations.js +8 -8
  21. package/dist/api/knowledge.d.ts +25 -24
  22. package/dist/api/mcp-servers.d.ts +10 -9
  23. package/dist/api/projects.d.ts +6 -5
  24. package/dist/api/search.d.ts +3 -2
  25. package/dist/api/secrets.d.ts +6 -5
  26. package/dist/api/sessions.d.ts +5 -4
  27. package/dist/api/sessions.js +2 -3
  28. package/dist/api/tasks.d.ts +14 -11
  29. package/dist/api/tasks.js +10 -4
  30. package/dist/api/teams.d.ts +16 -17
  31. package/dist/delta.d.ts +15 -0
  32. package/dist/delta.js +84 -0
  33. package/dist/hook-builder.d.ts +23 -0
  34. package/dist/hook-builder.js +50 -0
  35. package/dist/http/client.d.ts +9 -1
  36. package/dist/http/client.js +12 -3
  37. package/dist/http/response.d.ts +9 -0
  38. package/dist/http/response.js +1 -0
  39. package/dist/http/stream.d.ts +1 -0
  40. package/dist/http/stream.js +8 -3
  41. package/dist/http/streamable.d.ts +3 -1
  42. package/dist/http/streamable.js +10 -1
  43. package/dist/index.d.ts +11 -5
  44. package/dist/index.js +6 -1
  45. package/dist/proxy/index.d.ts +2 -0
  46. package/dist/proxy/index.js +9 -0
  47. package/dist/tool-builder.d.ts +2 -0
  48. package/dist/tool-builder.js +5 -0
  49. package/dist/types.d.ts +1036 -157
  50. package/dist/types.js +246 -30
  51. package/dist/utils.d.ts +13 -0
  52. package/dist/utils.js +43 -3
  53. package/package.json +20 -24
package/dist/types.d.ts CHANGED
@@ -8,6 +8,7 @@ export interface InternalToolsConfig {
8
8
  finish?: boolean;
9
9
  skills?: boolean;
10
10
  host_context?: boolean;
11
+ meta?: boolean;
11
12
  }
12
13
  /**
13
14
  * AgentTool represents a unified tool that can be used by an agent
@@ -198,6 +199,7 @@ export interface AgentVersionDTO extends BaseModelDTO, PermissionModelDTO {
198
199
  skills: SkillConfig[];
199
200
  context?: ContextField[];
200
201
  internal_tools?: InternalToolsConfig;
202
+ hooks?: LifecycleHookConfig[];
201
203
  output_schema?: any;
202
204
  }
203
205
  /**
@@ -229,6 +231,7 @@ export interface AgentConfigInput {
229
231
  skills?: SkillConfig[];
230
232
  context?: ContextField[];
231
233
  internal_tools?: InternalToolsConfig;
234
+ hooks?: LifecycleHookConfig[];
232
235
  output_schema?: any;
233
236
  }
234
237
  /**
@@ -253,6 +256,7 @@ export interface AgentRunDTO extends BaseModelDTO, PermissionModelDTO {
253
256
  interrupt_reason?: InterruptReason;
254
257
  interrupt_tool_id?: string;
255
258
  interrupt_meta?: any;
259
+ tool_invocation_id?: string;
256
260
  trigger_id?: string;
257
261
  metadata?: any;
258
262
  }
@@ -270,6 +274,19 @@ export interface APIError {
270
274
  [key: string]: any;
271
275
  };
272
276
  }
277
+ /**
278
+ * ResponseMessage carries a non-error notice alongside a successful response.
279
+ * Inspired by GraphQL's coexisting data+errors pattern, but for actionable
280
+ * messages (warnings, info) rather than partial failures.
281
+ */
282
+ export interface ResponseMessage {
283
+ level: string;
284
+ code: string;
285
+ message: string;
286
+ meta?: {
287
+ [key: string]: any;
288
+ };
289
+ }
273
290
  /**
274
291
  * ApiAppRunRequest is the request body for /apps/run endpoint.
275
292
  */
@@ -298,7 +315,7 @@ export interface ApiAgentRunRequest {
298
315
  agent?: string;
299
316
  agent_config?: AgentConfigInput;
300
317
  agent_name?: string;
301
- input: ChatTaskInput;
318
+ input: LLMInput;
302
319
  context?: {
303
320
  [key: string]: string;
304
321
  };
@@ -313,7 +330,7 @@ export interface CreateAgentMessageRequest {
313
330
  agent_version_id?: string;
314
331
  agent?: string;
315
332
  tool_call_id?: string;
316
- input: ChatTaskInput;
333
+ input: LLMInput;
317
334
  integration_context?: IntegrationContext;
318
335
  agent_config?: AgentConfigInput;
319
336
  agent_name?: string;
@@ -415,7 +432,10 @@ export interface CheckoutCreateRequest {
415
432
  export interface AuthResponse {
416
433
  user?: UserDTO;
417
434
  session_id: string;
435
+ is_new?: boolean;
418
436
  otp_required?: boolean;
437
+ otp_method?: string;
438
+ challenge_token?: string;
419
439
  redirect_to?: string;
420
440
  provider?: string;
421
441
  }
@@ -469,6 +489,7 @@ export interface SecretCreateRequest {
469
489
  key: string;
470
490
  value: string;
471
491
  description?: string;
492
+ provider?: string;
472
493
  }
473
494
  export interface SecretUpdateRequest {
474
495
  value: string;
@@ -482,6 +503,13 @@ export interface IntegrationConnectRequest {
482
503
  metadata?: {
483
504
  [key: string]: any;
484
505
  };
506
+ /**
507
+ * ConnectionScope is who the resulting credential belongs to:
508
+ * "user" (just me) or "team" (shared with the team — requires team
509
+ * admin). Empty = the provider's default. Distinct from Scopes, which
510
+ * are OAuth permission scopes.
511
+ */
512
+ connection_scope?: CredentialScope;
485
513
  }
486
514
  export interface IntegrationCompleteOAuthRequest {
487
515
  provider: string;
@@ -777,6 +805,16 @@ export declare const ScopeApiKeysRead: Scope;
777
805
  * Empty scopes = full access (for backwards compatibility with existing keys).
778
806
  */
779
807
  export declare const ScopeApiKeysWrite: Scope;
808
+ /**
809
+ * Action-level scopes for Knowledge (includes skills)
810
+ */
811
+ export declare const ScopeKnowledgeRead: Scope;
812
+ /**
813
+ * API Key Scopes - hierarchical permission system.
814
+ * Resource-level scopes (e.g., "agents") imply all action-level scopes (e.g., "agents:read").
815
+ * Empty scopes = full access (for backwards compatibility with existing keys).
816
+ */
817
+ export declare const ScopeKnowledgeWrite: Scope;
780
818
  /**
781
819
  * Action-level scopes for User profile
782
820
  */
@@ -814,6 +852,7 @@ export declare const ScopeGroupSecrets: ScopeGroup;
814
852
  export declare const ScopeGroupIntegrations: ScopeGroup;
815
853
  export declare const ScopeGroupEngines: ScopeGroup;
816
854
  export declare const ScopeGroupApiKeys: ScopeGroup;
855
+ export declare const ScopeGroupKnowledge: ScopeGroup;
817
856
  export declare const ScopeGroupUser: ScopeGroup;
818
857
  export declare const ScopeGroupSettings: ScopeGroup;
819
858
  /**
@@ -1063,6 +1102,7 @@ export interface PublicAppStoreDTO {
1063
1102
  rank: number;
1064
1103
  has_approved_version: boolean;
1065
1104
  page_id?: string;
1105
+ pricing_description?: string;
1066
1106
  }
1067
1107
  /**
1068
1108
  * AuthSessionDTO is a safe representation of AuthSession for API responses.
@@ -1102,6 +1142,7 @@ export interface PermissionModelDTO {
1102
1142
  user?: UserRelationDTO;
1103
1143
  team_id: string;
1104
1144
  team?: TeamRelationDTO;
1145
+ org_id?: string;
1105
1146
  visibility: Visibility;
1106
1147
  }
1107
1148
  /**
@@ -1133,6 +1174,53 @@ export interface AvailabilityResponse {
1133
1174
  */
1134
1175
  reason?: string;
1135
1176
  }
1177
+ /**
1178
+ * BountyProgramDTO is the API representation of a bounty program.
1179
+ */
1180
+ export interface BountyProgramDTO extends BaseModelDTO, PermissionModelDTO {
1181
+ name: string;
1182
+ description: string;
1183
+ amount_microcents: number;
1184
+ grant_type: string;
1185
+ expiry_days: number;
1186
+ max_per_user: number;
1187
+ max_per_day: number;
1188
+ proof_type: string;
1189
+ proof_min_length: number;
1190
+ status: string;
1191
+ notice_text: string;
1192
+ notice_cooldown_hours: number;
1193
+ notice_priority: number;
1194
+ starts_at?: string;
1195
+ ends_at?: string;
1196
+ }
1197
+ /**
1198
+ * BountySubmissionDTO is the API representation of a bounty claim.
1199
+ */
1200
+ export interface BountySubmissionDTO extends BaseModelDTO, PermissionModelDTO {
1201
+ bounty_id: string;
1202
+ resource_id?: string;
1203
+ proof_id: string;
1204
+ proof_ref: string;
1205
+ agent?: string;
1206
+ source?: string;
1207
+ }
1208
+ /**
1209
+ * SubmitBountyRequest is used to claim a bounty reward.
1210
+ */
1211
+ export interface SubmitBountyRequest {
1212
+ bounty_id: string;
1213
+ proof_id: string;
1214
+ agent?: string;
1215
+ source?: string;
1216
+ }
1217
+ /**
1218
+ * SubmitBountyResponse is returned when claiming a bounty.
1219
+ */
1220
+ export interface SubmitBountyResponse {
1221
+ submission: BountySubmissionDTO;
1222
+ granted_amount?: number;
1223
+ }
1136
1224
  /**
1137
1225
  * ChatDTO for API responses
1138
1226
  */
@@ -1154,6 +1242,7 @@ export interface ChatDTO extends BaseModelDTO, PermissionModelDTO {
1154
1242
  chat_messages: ChatMessageDTO[];
1155
1243
  agent_data: ChatData;
1156
1244
  active_run?: AgentRunDTO;
1245
+ pending_interrupts?: InterruptDTO[];
1157
1246
  }
1158
1247
  /**
1159
1248
  * ChatMessageDTO for API responses
@@ -1222,6 +1311,12 @@ export interface CursorListResponse<T extends any> {
1222
1311
  items_per_page: number;
1223
1312
  total_items: number;
1224
1313
  }
1314
+ /**
1315
+ * CountResponse is the response for count endpoints.
1316
+ */
1317
+ export interface CountResponse {
1318
+ count: number;
1319
+ }
1225
1320
  /**
1226
1321
  * EngineConfig holds engine configuration (no gorm tags).
1227
1322
  */
@@ -1419,6 +1514,15 @@ export interface FlowNodeData {
1419
1514
  additional?: any;
1420
1515
  task?: TaskDTO;
1421
1516
  task_id?: string;
1517
+ /**
1518
+ * Primitive node configs (legacy, kept for backward compat)
1519
+ */
1520
+ gate_condition?: GateCondition;
1521
+ selector_config?: SelectorConfig;
1522
+ /**
1523
+ * Unified utility node config (replaces gate_condition/selector_config)
1524
+ */
1525
+ utility?: UtilityConfig;
1422
1526
  }
1423
1527
  /**
1424
1528
  * FlowNodeDataMap maps node IDs to their data
@@ -1489,6 +1593,190 @@ export interface FlowRunDTO extends BaseModelDTO, PermissionModelDTO {
1489
1593
  node_tasks: {
1490
1594
  [key: string]: NodeTaskDTO | undefined;
1491
1595
  };
1596
+ node_statuses?: {
1597
+ [key: string]: GraphNodeStatus;
1598
+ };
1599
+ node_outputs: any;
1600
+ }
1601
+ /**
1602
+ * FlowActionType is the string type for action constants.
1603
+ */
1604
+ export type FlowActionType = string;
1605
+ /**
1606
+ * Flow graph action type constants.
1607
+ */
1608
+ export declare const ActionNodeAdd: FlowActionType;
1609
+ /**
1610
+ * Flow graph action type constants.
1611
+ */
1612
+ export declare const ActionNodeRemove: FlowActionType;
1613
+ /**
1614
+ * Flow graph action type constants.
1615
+ */
1616
+ export declare const ActionNodeMove: FlowActionType;
1617
+ /**
1618
+ * Flow graph action type constants.
1619
+ */
1620
+ export declare const ActionNodeMoveMany: FlowActionType;
1621
+ /**
1622
+ * Flow graph action type constants.
1623
+ */
1624
+ export declare const ActionNodeDuplicate: FlowActionType;
1625
+ /**
1626
+ * Flow graph action type constants.
1627
+ */
1628
+ export declare const ActionNodeRename: FlowActionType;
1629
+ /**
1630
+ * Flow graph action type constants.
1631
+ */
1632
+ export declare const ActionNodeSetApp: FlowActionType;
1633
+ /**
1634
+ * Flow graph action type constants.
1635
+ */
1636
+ export declare const ActionNodeUpdate: FlowActionType;
1637
+ /**
1638
+ * Flow graph action type constants.
1639
+ */
1640
+ export declare const ActionNodeSetInput: FlowActionType;
1641
+ /**
1642
+ * Flow graph action type constants.
1643
+ */
1644
+ export declare const ActionNodeClearInput: FlowActionType;
1645
+ /**
1646
+ * Flow graph action type constants.
1647
+ */
1648
+ export declare const ActionEdgeAdd: FlowActionType;
1649
+ /**
1650
+ * Flow graph action type constants.
1651
+ */
1652
+ export declare const ActionEdgeRemove: FlowActionType;
1653
+ /**
1654
+ * Flow graph action type constants.
1655
+ */
1656
+ export declare const ActionFlowSetInputSchema: FlowActionType;
1657
+ /**
1658
+ * Flow graph action type constants.
1659
+ */
1660
+ export declare const ActionFlowSetOutputSchema: FlowActionType;
1661
+ /**
1662
+ * Flow graph action type constants.
1663
+ */
1664
+ export declare const ActionFlowSetOutputMapping: FlowActionType;
1665
+ /**
1666
+ * Flow graph action type constants.
1667
+ */
1668
+ export declare const ActionFlowRemoveOutputMapping: FlowActionType;
1669
+ /**
1670
+ * Flow graph action type constants.
1671
+ */
1672
+ export declare const ActionFlowRenameOutputField: FlowActionType;
1673
+ /**
1674
+ * Flow graph action type constants.
1675
+ */
1676
+ export declare const ActionUndo: FlowActionType;
1677
+ /**
1678
+ * Flow graph action type constants.
1679
+ */
1680
+ export declare const ActionRedo: FlowActionType;
1681
+ /**
1682
+ * FlowAction represents a single graph mutation.
1683
+ */
1684
+ export interface FlowAction {
1685
+ type: FlowActionType;
1686
+ payload: any;
1687
+ }
1688
+ /**
1689
+ * FlowActionsRequest is the request body for POST /flows/{id}/actions.
1690
+ */
1691
+ export interface FlowActionsRequest {
1692
+ actions: FlowAction[];
1693
+ }
1694
+ /**
1695
+ * FlowActionsResponse is the response from the actions endpoint.
1696
+ */
1697
+ export interface FlowActionsResponse {
1698
+ version: number;
1699
+ actions: FlowAction[];
1700
+ errors?: FlowActionError[];
1701
+ }
1702
+ /**
1703
+ * FlowActionError is an error returned from an action.
1704
+ */
1705
+ export interface FlowActionError {
1706
+ type?: string;
1707
+ message: string;
1708
+ }
1709
+ export interface AddNodePayload {
1710
+ id: string;
1711
+ type: string;
1712
+ position: FlowNodePosition;
1713
+ data: FlowNodeData;
1714
+ }
1715
+ export interface RemoveNodePayload {
1716
+ id: string;
1717
+ }
1718
+ export interface MoveNodePayload {
1719
+ id: string;
1720
+ position: FlowNodePosition;
1721
+ }
1722
+ export interface MoveNodesPayload {
1723
+ positions: {
1724
+ [key: string]: FlowNodePosition;
1725
+ };
1726
+ }
1727
+ export interface DuplicateNodePayload {
1728
+ source_id: string;
1729
+ new_id: string;
1730
+ offset: FlowNodePosition;
1731
+ }
1732
+ export interface RenameNodePayload {
1733
+ old_id: string;
1734
+ new_id: string;
1735
+ }
1736
+ export interface SetNodeAppPayload {
1737
+ node_id: string;
1738
+ app_id: string;
1739
+ app_version_id: string;
1740
+ function: string;
1741
+ }
1742
+ export interface UpdateNodeDataPayload {
1743
+ node_id: string;
1744
+ patch: {
1745
+ [key: string]: any;
1746
+ };
1747
+ }
1748
+ export interface SetInputPayload {
1749
+ node_id: string;
1750
+ input_key: string;
1751
+ input: FlowRunInput;
1752
+ }
1753
+ export interface ClearInputPayload {
1754
+ node_id: string;
1755
+ input_key: string;
1756
+ }
1757
+ export interface AddEdgePayload {
1758
+ id: string;
1759
+ source: string;
1760
+ target: string;
1761
+ source_handle?: string;
1762
+ target_handle?: string;
1763
+ }
1764
+ export interface RemoveEdgePayload {
1765
+ id: string;
1766
+ }
1767
+ export interface SetSchemaPayload {
1768
+ schema: any;
1769
+ }
1770
+ export interface SetOutputMappingPayload {
1771
+ field: string;
1772
+ mapping: OutputFieldMapping;
1773
+ }
1774
+ export interface RemoveOutputMappingPayload {
1775
+ field: string;
1776
+ }
1777
+ export interface RenameOutputFieldPayload {
1778
+ old_field: string;
1779
+ new_field: string;
1492
1780
  }
1493
1781
  /**
1494
1782
  * GraphNodeDTO is the API representation of a graph node
@@ -1596,6 +1884,7 @@ export interface InstanceTypeBootTime {
1596
1884
  */
1597
1885
  export interface IntegrationDTO extends BaseModelDTO, PermissionModelDTO {
1598
1886
  scope: IntegrationScope;
1887
+ grant?: IntegrationGrant;
1599
1888
  provider: IntegrationProvider;
1600
1889
  type: IntegrationAuthType;
1601
1890
  auth: IntegrationAuthType;
@@ -1631,6 +1920,7 @@ export interface IntegrationConfigDTO {
1631
1920
  allows_byok: boolean;
1632
1921
  available: boolean;
1633
1922
  has_managed: boolean;
1923
+ grant?: IntegrationGrant;
1634
1924
  integration?: IntegrationDTO;
1635
1925
  }
1636
1926
  /**
@@ -1643,6 +1933,20 @@ export interface SecretFieldConfig {
1643
1933
  sensitive: boolean;
1644
1934
  optional: boolean;
1645
1935
  }
1936
+ export interface InterruptDTO extends BaseModelDTO, PermissionModelDTO {
1937
+ run_id: string;
1938
+ chat_id: string;
1939
+ reason: InterruptReason;
1940
+ source: string;
1941
+ resource_id?: string;
1942
+ resource_type?: InterruptResourceType;
1943
+ status: InterruptStatus;
1944
+ resolution?: InterruptResolution;
1945
+ resolved_at?: string;
1946
+ resolved_data?: any;
1947
+ expires_at?: string;
1948
+ meta?: any;
1949
+ }
1646
1950
  /**
1647
1951
  * KnowledgeFile represents a file in a knowledge entry
1648
1952
  */
@@ -1711,6 +2015,8 @@ export interface KnowledgeVersionDTO extends BaseModelDTO {
1711
2015
  metadata?: {
1712
2016
  [key: string]: string;
1713
2017
  };
2018
+ origin?: string;
2019
+ generated_by?: string;
1714
2020
  source_url?: string;
1715
2021
  mutation_type?: string;
1716
2022
  version_notes?: string;
@@ -1786,6 +2092,77 @@ export interface SkillStoreListingDTO {
1786
2092
  uses: number;
1787
2093
  tags?: string[];
1788
2094
  }
2095
+ /**
2096
+ * LifecycleHookConfig registers a handler for an agent lifecycle event.
2097
+ * Stored on AgentVersion alongside Tools and Skills.
2098
+ */
2099
+ export interface LifecycleHookConfig {
2100
+ event: HookEvent;
2101
+ type: HookHandlerType;
2102
+ handler?: string;
2103
+ async?: boolean;
2104
+ timeout?: number;
2105
+ /**
2106
+ * Gate-specific fields (type: "gate")
2107
+ */
2108
+ default_resolution?: InterruptResolution;
2109
+ }
2110
+ /**
2111
+ * LifecycleHookPayload is sent to hook handlers on lifecycle events.
2112
+ */
2113
+ export interface LifecycleHookPayload {
2114
+ event: HookEvent;
2115
+ timestamp: string;
2116
+ agent_id: string;
2117
+ chat_id: string;
2118
+ run_id?: string;
2119
+ turn_count: number;
2120
+ data?: any;
2121
+ }
2122
+ /**
2123
+ * LifecycleHookResponse is returned by hook handlers.
2124
+ * All fields are optional — an empty 200 response is equivalent to {decision: "allow"}.
2125
+ */
2126
+ export interface LifecycleHookResponse {
2127
+ inject?: ContextInjection;
2128
+ decision?: HookDecision;
2129
+ reason?: string;
2130
+ override?: any;
2131
+ system?: string;
2132
+ }
2133
+ /**
2134
+ * ContextInjection adds ephemeral content to the agent's context window.
2135
+ * Injections are stored as ChatMessages and filtered at context-build time.
2136
+ */
2137
+ export interface ContextInjection {
2138
+ content: string;
2139
+ role?: string;
2140
+ ttl_turns?: number;
2141
+ dedup_key?: string;
2142
+ }
2143
+ /**
2144
+ * ToolCallEventData is the typed payload for agent.tool_call events.
2145
+ */
2146
+ export interface ToolCallEventData {
2147
+ tool: string;
2148
+ arguments?: {
2149
+ [key: string]: any;
2150
+ };
2151
+ }
2152
+ /**
2153
+ * ToolResultEventData is the typed payload for agent.tool_result events.
2154
+ */
2155
+ export interface ToolResultEventData {
2156
+ tool: string;
2157
+ status: string;
2158
+ result?: string;
2159
+ }
2160
+ /**
2161
+ * ErrorEventData is the typed payload for agent.error events.
2162
+ */
2163
+ export interface ErrorEventData {
2164
+ error: string;
2165
+ }
1789
2166
  /**
1790
2167
  * ElicitationCapability advertises which elicitation modes the client handles.
1791
2168
  * An empty struct is equivalent to form-only for backward compatibility.
@@ -1951,7 +2328,12 @@ export type StringSlice = string[];
1951
2328
  */
1952
2329
  export interface MCPServerDTO {
1953
2330
  id: string;
1954
- PermissionModelDTO: PermissionModelDTO;
2331
+ user_id: string;
2332
+ user: UserRelationDTO;
2333
+ team_id: string;
2334
+ team: TeamRelationDTO;
2335
+ org_id?: string;
2336
+ visibility: Visibility;
1955
2337
  slug: string;
1956
2338
  name: string;
1957
2339
  description: string;
@@ -1961,6 +2343,7 @@ export interface MCPServerDTO {
1961
2343
  oauth_client_id?: string;
1962
2344
  default_scopes: StringSlice;
1963
2345
  documentation_url: string;
2346
+ connection_status?: string;
1964
2347
  }
1965
2348
  /**
1966
2349
  * NotificationDTO is the data transfer object
@@ -2028,6 +2411,9 @@ export interface PageMetadata {
2028
2411
  type?: string;
2029
2412
  icon?: string;
2030
2413
  hide_from_nav?: boolean;
2414
+ action_url?: string;
2415
+ action_label?: string;
2416
+ display_mode?: string;
2031
2417
  /**
2032
2418
  * PublishAt is when a scheduled page goes live. Only meaningful while the
2033
2419
  * page's status is PageStatusScheduled.
@@ -2179,6 +2565,8 @@ export interface KnowledgeVersionInput {
2179
2565
  metadata?: {
2180
2566
  [key: string]: string;
2181
2567
  };
2568
+ origin?: string;
2569
+ generated_by?: string;
2182
2570
  source_url?: string;
2183
2571
  mutation_type?: string;
2184
2572
  version_notes?: string;
@@ -2285,6 +2673,7 @@ export interface SuggestRequest {
2285
2673
  category?: string;
2286
2674
  agent?: boolean;
2287
2675
  scope?: string[];
2676
+ origin?: string;
2288
2677
  }
2289
2678
  /**
2290
2679
  * SuggestResponse is the output of the suggest endpoint.
@@ -2292,6 +2681,7 @@ export interface SuggestRequest {
2292
2681
  export interface SuggestResponse {
2293
2682
  query: string;
2294
2683
  results: SuggestResult[];
2684
+ impression_id?: string;
2295
2685
  }
2296
2686
  /**
2297
2687
  * SuggestResult is a single result item from the suggest endpoint.
@@ -2362,6 +2752,17 @@ export interface CheckRequirementsResponse {
2362
2752
  satisfied: boolean;
2363
2753
  errors?: RequirementError[];
2364
2754
  }
2755
+ export interface ResourceShareDTO extends BaseModelDTO {
2756
+ resource_id: string;
2757
+ resource_type: string;
2758
+ user_id: string;
2759
+ user?: UserRelationDTO;
2760
+ permission: Permission;
2761
+ }
2762
+ export interface ShareRequest {
2763
+ user_id: string;
2764
+ permission: Permission;
2765
+ }
2365
2766
  /**
2366
2767
  * SDKTypes is a phantom type for gotypegen dependency tracing.
2367
2768
  * Types listed here (and their transitive dependencies) are included
@@ -2379,6 +2780,22 @@ export interface SecretDTO extends BaseModelDTO, PermissionModelDTO {
2379
2780
  description?: string;
2380
2781
  scope?: SecretScope;
2381
2782
  }
2783
+ /**
2784
+ * MeStatsResponse is returned by GET /me/stats.
2785
+ */
2786
+ export interface MeStatsResponse {
2787
+ knowledge_count: number;
2788
+ skills_count: number;
2789
+ extracted: StatBuckets;
2790
+ }
2791
+ /**
2792
+ * StatBuckets holds time-windowed counts.
2793
+ */
2794
+ export interface StatBuckets {
2795
+ today: number;
2796
+ this_week: number;
2797
+ all_time: number;
2798
+ }
2382
2799
  /**
2383
2800
  * SubscriptionDTO for API responses
2384
2801
  */
@@ -2672,6 +3089,18 @@ export interface TeamInviteCreateRequest {
2672
3089
  email: string;
2673
3090
  role: TeamRole;
2674
3091
  }
3092
+ export interface TelemetryReportDTO extends BaseModelDTO, PermissionModelDTO {
3093
+ ip: string;
3094
+ level: number;
3095
+ payload: {
3096
+ [key: string]: any;
3097
+ };
3098
+ }
3099
+ export interface SubmitTelemetryRequest {
3100
+ payload: {
3101
+ [key: string]: any;
3102
+ };
3103
+ }
2675
3104
  /**
2676
3105
  * ToolInvocationFunction contains the function details for a tool invocation
2677
3106
  */
@@ -2744,6 +3173,9 @@ export interface UserDTO extends BaseModelDTO {
2744
3173
  name: string;
2745
3174
  full_name: string;
2746
3175
  avatar_url: string;
3176
+ banned_at?: string;
3177
+ ban_note?: string;
3178
+ totp_enabled: boolean;
2747
3179
  metadata?: UserMetadataDTO;
2748
3180
  }
2749
3181
  /**
@@ -2770,86 +3202,125 @@ export interface UserMetadataDTO {
2770
3202
  terms_version: string;
2771
3203
  }
2772
3204
  /**
2773
- * WidgetAction represents an action triggered by a widget button
2774
- */
2775
- export interface WidgetAction {
2776
- type: string;
2777
- payload?: {
2778
- [key: string]: any;
2779
- };
2780
- }
2781
- /**
2782
- * WidgetActionButton represents a button in a widget's action bar
2783
- */
2784
- export interface WidgetActionButton {
2785
- label: string;
2786
- action: WidgetAction;
3205
+ * Widget is an A2UI surface stored on a ToolInvocation.
3206
+ * Alias of shared.A2UISurface so the type generation pipeline picks it up.
3207
+ */
3208
+ export type Widget = A2UISurface;
3209
+ export type A2UIComponentType = string;
3210
+ export declare const A2UIRow: A2UIComponentType;
3211
+ export declare const A2UIColumn: A2UIComponentType;
3212
+ export declare const A2UIList: A2UIComponentType;
3213
+ export declare const A2UIText: A2UIComponentType;
3214
+ export declare const A2UIImage: A2UIComponentType;
3215
+ export declare const A2UIIcon: A2UIComponentType;
3216
+ export declare const A2UIDivider: A2UIComponentType;
3217
+ export declare const A2UIButton: A2UIComponentType;
3218
+ export declare const A2UITextField: A2UIComponentType;
3219
+ export declare const A2UICheckBox: A2UIComponentType;
3220
+ export declare const A2UISlider: A2UIComponentType;
3221
+ export declare const A2UIDateTimeInput: A2UIComponentType;
3222
+ export declare const A2UIChoicePicker: A2UIComponentType;
3223
+ export declare const A2UICard: A2UIComponentType;
3224
+ export declare const A2UIModal: A2UIComponentType;
3225
+ export declare const A2UITabs: A2UIComponentType;
3226
+ /**
3227
+ * Extensions (inferencesh/v1 catalog)
3228
+ */
3229
+ export declare const A2UIBadge: A2UIComponentType;
3230
+ export declare const A2UISpacer: A2UIComponentType;
3231
+ export declare const A2UIChart: A2UIComponentType;
3232
+ export declare const A2UIForm: A2UIComponentType;
3233
+ /**
3234
+ * A2UIComponent is the universal component representation.
3235
+ * Children are string IDs (flat adjacency list), not nested objects.
3236
+ */
3237
+ export interface A2UIComponent {
3238
+ id: string;
3239
+ component: A2UIComponentType;
3240
+ /**
3241
+ * Layout
3242
+ */
3243
+ children?: string[];
3244
+ justify?: string;
3245
+ align?: string;
3246
+ direction?: string;
3247
+ gap?: number;
3248
+ /**
3249
+ * Text
3250
+ */
3251
+ text?: A2UIBoundValue;
2787
3252
  variant?: string;
2788
- }
2789
- /**
2790
- * WidgetNode represents a UI element in a widget (text, input, select, etc.)
2791
- */
2792
- export interface WidgetNode {
2793
- type: WidgetNodeType;
2794
- value?: string;
2795
- src?: string;
2796
- alt?: string;
3253
+ /**
3254
+ * Image
3255
+ */
3256
+ url?: A2UIBoundValue;
3257
+ fit?: string;
3258
+ /**
3259
+ * Icon
3260
+ */
3261
+ name?: A2UIBoundValue;
3262
+ /**
3263
+ * Divider
3264
+ */
3265
+ axis?: string;
3266
+ /**
3267
+ * Button / Card
3268
+ */
3269
+ child?: string;
3270
+ primary?: boolean;
3271
+ action?: A2UIAction;
3272
+ /**
3273
+ * TextField
3274
+ */
2797
3275
  label?: string;
2798
- name?: string;
3276
+ value?: A2UIBoundValue;
3277
+ textFieldType?: string;
3278
+ validationRegexp?: string;
2799
3279
  placeholder?: string;
2800
- defaultValue?: string;
2801
- variant?: string;
2802
- action?: WidgetAction;
2803
- options?: WidgetSelectOption[];
2804
- defaultChecked?: boolean;
2805
- children?: WidgetNode[];
2806
- gap?: number;
3280
+ rows?: number;
2807
3281
  /**
2808
- * Layout props (Box, Row, Col, Form)
3282
+ * Slider
2809
3283
  */
2810
- align?: string;
2811
- justify?: string;
2812
- padding?: any;
2813
- background?: any;
2814
- radius?: string;
2815
- direction?: string;
2816
- wrap?: string;
2817
- flex?: any;
3284
+ minValue?: number;
3285
+ maxValue?: number;
2818
3286
  /**
2819
- * Typography props (Text, Title, Caption, Label)
3287
+ * DateTimeInput
2820
3288
  */
2821
- size?: string;
2822
- weight?: string;
2823
- color?: any;
2824
- textAlign?: string;
2825
- truncate?: boolean;
2826
- maxLines?: number;
3289
+ enableDate?: boolean;
3290
+ enableTime?: boolean;
2827
3291
  /**
2828
- * Control props (Input, Textarea, Select, Checkbox, RadioGroup, DatePicker, Button)
3292
+ * ChoicePicker
2829
3293
  */
3294
+ options?: A2UIChoiceOption[];
3295
+ selections?: A2UIBoundValue;
3296
+ maxAllowedSelections?: number;
3297
+ /**
3298
+ * Modal
3299
+ */
3300
+ entryPointChild?: string;
3301
+ contentChild?: string;
3302
+ /**
3303
+ * Tabs
3304
+ */
3305
+ tabItems?: A2UITabItem[];
3306
+ /**
3307
+ * Common
3308
+ */
3309
+ accessibility?: A2UIAccessibility;
3310
+ weight?: number;
2830
3311
  disabled?: boolean;
2831
3312
  required?: boolean;
2832
- rows?: number;
2833
- fieldName?: string;
2834
- submit?: boolean;
2835
- pattern?: string;
2836
- min?: string;
2837
- max?: string;
2838
- clearable?: boolean;
2839
3313
  /**
2840
- * Action handler for buttons (form data is collected locally and sent with action)
3314
+ * Extension: Badge
2841
3315
  */
2842
- onClickAction?: WidgetAction;
3316
+ badgeLabel?: string;
3317
+ badgeVariant?: string;
2843
3318
  /**
2844
- * Content props (Icon, Spacer, Divider, Chart)
3319
+ * Extension: Spacer
2845
3320
  */
2846
- iconName?: string;
2847
- spacing?: any;
2848
3321
  minSize?: any;
2849
- height?: any;
2850
- width?: any;
2851
3322
  /**
2852
- * Chart specific props
3323
+ * Extension: Chart
2853
3324
  */
2854
3325
  chartData?: any;
2855
3326
  chartSeries?: any;
@@ -2858,34 +3329,175 @@ export interface WidgetNode {
2858
3329
  showLegend?: boolean;
2859
3330
  showTooltip?: boolean;
2860
3331
  /**
2861
- * Form-specific props
3332
+ * Extension: Form
2862
3333
  */
2863
- onSubmitAction?: WidgetAction;
2864
- /**
2865
- * Data binding (deprecated - use templates instead)
2866
- */
2867
- dataKey?: string;
3334
+ onSubmitAction?: A2UIAction;
2868
3335
  }
2869
3336
  /**
2870
- * WidgetSelectOption represents an option in a select widget
3337
+ * A2UIBoundValue is either a literal or a data model path reference.
2871
3338
  */
2872
- export interface WidgetSelectOption {
3339
+ export interface A2UIBoundValue {
3340
+ path?: string;
3341
+ }
3342
+ export interface A2UIAction {
3343
+ type: string;
3344
+ payload?: any;
3345
+ }
3346
+ export interface A2UIChoiceOption {
2873
3347
  label: string;
2874
3348
  value: string;
2875
3349
  }
3350
+ export interface A2UITabItem {
3351
+ title: string;
3352
+ child: string;
3353
+ }
3354
+ export interface A2UIAccessibility {
3355
+ label?: string;
3356
+ description?: string;
3357
+ }
2876
3358
  /**
2877
- * Widget represents an interactive widget for display in chat
2878
- * Type is either "ui" (structured nodes) or "html" (raw HTML)
2879
- * For "ui" widgets, data-bound nodes read values from ToolInvocation.Data
3359
+ * A2UISurface is the complete renderable state for a widget.
2880
3360
  */
2881
- export interface Widget {
2882
- type: string;
2883
- interactive?: boolean;
2884
- title?: string;
2885
- html?: string;
2886
- json?: string;
2887
- children?: WidgetNode[];
2888
- actions?: WidgetActionButton[];
3361
+ export interface A2UISurface {
3362
+ version: string;
3363
+ surfaceId: string;
3364
+ catalogId: string;
3365
+ components: A2UIComponent[];
3366
+ dataModel?: any;
3367
+ }
3368
+ /**
3369
+ * AgentEventType identifies what happened in an agent run.
3370
+ * These are the backbone protocol events — every consumer (A2A, SDK, frontend)
3371
+ * projects from this set.
3372
+ */
3373
+ export type AgentEventType = string;
3374
+ /**
3375
+ * Run lifecycle
3376
+ */
3377
+ export declare const AgentEventRunStarted: AgentEventType;
3378
+ export declare const AgentEventRunStateChanged: AgentEventType;
3379
+ /**
3380
+ * Turn lifecycle
3381
+ */
3382
+ export declare const AgentEventTurnStarted: AgentEventType;
3383
+ export declare const AgentEventTurnCompleted: AgentEventType;
3384
+ /**
3385
+ * Content streaming — structural wrapper; high-frequency token deltas
3386
+ * still flow via the existing DeltaEvent channel for efficiency.
3387
+ */
3388
+ export declare const AgentEventContentDelta: AgentEventType;
3389
+ /**
3390
+ * Tool lifecycle
3391
+ */
3392
+ export declare const AgentEventToolStarted: AgentEventType;
3393
+ export declare const AgentEventToolCompleted: AgentEventType;
3394
+ /**
3395
+ * Approval flow
3396
+ */
3397
+ export declare const AgentEventApprovalRequired: AgentEventType;
3398
+ export declare const AgentEventApprovalResolved: AgentEventType;
3399
+ /**
3400
+ * Hook lifecycle
3401
+ */
3402
+ export declare const AgentEventHookExecuted: AgentEventType;
3403
+ /**
3404
+ * Usage
3405
+ */
3406
+ export declare const AgentEventUsageUpdated: AgentEventType;
3407
+ /**
3408
+ * Context management
3409
+ */
3410
+ export declare const AgentEventContextCompacted: AgentEventType;
3411
+ /**
3412
+ * Errors
3413
+ */
3414
+ export declare const AgentEventError: AgentEventType;
3415
+ /**
3416
+ * AgentEvent is the backbone protocol event for agent runs.
3417
+ * Published to "runs:<runID>" and "chats:<chatID>" keys on the event bus.
3418
+ */
3419
+ export interface AgentEvent {
3420
+ id: string;
3421
+ type: AgentEventType;
3422
+ run_id: string;
3423
+ chat_id: string;
3424
+ agent_id?: string;
3425
+ timestamp: string;
3426
+ payload?: any;
3427
+ }
3428
+ export interface RunStartedPayload {
3429
+ agent_id: string;
3430
+ agent_version_id?: string;
3431
+ user_message_id?: string;
3432
+ }
3433
+ export interface RunStateChangedPayload {
3434
+ from_state: AgentRunState;
3435
+ to_state: AgentRunState;
3436
+ error?: string;
3437
+ }
3438
+ export interface TurnStartedPayload {
3439
+ turn_index: number;
3440
+ model?: string;
3441
+ }
3442
+ export interface TurnCompletedPayload {
3443
+ turn_index: number;
3444
+ tool_count: number;
3445
+ has_output: boolean;
3446
+ stop_reason?: string;
3447
+ }
3448
+ export interface ContentDeltaPayload {
3449
+ kind: ContentDeltaKind;
3450
+ delta: string;
3451
+ }
3452
+ export type ContentDeltaKind = string;
3453
+ export declare const ContentDeltaText: ContentDeltaKind;
3454
+ export declare const ContentDeltaReasoning: ContentDeltaKind;
3455
+ export interface ToolStartedPayload {
3456
+ tool_invocation_id: string;
3457
+ tool_name: string;
3458
+ tool_type?: ToolType;
3459
+ display_name?: string;
3460
+ arguments?: StringEncodedMap;
3461
+ }
3462
+ export interface ToolCompletedPayload {
3463
+ tool_invocation_id: string;
3464
+ tool_name: string;
3465
+ status: ToolInvocationStatus;
3466
+ result?: string;
3467
+ duration_ms?: number;
3468
+ }
3469
+ export interface ApprovalRequiredPayload {
3470
+ tool_invocation_id: string;
3471
+ tool_name: string;
3472
+ arguments?: StringEncodedMap;
3473
+ reason: InterruptReason;
3474
+ }
3475
+ export interface ApprovalResolvedPayload {
3476
+ tool_invocation_id: string;
3477
+ tool_name: string;
3478
+ decision: string;
3479
+ reason?: string;
3480
+ }
3481
+ export interface HookExecutedPayload {
3482
+ hook_event: HookEvent;
3483
+ decision: HookDecision;
3484
+ reason?: string;
3485
+ duration_ms?: number;
3486
+ }
3487
+ export interface UsageUpdatedPayload {
3488
+ prompt_tokens: number;
3489
+ completion_tokens: number;
3490
+ total_tokens: number;
3491
+ reasoning_tokens?: number;
3492
+ cost_usd?: number;
3493
+ }
3494
+ export interface ContextCompactedPayload {
3495
+ before_tokens: number;
3496
+ after_tokens: number;
3497
+ }
3498
+ export interface ErrorPayload {
3499
+ message: string;
3500
+ code?: string;
2889
3501
  }
2890
3502
  /**
2891
3503
  * AgentRunState tracks the lifecycle of an agent run (one user→agent turn).
@@ -2910,6 +3522,7 @@ export declare const InterruptReasonClientTool: InterruptReason;
2910
3522
  export declare const InterruptReasonWidget: InterruptReason;
2911
3523
  export declare const InterruptReasonAuth: InterruptReason;
2912
3524
  export declare const InterruptReasonConfirmation: InterruptReason;
3525
+ export declare const InterruptReasonHookGate: InterruptReason;
2913
3526
  export type AppCategory = string;
2914
3527
  export declare const AppCategoryImage: AppCategory;
2915
3528
  export declare const AppCategoryVideo: AppCategory;
@@ -2936,8 +3549,20 @@ export declare const GPUTypeApple: GPUType;
2936
3549
  */
2937
3550
  export type Visibility = string;
2938
3551
  export declare const VisibilityPrivate: Visibility;
3552
+ export declare const VisibilityTeam: Visibility;
3553
+ /**
3554
+ * VisibilityOrg sits between team and public: visible to every member of
3555
+ * every team in the owning team's org (INF-795 Phase 2).
3556
+ */
3557
+ export declare const VisibilityOrg: Visibility;
2939
3558
  export declare const VisibilityPublic: Visibility;
2940
3559
  export declare const VisibilityUnlisted: Visibility;
3560
+ /**
3561
+ * Permission represents a permission level for access checks.
3562
+ */
3563
+ export type Permission = string;
3564
+ export declare const PermRead: Permission;
3565
+ export declare const PermWrite: Permission;
2941
3566
  export type SubscriptionStatus = string;
2942
3567
  export declare const SubscriptionStatusTrialing: SubscriptionStatus;
2943
3568
  export declare const SubscriptionStatusActive: SubscriptionStatus;
@@ -2973,12 +3598,22 @@ export declare const PlanStepStatusInProgress: PlanStepStatus;
2973
3598
  export declare const PlanStepStatusCompleted: PlanStepStatus;
2974
3599
  export declare const PlanStepStatusCancelled: PlanStepStatus;
2975
3600
  export type ChatMessageRole = string;
3601
+ /**
3602
+ * LLM wire-protocol roles
3603
+ */
2976
3604
  export declare const ChatMessageRoleSystem: ChatMessageRole;
2977
3605
  export declare const ChatMessageRoleUser: ChatMessageRole;
2978
3606
  export declare const ChatMessageRoleAssistant: ChatMessageRole;
2979
3607
  export declare const ChatMessageRoleTool: ChatMessageRole;
3608
+ /**
3609
+ * Internal bookkeeping roles — never sent to the LLM provider.
3610
+ * BuildContext converts these to system messages or skips them.
3611
+ */
3612
+ export declare const ChatMessageRoleInjection: ChatMessageRole;
3613
+ export declare const ChatMessageRoleCompaction: ChatMessageRole;
2980
3614
  export type ChatMessageStatus = string;
2981
3615
  export declare const ChatMessageStatusPending: ChatMessageStatus;
3616
+ export declare const ChatMessageStatusQueued: ChatMessageStatus;
2982
3617
  export declare const ChatMessageStatusReady: ChatMessageStatus;
2983
3618
  export declare const ChatMessageStatusFailed: ChatMessageStatus;
2984
3619
  export declare const ChatMessageStatusCancelled: ChatMessageStatus;
@@ -3029,46 +3664,6 @@ export interface IntegrationContext {
3029
3664
  integration_type?: IntegrationType;
3030
3665
  integration_metadata?: any;
3031
3666
  }
3032
- /**
3033
- * ChatTaskInput is the input envelope for a chat LLM task
3034
- */
3035
- export interface ChatTaskInput {
3036
- model?: string;
3037
- context_size: number;
3038
- temperature?: number;
3039
- top_p?: number;
3040
- reasoning_effort?: string;
3041
- reasoning_max_tokens?: number;
3042
- system_prompt: string;
3043
- context: ChatTaskContextMessage[];
3044
- role?: ChatMessageRole;
3045
- text?: string;
3046
- reasoning?: string;
3047
- /**
3048
- * Attachments is the SDK input field with full file metadata
3049
- */
3050
- attachments?: FileRef[];
3051
- /**
3052
- * Images and Files are internal fields for task workers (filled from Attachments or context)
3053
- */
3054
- images?: string[];
3055
- files?: string[];
3056
- tools?: Tool[];
3057
- tool_call_id?: string;
3058
- }
3059
- /**
3060
- * ChatTaskContextMessage represents a message in the chat context for LLM tasks
3061
- */
3062
- export interface ChatTaskContextMessage {
3063
- role: ChatMessageRole;
3064
- text?: string;
3065
- reasoning?: string;
3066
- images?: string[];
3067
- files?: string[];
3068
- tools?: Tool[];
3069
- tool_calls?: ToolCall[];
3070
- tool_call_id?: string;
3071
- }
3072
3667
  export type StringEncodedMap = {
3073
3668
  [key: string]: any;
3074
3669
  };
@@ -3172,6 +3767,22 @@ export interface OutputFieldMapping {
3172
3767
  export type OutputMappings = {
3173
3768
  [key: string]: OutputFieldMapping;
3174
3769
  };
3770
+ /**
3771
+ * GateCondition defines a simple boolean condition for gate nodes.
3772
+ */
3773
+ export interface GateCondition {
3774
+ field: string;
3775
+ operator: string;
3776
+ value: any;
3777
+ }
3778
+ /**
3779
+ * SelectorConfig defines how to pick element(s) from an array.
3780
+ */
3781
+ export interface SelectorConfig {
3782
+ field: string;
3783
+ mode: string;
3784
+ index?: number;
3785
+ }
3175
3786
  export type GraphNodeType = string;
3176
3787
  export declare const GraphNodeTypeUnknown: GraphNodeType;
3177
3788
  export declare const GraphNodeTypeJoin: GraphNodeType;
@@ -3217,6 +3828,251 @@ export declare const GraphEdgeTypeReferences: GraphEdgeType;
3217
3828
  export declare const GraphEdgeTypeSupersedes: GraphEdgeType;
3218
3829
  export declare const GraphEdgeTypeInput: GraphEdgeType;
3219
3830
  export declare const GraphEdgeTypeOutput: GraphEdgeType;
3831
+ /**
3832
+ * InterruptStatus tracks the lifecycle of an interrupt gate.
3833
+ */
3834
+ export type InterruptStatus = string;
3835
+ export declare const InterruptStatusPending: InterruptStatus;
3836
+ export declare const InterruptStatusResolved: InterruptStatus;
3837
+ export declare const InterruptStatusExpired: InterruptStatus;
3838
+ export declare const InterruptStatusCancelled: InterruptStatus;
3839
+ /**
3840
+ * InterruptResolution records how a pending interrupt was resolved.
3841
+ */
3842
+ export type InterruptResolution = string;
3843
+ export declare const InterruptResolutionAllow: InterruptResolution;
3844
+ export declare const InterruptResolutionDeny: InterruptResolution;
3845
+ /**
3846
+ * InterruptResourceType identifies the kind of resource an interrupt gates.
3847
+ */
3848
+ export type InterruptResourceType = string;
3849
+ export declare const InterruptResourceToolInvocation: InterruptResourceType;
3850
+ export declare const InterruptResourceHookEvent: InterruptResourceType;
3851
+ /**
3852
+ * HookEvent is a lifecycle event in the agent conversation loop.
3853
+ * Events fire at well-defined points in the turn cycle, giving external
3854
+ * handlers the ability to observe, inject context, or halt execution.
3855
+ */
3856
+ export type HookEvent = string;
3857
+ export declare const HookEventAgentStart: HookEvent;
3858
+ export declare const HookEventTurnStart: HookEvent;
3859
+ export declare const HookEventToolCall: HookEvent;
3860
+ export declare const HookEventToolResult: HookEvent;
3861
+ export declare const HookEventTurnComplete: HookEvent;
3862
+ export declare const HookEventAgentError: HookEvent;
3863
+ export declare const HookEventAgentComplete: HookEvent;
3864
+ export declare const HookEventAgentIdle: HookEvent;
3865
+ export declare const HookEventPreCompact: HookEvent;
3866
+ export declare const HookEventPostCompact: HookEvent;
3867
+ /**
3868
+ * HookEventDefinition describes a lifecycle hook event and its capabilities.
3869
+ */
3870
+ export interface HookEventDefinition {
3871
+ event: HookEvent;
3872
+ description: string;
3873
+ can_gate: boolean;
3874
+ }
3875
+ /**
3876
+ * HookDecision is the handler's verdict on whether execution should continue.
3877
+ */
3878
+ export type HookDecision = string;
3879
+ export declare const HookDecisionAllow: HookDecision;
3880
+ export declare const HookDecisionDeny: HookDecision;
3881
+ export declare const HookDecisionStop: HookDecision;
3882
+ export declare const HookDecisionSuspend: HookDecision;
3883
+ /**
3884
+ * HookHandlerType distinguishes how a lifecycle hook is executed.
3885
+ */
3886
+ export type HookHandlerType = string;
3887
+ export declare const HookHandlerWebhook: HookHandlerType;
3888
+ export declare const HookHandlerTask: HookHandlerType;
3889
+ export declare const HookHandlerGate: HookHandlerType;
3890
+ /**
3891
+ * MergeStrategy defines how a delta field should be merged by consumers.
3892
+ */
3893
+ export type MergeStrategy = string;
3894
+ export declare const MergeStrategyConcat: MergeStrategy;
3895
+ export declare const MergeStrategyReplace: MergeStrategy;
3896
+ export declare const MergeStrategyIndexed: MergeStrategy;
3897
+ export declare const MergeStrategyNested: MergeStrategy;
3898
+ /**
3899
+ * StreamDelta is the marker base for all streaming delta types.
3900
+ * Types embedding StreamDelta are routed through the delta channel.
3901
+ */
3902
+ export interface StreamDelta {
3903
+ }
3904
+ /**
3905
+ * LLMOutput is the output envelope from an LLM provider task.
3906
+ * This is the contract between chat apps (sdk-py) and the agent runtime (go/api).
3907
+ */
3908
+ export interface LLMOutput {
3909
+ response: string;
3910
+ reasoning?: string;
3911
+ tool_calls?: ToolCall[];
3912
+ usage?: LLMUsage;
3913
+ }
3914
+ /**
3915
+ * LLMDelta is a streaming delta for LLMOutput.
3916
+ */
3917
+ export interface LLMDelta extends StreamDelta {
3918
+ response: string;
3919
+ reasoning?: string;
3920
+ tool_calls?: ToolCallDelta[];
3921
+ usage?: LLMUsage;
3922
+ }
3923
+ export declare const LLMDelta_fieldTags: {
3924
+ readonly response: {
3925
+ readonly merge: "concat";
3926
+ };
3927
+ readonly reasoning: {
3928
+ readonly merge: "concat";
3929
+ };
3930
+ readonly tool_calls: {
3931
+ readonly merge: "indexed";
3932
+ };
3933
+ readonly usage: {
3934
+ readonly merge: "replace";
3935
+ };
3936
+ };
3937
+ /**
3938
+ * ToolCallDelta is an incremental update to a tool call, identified by index.
3939
+ * First delta for an index carries ID, Type, and Function.Name.
3940
+ * Subsequent deltas carry only Function.Arguments fragments.
3941
+ */
3942
+ export interface ToolCallDelta {
3943
+ index: number;
3944
+ id?: string;
3945
+ type?: ToolCallType;
3946
+ function?: ToolCallFunctionDelta;
3947
+ }
3948
+ export declare const ToolCallDelta_fieldTags: {
3949
+ readonly id: {
3950
+ readonly merge: "replace";
3951
+ };
3952
+ readonly type: {
3953
+ readonly merge: "replace";
3954
+ };
3955
+ readonly function: {
3956
+ readonly merge: "nested";
3957
+ };
3958
+ };
3959
+ /**
3960
+ * DeltaEvent is the generic streaming envelope on the NDJSON wire.
3961
+ * Delta is raw bytes — consumers parse based on context.
3962
+ */
3963
+ export interface DeltaEvent {
3964
+ delta: any;
3965
+ seq: number;
3966
+ }
3967
+ /**
3968
+ * LLMDeltaEvent is a typed alias for backward compatibility.
3969
+ */
3970
+ export type LLMDeltaEvent = DeltaEvent;
3971
+ /**
3972
+ * ToolCallFunctionDelta carries partial tool call function data.
3973
+ * Arguments is a raw JSON string fragment — concatenate by index, parse on completion.
3974
+ */
3975
+ export interface ToolCallFunctionDelta {
3976
+ name?: string;
3977
+ arguments?: string;
3978
+ }
3979
+ export declare const ToolCallFunctionDelta_fieldTags: {
3980
+ readonly name: {
3981
+ readonly merge: "replace";
3982
+ };
3983
+ readonly arguments: {
3984
+ readonly merge: "concat";
3985
+ };
3986
+ };
3987
+ /**
3988
+ * ToolChoiceMode controls whether the model must call a tool this turn.
3989
+ */
3990
+ export type ToolChoiceMode = string;
3991
+ export declare const ToolChoiceModeNone: ToolChoiceMode;
3992
+ export declare const ToolChoiceModeAuto: ToolChoiceMode;
3993
+ export declare const ToolChoiceModeRequired: ToolChoiceMode;
3994
+ export declare const ToolChoiceModeFunction: ToolChoiceMode;
3995
+ /**
3996
+ * ToolChoice constrains tool calling for a turn. Providers spell this
3997
+ * differently (OpenAI tool_choice, Anthropic tool_choice.type any/tool,
3998
+ * Gemini functionCallingConfig); apps translate at the provider boundary.
3999
+ */
4000
+ export interface ToolChoice {
4001
+ mode: ToolChoiceMode;
4002
+ name?: string;
4003
+ }
4004
+ /**
4005
+ * ResponseFormatType selects how the model's output is constrained.
4006
+ */
4007
+ export type ResponseFormatType = string;
4008
+ export declare const ResponseFormatTypeText: ResponseFormatType;
4009
+ export declare const ResponseFormatTypeJSONObject: ResponseFormatType;
4010
+ export declare const ResponseFormatTypeJSONSchema: ResponseFormatType;
4011
+ /**
4012
+ * ResponseFormat constrains the shape of the model's response.
4013
+ * JSONSchema is required when Type is json_schema.
4014
+ */
4015
+ export interface ResponseFormat {
4016
+ type: ResponseFormatType;
4017
+ name?: string;
4018
+ json_schema?: any;
4019
+ strict?: boolean;
4020
+ }
4021
+ /**
4022
+ * LLMSettings is everything that configures a generation independent of the
4023
+ * conversation: model, context, sampling, system prompt, tools and output
4024
+ * constraints. Embedded (tstype extends) by BaseLLMInput — an agent's stored
4025
+ * configuration — and LLMInput — a single call — so a field added here
4026
+ * reaches both, and the call is built from the configuration by one
4027
+ * assignment.
4028
+ */
4029
+ export interface LLMSettings {
4030
+ model?: string;
4031
+ context_size: number;
4032
+ temperature?: number;
4033
+ top_p?: number;
4034
+ top_k?: number;
4035
+ min_p?: number;
4036
+ frequency_penalty?: number;
4037
+ presence_penalty?: number;
4038
+ repetition_penalty?: number;
4039
+ seed?: number;
4040
+ stop?: string[];
4041
+ max_tokens?: number;
4042
+ reasoning_effort?: string;
4043
+ reasoning_max_tokens?: number;
4044
+ system_prompt: string;
4045
+ tools?: Tool[];
4046
+ tool_choice?: ToolChoice;
4047
+ response_format?: ResponseFormat;
4048
+ }
4049
+ /**
4050
+ * LLMInput is the input envelope for an LLM provider task: the settings plus
4051
+ * the conversation, with the current turn split out of the context.
4052
+ */
4053
+ export interface LLMInput extends LLMSettings {
4054
+ context: LLMContextMessage[];
4055
+ role?: ChatMessageRole;
4056
+ text?: string;
4057
+ reasoning?: string;
4058
+ attachments?: FileRef[];
4059
+ images?: string[];
4060
+ files?: string[];
4061
+ tool_call_id?: string;
4062
+ }
4063
+ /**
4064
+ * LLMContextMessage represents a message in the chat context for LLM tasks
4065
+ */
4066
+ export interface LLMContextMessage {
4067
+ role: ChatMessageRole;
4068
+ text?: string;
4069
+ reasoning?: string;
4070
+ images?: string[];
4071
+ files?: string[];
4072
+ tools?: Tool[];
4073
+ tool_calls?: ToolCall[];
4074
+ tool_call_id?: string;
4075
+ }
3220
4076
  /**
3221
4077
  * SecretScope defines the visibility/purpose of a secret
3222
4078
  */
@@ -3246,6 +4102,7 @@ export type PageType = string;
3246
4102
  export declare const PageTypeDoc: PageType;
3247
4103
  export declare const PageTypeBlog: PageType;
3248
4104
  export declare const PageTypePage: PageType;
4105
+ export declare const PageTypeAnnouncement: PageType;
3249
4106
  /**
3250
4107
  * ToolInvocationStatus represents the execution status of a tool invocation
3251
4108
  */
@@ -3377,6 +4234,8 @@ export declare const KnowledgeTypeAgentConfig: KnowledgeType;
3377
4234
  export type KnowledgeLifecycle = string;
3378
4235
  export declare const KnowledgeLifecyclePermanent: KnowledgeLifecycle;
3379
4236
  export declare const KnowledgeLifecycleDecay: KnowledgeLifecycle;
4237
+ export declare const KnowledgeLifecycleDraft: KnowledgeLifecycle;
4238
+ export declare const KnowledgeLifecycleDeprecated: KnowledgeLifecycle;
3380
4239
  export type FilterOperator = string;
3381
4240
  export declare const OpEqual: FilterOperator;
3382
4241
  export declare const OpNotEqual: FilterOperator;
@@ -3491,44 +4350,40 @@ export declare const IntegrationStatusDisconnected: IntegrationStatus;
3491
4350
  export declare const IntegrationStatusExpired: IntegrationStatus;
3492
4351
  export declare const IntegrationStatusError: IntegrationStatus;
3493
4352
  /**
3494
- * IntegrationScope distinguishes platform-provided vs team-owned integrations.
4353
+ * IntegrationScope controls credential resolution priority and ownership.
3495
4354
  */
3496
4355
  export type IntegrationScope = string;
4356
+ export declare const IntegrationScopeTeam: IntegrationScope;
4357
+ export declare const IntegrationScopePlatform: IntegrationScope;
4358
+ export declare const IntegrationScopeUser: IntegrationScope;
3497
4359
  /**
3498
- * IntegrationScopeTeam is owned by a user/team (BYOK credentials, user connections)
4360
+ * IntegrationGrant describes what an integration provides.
3499
4361
  */
3500
- export declare const IntegrationScopeTeam: IntegrationScope;
4362
+ export type IntegrationGrant = string;
3501
4363
  /**
3502
- * IntegrationScopePlatform is owned by the platform (managed credentials, admin-configured)
4364
+ * IntegrationGrantCredentials provides OAuth app credentials (client_id/secret).
4365
+ * Users connect their own accounts against it. Only valid for type=oauth.
3503
4366
  */
3504
- export declare const IntegrationScopePlatform: IntegrationScope;
3505
- export type WidgetNodeType = string;
3506
- export declare const WidgetNodeTypeText: WidgetNodeType;
3507
- export declare const WidgetNodeTypeMarkdown: WidgetNodeType;
3508
- export declare const WidgetNodeTypeImage: WidgetNodeType;
3509
- export declare const WidgetNodeTypeBadge: WidgetNodeType;
3510
- export declare const WidgetNodeTypeButton: WidgetNodeType;
3511
- export declare const WidgetNodeTypeInput: WidgetNodeType;
3512
- export declare const WidgetNodeTypeSelect: WidgetNodeType;
3513
- export declare const WidgetNodeTypeCheckbox: WidgetNodeType;
3514
- export declare const WidgetNodeTypeRow: WidgetNodeType;
3515
- export declare const WidgetNodeTypeCol: WidgetNodeType;
3516
- export declare const WidgetNodeTypeBox: WidgetNodeType;
3517
- export declare const WidgetNodeTypeSpacer: WidgetNodeType;
3518
- export declare const WidgetNodeTypeDivider: WidgetNodeType;
3519
- export declare const WidgetNodeTypeForm: WidgetNodeType;
3520
- export declare const WidgetNodeTypeTitle: WidgetNodeType;
3521
- export declare const WidgetNodeTypeCaption: WidgetNodeType;
3522
- export declare const WidgetNodeTypeLabel: WidgetNodeType;
3523
- export declare const WidgetNodeTypeTextarea: WidgetNodeType;
3524
- export declare const WidgetNodeTypeRadioGroup: WidgetNodeType;
3525
- export declare const WidgetNodeTypeDatePicker: WidgetNodeType;
3526
- export declare const WidgetNodeTypeIcon: WidgetNodeType;
3527
- export declare const WidgetNodeTypeChart: WidgetNodeType;
3528
- export declare const WidgetNodeTypeTransition: WidgetNodeType;
3529
- export declare const WidgetNodeTypePlanList: WidgetNodeType;
3530
- export declare const WidgetNodeTypeKeyValue: WidgetNodeType;
3531
- export declare const WidgetNodeTypeStatusBadge: WidgetNodeType;
4367
+ export declare const IntegrationGrantCredentials: IntegrationGrant;
4368
+ /**
4369
+ * IntegrationGrantToken provides ready-to-use access (token, API key, etc.).
4370
+ */
4371
+ export declare const IntegrationGrantToken: IntegrationGrant;
4372
+ /**
4373
+ * CredentialScope controls resolution priority and ownership.
4374
+ */
4375
+ export type CredentialScope = string;
4376
+ export declare const CredentialScopePlatform: CredentialScope;
4377
+ /**
4378
+ * CredentialScopeOrg: shared across all teams of an org. In the enum for
4379
+ * end-to-end typing (connect-level pickers); connects with it are refused
4380
+ * until the org domain lands (INF-795 Phase 2). Resolution order once
4381
+ * live: agent > user > team > org > platform.
4382
+ */
4383
+ export declare const CredentialScopeOrg: CredentialScope;
4384
+ export declare const CredentialScopeTeam: CredentialScope;
4385
+ export declare const CredentialScopeUser: CredentialScope;
4386
+ export declare const CredentialScopeAgent: CredentialScope;
3532
4387
  /**
3533
4388
  * NotificationChannel represents a delivery channel
3534
4389
  */
@@ -3562,6 +4417,7 @@ export declare const NotificationTypeInvoice: NotificationType;
3562
4417
  export declare const NotificationTypeSubscriptionCreated: NotificationType;
3563
4418
  export declare const NotificationTypeSubscriptionCredit: NotificationType;
3564
4419
  export declare const NotificationTypeSubscriptionCanceled: NotificationType;
4420
+ export declare const NotificationTypeSubscriptionPaymentFailed: NotificationType;
3565
4421
  export declare const NotificationTypeSubscriptionTrialEnding: NotificationType;
3566
4422
  /**
3567
4423
  * Account notifications
@@ -3720,6 +4576,19 @@ export interface ToolCallFunction {
3720
4576
  name: string;
3721
4577
  arguments: StringEncodedMap;
3722
4578
  }
4579
+ /**
4580
+ * LLMUsage contains token usage and performance metrics from an LLM response
4581
+ */
4582
+ export interface LLMUsage {
4583
+ stop_reason: string;
4584
+ time_to_first_token: number;
4585
+ tokens_per_second: number;
4586
+ prompt_tokens: number;
4587
+ completion_tokens: number;
4588
+ total_tokens: number;
4589
+ reasoning_tokens: number;
4590
+ reasoning_time: number;
4591
+ }
3723
4592
  /**
3724
4593
  * FileRef is a lightweight reference to a file with essential metadata.
3725
4594
  * Used in chat inputs/context instead of full File objects.
@@ -3766,3 +4635,13 @@ export declare const RoleGuest: Role;
3766
4635
  export declare const RoleUser: Role;
3767
4636
  export declare const RoleAdmin: Role;
3768
4637
  export declare const RoleSystem: Role;
4638
+ /**
4639
+ * UtilityConfig defines a flow utility node — gate, selector, merge, or custom CEL.
4640
+ */
4641
+ export interface UtilityConfig {
4642
+ preset: string;
4643
+ expression?: string;
4644
+ gate?: GateCondition;
4645
+ selector?: SelectorConfig;
4646
+ constant?: any;
4647
+ }