@markusylisiurunen/tau 0.3.83 → 0.3.85

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 (155) hide show
  1. package/dist/code_mode/runtime.js +7 -1
  2. package/dist/code_mode/runtime.js.map +1 -1
  3. package/dist/core/agent/agent_runtime.js +4 -2
  4. package/dist/core/agent/agent_runtime.js.map +1 -1
  5. package/dist/core/commands/auto_compact.js +16 -0
  6. package/dist/core/commands/auto_compact.js.map +1 -0
  7. package/dist/core/commands/registry.js +27 -0
  8. package/dist/core/commands/registry.js.map +1 -1
  9. package/dist/core/config/markdown_export.js +33 -0
  10. package/dist/core/config/markdown_export.js.map +1 -0
  11. package/dist/core/config/schema.js +26 -1
  12. package/dist/core/config/schema.js.map +1 -1
  13. package/dist/core/runtime/chat_runtime.js +5 -0
  14. package/dist/core/runtime/chat_runtime.js.map +1 -1
  15. package/dist/core/session/auto_compaction_threshold.js +4 -0
  16. package/dist/core/session/auto_compaction_threshold.js.map +1 -0
  17. package/dist/core/static/code_mode/sandbox_runner.mjs +1 -1
  18. package/dist/core/static/tau_docs/config-reference.md +38 -2
  19. package/dist/core/static/tau_docs/node-sdk.md +5 -0
  20. package/dist/core/static/tau_docs/session-protocol-methods.md +24 -0
  21. package/dist/core/static/tau_docs/session-protocol.md +17 -10
  22. package/dist/core/static/tau_docs/sessions.md +14 -1
  23. package/dist/core/static/tau_docs/telegram.md +5 -2
  24. package/dist/core/static/tau_docs/tools.md +4 -0
  25. package/dist/core/static/tau_docs/tui.md +33 -2
  26. package/dist/core/subagents/agent_supervisor.js +1 -0
  27. package/dist/core/subagents/agent_supervisor.js.map +1 -1
  28. package/dist/core/telegram/adapter.js +38 -2
  29. package/dist/core/telegram/adapter.js.map +1 -1
  30. package/dist/core/telegram/cli.js +1 -0
  31. package/dist/core/telegram/cli.js.map +1 -1
  32. package/dist/core/telegram/runtime.js +1 -0
  33. package/dist/core/telegram/runtime.js.map +1 -1
  34. package/dist/core/telegram/session_manager.js +11 -0
  35. package/dist/core/telegram/session_manager.js.map +1 -1
  36. package/dist/core/tools/bash.js +8 -1
  37. package/dist/core/tools/bash.js.map +1 -1
  38. package/dist/core/tools/bash_jobs.js +35 -8
  39. package/dist/core/tools/bash_jobs.js.map +1 -1
  40. package/dist/core/tools/code.js +1 -1
  41. package/dist/core/tools/code.js.map +1 -1
  42. package/dist/core/utils/gemini_transcription.js +2 -0
  43. package/dist/core/utils/gemini_transcription.js.map +1 -1
  44. package/dist/core/utils/speech_to_text.js +2 -0
  45. package/dist/core/utils/speech_to_text.js.map +1 -1
  46. package/dist/core/utils/speech_to_text_keywords.js +22 -12
  47. package/dist/core/utils/speech_to_text_keywords.js.map +1 -1
  48. package/dist/core/version.js +2 -2
  49. package/dist/diff_tool/app/dist/assets/{angular-html-x29PkEoY.js → angular-html-B4L_MaLR.js} +1 -1
  50. package/dist/diff_tool/app/dist/assets/{angular-ts-CsWCqoCf.js → angular-ts-CiwufFbD.js} +1 -1
  51. package/dist/diff_tool/app/dist/assets/{apl-CEvdc7jl.js → apl-CQIDMP3F.js} +1 -1
  52. package/dist/diff_tool/app/dist/assets/{astro-Cgi6YxH2.js → astro-Wx66OLb0.js} +1 -1
  53. package/dist/diff_tool/app/dist/assets/{blade-B0pr7Zx6.js → blade-DXnqqGPA.js} +1 -1
  54. package/dist/diff_tool/app/dist/assets/{c-DDVLgtVy.js → c-l21u3-A0.js} +1 -1
  55. package/dist/diff_tool/app/dist/assets/{chapel-Bk9M7Jej.js → chapel-BkgHWS0P.js} +1 -1
  56. package/dist/diff_tool/app/dist/assets/{cobol-DyEvnPuC.js → cobol-CwOiba0w.js} +1 -1
  57. package/dist/diff_tool/app/dist/assets/{coffee-Di2-m3Jq.js → coffee-C8w28DlJ.js} +1 -1
  58. package/dist/diff_tool/app/dist/assets/{cpp-CWpAaUgO.js → cpp-D3xqdgbc.js} +1 -1
  59. package/dist/diff_tool/app/dist/assets/{crystal-CUker9Zt.js → crystal-CRf8LOyu.js} +1 -1
  60. package/dist/diff_tool/app/dist/assets/{css-D4XpBIiJ.js → css-CUMR9Ly4.js} +1 -1
  61. package/dist/diff_tool/app/dist/assets/{edge-CVxhhF7L.js → edge-BTpX8yJV.js} +1 -1
  62. package/dist/diff_tool/app/dist/assets/{elixir-B_FS9APl.js → elixir-POGP-I52.js} +1 -1
  63. package/dist/diff_tool/app/dist/assets/{elm-1KyefTkH.js → elm-zOJVh2AE.js} +1 -1
  64. package/dist/diff_tool/app/dist/assets/{erb-CCgO9dRW.js → erb-DiOEAgXb.js} +1 -1
  65. package/dist/diff_tool/app/dist/assets/{git-rebase-D0VYo_oY.js → git-rebase-BT97SYdA.js} +1 -1
  66. package/dist/diff_tool/app/dist/assets/{glimmer-js-Ce07ngjZ.js → glimmer-js-DpzhCjEm.js} +1 -1
  67. package/dist/diff_tool/app/dist/assets/{glimmer-ts-BmOM4djO.js → glimmer-ts-BuCtQrs9.js} +1 -1
  68. package/dist/diff_tool/app/dist/assets/{glsl-D-jkLYJ8.js → glsl-BzyoACHj.js} +1 -1
  69. package/dist/diff_tool/app/dist/assets/{graphql-DZOwJE5e.js → graphql-Cv8BbLZF.js} +1 -1
  70. package/dist/diff_tool/app/dist/assets/{hack-Cgvn19h8.js → hack-EhdcMRwJ.js} +1 -1
  71. package/dist/diff_tool/app/dist/assets/{haml-JTmDSYQl.js → haml-azll0DD8.js} +1 -1
  72. package/dist/diff_tool/app/dist/assets/{handlebars-CChh7Dy5.js → handlebars-BNlgXuhG.js} +1 -1
  73. package/dist/diff_tool/app/dist/assets/{html-BKgzx_cb.js → html-Cjm-6UiB.js} +1 -1
  74. package/dist/diff_tool/app/dist/assets/{html-derivative-CdFl0BmX.js → html-derivative-ClRNPLHI.js} +1 -1
  75. package/dist/diff_tool/app/dist/assets/{http-DZeL7KvH.js → http-DQdgAxMO.js} +1 -1
  76. package/dist/diff_tool/app/dist/assets/{hurl-CqKevOlQ.js → hurl-Dfueh8st.js} +1 -1
  77. package/dist/diff_tool/app/dist/assets/index-BE36eeqv.js +341 -0
  78. package/dist/diff_tool/app/dist/assets/{java-Sq3MCkId.js → java-nAkSlFoj.js} +1 -1
  79. package/dist/diff_tool/app/dist/assets/{javascript-CHZB4Nse.js → javascript-D_g3Qche.js} +1 -1
  80. package/dist/diff_tool/app/dist/assets/{jinja-C4ucJVla.js → jinja-BMUjVEdk.js} +1 -1
  81. package/dist/diff_tool/app/dist/assets/{jison-D3mprebA.js → jison-C_rh6-eB.js} +1 -1
  82. package/dist/diff_tool/app/dist/assets/{json-DgPfCYJ1.js → json-BFBj0_TJ.js} +1 -1
  83. package/dist/diff_tool/app/dist/assets/{jsx-BG-Tx0cw.js → jsx-BFei-Rhr.js} +1 -1
  84. package/dist/diff_tool/app/dist/assets/{julia-B1GnFeUC.js → julia-CuJzjT53.js} +1 -1
  85. package/dist/diff_tool/app/dist/assets/{just-_MZzo0MF.js → just-CV_scKWn.js} +1 -1
  86. package/dist/diff_tool/app/dist/assets/{latex-DI0kqjQy.js → latex-KeRkNfCN.js} +1 -1
  87. package/dist/diff_tool/app/dist/assets/{liquid-BtMAPeHl.js → liquid-yRjsS-4e.js} +1 -1
  88. package/dist/diff_tool/app/dist/assets/{lua-CFxaP0To.js → lua-kI0a7Fbt.js} +1 -1
  89. package/dist/diff_tool/app/dist/assets/{marko-BIJocuFI.js → marko-DmOJOGPk.js} +1 -1
  90. package/dist/diff_tool/app/dist/assets/{mdc-BAgrdjTH.js → mdc-CoqVCsIL.js} +1 -1
  91. package/dist/diff_tool/app/dist/assets/{nginx-DE-3CsYn.js → nginx-CK2uabuu.js} +1 -1
  92. package/dist/diff_tool/app/dist/assets/{nim-DOxeXLhb.js → nim-qA7cxfB7.js} +1 -1
  93. package/dist/diff_tool/app/dist/assets/{org-KTfP0tHA.js → org-Bvvp9H4m.js} +1 -1
  94. package/dist/diff_tool/app/dist/assets/{perl-BH-NxpgK.js → perl-BP906Mcw.js} +1 -1
  95. package/dist/diff_tool/app/dist/assets/{php-vuiVEXZK.js → php-Cjt0uedX.js} +1 -1
  96. package/dist/diff_tool/app/dist/assets/{pug-VlIlTMUy.js → pug-C0sR7nAO.js} +1 -1
  97. package/dist/diff_tool/app/dist/assets/{qml-k6wTtGG-.js → qml-DlptLuN4.js} +1 -1
  98. package/dist/diff_tool/app/dist/assets/{r-Ccjcb2zh.js → r-W5eX4omH.js} +1 -1
  99. package/dist/diff_tool/app/dist/assets/{razor-BNhYgSCv.js → razor-CAP1vL6a.js} +1 -1
  100. package/dist/diff_tool/app/dist/assets/{regexp-C4LFejPu.js → regexp-Bq1e6fq0.js} +1 -1
  101. package/dist/diff_tool/app/dist/assets/{rst-DXLxI-UJ.js → rst-D7RYb7u-.js} +1 -1
  102. package/dist/diff_tool/app/dist/assets/{ruby-BPuL4jDV.js → ruby-Cz3579Sp.js} +1 -1
  103. package/dist/diff_tool/app/dist/assets/{sas-B3Yz8snb.js → sas-Ca_Vq42s.js} +1 -1
  104. package/dist/diff_tool/app/dist/assets/{scss-B2AJ5vpk.js → scss-DgwMO34u.js} +1 -1
  105. package/dist/diff_tool/app/dist/assets/{shellscript-zyDexxnC.js → shellscript-YbQHq1wm.js} +1 -1
  106. package/dist/diff_tool/app/dist/assets/{shellsession-C8b8xluk.js → shellsession-BAksrqM_.js} +1 -1
  107. package/dist/diff_tool/app/dist/assets/{soy-DKWe_XML.js → soy-cyRcZwry.js} +1 -1
  108. package/dist/diff_tool/app/dist/assets/{sql-uEbz-Epf.js → sql-D1vUUAMm.js} +1 -1
  109. package/dist/diff_tool/app/dist/assets/{stata-DieRPmHY.js → stata-BxJk3dhl.js} +1 -1
  110. package/dist/diff_tool/app/dist/assets/{surrealql-Dbk3Sp1P.js → surrealql-BpUiQ4ps.js} +1 -1
  111. package/dist/diff_tool/app/dist/assets/{svelte-CjPbRmkM.js → svelte-Bw_YhkU0.js} +1 -1
  112. package/dist/diff_tool/app/dist/assets/{templ-Do_f5vc4.js → templ-57X6P_lM.js} +1 -1
  113. package/dist/diff_tool/app/dist/assets/{tex-UjLP4qUm.js → tex-iXK08Ufj.js} +1 -1
  114. package/dist/diff_tool/app/dist/assets/{ts-tags-5L2FutA6.js → ts-tags-De-CHDIf.js} +1 -1
  115. package/dist/diff_tool/app/dist/assets/{tsx-B1pNtpUr.js → tsx-Cmjayk0u.js} +1 -1
  116. package/dist/diff_tool/app/dist/assets/{twig-O41Vg_IM.js → twig-7Lf4LdtX.js} +1 -1
  117. package/dist/diff_tool/app/dist/assets/{typescript-Bj9uwnnJ.js → typescript-DlISvpw4.js} +1 -1
  118. package/dist/diff_tool/app/dist/assets/{typst-DsibO7oD.js → typst-hnqzVpPt.js} +1 -1
  119. package/dist/diff_tool/app/dist/assets/{vue-DPhaEurv.js → vue-DsAtRxeA.js} +1 -1
  120. package/dist/diff_tool/app/dist/assets/{vue-html-DDV9NSy1.js → vue-html-BcUQi5W0.js} +1 -1
  121. package/dist/diff_tool/app/dist/assets/{vue-vine-Dh4jOifx.js → vue-vine-CvEitBd4.js} +1 -1
  122. package/dist/diff_tool/app/dist/assets/{xml-DtIulkQk.js → xml-ouxdLlhn.js} +1 -1
  123. package/dist/diff_tool/app/dist/assets/{xsl-DoWtb58Z.js → xsl-Cnt-8nJk.js} +1 -1
  124. package/dist/diff_tool/app/dist/assets/{yaml-CZC-l1Dg.js → yaml-efQyCK3d.js} +1 -1
  125. package/dist/diff_tool/app/dist/index.html +1 -1
  126. package/dist/host/hosted_ephemeral_agent_session.js +1 -0
  127. package/dist/host/hosted_ephemeral_agent_session.js.map +1 -1
  128. package/dist/host/local_session_host.js +30 -1
  129. package/dist/host/local_session_host.js.map +1 -1
  130. package/dist/host/session_protocol_handler.js +18 -0
  131. package/dist/host/session_protocol_handler.js.map +1 -1
  132. package/dist/protocol/index.d.ts +1 -1
  133. package/dist/protocol/index.js.map +1 -1
  134. package/dist/protocol/session_protocol.d.ts +13 -2
  135. package/dist/protocol/session_protocol.js +31 -1
  136. package/dist/protocol/session_protocol.js.map +1 -1
  137. package/dist/sdk/index.d.ts +1 -1
  138. package/dist/sdk/index.js.map +1 -1
  139. package/dist/sdk/session.js +11 -0
  140. package/dist/sdk/session.js.map +1 -1
  141. package/dist/sdk/types.d.ts +2 -0
  142. package/dist/store/session_snapshot_migrations.js +19 -1
  143. package/dist/store/session_snapshot_migrations.js.map +1 -1
  144. package/dist/tui/listen_capture.js +1 -0
  145. package/dist/tui/listen_capture.js.map +1 -1
  146. package/dist/tui/markdown_export.js +74 -0
  147. package/dist/tui/markdown_export.js.map +1 -0
  148. package/dist/tui/session_chat_controller.js +82 -1
  149. package/dist/tui/session_chat_controller.js.map +1 -1
  150. package/dist/tui/terminal.js +1 -0
  151. package/dist/tui/terminal.js.map +1 -1
  152. package/dist/tui/ui/chat_container.js +34 -17
  153. package/dist/tui/ui/chat_container.js.map +1 -1
  154. package/package.json +14 -13
  155. package/dist/diff_tool/app/dist/assets/index-BXyr8GCM.js +0 -341
