@blade-hq/agent-react 2610.0.0-beta.3 → 2610.0.0-beta.31

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.
package/public-api.md CHANGED
@@ -3,7 +3,7 @@
3
3
  > 本文件由 `scripts/public-api-report.mjs` 生成,请勿手改。
4
4
  > 公共面变更时重新生成本报告,并同步更新 README 对应章节——CI 会校验两者。
5
5
 
6
- 共 170 个公开声明。
6
+ 共 213 个公开声明。
7
7
 
8
8
  ## `acceptedPostChatFollowupCompletesLatestRun` (function)
9
9
 
@@ -52,6 +52,12 @@ slots: ChatViewSlots | undefined
52
52
  theme: "light" | "dark" | undefined
53
53
  ```
54
54
 
55
+ ## `AgentComputerLaunchOutcome` (type)
56
+
57
+ ```ts
58
+ export type AgentComputerLaunchOutcome = "pending" | "succeeded" | "failed" | "unknown"
59
+ ```
60
+
55
61
  ## `AgentLoopInfo` (interface)
56
62
 
57
63
  ```ts
@@ -155,6 +161,7 @@ tool_name: string | null | undefined
155
161
 
156
162
  ```ts
157
163
  custom: Record<number, string>
164
+ note: string | undefined
158
165
  selections: Record<number, number[]>
159
166
  ```
160
167
 
@@ -239,6 +246,7 @@ statusText: string
239
246
  auth: AuthResource
240
247
  blob: (method: HttpMethod, path: string) => Promise<Blob>
241
248
  buildAuthedUrl: (path: string) => string
249
+ computers: ComputersResource
242
250
  fetch: (method: HttpMethod, path: string, init?: BladeFetchInit, isRetry?: boolean) => Promise<Response>
243
251
  formData: (method: HttpMethod, path: string, form: FormData, options?: { expectOk?: boolean; onUploadProgress?: (progress: UploadProgress) => void; }) => Promise<Response>
244
252
  hasToken: () => boolean
@@ -268,7 +276,6 @@ baseUrl: string
268
276
  fetchImpl: { (input: RequestInfo | URL, init?: RequestInit): Promise<Response>; (input: string | URL | Request, init?: RequestInit): Promise<Response>; } | undefined
269
277
  onRefreshSuccess: (() => void | Promise<void>) | undefined
270
278
  socketToken: string | (() => string | null | undefined) | undefined
271
- streamTokens: boolean | undefined
272
279
  token: string | (() => string | null | undefined) | undefined
273
280
  tokenStorage: TokenStorageMode | undefined
274
281
  ```
@@ -292,6 +299,12 @@ client: BladeClient
292
299
  buildMessageContent: (text: string, attachments: Array<{ kind: "file"; name: string; uploadedPath?: string; textContent?: string | null; mimeType?: string; }>) => MessageContent
293
300
  ```
294
301
 
302
+ ## `canToggleComputer` (function)
303
+
304
+ ```ts
305
+ canToggleComputer: (computer: SessionComputer) => boolean
306
+ ```
307
+
295
308
  ## `ChatCompletionTool` (interface)
296
309
 
297
310
  ```ts
@@ -299,12 +312,19 @@ function: { name: string; description?: string; parameters?: Record<string, unkn
299
312
  type: "function"
300
313
  ```
301
314
 
315
+ ## `chatErrorForDisplay` (function)
316
+
317
+ ```ts
318
+ chatErrorForDisplay: (message: string, developer?: boolean) => string
319
+ ```
320
+
302
321
  ## `ChatMessage` (interface)
303
322
 
304
323
  ```ts
305
324
  blocks: ContentBlock[] | undefined
306
325
  compaction: CompactionInfo | undefined
307
326
  content: MessageContent
327
+ context: ContextProjectionData | undefined
308
328
  duration_ms: number | undefined
309
329
  entry_id: string | undefined
310
330
  kind: string | undefined
@@ -312,6 +332,7 @@ loop_name: string | undefined
312
332
  memory_refs: MemoryRefInfo[] | undefined
313
333
  parent_id: string | null | undefined
314
334
  reasoning: string | undefined
335
+ render_id: string | undefined
315
336
  role: "error" | "user" | "assistant" | "tool"
316
337
  status: "streaming" | "completed" | "paused" | "failed" | "interrupted" | undefined
317
338
  timestamp: string | undefined
@@ -366,6 +387,12 @@ footer: ReactNode
366
387
  header: ReactNode
367
388
  ```
