@markusylisiurunen/tau 0.3.71 → 0.3.73

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 (154) hide show
  1. package/dist/core/agent/agent_runtime.js +121 -65
  2. package/dist/core/agent/agent_runtime.js.map +1 -1
  3. package/dist/core/cli.js +2 -2
  4. package/dist/core/cli.js.map +1 -1
  5. package/dist/core/config/builtin_themes.js +31 -0
  6. package/dist/core/config/builtin_themes.js.map +1 -1
  7. package/dist/core/history/remote_history_client.js +1 -0
  8. package/dist/core/history/remote_history_client.js.map +1 -1
  9. package/dist/core/history/transcript.js +9 -0
  10. package/dist/core/history/transcript.js.map +1 -1
  11. package/dist/core/personas.js +29 -22
  12. package/dist/core/personas.js.map +1 -1
  13. package/dist/core/runtime/chat_runtime.js +3 -0
  14. package/dist/core/runtime/chat_runtime.js.map +1 -1
  15. package/dist/core/runtime/model_sampler.js +4 -1
  16. package/dist/core/runtime/model_sampler.js.map +1 -1
  17. package/dist/core/session/auto_compaction_archive.js +18 -2
  18. package/dist/core/session/auto_compaction_archive.js.map +1 -1
  19. package/dist/core/session/compaction.js +12 -8
  20. package/dist/core/session/compaction.js.map +1 -1
  21. package/dist/core/static/code_mode/history/documentation.md +1 -1
  22. package/dist/core/static/tau_docs/config-reference.md +4 -4
  23. package/dist/core/static/tau_docs/configuration.md +3 -3
  24. package/dist/core/static/tau_docs/getting-started.md +4 -4
  25. package/dist/core/static/tau_docs/history.md +2 -1
  26. package/dist/core/static/tau_docs/models.md +2 -2
  27. package/dist/core/static/tau_docs/node-sdk.md +1 -1
  28. package/dist/core/static/tau_docs/personas.md +8 -2
  29. package/dist/core/static/tau_docs/remote-sessions.md +1 -1
  30. package/dist/core/static/tau_docs/security.md +1 -1
  31. package/dist/core/static/tau_docs/session-protocol-methods.md +3 -3
  32. package/dist/core/static/tau_docs/session-protocol.md +13 -9
  33. package/dist/core/static/tau_docs/sessions.md +9 -1
  34. package/dist/core/static/tau_docs/subagents.md +2 -2
  35. package/dist/core/static/tau_docs/telegram.md +6 -6
  36. package/dist/core/static/tau_docs/tools.md +4 -0
  37. package/dist/core/static/tau_docs/tui.md +6 -4
  38. package/dist/core/tools/bash.js +3 -2
  39. package/dist/core/tools/bash.js.map +1 -1
  40. package/dist/core/tools/bash_jobs.js +2 -1
  41. package/dist/core/tools/bash_jobs.js.map +1 -1
  42. package/dist/core/utils/compact.js +8 -0
  43. package/dist/core/utils/compact.js.map +1 -1
  44. package/dist/core/utils/gemini_transcription.js +30 -12
  45. package/dist/core/utils/gemini_transcription.js.map +1 -1
  46. package/dist/core/utils/openai_transcription.js +1 -1
  47. package/dist/core/utils/openai_transcription.js.map +1 -1
  48. package/dist/core/utils/speech_to_text.js +4 -0
  49. package/dist/core/utils/speech_to_text.js.map +1 -1
  50. package/dist/core/version.js +2 -2
  51. package/dist/diff_tool/app/dist/assets/{angular-html-D8XZ6L1W.js → angular-html-Bz4AeRpU.js} +1 -1
  52. package/dist/diff_tool/app/dist/assets/{angular-ts-B2aLLY_Z.js → angular-ts-DtR-9mR2.js} +1 -1
  53. package/dist/diff_tool/app/dist/assets/{apl-CfprQVX4.js → apl-BQ43WeiF.js} +1 -1
  54. package/dist/diff_tool/app/dist/assets/{astro-D2f_I3HE.js → astro-DgVTgTDV.js} +1 -1
  55. package/dist/diff_tool/app/dist/assets/{blade-CLtAGpBc.js → blade-Cw07CpIp.js} +1 -1
  56. package/dist/diff_tool/app/dist/assets/{c-Qn9tF0wR.js → c-cVuArWdv.js} +1 -1
  57. package/dist/diff_tool/app/dist/assets/{chapel-DabpXN2c.js → chapel-J_c7UtHw.js} +1 -1
  58. package/dist/diff_tool/app/dist/assets/{cobol-BS9rswW2.js → cobol-DeNy12Rc.js} +1 -1
  59. package/dist/diff_tool/app/dist/assets/{coffee-DJjZTCkh.js → coffee-BuJNQF73.js} +1 -1
  60. package/dist/diff_tool/app/dist/assets/{cpp-6G1npUMW.js → cpp-D5UWZzvw.js} +1 -1
  61. package/dist/diff_tool/app/dist/assets/{crystal-yGprvv5C.js → crystal-DlyigmxA.js} +1 -1
  62. package/dist/diff_tool/app/dist/assets/{css-BnlmtDZM.js → css-B3tDaq6J.js} +1 -1
  63. package/dist/diff_tool/app/dist/assets/{edge-DSSWy6df.js → edge-Cl-zwjoo.js} +1 -1
  64. package/dist/diff_tool/app/dist/assets/{elixir-Drn1Bw4g.js → elixir-Cu1MwzIx.js} +1 -1
  65. package/dist/diff_tool/app/dist/assets/{elm-BtjpPFL1.js → elm-ChJX3Fht.js} +1 -1
  66. package/dist/diff_tool/app/dist/assets/{erb-I91oznQj.js → erb-C633539y.js} +1 -1
  67. package/dist/diff_tool/app/dist/assets/{git-rebase-B6EXosZ2.js → git-rebase-dSyEL3XE.js} +1 -1
  68. package/dist/diff_tool/app/dist/assets/{glimmer-js-Brv1Xv0-.js → glimmer-js-DdEjEvle.js} +1 -1
  69. package/dist/diff_tool/app/dist/assets/{glimmer-ts-hSHEQSwK.js → glimmer-ts-gxlkJwxf.js} +1 -1
  70. package/dist/diff_tool/app/dist/assets/{glsl-Bztv6m8n.js → glsl-BwcrXep1.js} +1 -1
  71. package/dist/diff_tool/app/dist/assets/{graphql-D6eZu1mk.js → graphql-B5ZrSlf6.js} +1 -1
  72. package/dist/diff_tool/app/dist/assets/{hack-MG8_CyJU.js → hack-Dv0Ydnfo.js} +1 -1
  73. package/dist/diff_tool/app/dist/assets/{haml-DOpHECVn.js → haml-Bg7LdFxh.js} +1 -1
  74. package/dist/diff_tool/app/dist/assets/{handlebars-CXn0JyYm.js → handlebars-glMo_Z8K.js} +1 -1
  75. package/dist/diff_tool/app/dist/assets/{html-yv5WBZF_.js → html-CwqxfM5g.js} +1 -1
  76. package/dist/diff_tool/app/dist/assets/{html-derivative-D_UZAUld.js → html-derivative-CNBhWOif.js} +1 -1
  77. package/dist/diff_tool/app/dist/assets/{http-Cuq8OMRz.js → http-CyujTI3m.js} +1 -1
  78. package/dist/diff_tool/app/dist/assets/{hurl-BpL1rvQi.js → hurl-Cl3SfLcy.js} +1 -1
  79. package/dist/diff_tool/app/dist/assets/index-B6qzTNa4.js +340 -0
  80. package/dist/diff_tool/app/dist/assets/{java-lOL4pIA5.js → java-yAJ9r-ng.js} +1 -1
  81. package/dist/diff_tool/app/dist/assets/{javascript-24hXqooT.js → javascript-CNo473Bi.js} +1 -1
  82. package/dist/diff_tool/app/dist/assets/{jinja-CcJm4wgQ.js → jinja-DYKv3KJJ.js} +1 -1
  83. package/dist/diff_tool/app/dist/assets/{jison-CLWGaM3Z.js → jison-v7-Cvbl-.js} +1 -1
  84. package/dist/diff_tool/app/dist/assets/{json-Q4rTF_eD.js → json-CcIOg31O.js} +1 -1
  85. package/dist/diff_tool/app/dist/assets/{jsx-DgKO46Ra.js → jsx-DdUoAN3M.js} +1 -1
  86. package/dist/diff_tool/app/dist/assets/{julia-CcL4q47t.js → julia-CmrsECo7.js} +1 -1
  87. package/dist/diff_tool/app/dist/assets/{just-CSIuzTSo.js → just-ChVqWJfZ.js} +1 -1
  88. package/dist/diff_tool/app/dist/assets/{latex-Ciy3mJH4.js → latex-CSr2MXti.js} +1 -1
  89. package/dist/diff_tool/app/dist/assets/{liquid-OONbg0h-.js → liquid-PqLruLAt.js} +1 -1
  90. package/dist/diff_tool/app/dist/assets/{lua-Btm14Bzf.js → lua-BgGBpNvf.js} +1 -1
  91. package/dist/diff_tool/app/dist/assets/{marko-BmewWoW6.js → marko-SFqsIi7s.js} +1 -1
  92. package/dist/diff_tool/app/dist/assets/{mdc-sWVstZzQ.js → mdc-OMY7DRCd.js} +1 -1
  93. package/dist/diff_tool/app/dist/assets/{nginx-Dcc3mAzJ.js → nginx-B6OUK7I1.js} +1 -1
  94. package/dist/diff_tool/app/dist/assets/{nim-vtS9CCAW.js → nim-8XR8rRwa.js} +1 -1
  95. package/dist/diff_tool/app/dist/assets/{org-B7feKU2q.js → org-BMVlj0WE.js} +1 -1
  96. package/dist/diff_tool/app/dist/assets/{perl-7rFQ23Cs.js → perl-CZcZ1Wwq.js} +1 -1
  97. package/dist/diff_tool/app/dist/assets/{php-AmgTWRKZ.js → php-XGIDda3K.js} +1 -1
  98. package/dist/diff_tool/app/dist/assets/{pug-eaJXnOWe.js → pug-BabDTZ9H.js} +1 -1
  99. package/dist/diff_tool/app/dist/assets/{qml-BBoySWOD.js → qml-Dh6hEeD6.js} +1 -1
  100. package/dist/diff_tool/app/dist/assets/{r-B2GBKjgG.js → r-BMpJDcBE.js} +1 -1
  101. package/dist/diff_tool/app/dist/assets/{razor-D8emi4Jp.js → razor-Bj3Isd7l.js} +1 -1
  102. package/dist/diff_tool/app/dist/assets/{regexp-CKBgZg4Y.js → regexp-zj7qgpKa.js} +1 -1
  103. package/dist/diff_tool/app/dist/assets/{rst-CVpwV-bV.js → rst-BbPHwnEt.js} +1 -1
  104. package/dist/diff_tool/app/dist/assets/{ruby-DmnwJ-ac.js → ruby-frABERx7.js} +1 -1
  105. package/dist/diff_tool/app/dist/assets/{sas-evRrvJrO.js → sas-C8mu1Dyy.js} +1 -1
  106. package/dist/diff_tool/app/dist/assets/{scss-Do3O6tsR.js → scss-BVco9vX5.js} +1 -1
  107. package/dist/diff_tool/app/dist/assets/{shellscript-D7jRMvC2.js → shellscript-BTNlh7y9.js} +1 -1
  108. package/dist/diff_tool/app/dist/assets/{shellsession-BiBPKva9.js → shellsession-D7ey1BO-.js} +1 -1
  109. package/dist/diff_tool/app/dist/assets/{soy-CR-Q7WHe.js → soy-dQGGTG6M.js} +1 -1
  110. package/dist/diff_tool/app/dist/assets/{sql-CoBwCDCB.js → sql-DUAdkqaP.js} +1 -1
  111. package/dist/diff_tool/app/dist/assets/{stata-D6KdJ8PZ.js → stata-BVWGYdTB.js} +1 -1
  112. package/dist/diff_tool/app/dist/assets/{surrealql-Cmqi02II.js → surrealql-DRMjeuPn.js} +1 -1
  113. package/dist/diff_tool/app/dist/assets/{svelte-DdZNRb2C.js → svelte-CvWRMjnM.js} +1 -1
  114. package/dist/diff_tool/app/dist/assets/{templ-CFz1LMKK.js → templ-mi-X_uNU.js} +1 -1
  115. package/dist/diff_tool/app/dist/assets/{tex-m3WJ8u0a.js → tex-hP63zYVU.js} +1 -1
  116. package/dist/diff_tool/app/dist/assets/{ts-tags-fLY9Y9r5.js → ts-tags-FKkmztAd.js} +1 -1
  117. package/dist/diff_tool/app/dist/assets/{tsx-B6WfBUEX.js → tsx-dsY2OUmA.js} +1 -1
  118. package/dist/diff_tool/app/dist/assets/{twig-D9vOrthV.js → twig-DNQYIm5Y.js} +1 -1
  119. package/dist/diff_tool/app/dist/assets/{typescript-BZTxacEG.js → typescript-Cw0J6v6b.js} +1 -1
  120. package/dist/diff_tool/app/dist/assets/{typst-JP3so6Z2.js → typst-DG4tB9ci.js} +1 -1
  121. package/dist/diff_tool/app/dist/assets/{vue-gWDhG9Fb.js → vue-BCeYhEGU.js} +1 -1
  122. package/dist/diff_tool/app/dist/assets/{vue-html-CaRyGpdm.js → vue-html-BjK5VjUf.js} +1 -1
  123. package/dist/diff_tool/app/dist/assets/{vue-vine-DJXQ6msH.js → vue-vine-C5nERcfG.js} +1 -1
  124. package/dist/diff_tool/app/dist/assets/{xml-Cvn8jjwq.js → xml-Bf7Ghb04.js} +1 -1
  125. package/dist/diff_tool/app/dist/assets/{xsl-BpNEamvK.js → xsl-dx2g1C_f.js} +1 -1
  126. package/dist/diff_tool/app/dist/assets/{yaml-BQh9PoCE.js → yaml-D_jBlzML.js} +1 -1
  127. package/dist/diff_tool/app/dist/index.html +1 -1
  128. package/dist/history/worker/index.js +13 -8
  129. package/dist/history/worker/index.js.map +1 -1
  130. package/dist/history/worker/viewer.css +2 -2
  131. package/dist/history/worker/viewer.js +19 -10
  132. package/dist/host/local_session_host.js +31 -7
  133. package/dist/host/local_session_host.js.map +1 -1
  134. package/dist/protocol/session_protocol.d.ts +9 -4
  135. package/dist/protocol/session_protocol.js +19 -5
  136. package/dist/protocol/session_protocol.js.map +1 -1
  137. package/dist/protocol/system_message.d.ts +15 -0
  138. package/dist/protocol/system_message.js +30 -0
  139. package/dist/protocol/system_message.js.map +1 -0
  140. package/dist/tui/chat_view.js +3 -0
  141. package/dist/tui/chat_view.js.map +1 -1
  142. package/dist/tui/listen_capture.js +1 -0
  143. package/dist/tui/listen_capture.js.map +1 -1
  144. package/dist/tui/session_chat_controller.js +140 -63
  145. package/dist/tui/session_chat_controller.js.map +1 -1
  146. package/dist/tui/ui/components/editor.js +42 -0
  147. package/dist/tui/ui/components/editor.js.map +1 -1
  148. package/dist/tui/ui/custom_editor.js +50 -14
  149. package/dist/tui/ui/custom_editor.js.map +1 -1
  150. package/dist/tui/ui/theme/palette.js +2 -0
  151. package/dist/tui/ui/theme/palette.js.map +1 -1
  152. package/dist/tui/ui/theme/theme.js.map +1 -1
  153. package/package.json +15 -15
  154. package/dist/diff_tool/app/dist/assets/index-B4p26B5b.js +0 -1559
