@markusylisiurunen/tau 0.3.45 → 0.3.47

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 (106) hide show
  1. package/README.md +56 -6
  2. package/dist/code_mode/command.d.ts +2 -0
  3. package/dist/code_mode/command.js +31 -0
  4. package/dist/code_mode/command.js.map +1 -0
  5. package/dist/code_mode/index.d.ts +4 -0
  6. package/dist/code_mode/index.js +4 -0
  7. package/dist/code_mode/index.js.map +1 -0
  8. package/dist/code_mode/runtime.d.ts +82 -0
  9. package/dist/code_mode/runtime.js +298 -0
  10. package/dist/code_mode/runtime.js.map +1 -0
  11. package/dist/core/agent/agent_runtime.js +1 -1
  12. package/dist/core/agent/agent_runtime.js.map +1 -1
  13. package/dist/core/debug.js +2 -2
  14. package/dist/core/debug.js.map +1 -1
  15. package/dist/core/runtime/chat_runtime.js +10 -6
  16. package/dist/core/runtime/chat_runtime.js.map +1 -1
  17. package/dist/core/runtime/deps.js +0 -1
  18. package/dist/core/runtime/deps.js.map +1 -1
  19. package/dist/core/runtime/runtime_bootstrap.js +20 -3
  20. package/dist/core/runtime/runtime_bootstrap.js.map +1 -1
  21. package/dist/core/runtime/session_prompt_composer.js +6 -4
  22. package/dist/core/runtime/session_prompt_composer.js.map +1 -1
  23. package/dist/core/session/runner.js +4 -3
  24. package/dist/core/session/runner.js.map +1 -1
  25. package/dist/core/static/code_mode/history/documentation.md +1 -12
  26. package/dist/core/static/code_mode/history/sandbox_runner.mjs +1 -111
  27. package/dist/core/static/code_mode/nook/documentation.md +1 -14
  28. package/dist/core/static/code_mode/nook/sandbox_runner.mjs +1 -147
  29. package/dist/core/static/code_mode/sandbox_runner.mjs +186 -0
  30. package/dist/core/static/code_mode/web/documentation.md +1 -13
  31. package/dist/core/static/code_mode/web/sandbox_runner.mjs +1 -115
  32. package/dist/core/subagents/agent_supervisor.js +64 -31
  33. package/dist/core/subagents/agent_supervisor.js.map +1 -1
  34. package/dist/core/subagents/types.js +0 -1
  35. package/dist/core/subagents/types.js.map +1 -1
  36. package/dist/core/tools/bash.js +1 -1
  37. package/dist/core/tools/bash.js.map +1 -1
  38. package/dist/core/tools/code_mode.js +41 -47
  39. package/dist/core/tools/code_mode.js.map +1 -1
  40. package/dist/core/tools/code_mode_worker.js +43 -12
  41. package/dist/core/tools/code_mode_worker.js.map +1 -1
  42. package/dist/core/tools/history.js +16 -26
  43. package/dist/core/tools/history.js.map +1 -1
  44. package/dist/core/tools/nook.js +33 -21
  45. package/dist/core/tools/nook.js.map +1 -1
  46. package/dist/core/tools/web.js +15 -20
  47. package/dist/core/tools/web.js.map +1 -1
  48. package/dist/core/utils/context_builder.js +11 -9
  49. package/dist/core/utils/context_builder.js.map +1 -1
  50. package/dist/core/utils/spawn_capture.js +19 -5
  51. package/dist/core/utils/spawn_capture.js.map +1 -1
  52. package/dist/core/version.js +1 -1
  53. package/dist/host/execution_runtime.js +3 -2
  54. package/dist/host/execution_runtime.js.map +1 -1
  55. package/dist/host/hosted_ephemeral_agent_session.js +3 -2
  56. package/dist/host/hosted_ephemeral_agent_session.js.map +1 -1
  57. package/dist/host/local_session_host.js +90 -32
  58. package/dist/host/local_session_host.js.map +1 -1
  59. package/dist/host/session_host.js.map +1 -1
  60. package/dist/host/session_protocol_handler.js +29 -0
  61. package/dist/host/session_protocol_handler.js.map +1 -1
  62. package/dist/protocol/index.d.ts +2 -2
  63. package/dist/protocol/index.js +1 -1
  64. package/dist/protocol/index.js.map +1 -1
  65. package/dist/protocol/session_protocol.d.ts +66 -3
  66. package/dist/protocol/session_protocol.js +297 -1
  67. package/dist/protocol/session_protocol.js.map +1 -1
  68. package/dist/sdk/client_tool_command.d.ts +63 -0
  69. package/dist/sdk/client_tool_command.js +282 -0
  70. package/dist/sdk/client_tool_command.js.map +1 -0
  71. package/dist/sdk/code_mode.d.ts +6 -0
  72. package/dist/sdk/code_mode.js +58 -0
  73. package/dist/sdk/code_mode.js.map +1 -0
  74. package/dist/sdk/index.d.ts +8 -4
  75. package/dist/sdk/index.js +4 -1
  76. package/dist/sdk/index.js.map +1 -1
  77. package/dist/sdk/session.js +123 -40
  78. package/dist/sdk/session.js.map +1 -1
  79. package/dist/sdk/types.d.ts +21 -10
  80. package/dist/transport/in_process_session_transport.js +15 -1
  81. package/dist/transport/in_process_session_transport.js.map +1 -1
  82. package/dist/transport/index.d.ts +1 -1
  83. package/dist/transport/index.js.map +1 -1
  84. package/dist/transport/session_protocol_transport_helpers.js +14 -0
  85. package/dist/transport/session_protocol_transport_helpers.js.map +1 -1
  86. package/dist/transport/session_transport.d.ts +3 -1
  87. package/dist/transport/stdio_session_transport.d.ts +3 -1
  88. package/dist/transport/stdio_session_transport.js +15 -1
  89. package/dist/transport/stdio_session_transport.js.map +1 -1
  90. package/dist/transport/websocket_session_transport.d.ts +3 -1
  91. package/dist/transport/websocket_session_transport.js +15 -1
  92. package/dist/transport/websocket_session_transport.js.map +1 -1
  93. package/dist/tui/chat_controller/diff_review_service.js +2 -2
  94. package/dist/tui/chat_controller/diff_review_service.js.map +1 -1
  95. package/dist/tui/chat_view.js.map +1 -1
  96. package/dist/tui/command_client_tools.js +211 -21
  97. package/dist/tui/command_client_tools.js.map +1 -1
  98. package/dist/tui/session_chat_app.js +1 -1
  99. package/dist/tui/session_chat_app.js.map +1 -1
  100. package/dist/tui/session_chat_controller.js +49 -17
  101. package/dist/tui/session_chat_controller.js.map +1 -1
  102. package/dist/tui/session_tool_execution_backend.js +2 -2
  103. package/dist/tui/session_tool_execution_backend.js.map +1 -1
  104. package/dist/tui/ui/subagent_panel.js +25 -48
  105. package/dist/tui/ui/subagent_panel.js.map +1 -1
  106. package/package.json +6 -2
