neoctl 0.2.31 → 0.2.33

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 (103) hide show
  1. package/dist/agents/agent-activity.d.ts +3 -0
  2. package/dist/agents/agent-activity.js +33 -6
  3. package/dist/agents/agent-activity.js.map +1 -1
  4. package/dist/agents/agent-definition.d.ts +2 -2
  5. package/dist/agents/agent-definition.js +6 -6
  6. package/dist/agents/agent-definition.js.map +1 -1
  7. package/dist/agents/agent-report-tool.d.ts +1 -1
  8. package/dist/agents/agent-report-tool.js +4 -4
  9. package/dist/agents/agent-report-tool.js.map +1 -1
  10. package/dist/agents/agent-tool.d.ts +1 -1
  11. package/dist/agents/agent-tool.js +99 -20
  12. package/dist/agents/agent-tool.js.map +1 -1
  13. package/dist/agents/local-agent-task.d.ts +12 -0
  14. package/dist/agents/local-agent-task.js +38 -1
  15. package/dist/agents/local-agent-task.js.map +1 -1
  16. package/dist/agents/smoke-agents.js +37 -26
  17. package/dist/agents/smoke-agents.js.map +1 -1
  18. package/dist/context/compaction.js +1 -1
  19. package/dist/context/compaction.js.map +1 -1
  20. package/dist/context/prompts.js +6 -6
  21. package/dist/context/prompts.js.map +1 -1
  22. package/dist/context/smoke-context.js +15 -15
  23. package/dist/context/smoke-context.js.map +1 -1
  24. package/dist/core/query-engine.js +2 -0
  25. package/dist/core/query-engine.js.map +1 -1
  26. package/dist/core/query.js +96 -8
  27. package/dist/core/query.js.map +1 -1
  28. package/dist/core/run-agent.d.ts +13 -2
  29. package/dist/core/run-agent.js +16 -13
  30. package/dist/core/run-agent.js.map +1 -1
  31. package/dist/core/smoke-core-loop.js +55 -2
  32. package/dist/core/smoke-core-loop.js.map +1 -1
  33. package/dist/index.d.ts +1 -1
  34. package/dist/index.js +1 -1
  35. package/dist/index.js.map +1 -1
  36. package/dist/plugins/smoke-plugin-system.js +14 -14
  37. package/dist/repl/index.js +16 -14
  38. package/dist/repl/index.js.map +1 -1
  39. package/dist/secrets/secret-redaction.d.ts +5 -0
  40. package/dist/secrets/secret-redaction.js +43 -0
  41. package/dist/secrets/secret-redaction.js.map +1 -1
  42. package/dist/secrets/secret-types.d.ts +4 -0
  43. package/dist/secrets/secret-types.js.map +1 -1
  44. package/dist/secrets/smoke-secrets.js +7 -3
  45. package/dist/secrets/smoke-secrets.js.map +1 -1
  46. package/dist/skills/smoke-skills.js +5 -5
  47. package/dist/skills/smoke-skills.js.map +1 -1
  48. package/dist/tasks/subagent-tools.d.ts +31 -0
  49. package/dist/tasks/{task-tools.js → subagent-tools.js} +26 -32
  50. package/dist/tasks/subagent-tools.js.map +1 -0
  51. package/dist/tools/builtins/edit-tool.d.ts +2 -0
  52. package/dist/tools/builtins/edit-tool.js +28 -6
  53. package/dist/tools/builtins/edit-tool.js.map +1 -1
  54. package/dist/tools/builtins/exec-process-manager.d.ts +4 -0
  55. package/dist/tools/builtins/exec-process-manager.js +15 -6
  56. package/dist/tools/builtins/exec-process-manager.js.map +1 -1
  57. package/dist/tools/builtins/exec-tool.js +24 -8
  58. package/dist/tools/builtins/exec-tool.js.map +1 -1
  59. package/dist/tools/builtins/filesystem-tools.js +2 -4
  60. package/dist/tools/builtins/filesystem-tools.js.map +1 -1
  61. package/dist/tools/builtins/grep-tool.js +2 -3
  62. package/dist/tools/builtins/grep-tool.js.map +1 -1
  63. package/dist/tools/builtins/image-generation-tool.js +4 -4
  64. package/dist/tools/builtins/image-generation-tool.js.map +1 -1
  65. package/dist/tools/builtins/image-loader-tool.js +2 -3
  66. package/dist/tools/builtins/image-loader-tool.js.map +1 -1
  67. package/dist/tools/builtins/image-note-tool.js +0 -1
  68. package/dist/tools/builtins/image-note-tool.js.map +1 -1
  69. package/dist/tools/builtins/plan-tool.js +1 -1
  70. package/dist/tools/builtins/plan-tool.js.map +1 -1
  71. package/dist/tools/builtins/search-tool.js +3 -3
  72. package/dist/tools/builtins/search-tool.js.map +1 -1
  73. package/dist/tools/run-tool-use.js +3 -2
  74. package/dist/tools/run-tool-use.js.map +1 -1
  75. package/dist/tools/smoke-tool-system.js +49 -26
  76. package/dist/tools/smoke-tool-system.js.map +1 -1
  77. package/dist/tools/tool-catalog.d.ts +36 -0
  78. package/dist/tools/tool-catalog.js +64 -0
  79. package/dist/tools/tool-catalog.js.map +1 -0
  80. package/dist/tools/tool-orchestration.d.ts +20 -3
  81. package/dist/tools/tool-orchestration.js +29 -4
  82. package/dist/tools/tool-orchestration.js.map +1 -1
  83. package/dist/tools/tool.d.ts +13 -0
  84. package/dist/tools/tool.js.map +1 -1
  85. package/dist/types/events.d.ts +23 -0
  86. package/dist/types/messages.d.ts +8 -0
  87. package/dist/types/messages.js +16 -0
  88. package/dist/types/messages.js.map +1 -1
  89. package/dist/web/index.d.ts +39 -0
  90. package/dist/web/index.js +295 -92
  91. package/dist/web/index.js.map +1 -1
  92. package/dist/web/runtime-context-protocol.d.ts +7 -0
  93. package/dist/web/runtime-context-protocol.js +3 -2
  94. package/dist/web/runtime-context-protocol.js.map +1 -1
  95. package/dist/web/smoke-runtime-context-protocol.js +10 -2
  96. package/dist/web/smoke-runtime-context-protocol.js.map +1 -1
  97. package/dist/web/smoke-web-history.js +64 -2
  98. package/dist/web/smoke-web-history.js.map +1 -1
  99. package/dist/web/smoke-web-terminal-tasks.js +1 -0
  100. package/dist/web/smoke-web-terminal-tasks.js.map +1 -1
  101. package/package.json +4 -4
  102. package/dist/tasks/task-tools.d.ts +0 -31
  103. package/dist/tasks/task-tools.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"smoke-tool-system.js","sourceRoot":"","sources":["../../src/tools/smoke-tool-system.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smoke-tool-system.js","sourceRoot":"","sources":["../../src/tools/smoke-tool-system.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ export type ToolFamily = "filesystem" | "terminal" | "subagent" | "web" | "image" | "planning" | "secrets" | "plugin" | "external" | "other";
2
+ export type ToolVisibility = "primary" | "nested" | "hidden";
3
+ export interface ToolPresentation {
4
+ family: ToolFamily;
5
+ action: string;
6
+ label: string;
7
+ visibility: ToolVisibility;
8
+ }
9
+ export declare const BUILTIN_TOOL_NAMES: {
10
+ readonly fileEdit: "file_edit";
11
+ readonly fileWrite: "file_write";
12
+ readonly fileRead: "file_read";
13
+ readonly fileList: "file_list";
14
+ readonly fileSearch: "file_search";
15
+ readonly terminalRun: "terminal_run";
16
+ readonly terminalControl: "terminal_control";
17
+ readonly webSearch: "web_search";
18
+ readonly imageCreate: "image_create";
19
+ readonly imageInspect: "image_inspect";
20
+ readonly imageNote: "image_note";
21
+ readonly planUpdate: "plan_update";
22
+ readonly subagentRun: "subagent_run";
23
+ readonly subagentOutput: "subagent_output";
24
+ readonly subagentList: "subagent_list";
25
+ readonly subagentGet: "subagent_get";
26
+ readonly subagentStop: "subagent_stop";
27
+ readonly subagentMessage: "subagent_message";
28
+ readonly subagentResume: "subagent_resume";
29
+ readonly subagentReport: "subagent_report";
30
+ readonly secretList: "secret_list";
31
+ readonly secretInfo: "secret_info";
32
+ readonly secretRequest: "secret_request";
33
+ };
34
+ export type BuiltinToolName = typeof BUILTIN_TOOL_NAMES[keyof typeof BUILTIN_TOOL_NAMES];
35
+ export declare function builtinToolPresentation(name: string): ToolPresentation | undefined;
36
+ export declare function toolPresentationForSource(name: string, source?: "builtin" | "external" | "plugin" | "unknown"): ToolPresentation;
@@ -0,0 +1,64 @@
1
+ export const BUILTIN_TOOL_NAMES = {
2
+ fileEdit: "file_edit",
3
+ fileWrite: "file_write",
4
+ fileRead: "file_read",
5
+ fileList: "file_list",
6
+ fileSearch: "file_search",
7
+ terminalRun: "terminal_run",
8
+ terminalControl: "terminal_control",
9
+ webSearch: "web_search",
10
+ imageCreate: "image_create",
11
+ imageInspect: "image_inspect",
12
+ imageNote: "image_note",
13
+ planUpdate: "plan_update",
14
+ subagentRun: "subagent_run",
15
+ subagentOutput: "subagent_output",
16
+ subagentList: "subagent_list",
17
+ subagentGet: "subagent_get",
18
+ subagentStop: "subagent_stop",
19
+ subagentMessage: "subagent_message",
20
+ subagentResume: "subagent_resume",
21
+ subagentReport: "subagent_report",
22
+ secretList: "secret_list",
23
+ secretInfo: "secret_info",
24
+ secretRequest: "secret_request",
25
+ };
26
+ const BUILTIN_PRESENTATION = {
27
+ file_edit: { family: "filesystem", action: "edit", label: "编辑文件", visibility: "primary" },
28
+ file_write: { family: "filesystem", action: "write", label: "写入文件", visibility: "primary" },
29
+ file_read: { family: "filesystem", action: "read", label: "读取文件", visibility: "primary" },
30
+ file_list: { family: "filesystem", action: "list", label: "列出文件", visibility: "primary" },
31
+ file_search: { family: "filesystem", action: "search", label: "搜索文本", visibility: "primary" },
32
+ terminal_run: { family: "terminal", action: "run", label: "执行命令", visibility: "primary" },
33
+ terminal_control: { family: "terminal", action: "control", label: "终端交互", visibility: "nested" },
34
+ web_search: { family: "web", action: "search", label: "网络搜索", visibility: "primary" },
35
+ image_create: { family: "image", action: "create", label: "图片生成", visibility: "primary" },
36
+ image_inspect: { family: "image", action: "inspect", label: "读取图片", visibility: "primary" },
37
+ image_note: { family: "image", action: "note", label: "记录图片", visibility: "nested" },
38
+ plan_update: { family: "planning", action: "update", label: "任务计划", visibility: "primary" },
39
+ subagent_run: { family: "subagent", action: "run", label: "子任务", visibility: "primary" },
40
+ subagent_output: { family: "subagent", action: "output", label: "读取子任务输出", visibility: "nested" },
41
+ subagent_list: { family: "subagent", action: "list", label: "子任务列表", visibility: "hidden" },
42
+ subagent_get: { family: "subagent", action: "get", label: "查看子任务", visibility: "hidden" },
43
+ subagent_stop: { family: "subagent", action: "stop", label: "停止子任务", visibility: "nested" },
44
+ subagent_message: { family: "subagent", action: "message", label: "发送子任务消息", visibility: "nested" },
45
+ subagent_resume: { family: "subagent", action: "resume", label: "恢复子任务", visibility: "nested" },
46
+ subagent_report: { family: "subagent", action: "report", label: "子任务报告", visibility: "hidden" },
47
+ secret_list: { family: "secrets", action: "list", label: "密钥列表", visibility: "primary" },
48
+ secret_info: { family: "secrets", action: "info", label: "查看密钥", visibility: "primary" },
49
+ secret_request: { family: "secrets", action: "request", label: "申请密钥", visibility: "primary" },
50
+ };
51
+ export function builtinToolPresentation(name) {
52
+ return BUILTIN_PRESENTATION[name];
53
+ }
54
+ export function toolPresentationForSource(name, source = "unknown") {
55
+ const builtin = builtinToolPresentation(name);
56
+ if (builtin)
57
+ return builtin;
58
+ if (source === "plugin")
59
+ return { family: "plugin", action: name, label: name, visibility: "primary" };
60
+ if (source === "external")
61
+ return { family: "external", action: name, label: name, visibility: "primary" };
62
+ return { family: "other", action: name, label: name, visibility: "primary" };
63
+ }
64
+ //# sourceMappingURL=tool-catalog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-catalog.js","sourceRoot":"","sources":["../../src/tools/tool-catalog.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,32 @@
1
1
  import type { Message, ToolUseRequest } from "../types/messages.js";
2
- import { type RunToolUseOptions } from "./run-tool-use.js";
3
- import type { Tool, ToolUseContext } from "./tool.js";
2
+ import { type RunToolUseOptions, type ToolMessageUpdate } from "./run-tool-use.js";
3
+ import type { Tool, ToolProgressEvent, ToolUseContext } from "./tool.js";
4
4
  export interface RunToolsResult {
5
5
  messages: Message[];
6
6
  context: ToolUseContext;
7
7
  }
8
+ export type RunToolsEvent = {
9
+ type: "progress";
10
+ index: number;
11
+ total: number;
12
+ request: ToolUseRequest;
13
+ progress: ToolProgressEvent;
14
+ } | {
15
+ type: "settled";
16
+ index: number;
17
+ total: number;
18
+ request: ToolUseRequest;
19
+ updates: ToolMessageUpdate[];
20
+ ok: boolean;
21
+ };
22
+ export interface RunToolsOptions extends RunToolUseOptions {
23
+ onEvent?: (event: RunToolsEvent) => void;
24
+ }
8
25
  interface ParsedToolCall {
9
26
  request: ToolUseRequest;
10
27
  tool?: Tool;
11
28
  concurrencySafe: boolean;
12
29
  }
13
- export declare function runTools(requests: readonly ToolUseRequest[], context: ToolUseContext, options?: RunToolUseOptions): Promise<RunToolsResult>;
30
+ export declare function runTools(requests: readonly ToolUseRequest[], context: ToolUseContext, options?: RunToolsOptions): Promise<RunToolsResult>;
14
31
  export declare function partitionToolCalls(requests: readonly ToolUseRequest[], context: ToolUseContext): ParsedToolCall[][];
15
32
  export {};
@@ -2,15 +2,18 @@ import { runToolUse } from "./run-tool-use.js";
2
2
  export async function runTools(requests, context, options = {}) {
3
3
  let currentContext = context;
4
4
  const messages = [];
5
+ const indexes = new Map(requests.map((request, index) => [request.id, index]));
5
6
  for (const batch of partitionToolCalls(requests, currentContext)) {
6
7
  if (batch.length === 1 && !batch[0].concurrencySafe) {
7
- const updates = await runToolUse(batch[0].request, currentContext, options);
8
+ const item = batch[0];
9
+ const updates = await runToolUseWithEvents(item, currentContext, options, indexes.get(item.request.id) ?? 0, requests.length);
10
+ options.onEvent?.({ type: "settled", index: indexes.get(item.request.id) ?? 0, total: requests.length, request: item.request, updates, ok: updatesOk(updates) });
8
11
  const applied = applyUpdates(updates, currentContext);
9
12
  currentContext = applied.context;
10
13
  messages.push(...applied.messages);
11
14
  continue;
12
15
  }
13
- const batchResults = await runToolsConcurrently(batch, currentContext, options);
16
+ const batchResults = await runToolsConcurrently(batch, currentContext, options, indexes, requests.length);
14
17
  for (const item of batch) {
15
18
  const updates = batchResults.get(item.request.id) ?? [];
16
19
  const applied = applyUpdates(updates, currentContext);
@@ -44,7 +47,7 @@ export function partitionToolCalls(requests, context) {
44
47
  batches.push(concurrentBatch);
45
48
  return batches;
46
49
  }
47
- async function runToolsConcurrently(batch, context, options) {
50
+ async function runToolsConcurrently(batch, context, options, indexes, total) {
48
51
  const maxConcurrency = maxToolConcurrency();
49
52
  const results = new Map();
50
53
  let cursor = 0;
@@ -52,12 +55,34 @@ async function runToolsConcurrently(batch, context, options) {
52
55
  while (cursor < batch.length) {
53
56
  const item = batch[cursor];
54
57
  cursor += 1;
55
- results.set(item.request.id, await runToolUse(item.request, context, options));
58
+ const index = indexes.get(item.request.id) ?? 0;
59
+ const updates = await runToolUseWithEvents(item, context, options, index, total);
60
+ results.set(item.request.id, updates);
61
+ options.onEvent?.({ type: "settled", index, total, request: item.request, updates, ok: updatesOk(updates) });
56
62
  }
57
63
  }
58
64
  await Promise.all(Array.from({ length: Math.min(maxConcurrency, batch.length) }, () => worker()));
59
65
  return results;
60
66
  }
67
+ async function runToolUseWithEvents(item, context, options, index, total) {
68
+ let sequence = 0;
69
+ const contextWithEvents = {
70
+ ...context,
71
+ emit(progress) {
72
+ if (progress.sequence !== undefined)
73
+ sequence = Math.max(sequence, progress.sequence);
74
+ else
75
+ sequence += 1;
76
+ const normalized = { ...progress, toolUseId: progress.toolUseId ?? item.request.id, sequence };
77
+ options.onEvent?.({ type: "progress", index, total, request: item.request, progress: normalized });
78
+ context.emit(normalized);
79
+ },
80
+ };
81
+ return runToolUse(item.request, contextWithEvents, options);
82
+ }
83
+ function updatesOk(updates) {
84
+ return updates.every((update) => update.message.blocks.every((block) => block.type !== "tool_result" || block.ok));
85
+ }
61
86
  function applyUpdates(updates, context) {
62
87
  let currentContext = context;
63
88
  const messages = [];
@@ -1 +1 @@
1
- {"version":3,"file":"tool-orchestration.js","sourceRoot":"","sources":["../../src/tools/tool-orchestration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-orchestration.js","sourceRoot":"","sources":["../../src/tools/tool-orchestration.ts"],"names":[],"mappings":"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"}
@@ -33,11 +33,24 @@ export interface ToolMetadata {
33
33
  /** Strip unknown top-level object fields before JSON schema validation. Use only for simple, non-destructive tools. */
34
34
  ignoreUnknownInputProperties?: boolean;
35
35
  }
36
+ export type ToolStreamChannel = "state" | "item" | "stdout" | "stderr" | "patch" | "artifact" | "metric";
37
+ export type ToolStreamOperation = "replace" | "append" | "upsert" | "remove";
36
38
  export interface ToolProgressEvent {
37
39
  toolName: string;
38
40
  toolUseId?: string;
39
41
  message: string;
40
42
  data?: unknown;
43
+ channel?: ToolStreamChannel;
44
+ operation?: ToolStreamOperation;
45
+ key?: string;
46
+ phase?: string;
47
+ sequence?: number;
48
+ progress?: {
49
+ current?: number;
50
+ total?: number;
51
+ unit?: string;
52
+ };
53
+ transient?: boolean;
41
54
  }
42
55
  export type ValidationResult<TInput> = {
43
56
  ok: true;
@@ -1 +1 @@
1
- {"version":3,"file":"tool.js","sourceRoot":"","sources":["../../src/tools/tool.ts"],"names":[],"mappings":"AA+JA,MAAM,UAAU,sBAAsB,CAAC,IAAU,EAAE,OAAwB;IACzE,OAAO,OAAO,IAAI,CAAC,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;AAC1G,CAAC"}
1
+ {"version":3,"file":"tool.js","sourceRoot":"","sources":["../../src/tools/tool.ts"],"names":[],"mappings":"AA6KA,MAAM,UAAU,sBAAsB,CAAC,IAAU,EAAE,OAAwB;IACzE,OAAO,OAAO,IAAI,CAAC,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;AAC1G,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import type { CompactionReport } from "../context/compaction.js";
2
2
  import type { TerminalReason } from "../core/state.js";
3
3
  import type { ModelUsage } from "../model/model-gateway.js";
4
+ import type { ToolProgressEvent } from "../tools/tool.js";
4
5
  import type { Message, ToolUseRequest } from "./messages.js";
5
6
  export interface PromptCacheSectionMetric {
6
7
  name: string;
@@ -73,10 +74,32 @@ export type AgentEvent = {
73
74
  } | {
74
75
  type: "tool.started";
75
76
  toolUse: ToolUseRequest;
77
+ index?: number;
78
+ total?: number;
79
+ } | {
80
+ type: "tool.progress";
81
+ toolUse: ToolUseRequest;
82
+ progress: ToolProgressEvent;
83
+ index?: number;
84
+ total?: number;
85
+ } | {
86
+ type: "tool.result.available";
87
+ toolUse: ToolUseRequest;
88
+ ok: boolean;
89
+ messages: Message[];
90
+ index?: number;
91
+ total?: number;
76
92
  } | {
77
93
  type: "tool.finished";
78
94
  toolUse: ToolUseRequest;
79
95
  ok: boolean;
96
+ index?: number;
97
+ total?: number;
98
+ } | {
99
+ type: "tool.batch.completed";
100
+ total: number;
101
+ succeeded: number;
102
+ failed: number;
80
103
  } | {
81
104
  type: "usage";
82
105
  usage: ModelUsage;
@@ -64,6 +64,14 @@ export interface SystemInitPayload {
64
64
  }
65
65
  export declare function createImageId(): string;
66
66
  export declare function createTextMessage(role: MessageRole, text: string): Message;
67
+ export interface TaskNotificationPayload {
68
+ taskId: string;
69
+ agentId: string;
70
+ status: string;
71
+ type?: string;
72
+ content: string;
73
+ }
74
+ export declare function createTaskNotificationMessage(payload: TaskNotificationPayload): Message;
67
75
  export declare function createThinkingMessage(text: string, signature?: string): Message;
68
76
  /**
69
77
  * Thinking blocks are local observability data. They may be displayed and
@@ -10,6 +10,22 @@ export function createTextMessage(role, text) {
10
10
  blocks: [{ type: "text", text }],
11
11
  };
12
12
  }
13
+ export function createTaskNotificationMessage(payload) {
14
+ const typeAttribute = payload.type ? ` type="${payload.type}"` : "";
15
+ return {
16
+ ...createTextMessage("user", `<task-notification task_id="${payload.taskId}" agent_id="${payload.agentId}" status="${payload.status}"${typeAttribute}>\n${payload.content}\n</task-notification>`),
17
+ isMeta: true,
18
+ metadata: {
19
+ internalNotification: true,
20
+ taskNotification: {
21
+ taskId: payload.taskId,
22
+ agentId: payload.agentId,
23
+ status: payload.status,
24
+ type: payload.type,
25
+ },
26
+ },
27
+ };
28
+ }
13
29
  export function createThinkingMessage(text, signature) {
14
30
  return {
15
31
  id: cryptoId(),
@@ -1 +1 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/types/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AA4DzC,MAAM,UAAU,aAAa;IAC3B,OAAO,SAAS,UAAU,EAAE,EAAE,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAiB,EAAE,IAAY;IAC/D,OAAO;QACL,EAAE,EAAE,QAAQ,EAAE;QACd,IAAI;QACJ,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;KACjC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAY,EAAE,SAAkB;IACpE,OAAO;QACL,EAAE,EAAE,QAAQ,EAAE;QACd,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KAChD,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAA4B;IAChE,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAClC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;QAC3E,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM;YAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAC9D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACnC,OAAO,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,OAAuB,EAAE,EAAW,EAAE,MAAe;IAC3F,OAAO;QACL,EAAE,EAAE,QAAQ,EAAE;QACd,IAAI,EAAE,aAAa;QACnB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;KACzF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,MAAc;IACnD,OAAO;QACL,GAAG,iBAAiB,CAAC,WAAW,EAAE,MAAM,CAAC;QACzC,MAAM,EAAE,IAAI;QACZ,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;KAC9B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,OAA0B;IAChE,OAAO;QACL,GAAG,iBAAiB,CAAC,QAAQ,EAAE,0BAA0B,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3E,MAAM,EAAE,IAAI;QACZ,QAAQ,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE;KAC3C,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ;IACf,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AACjF,CAAC"}
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/types/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AA4DzC,MAAM,UAAU,aAAa;IAC3B,OAAO,SAAS,UAAU,EAAE,EAAE,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAiB,EAAE,IAAY;IAC/D,OAAO;QACL,EAAE,EAAE,QAAQ,EAAE;QACd,IAAI;QACJ,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;KACjC,CAAC;AACJ,CAAC;AAUD,MAAM,UAAU,6BAA6B,CAAC,OAAgC;IAC5E,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACpE,OAAO;QACL,GAAG,iBAAiB,CAClB,MAAM,EACN,+BAA+B,OAAO,CAAC,MAAM,eAAe,OAAO,CAAC,OAAO,aAAa,OAAO,CAAC,MAAM,IAAI,aAAa,MAAM,OAAO,CAAC,OAAO,wBAAwB,CACrK;QACD,MAAM,EAAE,IAAI;QACZ,QAAQ,EAAE;YACR,oBAAoB,EAAE,IAAI;YAC1B,gBAAgB,EAAE;gBAChB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,IAAI,EAAE,OAAO,CAAC,IAAI;aACnB;SACF;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAY,EAAE,SAAkB;IACpE,OAAO;QACL,EAAE,EAAE,QAAQ,EAAE;QACd,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;KAChD,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAA4B;IAChE,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAClC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;QAC3E,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM;YAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAC9D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACnC,OAAO,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,OAAuB,EAAE,EAAW,EAAE,MAAe;IAC3F,OAAO;QACL,EAAE,EAAE,QAAQ,EAAE;QACd,IAAI,EAAE,aAAa;QACnB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;KACzF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,MAAc;IACnD,OAAO;QACL,GAAG,iBAAiB,CAAC,WAAW,EAAE,MAAM,CAAC;QACzC,MAAM,EAAE,IAAI;QACZ,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;KAC9B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,OAA0B;IAChE,OAAO;QACL,GAAG,iBAAiB,CAAC,QAAQ,EAAE,0BAA0B,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3E,MAAM,EAAE,IAAI;QACZ,QAAQ,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE;KAC3C,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ;IACf,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AACjF,CAAC"}
@@ -7,6 +7,7 @@ import { CommunicationLogger, LoggingModelGateway } from "../model/communication
7
7
  import type { ModelUsage, ReasoningConfig } from "../model/model-gateway.js";
8
8
  import { ToolRegistry } from "../tools/registry.js";
9
9
  import type { Tool } from "../tools/tool.js";
10
+ import { type ToolPresentation } from "../tools/tool-catalog.js";
10
11
  import { ExecProcessManager } from "../tools/builtins/exec-process-manager.js";
11
12
  import { type AgentToolRuntime } from "../agents/agent-tool.js";
12
13
  import { TaskStore } from "../tasks/task-store.js";
@@ -48,6 +49,7 @@ interface WebRuntimePluginSupport {
48
49
  interface WebRuntimeToolCatalogItem {
49
50
  name: string;
50
51
  source: "builtin" | "external" | "plugin";
52
+ presentation: ToolPresentation;
51
53
  pluginId?: string;
52
54
  pluginName?: string;
53
55
  }
@@ -116,12 +118,42 @@ interface UiToolDisplay {
116
118
  facts: UiToolFact[];
117
119
  previews: UiToolPreview[];
118
120
  }
121
+ interface UiToolStreamStep {
122
+ key: string;
123
+ message: string;
124
+ toolName?: string;
125
+ toolLabel?: string;
126
+ status: "running" | "completed" | "failed";
127
+ phase?: string;
128
+ sequence?: number;
129
+ }
130
+ interface UiToolStreamChunk {
131
+ sequence: number;
132
+ stream: "stdout" | "stderr" | "output";
133
+ text: string;
134
+ }
135
+ interface UiToolStream {
136
+ message?: string;
137
+ phase?: string;
138
+ channel?: string;
139
+ sequence?: number;
140
+ current?: number;
141
+ total?: number;
142
+ unit?: string;
143
+ stdout?: string;
144
+ stderr?: string;
145
+ output?: string;
146
+ chunks?: UiToolStreamChunk[];
147
+ steps?: UiToolStreamStep[];
148
+ expanded?: boolean;
149
+ }
119
150
  interface UiLine {
120
151
  id: number;
121
152
  kind: "system" | "user" | "assistant" | "thinking" | "tool" | "error" | "meta";
122
153
  text: string;
123
154
  messageId?: string;
124
155
  toolName?: string;
156
+ toolPresentation?: ToolPresentation;
125
157
  parentToolName?: string;
126
158
  toolUseId?: string;
127
159
  parentToolUseId?: string;
@@ -129,6 +161,7 @@ interface UiLine {
129
161
  bodyTitle?: string;
130
162
  titleStatus?: "success" | "failure";
131
163
  toolDisplay?: UiToolDisplay;
164
+ toolStream?: UiToolStream;
132
165
  format?: "markdown" | "ansi" | "plain" | "diff";
133
166
  previewStyle?: "summary";
134
167
  summaryMaxLines?: number;
@@ -411,6 +444,7 @@ export declare class WebRepl {
411
444
  configuredEnabled: boolean;
412
445
  name: string;
413
446
  source: "builtin" | "external" | "plugin";
447
+ presentation: ToolPresentation;
414
448
  pluginId?: string;
415
449
  pluginName?: string;
416
450
  }[];
@@ -425,6 +459,7 @@ export declare class WebRepl {
425
459
  effectiveEnabled: boolean;
426
460
  name: string;
427
461
  source: "builtin" | "external" | "plugin";
462
+ presentation: ToolPresentation;
428
463
  pluginId?: string;
429
464
  pluginName?: string;
430
465
  }[];
@@ -515,6 +550,10 @@ export declare class WebRepl {
515
550
  private finalizeLiveLine;
516
551
  private finalizeThinkingLine;
517
552
  private finalizeLiveToolLines;
553
+ private cancelLiveToolLines;
554
+ private patchLiveToolLine;
555
+ private applyToolProgress;
556
+ private applyAvailableToolResult;
518
557
  private handleEvent;
519
558
  private matchesPendingUserImageEcho;
520
559
  private handleCommandOrPrompt;