368
389
 
390
+ ## `classifyAgentComputerLaunchOutcome` (function)
391
+
392
+ ```ts
393
+ classifyAgentComputerLaunchOutcome: (toolCall: { status?: string; result?: unknown; }) => AgentComputerLaunchOutcome
394
+ ```
395
+
369
396
  ## `ClientProjectionBuilder` (class)
370
397
 
371
398
  ```ts
@@ -375,6 +402,12 @@ reset: () => void
375
402
  seedSequence: (maxSeq: number) => void
376
403
  ```
377
404
 
405
+ ## `collectMemoryRefs` (function)
406
+
407
+ ```ts
408
+ collectMemoryRefs: (messages: ChatMessage[]) => MemoryRefInfo[]
409
+ ```
410
+
378
411
  ## `CommandEnvelope` (interface)
379
412
 
380
413
  ```ts
@@ -407,6 +440,25 @@ tokens_before: number | null | undefined
407
440
  trigger: "auto" | "manual" | "forced_retry" | null | undefined
408
441
  ```
409
442
 
443
+ ## `ComputersResource` (class)
444
+
445
+ ```ts
446
+ list: (sessionId: string) => Promise<SessionComputerList>
447
+ setEnabled: (sessionId: string, computer: string, enabled: boolean) => Promise<SessionComputer>
448
+ ```
449
+
450
+ ## `computerState` (function)
451
+
452
+ ```ts
453
+ computerState: (computer: SessionComputer) => ComputerState
454
+ ```
455
+
456
+ ## `ComputerState` (type)
457
+
458
+ ```ts
459
+ export type ComputerState = "primary" | "enabled" | "offline" | "idle"
460
+ ```
461
+
410
462
  ## `connectEmbedded` (function)
411
463
 
412
464
  ```ts
@@ -435,6 +487,95 @@ type: "text" | "thinking" | "tool_use" | "tool_result" | "tool_ui" | "tool_bridg
435
487
  contentPreview: (content: MessageContent, maxLen?: number) => string
436
488
  ```
437
489
 
490
+ ## `ContextAction` (type)
491
+
492
+ ```ts
493
+ export type ContextAction = "published" | "retained" | "removed"
494
+ ```
495
+
496
+ ## `ContextCard` (function)
497
+
498
+ ```ts
499
+ ContextCard: ({ context, className }: ContextCardProps) => JSX.Element
500
+ ```
501
+
502
+ ## `ContextCardProps` (interface)
503
+
504
+ ```ts
505
+ className: string | undefined
506
+ context: ContextProjectionData
507
+ ```
508
+
509
+ ## `ContextDisplayState` (interface)
510
+
511
+ ```ts
512
+ detail: string
513
+ isRemoved: boolean
514
+ summary: string
515
+ title: string
516
+ ```
517
+
518
+ ## `ContextGroupCard` (function)
519
+
520
+ ```ts
521
+ ContextGroupCard: ({ contexts, className }: ContextGroupCardProps) => JSX.Element | null
522
+ ```
523
+
524
+ ## `ContextGroupCardProps` (interface)
525
+
526
+ ```ts
527
+ className: string | undefined
528
+ contexts: readonly ContextProjectionData[]
529
+ ```
530
+
531
+ ## `ContextGroupDisplayState` (interface)
532
+
533
+ ```ts
534
+ count: number
535
+ summary: string
536
+ title: string
537
+ ```
538
+
539
+ ## `contextProjectionData` (function)
540
+
541
+ ```ts
542
+ contextProjectionData: (fields: ContextProjectionFields) => ContextProjectionData | null
543
+ ```
544
+
545
+ ## `ContextProjectionData` (interface)
546
+
547
+ ```ts
548
+ context_action: ContextAction
549
+ context_key: string
550
+ context_kind: string
551
+ context_name: string
552
+ context_order: number
553
+ context_revision: string
554
+ display_summary: string | null | undefined
555
+ display_title: string | null | undefined
556
+ sources: ContextSourceInfo[]
557
+ ```
558
+
559
+ ## `ContextProjectionFields` (interface)
560
+
561
+ ```ts
562
+ context_action: ContextAction | null | undefined
563
+ context_key: string | null | undefined
564
+ context_kind: string | null | undefined
565
+ context_name: string | null | undefined
566
+ context_order: number | null | undefined
567
+ context_revision: string | null | undefined
568
+ display_summary: string | null | undefined
569
+ display_title: string | null | undefined
570
+ sources: ContextSourceInfo[] | null | undefined
571
+ ```
572
+
573
+ ## `ContextSourceInfo` (type)
574
+
575
+ ```ts
576
+ export type ContextSourceInfo = Record<string, unknown>
577
+ ```
578
+
438
579
  ## `createInitialSessionState` (function)