@@ -1,5 +1,6 @@
1
1
  import type { AssistantMessage, Message, TextContent, ThinkingContent, Tool, ToolCall } from "@earendil-works/pi-ai";
2
- export declare const SESSION_PROTOCOL_VERSION: 13;
2
+ import { type IntermediateSystemMessage } from "./system_message.js";
3
+ export declare const SESSION_PROTOCOL_VERSION: 14;
3
4
  export declare const SESSION_PROTOCOL_MAX_EXEC_CAPTURE_BYTES: number;
4
5
  export declare const SESSION_PROTOCOL_MAX_EXEC_STDIN_BYTES: number;
5
6
  export declare const SESSION_PROTOCOL_MAX_CLIENT_TOOL_PRESENTATION_BYTES: number;
@@ -109,7 +110,9 @@ export type SessionProtocolCancelExecParams = SessionProtocolSessionIdParams & {
109
110
  };
110
111
  export type SessionProtocolSampleContext = {
111
112
  systemPrompt: string;
112
- messages: Message[];
113
+ messages: (Exclude<Message, {
114
+ role: "system";
115
+ }> | IntermediateSystemMessage)[];
113
116
  tools?: Tool[];
114
117
  };
115
118
  export type SessionProtocolSampleOptions = {
@@ -363,7 +366,9 @@ export type SessionProtocolDraftAssistantMessage = {
363
366
  content: (TextContent | ThinkingContent | ToolCall)[];
364
367
  timestamp: number;
365
368
  };
366
- export type SessionProtocolMessagePayload = SessionProtocolSystemMessage | Message | SessionProtocolDraftAssistantMessage;
369
+ export type SessionProtocolMessagePayload = SessionProtocolSystemMessage | IntermediateSystemMessage | Exclude<Message, {
370
+ role: "system";
371
+ }> | SessionProtocolDraftAssistantMessage;
367
372
  export type SessionProtocolMessageState = "draft" | "committed" | "interrupted" | "discarded";
368
373
  export type SessionProtocolMessage = {
369
374
  id: string;
@@ -795,7 +800,7 @@ export type SessionProtocolParsedSuccessResponseMessage = Omit<SessionProtocolSu
795
800
  };
796
801
  export type SessionProtocolParsedResponseMessage = SessionProtocolParsedSuccessResponseMessage | SessionProtocolErrorResponseMessage;
797
802
  export type SessionProtocolDeltaCause = {
798
- type: "user-message" | "assistant-stream" | "assistant-message" | "tool-run" | "tool-result" | "notice" | "agent-run" | "maintenance" | "configuration" | "goal";
803
+ type: "user-message" | "system-message" | "assistant-stream" | "assistant-message" | "tool-run" | "tool-result" | "notice" | "agent-run" | "maintenance" | "configuration" | "goal";
799
804
  } | {
800
805
  type: "compaction";
801
806
  previousEpoch: number;
@@ -1,5 +1,6 @@
1
1
  import { z } from "zod";
2
- export const SESSION_PROTOCOL_VERSION = 13;
2
+ import { isIntermediateSystemMessage } from "./system_message.js";
3
+ export const SESSION_PROTOCOL_VERSION = 14;
3
4
  export const SESSION_PROTOCOL_MAX_EXEC_CAPTURE_BYTES = 24 * 1024 * 1024;
4
5
  export const SESSION_PROTOCOL_MAX_EXEC_STDIN_BYTES = 16 * 1024 * 1024;
5
6
  export const SESSION_PROTOCOL_MAX_CLIENT_TOOL_PRESENTATION_BYTES = 1024 * 1024;
@@ -420,6 +421,7 @@ const modelToolResultMessageSchema = z
420
421
  })