@@ -5,7 +5,9 @@ import { formatPersonaReference, parsePersonaReference } from "../persona_refere
5
5
  import { parseSubagentLaunchModelList } from "../subagents/launch_model.js";
6
6
  import { REASONING_LEVELS } from "../types.js";
7
7
  import { normalizeModelNoticeKey, parseModelNoticeKey } from "../utils/model_notices.js";
8
+ import { normalizeSpeechToTextKeywords, speechToTextKeywordSchema, } from "../utils/speech_to_text_keywords.js";
8
9
  import { parseCommandClientToolsConfig, parseEnabledClientToolsConfig, resolveCommandClientToolsConfig, selectCommandClientTools, } from "./client_tools.js";
10
+ import { markdownExportConfigSchema } from "./markdown_export.js";
9
11
  import { parseMcpServersConfig, resolveMcpServersConfig } from "./mcp.js";
10
12
  import { resolveConfigLevels } from "./paths.js";
11
13
  import { getVirtualConfigDefaults } from "./virtual_defaults.js";
@@ -153,6 +155,20 @@ function validateConfigData(raw, sourceLabel, options) {
153
155
  const apiKeysResult = parseApiKeysConfig(data.apiKeys, sourceLabel);
154
156
  assignParsedConfigValue(config, errors, "apiKeys", apiKeysResult.config, apiKeysResult.errors);
155
157
  }
158
+ if (data.markdownExport !== undefined) {
159
+ if (options.scope !== "global") {
160
+ errors.push(`${sourceLabel}: 'markdownExport' may only be configured in the global config.`);
161
+ }
162
+ else {
163
+ const parsed = markdownExportConfigSchema.safeParse(data.markdownExport);
164
+ if (parsed.success) {
165
+ config.markdownExport = parsed.data;
166
+ }
167
+ else {
168
+ errors.push(`${sourceLabel}: 'markdownExport' requires an HTTPS endpoint (HTTP is allowed on loopback) and optional non-empty token or tokenEnv.`);
169
+ }
170
+ }
171
+ }
156
172
  const defaultPersonaResult = parseDefaultPersona(data.defaultPersona, sourceLabel);
157
173
  assignParsedConfigValue(config, errors, "defaultPersona", defaultPersonaResult.defaultPersona, defaultPersonaResult.errors);