@@ -0,0 +1,282 @@
1
+ import { createInterface } from "node:readline";
2
+ import { z } from "zod";
3
+ export const TAU_CLIENT_TOOL_COMMAND_PROTOCOL_VERSION = 2;
4
+ const execOptionsSchema = z
5
+ .object({
6
+ args: z.array(z.string()).optional(),
7
+ env: z.record(z.string(), z.string()).optional(),
8
+ stdinBase64: z.string().optional(),
9
+ cwd: z.string().optional(),
10
+ timeoutMs: z.number().int().positive().optional(),
11
+ maxCaptureBytes: z.number().int().positive().optional(),
12
+ })
13
+ .strict();
14
+ const invokeSchema = z
15
+ .object({
16
+ version: z.literal(TAU_CLIENT_TOOL_COMMAND_PROTOCOL_VERSION),
17
+ type: z.literal("invoke"),
18
+ sessionId: z.string().min(1),
19
+ callId: z.string().min(1),
20
+ arguments: z.unknown(),
21
+ })
22
+ .strict();
23
+ const execRequestSchema = z
24
+ .object({
25
+ version: z.literal(TAU_CLIENT_TOOL_COMMAND_PROTOCOL_VERSION),
26
+ type: z.literal("exec"),
27
+ requestId: z.string().min(1),
28
+ command: z.string().min(1),
29
+ options: execOptionsSchema,
30
+ })
31
+ .strict();
32
+ const execCancelSchema = z
33
+ .object({
34
+ version: z.literal(TAU_CLIENT_TOOL_COMMAND_PROTOCOL_VERSION),
35
+ type: z.literal("exec.cancel"),
36
+ requestId: z.string().min(1),
37
+ })
38
+ .strict();
39
+ const resultSchema = z
40
+ .object({
41
+ version: z.literal(TAU_CLIENT_TOOL_COMMAND_PROTOCOL_VERSION),
42
+ type: z.literal("result"),
43
+ content: z.string(),
44
+ })
45
+ .strict();
46
+ const execResultSchema = z
47
+ .object({
48
+ output: z.string(),
49
+ stdout: z.string(),
50
+ stderr: z.string(),
51
+ exitCode: z.number().int().nullable(),
52
+ truncated: z.boolean(),
53
+ timedOut: z.boolean(),
54
+ aborted: z.boolean(),
55
+ closeSignal: z.string().nullable(),
56
+ })
57
+ .strict();
58
+ const execResponseSchema = z.discriminatedUnion("ok", [
59
+ z
60
+ .object({
61
+ version: z.literal(TAU_CLIENT_TOOL_COMMAND_PROTOCOL_VERSION),
62
+ type: z.literal("exec.result"),
63
+ requestId: z.string().min(1),
64
+ ok: z.literal(true),
65
+ result: execResultSchema,
66
+ })
67
+ .strict(),
68
+ z
69
+ .object({
70
+ version: z.literal(TAU_CLIENT_TOOL_COMMAND_PROTOCOL_VERSION),
71
+ type: z.literal("exec.result"),
72
+ requestId: z.string().min(1),
73
+ ok: z.literal(false),
74
+ error: z.string(),
75
+ })
76
+ .strict(),
77
+ ]);
78
+ export async function runTauClientToolCommand(handler) {
79
+ const controller = new AbortController();
80
+ const abort = () => controller.abort();
81
+ process.once("SIGINT", abort);
82
+ process.once("SIGTERM", abort);
83
+ const lines = createInterface({ input: process.stdin, crlfDelay: Number.POSITIVE_INFINITY });
84
+ const iterator = lines[Symbol.asyncIterator]();
85
+ const pending = new Map();
86
+ let inputEnded = false;
87
+ let stoppingInput = false;
88
+ let requestSequence = 0;
89
+ let writeQueue = Promise.resolve();
90
+ const writeFrame = async (frame) => {
91
+ const line = `${JSON.stringify(frame)}\n`;
92
+ const write = writeQueue.then(() => new Promise((resolve, reject) => {
93
+ process.stdout.write(line, (error) => (error ? reject(error) : resolve()));
94
+ }));
95
+ writeQueue = write.catch(() => undefined);
96
+ await write;
97
+ };
98
+ const rejectPending = (error) => {
99
+ for (const request of pending.values()) {
100
+ request.signal.removeEventListener("abort", request.onAbort);
101
+ request.reject(error);
102
+ }
103
+ pending.clear();
104
+ };
105
+ try {
106
+ const first = await iterator.next();
107
+ if (first.done) {
108
+ throw new Error("client-tool command received no invocation");
109
+ }
110
+ const invocation = parseInvokeFrame(first.value);
111
+ let rejectInput = () => { };
112
+ const inputFailure = new Promise((_resolve, reject) => {
113
+ rejectInput = reject;
114
+ });
115
+ void (async () => {
116
+ try {
117
+ while (true) {
118
+ const next = await iterator.next();
119
+ if (next.done) {
120
+ if (stoppingInput)
121
+ return;
122
+ const error = new Error("client-tool command input closed during execution");
123
+ inputEnded = true;
124
+ controller.abort(error);
125
+ rejectPending(error);
126
+ rejectInput(error);
127
+ return;
128
+ }
129
+ const response = parseExecResponseFrame(next.value);
130
+ const request = pending.get(response.requestId);
131
+ if (!request)
132
+ continue;
133
+ pending.delete(response.requestId);
134
+ request.signal.removeEventListener("abort", request.onAbort);
135
+ if (response.ok) {
136
+ request.resolve(response.result);
137
+ }
138
+ else {
139
+ request.reject(new Error(response.error));
140
+ }
141
+ }
142
+ }
143
+ catch (error) {
144
+ if (stoppingInput)
145
+ return;
146
+ inputEnded = true;
147
+ controller.abort(error);
148
+ rejectPending(error);
149
+ rejectInput(error);
150
+ }
151
+ })();
152
+ const executionEnvironment = {
153
+ exec: async (command, options = {}) => {
154
+ if (inputEnded) {
155
+ throw new Error("client-tool command input is closed");
156
+ }
157
+ const { signal: operationSignal, stdin, ...execOptions } = options;
158
+ const signal = operationSignal
159
+ ? AbortSignal.any([controller.signal, operationSignal])
160
+ : controller.signal;
161
+ signal.throwIfAborted();
162
+ const requestId = String(++requestSequence);
163
+ const result = new Promise((resolve, reject) => {
164
+ const onAbort = () => {
165
+ pending.delete(requestId);
166
+ void writeFrame({
167
+ version: TAU_CLIENT_TOOL_COMMAND_PROTOCOL_VERSION,
168
+ type: "exec.cancel",
169
+ requestId,
170
+ }).catch(() => undefined);
171
+ reject(signal.reason);
172
+ };
173
+ pending.set(requestId, { resolve, reject, signal, onAbort });
174
+ signal.addEventListener("abort", onAbort, { once: true });
175
+ });
176
+ try {
177
+ await writeFrame({
178
+ version: TAU_CLIENT_TOOL_COMMAND_PROTOCOL_VERSION,
179
+ type: "exec",
180
+ requestId,
181
+ command,
182
+ options: {
183
+ ...execOptions,
184
+ ...(stdin === undefined ? {} : { stdinBase64: stdin.toString("base64") }),
185
+ },
186
+ });
187
+ }
188
+ catch (error) {
189
+ const request = pending.get(requestId);
190
+ if (request) {
191
+ pending.delete(requestId);
192
+ request.signal.removeEventListener("abort", request.onAbort);
193
+ request.reject(error);
194
+ }
195
+ }
196
+ return await result;
197
+ },
198
+ };
199
+ const handled = Promise.resolve(handler(invocation.arguments, {
200
+ sessionId: invocation.sessionId,
201
+ callId: invocation.callId,
202
+ signal: controller.signal,
203
+ executionEnvironment,
204
+ }));
205
+ const result = await Promise.race([handled, inputFailure]);
206
+ const content = typeof result === "string" ? result : result.content;
207
+ await writeFrame({
208
+ version: TAU_CLIENT_TOOL_COMMAND_PROTOCOL_VERSION,
209
+ type: "result",
210
+ content,
211
+ });
212
+ }
213
+ catch (error) {
214
+ const message = error instanceof Error ? error.message : String(error);
215
+ process.stderr.write(`${message}\n`);
216
+ process.exitCode = 1;
217
+ }
218
+ finally {
219
+ stoppingInput = true;
220
+ rejectPending(new Error("client-tool command finished"));
221
+ lines.close();
222
+ process.stdin.pause();
223
+ process.removeListener("SIGINT", abort);
224
+ process.removeListener("SIGTERM", abort);
225
+ }
226
+ }
227
+ export function parseTauClientToolCommandOutput(value) {
228
+ const parsed = z
229
+ .discriminatedUnion("type", [execRequestSchema, execCancelSchema, resultSchema])
230
+ .safeParse(value);
231
+ if (!parsed.success) {
232
+ throw new Error("command client tool returned an invalid version-2 protocol frame");
233
+ }
234
+ return parsed.data;
235
+ }
236
+ export function createTauClientToolCommandInvoke(options) {
237
+ return {
238
+ version: TAU_CLIENT_TOOL_COMMAND_PROTOCOL_VERSION,
239
+ type: "invoke",
240
+ ...options,
241
+ };
242
+ }
243
+ export function createTauClientToolCommandExecResponse(options) {
244
+ return options.result !== undefined
245
+ ? {
246
+ version: TAU_CLIENT_TOOL_COMMAND_PROTOCOL_VERSION,
247
+ type: "exec.result",
248
+ requestId: options.requestId,
249
+ ok: true,
250
+ result: options.result,
251
+ }
252
+ : {
253
+ version: TAU_CLIENT_TOOL_COMMAND_PROTOCOL_VERSION,
254
+ type: "exec.result",
255
+ requestId: options.requestId,
256
+ ok: false,
257
+ error: options.error ?? "execution failed",
258
+ };
259
+ }
260
+ function parseInvokeFrame(line) {
261
+ const parsed = invokeSchema.safeParse(parseJsonLine(line));
262
+ if (!parsed.success) {
263
+ throw new Error("client-tool command received an invalid version-2 invocation");
264
+ }
265
+ return parsed.data;
266
+ }
267
+ function parseExecResponseFrame(line) {
268
+ const parsed = execResponseSchema.safeParse(parseJsonLine(line));
269
+ if (!parsed.success) {
270
+ throw new Error("client-tool command received an invalid execution response");
271
+ }
272
+ return parsed.data;
273
+ }
274
+ function parseJsonLine(line) {
275
+ try {
276
+ return JSON.parse(line);
277
+ }
278
+ catch {
279
+ throw new Error("client-tool command received invalid JSON");
280
+ }
281
+ }
282
+ //# sourceMappingURL=client_tool_command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client_tool_command.js","sourceRoot":"","sources":["../../src/sdk/client_tool_command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { type TauCodeModeDefinition } from "../code_mode/runtime.js";
2
+ import type { TauSdkClientTool } from "./types.js";
3
+ export type TauSdkCodeModeClientToolOptions = TauCodeModeDefinition & {
4
+ description: string;
5
+ };
6
+ export declare function createTauCodeModeClientTool(options: TauSdkCodeModeClientToolOptions): TauSdkClientTool;
@@ -0,0 +1,58 @@
1
+ import { executeTauCodeMode, validateTauCodeModeDefinition, } from "../code_mode/runtime.js";
2
+ export function createTauCodeModeClientTool(options) {
3
+ const definition = {
4
+ name: options.name,
5
+ documentation: options.documentation,
6
+ api: options.api,
7
+ ...(options.timeoutMs === undefined ? {} : { timeoutMs: options.timeoutMs }),
8
+ ...(options.persistOutput === undefined ? {} : { persistOutput: options.persistOutput }),
9
+ };
10
+ validateTauCodeModeDefinition(definition);
11
+ if (!options.description.trim()) {
12
+ throw new Error("code-mode client tool description must not be empty");
13
+ }
14
+ return {
15
+ schema: {
16
+ name: options.name,
17
+ description: options.description,
18
+ parameters: {
19
+ type: "object",
20
+ properties: {
21
+ code: {
22
+ type: "string",
23
+ description: "JavaScript source to execute. Use console output to return information.",
24
+ },
25
+ },
26
+ required: ["code"],
27
+ additionalProperties: false,
28
+ },
29
+ ...(options.timeoutMs === undefined ? {} : { executionTimeoutMs: options.timeoutMs }),
30
+ },
31
+ execute: async (args, context) => {
32
+ const code = parseCodeArguments(args);
33
+ return await executeTauCodeMode({
34
+ ...definition,
35
+ code,
36
+ signal: context.signal,
37
+ invocation: {
38
+ sessionId: context.sessionId,
39
+ callId: context.callId,
40
+ },
41
+ executionEnvironment: context.executionEnvironment,
42
+ });
43
+ },
44
+ };
45
+ }
46
+ function parseCodeArguments(value) {
47
+ if (typeof value !== "object" || value === null) {
48
+ throw new Error("code-mode client tool arguments must be an object");
49
+ }
50
+ const args = value;
51
+ if (typeof args.code !== "string" ||
52
+ !args.code.trim() ||
53
+ Object.keys(args).some((key) => key !== "code")) {
54
+ throw new Error("code-mode client tool arguments must contain exactly one non-empty 'code' string");
55
+ }
56
+ return args.code;
57
+ }
58
+ //# sourceMappingURL=code_mode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code_mode.js","sourceRoot":"","sources":["../../src/sdk/code_mode.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAElB,6BAA6B,GAC9B,MAAM,yBAAyB,CAAC;AAOjC,MAAM,UAAU,2BAA2B,CACzC,OAAwC;IAExC,MAAM,UAAU,GAA0B;QACxC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,GAAG,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5E,GAAG,CAAC,OAAO,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC;KACzF,CAAC;IACF,6BAA6B,CAAC,UAAU,CAAC,CAAC;IAC1C,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IAED,OAAO;QACL,MAAM,EAAE;YACN,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,yEAAyE;qBACvF;iBACF;gBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;gBAClB,oBAAoB,EAAE,KAAK;aAC5B;YACD,GAAG,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;SACtF;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;YACtC,OAAO,MAAM,kBAAkB,CAAC;gBAC9B,GAAG,UAAU;gBACb,IAAI;gBACJ,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,UAAU,EAAE;oBACV,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;iBACvB;gBACD,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;aACnD,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IACD,MAAM,IAAI,GAAG,KAAgC,CAAC;IAC9C,IACE,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;QAC7B,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;QACjB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,MAAM,CAAC,EAC/C,CAAC;QACD,MAAM,IAAI,KAAK,CACb,kFAAkF,CACnF,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC;AACnB,CAAC"}
@@ -1,10 +1,14 @@
1
- export type { SessionProtocolDelta, SessionProtocolFeedbackEvent, SessionProtocolFeedbackTone, SessionProtocolPendingUserMessage, SessionProtocolPendingUserMessagesMessage, SessionProtocolPendingUserMessagesState, SessionProtocolSnapshot, SessionProtocolTurnRecord, } from "../protocol/index.js";
2
- export { applySessionProtocolDelta } from "../protocol/index.js";
3
- export type { SessionProtocolDeltaListener, SessionProtocolEphemeralListener, SessionProtocolFailureListener, SessionProtocolPendingUserMessagesListener, SessionProtocolSpawnedProcess, SessionProtocolTransport, TauSessionProtocolError, TauSessionProtocolErrorCode, WebSocketSessionProtocolTransportOptions, } from "../transport/index.js";
1
+ export type { BuildTauCodeModeToolDescriptionOptions, ExecuteTauCodeModeOptions, TauCodeModeApi, TauCodeModeDefinition, TauCodeModeExecutionStatus, TauCodeModeHandler, TauCodeModeHandlerContext, TauCodeModeInvocation, TauCodeModeJsonValue, TauCodeModePersistOutput, TauCodeModeResult, } from "../code_mode/runtime.js";
2
+ export { buildTauCodeModeToolDescription, executeTauCodeMode, TAU_CODE_MODE_DEFAULT_TIMEOUT_MS, TAU_CODE_MODE_MAX_OUTPUT_TOKENS, } from "../code_mode/runtime.js";
3
+ export type { SessionProtocolDelta, SessionProtocolFeedbackEvent, SessionProtocolFeedbackTone, SessionProtocolPendingUserMessage, SessionProtocolPendingUserMessagesMessage, SessionProtocolPendingUserMessagesState, SessionProtocolSnapshot, SessionProtocolSubagentActivitiesAgentState, SessionProtocolSubagentActivitiesChange, SessionProtocolSubagentActivitiesMessage, SessionProtocolSubagentActivitiesState, SessionProtocolSubagentActivity, SessionProtocolTurnRecord, } from "../protocol/index.js";
4
+ export { applySessionProtocolDelta, applySessionProtocolSubagentActivitiesMessage, } from "../protocol/index.js";
5
+ export type { SessionProtocolDeltaListener, SessionProtocolEphemeralListener, SessionProtocolFailureListener, SessionProtocolPendingUserMessagesListener, SessionProtocolSpawnedProcess, SessionProtocolSubagentActivitiesListener, SessionProtocolTransport, TauSessionProtocolError, TauSessionProtocolErrorCode, WebSocketSessionProtocolTransportOptions, } from "../transport/index.js";
4
6
  export { StdioSessionProtocolTransport, TauProcessError, TauSessionClientError, TauSessionProtocolResponseError, TauTransportError, WebSocketSessionProtocolTransport, } from "../transport/index.js";