421
422
  .strip();
422
423
  const modelMessageSchema = z.union([
424
+ z.custom(isIntermediateSystemMessage),
423
425
  modelUserMessageSchema,
424
426
  modelAssistantMessageSchema,
425
427
  modelToolResultMessageSchema,
@@ -921,13 +923,11 @@ const sessionProtocolExecutionEnvironmentSnapshotSchema = z.discriminatedUnion("
921
923
  sessionProtocolCloudflareSandboxExecutionEnvironmentSnapshotSchema,
922
924
  sessionProtocolFlySpriteExecutionEnvironmentSnapshotSchema,
923
925
  ]);
924
- const sessionProtocolSystemMessageSchema = z
925
- .object({
926
+ const sessionProtocolSystemMessageSchema = z.strictObject({
926
927
  role: z.literal("system"),
927
928
  content: z.string(),
928
929
  timestamp: z.number().finite(),
929
- })
930
- .strip();
930
+ });
931
931
  const sessionProtocolDraftAssistantMessageSchema = z
932
932
  .object({
933
933
  role: z.literal("assistant"),
@@ -1297,6 +1297,19 @@ const sessionProtocolSnapshotSchema = z
1297
1297
  message: `duplicate message id '${message.id}'`,
1298
1298
  });
1299
1299
  }
1300
+ if (message.message.role === "system") {
1301
+ const isInitialPrompt = message === snapshot.messages[0];
1302
+ const isIntermediate = "metadata" in message.message;
1303
+ if (isInitialPrompt === isIntermediate) {
1304
+ ctx.addIssue({
1305
+ code: "custom",
1306
+ path: ["messages"],
1307
+ message: isInitialPrompt
1308
+ ? "the initial system prompt must not have intermediate metadata"
1309
+ : "intermediate system messages require metadata",
1310
+ });
1311
+ }
1312
+ }
1300
1313
  messagesById.set(message.id, message);
1301
1314
  }
1302
1315
  const checkpoint = snapshot.agentState.usageCheckpoint;
@@ -1544,6 +1557,7 @@ const sessionProtocolDeltaCauseSchema = z.union([
1544
1557
  .object({
1545
1558
  type: z.enum([
1546
1559
  "user-message",
1560
+ "system-message",
1547
1561
  "assistant-stream",
1548
1562
  "assistant-message",
1549
1563
  "tool-run",