439
580
 
440
581
  ```ts
@@ -444,6 +585,7 @@ createInitialSessionState: (sessionId: string) => SessionState
444
585
  ## `CreateSessionRequest` (interface)
445
586
 
446
587
  ```ts
588
+ agent_runtime_id: string | null | undefined
447
589
  biz_role_id: string | null | undefined
448
590
  compaction_ratio: number | null | undefined
449
591
  daemon_id: string | null | undefined
@@ -454,7 +596,7 @@ intent: string | undefined
454
596
  memory_enabled: boolean | null | undefined
455
597
  model: string | null | undefined
456
598
  primary_skill_id: string | null | undefined
457
- runtime_type: "sandbox" | "daemon" | null | undefined
599
+ runtime_type: "sandbox" | "daemon" | "native" | null | undefined
458
600
  session_solution_asset_id: string | null | undefined
459
601
  solution_id: string | undefined
460
602
  solution_ref: PublishedSolutionRef | undefined
@@ -499,6 +641,12 @@ allowedOrigins: string[]
499
641
  iframe: HTMLIFrameElement | undefined
500
642
  ```
501
643
 
644
+ ## `EMPTY_PLATFORM_ENDPOINTS` (const)
645
+
646
+ ```ts
647
+ EMPTY_PLATFORM_ENDPOINTS: PlatformEndpoints
648
+ ```
649
+
502
650
  ## `ExchangeCodeParams` (interface)
503
651
 
504
652
  ```ts
@@ -600,6 +748,18 @@ export type FollowupInteractionEvent =
600
748
  artifactKind: "file"
601
749
  ```
602
750
 
751
+ ## `getContextDisplayState` (function)
752
+
753
+ ```ts
754
+ getContextDisplayState: (context: ContextProjectionData) => ContextDisplayState
755
+ ```
756
+
757
+ ## `getContextGroupDisplayState` (function)
758
+
759
+ ```ts
760
+ getContextGroupDisplayState: (contexts: readonly ContextProjectionData[]) => ContextGroupDisplayState
761
+ ```
762
+
603
763
  ## `getFileParts` (function)
604
764
 
605
765
  ```ts
@@ -654,6 +814,12 @@ export type GlobalSearchResultItem =
654
814
  | GlobalSearchFileResult
655
815
  ```
656
816
 
817
+ ## `groupAdjacentContextRuns` (function)
818
+
819
+ ```ts
820
+ groupAdjacentContextRuns: (kinds: readonly (string | null)[]) => readonly (readonly number[])[]
821
+ ```
822
+
657
823
  ## `groupMessagesByLoop` (function)
658
824
 
659
825
  ```ts
@@ -696,6 +862,18 @@ direction: "host-to-agent"
696
862
  payload: unknown
697
863
  ```
698
864
 
865
+ ## `isAgentComputerCommand` (function)
866
+
867
+ ```ts
868
+ isAgentComputerCommand: (command: string) => boolean
869
+ ```
870
+
871
+ ## `isAgentComputerToolCall` (function)
872
+
873
+ ```ts
874
+ isAgentComputerToolCall: (argumentsJson: string | null | undefined) => boolean
875
+ ```
876
+
699
877
  ## `isCommandEnvelope` (function)
700
878
 
701
879
  ```ts