5
7
  export { createTauSdkClient, createTauSdkWebSocketClient } from "./client.js";
8
+ export { runTauClientToolCommand, TAU_CLIENT_TOOL_COMMAND_PROTOCOL_VERSION, type TauClientToolCommandHandler, } from "./client_tool_command.js";
9
+ export { createTauCodeModeClientTool, type TauSdkCodeModeClientToolOptions, } from "./code_mode.js";
6
10
  export { createTauSdkClientFromTransport } from "./session.js";
7
- export type { TauSdkAutocompletePathsResult, TauSdkClient, TauSdkClientOptions, TauSdkCreateSessionInput, TauSdkDelta, TauSdkDeltaListener, TauSdkEphemeral, TauSdkEphemeralAgentTool, TauSdkEphemeralCloseResult, TauSdkEphemeralCreateResult, TauSdkEphemeralListener, TauSdkEphemeralSubmitResult, TauSdkInitializeParams, TauSdkPendingUserMessagesListener, TauSdkPendingUserMessagesMessage, TauSdkPendingUserMessagesState, TauSdkReadyMessage, TauSdkRequestId, TauSdkResolvePromptResult, TauSdkSession, TauSdkSessionCancelPendingMessagesResult, TauSdkSessionClearGoalResult, TauSdkSessionClient, TauSdkSessionCompactResult, TauSdkSessionExecResult, TauSdkSessionInterruptResult, TauSdkSessionInterruptSubagentResult, TauSdkSessionProtocolMethod, TauSdkSessionQueueResult, TauSdkSessionRecordResult, TauSdkSessionReloadResult, TauSdkSessionResumeGoalResult, TauSdkSessionRetryResult, TauSdkSessionRewindResult, TauSdkSessionSampleInput, TauSdkSessionSampleResult, TauSdkSessionSetPersonaResult, TauSdkSessionSetReasoningResult, TauSdkSessionSnapshotResult, TauSdkSessionStartGoalResult, TauSdkSessionSteerResult, TauSdkSessionSubmitResult, TauSdkSessionSummary, TauSdkSessionTurnOutcome, TauSdkSessionTurnRecord, TauSdkSessionUnobserveResult, TauSdkSessionUserMessageOptions, TauSdkTransportClientOptions, TauSdkWebSocketClientOptions, } from "./types.js";
11
+ export type { TauSdkAutocompletePathsResult, TauSdkClient, TauSdkClientOptions, TauSdkClientTool, TauSdkClientToolContext, TauSdkClientToolExecutionEnvironment, TauSdkClientToolResult, TauSdkCreateSessionInput, TauSdkDelta, TauSdkDeltaListener, TauSdkEphemeral, TauSdkEphemeralAgentTool, TauSdkEphemeralCloseResult, TauSdkEphemeralCreateResult, TauSdkEphemeralListener, TauSdkEphemeralSubmitResult, TauSdkInitializeParams, TauSdkPendingUserMessagesListener, TauSdkPendingUserMessagesMessage, TauSdkPendingUserMessagesState, TauSdkReadyMessage, TauSdkRequestId, TauSdkResolvePromptResult, TauSdkSession, TauSdkSessionCancelPendingMessagesResult, TauSdkSessionClearGoalResult, TauSdkSessionClient, TauSdkSessionCompactResult, TauSdkSessionExecOptions, TauSdkSessionExecResult, TauSdkSessionInterruptResult, TauSdkSessionInterruptSubagentResult, TauSdkSessionProtocolMethod, TauSdkSessionQueueResult, TauSdkSessionRecordResult, TauSdkSessionReloadResult, TauSdkSessionResumeGoalResult, TauSdkSessionRetryResult, TauSdkSessionRewindResult, TauSdkSessionSampleInput, TauSdkSessionSampleResult, TauSdkSessionSetPersonaResult, TauSdkSessionSetReasoningResult, TauSdkSessionSnapshotResult, TauSdkSessionStartGoalResult, TauSdkSessionSteerResult, TauSdkSessionSubmitResult, TauSdkSessionSummary, TauSdkSessionTurnOutcome, TauSdkSessionTurnRecord, TauSdkSessionUnobserveResult, TauSdkSessionUserMessageOptions, TauSdkSubagentActivitiesListener, TauSdkSubagentActivitiesMessage, TauSdkSubagentActivitiesState, TauSdkTransportClientOptions, TauSdkWebSocketClientOptions, } from "./types.js";
8
12
  export type { TauSdkUserTextProjection } from "./user_text.js";
