@blade-hq/agent-react 2612.0.0-beta.6 → 2612.0.0-beta.61

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 (112) hide show
  1. package/README.md +30 -1
  2. package/dist/chat/AgentLoopBlock.d.ts +0 -2
  3. package/dist/chat/AskUserQuestionBlock.d.ts +3 -20
  4. package/dist/chat/AssistantTurnBlock.d.ts +1 -9
  5. package/dist/chat/AttachmentPreviewDialog.d.ts +0 -1
  6. package/dist/chat/ChatLoadingIndicator.d.ts +7 -0
  7. package/dist/chat/ContextAttachmentPills.d.ts +4 -0
  8. package/dist/chat/CurrentPlanPanel.d.ts +0 -3
  9. package/dist/chat/FileDeliveryCards.d.ts +0 -4
  10. package/dist/chat/FinalArtifactCards.d.ts +0 -1
  11. package/dist/chat/ImageLightbox.d.ts +1 -1
  12. package/dist/chat/LiteMessageList.d.ts +1 -3
  13. package/dist/chat/MessageFileAttachmentList.d.ts +0 -5
  14. package/dist/chat/QuestionnaireQuestionBlock.d.ts +11 -0
  15. package/dist/chat/SessionReplayBar.d.ts +0 -1
  16. package/dist/chat/TextAttachmentPills.d.ts +0 -3
  17. package/dist/chat/TurnNavRail.d.ts +0 -3
  18. package/dist/chat/WorkflowRunBlock.d.ts +21 -4
  19. package/dist/chat/ai-elements/shimmer.d.ts +0 -4
  20. package/dist/chat/customization.d.ts +1 -1
  21. package/dist/chat/index.d.ts +1 -4
  22. package/dist/chat/lib/citations.d.ts +2 -23
  23. package/dist/chat/markdown/ExternalAnchor.d.ts +2 -2
  24. package/dist/chat/markdown/MarkdownContent.d.ts +3 -0
  25. package/dist/chat/message-list-blocks.d.ts +0 -1
  26. package/dist/chat/runtime/actions.d.ts +2 -3
  27. package/dist/chat/runtime/background-task-dismissals.d.ts +0 -1
  28. package/dist/chat/runtime/composer-channels.d.ts +0 -3
  29. package/dist/chat/runtime/input-cache-reset.d.ts +0 -5
  30. package/dist/chat/runtime/input-services.d.ts +10 -6
  31. package/dist/chat/runtime/session-source.d.ts +0 -5
  32. package/dist/chat/runtime/use-chat-actions.d.ts +0 -4
  33. package/dist/{chat-OCLOVB3H.css → chat-IHPRU35X.css} +5 -18
  34. package/dist/chat.css +5 -18
  35. package/dist/chunk-2E6DQCXM.js +602 -0
  36. package/dist/chunk-2E6DQCXM.js.map +1 -0
  37. package/dist/chunk-ARX4JV5T.js +1988 -0
  38. package/dist/chunk-ARX4JV5T.js.map +1 -0
  39. package/dist/chunk-HBMFIJG2.js +13622 -0
  40. package/dist/chunk-HBMFIJG2.js.map +1 -0
  41. package/dist/chunk-HS5G33FO.js +6894 -0
  42. package/dist/chunk-HS5G33FO.js.map +1 -0
  43. package/dist/{chunk-UKQFSXGC.js → chunk-MAFNMG2O.js} +2419 -13726
  44. package/dist/chunk-MAFNMG2O.js.map +1 -0
  45. package/dist/{chunk-XJLFFRQP.js → chunk-UC7SY3G5.js} +3744 -25994
  46. package/dist/chunk-UC7SY3G5.js.map +1 -0
  47. package/dist/chunk-VSIUEXGV.js +4981 -0
  48. package/dist/chunk-VSIUEXGV.js.map +1 -0
  49. package/dist/chunk-XV6AO37F.js +9480 -0
  50. package/dist/chunk-XV6AO37F.js.map +1 -0
  51. package/dist/components/AccountConnectors.d.ts +13 -0
  52. package/dist/components/BrowserConnectionDialog.d.ts +7 -0
  53. package/dist/components/ChatInput.d.ts +1 -15
  54. package/dist/components/ConnectorAuthorizationProgress.d.ts +6 -0
  55. package/dist/components/ConnectorPanel.d.ts +3 -1
  56. package/dist/components/ConnectorRuntimeDiagnostics.d.ts +5 -0
  57. package/dist/components/DeviceConnection.d.ts +15 -0
  58. package/dist/components/FeishuCapabilitySelection.d.ts +14 -0
  59. package/dist/components/FeishuPermissionStatus.d.ts +5 -0
  60. package/dist/components/LlmAdvancedSettings.d.ts +0 -1
  61. package/dist/components/PlanUpdateBlock.d.ts +0 -1
  62. package/dist/components/SessionPluginConfigForm.d.ts +3 -1
  63. package/dist/components/plugin-connector.d.ts +1 -0
  64. package/dist/connectors.d.ts +1 -0
  65. package/dist/connectors.js +9 -0
  66. package/dist/connectors.js.map +1 -0
  67. package/dist/embed/blade-chat-element.d.ts +0 -8
  68. package/dist/embed/entry.d.ts +8 -19
  69. package/dist/hooks/use-message-pin.d.ts +1 -1
  70. package/dist/host.d.ts +0 -4
  71. package/dist/index.d.ts +1 -0
  72. package/dist/index.js +12 -3
  73. package/dist/internal.d.ts +4 -2
  74. package/dist/internal.js +45 -70
  75. package/dist/internal.js.map +1 -1
  76. package/dist/lib/message-shortcuts.d.ts +5 -0
  77. package/dist/questions.d.ts +7 -0
  78. package/dist/questions.js +909 -0
  79. package/dist/questions.js.map +1 -0
  80. package/dist/rich-input/ConnectButton.d.ts +7 -5
  81. package/dist/rich-input/FileCompletionMenu.d.ts +5 -11
  82. package/dist/rich-input/InputActionSubmenu.d.ts +10 -0
  83. package/dist/rich-input/SkillActionMenu.d.ts +10 -0
  84. package/dist/rich-input/SkillStatusBar.d.ts +0 -6
  85. package/dist/rich-input/extensions/skill-mention.d.ts +3 -20
  86. package/dist/rich-input/index.d.ts +3 -4
  87. package/dist/rich-input/lib/composer-content.d.ts +7 -22
  88. package/dist/rich-input/lib/plugin-suggestions.d.ts +5 -5
  89. package/dist/rich-input/lib/reference-candidates.d.ts +0 -4
  90. package/dist/rich-input/lib/skill-suggestions.d.ts +1 -1
  91. package/dist/rich-input/lib/user-home.d.ts +0 -17
  92. package/dist/rich-input/services.d.ts +2 -3
  93. package/dist/rich-input/voice/VoiceWaveform.d.ts +0 -3
  94. package/dist/rich-input.js +786 -1300
  95. package/dist/rich-input.js.map +1 -1
  96. package/dist/style.css +16 -55
  97. package/dist/style.full.css +23 -77
  98. package/dist/tool-details.d.ts +8 -0
  99. package/dist/tool-details.js +24 -0
  100. package/dist/tool-details.js.map +1 -0
  101. package/package.json +15 -3
  102. package/public-api.md +10 -5
  103. package/dist/chat/tool-renderers/KbSearchRenderer.d.ts +0 -2
  104. package/dist/chat/tool-renderers/kb-search-result.d.ts +0 -19
  105. package/dist/chunk-IRBOKMF5.js +0 -258
  106. package/dist/chunk-IRBOKMF5.js.map +0 -1
  107. package/dist/chunk-UKQFSXGC.js.map +0 -1
  108. package/dist/chunk-XJLFFRQP.js.map +0 -1
  109. package/dist/lib/agent-computer-command.d.ts +0 -32
  110. package/dist/rich-input/extensions/kb-mention.d.ts +0 -18
  111. package/dist/rich-input/extensions/workflow-mention.d.ts +0 -10
  112. package/dist/rich-input/lib/kb-suggestions.d.ts +0 -37