@@ -705,7 +883,7 @@ isCommandEnvelope: (value: unknown) => value is CommandEnvelope
705
883
  ## `isHiddenInternalMessage` (function)
706
884
 
707
885
  ```ts
708
- isHiddenInternalMessage: (message: Pick<ChatMessage, "role" | "content">) => boolean
886
+ isHiddenInternalMessage: (message: Pick<ChatMessage, "role" | "content">, options?: { includeLegacyForkContext?: boolean; }) => boolean
709
887
  ```
710
888
 
711
889
  ## `isInboundEnvelope` (function)
@@ -818,6 +996,20 @@ id: string
818
996
  name: string
819
997
  ```
820
998
 
999
+ ## `loadPlatformEndpoints` (function)
1000
+
1001
+ ```ts
1002
+ loadPlatformEndpoints: (options?: LoadPlatformEndpointsOptions) => Promise<PlatformEndpoints>
1003
+ ```
1004
+
1005
+ ## `LoadPlatformEndpointsOptions` (interface)
1006
+
1007
+ ```ts
1008
+ baseUrl: string | undefined
1009
+ fetchImpl: { (input: RequestInfo | URL, init?: RequestInit): Promise<Response>; (input: string | URL | Request, init?: RequestInit): Promise<Response>; } | undefined
1010
+ timeoutMs: number | undefined
1011
+ ```
1012
+
821
1013
  ## `LoginOptions` (interface)
822
1014
 
823
1015
  ```ts
@@ -864,6 +1056,12 @@ id: number
864
1056
  skill_name: string | null | undefined
865
1057
  ```
866
1058
 
1059
+ ## `MemoryRefsHint` (function)
1060
+
1061
+ ```ts
1062
+ MemoryRefsHint: ({ refs }: { refs: MemoryRefInfo[]; }) => JSX.Element
1063
+ ```
1064
+
867
1065
  ## `MessageContent` (type)
868
1066
 
869
1067
  ```ts
@@ -889,6 +1087,8 @@ baseUrl: string | undefined
889
1087
  default: string
890
1088
  defaultServiceModel: string | undefined
891
1089
  models: ModelOption[]
1090
+ unavailableModelIds: string[] | undefined
1091
+ unavailableProviderIds: string[] | undefined
892
1092
  ```
893
1093
 
894
1094
  ## `ModelOption` (interface)
@@ -905,6 +1105,12 @@ serviceModelId: string | undefined
905
1105
  list: () => Promise<ModelCatalog>
906
1106
  ```
907
1107
 
1108
+ ## `normalizeAdjacentUrlFormatting` (function)
1109
+
1110
+ ```ts
1111
+ normalizeAdjacentUrlFormatting: (value: string) => string
1112
+ ```
1113
+
908
1114
  ## `normalizeMessageContent` (function)
909
1115
 
910
1116
  ```ts
@@ -935,6 +1141,20 @@ content: string
935
1141
  label: string
936
1142
  ```
937
1143
 
1144
+ ## `ParsedWhatIfPrompt` (interface)
1145
+
1146
+ ```ts
1147
+ fromStep: number | null
1148
+ quotes: WhatIfQuote[]
1149
+ userText: string
1150
+ ```
1151
+
1152
+ ## `parseWhatIfPrompt` (function)
1153
+
1154
+ ```ts
1155
+ parseWhatIfPrompt: (text: string) => ParsedWhatIfPrompt | null
1156
+ ```
1157
+
938
1158
  ## `PatchEnvelope` (interface)
939
1159
 
940
1160
  ```ts
@@ -945,6 +1165,18 @@ sequence: number
945
1165
  turn_id: string
946
1166
  ```
947
1167
 
1168
+ ## `PlatformEndpoints` (interface)
1169
+
1170
+ ```ts
1171
+ services: Partial<Record<"agent" | "os" | "hub" | "oauth" | "llmGateway" | "gitea" | "tile", string>>
1172
+ ```
1173
+
1174
+ ## `PlatformServiceName` (type)
1175
+
1176
+ ```ts
1177
+ export type PlatformServiceName = (typeof PLATFORM_SERVICE_NAMES)[number]
1178
+ ```
1179
+
948
1180
  ## `PostChatFollowup` (interface)