9
13
  export { getTauUserDisplayText, getTauUserModelText, projectTauUserText } from "./user_text.js";
10
14
  export declare function getTauSdkSessionTurnRecord(snapshot: import("../protocol/index.js").SessionProtocolSnapshot, userHistoryEntryId: string): import("./types.js").TauSdkSessionTurnRecord | undefined;
package/dist/sdk/index.js CHANGED
@@ -1,6 +1,9 @@
1
- export { applySessionProtocolDelta } from "../protocol/index.js";
1
+ export { buildTauCodeModeToolDescription, executeTauCodeMode, TAU_CODE_MODE_DEFAULT_TIMEOUT_MS, TAU_CODE_MODE_MAX_OUTPUT_TOKENS, } from "../code_mode/runtime.js";
2
+ export { applySessionProtocolDelta, applySessionProtocolSubagentActivitiesMessage, } from "../protocol/index.js";
2
3
  export { StdioSessionProtocolTransport, TauProcessError, TauSessionClientError, TauSessionProtocolResponseError, TauTransportError, WebSocketSessionProtocolTransport, } from "../transport/index.js";
3
4
  export { createTauSdkClient, createTauSdkWebSocketClient } from "./client.js";
5
+ export { runTauClientToolCommand, TAU_CLIENT_TOOL_COMMAND_PROTOCOL_VERSION, } from "./client_tool_command.js";
6
+ export { createTauCodeModeClientTool, } from "./code_mode.js";
4
7
  export { createTauSdkClientFromTransport } from "./session.js";
