@markusylisiurunen/tau 0.3.81 → 0.3.82

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 (133) hide show
  1. package/dist/core/commands/registry.js +0 -22
  2. package/dist/core/commands/registry.js.map +1 -1
  3. package/dist/core/runtime/chat_runtime.js +2 -13
  4. package/dist/core/runtime/chat_runtime.js.map +1 -1
  5. package/dist/core/static/tau_docs/client-tools.md +1 -1
  6. package/dist/core/static/tau_docs/index.md +1 -1
  7. package/dist/core/static/tau_docs/node-sdk.md +1 -4
  8. package/dist/core/static/tau_docs/personas.md +1 -1
  9. package/dist/core/static/tau_docs/remote-sessions.md +2 -2
  10. package/dist/core/static/tau_docs/security.md +1 -1
  11. package/dist/core/static/tau_docs/session-protocol-methods.md +1 -46
  12. package/dist/core/static/tau_docs/session-protocol.md +11 -11
  13. package/dist/core/static/tau_docs/sessions.md +4 -25
  14. package/dist/core/static/tau_docs/subagents.md +1 -1
  15. package/dist/core/static/tau_docs/telegram.md +1 -1
  16. package/dist/core/static/tau_docs/tools.md +4 -15
  17. package/dist/core/static/tau_docs/troubleshooting.md +2 -2
  18. package/dist/core/static/tau_docs/tui.md +5 -6
  19. package/dist/core/telegram/adapter.js +1 -6
  20. package/dist/core/telegram/adapter.js.map +1 -1
  21. package/dist/core/tools/catalog.js +0 -11
  22. package/dist/core/tools/catalog.js.map +1 -1
  23. package/dist/core/tools/tool_names.js +0 -6
  24. package/dist/core/tools/tool_names.js.map +1 -1
  25. package/dist/core/utils/gemini_transcription.js +73 -28
  26. package/dist/core/utils/gemini_transcription.js.map +1 -1
  27. package/dist/core/utils/user_metadata.js +0 -14
  28. package/dist/core/utils/user_metadata.js.map +1 -1
  29. package/dist/core/version.js +2 -2
  30. package/dist/diff_tool/app/dist/assets/{angular-html-BbLgbIhq.js → angular-html-D20byCHL.js} +1 -1
  31. package/dist/diff_tool/app/dist/assets/{angular-ts-DXk17TRM.js → angular-ts-CvVQslm2.js} +1 -1
  32. package/dist/diff_tool/app/dist/assets/{apl-BsvksCXR.js → apl-DNIxlYWe.js} +1 -1
  33. package/dist/diff_tool/app/dist/assets/{astro-DH775E4V.js → astro-DDOw4EUG.js} +1 -1
  34. package/dist/diff_tool/app/dist/assets/{blade-Ck99Rm59.js → blade-DlhB-SLW.js} +1 -1
  35. package/dist/diff_tool/app/dist/assets/{c-DJpHqu5J.js → c-C1f4vhDm.js} +1 -1
  36. package/dist/diff_tool/app/dist/assets/{chapel-Owff0Csy.js → chapel-Ctt8xOX1.js} +1 -1
  37. package/dist/diff_tool/app/dist/assets/{cobol-Cv2gZuhO.js → cobol-BXw71PAA.js} +1 -1
  38. package/dist/diff_tool/app/dist/assets/{coffee-Bji0YCf_.js → coffee-CRh_5Nmr.js} +1 -1
  39. package/dist/diff_tool/app/dist/assets/{cpp-DTjA_yFF.js → cpp-IlI-zWOZ.js} +1 -1
  40. package/dist/diff_tool/app/dist/assets/{crystal-Dd00NOeb.js → crystal-CXeL28i7.js} +1 -1
  41. package/dist/diff_tool/app/dist/assets/{css-D44TN1V6.js → css-BfST9hFI.js} +1 -1
  42. package/dist/diff_tool/app/dist/assets/{edge-CVmGSi2m.js → edge--Q22k_ty.js} +1 -1
  43. package/dist/diff_tool/app/dist/assets/{elixir-B8Mq7no2.js → elixir-CIfC_rQx.js} +1 -1
  44. package/dist/diff_tool/app/dist/assets/{elm-CXS0I3Z2.js → elm-OkZ29XRO.js} +1 -1
  45. package/dist/diff_tool/app/dist/assets/{erb-B9oDKaUo.js → erb-B8ZXgEqv.js} +1 -1
  46. package/dist/diff_tool/app/dist/assets/{git-rebase-DT-YFebH.js → git-rebase-CxkO_WGd.js} +1 -1
  47. package/dist/diff_tool/app/dist/assets/{glimmer-js-s0DXlNjq.js → glimmer-js-BVadyIrr.js} +1 -1
  48. package/dist/diff_tool/app/dist/assets/{glimmer-ts-QgEB5S2z.js → glimmer-ts-D5J3Qb7n.js} +1 -1
  49. package/dist/diff_tool/app/dist/assets/{glsl-NA0icwbY.js → glsl-B6iy73-Y.js} +1 -1
  50. package/dist/diff_tool/app/dist/assets/{graphql-0_dOlfV0.js → graphql-Dc3rUXf5.js} +1 -1
  51. package/dist/diff_tool/app/dist/assets/{hack-D-mr7l1l.js → hack-q8Utf8Jp.js} +1 -1
  52. package/dist/diff_tool/app/dist/assets/{haml-B0-oQmz7.js → haml-mjMIlj_2.js} +1 -1
  53. package/dist/diff_tool/app/dist/assets/{handlebars-Yq9bXpWN.js → handlebars-CA-BL8Ks.js} +1 -1
  54. package/dist/diff_tool/app/dist/assets/{html-B8bMmdRK.js → html-BmPxhYCX.js} +1 -1
  55. package/dist/diff_tool/app/dist/assets/{html-derivative-BpxSlQb_.js → html-derivative-CvknIjuB.js} +1 -1
  56. package/dist/diff_tool/app/dist/assets/{http-hS_53mxt.js → http-DNxLDRIi.js} +1 -1
  57. package/dist/diff_tool/app/dist/assets/{hurl-B2ST1kwl.js → hurl-kbd3Eq2V.js} +1 -1
  58. package/dist/diff_tool/app/dist/assets/index-D8ZI_2RC.js +340 -0
  59. package/dist/diff_tool/app/dist/assets/{java-D4mj0lZJ.js → java-BuZshgf1.js} +1 -1
  60. package/dist/diff_tool/app/dist/assets/{javascript-wC7rrKiV.js → javascript-DfL2oeFU.js} +1 -1
  61. package/dist/diff_tool/app/dist/assets/{jinja-DbQ3o87F.js → jinja-Bu0KQihU.js} +1 -1
  62. package/dist/diff_tool/app/dist/assets/{jison-CrE9FdvP.js → jison-Bqn7Mf3Q.js} +1 -1
  63. package/dist/diff_tool/app/dist/assets/{json-xjicDyWN.js → json-BuX5LKaB.js} +1 -1
  64. package/dist/diff_tool/app/dist/assets/{jsx-m28lXojQ.js → jsx-DdVJ-ZBp.js} +1 -1
  65. package/dist/diff_tool/app/dist/assets/{julia-19xkOmop.js → julia-CQeijOoQ.js} +1 -1
  66. package/dist/diff_tool/app/dist/assets/{just-Cf7OorTr.js → just-vzAktFGR.js} +1 -1
  67. package/dist/diff_tool/app/dist/assets/{latex-DDb7GQOy.js → latex-Dm60cg0k.js} +1 -1
  68. package/dist/diff_tool/app/dist/assets/{liquid-DHOuQ0rf.js → liquid-vxKzm2P8.js} +1 -1
  69. package/dist/diff_tool/app/dist/assets/{lua-BGyIvonw.js → lua-DIoqi4dd.js} +1 -1
  70. package/dist/diff_tool/app/dist/assets/{marko-DB5OqI1C.js → marko-BTHgFKby.js} +1 -1
  71. package/dist/diff_tool/app/dist/assets/{mdc-DTyNMupO.js → mdc-CEfz8gZ9.js} +1 -1
  72. package/dist/diff_tool/app/dist/assets/{nginx-DfF0fMYD.js → nginx-DNlFDEfJ.js} +1 -1
  73. package/dist/diff_tool/app/dist/assets/{nim-BbwsXuZD.js → nim-DnvT_0lZ.js} +1 -1
  74. package/dist/diff_tool/app/dist/assets/{org-BkOBBl1f.js → org-BbD-ElVf.js} +1 -1
  75. package/dist/diff_tool/app/dist/assets/{perl-BTXTOl4K.js → perl-DTsbnAmK.js} +1 -1
  76. package/dist/diff_tool/app/dist/assets/{php-DIMVQWiA.js → php-CwEsJe-W.js} +1 -1
  77. package/dist/diff_tool/app/dist/assets/{pug-B_nrb4dJ.js → pug-BOttMVH-.js} +1 -1
  78. package/dist/diff_tool/app/dist/assets/{qml-1PXi8G8Z.js → qml-C8KkSItN.js} +1 -1
  79. package/dist/diff_tool/app/dist/assets/{r-CJrAkc2Z.js → r-K4ksJj_R.js} +1 -1
  80. package/dist/diff_tool/app/dist/assets/{razor-DgPUftNd.js → razor-yuWRrrG6.js} +1 -1
  81. package/dist/diff_tool/app/dist/assets/{regexp-C2hS8XvL.js → regexp-CV-jhnUz.js} +1 -1
  82. package/dist/diff_tool/app/dist/assets/{rst-CDouhKnc.js → rst-CLA3Attc.js} +1 -1
  83. package/dist/diff_tool/app/dist/assets/{ruby-CAjKW1uO.js → ruby-DiHR2-DX.js} +1 -1
  84. package/dist/diff_tool/app/dist/assets/{sas-qAHkHLc1.js → sas-DxIjbYJ5.js} +1 -1
  85. package/dist/diff_tool/app/dist/assets/{scss-Bfx2Ydid.js → scss-CShwEaV4.js} +1 -1
  86. package/dist/diff_tool/app/dist/assets/{shellscript-Bu76R8y2.js → shellscript-CeezOnrF.js} +1 -1
  87. package/dist/diff_tool/app/dist/assets/{shellsession-BU8BL0oL.js → shellsession-CjSS2r7j.js} +1 -1
  88. package/dist/diff_tool/app/dist/assets/{soy-FRl8ozP-.js → soy-CI_v23nJ.js} +1 -1
  89. package/dist/diff_tool/app/dist/assets/{sql-BacQgsEs.js → sql-D9GaB00A.js} +1 -1
  90. package/dist/diff_tool/app/dist/assets/{stata-B9kkG-ET.js → stata-hK92TPE_.js} +1 -1
  91. package/dist/diff_tool/app/dist/assets/{surrealql-qvETr7iY.js → surrealql-UO8LtPJG.js} +1 -1
  92. package/dist/diff_tool/app/dist/assets/{svelte-B0z1MgHc.js → svelte-kIlaw_oh.js} +1 -1
  93. package/dist/diff_tool/app/dist/assets/{templ-DTnPshKb.js → templ-DFRz1JP6.js} +1 -1
  94. package/dist/diff_tool/app/dist/assets/{tex-Cosab9_H.js → tex-CfxIXk_z.js} +1 -1
  95. package/dist/diff_tool/app/dist/assets/{ts-tags-DNYvLFUH.js → ts-tags-BtUHl0ff.js} +1 -1
  96. package/dist/diff_tool/app/dist/assets/{tsx-Dstq6j1a.js → tsx-Cd4SAe2C.js} +1 -1
  97. package/dist/diff_tool/app/dist/assets/{twig-BzqZdwaX.js → twig-CWk4q5Y3.js} +1 -1
  98. package/dist/diff_tool/app/dist/assets/{typescript-YOQ_oE25.js → typescript-BqxGJiP0.js} +1 -1
  99. package/dist/diff_tool/app/dist/assets/{typst-DTffwfpc.js → typst-D9nAun2p.js} +1 -1
  100. package/dist/diff_tool/app/dist/assets/{vue-D4OMj_C5.js → vue-D6HYhg6_.js} +1 -1
  101. package/dist/diff_tool/app/dist/assets/{vue-html-kT4WrHGK.js → vue-html-1VRlaENS.js} +1 -1
  102. package/dist/diff_tool/app/dist/assets/{vue-vine-CxeapeMO.js → vue-vine-BaH0We9y.js} +1 -1
  103. package/dist/diff_tool/app/dist/assets/{xml-DWVpuurg.js → xml-C4RWnUuj.js} +1 -1
  104. package/dist/diff_tool/app/dist/assets/{xsl-C0ciup5a.js → xsl-D1iD38ga.js} +1 -1
  105. package/dist/diff_tool/app/dist/assets/{yaml-98Fvyfpc.js → yaml-yAb4W0G-.js} +1 -1
  106. package/dist/diff_tool/app/dist/index.html +1 -1
  107. package/dist/host/local_session_host.js +24 -318
  108. package/dist/host/local_session_host.js.map +1 -1
  109. package/dist/host/session_host.js.map +1 -1
  110. package/dist/host/session_protocol_handler.js +0 -98
  111. package/dist/host/session_protocol_handler.js.map +1 -1
  112. package/dist/protocol/index.d.ts +1 -1
  113. package/dist/protocol/index.js.map +1 -1
  114. package/dist/protocol/session_protocol.d.ts +3 -28
  115. package/dist/protocol/session_protocol.js +1 -56
  116. package/dist/protocol/session_protocol.js.map +1 -1
  117. package/dist/sdk/index.d.ts +1 -1
  118. package/dist/sdk/index.js.map +1 -1
  119. package/dist/sdk/session.js +0 -20
  120. package/dist/sdk/session.js.map +1 -1
  121. package/dist/sdk/types.d.ts +1 -7
  122. package/dist/store/session_snapshot_migrations.js +72 -1
  123. package/dist/store/session_snapshot_migrations.js.map +1 -1
  124. package/dist/tui/session_chat_controller.js +0 -27
  125. package/dist/tui/session_chat_controller.js.map +1 -1
  126. package/dist/tui/ui/footer.js +2 -5
  127. package/dist/tui/ui/footer.js.map +1 -1
  128. package/package.json +5 -5
  129. package/dist/core/session/goal.js +0 -54
  130. package/dist/core/session/goal.js.map +0 -1
  131. package/dist/core/tools/goal.js +0 -167
  132. package/dist/core/tools/goal.js.map +0 -1
  133. package/dist/diff_tool/app/dist/assets/index-CBT_sNIz.js +0 -340