949
1181
 
950
1182
  ```ts
@@ -1017,6 +1249,12 @@ payload: Record<string, unknown>
1017
1249
  type: string
1018
1250
  ```
1019
1251
 
1252
+ ## `reconcileOptimisticUserTurns` (function)
1253
+
1254
+ ```ts
1255
+ reconcileOptimisticUserTurns: (currentTurns: TurnProjection[], incomingTurns: TurnProjection[]) => TurnProjection[]
1256
+ ```
1257
+
1020
1258
  ## `ReplayBar` (function)
1021
1259
 
1022
1260
  ```ts
@@ -1089,6 +1327,12 @@ speed: ReplaySpeed | undefined
1089
1327
  status: "replay" | "autonomous" | undefined
1090
1328
  ```
1091
1329
 
1330
+ ## `resolveServiceUrl` (function)
1331
+
1332
+ ```ts
1333
+ resolveServiceUrl: (endpoints: PlatformEndpoints, name: PlatformServiceName, path?: string) => string | null
1334
+ ```
1335
+
1092
1336
  ## `ResultFeedback` (interface)
1093
1337
 
1094
1338
  ```ts
@@ -1160,6 +1404,7 @@ SDK_VERSION: string
1160
1404
 
1161
1405
  ```ts
1162
1406
  askUserAnswer: Record<string, unknown> | undefined
1407
+ kbIds: number[] | undefined
1163
1408
  mode: string | undefined
1164
1409
  model: string | undefined
1165
1410
  replayDecision: "keep_replay" | "continue_replay" | undefined
@@ -1167,6 +1412,33 @@ thinkingOverride: boolean | undefined
1167
1412
  whatif: { from_step: number; quotes: Array<Record<string, unknown>>; deprecate_entry_ids: string[]; } | undefined
1168
1413
  ```
1169
1414
 
1415
+ ## `SessionComputer` (interface)
1416
+
1417
+ ```ts
1418
+ agent_runtimes: unknown[] | undefined
1419
+ allowed_paths: string[] | undefined
1420
+ arch: string | null | undefined
1421
+ blade_home: string | null | undefined
1422
+ created_at: string
1423
+ daemon_version: string | null | undefined
1424
+ enabled: boolean
1425
+ home: string | null | undefined
1426
+ hostname: string | null | undefined
1427
+ id: string
1428
+ is_primary: boolean
1429
+ label: string
1430
+ last_seen_at: string | null | undefined
1431
+ online: boolean
1432
+ os: string | null | undefined
1433
+ workspace: string | null | undefined
1434
+ ```
1435
+
1436
+ ## `SessionComputerList` (interface)
1437
+
1438
+ ```ts
1439
+ computers: SessionComputer[]
1440
+ ```
1441
+
1170
1442
  ## `SessionConfig` (interface)
1171
1443
 
1172
1444
  ```ts
@@ -1198,6 +1470,7 @@ solution: SolutionDefinition | undefined
1198
1470
  ## `SessionDetail` (interface)
1199
1471
 
1200
1472
  ```ts
1473
+ agent_runtime_id: string | null | undefined
1201
1474
  biz_role_id: string | null | undefined
1202
1475
  bound_skill_id: string | null | undefined
1203
1476
  created_at: string
@@ -1290,6 +1563,7 @@ SessionInfo = type({
1290
1563
  "disable_tools?": "string[]",
1291
1564
  "runtime_type?": "string | null",
1292
1565
  "daemon_id?": "string | null",
1566
+ "agent_runtime_id?": "string | null",
1293
1567
  "workspace_path?": "string | null",
1294
1568
  "match?": "unknown",
1295
1569
  })
@@ -1506,6 +1780,12 @@ export type SolutionDefinition =
1506
1780
  export type SolutionRef = ExistingSolutionRef | PreparedSolutionAsset
1507
1781
  ```
1508
1782
 
1783
+ ## `sortComputers` (function)
1784
+
1785
+ ```ts
1786
+ sortComputers: (computers: SessionComputer[]) => SessionComputer[]
1787
+ ```
1788
+
1509
1789
  ## `Task` (type)
1510
1790
 