@@ -1,32 +0,0 @@
1
- export declare function isAgentComputerCommand(command: string): boolean;
2
- /** 工具调用的 JSON 参数里是不是一条 computer launch 命令。 */
3
- export declare function isAgentComputerToolCall(argumentsJson: string | null | undefined): boolean;
4
- export type AgentComputerLaunchOutcome = "pending" | "succeeded" | "failed" | "unknown";
5
- /** `computer launch` 这条 Bash 工具调用最终是不是真的启动成功了——不能只看
6
- * `isAgentComputerToolCall` 命中参数就当作成功:可执行文件缺失/不可执行、
7
- * 启动后随即退出这些 appmirrord 侧的失败,Bash 工具调用本身仍然会走完
8
- * `status: "done"`(Bash 工具的职责是"跑完这条命令",命令自己返回非零退出码
9
- * 不算工具调用失败)。
10
- *
11
- * 唯一的判据是输出里有没有出现 `LAUNCH_SUCCESS_MARKER`——launch.go 的
12
- * cmdLaunch 只要走到成功分支就一定会打印这行文本,不存在"成功了但没打印"
13
- * 的路径。标记缺失就等价于没有走到那条成功路径,不再退回看 `result.exit_code`
14
- * 当兜底:那样会给 `computer launch ... || echo failed` 这类复合命令开口子,
15
- * 让真实失败的 launch 被误判成 succeeded。
16
- *
17
- * "pending":还没跑完(status 既不是终态失败也不是 done),调用方不该现在
18
- * 就下结论,也不该把这次调用标记成"已处理"——等下一次状态更新再重新判断。
19
- *
20
- * "unknown":`status: "done"` 但 `result` 本身缺失(不是"有 result、没有标记",
21
- * 是根本没有 result 这个字段)——历史会话被整理(compaction)之后,归档的
22
- * 工具调用只保留 `arguments`/`status` 这类摘要字段,完整 `result` payload 不
23
- * 会重新序列化进历史投影,这是已知且刻意的压缩形状,不是数据丢失异常。这种
24
- * 情况下"没看到成功标记"不能说明"这次 launch 失败了",只能说明"证据被裁剪
25
- * 了"——跟"result 确实回来了、里面就是没有这行文本"是两种不同性质的证据,
26
- * 前者不能定性为 failed,接入方要按自己的场景(标签页展示可以偏宽松,自动
27
- * 跳转/替用户做决定的场景应该偏保守)自己决定怎么用。
28
- */
29
- export declare function classifyAgentComputerLaunchOutcome(toolCall: {
30
- status?: string;
31
- result?: unknown;
32
- }): AgentComputerLaunchOutcome;
@@ -1,18 +0,0 @@
1
- export interface KbMentionAttrs {
2
- kbId: number;
3
- name: string;
4
- }
5
- /** `@` 补全菜单里的知识库候选;和文件条目共用一个菜单,用 `kind` 区分。 */
6
- export interface KbSuggestionItem {
7
- kind: "kb";
8
- kbId: number;
9
- name: string;
10
- description: string;
11
- }
12
- export declare function isKbSuggestionItem(value: unknown): value is KbSuggestionItem;
13
- /**
14
- * 输入框里的「@知识库」药丸。触发字符 `@` 由 FileMention 的补全菜单负责
15
- * (知识库和文件是同一个菜单的两个分组),所以这里不再挂自己的 suggestion
16
- * 插件——挂了会和文件补全抢同一个 `@`。
17
- */
18
- export declare const KbMention: import("@tiptap/core").Node<import("@tiptap/extension-mention").MentionOptions<any, import("@tiptap/extension-mention").MentionNodeAttrs>, any>;
@@ -1,10 +0,0 @@
1
- import { Node } from "@tiptap/react";
2
- /**
3
- * 工作流胶囊:/ 菜单选中工作流后插入的高亮 mention。
4
- *
5
- * 刻意不是 skillMention——那个节点序列化成 <skill>id</skill>,且行首会被判定为
6
- * 「本条消息绑定哪个技能」(composer-content.ts 的 LeadingSkillMention),工作流
7
- * 塞进去会被当成技能加载。本节点只负责显示胶囊,序列化回「运行工作流 X」纯文本,
8
- * 模型侧行为与手打文本完全一致。参数模板作为胶囊后的普通文本,用户可直接编辑。
9
- */
10
- export declare const WorkflowMention: Node<any, any>;
@@ -1,37 +0,0 @@
1
- import type { KbSuggestionItem } from "../extensions/kb-mention";
2
- /** 知识库列表里候选需要的字段(blade_hub `GET /api/kb`)。 */
3
- export interface KnowledgeBaseSummary {
4
- id: number;
5
- name: string;
6
- description?: string | null;
7
- }
8
- /**
9
- * `@知识库` 候选:首页和会话内的输入框都从 `useKnowledgeBases()`(blade_hub
10
- * `GET /api/kb`)拿同一份列表,这里只负责整形和按输入过滤——两边各写一份
11
- * 过滤规则就会出现只有一侧修好的 bug。
12
- */
13
- export declare function toKbSuggestionItems(knowledgeBases: readonly KnowledgeBaseSummary[]): KbSuggestionItem[];
14
- /**
15
- * 知识库候选和本地文件候选在 `@` 菜单里是 `Promise.all` 并发拉的:Hub 配置了但
16
- * 慢或不可达时,本来秒回的文件候选会被知识库这条请求的超时(走注册中心代理,
17
- * 可能到 10s)一起拖住——一个可选外部服务的延迟不该拖累本来正常工作的文件补全。
18
- * 这里给知识库候选加个短超时:超时就先交回空数组,不阻塞文件候选返回;不取消
19
- * 底层请求,它还在后台跑,配合 `notifyWhenKbSuggestionsArriveLate` 在真结果到了
20
- * 之后把知识库分组补进已经打开的菜单——TipTap 的 suggestion 不会自己重新调用
21
- * `items()`,光靠"下一次按键"接不住"用户 @ 完不再打字"这种情况。
22
- */
23
- export declare const KB_SUGGESTION_TIMEOUT_MS = 300;
24
- export declare function withKbSuggestionTimeout<T>(promise: Promise<T[]>, timeoutMs?: number): Promise<T[]>;
25
- /**
26
- * 配合 `withKbSuggestionTimeout`:这次 `items()` 因为超时空手而归(`raced` 为空)
27
- * 时,挂一个回调,真结果(哪怕比超时晚)到了就通知调用方——回调里怎么把结果塞回
28
- * 界面由调用方决定(组件里握着 TipTap 的 render 生命周期,这里只管"迟到了要不要
29
- * 通知"这条纯逻辑,不碰 DOM/React)。`raced` 非空(超时内已经拿到真实结果,或者
30
- * 知识库本来就是空列表)时什么都不做——不重复触发一次回调。
31
- */
32
- export declare function notifyWhenKbSuggestionsArriveLate<T>(kbPromise: Promise<T[]>, raced: T[], onLate: (items: T[]) => void): void;
33
- /**
34
- * 输入里出现路径分隔符时用户是在浏览文件目录,知识库分组整个收起;
35
- * 否则按名称 / 描述子串匹配(不区分大小写)。
36
- */
37
- export declare function filterKbSuggestions(items: readonly KbSuggestionItem[], query: string): KbSuggestionItem[];