5
8
  export { getTauUserDisplayText, getTauUserModelText, projectTauUserText } from "./user_text.js";
6
9
  export function getTauSdkSessionTurnRecord(snapshot, userHistoryEntryId) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sdk/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAYjE,OAAO,EACL,6BAA6B,EAC7B,eAAe,EACf,qBAAqB,EACrB,+BAA+B,EAC/B,iBAAiB,EACjB,iCAAiC,GAClC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,EAAE,+BAA+B,EAAE,MAAM,cAAc,CAAC;AAqD/D,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEhG,MAAM,UAAU,0BAA0B,CACxC,QAAgE,EAChE,kBAA0B;IAE1B,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC;QACtD,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,kBAAkB,CAAC;QACpC,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,QAAgE,EAChE,kBAA0B;IAE1B,MAAM,MAAM,GAAG,0BAA0B,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IACxE,OAAO,MAAM,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAClE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sdk/index.ts"],"names":[],"mappings":"AAaA,OAAO,EACL,+BAA+B,EAC/B,kBAAkB,EAClB,gCAAgC,EAChC,+BAA+B,GAChC,MAAM,yBAAyB,CAAC;AAgBjC,OAAO,EACL,yBAAyB,EACzB,6CAA6C,GAC9C,MAAM,sBAAsB,CAAC;AAa9B,OAAO,EACL,6BAA6B,EAC7B,eAAe,EACf,qBAAqB,EACrB,+BAA+B,EAC/B,iBAAiB,EACjB,iCAAiC,GAClC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,EACL,uBAAuB,EACvB,wCAAwC,GAEzC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,2BAA2B,GAE5B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,+BAA+B,EAAE,MAAM,cAAc,CAAC;AA6D/D,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEhG,MAAM,UAAU,0BAA0B,CACxC,QAAgE,EAChE,kBAA0B;IAE1B,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC;QACtD,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,kBAAkB,CAAC;QACpC,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,QAAgE,EAChE,kBAA0B;IAE1B,MAAM,MAAM,GAAG,0BAA0B,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IACxE,OAAO,MAAM,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAClE,CAAC"}