@@ -1 +1 @@
1
- {"version":3,"file":"session_protocol_handler.js","sourceRoot":"","sources":["../../src/host/session_protocol_handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session_protocol_handler.js","sourceRoot":"","sources":["../../src/host/session_protocol_handler.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export type { SessionProtocolAgentRun, SessionProtocolAgentRunFailure, SessionProtocolAgentRunState, SessionProtocolAutocompletePathsParams, SessionProtocolAutocompletePathsResult, SessionProtocolBootstrapSnapshot, SessionProtocolCancelExecParams, SessionProtocolCancelExecResult, SessionProtocolCancelPendingMessagesParams, SessionProtocolCancelPendingMessagesResult, SessionProtocolChange, SessionProtocolClearGoalParams, SessionProtocolClearGoalResult, SessionProtocolCompactParams, SessionProtocolCompactResult, SessionProtocolContentCatalogSnapshot, SessionProtocolCreateParams, SessionProtocolCreateResult, SessionProtocolDelta, SessionProtocolDeltaCause, SessionProtocolDeltaMessage, SessionProtocolDraftAssistantMessage, SessionProtocolEphemeralAgentThreadUpdateEvent, SessionProtocolEphemeralAgentTool, SessionProtocolEphemeralCloseParams, SessionProtocolEphemeralCloseResult, SessionProtocolEphemeralCreateParams, SessionProtocolEphemeralCreateResult, SessionProtocolEphemeralEvent, SessionProtocolEphemeralMessage, SessionProtocolEphemeralSubmitParams, SessionProtocolEphemeralSubmitResult, SessionProtocolError, SessionProtocolErrorCode, SessionProtocolErrorResponseMessage, SessionProtocolExecParams, SessionProtocolExecResult, SessionProtocolExecutionEnvironmentInput, SessionProtocolExecutionEnvironmentSnapshot, SessionProtocolFacet, SessionProtocolFacetSubject, SessionProtocolFeedbackEvent, SessionProtocolFeedbackTone, SessionProtocolFlySpriteExecutionEnvironmentInput, SessionProtocolFlySpriteExecutionEnvironmentSnapshot, SessionProtocolGoal, SessionProtocolInitializeParams, SessionProtocolInitializeResult, SessionProtocolInterruptResult, SessionProtocolInterruptSubagentParams, SessionProtocolInterruptSubagentResult, SessionProtocolListParams, SessionProtocolListResult, SessionProtocolLocalExecutionEnvironmentInput, SessionProtocolLocalExecutionEnvironmentSnapshot, SessionProtocolMessagePayload, SessionProtocolMessageState, SessionProtocolMethod, SessionProtocolModelSnapshot, SessionProtocolObserveResult, SessionProtocolOperation, SessionProtocolOutgoingMessage, SessionProtocolOutgoingParseFailure, SessionProtocolOutgoingParseFailureReason, SessionProtocolOutgoingParseResult, SessionProtocolOutgoingParseSuccess, SessionProtocolParamsByMethod, SessionProtocolParamsValidationResult, SessionProtocolParsedOutgoingMessage, SessionProtocolParsedResponseMessage, SessionProtocolParsedSuccessResponseMessage, SessionProtocolParseFailure, SessionProtocolParseResult, SessionProtocolParseSuccess, SessionProtocolPendingUserMessage, SessionProtocolPendingUserMessagesMessage, SessionProtocolPendingUserMessagesState, SessionProtocolPersonaSettingsSnapshot, SessionProtocolPersonaSnapshot, SessionProtocolPromptCompositionSnapshot, SessionProtocolPromptTemplateSnapshot, SessionProtocolQueueParams, SessionProtocolQueueResult, SessionProtocolReadyMessage, SessionProtocolReasoningEffort, SessionProtocolRecordParams, SessionProtocolRecordResult, SessionProtocolReloadParams, SessionProtocolReloadResult, SessionProtocolRequestId, SessionProtocolRequestMessage, SessionProtocolResolvePromptParams, SessionProtocolResolvePromptResult, SessionProtocolResponseMessage, SessionProtocolResultByMethod, SessionProtocolResultValidationResult, SessionProtocolResumeGoalParams, SessionProtocolResumeGoalResult, SessionProtocolRetryParams, SessionProtocolRetryResult, SessionProtocolRewindParams, SessionProtocolRewindResult, SessionProtocolSampleContext, SessionProtocolSampleOptions, SessionProtocolSampleParams, SessionProtocolSampleResult, SessionProtocolServiceTier, SessionProtocolSessionIdParams, SessionProtocolSessionLifecycle, SessionProtocolSessionSummary, SessionProtocolSetPersonaParams, SessionProtocolSetReasoningParams, SessionProtocolSettingsSnapshot, SessionProtocolSkillSnapshot, SessionProtocolSnapshot, SessionProtocolStartGoalParams, SessionProtocolStartGoalResult, SessionProtocolSteerParams, SessionProtocolSteerResult, SessionProtocolSubagentActivitiesAgentState, SessionProtocolSubagentActivitiesChange, SessionProtocolSubagentActivitiesMessage, SessionProtocolSubagentActivitiesState, SessionProtocolSubagentActivity, SessionProtocolSubject, SessionProtocolSubmitParams, SessionProtocolSubmitResult, SessionProtocolSuccessResponseMessage, SessionProtocolSystemMessage, SessionProtocolThinkingLevel, SessionProtocolTimeline, SessionProtocolTimelineItem, SessionProtocolTimelineNotice, SessionProtocolToolRun, SessionProtocolTurnOutcome, SessionProtocolTurnRecord, SessionProtocolTurnResult, SessionProtocolUnobserveParams, SessionProtocolUnobserveResult, SessionProtocolUserMessageParams, SessionProtocolUserMessageTurnResult, } from "./session_protocol.js";
1
+ export type { SessionProtocolAgentRun, SessionProtocolAgentRunFailure, SessionProtocolAgentRunState, SessionProtocolAutocompletePathsParams, SessionProtocolAutocompletePathsResult, SessionProtocolBootstrapSnapshot, SessionProtocolCancelExecParams, SessionProtocolCancelExecResult, SessionProtocolCancelPendingMessagesParams, SessionProtocolCancelPendingMessagesResult, SessionProtocolChange, SessionProtocolCompactParams, SessionProtocolCompactResult, SessionProtocolContentCatalogSnapshot, SessionProtocolCreateParams, SessionProtocolCreateResult, SessionProtocolDelta, SessionProtocolDeltaCause, SessionProtocolDeltaMessage, SessionProtocolDraftAssistantMessage, SessionProtocolEphemeralAgentThreadUpdateEvent, SessionProtocolEphemeralAgentTool, SessionProtocolEphemeralCloseParams, SessionProtocolEphemeralCloseResult, SessionProtocolEphemeralCreateParams, SessionProtocolEphemeralCreateResult, SessionProtocolEphemeralEvent, SessionProtocolEphemeralMessage, SessionProtocolEphemeralSubmitParams, SessionProtocolEphemeralSubmitResult, SessionProtocolError, SessionProtocolErrorCode, SessionProtocolErrorResponseMessage, SessionProtocolExecParams, SessionProtocolExecResult, SessionProtocolExecutionEnvironmentInput, SessionProtocolExecutionEnvironmentSnapshot, SessionProtocolFacet, SessionProtocolFacetSubject, SessionProtocolFeedbackEvent, SessionProtocolFeedbackTone, SessionProtocolFlySpriteExecutionEnvironmentInput, SessionProtocolFlySpriteExecutionEnvironmentSnapshot, SessionProtocolInitializeParams, SessionProtocolInitializeResult, SessionProtocolInterruptResult, SessionProtocolInterruptSubagentParams, SessionProtocolInterruptSubagentResult, SessionProtocolListParams, SessionProtocolListResult, SessionProtocolLocalExecutionEnvironmentInput, SessionProtocolLocalExecutionEnvironmentSnapshot, SessionProtocolMessagePayload, SessionProtocolMessageState, SessionProtocolMethod, SessionProtocolModelSnapshot, SessionProtocolObserveResult, SessionProtocolOperation, SessionProtocolOutgoingMessage, SessionProtocolOutgoingParseFailure, SessionProtocolOutgoingParseFailureReason, SessionProtocolOutgoingParseResult, SessionProtocolOutgoingParseSuccess, SessionProtocolParamsByMethod, SessionProtocolParamsValidationResult, SessionProtocolParsedOutgoingMessage, SessionProtocolParsedResponseMessage, SessionProtocolParsedSuccessResponseMessage, SessionProtocolParseFailure, SessionProtocolParseResult, SessionProtocolParseSuccess, SessionProtocolPendingUserMessage, SessionProtocolPendingUserMessagesMessage, SessionProtocolPendingUserMessagesState, SessionProtocolPersonaSettingsSnapshot, SessionProtocolPersonaSnapshot, SessionProtocolPromptCompositionSnapshot, SessionProtocolPromptTemplateSnapshot, SessionProtocolQueueParams, SessionProtocolQueueResult, SessionProtocolReadyMessage, SessionProtocolReasoningEffort, SessionProtocolRecordParams, SessionProtocolRecordResult, SessionProtocolReloadParams, SessionProtocolReloadResult, SessionProtocolRequestId, SessionProtocolRequestMessage, SessionProtocolResolvePromptParams, SessionProtocolResolvePromptResult, SessionProtocolResponseMessage, SessionProtocolResultByMethod, SessionProtocolResultValidationResult, SessionProtocolRetryParams, SessionProtocolRetryResult, SessionProtocolRewindParams, SessionProtocolRewindResult, SessionProtocolSampleContext, SessionProtocolSampleOptions, SessionProtocolSampleParams, SessionProtocolSampleResult, SessionProtocolServiceTier, SessionProtocolSessionIdParams, SessionProtocolSessionLifecycle, SessionProtocolSessionSummary, SessionProtocolSetPersonaParams, SessionProtocolSetReasoningParams, SessionProtocolSettingsSnapshot, SessionProtocolSkillSnapshot, SessionProtocolSnapshot, SessionProtocolSteerParams, SessionProtocolSteerResult, SessionProtocolSubagentActivitiesAgentState, SessionProtocolSubagentActivitiesChange, SessionProtocolSubagentActivitiesMessage, SessionProtocolSubagentActivitiesState, SessionProtocolSubagentActivity, SessionProtocolSubject, SessionProtocolSubmitParams, SessionProtocolSubmitResult, SessionProtocolSuccessResponseMessage, SessionProtocolSystemMessage, SessionProtocolThinkingLevel, SessionProtocolTimeline, SessionProtocolTimelineItem, SessionProtocolTimelineNotice, SessionProtocolToolRun, SessionProtocolTurnOutcome, SessionProtocolTurnRecord, SessionProtocolTurnResult, SessionProtocolUnobserveParams, SessionProtocolUnobserveResult, SessionProtocolUserMessageParams, SessionProtocolUserMessageTurnResult, } from "./session_protocol.js";
2
2
  export { applySessionProtocolDelta, applySessionProtocolSubagentActivitiesMessage, createSessionProtocolDeltaMessage, createSessionProtocolEphemeralMessage, createSessionProtocolError, createSessionProtocolErrorResponse, createSessionProtocolPendingUserMessagesMessage, createSessionProtocolReadyMessage, createSessionProtocolRequest, createSessionProtocolSubagentActivitiesMessage, createSessionProtocolSuccessResponse, isSessionProtocolMethod, parseSessionProtocolOutgoingLine, parseSessionProtocolRequestLine, projectSessionProtocolNoticePresentation, projectSessionProtocolSubagentActivity, SESSION_PROTOCOL_ERROR_CODES, SESSION_PROTOCOL_MAX_EXEC_CAPTURE_BYTES, SESSION_PROTOCOL_MAX_EXEC_STDIN_BYTES, SESSION_PROTOCOL_MAX_SUBAGENT_ACTIVITIES, SESSION_PROTOCOL_MAX_SUBAGENT_ASSISTANT_TEXT_BYTES, SESSION_PROTOCOL_MAX_SUBAGENT_NOTICE_CONTENT_BYTES, SESSION_PROTOCOL_MAX_SUBAGENT_SHORT_TEXT_BYTES, SESSION_PROTOCOL_MAX_SUBAGENT_TOOL_DETAILS_BYTES, SESSION_PROTOCOL_MAX_SUBAGENT_TOOL_METADATA_BYTES, SESSION_PROTOCOL_MAX_SUBAGENT_TOOL_SUBJECT_BYTES, SESSION_PROTOCOL_METHODS, SESSION_PROTOCOL_VERSION, serializeSessionProtocolMessage, validateSessionProtocolParams, validateSessionProtocolResult, } from "./session_protocol.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/protocol/index.ts"],"names":[],"mappings":"AA+IA,OAAO,EACL,yBAAyB,EACzB,6CAA6C,EAC7C,iCAAiC,EACjC,qCAAqC,EACrC,0BAA0B,EAC1B,kCAAkC,EAClC,+CAA+C,EAC/C,iCAAiC,EACjC,4BAA4B,EAC5B,8CAA8C,EAC9C,oCAAoC,EACpC,uBAAuB,EACvB,gCAAgC,EAChC,+BAA+B,EAC/B,wCAAwC,EACxC,sCAAsC,EACtC,4BAA4B,EAC5B,uCAAuC,EACvC,qCAAqC,EACrC,wCAAwC,EACxC,kDAAkD,EAClD,kDAAkD,EAClD,8CAA8C,EAC9C,gDAAgD,EAChD,iDAAiD,EACjD,gDAAgD,EAChD,wBAAwB,EACxB,wBAAwB,EACxB,+BAA+B,EAC/B,6BAA6B,EAC7B,6BAA6B,GAC9B,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/protocol/index.ts"],"names":[],"mappings":"AAwIA,OAAO,EACL,yBAAyB,EACzB,6CAA6C,EAC7C,iCAAiC,EACjC,qCAAqC,EACrC,0BAA0B,EAC1B,kCAAkC,EAClC,+CAA+C,EAC/C,iCAAiC,EACjC,4BAA4B,EAC5B,8CAA8C,EAC9C,oCAAoC,EACpC,uBAAuB,EACvB,gCAAgC,EAChC,+BAA+B,EAC/B,wCAAwC,EACxC,sCAAsC,EACtC,4BAA4B,EAC5B,uCAAuC,EACvC,qCAAqC,EACrC,wCAAwC,EACxC,kDAAkD,EAClD,kDAAkD,EAClD,8CAA8C,EAC9C,gDAAgD,EAChD,iDAAiD,EACjD,gDAAgD,EAChD,wBAAwB,EACxB,wBAAwB,EACxB,+BAA+B,EAC/B,6BAA6B,EAC7B,6BAA6B,GAC9B,MAAM,uBAAuB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { AssistantMessage, ImageContent, Message, TextContent, ThinkingContent, Tool, ToolCall } from "@earendil-works/pi-ai";
2
2
  import { type IntermediateSystemMessage } from "./system_message.js";
3
- export declare const SESSION_PROTOCOL_VERSION: 16;
3
+ export declare const SESSION_PROTOCOL_VERSION: 17;
4
4
  export declare const SESSION_PROTOCOL_MAX_CLIENT_TOOL_IMAGES = 16;
5
5
  export declare const SESSION_PROTOCOL_MAX_CLIENT_TOOL_CONTENT_BLOCKS = 1024;
6
6
  export declare const SESSION_PROTOCOL_MAX_CLIENT_TOOL_IMAGE_BYTES: number;
@@ -21,7 +21,7 @@ export declare const SESSION_PROTOCOL_MAX_SUBAGENT_ASSISTANT_TEXT_BYTES: number;
21
21
  export declare const SESSION_PROTOCOL_MAX_SUBAGENT_TOOL_DETAILS_BYTES: number;
22
22
  export declare const SESSION_PROTOCOL_MAX_SUBAGENT_TOOL_METADATA_BYTES: number;
23
23
  export declare const SESSION_PROTOCOL_MAX_SUBAGENT_NOTICE_CONTENT_BYTES: number;
24
- export declare const SESSION_PROTOCOL_METHODS: readonly ["initialize", "session.create", "session.list", "session.observe", "session.unobserve", "session.record", "session.submit", "session.queue", "session.steer", "session.cancelPendingMessages", "session.retry", "session.exec", "session.cancelExec", "session.sample", "session.interrupt", "session.snapshot", "session.startGoal", "session.resumeGoal", "session.clearGoal", "session.setReasoning", "session.setPersona", "session.resolvePrompt", "session.autocompletePaths", "session.reload", "session.compact", "session.rewind", "session.interruptSubagent", "session.ephemeral.create", "session.ephemeral.submit", "session.ephemeral.close", "session.clientTool.ack", "session.clientTool.result"];
24
+ export declare const SESSION_PROTOCOL_METHODS: readonly ["initialize", "session.create", "session.list", "session.observe", "session.unobserve", "session.record", "session.submit", "session.queue", "session.steer", "session.cancelPendingMessages", "session.retry", "session.exec", "session.cancelExec", "session.sample", "session.interrupt", "session.snapshot", "session.setReasoning", "session.setPersona", "session.resolvePrompt", "session.autocompletePaths", "session.reload", "session.compact", "session.rewind", "session.interruptSubagent", "session.ephemeral.create", "session.ephemeral.submit", "session.ephemeral.close", "session.clientTool.ack", "session.clientTool.result"];
25
25
  export type SessionProtocolMethod = (typeof SESSION_PROTOCOL_METHODS)[number];
26
26
  export declare const SESSION_PROTOCOL_ERROR_CODES: {
27
27
  readonly parseError: "parse_error";
@@ -86,11 +86,6 @@ export type SessionProtocolRecordParams = SessionProtocolSessionIdParams & {
86
86
  historyEntryId?: string;
87
87
  };
88
88
  export type SessionProtocolRetryParams = SessionProtocolSessionIdParams;
89
- export type SessionProtocolStartGoalParams = SessionProtocolSessionIdParams & {
90
- objective: string;
91
- };
92
- export type SessionProtocolResumeGoalParams = SessionProtocolSessionIdParams;
93
- export type SessionProtocolClearGoalParams = SessionProtocolSessionIdParams;
94
89
  export type SessionProtocolExecParams = SessionProtocolSessionIdParams & {
95
90
  execId: string;
96
91
  command: string;
@@ -206,9 +201,6 @@ export type SessionProtocolParamsByMethod = {
206
201
  "session.sample": SessionProtocolSampleParams;
207
202
  "session.interrupt": SessionProtocolSessionIdParams;
208
203
  "session.snapshot": SessionProtocolSessionIdParams;
209
- "session.startGoal": SessionProtocolStartGoalParams;
210
- "session.resumeGoal": SessionProtocolResumeGoalParams;
211
- "session.clearGoal": SessionProtocolClearGoalParams;
212
204
  "session.setReasoning": SessionProtocolSetReasoningParams;
213
205
  "session.setPersona": SessionProtocolSetPersonaParams;
214
206
  "session.resolvePrompt": SessionProtocolResolvePromptParams;
@@ -313,9 +305,6 @@ export type SessionProtocolSubagentActivitiesChange = {
313
305
  export type SessionProtocolCreateResult = {
314
306
  sessionId: string;
315
307
  };
316
- export type SessionProtocolStartGoalResult = SessionProtocolSubmitResult;
317
- export type SessionProtocolResumeGoalResult = SessionProtocolTurnResult;
318
- export type SessionProtocolClearGoalResult = SessionProtocolSnapshot;
319
308
  export type SessionProtocolObserveResult = {
320
309
  snapshot: SessionProtocolSnapshot;
321
310
  pendingUserMessages: SessionProtocolPendingUserMessagesState;
@@ -547,10 +536,6 @@ export type SessionProtocolAgentStateSnapshot = {
547
536
  tokens: number;
548
537
  };
549
538
  };
550
- export type SessionProtocolGoal = {
551
- objective: string;
552
- status: "active" | "blocked";
553
- };
554
539
  export type SessionProtocolSnapshot = {
555
540
  sessionId: string;
556
541
  attributes: Record<string, string>;
@@ -558,7 +543,6 @@ export type SessionProtocolSnapshot = {
558
543
  revision: number;
559
544
  agentState: SessionProtocolAgentStateSnapshot;
560
545
  lifecycle: SessionProtocolSessionLifecycle;
561
- goal: SessionProtocolGoal | null;
562
546
  costTotal: number;
563
547
  settings: SessionProtocolSettingsSnapshot;
564
548
  bootstrap: SessionProtocolBootstrapSnapshot;
@@ -731,9 +715,6 @@ export type SessionProtocolResultByMethod = {
731
715
  "session.sample": SessionProtocolSampleResult;
732
716
  "session.interrupt": SessionProtocolInterruptResult;
733
717
  "session.snapshot": SessionProtocolSnapshot;
734
- "session.startGoal": SessionProtocolStartGoalResult;
735
- "session.resumeGoal": SessionProtocolResumeGoalResult;
736
- "session.clearGoal": SessionProtocolClearGoalResult;
737
718
  "session.setReasoning": SessionProtocolSettingsUpdateResult;
738
719
  "session.setPersona": SessionProtocolSnapshot;
739
720
  "session.resolvePrompt": SessionProtocolResolvePromptResult;
@@ -782,7 +763,7 @@ export type SessionProtocolParsedSuccessResponseMessage = Omit<SessionProtocolSu
782
763
  };
783
764
  export type SessionProtocolParsedResponseMessage = SessionProtocolParsedSuccessResponseMessage | SessionProtocolErrorResponseMessage;
784
765
  export type SessionProtocolDeltaCause = {
785
- type: "user-message" | "system-message" | "assistant-stream" | "assistant-message" | "tool-run" | "tool-result" | "notice" | "agent-run" | "maintenance" | "configuration" | "goal";
766
+ type: "user-message" | "system-message" | "assistant-stream" | "assistant-message" | "tool-run" | "tool-result" | "notice" | "agent-run" | "maintenance" | "configuration";
786
767
  } | {
787
768
  type: "compaction";
788
769
  previousEpoch: number;
@@ -803,9 +784,6 @@ export type SessionProtocolChange = {
803
784
  } | {
804
785
  type: "lifecycle.set";
805
786
  lifecycle: SessionProtocolSessionLifecycle;
806
- } | {
807
- type: "goal.set";
808
- goal: SessionProtocolGoal | null;
809
787
  } | {
810
788
  type: "cost.set";
811
789
  costTotal: number;
@@ -1041,9 +1019,6 @@ export declare function validateSessionProtocolParams(method: "session.cancelExe
1041
1019
  export declare function validateSessionProtocolParams(method: "session.sample", params: unknown): SessionProtocolParamsValidationResult<SessionProtocolSampleParams>;
1042
1020
  export declare function validateSessionProtocolParams(method: "session.interrupt", params: unknown): SessionProtocolParamsValidationResult<SessionProtocolSessionIdParams>;
1043
1021
  export declare function validateSessionProtocolParams(method: "session.snapshot", params: unknown): SessionProtocolParamsValidationResult<SessionProtocolSessionIdParams>;
1044
- export declare function validateSessionProtocolParams(method: "session.startGoal", params: unknown): SessionProtocolParamsValidationResult<SessionProtocolStartGoalParams>;
1045
- export declare function validateSessionProtocolParams(method: "session.resumeGoal", params: unknown): SessionProtocolParamsValidationResult<SessionProtocolResumeGoalParams>;
1046
- export declare function validateSessionProtocolParams(method: "session.clearGoal", params: unknown): SessionProtocolParamsValidationResult<SessionProtocolClearGoalParams>;
1047
1022
  export declare function validateSessionProtocolParams(method: "session.reload", params: unknown): SessionProtocolParamsValidationResult<SessionProtocolReloadParams>;
1048
1023
  export declare function validateSessionProtocolParams(method: "session.setReasoning", params: unknown): SessionProtocolParamsValidationResult<SessionProtocolSetReasoningParams>;
1049
1024
  export declare function validateSessionProtocolParams(method: "session.setPersona", params: unknown): SessionProtocolParamsValidationResult<SessionProtocolSetPersonaParams>;
@@ -1,7 +1,7 @@
1
1
  import { z } from "zod";
2
2
  import { MODEL_IMAGE_MAX_BYTES, SUPPORTED_IMAGE_TYPES } from "../core/utils/model_image.js";
3
3
  import { isIntermediateSystemMessage } from "./system_message.js";
4
- export const SESSION_PROTOCOL_VERSION = 16;
4
+ export const SESSION_PROTOCOL_VERSION = 17;
5
5
  export const SESSION_PROTOCOL_MAX_CLIENT_TOOL_IMAGES = 16;
6
6
  export const SESSION_PROTOCOL_MAX_CLIENT_TOOL_CONTENT_BLOCKS = 1024;
7
7
  export const SESSION_PROTOCOL_MAX_CLIENT_TOOL_IMAGE_BYTES = MODEL_IMAGE_MAX_BYTES;
@@ -43,9 +43,6 @@ export const SESSION_PROTOCOL_METHODS = [
43
43
  "session.sample",
44
44
  "session.interrupt",
45
45
  "session.snapshot",
46
- "session.startGoal",
47
- "session.resumeGoal",
48
- "session.clearGoal",
49
46
  "session.setReasoning",
50
47
  "session.setPersona",
51
48
  "session.resolvePrompt",
@@ -541,12 +538,6 @@ const sessionProtocolUserMessageParamsSchema = z
541
538
  historyEntryId: historyEntryIdSchema.optional(),
542
539
  })
543
540
  .strip();
544
- const sessionProtocolStartGoalParamsSchema = z
545
- .object({
546
- sessionId: nonEmptyStringSchema,
547
- objective: nonEmptyStringSchema,
548
- })
549
- .strip();
550
541
  const sessionProtocolSteerParamsSchema = z
551
542
  .object({
552
543
  sessionId: nonEmptyStringSchema,
@@ -1230,12 +1221,6 @@ const sessionProtocolFacetSchema = z
1230
1221
  data: z.record(z.string(), z.unknown()),
1231
1222
  })
1232
1223
  .strip();
1233
- const sessionProtocolGoalSchema = z
1234
- .object({
1235
- objective: nonEmptyStringSchema,
1236
- status: z.enum(["active", "blocked"]),
1237
- })
1238
- .strip();
1239
1224
  const sessionProtocolAgentStateSnapshotSchema = z
1240
1225
  .object({
1241
1226
  revision: z.number().int().nonnegative(),
@@ -1268,7 +1253,6 @@ const sessionProtocolSnapshotSchema = z
1268
1253
  revision: z.number().int().positive(),
1269
1254
  agentState: sessionProtocolAgentStateSnapshotSchema,
1270
1255
  lifecycle: sessionProtocolSessionLifecycleSchema,
1271
- goal: sessionProtocolGoalSchema.nullable(),
1272
1256
  costTotal: z.number().nonnegative(),
1273
1257
  settings: sessionProtocolSettingsSnapshotSchema,
1274
1258
  bootstrap: sessionProtocolBootstrapSnapshotSchema,
@@ -1562,7 +1546,6 @@ const sessionProtocolDeltaCauseSchema = z.union([
1562
1546
  "agent-run",
1563
1547
  "maintenance",
1564
1548
  "configuration",
1565
- "goal",
1566
1549
  ]),
1567
1550
  })
1568
1551
  .strip(),
@@ -1598,12 +1581,6 @@ const sessionProtocolChangeSchema = z.discriminatedUnion("type", [
1598
1581
  lifecycle: sessionProtocolSessionLifecycleSchema,
1599
1582
  })
1600
1583
  .strip(),
1601
- z
1602
- .object({
1603
- type: z.literal("goal.set"),
1604
- goal: sessionProtocolGoalSchema.nullable(),
1605
- })
1606
- .strip(),
1607
1584
  z
1608
1585
  .object({
1609
1586
  type: z.literal("cost.set"),
@@ -1997,13 +1974,11 @@ const sessionProtocolSubmitResultSchema = z
1997
1974
  .strip();
1998
1975
  const sessionProtocolTurnResultSchema = sessionProtocolSubmitResultSchema;
1999
1976
  const sessionProtocolRetryResultSchema = sessionProtocolTurnResultSchema;
2000
- const sessionProtocolResumeGoalResultSchema = sessionProtocolTurnResultSchema;
2001
1977
  const sessionProtocolSubmitWithUserResultSchema = sessionProtocolTurnResultSchema
2002
1978
  .extend({
2003
1979
  userHistoryEntryId: nonEmptyStringSchema,
2004
1980
  })
2005
1981
  .strip();
2006
- const sessionProtocolStartGoalResultSchema = sessionProtocolSubmitWithUserResultSchema;
2007
1982
  const sessionProtocolCancelPendingMessagesResultSchema = z
2008
1983
  .object({
2009
1984
  cancelled: z.array(sessionProtocolPendingUserMessageSchema),
@@ -2284,9 +2259,6 @@ export function applySessionProtocolDelta(snapshot, message) {
2284
2259
  case "lifecycle.set":
2285
2260
  next.lifecycle = change.lifecycle;
2286
2261
  break;
2287
- case "goal.set":
2288
- next.goal = structuredClone(change.goal);
2289
- break;
2290
2262
  case "cost.set":
2291
2263
  next.costTotal = change.costTotal;
2292
2264
  break;
@@ -2373,7 +2345,6 @@ function validateAppliedSnapshotChanges(previous, snapshot, changes) {
2373
2345
  function changeCanInvalidateSnapshot(snapshot, change) {
2374
2346
  switch (change.type) {
2375
2347
  case "lifecycle.set":
2376
- case "goal.set":
2377
2348
  case "cost.set":
2378
2349
  case "settings.set":
2379
2350
  case "turn.set":
@@ -2488,9 +2459,6 @@ function applyStructurallySharedPatch(snapshot, message) {
2488
2459
  case "lifecycle.set":
2489
2460
  topLevelChanges.lifecycle = change.lifecycle;
2490
2461
  break;
2491
- case "goal.set":
2492
- topLevelChanges.goal = structuredClone(change.goal);
2493
- break;
2494
2462
  case "cost.set":
2495
2463
  topLevelChanges.costTotal = change.costTotal;
2496
2464
  break;
@@ -2875,12 +2843,8 @@ export function validateSessionProtocolParams(method, params) {
2875
2843
  case "session.retry":
2876
2844
  case "session.interrupt":
2877
2845
  case "session.snapshot":
2878
- case "session.resumeGoal":
2879
- case "session.clearGoal":
2880
2846
  case "session.reload":
2881
2847
  return validateSessionIdParams(method, params);
2882
- case "session.startGoal":
2883
- return validateStartGoalParams(params);
2884
2848
  case "session.setReasoning":
2885
2849
  return validateSetReasoningParams(params);
2886
2850
  case "session.setPersona":
@@ -2916,7 +2880,6 @@ export function validateSessionProtocolResult(method, result) {
2916
2880
  case "session.observe":
2917
2881
  return validateResult(method, result, sessionProtocolObserveResultSchema);
2918
2882
  case "session.snapshot":
2919
- case "session.clearGoal":
2920
2883
  case "session.setPersona":
2921
2884
  return validateResult(method, result, sessionProtocolSnapshotSchema);
2922
2885
  case "session.setReasoning":
@@ -2951,10 +2914,6 @@ export function validateSessionProtocolResult(method, result) {
2951
2914
  case "session.queue":
2952
2915
  case "session.steer":
2953
2916
  return validateResult(method, result, sessionProtocolSubmitWithUserResultSchema);
2954
- case "session.startGoal":
2955
- return validateResult(method, result, sessionProtocolStartGoalResultSchema);
2956
- case "session.resumeGoal":
2957
- return validateResult(method, result, sessionProtocolResumeGoalResultSchema);
2958
2917
  case "session.cancelPendingMessages":
2959
2918
  return validateResult(method, result, sessionProtocolCancelPendingMessagesResultSchema);
2960
2919
  case "session.record":
@@ -3038,20 +2997,6 @@ function validateUserMessageParams(method, params) {
3038
2997
  },
3039
2998
  };
3040
2999
  }
3041
- function validateStartGoalParams(params) {
3042
- const parsed = sessionProtocolStartGoalParamsSchema.safeParse(params);
3043
- if (!parsed.success) {
3044
- const message = hasIssue(parsed.error, [], "invalid_type")
3045
- ? "session.startGoal params must be an object"
3046
- : hasIssue(parsed.error, ["sessionId"])
3047
- ? "session.startGoal params.sessionId must be a non-empty string"
3048
- : hasIssue(parsed.error, ["objective"])
3049
- ? "session.startGoal params.objective must be a non-empty string"
3050
- : `session.startGoal params are invalid: ${formatZodError(parsed.error)}`;
3051
- return invalidParams(message);
3052
- }
3053
- return { ok: true, value: parsed.data };
3054
- }
3055
3000
  function validateSteerParams(params) {
3056
3001
  const parsed = sessionProtocolSteerParamsSchema.safeParse(params);
3057
3002
  if (!parsed.success) {