@markusylisiurunen/tau 0.2.35 → 0.2.36
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.
- package/README.md +13 -5
- package/dist/core/commands/registry.js +16 -0
- package/dist/core/commands/registry.js.map +1 -1
- package/dist/core/config/builtin_themes.js +31 -0
- package/dist/core/config/builtin_themes.js.map +1 -1
- package/dist/core/config/index.js +1 -1
- package/dist/core/config/index.js.map +1 -1
- package/dist/core/config/schema.js +24 -7
- package/dist/core/config/schema.js.map +1 -1
- package/dist/core/index.js +1 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/version.js +1 -1
- package/dist/tui/chat_controller.js +277 -2
- package/dist/tui/chat_controller.js.map +1 -1
- package/dist/tui/chat_view.js +59 -0
- package/dist/tui/chat_view.js.map +1 -1
- package/dist/tui/ui/custom_editor.js +12 -0
- package/dist/tui/ui/custom_editor.js.map +1 -1
- package/dist/tui/ui/theme/palette.js +1 -0
- package/dist/tui/ui/theme/palette.js.map +1 -1
- package/dist/tui/ui/theme/theme.js.map +1 -1
- package/package.json +3 -3
|
@@ -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,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAkB,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAEpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAiCjE,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,CAAC,GAAY,EAAE,WAAmB;IAC3D,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,EAAE,CAAC;QAC/B,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAC9D,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,gCAAgC,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,GAAsB,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAkC,CAAC;YACrD,MAAM,SAAS,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAU,CAAC;YACpF,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC7B,IAAI,KAAK,KAAK,SAAS;oBAAE,SAAS;gBAClC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;oBAC9B,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,aAAa,QAAQ,oBAAoB,CAAC,CAAC;oBACrE,SAAS;gBACX,CAAC;gBACD,OAAO,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;YAC5B,CAAC;YACD,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpC,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;YAC3B,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACpE,IAAI,aAAa,CAAC,MAAM,EAAE,CAAC;QACzB,MAAM,CAAC,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC;IACxC,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAErC,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QACtC,IAAI,OAAO,IAAI,CAAC,cAAc,KAAK,QAAQ,EAAE,CAAC;YAC5C,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,sCAAsC,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC3D,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,6CAA6C,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,sBAAsB,KAAK,SAAS,EAAE,CAAC;QAC9C,IAAI,OAAO,IAAI,CAAC,sBAAsB,KAAK,SAAS,EAAE,CAAC;YACrD,MAAM,CAAC,sBAAsB,GAAG,IAAI,CAAC,sBAAsB,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,+CAA+C,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;QAC5C,IAAI,OAAO,IAAI,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACnD,MAAM,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,6CAA6C,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACpC,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC1C,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,oCAAoC,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;IACrE,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,MAAM,CAAC,YAAY,GAAG,UAAU,CAAC,QAAQ,CAAC;IAC5C,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IAElC,MAAM,WAAW,GAAG,sBAAsB,CAAC,IAAI,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;IAChF,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,MAAM,CAAC,iBAAiB,GAAG,WAAW,CAAC,KAAK,CAAC;IAC/C,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAEnC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAC5B,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,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAC5C,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,WAAW,gCAAgC,CAAC,EAAE,CAAC;IACtE,CAAC;IAED,MAAM,IAAI,GAAG,GAA8B,CAAC;IAC5C,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,OAAO,GAAkB,EAAE,CAAC;IAElC,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC7B,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YACxD,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,6CAA6C,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACjC,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;YAChE,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,iDAAiD,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QACvC,IACE,OAAO,IAAI,CAAC,eAAe,KAAK,QAAQ;YACxC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC;YACrC,IAAI,CAAC,eAAe,GAAG,CAAC,EACxB,CAAC;YACD,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,sDAAsD,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QACvC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,GAAa,EAAE,CAAC;YAC1B,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;oBAC/C,OAAO,GAAG,IAAI,CAAC;oBACf,SAAS;gBACX,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnB,CAAC;YACD,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,mDAAmD,CAAC,CAAC;YACjF,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;YACjC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,mDAAmD,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QACvC,IAAI,OAAO,IAAI,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;YAC7C,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,6CAA6C,CAAC,CAAC;QAC3E,CAAC;IACH,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,sBAAsB,CAC7B,GAAY,EACZ,WAAmB;IAEnB,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACnC,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;IAEpF,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO;YACL,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,CAAC,GAAG,WAAW,yDAAyD,CAAC;SAClF,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,IAAI;SACjB,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC;SAC7D,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;SAC5B,MAAM,CAAC,OAAO,CAAC,CAAC;IAEnB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO;YACL,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,CAAC,GAAG,WAAW,yDAAyD,CAAC;SAClF,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,cAAc,CACrB,KAAkB,EAClB,IAAgB,EAChB,WAAmB;IAEnB,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,CAAC,CAAC;QAC/D,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,YAAY,CACnB,MAAqC,EACrC,OAAsC;IAEtC,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;KACnB,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CACzB,MAAiC,EACjC,OAAkC;IAElC,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;KACnB,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAAC,KAAkB,EAAE,QAAkB;IACtE,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC;IAC7B,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAkB,EAAE,QAAuB;IACtE,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC;IAC7B,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,WAAW,CAAC,KAAe;IAClC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,SAAS;QAC7B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAqB,EAAE,OAAiB;IACjE,MAAM,MAAM,GAAW,wBAAwB,EAAE,CAAC;IAClD,IAAI,OAAsC,CAAC;IAC3C,IAAI,OAAkC,CAAC;IACvC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAuB,CAAC;IACpD,MAAM,iBAAiB,GAAa,EAAE,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,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAChD,OAAO,GAAG,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAEtD,IAAI,MAAM,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACxC,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;QAChD,CAAC;QAED,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACrC,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QAC1C,CAAC;QAED,IAAI,MAAM,CAAC,sBAAsB,KAAK,SAAS,EAAE,CAAC;YAChD,MAAM,CAAC,sBAAsB,GAAG,MAAM,CAAC,sBAAsB,CAAC;QAChE,CAAC;QAED,IAAI,MAAM,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;YAC9C,MAAM,CAAC,oBAAoB,GAAG,MAAM,CAAC,oBAAoB,CAAC;QAC5D,CAAC;QAED,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACtC,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QAC5C,CAAC;QAED,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACxB,KAAK,MAAM,GAAG,IAAI,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;gBAClE,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAC7B,iBAAiB,CAAC,IAAI,CAAC,GAAG,wBAAwB,CAAC,KAAK,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACvF,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,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,YAAY,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,CAAC,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,MAAM,CAAC,iBAAiB,GAAG,WAAW,CAAC,iBAAiB,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,GAAY,EACZ,IAAiB;IAEjB,MAAM,YAAY,GAAG,IAAI,IAAI,uBAAuB,EAAE,CAAC;IACvD,MAAM,WAAW,GAAG,GAAG,IAAI,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IAClD,MAAM,MAAM,GAAG,mBAAmB,CAAC,YAAY,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;IAEvE,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;IAE7F,OAAO;QACL,MAAM,EAAE,iBAAiB,CACvB,MAAM,EACN,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CACvC;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,GAAY,EAAE,IAAiB;IACxD,OAAO,yBAAyB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAAc,EAAE,QAAuB;IAC1E,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;IACrC,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,WAAW;YACd,OAAO,OAAO,CAAC,SAAS,CAAC;QAC3B,KAAK,QAAQ;YACX,OAAO,OAAO,CAAC,MAAM,CAAC;QACxB,KAAK,QAAQ;YACX,OAAO,OAAO,CAAC,MAAM,CAAC;QACxB;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,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,iBAAiB,CAAC,MAAc,EAAE,GAAuB;IACvE,MAAM,MAAM,GAAG,kBAAkB,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;IAC3D,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACnD,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"}
|
package/dist/core/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { AuthManager, AuthStorage, createCredentialResolver, formatCodexAuthError, getAuthPath, runListCommand, runLoginCommand, runLogoutCommand, SUPPORTED_OAUTH_PROVIDERS, } from "./auth/index.js";
|
|
2
2
|
export { CliError, parseCliArgs, parsePersonaString, printHelp } from "./cli.js";
|
|
3
|
-
export { buildVirtualBundle, createDefaultConfigDeps,
|
|
3
|
+
export { buildVirtualBundle, createDefaultConfigDeps, loadAllContent, loadConfig, loadRuntimeConfig, resolveConfigLevels, resolveThemeTokensById, resolveThemeTokensForAppearance, } from "./config/index.js";
|
|
4
4
|
export { printDebugInfo } from "./debug.js";
|
|
5
5
|
export { CORE_EVENT_VERSION, serializeCoreEvent, wrapCoreEvent } from "./events/index.js";
|
|
6
6
|
export { InstallCliError, printInstallHelp, runInstallCommand } from "./install/cli.js";
|
package/dist/core/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,WAAW,EACX,WAAW,EACX,wBAAwB,EACxB,oBAAoB,EACpB,WAAW,EACX,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAWjF,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,WAAW,EACX,WAAW,EACX,wBAAwB,EACxB,oBAAoB,EACpB,WAAW,EACX,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAWjF,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,EACd,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,+BAA+B,GAChC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAO5C,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAExF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EACL,+BAA+B,EAC/B,iCAAiC,GAClC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,oCAAoC,EAAE,MAAM,gCAAgC,CAAC;AACtF,OAAO,EAAE,8BAA8B,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,kCAAkC,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAE7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC"}
|
package/dist/core/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const APP_VERSION = "0.2.
|
|
1
|
+
export const APP_VERSION = "0.2.36";
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { randomUUID } from "node:crypto";
|
|
2
2
|
import { realpathSync, statSync } from "node:fs";
|
|
3
|
-
import { mkdtemp, writeFile } from "node:fs/promises";
|
|
3
|
+
import { mkdtemp, readFile, unlink, writeFile } from "node:fs/promises";
|
|
4
4
|
import { tmpdir } from "node:os";
|
|
5
5
|
import { join, relative, resolve, sep } from "node:path";
|
|
6
6
|
import { formatCodexAuthError } from "../core/auth/auth_messages.js";
|
|
@@ -8,7 +8,7 @@ import { getAuthPath } from "../core/auth/auth_paths.js";
|
|
|
8
8
|
import { AuthStorage } from "../core/auth/auth_storage.js";
|
|
9
9
|
import { createCredentialResolver, } from "../core/auth/credential_resolver.js";
|
|
10
10
|
import { createCommandRegistry, getRiskLevelDescription, } from "../core/commands/index.js";
|
|
11
|
-
import { createDefaultConfigDeps, loadRuntimeConfig, } from "../core/config/index.js";
|
|
11
|
+
import { createDefaultConfigDeps, getMistralApiKey, loadRuntimeConfig, } from "../core/config/index.js";
|
|
12
12
|
import { createDefaultCoreDeps } from "../core/runtime/deps.js";
|
|
13
13
|
import { createCheckpoint } from "../core/session/checkpoint.js";
|
|
14
14
|
import { CoreSession } from "../core/session/core_session.js";
|
|
@@ -59,6 +59,10 @@ const PRUNED_EDIT_ARGUMENT_MARKER = "[content pruned]";
|
|
|
59
59
|
const PRUNE_EDIT_UNCHANGED_CONTEXT_LINES = 4;
|
|
60
60
|
const PRUNE_PREVIEW_MAX_TOKENS = 512;
|
|
61
61
|
const PRUNE_MAX_OVERAGE_RATIO = 0.1;
|
|
62
|
+
const SPEAK_TEMP_FILE_TEMPLATE = "/tmp/tau-speak.XXXXXX";
|
|
63
|
+
const SPEAK_MISTRAL_TRANSCRIBE_MODEL = "voxtral-mini-latest";
|
|
64
|
+
const SPEAK_RECORDING_MIN_BYTES = 1024;
|
|
65
|
+
const SPEAK_RECORDING_MAX_DURATION_MS = 5 * 60 * 1000;
|
|
62
66
|
export class ChatController {
|
|
63
67
|
view;
|
|
64
68
|
personas;
|
|
@@ -114,6 +118,9 @@ export class ChatController {
|
|
|
114
118
|
lastTurnDurationMs = 0;
|
|
115
119
|
turnTimer;
|
|
116
120
|
lastEmptySubmitAt;
|
|
121
|
+
speakRecording;
|
|
122
|
+
isTranscribingSpeak = false;
|
|
123
|
+
speakTransition;
|
|
117
124
|
constructor(options) {
|
|
118
125
|
this.view = options.view;
|
|
119
126
|
this.deps = options.deps ?? createDefaultCoreDeps();
|
|
@@ -211,6 +218,7 @@ export class ChatController {
|
|
|
211
218
|
pruneLargest: (extra) => this.pruneToolResults("largest", extra),
|
|
212
219
|
pruneSmart: (extra) => this.pruneToolResultsSmart(extra),
|
|
213
220
|
reload: () => this.reloadContent(),
|
|
221
|
+
speak: () => this.toggleSpeakCapture(),
|
|
214
222
|
risk: (level) => this.setRiskLevel(level),
|
|
215
223
|
persona: (id) => this.switchPersona(id),
|
|
216
224
|
prompt: (id) => this.insertPrompt(id),
|
|
@@ -263,6 +271,7 @@ export class ChatController {
|
|
|
263
271
|
onCtrlR: () => this.cycleRiskLevel(),
|
|
264
272
|
onCtrlP: () => this.cyclePersonality(),
|
|
265
273
|
onCtrlS: () => void this.stashEditorToClipboard(),
|
|
274
|
+
onCtrlY: () => void this.toggleSpeakCapture(),
|
|
266
275
|
onEscape: () => this.onInterrupt(),
|
|
267
276
|
onCtrlF: () => {
|
|
268
277
|
this.expandFileMentions().catch((err) => {
|
|
@@ -284,6 +293,10 @@ export class ChatController {
|
|
|
284
293
|
}
|
|
285
294
|
async dispose() {
|
|
286
295
|
this.subagentUnsubscribe?.();
|
|
296
|
+
if (this.speakTransition) {
|
|
297
|
+
await this.speakTransition;
|
|
298
|
+
}
|
|
299
|
+
await this.cancelSpeakCapture();
|
|
287
300
|
if (!this.toolBackendDispose)
|
|
288
301
|
return;
|
|
289
302
|
await this.toolBackendDispose();
|
|
@@ -293,6 +306,10 @@ export class ChatController {
|
|
|
293
306
|
await this.handleSubmit(text);
|
|
294
307
|
}
|
|
295
308
|
onInterrupt() {
|
|
309
|
+
if (this.speakRecording) {
|
|
310
|
+
void this.runSpeakTransition(() => this.stopSpeakCapture());
|
|
311
|
+
return;
|
|
312
|
+
}
|
|
296
313
|
this.interruptAssistantTurn();
|
|
297
314
|
}
|
|
298
315
|
onEvent(event) {
|
|
@@ -444,6 +461,8 @@ export class ChatController {
|
|
|
444
461
|
});
|
|
445
462
|
}
|
|
446
463
|
getInputMode() {
|
|
464
|
+
if (this.speakRecording)
|
|
465
|
+
return "recording";
|
|
447
466
|
if (this.isBashIncognito)
|
|
448
467
|
return "bash_incognito";
|
|
449
468
|
if (this.isBashMode)
|
|
@@ -767,6 +786,8 @@ export class ChatController {
|
|
|
767
786
|
}
|
|
768
787
|
// Input Handling --------------------------------------------------------------------------------
|
|
769
788
|
beforeSubmit(text) {
|
|
789
|
+
if (this.speakRecording)
|
|
790
|
+
return false;
|
|
770
791
|
if (!this.isStreaming)
|
|
771
792
|
return true;
|
|
772
793
|
const trimmed = text.trimStart();
|
|
@@ -853,6 +874,8 @@ export class ChatController {
|
|
|
853
874
|
return "prune smart-selected tool results and compact edit calls, optional fraction and guidance";
|
|
854
875
|
case "reload":
|
|
855
876
|
return "reload prompts, skills, themes, bash commands, and AGENTS.md";
|
|
877
|
+
case "speak":
|
|
878
|
+
return "toggle microphone recording and transcribe to editor";
|
|
856
879
|
case "risk":
|
|
857
880
|
return "set risk level: /risk:read-only or /risk:read-write";
|
|
858
881
|
case "bash":
|
|
@@ -1089,6 +1112,258 @@ export class ChatController {
|
|
|
1089
1112
|
this.view.addMessage({ type: "user", text: trimmed }, historyEntryId);
|
|
1090
1113
|
await this.runAssistantTurn();
|
|
1091
1114
|
}
|
|
1115
|
+
async toggleSpeakCapture() {
|
|
1116
|
+
if (this.speakTransition) {
|
|
1117
|
+
this.view.addSystemMessage("speech recording state change already in progress", "warn");
|
|
1118
|
+
return;
|
|
1119
|
+
}
|
|
1120
|
+
if (this.speakRecording) {
|
|
1121
|
+
await this.runSpeakTransition(() => this.stopSpeakCapture());
|
|
1122
|
+
return;
|
|
1123
|
+
}
|
|
1124
|
+
if (this.isTranscribingSpeak) {
|
|
1125
|
+
this.view.addSystemMessage("speech transcription already in progress", "warn");
|
|
1126
|
+
return;
|
|
1127
|
+
}
|
|
1128
|
+
if (this.isStreaming) {
|
|
1129
|
+
this.view.addSystemMessage("wait for the assistant to finish before recording", "warn");
|
|
1130
|
+
return;
|
|
1131
|
+
}
|
|
1132
|
+
await this.runSpeakTransition(() => this.startSpeakCapture());
|
|
1133
|
+
}
|
|
1134
|
+
async runSpeakTransition(task) {
|
|
1135
|
+
if (this.speakTransition) {
|
|
1136
|
+
return;
|
|
1137
|
+
}
|
|
1138
|
+
const transition = task();
|
|
1139
|
+
this.speakTransition = transition;
|
|
1140
|
+
try {
|
|
1141
|
+
await transition;
|
|
1142
|
+
}
|
|
1143
|
+
finally {
|
|
1144
|
+
if (this.speakTransition === transition) {
|
|
1145
|
+
this.speakTransition = undefined;
|
|
1146
|
+
}
|
|
1147
|
+
}
|
|
1148
|
+
}
|
|
1149
|
+
async startSpeakCapture() {
|
|
1150
|
+
const apiKey = getMistralApiKey(this.config, this.deps.env.env());
|
|
1151
|
+
if (!apiKey) {
|
|
1152
|
+
this.view.addSystemMessage("set MISTRAL_API_KEY or apiKeys.mistral to use /speak", "error");
|
|
1153
|
+
return;
|
|
1154
|
+
}
|
|
1155
|
+
let audioPath;
|
|
1156
|
+
try {
|
|
1157
|
+
audioPath = await this.createSpeakTempFilePath();
|
|
1158
|
+
const abortController = new AbortController();
|
|
1159
|
+
const completion = this.deps.spawn("ffmpeg", [
|
|
1160
|
+
"-hide_banner",
|
|
1161
|
+
"-loglevel",
|
|
1162
|
+
"error",
|
|
1163
|
+
"-nostdin",
|
|
1164
|
+
"-f",
|
|
1165
|
+
"avfoundation",
|
|
1166
|
+
"-i",
|
|
1167
|
+
":0",
|
|
1168
|
+
"-ac",
|
|
1169
|
+
"1",
|
|
1170
|
+
"-ar",
|
|
1171
|
+
"16000",
|
|
1172
|
+
"-c:a",
|
|
1173
|
+
"pcm_s16le",
|
|
1174
|
+
"-f",
|
|
1175
|
+
"wav",
|
|
1176
|
+
"-y",
|
|
1177
|
+
audioPath,
|
|
1178
|
+
], {
|
|
1179
|
+
detached: true,
|
|
1180
|
+
killProcessGroup: true,
|
|
1181
|
+
signal: abortController.signal,
|
|
1182
|
+
stdio: ["ignore", "ignore", "ignore"],
|
|
1183
|
+
});
|
|
1184
|
+
const recording = {
|
|
1185
|
+
audioPath,
|
|
1186
|
+
stopRequested: false,
|
|
1187
|
+
abortController,
|
|
1188
|
+
completion,
|
|
1189
|
+
};
|
|
1190
|
+
recording.maxDurationTimeout = setTimeout(() => {
|
|
1191
|
+
if (this.speakRecording !== recording || this.speakTransition)
|
|
1192
|
+
return;
|
|
1193
|
+
void this.runSpeakTransition(() => this.stopSpeakCapture());
|
|
1194
|
+
}, SPEAK_RECORDING_MAX_DURATION_MS);
|
|
1195
|
+
this.speakRecording = recording;
|
|
1196
|
+
this.view.setEditorInputEnabled(false);
|
|
1197
|
+
this.refreshStatus();
|
|
1198
|
+
void this.watchSpeakRecording(recording);
|
|
1199
|
+
}
|
|
1200
|
+
catch (err) {
|
|
1201
|
+
if (audioPath) {
|
|
1202
|
+
await this.cleanupSpeakTempFile(audioPath);
|
|
1203
|
+
}
|
|
1204
|
+
this.view.addSystemMessage(`failed to start recording: ${err.message}`, "error");
|
|
1205
|
+
}
|
|
1206
|
+
}
|
|
1207
|
+
async stopSpeakCapture() {
|
|
1208
|
+
const recording = this.speakRecording;
|
|
1209
|
+
if (!recording)
|
|
1210
|
+
return;
|
|
1211
|
+
recording.stopRequested = true;
|
|
1212
|
+
this.clearSpeakRecordingMaxDurationTimeout(recording);
|
|
1213
|
+
this.speakRecording = undefined;
|
|
1214
|
+
this.view.setEditorInputEnabled(true);
|
|
1215
|
+
this.refreshStatus();
|
|
1216
|
+
recording.abortController.abort();
|
|
1217
|
+
try {
|
|
1218
|
+
await recording.completion;
|
|
1219
|
+
}
|
|
1220
|
+
catch (err) {
|
|
1221
|
+
this.view.addSystemMessage(`recording failed: ${err.message}`, "error");
|
|
1222
|
+
await this.cleanupSpeakTempFile(recording.audioPath);
|
|
1223
|
+
return;
|
|
1224
|
+
}
|
|
1225
|
+
this.isTranscribingSpeak = true;
|
|
1226
|
+
try {
|
|
1227
|
+
const audio = await readFile(recording.audioPath);
|
|
1228
|
+
if (audio.byteLength < SPEAK_RECORDING_MIN_BYTES) {
|
|
1229
|
+
this.view.addSystemMessage("recording too short, try again", "warn");
|
|
1230
|
+
return;
|
|
1231
|
+
}
|
|
1232
|
+
const transcript = await this.transcribeSpeakAudio(audio);
|
|
1233
|
+
const text = transcript.trim();
|
|
1234
|
+
if (!text) {
|
|
1235
|
+
return;
|
|
1236
|
+
}
|
|
1237
|
+
this.view.insertEditorTextAtCursor(text);
|
|
1238
|
+
}
|
|
1239
|
+
catch (err) {
|
|
1240
|
+
this.view.addSystemMessage(`speech transcription failed: ${err.message}`, "error");
|
|
1241
|
+
}
|
|
1242
|
+
finally {
|
|
1243
|
+
this.isTranscribingSpeak = false;
|
|
1244
|
+
await this.cleanupSpeakTempFile(recording.audioPath);
|
|
1245
|
+
}
|
|
1246
|
+
}
|
|
1247
|
+
async cancelSpeakCapture() {
|
|
1248
|
+
const recording = this.speakRecording;
|
|
1249
|
+
if (!recording)
|
|
1250
|
+
return;
|
|
1251
|
+
recording.stopRequested = true;
|
|
1252
|
+
this.clearSpeakRecordingMaxDurationTimeout(recording);
|
|
1253
|
+
this.speakRecording = undefined;
|
|
1254
|
+
this.view.setEditorInputEnabled(true);
|
|
1255
|
+
this.refreshStatus();
|
|
1256
|
+
recording.abortController.abort();
|
|
1257
|
+
try {
|
|
1258
|
+
await recording.completion;
|
|
1259
|
+
}
|
|
1260
|
+
catch {
|
|
1261
|
+
// ignore disposal errors
|
|
1262
|
+
}
|
|
1263
|
+
await this.cleanupSpeakTempFile(recording.audioPath);
|
|
1264
|
+
}
|
|
1265
|
+
async watchSpeakRecording(recording) {
|
|
1266
|
+
try {
|
|
1267
|
+
const result = await recording.completion;
|
|
1268
|
+
this.clearSpeakRecordingMaxDurationTimeout(recording);
|
|
1269
|
+
if (this.speakRecording !== recording || recording.stopRequested)
|
|
1270
|
+
return;
|
|
1271
|
+
this.speakRecording = undefined;
|
|
1272
|
+
this.view.setEditorInputEnabled(true);
|
|
1273
|
+
this.refreshStatus();
|
|
1274
|
+
const detail = result.exitCode !== null
|
|
1275
|
+
? `ffmpeg exited with code ${result.exitCode}`
|
|
1276
|
+
: result.closeSignal
|
|
1277
|
+
? `ffmpeg terminated by signal ${result.closeSignal}`
|
|
1278
|
+
: "ffmpeg exited";
|
|
1279
|
+
this.view.addSystemMessage(`recording stopped unexpectedly (${detail})`, "error");
|
|
1280
|
+
await this.cleanupSpeakTempFile(recording.audioPath);
|
|
1281
|
+
}
|
|
1282
|
+
catch (err) {
|
|
1283
|
+
this.clearSpeakRecordingMaxDurationTimeout(recording);
|
|
1284
|
+
if (this.speakRecording !== recording || recording.stopRequested)
|
|
1285
|
+
return;
|
|
1286
|
+
this.speakRecording = undefined;
|
|
1287
|
+
this.view.setEditorInputEnabled(true);
|
|
1288
|
+
this.refreshStatus();
|
|
1289
|
+
const error = err;
|
|
1290
|
+
if (error.code === "ENOENT") {
|
|
1291
|
+
this.view.addSystemMessage("ffmpeg not found. install it with: brew install ffmpeg", "error");
|
|
1292
|
+
}
|
|
1293
|
+
else {
|
|
1294
|
+
this.view.addSystemMessage(`recording failed: ${error.message}`, "error");
|
|
1295
|
+
}
|
|
1296
|
+
await this.cleanupSpeakTempFile(recording.audioPath);
|
|
1297
|
+
}
|
|
1298
|
+
}
|
|
1299
|
+
clearSpeakRecordingMaxDurationTimeout(recording) {
|
|
1300
|
+
if (!recording.maxDurationTimeout)
|
|
1301
|
+
return;
|
|
1302
|
+
clearTimeout(recording.maxDurationTimeout);
|
|
1303
|
+
recording.maxDurationTimeout = undefined;
|
|
1304
|
+
}
|
|
1305
|
+
async createSpeakTempFilePath() {
|
|
1306
|
+
const result = await this.deps.spawn("mktemp", [SPEAK_TEMP_FILE_TEMPLATE]);
|
|
1307
|
+
if (result.exitCode !== 0) {
|
|
1308
|
+
const message = result.stderr.trim() || result.stdout.trim() || "mktemp failed";
|
|
1309
|
+
throw new Error(message);
|
|
1310
|
+
}
|
|
1311
|
+
const path = result.stdout.trim().split(/\r?\n/, 1)[0]?.trim();
|
|
1312
|
+
if (!path) {
|
|
1313
|
+
throw new Error("mktemp returned an empty path");
|
|
1314
|
+
}
|
|
1315
|
+
return path;
|
|
1316
|
+
}
|
|
1317
|
+
async transcribeSpeakAudio(audio) {
|
|
1318
|
+
const apiKey = getMistralApiKey(this.config, this.deps.env.env());
|
|
1319
|
+
if (!apiKey) {
|
|
1320
|
+
throw new Error("missing MISTRAL_API_KEY or apiKeys.mistral");
|
|
1321
|
+
}
|
|
1322
|
+
const formData = new FormData();
|
|
1323
|
+
formData.append("model", SPEAK_MISTRAL_TRANSCRIBE_MODEL);
|
|
1324
|
+
formData.append("file", new Blob([audio], { type: "audio/wav" }), "speech.wav");
|
|
1325
|
+
formData.append("language", "en");
|
|
1326
|
+
const response = await fetch("https://api.mistral.ai/v1/audio/transcriptions", {
|
|
1327
|
+
method: "POST",
|
|
1328
|
+
headers: {
|
|
1329
|
+
Authorization: `Bearer ${apiKey}`,
|
|
1330
|
+
},
|
|
1331
|
+
body: formData,
|
|
1332
|
+
});
|
|
1333
|
+
let payload;
|
|
1334
|
+
const responseText = await response.text();
|
|
1335
|
+
if (responseText) {
|
|
1336
|
+
try {
|
|
1337
|
+
payload = JSON.parse(responseText);
|
|
1338
|
+
}
|
|
1339
|
+
catch {
|
|
1340
|
+
payload = undefined;
|
|
1341
|
+
}
|
|
1342
|
+
}
|
|
1343
|
+
if (!response.ok) {
|
|
1344
|
+
const fromObject = payload && typeof payload === "object" && "message" in payload
|
|
1345
|
+
? payload.message
|
|
1346
|
+
: undefined;
|
|
1347
|
+
const fromString = typeof fromObject === "string" ? fromObject : undefined;
|
|
1348
|
+
const fallback = responseText.trim() || `HTTP ${response.status}`;
|
|
1349
|
+
throw new Error(fromString || fallback);
|
|
1350
|
+
}
|
|
1351
|
+
const text = payload && typeof payload === "object" && "text" in payload
|
|
1352
|
+
? payload.text
|
|
1353
|
+
: undefined;
|
|
1354
|
+
if (typeof text !== "string") {
|
|
1355
|
+
return "";
|
|
1356
|
+
}
|
|
1357
|
+
return text;
|
|
1358
|
+
}
|
|
1359
|
+
async cleanupSpeakTempFile(path) {
|
|
1360
|
+
try {
|
|
1361
|
+
await unlink(path);
|
|
1362
|
+
}
|
|
1363
|
+
catch {
|
|
1364
|
+
// best-effort cleanup
|
|
1365
|
+
}
|
|
1366
|
+
}
|
|
1092
1367
|
getMemoryModeFilePath() {
|
|
1093
1368
|
const cwd = this.deps.env.cwd();
|
|
1094
1369
|
const home = this.deps.env.home();
|