@markusylisiurunen/tau 0.3.16 → 0.3.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/README.md +35 -35
  2. package/dist/core/cli.js +2 -2
  3. package/dist/core/cli.js.map +1 -1
  4. package/dist/core/commands/registry.js +17 -1
  5. package/dist/core/commands/registry.js.map +1 -1
  6. package/dist/core/config/builtin_themes.js +31 -0
  7. package/dist/core/config/builtin_themes.js.map +1 -1
  8. package/dist/core/models/catalog.js +20 -5
  9. package/dist/core/models/catalog.js.map +1 -1
  10. package/dist/core/models/tau_extensions.js +25 -0
  11. package/dist/core/models/tau_extensions.js.map +1 -1
  12. package/dist/core/nook/cli.js +52 -1
  13. package/dist/core/nook/cli.js.map +1 -1
  14. package/dist/core/nook/client.js +113 -2
  15. package/dist/core/nook/client.js.map +1 -1
  16. package/dist/core/nook/deploy.js +27 -8
  17. package/dist/core/nook/deploy.js.map +1 -1
  18. package/dist/core/nook/index.js +2 -2
  19. package/dist/core/nook/index.js.map +1 -1
  20. package/dist/core/nook/validation.js +25 -10
  21. package/dist/core/nook/validation.js.map +1 -1
  22. package/dist/core/personas.js +47 -29
  23. package/dist/core/personas.js.map +1 -1
  24. package/dist/core/runtime/chat_runtime.js +3 -0
  25. package/dist/core/runtime/chat_runtime.js.map +1 -1
  26. package/dist/core/runtime/conversation_turn_runtime.js +7 -0
  27. package/dist/core/runtime/conversation_turn_runtime.js.map +1 -1
  28. package/dist/core/telegram/adapter.js +21 -10
  29. package/dist/core/telegram/adapter.js.map +1 -1
  30. package/dist/core/telegram/cli.js +0 -25
  31. package/dist/core/telegram/cli.js.map +1 -1
  32. package/dist/core/telegram/runtime.js +6 -1
  33. package/dist/core/telegram/runtime.js.map +1 -1
  34. package/dist/core/telegram/session_manager.js +255 -20
  35. package/dist/core/telegram/session_manager.js.map +1 -1
  36. package/dist/core/telegram/workspace.js +55 -32
  37. package/dist/core/telegram/workspace.js.map +1 -1
  38. package/dist/core/tools/execution_backend.js +12 -0
  39. package/dist/core/tools/execution_backend.js.map +1 -1
  40. package/dist/core/tools/nook.js +56 -4
  41. package/dist/core/tools/nook.js.map +1 -1
  42. package/dist/core/types.js +1 -0
  43. package/dist/core/types.js.map +1 -1
  44. package/dist/core/utils/model_stream.js +12 -1
  45. package/dist/core/utils/model_stream.js.map +1 -1
  46. package/dist/core/version.js +1 -1
  47. package/dist/execution/cloudflare_sandbox_execution_environment.js +8 -0
  48. package/dist/execution/cloudflare_sandbox_execution_environment.js.map +1 -1
  49. package/dist/execution/fly_sprite_execution_environment.js +8 -0
  50. package/dist/execution/fly_sprite_execution_environment.js.map +1 -1
  51. package/dist/host/local_session_host.js +18 -2
  52. package/dist/host/local_session_host.js.map +1 -1
  53. package/dist/host/session_protocol_handler.js +132 -34
  54. package/dist/host/session_protocol_handler.js.map +1 -1
  55. package/dist/nook/README.md +20 -0
  56. package/dist/nook/worker/index.js +277 -17
  57. package/dist/nook/worker/index.js.map +1 -1
  58. package/dist/protocol/index.d.ts +2 -2
  59. package/dist/protocol/index.js +1 -1
  60. package/dist/protocol/index.js.map +1 -1
  61. package/dist/protocol/session_protocol.d.ts +52 -7
  62. package/dist/protocol/session_protocol.js +120 -3
  63. package/dist/protocol/session_protocol.js.map +1 -1
  64. package/dist/sdk/index.d.ts +3 -3
  65. package/dist/sdk/index.js.map +1 -1
  66. package/dist/sdk/session.js +72 -10
  67. package/dist/sdk/session.js.map +1 -1
  68. package/dist/sdk/types.d.ts +11 -3
  69. package/dist/transport/in_process_session_transport.js +15 -1
  70. package/dist/transport/in_process_session_transport.js.map +1 -1
  71. package/dist/transport/index.d.ts +1 -1
  72. package/dist/transport/index.js.map +1 -1
  73. package/dist/transport/session_protocol_transport_helpers.js +14 -0
  74. package/dist/transport/session_protocol_transport_helpers.js.map +1 -1
  75. package/dist/transport/session_transport.d.ts +3 -1
  76. package/dist/transport/stdio_session_transport.d.ts +3 -1
  77. package/dist/transport/stdio_session_transport.js +15 -1
  78. package/dist/transport/stdio_session_transport.js.map +1 -1
  79. package/dist/transport/websocket_session_transport.d.ts +3 -1
  80. package/dist/transport/websocket_session_transport.js +15 -1
  81. package/dist/transport/websocket_session_transport.js.map +1 -1
  82. package/dist/tui/chat_view.js +9 -10
  83. package/dist/tui/chat_view.js.map +1 -1
  84. package/dist/tui/session_chat_app.js +7 -5
  85. package/dist/tui/session_chat_app.js.map +1 -1
  86. package/dist/tui/session_chat_controller.js +48 -78
  87. package/dist/tui/session_chat_controller.js.map +1 -1
  88. package/dist/tui/session_tool_execution_backend.js +9 -4
  89. package/dist/tui/session_tool_execution_backend.js.map +1 -1
  90. package/dist/tui/ui/custom_editor.js +0 -12
  91. package/dist/tui/ui/custom_editor.js.map +1 -1
  92. package/dist/tui/ui/{queued_messages.js → pending_messages.js} +14 -11
  93. package/dist/tui/ui/pending_messages.js.map +1 -0
  94. package/dist/tui/ui/subagent_panel.js +0 -7
  95. package/dist/tui/ui/subagent_panel.js.map +1 -1
  96. package/dist/tui/ui/theme/palette.js +1 -0
  97. package/dist/tui/ui/theme/palette.js.map +1 -1
  98. package/dist/tui/ui/theme/theme.js +2 -0
  99. package/dist/tui/ui/theme/theme.js.map +1 -1
  100. package/package.json +3 -3
  101. package/dist/tui/chat_controller/queued_user_messages.js +0 -80
  102. package/dist/tui/chat_controller/queued_user_messages.js.map +0 -1
  103. package/dist/tui/ui/queued_messages.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"chat_view.js","sourceRoot":"","sources":["../../src/tui/chat_view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat_view.js","sourceRoot":"","sources":["../../src/tui/chat_view.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EACL,sBAAsB,GAGvB,MAAM,yBAAyB,CAAC;AAMjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAyB,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAc,MAAM,qBAAqB,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAkGhE,MAAM,OAAO,WAAW;IACd,EAAE,CAAM;IACR,aAAa,CAAyB;IACtC,MAAM,CAAkB;IACxB,eAAe,CAA2B;IAC1C,aAAa,CAAyB;IACtC,MAAM,CAAe;IACrB,UAAU,CAA8B;IACxC,YAAY,CAAyB;IACrC,eAAe,CAAY;IAC3B,OAAO,CAAQ;IACf,kBAAkB,CAAkB;IACpC,cAAc,GAAG,oBAAoB,EAAE,CAAC;IACxC,YAAY,CAAe;IAC3B,UAAU,CAAkB;IAC5B,uBAAuB,GAAG,CAAC,CAAC;IAC5B,kBAAkB,CAAU;IAC5B,uBAAuB,CAAkC;IAEjE,YAAY,OAMX;QACC,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,IAAI,MAAM,CAAC;QAC/D,MAAM,WAAW,GAAG,sBAAsB,CACxC,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,MAAM,EACd,IAAI,CAAC,kBAAkB,CACxB,CAAC;QACF,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,WAAW,CAAC,CAAC;QAC7D,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QACvD,IAAI,CAAC,EAAE,GAAG,IAAI,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACvC,IAAI,CAAC,aAAa,GAAG,IAAI,sBAAsB,CAC7C,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,cAAc,EACnB,OAAO,CAAC,YAAY,CACrB,CAAC;QACF,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC3D,IAAI,CAAC,MAAM,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QACzD,IAAI,CAAC,eAAe,GAAG,IAAI,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClE,IAAI,CAAC,aAAa,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;QACvD,IAAI,CAAC,UAAU,GAAG,IAAI,2BAA2B,CAC/C,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,MAAM,CACZ,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAAC;YACnC,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;SAC7C,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;IAED,IAAI;QACF,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QACf,2EAA2E;QAC3E,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;IAChC,CAAC;IAED,aAAa;QACX,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC;IAED,cAAc,CAAC,GAAsB;QACnC,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC;IAED,kBAAkB,CAAC,EAAU;QAC3B,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QAC1C,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC;IAED,UAAU,CAAC,KAAuB,EAAE,EAAW;QAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC3D,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,cAAc,CAAC,EAAU,EAAE,KAAuB;QAChD,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC;IAED,aAAa,CAAC,EAAU,EAAE,KAAuB;QAC/C,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC;IAED,sBAAsB,CAAC,EAAU,EAAE,KAA4B;QAC7D,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC;IAED,gBAAgB,CACd,IAAY,EACZ,IAAuB,EACvB,OAAyD;QAEzD,MAAM,WAAW,GAAG,IAAI,CAAC,0BAA0B,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAChE,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,IAAI,KAAK,OAAO,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,aAAa,GAAG,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC,0BAA0B,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAC7F,IAAI,aAAa,EAAE,CAAC;YAClB,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3E,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,qBAAqB,CAAC,IAAa;QACjC,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC;IAED,gBAAgB,CAAC,OAAgB;QAC/B,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC;IAED,YAAY,CAAC,MAAsB;QACjC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;QACzB,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;QACrE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;YACpB,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY;YACxC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW;YACtC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ;YAChC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS;YAClC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW;SACvC,CAAC,CAAC;QAEH,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;IACjC,CAAC;IAED,eAAe;QACb,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IACrB,CAAC;IAED,iBAAiB,CAAC,KAAkB;QAClC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAED,mBAAmB,CAAC,KAAsB;QACxC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QACjC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;IAED,qCAAqC;QACnC,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;IACnC,CAAC;IAED,qBAAqB,CAAC,MAAiC;QACrD,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED,yBAAyB;QACvB,IAAI,CAAC,YAAY,CAAC,mBAAmB,EAAE,CAAC;IAC1C,CAAC;IAED,sBAAsB,CAAC,SAAiB;QACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAC9D,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;QACxB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,qBAAqB;QACnB,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC;IAC5C,CAAC;IAEO,eAAe,CAAC,IAAY;QAClC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;aACpB,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE;YACb,MAAM,IAAI,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YAC/B,OAAO,IAAI,KAAK,SAAS,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,KAAK,IAAI,CAAC;QAC5D,CAAC,CAAC;aACD,IAAI,CAAC,EAAE,CAAC,CAAC;IACd,CAAC;IAED,wBAAwB,CAAC,KAAa;QACpC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK;YAAE,OAAO;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,SAAS,QAAQ,CAAC,CAAC;IACtD,CAAC;IAED,sBAAsB,CAAC,QAA6C;QAClE,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC3C,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;IAC/B,CAAC;IAED,qBAAqB;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;IACvC,CAAC;IAED,aAAa,CAAC,IAAY;QACxB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC;IAED,wBAAwB,CAAC,IAAY;QACnC,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC;IAED,qBAAqB,CAAC,OAAgB;QACpC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC;IAED,gBAAgB,CAAC,OAA4B;QAC3C,MAAM,MAAM,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACtE,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACnC,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAEnC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC;QAC3B,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC;QAC9B,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACzB,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,OAAO;QAE/B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAC9B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC;QACvC,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC;IAED,eAAe;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;IACjC,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC;IAED,iBAAiB,CAAC,QAA+B;QAC/C,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;QAC7C,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QACzC,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;QAC3C,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC;QACjD,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QACzC,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QACzC,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;IACrD,CAAC;IAED,uBAAuB,CAAC,QAA8B;QACpD,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IAChD,CAAC;IAED,uBAAuB,CAAC,IAOvB;QACC,MAAM,UAAU,GAAG,aAAa,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACvF,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC;QACpE,MAAM,KAAK,GAAgB;YACzB,IAAI,EAAE,gBAAgB;YACtB,UAAU;YACV,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,YAAY;YACZ,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,aAAa,EAAE,IAAI,CAAC,aAAa;SAClC,CAAC;QACF,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC;IAED,WAAW,CAAC,OAAyD;QACnE,MAAM,WAAW,GAAG,sBAAsB,CACxC,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,MAAM,EACd,IAAI,CAAC,kBAAkB,CACxB,CAAC;QACF,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,WAAW,CAAC,CAAC;QAC7D,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QAEvD,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5C,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE1C,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC;QACrB,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAEO,OAAO;QACb,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAEO,YAAY;QAClB,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QAChB,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACrC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACvC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACvC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAEO,uBAAuB,CAAC,KAA+B;QAC7D,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QACjC,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;YAC7D,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC/D,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACjE,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YACtC,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC5E,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACnF,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;YAC7D,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,KAAK,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC;YAC1E,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;YACzE,OAAO;QACT,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC5B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;YAC7E,OAAO;QACT,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,SAAS,CACnB,GAAG,IAAI,CAAC,qBAAqB,EAAE,eAAe,IAAI,CAAC,yBAAyB,EAAE,GAAG,EACjF,EAAE,EACF;gBACE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;aACnC,CACF,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,KAAK,CAAC,WAAW,KAAK,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC;IAC1F,CAAC;IAEO,2BAA2B,CAAC,MAAe;QACjD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;gBACjC,aAAa,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;gBAC5C,IAAI,CAAC,uBAAuB,GAAG,SAAS,CAAC;YAC3C,CAAC;YACD,IAAI,CAAC,uBAAuB,GAAG,CAAC,CAAC;YACjC,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;YACpC,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACjC,OAAO;QACT,CAAC;QAED,IAAI,CAAC,uBAAuB,GAAG,CAAC,CAAC;QACjC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACrC,IAAI,CAAC,uBAAuB,GAAG,WAAW,CAAC,GAAG,EAAE;YAC9C,IAAI,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACjD,OAAO;YACT,CAAC;YAED,IAAI,CAAC,uBAAuB,GAAG,CAAC,IAAI,CAAC,uBAAuB,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YACtE,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACrD,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;QAC1B,CAAC,EAAE,GAAG,CAAC,CAAC;IACV,CAAC;IAEO,qBAAqB;QAC3B,OAAO,IAAI,CAAC,uBAAuB,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IACxD,CAAC;IAEO,yBAAyB;QAC/B,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC7B,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QAC9F,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,EAAE,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,cAAc,GAAG,EAAE,CAAC;QACpC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IACnF,CAAC;IAEO,0BAA0B,CAAC,IAAY,EAAE,IAAuB;QACtE,MAAM,OAAO,GAAG,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QAC7E,OAAO,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;IAEO,wBAAwB,CAAC,IAAY;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC;QAC7B,OAAO,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IAC5C,CAAC;IAEO,eAAe,CAAC,IAAY;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAClD,OAAO,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/C,CAAC;IAEO,0BAA0B,CAAC,IAAY,EAAE,IAAuB;QACtE,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,OAAO;YAAE,OAAO,IAAI,CAAC;QACtD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QACrC,OAAO,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;IAC3B,CAAC;CACF"}
@@ -64,15 +64,14 @@ export class SessionChatApp {
64
64
  try {
65
65
  const session = await resolveSession(options.client, options.sessionSelection);
66
66
  const snapshot = await session.snapshot();
67
- const queuedUserMessages = [];
68
67
  const view = new TuiChatView({
69
- queuedUserMessages,
70
68
  compactToolUi: true,
71
69
  showThinking: false,
72
70
  terminalAppearance: options.terminalAppearance,
73
71
  themeId: options.themeId,
74
72
  themes: options.themes ?? [],
75
73
  });
74
+ let app;
76
75
  const controller = new SessionChatController({
77
76
  view,
78
77
  session,
@@ -82,9 +81,9 @@ export class SessionChatApp {
82
81
  config: options.config,
83
82
  defaultDiffTool: options.defaultDiffTool,
84
83
  deps: options.deps,
85
- queuedUserMessages,
86
84
  caffeinated: options.caffeinated,
87
85
  themeIds: (options.themes ?? []).map((theme) => theme.id),
86
+ onExit: () => app.exit(),
88
87
  });
89
88
  const sources = controller.getAutocompleteSources();
90
89
  view.setAutocompleteProvider(new SlashAutocompleteProvider(createCommandRegistry(), sources.personas, sources.prompts, sources.themes, async (query, limit, signal) => {
@@ -93,7 +92,7 @@ export class SessionChatApp {
93
92
  return await sources.autocompletePaths(query, limit);
94
93
  }, sources.skills, sources.subagents, sources.riskLevels));
95
94
  const handlers = controller.getInputHandlers();
96
- const app = new SessionChatApp({
95
+ app = new SessionChatApp({
97
96
  view,
98
97
  controller,
99
98
  client: options.client,
@@ -139,7 +138,7 @@ export class SessionChatApp {
139
138
  const now = Date.now();
140
139
  if (this.lastCtrlCAt !== undefined && now - this.lastCtrlCAt <= EXIT_DOUBLE_PRESS_WINDOW_MS) {
141
140
  this.lastCtrlCAt = undefined;
142
- void this.stop().finally(() => process.exit(0));
141
+ this.exit();
143
142
  return;
144
143
  }
145
144
  this.lastCtrlCAt = now;
@@ -147,6 +146,9 @@ export class SessionChatApp {
147
146
  toastDurationMs: EXIT_TOAST_DURATION_MS,
148
147
  });
149
148
  }
149
+ exit() {
150
+ void this.stop().finally(() => process.exit(0));
151
+ }
150
152
  }
151
153
  async function resolveSession(client, selection) {
152
154
  switch (selection.mode) {
@@ -1 +1 @@
1
- {"version":3,"file":"session_chat_app.js","sourceRoot":"","sources":["../../src/tui/session_chat_app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session_chat_app.js","sourceRoot":"","sources":["../../src/tui/session_chat_app.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ import { getAutoCompactionMetadataFromMessage, hasAutoCompactionContinuationMeta
15
15
  import { APP_VERSION } from "../core/version.js";
16
16
  import { shellQuote } from "../execution/sandbox_tool_helpers.js";
17
17
  import { applySessionProtocolDelta } from "../protocol/session_protocol.js";
18
+ import { TauSessionProtocolResponseError } from "../transport/errors.js";
18
19
  import { copyAssistantCodeToClipboard, copyAssistantTextToClipboard, } from "./chat_controller/assistant_clipboard.js";
19
20
  import { getCommandHint } from "./chat_controller/command_hints.js";
20
21
  import { DiffReviewService, } from "./chat_controller/diff_review_service.js";
@@ -22,7 +23,6 @@ import { formatDiffReviewUserMessage } from "./chat_controller/diff_review_user_
22
23
  import { formatRewindCandidateLabel } from "./chat_controller/history_labels.js";
23
24
  import { buildHistoryMessageModel, extractHistoryUserText, } from "./chat_controller/history_message_model.js";
24
25
  import { InterruptLifecycle } from "./chat_controller/interrupt_lifecycle.js";
25
- import { QueuedUserMessages } from "./chat_controller/queued_user_messages.js";
26
26
  import { formatDurationMs, formatSessionCost } from "./chat_controller/status_format.js";
27
27
  import { copyTextToClipboard } from "./clipboard.js";
28
28
  import { DOUBLE_PRESS_WINDOW_MS } from "./constants.js";
@@ -51,6 +51,7 @@ export class SessionChatController {
51
51
  clientRenderedUserMessages = new Map();
52
52
  observedSessionRevision;
53
53
  eventUnsubscribe;
54
+ pendingUserMessagesUnsubscribe;
54
55
  snapshotRecovery;
55
56
  snapshotRecoveryDeltas = [];
56
57
  isStreaming = false;
@@ -66,7 +67,6 @@ export class SessionChatController {
66
67
  lastTurnDurationMs = 0;
67
68
  turnTimer;
68
69
  lastEmptySubmitAt;
69
- queuedMessageBuffer;
70
70
  assistantMessages = [];
71
71
  listenRecording;
72
72
  listenTransition;
@@ -89,12 +89,12 @@ export class SessionChatController {
89
89
  this.themeIds = options.themeIds ?? [];
90
90
  this.caffeinated = options.caffeinated ?? false;
91
91
  this.observedSessionRevision = options.snapshot.revision;
92
- this.queuedMessageBuffer = new QueuedUserMessages(options.queuedUserMessages ?? []);
93
92
  this.commandRegistry = createCommandRegistry();
94
93
  this.commandHandlers = {
95
94
  help: () => this.showHelp(),
96
95
  copyText: () => this.copyLastAssistantText(),
97
96
  copyCode: () => this.copyLastAssistantCode(),
97
+ exit: () => options.onExit?.(),
98
98
  newSession: () => this.createNewSession(),
99
99
  rewind: () => this.startRewindFlow(),
100
100
  diff: (argsText) => this.startDiffReview(argsText),
@@ -134,10 +134,12 @@ export class SessionChatController {
134
134
  this.renderSnapshot(this.snapshot);
135
135
  this.hydrateRunningSnapshotState();
136
136
  this.eventUnsubscribe = this.session.onDelta((delta) => this.onSdkDelta(delta));
137
+ this.pendingUserMessagesUnsubscribe = this.session.onPendingUserMessages((message) => this.onSdkPendingUserMessages(message));
137
138
  this.refreshStatus();
138
139
  }
139
140
  async dispose() {
140
141
  this.eventUnsubscribe?.();
142
+ this.pendingUserMessagesUnsubscribe?.();
141
143
  if (this.listenTransition) {
142
144
  await this.listenTransition;
143
145
  }
@@ -173,16 +175,17 @@ export class SessionChatController {
173
175
  onChange: (text) => this.handleEditorChange(text),
174
176
  onSubmit: (text) => void this.handleSubmit(text),
175
177
  onSteerSubmit: (text) => void this.submitSteeringMessage(text),
176
- onFlushQueueAsSteer: () => void this.flushQueuedMessagesAsSteering(),
177
- onAltUp: () => this.popQueuedMessageIntoEditor(),
178
+ onAltUp: () => void this.cancelPendingMessagesIntoEditor(),
178
179
  onAltDown: () => this.cycleSubagentSelection(),
179
- onAltC: () => this.collapseQueuedMessages(),
180
180
  };
181
181
  }
182
182
  beforeSubmit(text) {
183
183
  if (!this.isSessionOperationActive()) {
184
184
  return true;
185
185
  }
186
+ if (this.manualCompactionInProgress) {
187
+ return false;
188
+ }
186
189
  const trimmed = text.trimStart();
187
190
  if (trimmed.startsWith("!")) {
188
191
  return false;
@@ -233,10 +236,7 @@ export class SessionChatController {
233
236
  if (trimmed.startsWith("!")) {
234
237
  return;
235
238
  }
236
- this.queuedMessageBuffer.enqueue(trimmed, () => this.view.requestRender());
237
- this.view.addSystemMessage("message queued", "success", {
238
- persist: false,
239
- });
239
+ this.submitQueuedText(trimmed);
240
240
  return;
241
241
  }
242
242
  if (trimmed.startsWith("/") && this.isSingleLineInput(text)) {
@@ -462,7 +462,6 @@ export class SessionChatController {
462
462
  this.stopTurnTimer();
463
463
  this.refreshStatus();
464
464
  this.view.requestRender();
465
- await this.drainQueuedMessages();
466
465
  }
467
466
  }
468
467
  async submitSteeringMessage(text) {
@@ -476,49 +475,40 @@ export class SessionChatController {
476
475
  }
477
476
  this.submitSteeringText(trimmed);
478
477
  }
479
- async flushQueuedMessagesAsSteering() {
480
- if (this.queuedMessageBuffer.length === 0) {
481
- this.view.addSystemMessage("no queued messages to steer", "warn");
482
- return;
483
- }
484
- const messages = this.queuedMessageBuffer.flush();
485
- const text = messages.join("\n\n");
486
- this.view.requestRender();
487
- this.submitSteeringText(text, {
488
- onFailure: () => {
489
- this.queuedMessageBuffer.requeueFront(messages, () => this.view.requestRender());
490
- },
478
+ submitQueuedText(text) {
479
+ void this.session
480
+ .queue(text, { historyEntryId: `session-queue-${randomUUID()}` })
481
+ .catch((error) => {
482
+ if (!this.isPendingMessageCancellation(error)) {
483
+ this.view.addSystemMessage(`queueing failed: ${error.message}`, "error");
484
+ }
491
485
  });
492
486
  }
493
- submitSteeringText(text, options = {}) {
487
+ submitSteeringText(text) {
494
488
  void this.session
495
489
  .steer(text, { historyEntryId: `session-steer-${randomUUID()}` })
496
490
  .catch((error) => {
497
- options.onFailure?.();
498
- this.view.addSystemMessage(`steering failed: ${error.message}`, "error");
499
- });
500
- }
501
- popQueuedMessageIntoEditor() {
502
- this.queuedMessageBuffer.popIntoEditor({
503
- getEditorText: () => this.view.getEditorText(),
504
- setEditorText: (text) => this.view.setEditorText(text),
505
- });
506
- this.view.requestRender();
507
- }
508
- dequeueQueuedMessagesIntoEditor() {
509
- this.queuedMessageBuffer.dequeueIntoEditor({
510
- getEditorText: () => this.view.getEditorText(),
511
- setEditorText: (text) => this.view.setEditorText(text),
491
+ if (!this.isPendingMessageCancellation(error)) {
492
+ this.view.addSystemMessage(`steering failed: ${error.message}`, "error");
493
+ }
512
494
  });
513
- this.view.requestRender();
514
495
  }
515
- collapseQueuedMessages() {
516
- if (this.queuedMessageBuffer.collapse()) {
517
- this.view.addSystemMessage("queued messages collapsed", "success", {
518
- persist: false,
519
- });
496
+ async cancelPendingMessagesIntoEditor() {
497
+ try {
498
+ const { cancelled } = await this.session.cancelPendingMessages();
499
+ if (cancelled.length === 0) {
500
+ return;
501
+ }
502
+ const editorText = this.view.getEditorText();
503
+ this.view.setEditorText([...(editorText ? [editorText] : []), ...cancelled.map((message) => message.text)].join("\n\n---\n\n"));
520
504
  this.view.requestRender();
521
505
  }
506
+ catch (error) {
507
+ this.view.addSystemMessage(`pending message cancellation failed: ${error.message}`, "error");
508
+ }
509
+ }
510
+ isPendingMessageCancellation(error) {
511
+ return error instanceof TauSessionProtocolResponseError && error.code === "cancelled";
522
512
  }
523
513
  cycleSubagentSelection() {
524
514
  this.view.cycleSubagentSelection(1);
@@ -590,18 +580,8 @@ export class SessionChatController {
590
580
  this.stopVisibleSessionTurn();
591
581
  await this.stopTurnCaffeinate();
592
582
  this.refreshStatus();
593
- await this.drainQueuedMessages();
594
583
  }
595
584
  }
596
- async drainQueuedMessages() {
597
- await this.queuedMessageBuffer.drain({
598
- isStreaming: () => this.isStreaming,
599
- onUserInput: (text) => this.submitUserText(text),
600
- requestRender: () => this.view.requestRender(),
601
- sendTerminalNotification: (title) => this.view.sendTerminalNotification(title),
602
- buildIdleNotificationTitle: () => "tau is idle",
603
- });
604
- }
605
585
  async interrupt() {
606
586
  if (this.interruptLifecycle.interruptActiveTask()) {
607
587
  this.view.addSystemMessage("interrupted", "error");
@@ -826,6 +806,7 @@ export class SessionChatController {
826
806
  }
827
807
  try {
828
808
  const previousUnsubscribe = this.eventUnsubscribe;
809
+ const previousPendingUserMessagesUnsubscribe = this.pendingUserMessagesUnsubscribe;
829
810
  const previousSession = this.session;
830
811
  const nextSession = await this.createSession({
831
812
  executionEnvironment: this.createExecutionEnvironmentInputFromSnapshot(),
@@ -836,7 +817,9 @@ export class SessionChatController {
836
817
  : {}),
837
818
  });
838
819
  this.eventUnsubscribe = undefined;
820
+ this.pendingUserMessagesUnsubscribe = undefined;
839
821
  previousUnsubscribe?.();
822
+ previousPendingUserMessagesUnsubscribe?.();
840
823
  try {
841
824
  await previousSession.unobserve();
842
825
  }
@@ -847,6 +830,7 @@ export class SessionChatController {
847
830
  this.snapshot = await this.session.snapshot();
848
831
  this.observedSessionRevision = this.snapshot.revision;
849
832
  this.eventUnsubscribe = this.session.onDelta((delta) => this.onSdkDelta(delta));
833
+ this.pendingUserMessagesUnsubscribe = this.session.onPendingUserMessages((message) => this.onSdkPendingUserMessages(message));
850
834
  this.view.resetToolUiSession();
851
835
  this.assistantMessages = [];
852
836
  this.startLocalUiSession();
@@ -879,6 +863,9 @@ export class SessionChatController {
879
863
  };
880
864
  }
881
865
  }
866
+ onSdkPendingUserMessages(message) {
867
+ this.view.setPendingUserMessages(message.state.messages);
868
+ }
882
869
  onSdkDelta(delta) {
883
870
  if (this.snapshotRecovery) {
884
871
  this.snapshotRecoveryDeltas.push(delta);
@@ -960,13 +947,15 @@ export class SessionChatController {
960
947
  return true;
961
948
  }
962
949
  tryApplyFastAgentDelta(delta) {
963
- if (delta.delta.type !== "snapshot.patch" || delta.delta.changes.length !== 1) {
950
+ if (delta.delta.type !== "snapshot.patch") {
964
951
  return false;
965
952
  }
966
- const change = delta.delta.changes[0];
967
- if (change.type !== "agent.set") {
953
+ const agentChanges = delta.delta.changes.filter((change) => change.type === "agent.set");
954
+ if (agentChanges.length !== 1 ||
955
+ delta.delta.changes.some((change) => change.type !== "agent.set" && change.type !== "cost.set")) {
968
956
  return false;
969
957
  }
958
+ const change = agentChanges[0];
970
959
  const previousAgent = this.snapshot.agents[change.agent.id];
971
960
  this.snapshot = applySessionProtocolDelta(this.snapshot, delta);
972
961
  this.observedSessionRevision = Math.max(this.observedSessionRevision, this.snapshot.revision);
@@ -1139,10 +1128,6 @@ export class SessionChatController {
1139
1128
  return;
1140
1129
  }
1141
1130
  void this.stopTurnCaffeinate();
1142
- if (this.submittedTurnInProgress) {
1143
- return;
1144
- }
1145
- void this.drainQueuedMessages();
1146
1131
  }
1147
1132
  stopVisibleSessionTurn() {
1148
1133
  if (!this.isStreaming) {
@@ -1463,7 +1448,6 @@ export class SessionChatController {
1463
1448
  this.view.addSystemMessage("set GEMINI_API_KEY or apiKeys.google to use /speak", "error");
1464
1449
  return;
1465
1450
  }
1466
- this.isStreaming = true;
1467
1451
  this.speechStatusHint = "rewriting for speech...";
1468
1452
  this.refreshStatus();
1469
1453
  this.view.startWorkingIcon();
@@ -1485,21 +1469,13 @@ export class SessionChatController {
1485
1469
  this.view.addSystemMessage(`speech synthesis failed: ${err.message}`, "error");
1486
1470
  }
1487
1471
  finally {
1488
- const wasAborted = abortController.signal.aborted;
1489
1472
  if (this.speakTask === task) {
1490
1473
  this.speakTask = undefined;
1491
1474
  }
1492
1475
  this.speechStatusHint = undefined;
1493
1476
  this.view.stopWorkingIcon();
1494
- this.isStreaming = false;
1495
1477
  this.refreshStatus();
1496
1478
  this.view.requestRender();
1497
- if (wasAborted) {
1498
- this.dequeueQueuedMessagesIntoEditor();
1499
- }
1500
- else {
1501
- void this.drainQueuedMessages();
1502
- }
1503
1479
  }
1504
1480
  }
1505
1481
  async runSpeakTask(args) {
@@ -1571,13 +1547,7 @@ export class SessionChatController {
1571
1547
  return `${stats} · ${percentStr}/${formatTokenWindow(windowTokens)}`;
1572
1548
  }
1573
1549
  getSessionCostString() {
1574
- let total = 0;
1575
- for (const entry of this.snapshot.messages) {
1576
- if (isAssistantMessage(entry.message)) {
1577
- total += entry.message.usage?.cost?.total ?? 0;
1578
- }
1579
- }
1580
- return formatSessionCost(total + this.view.getToolUiCostTotal());
1550
+ return formatSessionCost(this.snapshot.costTotal);
1581
1551
  }
1582
1552
  getTurnDurationString() {
1583
1553
  const now = Date.now();