158
174
  const scalarResult = parseOptionalFields(data, sourceLabel, [
@@ -162,6 +178,7 @@ function validateConfigData(raw, sourceLabel, options) {
162
178
  z
163
179
  .object({
164
180
  voiceId: NonEmptyStringSchema.optional(),
181
+ vocabulary: z.array(speechToTextKeywordSchema).optional(),
165
182
  recordingShortcut: z
166
183
  .object({
167
184
  key: z
@@ -173,7 +190,7 @@ function validateConfigData(raw, sourceLabel, options) {
173
190
  .optional(),
174
191
  })
175
192
  .strip(),
176
- "'speech' must contain a non-empty voiceId or a recordingShortcut with a printable key, ctrl+y, or f1–f12 and a press or double-tap gesture.",
193
+ "'speech' must contain a non-empty voiceId, a vocabulary array of non-empty terms of at most 100 characters without angle brackets or line breaks, or a recordingShortcut with a printable key, ctrl+y, or f1–f12 and a press or double-tap gesture.",
177
194
  ],
178
195
  ]);
179
196
  Object.assign(config, scalarResult.values);
@@ -441,8 +458,16 @@ function mergeConfigLevels(levels, configs, home) {
441
458
  const level = levels[i];
442
459
  const config = configs[i] ?? {};
443
460
  apiKeys = mergeOptionalObject(apiKeys, config.apiKeys);
461
+ if (config.markdownExport !== undefined) {
462
+ merged.markdownExport = { ...config.markdownExport };
463
+ }
444
464
  if (config.speech !== undefined) {
465
+ const vocabulary = config.speech.vocabulary !== undefined || merged.speech?.vocabulary !== undefined
466
+ ? normalizeSpeechToTextKeywords([...(config.speech.vocabulary ?? []), ...(merged.speech?.vocabulary ?? [])], { maxTotalCharacters: 10_000 })
467
+ : undefined;
445
468
  merged.speech = mergeOptionalObject(merged.speech, config.speech);
469
+ if (vocabulary !== undefined)
470
+ merged.speech.vocabulary = vocabulary;
446
471
  }
447
472
  if (config.clientTools !== undefined) {
448
473
  clientTools = resolveCommandClientToolsConfig(level, config.clientTools);
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/core/config/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/core/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAEL,aAAa,EACb,iBAAiB,GAElB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACxF,OAAO,EAAE,4BAA4B,EAAE,MAAM,8BAA8B,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACzF,OAAO,EACL,6BAA6B,EAC7B,yBAAyB,GAC1B,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,EAC7B,+BAA+B,EAC/B,wBAAwB,GACzB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAA6B,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAAyB,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAEjG,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AA2FjE,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACtD,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;AACxC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;AACzD,MAAM,sBAAsB,GAAG,CAAC;KAC7B,MAAM,CAAC;IACN,OAAO,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IACxC,KAAK,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IACtC,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IACzC,IAAI,EAAE,oBAAoB,CAAC,QAAQ,EAAE;CACtC,CAAC;KACD,KAAK,EAAE,CAAC;AACX,MAAM,gBAAgB,GAAG,CAAC;KACvB,MAAM,CAAC;IACN,MAAM,EAAE,oBAAoB;IAC5B,cAAc,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IAC/C,kBAAkB,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IACnD,qBAAqB,EAAE,oBAAoB,CAAC,QAAQ,EAAE;CACvD,CAAC;KACD,KAAK,EAAE,CAAC;AACX,MAAM,mBAAmB,GAAG,CAAC;KAC1B,MAAM,CAAC;IACN,QAAQ,EAAE,oBAAoB;IAC9B,MAAM,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IACvC,SAAS,EAAE,oBAAoB,CAAC,QAAQ,EAAE;CAC3C,CAAC;KACD,KAAK,EAAE,CAAC;AACX,MAAM,qBAAqB,GAAG,CAAC;KAC5B,MAAM,CAAC;IACN,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CAC7C,CAAC;KACD,KAAK,EAAE,CAAC;AACX,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;AAE9D,SAAS,mBAAmB,CAC1B,IAA6B,EAC7B,WAAmB,EACnB,KAA2E;IAE3E,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,IAAI,KAAK,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,SAAS;QACX,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,KAAK,YAAY,EAAE,CAAC,CAAC;YAC/C,SAAS;QACX,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC;IAC5B,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAC5B,CAAC;AACD,SAAS,uBAAuB,CAC9B,MAAc,EACd,MAAgB,EAChB,GAAM,EACN,KAA4B,EAC5B,WAAqB;IAErB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACtB,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,eAAe,CACtB,OAAe,EACf,WAAmB;IAKnB,IAAI,CAAC;QACH,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAY,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC9D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,MAAM,EAAE;gBACN,GAAG,WAAW,2BAA2B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;aAC5F;SACF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CACzB,GAAY,EACZ,WAAmB;IAEnB,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACxB,CAAC;IAED,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC5C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,WAAW,gCAAgC,CAAC,EAAE,CAAC;IACtE,CAAC;IAED,MAAM,OAAO,GAAsB,EAAE,CAAC;IACtC,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,KAAK,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAClE,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC;QACpC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,2CAA2C,CAAC,CAAC;YACvE,SAAS;QACX,CAAC;QAED,MAAM,WAAW,GAAG,oBAAoB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC7D,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,aAAa,QAAQ,oBAAoB,CAAC,CAAC;YACrE,SAAS;QACX,CAAC;QAED,OAAO,CAAC,QAAQ,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC;IACvC,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtC,OAAO,EAAE,MAAM,EAAE,CAAC;IACpB,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AACrC,CAAC;AAED,SAAS,mBAAmB,CAC1B,GAAY,EACZ,WAAmB;IAEnB,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACxB,CAAC;IAED,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAChD,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QAC3B,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,WAAW,sCAAsC,CAAC,EAAE,CAAC;IAC5E,CAAC;IAED,MAAM,GAAG,GAAG,qBAAqB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,GAAG,CAAC,SAAS,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QAChC,OAAO;YACL,cAAc,EAAE,sBAAsB,CAAC;gBACrC,SAAS,EAAE,GAAG,CAAC,SAAS;gBACxB,SAAS,EAAE,GAAG,CAAC,SAAS;aACzB,CAAC;YACF,MAAM,EAAE,EAAE;SACX,CAAC;IACJ,CAAC;IAED,IAAI,GAAG,CAAC,KAAK,KAAK,eAAe,EAAE,CAAC;QAClC,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,WAAW,gDAAgD,CAAC,EAAE,CAAC;IACtF,CAAC;IAED,IAAI,GAAG,CAAC,KAAK,KAAK,mBAAmB,EAAE,CAAC;QACtC,OAAO;YACL,MAAM,EAAE,CAAC,GAAG,WAAW,4DAA4D,CAAC;SACrF,CAAC;IACJ,CAAC;IAED,IAAI,GAAG,CAAC,KAAK,KAAK,mBAAmB,EAAE,CAAC;QACtC,OAAO;YACL,MAAM,EAAE;gBACN,GAAG,WAAW,mDAAmD,GAAG,CAAC,YAAY,sBAAsB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;aACtI;SACF,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;AACxB,CAAC;AAED,SAAS,kBAAkB,CACzB,GAAY,EACZ,WAAmB,EACnB,OAIC;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAC5C,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,WAAW,6BAA6B,CAAC,EAAE,CAAC;IAC/E,CAAC;IAED,MAAM,IAAI,GAAG,GAA8B,CAAC;IAC5C,MAAM,MAAM,GAAW,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC7D,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,0DAA0D,CAAC,CAAC;IACxF,CAAC;SAAM,CAAC;QACN,MAAM,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACpE,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACjG,CAAC;IAED,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QACtC,IAAI,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,iEAAiE,CAAC,CAAC;QAC/F,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,0BAA0B,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACzE,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CACT,GAAG,WAAW,uHAAuH,CACtI,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,oBAAoB,GAAG,mBAAmB,CAAC,IAAI,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;IACnF,uBAAuB,CACrB,MAAM,EACN,MAAM,EACN,gBAAgB,EAChB,oBAAoB,CAAC,cAAc,EACnC,oBAAoB,CAAC,MAAM,CAC5B,CAAC;IAEF,MAAM,YAAY,GAAG,mBAAmB,CAAC,IAAI,EAAE,WAAW,EAAE;QAC1D,CAAC,cAAc,EAAE,oBAAoB,EAAE,4CAA4C,CAAC;QACpF;YACE,QAAQ;YACR,CAAC;iBACE,MAAM,CAAC;gBACN,OAAO,EAAE,oBAAoB,CAAC,QAAQ,EAAE;gBACxC,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,QAAQ,EAAE;gBACzD,iBAAiB,EAAE,CAAC;qBACjB,MAAM,CAAC;oBACN,GAAG,EAAE,CAAC;yBACH,MAAM,EAAE;yBACR,MAAM,CACL,CAAC,GAAG,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,6BAA6B,CAAC,IAAI,CAAC,GAAG,CAAC,CAC9E;oBACH,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;iBACzC,CAAC;qBACD,MAAM,EAAE;qBACR,QAAQ,EAAE;aACd,CAAC;iBACD,KAAK,EAAE;YACV,qPAAqP;SACtP;KACF,CAAC,CAAC;IACH,MAAM,CAAC,MAAM,CAAC,MAAiC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IACtE,MAAM,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAEpC,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACjE,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,8DAA8D,CAAC,CAAC;IAC5F,CAAC;SAAM,CAAC;QACN,MAAM,iBAAiB,GAAG,6BAA6B,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QACvF,uBAAuB,CACrB,MAAM,EACN,MAAM,EACN,aAAa,EACb,iBAAiB,CAAC,MAAM,EACxB,iBAAiB,CAAC,MAAM,CACzB,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,kBAAkB,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QACzE,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,kEAAkE,CAAC,CAAC;IAChG,CAAC;SAAM,CAAC;QACN,MAAM,wBAAwB,GAAG,6BAA6B,CAC5D,IAAI,CAAC,kBAAkB,EACvB,WAAW,CACZ,CAAC;QACF,uBAAuB,CACrB,MAAM,EACN,MAAM,EACN,oBAAoB,EACpB,wBAAwB,CAAC,MAAM,EAC/B,wBAAwB,CAAC,MAAM,CAChC,CAAC;IACJ,CAAC;IAED,MAAM,eAAe,GAAG,oBAAoB,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAChG,uBAAuB,CACrB,MAAM,EACN,MAAM,EACN,WAAW,EACX,eAAe,CAAC,MAAM,EACtB,eAAe,CAAC,MAAM,CACvB,CAAC;IAEF,MAAM,wBAAwB,GAAG,uBAAuB,CACtD,IAAI,CAAC,kBAAkB,EACvB,WAAW,EACX,OAAO,CAAC,sBAAsB,CAC/B,CAAC;IACF,uBAAuB,CACrB,MAAM,EACN,MAAM,EACN,oBAAoB,EACpB,wBAAwB,CAAC,OAAO,EAChC,wBAAwB,CAAC,MAAM,CAChC,CAAC;IAEF,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAC7E,uBAAuB,CACrB,MAAM,EACN,MAAM,EACN,YAAY,EACZ,gBAAgB,CAAC,MAAM,EACvB,gBAAgB,CAAC,MAAM,CACxB,CAAC;IAEF,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAC3D,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IAEtF,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC7D,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,0DAA0D,CAAC,CAAC;IACxF,CAAC;SAAM,CAAC;QACN,MAAM,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACpE,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACjG,CAAC;IAED,MAAM,SAAS,GAAG,qBAAqB,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACtE,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAE1F,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAC5B,CAAC;AAED,SAAS,qBAAqB,CAC5B,GAAY,EACZ,WAAmB;IAEnB,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACxB,CAAC;IAED,MAAM,MAAM,GAAG,sBAAsB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACrD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO;YACL,MAAM,EAAE,CAAC,GAAG,WAAW,iDAAiD,CAAC;SAC1E,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;AAC7C,CAAC;AAED,SAAS,eAAe,CACtB,GAAY,EACZ,WAAmB;IAEnB,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACxB,CAAC;IAED,MAAM,MAAM,GAAG,gBAAgB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC/C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO;YACL,MAAM,EAAE;gBACN,GAAG,WAAW,uFAAuF;aACtG;SACF,CAAC;IACJ,CAAC;IAED,IAAI,MAAc,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,MAAM,EAAE;gBACN,GAAG,WAAW,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,oDAAoD,EAAE;aACnH;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,MAAM,EAAE;YACN,MAAM;YACN,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,KAAK,SAAS;gBAC1C,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE;gBAChD,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,KAAK,SAAS;gBAC9C,CAAC,CAAC,EAAE,kBAAkB,EAAE,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE;gBACxD,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,KAAK,SAAS;gBACjD,CAAC,CAAC,EAAE,qBAAqB,EAAE,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE;gBAC9D,CAAC,CAAC,EAAE,CAAC;SACR;QACD,MAAM,EAAE,EAAE;KACX,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CACzB,GAAY,EACZ,WAAmB;IAEnB,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACxB,CAAC;IAED,MAAM,MAAM,GAAG,mBAAmB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAClD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO;YACL,MAAM,EAAE;gBACN,GAAG,WAAW,oFAAoF;aACnG;SACF,CAAC;IACJ,CAAC;IAED,IAAI,QAAgB,CAAC;IACrB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1C,IACE,CAAC,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,CAAC;YACvD,GAAG,CAAC,QAAQ;YACZ,GAAG,CAAC,QAAQ;YACZ,GAAG,CAAC,MAAM;YACV,GAAG,CAAC,IAAI,EACR,CAAC;YACD,MAAM,IAAI,KAAK,EAAE,CAAC;QACpB,CAAC;QACD,QAAQ,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;YACL,MAAM,EAAE;gBACN,GAAG,WAAW,oFAAoF;aACnG;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,MAAM,EAAE;YACN,QAAQ;YACR,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3E,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACrF;QACD,MAAM,EAAE,EAAE;KACX,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,GAAY,EACZ,WAAmB,EACnB,aAA4B;IAE5B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACxB,CAAC;IAED,MAAM,MAAM,GAAG,qBAAqB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACpD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,cAAc,CAAC,EAAE,CAAC;YAC1E,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,WAAW,kDAAkD,CAAC,EAAE,CAAC;QACxF,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,WAAW,kCAAkC,CAAC,EAAE,CAAC;IACxE,CAAC;IAED,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;IACrC,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACxB,CAAC;IAED,MAAM,kBAAkB,GAAG,4BAA4B,CAAC,YAAY,EAAE;QACpE,YAAY,EAAE,aAAa;KAC5B,CAAC,CAAC;IACH,IAAI,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAC7B,OAAO;YACL,MAAM,EAAE;gBACN,GAAG,WAAW,4BAA4B,kBAAkB,CAAC,KAAK,yCAAyC;aAC5G;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,MAAM,EAAE;YACN,YAAY,EAAE,kBAAkB,CAAC,YAAY;SAC9C;QACD,MAAM,EAAE,EAAE;KACX,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAC7B,MAAc,EACd,aAA4B;IAE5B,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,EAAE,KAAK,EAAE,8CAA8C,EAAE,CAAC;IACnE,CAAC;IAED,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;IACpC,IAAI,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxC,OAAO,EAAE,KAAK,EAAE,qBAAqB,SAAS,CAAC,QAAQ,GAAG,EAAE,CAAC;IAC/D,CAAC;IAED,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;IACzD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;YACL,KAAK,EAAE,kBAAkB,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,OAAO,GAAG;SACpE,CAAC;IACJ,CAAC;IAED,OAAO;QACL,aAAa,EAAE,uBAAuB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;KAC3D,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAC9B,GAAY,EACZ,WAAmB,EACnB,aAA4B;IAE5B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACxB,CAAC;IAED,MAAM,YAAY,GAAG,kBAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACvD,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;QAC1B,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,WAAW,2CAA2C,CAAC,EAAE,CAAC;IACjF,CAAC;IAED,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,KAAK,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;QACnE,MAAM,SAAS,GAAG,sBAAsB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAChE,IAAI,SAAS,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC;YAChD,MAAM,CAAC,IAAI,CACT,GAAG,WAAW,wBAAwB,MAAM,IAAI,SAAS,CAAC,KAAK,IAAI,YAAY,GAAG,CACnF,CAAC;YACF,SAAS;QACX,CAAC;QAED,MAAM,YAAY,GAAG,oBAAoB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC9D,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;YAC1B,MAAM,CAAC,IAAI,CACT,GAAG,WAAW,wBAAwB,MAAM,qCAAqC,CAClF,CAAC;YACF,SAAS;QACX,CAAC;QAED,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC;IACvD,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtC,OAAO,EAAE,MAAM,EAAE,CAAC;IACpB,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAC7B,CAAC;AAED,SAAS,cAAc,CACrB,KAAkB,EAClB,IAAgB,EAChB,WAAmB,EACnB,OAGC;IAED,IAAI,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;YACtC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QACpC,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACrD,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;QAC/C,CAAC;QAED,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE;YAC7D,GAAG,OAAO;YACV,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC,CAAC;QACH,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;IACvF,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,MAAM,EAAE,EAAE;YACV,MAAM,EAAE;gBACN,GAAG,WAAW,4BAA4B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;aAC7F;SACF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAC1B,MAAqB,EACrB,OAAsB;IAEtB,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO;QACL,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;QACjB,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;KACd,CAAC;AACT,CAAC;AAED,SAAS,oBAAoB,CAC3B,MAAuC,EACvC,OAAwC;IAExC,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,MAAM,GAAqC;QAC/C,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;KAClB,CAAC;IAEF,IAAI,OAAO,EAAE,YAAY,KAAK,SAAS,EAAE,CAAC;QACxC,MAAM,CAAC,YAAY,GAAG,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAClD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAqB,EAAE,OAAiB,EAAE,IAAY;IAC/E,MAAM,MAAM,GAAW,wBAAwB,EAAE,CAAC;IAClD,IAAI,OAAsC,CAAC;IAC3C,IAAI,WAAkD,CAAC;IACvD,IAAI,kBAAwC,CAAC;IAC7C,IAAI,SAA0C,CAAC;IAC/C,IAAI,kBAA4D,CAAC;IACjE,IAAI,UAAwC,CAAC;IAC7C,IAAI,IAA4B,CAAC;IACjC,IAAI,OAAkC,CAAC;IAEvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC;QACzB,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAEhC,OAAO,GAAG,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,MAAM,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACxC,MAAM,CAAC,cAAc,GAAG,EAAE,GAAG,MAAM,CAAC,cAAc,EAAE,CAAC;QACvD,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,UAAU,GACd,MAAM,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,UAAU,KAAK,SAAS;gBAC/E,CAAC,CAAC,6BAA6B,CAC3B,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,EAC3E,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAC/B;gBACH,CAAC,CAAC,SAAS,CAAC;YAChB,MAAM,CAAC,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YAClE,IAAI,UAAU,KAAK,SAAS;gBAAE,MAAM,CAAC,MAAO,CAAC,UAAU,GAAG,UAAU,CAAC;QACvE,CAAC;QACD,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACrC,WAAW,GAAG,+BAA+B,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,MAAM,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;YAC5C,kBAAkB,GAAG,CAAC,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACtD,CAAC;QACD,SAAS,GAAG,oBAAoB,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QAC9D,kBAAkB,GAAG,mBAAmB,CAAC,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACxF,UAAU,GAAG,mBAAmB,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;QAChE,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9B,IAAI,GAAG,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAC5B,CAAC;QACD,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACjC,OAAO,GAAG,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAClC,CAAC;QACD,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,CAAC,UAAU,GAAG;gBAClB,GAAG,MAAM,CAAC,UAAU;gBACpB,GAAG,uBAAuB,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC;aAC3D,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACxC,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;QAChD,CAAC;QAED,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACtC,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,IAAI,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/C,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,mBAAmB,GAAG,wBAAwB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;QACtF,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,MAAM,CAAC,WAAW,GAAG,mBAAmB,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,IAAI,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnD,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,IAAI,kBAAkB,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrE,MAAM,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IACjD,CAAC;IAED,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,IAAgB,EAChB,OAGC;IAED,MAAM,mBAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;IAElD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAC3C,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,UAAU,EAAE;QAC5C,YAAY,EAAE,mBAAmB,CAAC,YAAY;QAC9C,sBAAsB,EAAE,mBAAmB,CAAC,sBAAsB;KACnE,CAAC,CACH,CAAC;IAEF,OAAO;QACL,MAAM,EAAE,iBAAiB,CACvB,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EACtC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAChB;QACD,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;KACnD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAW,EAAE,IAAgB;IACtD,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAClD,MAAM,aAAa,GAAG,iBAAiB,EAAE,CAAC;IAC1C,OAAO,yBAAyB,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC;AAC3E,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAAc,EAAE,QAAgB;IACnE,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAC/B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9B,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC3B,OAAO,OAAO,IAAI,SAAS,CAAC;AAC9B,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAW,EAAE,GAAuB;IAC9D,MAAM,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IAClC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,OAAO,OAAO,IAAI,SAAS,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,MAAc,EAAE,GAAuB;IAClE,MAAM,MAAM,GAAG,kBAAkB,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;IACtD,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;IAC9C,OAAO,SAAS,IAAI,SAAS,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAc,EAAE,GAAuB;IACrE,MAAM,MAAM,GAAG,kBAAkB,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IACzD,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACjD,OAAO,SAAS,IAAI,SAAS,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAc,EAAE,GAAuB;IACrE,MAAM,MAAM,GAAG,kBAAkB,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IACzD,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACjD,OAAO,SAAS,IAAI,SAAS,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAc,EAAE,GAAuB;IACzE,MAAM,MAAM,GAAG,kBAAkB,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAC;IAC7D,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IACrD,OAAO,SAAS,IAAI,SAAS,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAc,EAAE,GAAuB;IACtE,MAAM,MAAM,GAAG,kBAAkB,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;IAC1D,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAClD,OAAO,SAAS,IAAI,SAAS,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,MAAqB,EACrB,GAAuB;IAEvB,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC;IACzE,IAAI,iBAAiB;QAAE,OAAO,iBAAiB,CAAC;IAChD,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC;IACzC,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACnD,IAAI,SAAS;YAAE,OAAO,SAAS,CAAC;IAClC,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,MAAkB,EAClB,GAAuB;IAEvB,MAAM,OAAO,GAAG,MAAM,CAAC,qBAAqB,EAAE,IAAI,EAAE,CAAC;IACrD,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACnD,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,kBAAkB,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;AACxD,CAAC"}
@@ -71,6 +71,7 @@ export class ChatRuntime {
71
71
  agentId: options.sessionId,
72
72
  spec: createAgentSpec({
73
73
  ...this.resolvedModel,
74
+ autoCompactThresholdTokens: null,
74
75
  systemPrompt: composition.baseSystemPrompt,
75
76
  tools,
76
77
  }),
@@ -186,6 +187,9 @@ export class ChatRuntime {
186
187
  });
187
188
  this.refreshSpec();
188
189
  }
190
+ setAutoCompactThreshold(thresholdTokens) {
191
+ this.agent.updateSpec({ ...this.agent.spec, autoCompactThresholdTokens: thresholdTokens });
192
+ }
189
193
  setReasoning(reasoning) {
190
194
  this.currentPersona = {
191
195
  ...this.currentPersona,
@@ -216,6 +220,7 @@ export class ChatRuntime {
216
220
  refreshSpec() {
217
221
  this.agent.updateSpec(createAgentSpec({
218
222
  ...this.resolvedModel,
223
+ autoCompactThresholdTokens: this.agent.spec.autoCompactThresholdTokens,
219
224
  systemPrompt: this.latestPromptComposition.baseSystemPrompt,
220
225
  tools: this.buildToolRegistry(this.latestPromptComposition),
221
226
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"chat_runtime.js","sourceRoot":"","sources":["../../../src/core/runtime/chat_runtime.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,YAAY,EAKZ,eAAe,GAKhB,MAAM,2BAA2B,CAAC;AAMnC,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAIpD,OAAO,EAA2B,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAiB,qBAAqB,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,EAAyB,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAiC,MAAM,8BAA8B,CAAC;AAkCpG,MAAM,OAAO,WAAW;IACb,KAAK,CAAe;IACpB,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,UAAU,CAAkB;IAC7B,cAAc,CAAU;IACxB,aAAa,CAAS;IACb,WAAW,CAAoB;IACxC,oBAAoB,CAAgB;IACpC,aAAa,CAA2B;IAC/B,cAAc,CAAS;IACvB,SAAS,CAAS;IAClB,OAAO,CAAuB;IAC9B,IAAI,CAAW;IACxB,aAAa,CAAqB;IACzB,WAAW,CAA2C;IACtD,qBAAqB,CAAyB;IAC9C,YAAY,CAAe;IAC3B,GAAG,CAAc;IAC1B,uBAAuB,CAA2B;IAE1D,MAAM,CAAC,MAAM,CAAC,OAAiC;QAC7C,MAAM,iBAAiB,GACrB,OAAO,CAAC,wBAAwB;YAChC,qBAAqB,CAAC;gBACpB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,GAAG,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG;gBAC9B,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,QAAQ;gBACxC,UAAU,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU;gBAC5C,gBAAgB,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;gBAC3D,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,QAAQ;gBACxC,WAAW,EAAE,OAAO,CAAC,aAAa,CAAC,WAAW;gBAC9C,mBAAmB,EAAE,OAAO,CAAC,aAAa,CAAC,mBAAmB;aAC/D,CAAC,CAAC;QACL,OAAO,IAAI,WAAW,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;IACrD,CAAC;IAED,YAAoB,OAAiC,EAAE,WAAqC;QAC1F,IAAI,CAAC,cAAc,GAAG,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;QACpC,IAAI,CAAC,WAAW,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3D,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC;QAClD,IAAI,CAAC,aAAa,GAAG,EAAE,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAClD,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC;QACxC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,qBAAqB,EAAE,CAAC;QACpD,IAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,EAAE;YACvE,kBAAkB,EAAE,IAAI;YACxB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC;QAC3D,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;QACpC,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACvB,IAAI,CAAC,uBAAuB,GAAG,WAAW,CAAC;QAC3C,IAAI,CAAC,UAAU,GAAG,IAAI,eAAe,CAAC;YACpC,OAAO,EAAE,OAAO,CAAC,iBAAiB;YAClC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,KAAK,GAAG,IAAI,YAAY,CAAC;YAC5B,OAAO,EAAE,OAAO,CAAC,SAAS;YAC1B,IAAI,EAAE,eAAe,CAAC;gBACpB,GAAG,IAAI,CAAC,aAAa;gBACrB,YAAY,EAAE,WAAW,CAAC,gBAAgB;gBAC1C,KAAK;aACN,CAAC;YACF,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;gBACzB,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;oBACrC,IAAI,CAAC,UAAU,CAAC,aAAa,CAC3B,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CACvE,CAAC;gBACJ,CAAC;gBACD,MAAM,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACjC,CAAC;YACD,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;YACtB,qBAAqB,EAAE,4BAA4B,CAAC,IAAI,CAAC,OAAO,CAAC;YACjE,uCAAuC,EAAE,GAAG,EAAE;gBAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,0BAA0B,EAAE,CAAC;gBAC7D,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAClC,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC;IACzC,CAAC;IAED,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;IAED,IAAI,MAAM;QACR,OAAO,eAAe,CAAC,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IAC/E,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;IAC5B,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;IAC/B,CAAC;IAED,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC,KAAK,CAAC,yBAAyB,CAAC;IAC9C,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,OAAe,EAAE,QAA+B;QACxE,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,IAAY,EAAE,OAAqC;QACtE,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,0BAA0B,CAC9B,OAAyB,EACzB,cAAsB;QAEtB,MAAM,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IACvE,CAAC;IAED,OAAO;QACL,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,IAAY;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;IACrC,CAAC;IAED,uBAAuB;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC;IAC5C,CAAC;IAED,sBAAsB;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,oBAAoB,EAAE,CAAC;IAC3C,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;IAChC,CAAC;IAED,YAAY,CAAC,KAAiB;QAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED,OAAO;QACL,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC;IAED,WAAW,CAAC,EAAU;QACpB,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,SAAS,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,EAAU;QAChC,OAAO,OAAO,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,oBAAoB;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,oBAAoB,EAAE,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,cAAsB;QACjD,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,GAAG,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAuB;QAClC,OAAO,MAAM,WAAW,CACtB;YACE,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK;YAC/B,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,aAAa;SAChD,EACD,KAAK,CACN,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,OAA+C;QACrD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC/B,CAAC;IAED,gBAAgB,CAAC,MAAc,EAAE,aAA4B;QAC3D,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC;QAC5B,IAAI,CAAC,oBAAoB,GAAG,aAAa,CAAC;QAC1C,IAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,EAAE;YACvE,kBAAkB,EAAE,IAAI;YACxB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,YAAY,CAAC,SAA0B;QACrC,IAAI,CAAC,cAAc,GAAG;YACpB,GAAG,IAAI,CAAC,cAAc;YACtB,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,SAAS,EAAE;SACzD,CAAC;QACF,IAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,EAAE;YACvE,kBAAkB,EAAE,IAAI;YACxB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,UAAU,CAAC,OAAgB;QACzB,IAAI,CAAC,cAAc,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,EAAE;YACvE,kBAAkB,EAAE,IAAI;YACxB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAED,mBAAmB,CAAC,OAA0C;QAC5D,IAAI,CAAC,aAAa,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,GAAG,OAAO,EAAE,CAAC;QAC3D,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAEO,oBAAoB;QAC1B,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACvD,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,KAAK,CAAC,UAAU,CACnB,eAAe,CAAC;YACd,GAAG,IAAI,CAAC,aAAa;YACrB,YAAY,EAAE,IAAI,CAAC,uBAAuB,CAAC,gBAAgB;YAC3D,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,uBAAuB,CAAC;SAC5D,CAAC,CACH,CAAC;IACJ,CAAC;IAEO,iBAAiB,CAAC,WAAqC;QAC7D,MAAM,QAAQ,GAAG,WAAW,CAAC,qBAAqB,CAAC;YACjD,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG;YAC3B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,IAAI,CAAC,cAAc;YAC5B,oBAAoB,EAAE,WAAW,CAAC,oBAAoB;YACtD,aAAa,EAAE,IAAI,CAAC,oBAAoB;YACxC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,OAAO,EAAE,IAAI,CAAC,YAAY;YAC1B,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7F,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC;QAC/C,OAAO,WAAW,CAAC,MAAM,KAAK,CAAC;YAC7B,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,GAAG,QAAQ,CAAC,eAAe,EAAE,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC;IACxE,CAAC;IAEO,gBAAgB;QACtB,OAAO,qBAAqB,CAAC;YAC3B,OAAO,EAAE,IAAI,CAAC,cAAc;YAC5B,SAAS,EAAE,IAAI,CAAC,cAAc;YAC9B,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG;YAC3B,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ;YACrC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,UAAU;YACzC,gBAAgB,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;YACxD,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ;YACrC,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,WAAW;YAC3C,mBAAmB,EAAE,IAAI,CAAC,aAAa,CAAC,mBAAmB;SAC5D,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"chat_runtime.js","sourceRoot":"","sources":["../../../src/core/runtime/chat_runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export function getEffectiveAutoCompactThresholdTokens(contextWindow, thresholdTokens) {
2
+ return Math.min(thresholdTokens ?? Infinity, contextWindow - 16_384);
3
+ }
4
+ //# sourceMappingURL=auto_compaction_threshold.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto_compaction_threshold.js","sourceRoot":"","sources":["../../../src/core/session/auto_compaction_threshold.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,sCAAsC,CACpD,aAAqB,EACrB,eAA8B;IAE9B,OAAO,IAAI,CAAC,GAAG,CAAC,eAAe,IAAI,QAAQ,EAAE,aAAa,GAAG,MAAM,CAAC,CAAC;AACvE,CAAC"}
@@ -169,7 +169,7 @@ compartment.evaluate(String.raw`
169
169
 
170
170
  Object.defineProperty(globalThis, "printText", {
171
171
  value: (text) => {
172
- if (typeof text !== "string") throw new TypeError("printText expects a string");
172
+ if (typeof text !== "string") throw new TypeError("printText expects a string. Select relevant fields and format concise plain text to save tokens. Only use JSON.stringify on selected data when JSON structure is needed; do not dump whole responses.");
173
173
  writeOutputBridge("stdout", text);
174
174
  },
175
175
  });
@@ -22,8 +22,9 @@ Project and global content can change which persona ids exist. A configured defa
22
22
  | --- | --- | --- | --- | --- |
23
23
  | `apiKeys` | Object of string values | Global only | Provider-keyed map | Owning host or feature process; restart after changes |
24
24
  | `defaultPersona` | Non-empty string | Global, project | Most-specific wins | Session host; new session |
25
- | `speech` | Object with optional `voiceId` and `recordingShortcut` | Global, project | Merge by field | TUI client or Telegram runner; process restart |
25
+ | `speech` | Object with optional `voiceId`, `recordingShortcut`, and `vocabulary` | Global, project | Merge by field; vocabulary is additive | TUI client or Telegram runner; process restart |
26
26
  | `defaultTheme` | Non-empty string | Global, project | Most-specific wins | TUI client; client restart |
27
+ | `markdownExport` | Object with `url` and optional `token`, `tokenEnv` | Global only | One global object | TUI client; client restart |
27
28
  | `clientTools` | Array of objects | Global only | One global definition list | Owning client; TUI restart or new Telegram session client |
28
29
  | `enabledClientTools` | String array | Project only | Most-specific project list | Owning client; TUI restart or new Telegram session client |
29
30
  | `subagents` | Object | Global, project | Most-specific `launchModels` list | Session runtime; `/reload` or new session |
@@ -92,6 +93,25 @@ Use notices for guidance that applies to one model. Behavior that belongs to a p
92
93
 
93
94
  ## Credentials and service selection
94
95
 
96
+ ### `markdownExport`
97
+
98
+ `/export-response` sends the latest completed assistant response to one Markdown service. Configure the full endpoint in the terminal client's `~/.config/tau/config.json`:
99
+
100
+ ```json
101
+ {
102
+ "markdownExport": {
103
+ "url": "https://example.com/api/documents",
104
+ "tokenEnv": "MARKDOWN_EXPORT_TOKEN"
105
+ }
106
+ }
107
+ ```
108
+
109
+ `url` is required. It must use HTTPS, except that HTTP is allowed for `localhost`, `127.0.0.1`, and `[::1]`. Embedded credentials and fragments are rejected. Project configuration cannot set or override this object.
110
+
111
+ `token` supplies an inline bearer token and takes precedence over `tokenEnv`. Otherwise, `tokenEnv` names a variable in the terminal process's environment. A missing or empty variable fails before any request. With neither field, requests have no authorization header. Tokens must be non-empty printable ASCII without spaces. Credentials are not included in diagnostics.
112
+
113
+ The request runs on the terminal's machine, including with `tau attach`. Restart the TUI after changing this configuration. See [the export contract](tui.md#exporting-a-response) for the HTTP request and response.
114
+
95
115
  ### `apiKeys`
96
116
 
97
117
  A map from provider or feature id to a string credential:
@@ -136,13 +156,29 @@ For terminal recording, `recordingShortcut` replaces Ctrl+Y. Its required `key`
136
156
 
137
157
  A double tap must arrive within 300 ms. For printable double-tap bindings, an unmatched first tap inserts the character after that delay; another key inserts it immediately before processing the new input. A single-press binding reserves its character, so it can no longer be typed. Bracketed paste never triggers recording. Keyboard auto-repeat can count as repeated taps. Recording shortcuts apply only to the TUI, not Telegram.
138
158
 
159
+ For dictation, `vocabulary` supplies spelling hints for recurring names, identifiers, and short phrases:
160
+
161
+ ```json
162
+ {
163
+ "speech": {
164
+ "vocabulary": ["Tau", "PostgreSQL", "ChatRuntime"]
165
+ }
166
+ }
167
+ ```
168
+
169
+ Define personal terms in `~/.config/tau/config.json` and project terms in `.tau/config.json`. Tau combines the nearest project's entries first, then parent projects, then global entries, preserving each list's order. An omitted list or `[]` adds nothing and does not clear inherited terms. Entries are trimmed and deduplicated case-insensitively, preserving the first spelling. Invalid entries produce a configuration warning: each entry must be a non-empty string of at most 100 Unicode characters, without angle brackets or internal line breaks.
170
+
171
+ Tau appends keywords extracted from the recent conversation after configured terms. The combined list is limited to 100 terms and 10,000 Unicode characters, so explicit project terms take priority. These are Tau's limits. [Gemini's custom vocabulary](https://ai.google.dev/gemini-api/docs/transcribe) supports up to 1,000 terms and recommends up to 100 for best results; it cannot be combined with speaker diarization or word-level timestamps, which Tau does not request.
172
+
173
+ Vocabulary goes directly to Gemini as transcription hints for live dictation, recording retries, and Telegram audio. It does not instruct the model to insert words or replace text afterward. Configured terms still work without conversation context, without OpenAI credentials, or when keyword extraction fails. With no vocabulary configured, Tau uses only context-derived hints.
174
+
139
175
  Without an override, Tau looks up Maisie (`QtY3JBOUKEB5xzrRfOKc`) before synthesis and tries Caleb (`AaOhDHYJ1XLZk74lXhdE`) only if ElevenLabs reports that Maisie was not found. If neither is available, speech fails. A configured voice is the only voice Tau tries. If it is unavailable, speech fails without falling back to a default.
140
176
 
141
177
  Authentication, permission, rate-limit, and network errors during voice lookup do not trigger the fallback. Once lookup succeeds, that voice is used for the whole reply, although synthesis can still be refused. Synthesis failures never switch voices, and Tau never retries synthesis automatically because each request may be billed.
142
178
 
143
179
  Speech uses Eleven v4 Turbo, the delivery note `[Brisk but relaxed, speaking naturally to a colleague]`, and a 1.15× tempo adjustment. GPT-6 Luna rewrites the text with reasoning disabled before ElevenLabs synthesis, so both OpenAI and ElevenLabs credentials are required. Voice Library API access may require a paid ElevenLabs plan, and shared voices can become unavailable.
144
180
 
145
- The TUI reads this setting from its own client configuration, also when attached to a remote host. Telegram reads it from the runner's startup configuration, not from session workspaces. Restart the respective process after changes. This setting does not affect the explicit voices supplied to `tau tool speech-generate`.
181
+ The TUI reads these speech settings from its own client configuration, including project configuration discovered from its startup directory, also when attached to a remote host. It does not load vocabulary from the remote session's repository. Telegram reads it from the runner's startup configuration, not from session workspaces. Restart the respective process after changes. This setting does not affect the explicit voices supplied to `tau tool speech-generate`.
146
182
 
147
183
  ### `nook`
148
184
 
@@ -151,6 +151,10 @@ try {
151
151
 
152
152
  Creating a session requires the full execution environment and the creation attributes, which never change afterward. The `cwd` must be absolute and is a path in the chosen environment, which may not be where the SDK runs. A Fly Sprite session refers to an existing Sprite that the host is configured to reach. See [sessions](sessions.md) for creation attributes and [ownership and scope](ownership-and-scope.md) for which machine owns which paths.
153
153
 
154
+ To set the main conversation's automatic-compaction threshold at creation, pass `autoCompactThresholdTokens` as a safe integer of at least 50,000. Omit it or pass `null` to use the model's context window minus 16,384 tokens. The effective threshold cannot exceed this model-based default.
155
+
156
+ Use `session.setAutoCompactThreshold(50000)` to change the threshold from the next logical turn, or `session.setAutoCompactThreshold(null)` to restore the default. Snapshot `settings` contain both `autoCompactThresholdTokens` (the configured value) and `effectiveAutoCompactThresholdTokens` (the trigger for the selected model). See [automatic compaction](sessions.md#automatic-compaction) for timing, limits, and costs.
157
+
154
158
  `session.unobserve()` stops observing, and that `TauSdkSession` object can no longer be used. The session itself is not deleted. `client.close()` closes the whole client and is safe to call more than once.
155
159
 
156
160
  The connected `TauSdkClient` exposes:
@@ -185,6 +189,7 @@ Each subscription returns an unsubscribe function.
185
189
  | `sample({ context, options })` | Run a standalone model call without changing the session. |
186
190
  | `interrupt()` | Ask the session's running work to stop. |
187
191
  | `snapshot()` | Read the complete current snapshot. |
192
+ | `setAutoCompactThreshold(thresholdTokens)` | Set or reset automatic compaction, starting with the next logical turn. |
188
193
  | `setReasoning(reasoning)` | Set reasoning, starting with the next turn. |
189
194
  | `setPersona(personaId)` | Change persona and return the updated snapshot. |
190
195
  | `resolvePrompt(promptId)` | Load a current prompt body from the execution environment. |
@@ -71,6 +71,7 @@ params: {
71
71
  attributes: Record<string, string>;
72
72
  personaId?: string;
73
73
  reasoning?: Reasoning;
74
+ autoCompactThresholdTokens?: number | null;
74
75
  }
75
76
 
76
77
  result: { sessionId: string }
@@ -316,6 +317,29 @@ result: SessionProtocolSnapshot;
316
317
 
317
318
  Use this after observation, on demand, or to recover from a delta revision gap. The [session protocol](session-protocol.md) describes the snapshot and client application rules.
318
319
 
320
+ ### `session.setAutoCompactThreshold`
321
+
322
+ Changes the main conversation's automatic-compaction threshold, starting with the next logical turn.
323
+
324
+ ```ts
325
+ params: {
326
+ sessionId: string;
327
+ thresholdTokens: number | null;
328
+ }
329
+ result: {
330
+ revision: number;
331
+ settings: SessionProtocolSettingsSnapshot;
332
+ }
333
+ ```
334
+
335
+ `thresholdTokens` must be a safe integer of at least 50,000, or `null` to restore the model-based default. Numeric strings are rejected. Session creation accepts the same values in the optional `autoCompactThresholdTokens` field, which defaults to `null`.
336
+
337
+ The default threshold is the model's context window minus 16,384 tokens. With an override, the effective threshold is the smaller of the configured value and that default. A model with a small context window can therefore have an effective threshold below 50,000.
338
+
339
+ The host saves the setting and publishes a `settings.set` delta to observers. Changing it does not start compaction. A running turn and its steering continuations keep their original threshold.
340
+
341
+ Reloads, persona changes, and recovery preserve the configured value. The effective threshold is recalculated for the selected model. Subagents and ephemeral threads use their model-based defaults. See [automatic compaction](sessions.md#automatic-compaction) for request-size limits and costs.
342
+
319
343
  ### `session.setReasoning`
320
344
 
321
345
  Changes the reasoning effort, starting with the next turn.
@@ -18,7 +18,7 @@ The server sends `ready` as its first message:
18
18
 
19
19
  ```json
20
20
  {
21
- "version": 17,
21
+ "version": 18,
22
22
  "type": "ready",
23
23
  "methods": ["initialize", "session.create", "session.list"]
24
24
  }
@@ -30,7 +30,7 @@ After `ready`, send `initialize` with non-empty client metadata:
30
30
 
31
31
  ```json
32
32
  {
33
- "version": 17,
33
+ "version": 18,
34
34
  "type": "request",
35
35
  "id": "init-1",
36
36
  "method": "initialize",
@@ -50,7 +50,7 @@ Every request has the same envelope:
50
50
 
51
51
  ```json
52
52
  {
53
- "version": 17,
53
+ "version": 18,
54
54
  "type": "request",
55
55
  "id": "req-42",
56
56
  "method": "session.snapshot",
@@ -64,7 +64,7 @@ Successful responses echo the request id:
64
64
 
65
65
  ```json
66
66
  {
67
- "version": 17,
67
+ "version": 18,
68
68
  "type": "response",
69
69
  "id": "req-42",
70
70
  "ok": true,
@@ -100,7 +100,7 @@ Observing controls which updates you receive; it does not make you the owner. `s
100
100
  | `revision` | Monotonic protocol snapshot revision. |
101
101
  | `lifecycle` | `idle` or `running`. |
102
102
  | `agentState` | Independent agent revision, model context key, and optional usage checkpoint. |
103
- | `settings`, `costTotal` | Persona and reasoning settings, and accumulated session cost. |
103
+ | `settings`, `costTotal` | Persona, reasoning, and auto-compaction settings, and accumulated session cost. |
104
104
  | `bootstrap`, `catalog` | Selected model and prompt metadata plus available personas, prompt metadata, skills, and enabled host-configured MCP server names. |
105
105
  | `executionEnvironment` | The environment kind, identity, `cwd`, and home used for agent-visible work. |
106
106
  | `messages`, `turns` | Messages sent to the model, and a saved record for each accepted turn. |
@@ -108,6 +108,13 @@ Observing controls which updates you receive; it does not make you the owner. `s
108
108
  | `tools`, `operations`, `agents` | Changing state that timeline items or client views refer to. |
109
109
  | `facets` | Versioned client-facing metadata. Unknown facet kinds and versions should be ignored. |
110
110
 
111
+ Both auto-compaction fields in `settings` are required:
112
+
113
+ - `autoCompactThresholdTokens` is the configured value: a safe integer of at least 50,000, or `null` for the model-based default.
114
+ - `effectiveAutoCompactThresholdTokens` is the integer threshold clients should display. It is the model's context window minus 16,384 tokens, or the configured value if that is smaller.
115
+
116
+ `bootstrap.model.contextWindow` is the full model window, regardless of the compaction threshold.
117
+
111
118
  `catalog.mcpServers` lists the enabled MCP servers in the host configuration, by name only. It does not mean they are connected; servers connect on first use. Connection settings and credentials are never included.
112
119
 
113
120
  `bootstrap.prompt.subagentSystemPrompt` is present when subagents can be started. Each catalog persona has a `subagentLaunchModels` allowlist. Subagent records have task titles and IDs; there are no worker types.
@@ -132,7 +139,7 @@ Observed snapshot changes arrive as `session.delta`:
132
139
 
133
140
  ```json
134
141
  {
135
- "version": 17,
142
+ "version": 18,
136
143
  "type": "session.delta",
137
144
  "sessionId": "0195d6e4-4cf9-7f44-a2d8-f8f7f49ee9d3",
138
145
  "fromRevision": 8,
@@ -170,7 +177,7 @@ Some live state is not part of the snapshot. Each of these channels has its own
170
177
 
171
178
  ```json
172
179
  {
173
- "version": 17,
180
+ "version": 18,
174
181
  "type": "session.pendingUserMessages",
175
182
  "sessionId": "...",
176
183
  "state": {
@@ -207,7 +214,7 @@ An initialized client that advertised a tool can receive:
207
214
 
208
215
  ```json
209
216
  {
210
- "version": 17,
217
+ "version": 18,
211
218
  "type": "session.clientTool.call",
212
219
  "sessionId": "...",
213
220
  "agentId": "main",
@@ -231,7 +238,7 @@ Error responses use `ok: false`:
231
238
 
232
239
  ```json
233
240
  {
234
- "version": 17,
241
+ "version": 18,
235
242
  "type": "response",
236
243
  "id": "req-42",
237
244
  "ok": false,
@@ -266,7 +273,7 @@ The server accepts new requests before earlier ones finish, so responses and str
266
273
  - Only one main-session turn runs at a time. `session.submit` and `session.retry` return `busy` on conflict.
267
274
  - `session.queue` waits until the session is idle. `session.steer` joins the running turn at its next safe point. Each request gets its own response when done.
268
275
  - Session changes run one at a time, in arrival order across all clients. Changes that replace the context can interrupt running work and reject pending input. `session.rewind` instead requires an idle session with no pending input.
269
- - `session.setReasoning` waits its turn but does not interrupt the running turn. The new setting applies from the next turn.
276
+ - `session.setReasoning` and `session.setAutoCompactThreshold` wait their turn but do not interrupt the running turn. New settings apply from the next logical turn. The running turn and its steering continuations keep their original settings.
270
277
  - `session.exec` and `session.sample` run alongside everything else: turns, other changes, each other, and ephemeral agents. Clients must coordinate their own use of the workspace.
271
278
  - Ephemeral contexts are not part of that one-at-a-time ordering. Two submissions to the same ephemeral thread conflict, while different threads can run at once.
272
279
 
@@ -90,7 +90,20 @@ The summary aims both to let work continue right away and to keep earlier work r
90
90
 
91
91
  ### Automatic compaction
92
92
 
93
- Automatic compaction runs before a model call when the provider's latest token count, plus an estimate for content added since, exceeds the threshold. The threshold is the model's context window minus a fixed reserve of 16,384 tokens. Writing the checkpoint uses the normal model settings, with no special output limit.
93
+ Automatic compaction runs before a model call when the provider's latest token count, plus an estimate for content added since, exceeds the threshold. By default, the threshold is the model's context window minus a fixed reserve of 16,384 tokens. Writing the checkpoint uses the normal model settings, with no special output limit.
94
+
95
+ To compact earlier, set a token threshold for the session. The effective threshold is the smaller of this setting and the model's context window minus 16,384 tokens.
96
+
97
+ - In the TUI, use `/auto-compact 50000` or `/auto-compact 50k`.
98
+ - In Telegram, use `/auto_compact 50000` or `/auto_compact 50k`.
99
+ - With either command, use `default` to restore the model-based threshold, or omit the argument to show the configured and effective thresholds.
100
+ - SDK and protocol inputs accept a safe integer of at least 50,000, or `null` for the default. They do not accept strings such as `50k`.
101
+
102
+ The minimum configured threshold is 50,000 tokens. The setting applies to the main conversation and survives recovery, reloads, and persona changes. Subagents and ephemeral threads use their model-based defaults.
103
+
104
+ Changing the setting does not start compaction. The new threshold applies from the next logical turn. A running turn and its steering continuations keep their original threshold.
105
+
106
+ The threshold controls when compaction starts; it does not limit request size. Tau does not truncate the input to this threshold before summarizing it. Large base instructions and summaries can leave context above the threshold even after compaction. Earlier compaction may reduce the cost of later requests, but generating a summary also costs tokens, can disrupt caching, and loses detail.
94
107
 
95
108
  For both automatic and manual compaction, Tau checks that the request fits, using a valid token count from the provider plus estimates for new content and the summary instruction. Without a valid count, it estimates the whole request. If the request cannot fit, compaction fails; Tau never falls back to sending a flattened transcript. Compaction can run several times during one long turn.
96
109
 
@@ -80,7 +80,7 @@ A missing or empty `allowedUserIds` allows every user. A missing or empty `allow
80
80
 
81
81
  Use both lists for a private bot. `allowedUserIds` decides who can start work, but in an allowed group, messages from other users can still become context, labeled with their sender. Add the bot only to groups whose conversation is fine to send to the model.
82
82
 
83
- A bot sees only its `allowedProjectIds`, or every project if the field is missing. If only one project is allowed, it is selected automatically. Otherwise a chat needs `defaultProjectId` or a `/use_<project>` choice before `/new`.
83
+ A bot sees only its `allowedProjectIds`, or every project if the field is missing. If only one project is allowed, it is selected automatically and the command palette omits `/use_<project>` commands. The command still works when typed directly. Otherwise the palette includes project-switch commands, and a chat needs `defaultProjectId` or a `/use_<project>` choice before `/new`. Each startup replaces the palette, removing switch commands if the bot now has only one available project.
84
84
 
85
85
  Telegram allows 100 commands per bot: twelve built-ins and up to 88 `/use_<projectId>` commands.
86
86
 
@@ -121,11 +121,14 @@ The runner loads its speech credentials and `speech.voiceId` at startup, from it
121
121
  | `/effort_high` | Selects high reasoning for future turns. |
122
122
  | `/effort_xhigh` | Selects xhigh reasoning for future turns. |
123
123
  | `/prompt` | [Records a saved prompt](prompts-and-project-context.md#telegram-prompt-picker) while idle, without starting a turn. |
124
+ | `/auto_compact [tokens\|default]` | Shows the automatic-compaction threshold. Pass `50k` or `50000` to set it (minimum 50,000 tokens), or `default` to restore the model-based threshold. |
124
125
  | `/compact` | Runs summary-only compaction while idle. |
125
126
  | `/interrupt` | Interrupts the active Tau turn. |
126
127
  | `/tts_on` | Sends a voice note after each final assistant response. |
127
128
  | `/tts_off` | Disables voice responses. |
128
129
 
130
+ Changes to the auto-compaction threshold apply from the next turn and survive session recovery. `/status` shows context usage as a percentage of the full model window. When an override is set, it also shows the effective threshold in parentheses. See [automatic compaction](sessions.md#automatic-compaction) for limits and costs.
131
+
129
132
  A [persona](personas.md) choice applies to the current session only; `/new` uses the project's default.
130
133
 
131
134
  Preferences are saved per bot and chat, and survive restarts and new sessions. A project change applies at the next `/new`, not to the current session.
@@ -162,7 +165,7 @@ Sending a file only queues it, and its caption is kept as metadata. The next tex
162
165
 
163
166
  Files are stored in the execution environment's temporary directory, so system cleanup can remove them. Queued files and group context are cleared on shutdown. Treat file contents and metadata as untrusted.
164
167
 
165
- Voice transcription uses Gemini with `GEMINI_API_KEY`, or else `apiKeys.google`. Optional spelling hints use GPT-6 Luna (reasoning disabled) with OpenAI credentials. Gemini transcribes verbatim with `gemini-3.5-transcribe`, using English (`en-US`) and Finnish (`fi-FI`) hints, and Tau tries to delete the uploaded file afterward. Receiving files needs no Google key. See [credentials](credentials.md).
168
+ Voice transcription uses Gemini with `GEMINI_API_KEY`, or else `apiKeys.google`. Optional spelling hints use GPT-6 Luna (reasoning disabled) with OpenAI credentials. The runner's [`speech.vocabulary`](config-reference.md#speech) terms precede extracted hints and work without OpenAI credentials or conversation context. Gemini transcribes verbatim with `gemini-3.5-transcribe`, using English (`en-US`) and Finnish (`fi-FI`) hints, and Tau tries to delete the uploaded file afterward. Receiving files needs no Google key. See [credentials](credentials.md).
166
169
 
167
170
  `/tts_on` rewrites text with `gpt-6-luna` (reasoning disabled) and generates speech with Eleven v4 Turbo. It requires both OpenAI and ElevenLabs credentials and runner `ffmpeg` with Opus. Voice notes use brisk delivery and 1.15× speed. See [`speech` configuration](config-reference.md#speech) for default and custom voice selection. Source and rewritten text are limited to 10,000 Unicode characters each, and audio to 32 MiB. Rewriting times out after one minute and the whole job after five. Jobs are not saved. On failure, the bot sends `voice response failed. please try again.`; the text reply is unaffected and details go to the logs.
168
171
 
@@ -106,6 +106,8 @@ Enabling `bash` also enables `list_bash_jobs`, `read_bash_job`, `stop_bash_job`,
106
106
 
107
107
  In the TUI, job tool cards have headings such as `reading bash <id>` and `listed bash jobs`, and show a seven-line preview from the middle of the result. A background start shows `started background <command>`, which means only that the command started.
108
108
 
109
+ Background launch and job-tool footers show the tool call's duration, estimated tokens, and line count. Counts cover the exact text returned to the model after output limits, before the card preview is shortened. With `includeOutput: false`, only returned job information counts. The launch footer also includes the working directory. A `◆` marker means included command output was truncated; shortening the card preview alone does not add it. A wait that reaches its timeout appends `timed out` without making the card an error. Durations measure the tool call, not the job's lifetime, and cards remain snapshots of that call.
110
+
109
111
  When a job tool call is invalid or fails, the TUI card shows a short diagnostic as well as the model's result. A normal cancellation shows no details.
110
112
 
111
113
  `wait_for_bash_jobs({ids, timeout?, includeOutput?})` returns when any of the jobs exits or the wait times out. Jobs that already finished return immediately. The timeout is a positive integer in milliseconds, defaults to 60,000, and can be at most 300,000. A timeout counts as a successful result and does not stop the jobs. Interrupting the wait leaves them running too. The tool waits for a job to exit, not to become ready, so check a server's logs or readiness instead. A job finishing never starts an agent turn by itself.
@@ -159,6 +161,8 @@ printText(await tau.docs("web"));
159
161
 
160
162
  The agent does not re-read documentation it has already seen. MCP tool descriptions and Nook's authoring guide are read in their own separate steps. Programs do not need to print intermediate results.
161
163
 
164
+ `printText` accepts only strings; objects and arrays throw a `TypeError`. The agent selects relevant fields and explicitly formats concise plain text to save tokens. `JSON.stringify` is reserved for cases where the structure matters or machine-readable JSON is requested, with fields selected first instead of dumping whole responses.
165
+
162
166
  Only `printText(string)` and awaited `printImage({ data, mimeType })` produce output, in the order they are called. Return values are ignored. Text is truncated in the middle to `maxOutputTokens` (default 8,192; range 1–65,536). The agent leaves it unset unless needed, and may raise it to 16,384 on its own. Higher values require an explicit user request. When text from the built-in `code` tool is truncated, Tau saves it to a temporary file in the execution environment when possible and reports the path. The agent reads that file instead of running the program again with its side effects. The file does not contain images or text lost to capture limits.
163
167
 
164
168
  JPEG, PNG, and WebP images are validated outside the sandbox and fitted to 4,096 pixels per dimension and 3.5 MiB each. Source images can be at most 40 megapixels, and a program can emit at most 16 images. Valid images are kept even if the built-in `code` program fails.