1511
1791
  ```ts
@@ -1604,13 +1884,23 @@ archived_count: number | null | undefined
1604
1884
  archived_files: ArchivedFileInfo[] | null | undefined
1605
1885
  archived_tool_calls: ArchivedToolCallInfo[] | null | undefined
1606
1886
  blocks: ContentBlock[]
1887
+ client_render_id: string | null | undefined
1607
1888
  compaction_id: string | null | undefined
1889
+ context_action: ContextAction | null | undefined
1890
+ context_content: unknown
1891
+ context_key: string | null | undefined
1892
+ context_kind: string | null | undefined
1893
+ context_name: string | null | undefined
1894
+ context_order: number | null | undefined
1895
+ context_revision: string | null | undefined
1608
1896
  context_window: number | undefined
1897
+ display_summary: string | null | undefined
1898
+ display_title: string | null | undefined
1609
1899
  duration_ms: number | undefined
1610
1900
  failure_reason: string | null | undefined
1611
1901
  fallback_applied: boolean | null | undefined
1612
1902
  id: string
1613
- kind: "message" | "compaction" | undefined
1903
+ kind: "message" | "context" | "compaction" | undefined
1614
1904
  loop_id: string
1615
1905
  memory_refs: MemoryRef[] | null | undefined
1616
1906
  model: string | null | undefined
@@ -1619,6 +1909,7 @@ post_chat_followup: PostChatFollowup | null | undefined
1619
1909
  role: "user" | "assistant" | "system"
1620
1910
  saved_ratio: number | null | undefined
1621
1911
  sequence: number
1912
+ sources: ContextSourceInfo[] | null | undefined
1622
1913
  started_at: string | null | undefined
1623
1914
  status: "streaming" | "completed" | "paused" | "failed" | "interrupted"
1624
1915
  summary_full: string | null | undefined
@@ -1701,6 +1992,29 @@ send: (text: string) => Promise<boolean>
1701
1992
  stop: () => void
1702
1993
  ```
1703
1994
 
1995
+ ## `useMessagePin` (function)
1996
+
1997
+ ```ts
1998
+ useMessagePin: ({ targetKey, pinTarget, layoutKey, getScrollElement, getContentElement, getTargetElement, getTargetScrollTop, getSpacerHeight, setSpacerHeight, stopAutoScroll, scrollToBottom, margin, }: UseMessagePinOptions) => { release: () => void; isActive: () => boolean; }
1999
+ ```
2000
+
2001
+ ## `UseMessagePinOptions` (interface)
2002
+
2003
+ ```ts
2004
+ getContentElement: (() => HTMLElement | null) | undefined
2005
+ getScrollElement: () => HTMLElement | null
2006
+ getSpacerHeight: () => number
2007
+ getTargetElement: () => HTMLElement | null
2008
+ getTargetScrollTop: ((scroll: HTMLElement) => number | null) | undefined
2009
+ layoutKey: string | undefined
2010
+ margin: number | undefined
2011
+ pinTarget: boolean
2012
+ scrollToBottom: () => void
2013
+ setSpacerHeight: (height: number) => void
2014
+ stopAutoScroll: () => void
2015
+ targetKey: string | null
2016
+ ```
2017
+
1704
2018
  ## `useReplay` (function)
1705
2019
 
1706
2020
  ```ts
@@ -1735,3 +2049,24 @@ token: string
1735
2049
  username: string
1736
2050
  ```
1737
2051
 
2052
+ ## `WhatIfQuote` (interface)
2053
+
2054
+ ```ts
2055
+ label: string
2056
+ snapshot: string
2057
+ stepNumber: number | null
2058
+ ```
2059
+
2060
+ ## `WhatIfUserBubble` (function)
2061
+
2062
+ ```ts
2063
+ WhatIfUserBubble: ({ parsed, onQuoteClick }: WhatIfUserBubbleProps) => JSX.Element
2064
+ ```
2065
+
2066
+ ## `WhatIfUserBubbleProps` (interface)
2067
+
2068
+ ```ts
2069
+ onQuoteClick: ((stepNumber: number) => void) | undefined
2070
+ parsed: ParsedWhatIfPrompt
2071
+ ```
2072
+