@kernel.chat/kbot 2.9.0 → 2.10.0
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/dist/agent.d.ts +2 -0
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +1 -1
- package/dist/agent.js.map +1 -1
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +17 -12
- package/dist/auth.js.map +1 -1
- package/dist/cli.js +194 -2
- package/dist/cli.js.map +1 -1
- package/dist/cloud-sync.d.ts.map +1 -1
- package/dist/cloud-sync.js +15 -4
- package/dist/cloud-sync.js.map +1 -1
- package/dist/confidence.d.ts.map +1 -1
- package/dist/confidence.js +4 -1
- package/dist/confidence.js.map +1 -1
- package/dist/context-manager.d.ts.map +1 -1
- package/dist/context-manager.js +31 -5
- package/dist/context-manager.js.map +1 -1
- package/dist/context-manager.test.d.ts +2 -0
- package/dist/context-manager.test.d.ts.map +1 -0
- package/dist/context-manager.test.js +121 -0
- package/dist/context-manager.test.js.map +1 -0
- package/dist/export.d.ts +20 -0
- package/dist/export.d.ts.map +1 -0
- package/dist/export.js +301 -0
- package/dist/export.js.map +1 -0
- package/dist/ide/acp-server.js +5 -4
- package/dist/ide/acp-server.js.map +1 -1
- package/dist/ide/lsp-bridge.d.ts.map +1 -1
- package/dist/ide/lsp-bridge.js +11 -5
- package/dist/ide/lsp-bridge.js.map +1 -1
- package/dist/marketplace.d.ts +25 -0
- package/dist/marketplace.d.ts.map +1 -0
- package/dist/marketplace.js +327 -0
- package/dist/marketplace.js.map +1 -0
- package/dist/planner.d.ts.map +1 -1
- package/dist/planner.js +3 -2
- package/dist/planner.js.map +1 -1
- package/dist/rate-limiter.d.ts +45 -0
- package/dist/rate-limiter.d.ts.map +1 -0
- package/dist/rate-limiter.js +200 -0
- package/dist/rate-limiter.js.map +1 -0
- package/dist/sessions.test.d.ts +2 -0
- package/dist/sessions.test.d.ts.map +1 -0
- package/dist/sessions.test.js +55 -0
- package/dist/sessions.test.js.map +1 -0
- package/dist/streaming.d.ts.map +1 -1
- package/dist/streaming.js +105 -26
- package/dist/streaming.js.map +1 -1
- package/dist/streaming.test.d.ts +2 -0
- package/dist/streaming.test.d.ts.map +1 -0
- package/dist/streaming.test.js +41 -0
- package/dist/streaming.test.js.map +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +22 -10
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/test-runner.d.ts +2 -0
- package/dist/tools/test-runner.d.ts.map +1 -0
- package/dist/tools/test-runner.js +550 -0
- package/dist/tools/test-runner.js.map +1 -0
- package/dist/ui.js +1 -1
- package/dist/voice.d.ts +25 -0
- package/dist/voice.d.ts.map +1 -0
- package/dist/voice.js +336 -0
- package/dist/voice.js.map +1 -0
- package/dist/watch.d.ts +37 -0
- package/dist/watch.d.ts.map +1 -0
- package/dist/watch.js +369 -0
- package/dist/watch.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-runner.js","sourceRoot":"","sources":["../../src/tools/test-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AA2BhC,SAAS,eAAe,CAAC,WAAmB;IAC1C,+DAA+D;IAC/D,MAAM,aAAa,GAAG;QACpB,kBAAkB;QAClB,kBAAkB;QAClB,mBAAmB;QACnB,mBAAmB;KACpB,CAAA;IACD,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YAAE,OAAO,QAAQ,CAAA;IACzD,CAAC;IACD,+DAA+D;IAC/D,MAAM,WAAW,GAAG;QAClB,gBAAgB;QAChB,gBAAgB;QAChB,iBAAiB;QACjB,iBAAiB;KAClB,CAAA;IACD,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;QAChC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YAClB,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;gBACxC,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;oBAAE,OAAO,QAAQ,CAAA;YACpD,CAAC;YAAC,MAAM,CAAC;gBACP,qBAAqB;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IAED,0DAA0D;IAC1D,MAAM,WAAW,GAAG;QAClB,gBAAgB;QAChB,gBAAgB;QAChB,iBAAiB;QACjB,iBAAiB;QACjB,kBAAkB;KACnB,CAAA;IACD,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YAAE,OAAO,MAAM,CAAA;IACvD,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAA;IACjD,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;YACtD,IAAI,GAAG,CAAC,IAAI;gBAAE,OAAO,MAAM,CAAA;QAC7B,CAAC;QAAC,MAAM,CAAC;YACP,sBAAsB;QACxB,CAAC;IACH,CAAC;IAED,YAAY;IACZ,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAAE,OAAO,QAAQ,CAAA;IAChE,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC;QAC/C,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,CAAA;YACrE,IAAI,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC;gBAAE,OAAO,QAAQ,CAAA;QACtD,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;IACH,CAAC;IACD,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC,CAAA;YAC1E,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;gBAAE,OAAO,QAAQ,CAAA;QACrD,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;IACH,CAAC;IAED,kBAAkB;IAClB,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAAE,OAAO,OAAO,CAAA;IAE/D,QAAQ;IACR,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAAE,OAAO,IAAI,CAAA;IAExD,gCAAgC;IAChC,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;YACtD,IAAI,GAAG,CAAC,OAAO,EAAE,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,2CAA2C,EAAE,CAAC;gBAC1F,OAAO,KAAK,CAAA;YACd,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E,SAAS,YAAY,CACnB,SAAoB,EACpB,IAA4D;IAE5D,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,IAAI,GAAG,GAAG,gCAAgC,CAAA;YAC1C,IAAI,IAAI,CAAC,IAAI;gBAAE,GAAG,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAA;iBAChC,IAAI,IAAI,CAAC,OAAO;gBAAE,GAAG,IAAI,uBAAuB,IAAI,CAAC,OAAO,GAAG,CAAA;YACpE,OAAO,GAAG,CAAA;QACZ,CAAC;QACD,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,IAAI,GAAG,GAAG,iBAAiB,CAAA;YAC3B,IAAI,IAAI,CAAC,IAAI;gBAAE,GAAG,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAA;iBAChC,IAAI,IAAI,CAAC,OAAO;gBAAE,GAAG,IAAI,uBAAuB,IAAI,CAAC,OAAO,GAAG,CAAA;YACpE,OAAO,GAAG,CAAA;QACZ,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,IAAI,GAAG,GAAG,gCAAgC,CAAA;YAC1C,IAAI,IAAI,CAAC,IAAI;gBAAE,GAAG,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAA;iBAChC,IAAI,IAAI,CAAC,OAAO;gBAAE,GAAG,IAAI,QAAQ,IAAI,CAAC,OAAO,GAAG,CAAA;YACrD,IAAI,IAAI,CAAC,OAAO;gBAAE,GAAG,IAAI,KAAK,CAAA;YAC9B,OAAO,GAAG,CAAA;QACZ,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,IAAI,GAAG,GAAG,YAAY,CAAA;YACtB,IAAI,IAAI,CAAC,IAAI;gBAAE,GAAG,IAAI,WAAW,IAAI,CAAC,IAAI,EAAE,CAAA;iBACvC,IAAI,IAAI,CAAC,OAAO;gBAAE,GAAG,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAA;YAChD,GAAG,IAAI,OAAO,CAAA;YACd,OAAO,GAAG,CAAA;QACZ,CAAC;QACD,KAAK,IAAI,CAAC,CAAC,CAAC;YACV,IAAI,GAAG,GAAG,SAAS,CAAA;YACnB,IAAI,IAAI,CAAC,IAAI;gBAAE,GAAG,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAA;;gBAChC,GAAG,IAAI,QAAQ,CAAA;YACpB,IAAI,IAAI,CAAC,OAAO;gBAAE,GAAG,IAAI,KAAK,CAAA;YAC9B,GAAG,IAAI,OAAO,CAAA;YACd,OAAO,GAAG,CAAA;QACZ,CAAC;QACD,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,OAAO,eAAe,CAAA;QACxB,CAAC;IACH,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E,SAAS,eAAe,CAAC,GAAW;IAClC,MAAM,MAAM,GAAe;QACzB,SAAS,EAAE,QAAQ;QACnB,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,CAAC;QACT,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,EAAE;KACb,CAAA;IAED,IAAI,CAAC;QACH,0EAA0E;QAC1E,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAClC,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QACpC,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,OAAO,KAAK,CAAC,CAAC;YAAE,OAAO,EAAE,GAAG,MAAM,EAAE,GAAG,EAAE,CAAA;QAEjE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAA;QAC9D,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,IAAI,CAAC,CAAA;QACtC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,IAAI,CAAC,CAAA;QACxC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,IAAI,CAAC,CAAA;QACxC,MAAM,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC,CAAA;QAEvE,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YACpC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrC,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACvE,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;wBAC/C,IAAI,SAAS,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;4BAClC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;gCACnB,IAAI,EAAE,SAAS,CAAC,cAAc;oCAC5B,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,cAAc,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;oCAC5D,CAAC,CAAC,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,KAAK,IAAI,SAAS;gCACtD,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC;oCAC/C,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;oCACpD,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;6BAC1D,CAAC,CAAA;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,CAAC,GAAG,GAAG,GAAG,CAAA;IAClB,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,aAAa,CAAC,GAAW;IAChC,MAAM,MAAM,GAAe;QACzB,SAAS,EAAE,MAAM;QACjB,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,CAAC;QACT,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,EAAE;KACb,CAAA;IAED,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAClC,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QACpC,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,OAAO,KAAK,CAAC,CAAC;YAAE,OAAO,EAAE,GAAG,MAAM,EAAE,GAAG,EAAE,CAAA;QAEjE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAA;QAC9D,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,IAAI,CAAC,CAAA;QACtC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,IAAI,CAAC,CAAA;QACxC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,IAAI,CAAC,CAAA;QACxC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,eAAe,IAAI,CAAC,CAAA;QAE1C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YACpC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBAC1C,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;wBAC/C,IAAI,SAAS,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;4BAClC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;gCACnB,IAAI,EAAE,SAAS,CAAC,cAAc;oCAC5B,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,cAAc,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;oCAC5D,CAAC,CAAC,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,KAAK,IAAI,SAAS;gCACtD,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC;oCAC/C,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;oCACpD,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;6BAC1D,CAAC,CAAA;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,CAAC,GAAG,GAAG,GAAG,CAAA;IAClB,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAW;IACpC,MAAM,MAAM,GAAe;QACzB,SAAS,EAAE,QAAQ;QACnB,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,CAAC;QACT,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,EAAE;KACb,CAAA;IAED,2DAA2D;IAC3D,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAC5B,8EAA8E,CAC/E,CAAA;IACD,IAAI,YAAY,EAAE,CAAC;QACjB,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;YAC5C,IAAI,CAAC,QAAQ;gBAAE,SAAQ;YACvB,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YACvC,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;YACzB,IAAI,KAAK,KAAK,QAAQ;gBAAE,MAAM,CAAC,MAAM,GAAG,KAAK,CAAA;iBACxC,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,OAAO;gBAAE,MAAM,CAAC,MAAM,IAAI,KAAK,CAAA;iBACnE,IAAI,KAAK,KAAK,SAAS;gBAAE,MAAM,CAAC,OAAO,GAAG,KAAK,CAAA;QACtD,CAAC;QACD,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAA;IAC/D,CAAC;IAED,uBAAuB;IACvB,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAA;IAClE,IAAI,WAAW,EAAE,CAAC;QAChB,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAC/B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAA;YACvD,IAAI,CAAC,EAAE,CAAC;gBACN,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;oBACnB,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;oBACjB,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE;iBAC5B,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,KAAK,KAAK,CAAC;QAAE,MAAM,CAAC,GAAG,GAAG,GAAG,CAAA;IAExC,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAW;IACnC,MAAM,MAAM,GAAe;QACzB,SAAS,EAAE,OAAO;QAClB,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,CAAC;QACT,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,EAAE;KACb,CAAA;IAED,gEAAgE;IAChE,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAC5B,4EAA4E,CAC7E,CAAA;IACD,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAC7C,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAC7C,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAC9C,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAA;IAC/D,CAAC;IAED,2FAA2F;IAC3F,MAAM,aAAa,GAAG,GAAG,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAA;IAC/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACjD,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;QACjC,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;QACvC,+CAA+C;QAC/C,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAA;YACtD,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACnB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;aACnE,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,KAAK,KAAK,CAAC;QAAE,MAAM,CAAC,GAAG,GAAG,GAAG,CAAA;IAExC,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,aAAa,CAAC,GAAW;IAChC,MAAM,MAAM,GAAe;QACzB,SAAS,EAAE,IAAI;QACf,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,CAAC;QACT,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,EAAE;KACb,CAAA;IAED,yDAAyD;IACzD,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;IAC7C,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;IAC7C,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;IAE7C,MAAM,CAAC,MAAM,GAAG,WAAW,EAAE,MAAM,IAAI,CAAC,CAAA;IACxC,MAAM,CAAC,MAAM,GAAG,WAAW,EAAE,MAAM,IAAI,CAAC,CAAA;IACxC,MAAM,CAAC,OAAO,GAAG,WAAW,EAAE,MAAM,IAAI,CAAC,CAAA;IACzC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAA;IAE7D,0BAA0B;IAC1B,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAA;IACjE,IAAI,SAAS,EAAE,CAAC;QACd,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC7B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAA;YAC3C,IAAI,CAAC,EAAE,CAAC;gBACN,qDAAqD;gBACrD,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;gBAC7B,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;gBAC5D,MAAM,QAAQ,GAAG,SAAS;qBACvB,KAAK,CAAC,IAAI,CAAC;qBACX,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;qBACjF,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBACZ,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;oBACnB,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;oBACV,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,aAAa;iBAC5D,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,IAAI,MAAM,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;QAC1C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;QACtC,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;YACrB,MAAM,CAAC,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,CAAC,CAAA;YACpC,MAAM,CAAC,MAAM,GAAG,KAAK,EAAE,MAAM,IAAI,CAAC,CAAA;YAClC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;QAC9C,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,KAAK,KAAK,CAAC;QAAE,MAAM,CAAC,GAAG,GAAG,GAAG,CAAA;IAExC,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAW;IACrC,MAAM,MAAM,GAAe;QACzB,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,CAAC;QACT,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,EAAE;QACZ,GAAG;KACJ,CAAA;IAED,sBAAsB;IACtB,wCAAwC;IACxC,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;IAClD,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;IAClD,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;IAElD,IAAI,YAAY;QAAE,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAC/D,IAAI,YAAY;QAAE,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAC/D,IAAI,YAAY;QAAE,MAAM,CAAC,OAAO,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAEhE,uCAAuC;IACvC,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAA;IACxF,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAC1C,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QAC1C,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAC3C,CAAC;IAED,IAAI,MAAM,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAA;IAC/D,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,WAAW,CAAC,SAAoB,EAAE,GAAW;IACpD,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,QAAQ;YACX,OAAO,eAAe,CAAC,GAAG,CAAC,CAAA;QAC7B,KAAK,MAAM;YACT,OAAO,aAAa,CAAC,GAAG,CAAC,CAAA;QAC3B,KAAK,QAAQ;YACX,OAAO,iBAAiB,CAAC,GAAG,CAAC,CAAA;QAC/B,KAAK,OAAO;YACV,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAA;QAC9B,KAAK,IAAI;YACP,OAAO,aAAa,CAAC,GAAG,CAAC,CAAA;QAC3B,KAAK,KAAK;YACR,OAAO,kBAAkB,CAAC,GAAG,CAAC,CAAA;IAClC,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,sCAAsC;AACtC,8EAA8E;AAE9E,SAAS,YAAY,CAAC,MAAkB;IACtC,MAAM,KAAK,GAAa,EAAE,CAAA;IAE1B,KAAK,CAAC,IAAI,CAAC,cAAc,MAAM,CAAC,SAAS,EAAE,CAAC,CAAA;IAC5C,KAAK,CAAC,IAAI,CACR,UAAU,MAAM,CAAC,KAAK,cAAc,MAAM,CAAC,MAAM,cAAc,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CACvI,CAAA;IAED,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACd,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAChD,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;YAC5B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;YACnC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;gBACd,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;gBACtD,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;oBAC1B,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;gBACjC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACd,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;IACjC,CAAC;IAED,IAAI,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACd,KAAK,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAA;QACtD,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;IACvC,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACzB,CAAC;AAED,8EAA8E;AAC9E,YAAY;AACZ,8EAA8E;AAE9E,SAAS,QAAQ,CACf,WAAmB,EACnB,OAA+D,EAAE;IAEjE,MAAM,YAAY,GAAG,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;IAEjD,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9B,OAAO,+BAA+B,YAAY,EAAE,CAAA;IACtD,CAAC;IAED,MAAM,SAAS,GAAG,eAAe,CAAC,YAAY,CAAC,CAAA;IAC/C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,CACL,2CAA2C;YAC3C,0DAA0D;YAC1D,+CAA+C;YAC/C,qDAAqD;YACrD,kBAAkB;YAClB,cAAc;YACd,qCAAqC,CACtC,CAAA;IACH,CAAC;IAED,MAAM,GAAG,GAAG,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IAEzC,IAAI,MAAc,CAAA;IAClB,IAAI,CAAC;QACH,MAAM,GAAG,QAAQ,CAAC,GAAG,EAAE;YACrB,GAAG,EAAE,YAAY;YACjB,OAAO,EAAE,OAAO;YAChB,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,QAAQ;YACrC,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAC/B,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE;SACtD,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,kEAAkE;QAClE,MAAM,OAAO,GAAG,GAA6D,CAAA;QAC7E,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,eAAe,CAAA;IACjF,CAAC;IAED,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IAC7C,OAAO,YAAY,CAAC,MAAM,CAAC,CAAA;AAC7B,CAAC;AAED,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E,MAAM,UAAU,uBAAuB;IACrC,YAAY,CAAC;QACX,IAAI,EAAE,WAAW;QACjB,WAAW,EACT,qOAAqO;QACvO,UAAU,EAAE;YACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2DAA2D,EAAE;YAClG,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2DAA2D,EAAE;YACrG,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,6CAA6C,EAAE;SACzF;QACD,IAAI,EAAE,MAAM;QACZ,KAAK,CAAC,OAAO,CAAC,IAAI;YAChB,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE;gBAClD,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;gBACxD,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,IAAI;aAC/B,CAAC,CAAA;QACJ,CAAC;KACF,CAAC,CAAA;IAEF,YAAY,CAAC;QACX,IAAI,EAAE,WAAW;QACjB,WAAW,EACT,0JAA0J;QAC5J,UAAU,EAAE;YACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oDAAoD,EAAE,QAAQ,EAAE,IAAI,EAAE;SAC5G;QACD,IAAI,EAAE,MAAM;QACZ,KAAK,CAAC,OAAO,CAAC,IAAI;YAChB,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;YACzC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,6DAA6D,CAAA;YACtE,CAAC;YAED,wEAAwE;YACxE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAA;YAC7C,IAAI,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC,CAAA;YACzF,IAAI,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;YAE/B,iFAAiF;YACjF,MAAM,WAAW,GAAG,CAAC,cAAc,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAA;YAC5F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5B,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;oBAChE,WAAW,GAAG,GAAG,CAAA;oBACjB,MAAK;gBACP,CAAC;gBACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;gBAC3B,IAAI,MAAM,KAAK,GAAG;oBAAE,MAAK;gBACzB,GAAG,GAAG,MAAM,CAAA;YACd,CAAC;YAED,OAAO,QAAQ,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;QACnD,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
|
package/dist/ui.js
CHANGED
|
@@ -252,7 +252,7 @@ export function printHelp() {
|
|
|
252
252
|
` ${chalk.white('/compact')} Compress conversation (saves tokens)`,
|
|
253
253
|
` ${chalk.white('/dashboard')} See usage stats and learning data`,
|
|
254
254
|
'',
|
|
255
|
-
` ${DIM('37 specialist agents.
|
|
255
|
+
` ${DIM('37 specialist agents. 153 tools. Type anything to get started.')}`,
|
|
256
256
|
'',
|
|
257
257
|
];
|
|
258
258
|
status(lines.join('\n'));
|
package/dist/voice.d.ts
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { type ChildProcess } from 'node:child_process';
|
|
2
|
+
export interface VoiceOptions {
|
|
3
|
+
/** TTS voice name (macOS: Alex, Samantha, etc.) */
|
|
4
|
+
voice?: string;
|
|
5
|
+
/** TTS speech rate (words per minute, default: 200) */
|
|
6
|
+
rate?: number;
|
|
7
|
+
/** Enable TTS output (default: true) */
|
|
8
|
+
tts?: boolean;
|
|
9
|
+
/** Enable STT input (default: false — requires whisper) */
|
|
10
|
+
stt?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export interface VoiceState {
|
|
13
|
+
enabled: boolean;
|
|
14
|
+
ttsProcess?: ChildProcess;
|
|
15
|
+
sttAvailable: boolean;
|
|
16
|
+
voice: string;
|
|
17
|
+
rate: number;
|
|
18
|
+
}
|
|
19
|
+
export declare function initVoice(options?: VoiceOptions): VoiceState;
|
|
20
|
+
export declare function speak(text: string, state: VoiceState): Promise<void>;
|
|
21
|
+
export declare function stopSpeaking(state: VoiceState): void;
|
|
22
|
+
export declare function listen(state: VoiceState): Promise<string>;
|
|
23
|
+
export declare function listVoices(): string[];
|
|
24
|
+
export declare function formatVoiceStatus(state: VoiceState): string;
|
|
25
|
+
//# sourceMappingURL=voice.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"voice.d.ts","sourceRoot":"","sources":["../src/voice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAWvE,MAAM,WAAW,YAAY;IAC3B,mDAAmD;IACnD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,wCAAwC;IACxC,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,2DAA2D;IAC3D,GAAG,CAAC,EAAE,OAAO,CAAA;CACd;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,CAAC,EAAE,YAAY,CAAA;IACzB,YAAY,EAAE,OAAO,CAAA;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb;AAgGD,wBAAgB,SAAS,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,UAAU,CA8B5D;AAMD,wBAAsB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CA0D1E;AAMD,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAKpD;AAMD,wBAAsB,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAkF/D;AAoBD,wBAAgB,UAAU,IAAI,MAAM,EAAE,CAuDrC;AAMD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CA8B3D"}
|
package/dist/voice.js
ADDED
|
@@ -0,0 +1,336 @@
|
|
|
1
|
+
import { execSync, spawn } from 'node:child_process';
|
|
2
|
+
import { createInterface } from 'node:readline';
|
|
3
|
+
import { tmpdir } from 'node:os';
|
|
4
|
+
import { join } from 'node:path';
|
|
5
|
+
import { existsSync, unlinkSync } from 'node:fs';
|
|
6
|
+
import chalk from 'chalk';
|
|
7
|
+
// ---------------------------------------------------------------------------
|
|
8
|
+
// Platform detection helpers
|
|
9
|
+
// ---------------------------------------------------------------------------
|
|
10
|
+
const platform = process.platform;
|
|
11
|
+
function commandExists(cmd) {
|
|
12
|
+
try {
|
|
13
|
+
execSync(`which ${cmd}`, { stdio: 'ignore' });
|
|
14
|
+
return true;
|
|
15
|
+
}
|
|
16
|
+
catch {
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
function detectTTSEngine() {
|
|
21
|
+
if (platform === 'darwin')
|
|
22
|
+
return 'say';
|
|
23
|
+
if (commandExists('espeak'))
|
|
24
|
+
return 'espeak';
|
|
25
|
+
if (commandExists('festival'))
|
|
26
|
+
return 'festival';
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
function detectSTT() {
|
|
30
|
+
return commandExists('whisper') || commandExists('whisper.cpp');
|
|
31
|
+
}
|
|
32
|
+
function detectRecorder() {
|
|
33
|
+
if (commandExists('rec'))
|
|
34
|
+
return 'rec';
|
|
35
|
+
if (commandExists('arecord'))
|
|
36
|
+
return 'arecord';
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
// ---------------------------------------------------------------------------
|
|
40
|
+
// Text sanitization
|
|
41
|
+
// ---------------------------------------------------------------------------
|
|
42
|
+
/** Strip markdown formatting so TTS reads clean prose. */
|
|
43
|
+
function stripMarkdown(text) {
|
|
44
|
+
let cleaned = text;
|
|
45
|
+
// Replace code blocks with a spoken description of the language
|
|
46
|
+
cleaned = cleaned.replace(/```(\w+)?\n[\s\S]*?```/g, (_match, lang) => {
|
|
47
|
+
return lang
|
|
48
|
+
? `Here's a ${lang} snippet.`
|
|
49
|
+
: 'Here\'s a code snippet.';
|
|
50
|
+
});
|
|
51
|
+
// Remove inline code
|
|
52
|
+
cleaned = cleaned.replace(/`([^`]+)`/g, '$1');
|
|
53
|
+
// Remove headings markers
|
|
54
|
+
cleaned = cleaned.replace(/^#{1,6}\s+/gm, '');
|
|
55
|
+
// Remove bold / italic markers
|
|
56
|
+
cleaned = cleaned.replace(/\*{1,3}([^*]+)\*{1,3}/g, '$1');
|
|
57
|
+
cleaned = cleaned.replace(/_{1,3}([^_]+)_{1,3}/g, '$1');
|
|
58
|
+
// Remove strikethrough
|
|
59
|
+
cleaned = cleaned.replace(/~~([^~]+)~~/g, '$1');
|
|
60
|
+
// Remove links — keep the label
|
|
61
|
+
cleaned = cleaned.replace(/\[([^\]]+)\]\([^)]+\)/g, '$1');
|
|
62
|
+
// Remove images
|
|
63
|
+
cleaned = cleaned.replace(/!\[([^\]]*)\]\([^)]+\)/g, '$1');
|
|
64
|
+
// Remove blockquote markers
|
|
65
|
+
cleaned = cleaned.replace(/^>\s+/gm, '');
|
|
66
|
+
// Remove horizontal rules
|
|
67
|
+
cleaned = cleaned.replace(/^[-*_]{3,}\s*$/gm, '');
|
|
68
|
+
// Remove list markers (unordered)
|
|
69
|
+
cleaned = cleaned.replace(/^[\s]*[-*+]\s+/gm, '');
|
|
70
|
+
// Remove list markers (ordered)
|
|
71
|
+
cleaned = cleaned.replace(/^[\s]*\d+\.\s+/gm, '');
|
|
72
|
+
// Collapse multiple newlines
|
|
73
|
+
cleaned = cleaned.replace(/\n{3,}/g, '\n\n');
|
|
74
|
+
return cleaned.trim();
|
|
75
|
+
}
|
|
76
|
+
/** Sanitize text for safe shell usage — strip characters that could be interpreted. */
|
|
77
|
+
function sanitizeForShell(text) {
|
|
78
|
+
// Remove characters that are dangerous in shell context
|
|
79
|
+
return text.replace(/[;&|`$(){}[\]!#\\]/g, '');
|
|
80
|
+
}
|
|
81
|
+
// ---------------------------------------------------------------------------
|
|
82
|
+
// 1. initVoice
|
|
83
|
+
// ---------------------------------------------------------------------------
|
|
84
|
+
export function initVoice(options) {
|
|
85
|
+
const ttsEngine = detectTTSEngine();
|
|
86
|
+
const sttAvailable = options?.stt ? detectSTT() : false;
|
|
87
|
+
const enabled = options?.tts !== false && ttsEngine !== null;
|
|
88
|
+
if (!ttsEngine) {
|
|
89
|
+
console.warn(chalk.yellow('⚠ No TTS engine found. ') +
|
|
90
|
+
(platform === 'darwin'
|
|
91
|
+
? 'Expected "say" — this should be available on macOS.'
|
|
92
|
+
: 'Install espeak or festival for TTS support.'));
|
|
93
|
+
}
|
|
94
|
+
if (options?.stt && !sttAvailable) {
|
|
95
|
+
console.warn(chalk.yellow('⚠ STT requested but whisper not found. ') +
|
|
96
|
+
'Install whisper.cpp or openai-whisper for speech-to-text.');
|
|
97
|
+
}
|
|
98
|
+
const defaultVoice = platform === 'darwin' ? 'Alex' : 'default';
|
|
99
|
+
return {
|
|
100
|
+
enabled,
|
|
101
|
+
sttAvailable,
|
|
102
|
+
voice: options?.voice ?? defaultVoice,
|
|
103
|
+
rate: options?.rate ?? 200,
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
// ---------------------------------------------------------------------------
|
|
107
|
+
// 2. speak
|
|
108
|
+
// ---------------------------------------------------------------------------
|
|
109
|
+
export async function speak(text, state) {
|
|
110
|
+
if (!state.enabled)
|
|
111
|
+
return;
|
|
112
|
+
// Kill any in-progress speech first
|
|
113
|
+
stopSpeaking(state);
|
|
114
|
+
const cleaned = sanitizeForShell(stripMarkdown(text));
|
|
115
|
+
if (!cleaned)
|
|
116
|
+
return;
|
|
117
|
+
const ttsEngine = detectTTSEngine();
|
|
118
|
+
if (!ttsEngine)
|
|
119
|
+
return;
|
|
120
|
+
return new Promise((resolve) => {
|
|
121
|
+
let proc;
|
|
122
|
+
switch (ttsEngine) {
|
|
123
|
+
case 'say':
|
|
124
|
+
proc = spawn('say', ['-v', state.voice, '-r', String(state.rate), cleaned], {
|
|
125
|
+
stdio: 'ignore',
|
|
126
|
+
});
|
|
127
|
+
break;
|
|
128
|
+
case 'espeak':
|
|
129
|
+
proc = spawn('espeak', [cleaned], {
|
|
130
|
+
stdio: 'ignore',
|
|
131
|
+
});
|
|
132
|
+
break;
|
|
133
|
+
case 'festival': {
|
|
134
|
+
proc = spawn('festival', ['--tts'], {
|
|
135
|
+
stdio: ['pipe', 'ignore', 'ignore'],
|
|
136
|
+
});
|
|
137
|
+
proc.stdin?.write(cleaned);
|
|
138
|
+
proc.stdin?.end();
|
|
139
|
+
break;
|
|
140
|
+
}
|
|
141
|
+
default:
|
|
142
|
+
resolve();
|
|
143
|
+
return;
|
|
144
|
+
}
|
|
145
|
+
state.ttsProcess = proc;
|
|
146
|
+
proc.on('close', () => {
|
|
147
|
+
if (state.ttsProcess === proc) {
|
|
148
|
+
state.ttsProcess = undefined;
|
|
149
|
+
}
|
|
150
|
+
resolve();
|
|
151
|
+
});
|
|
152
|
+
proc.on('error', () => {
|
|
153
|
+
if (state.ttsProcess === proc) {
|
|
154
|
+
state.ttsProcess = undefined;
|
|
155
|
+
}
|
|
156
|
+
resolve();
|
|
157
|
+
});
|
|
158
|
+
});
|
|
159
|
+
}
|
|
160
|
+
// ---------------------------------------------------------------------------
|
|
161
|
+
// 3. stopSpeaking
|
|
162
|
+
// ---------------------------------------------------------------------------
|
|
163
|
+
export function stopSpeaking(state) {
|
|
164
|
+
if (state.ttsProcess) {
|
|
165
|
+
state.ttsProcess.kill('SIGTERM');
|
|
166
|
+
state.ttsProcess = undefined;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
// ---------------------------------------------------------------------------
|
|
170
|
+
// 4. listen
|
|
171
|
+
// ---------------------------------------------------------------------------
|
|
172
|
+
export async function listen(state) {
|
|
173
|
+
if (!state.sttAvailable) {
|
|
174
|
+
// Fall back to readline text input
|
|
175
|
+
return readlineInput();
|
|
176
|
+
}
|
|
177
|
+
const recorder = detectRecorder();
|
|
178
|
+
if (!recorder) {
|
|
179
|
+
console.warn(chalk.yellow('⚠ No audio recorder found (rec or arecord). Falling back to text input.'));
|
|
180
|
+
return readlineInput();
|
|
181
|
+
}
|
|
182
|
+
const tempFile = join(tmpdir(), `kbot-voice-${Date.now()}.wav`);
|
|
183
|
+
try {
|
|
184
|
+
// Record audio (up to 10 seconds)
|
|
185
|
+
console.log(chalk.cyan('🎙 Listening... (up to 10s, press Ctrl+C to stop)'));
|
|
186
|
+
await new Promise((resolve, reject) => {
|
|
187
|
+
let proc;
|
|
188
|
+
if (recorder === 'rec') {
|
|
189
|
+
// sox rec: record 16kHz mono WAV, max 10 seconds
|
|
190
|
+
proc = spawn('rec', [
|
|
191
|
+
tempFile,
|
|
192
|
+
'rate', '16k',
|
|
193
|
+
'channels', '1',
|
|
194
|
+
'trim', '0', '10',
|
|
195
|
+
], {
|
|
196
|
+
stdio: ['ignore', 'ignore', 'ignore'],
|
|
197
|
+
});
|
|
198
|
+
}
|
|
199
|
+
else {
|
|
200
|
+
// arecord: record 16kHz mono WAV, max 10 seconds
|
|
201
|
+
proc = spawn('arecord', [
|
|
202
|
+
'-f', 'S16_LE',
|
|
203
|
+
'-r', '16000',
|
|
204
|
+
'-c', '1',
|
|
205
|
+
'-d', '10',
|
|
206
|
+
tempFile,
|
|
207
|
+
], {
|
|
208
|
+
stdio: ['ignore', 'ignore', 'ignore'],
|
|
209
|
+
});
|
|
210
|
+
}
|
|
211
|
+
proc.on('close', (code) => {
|
|
212
|
+
if (code === 0 || code === null) {
|
|
213
|
+
resolve();
|
|
214
|
+
}
|
|
215
|
+
else {
|
|
216
|
+
reject(new Error(`Recording failed with exit code ${code}`));
|
|
217
|
+
}
|
|
218
|
+
});
|
|
219
|
+
proc.on('error', (err) => reject(err));
|
|
220
|
+
});
|
|
221
|
+
if (!existsSync(tempFile)) {
|
|
222
|
+
console.warn(chalk.yellow('⚠ Recording failed — no audio file produced.'));
|
|
223
|
+
return readlineInput();
|
|
224
|
+
}
|
|
225
|
+
// Transcribe with whisper
|
|
226
|
+
console.log(chalk.dim('Transcribing...'));
|
|
227
|
+
const whisperCmd = commandExists('whisper') ? 'whisper' : 'whisper.cpp';
|
|
228
|
+
const transcription = execSync(`${whisperCmd} "${tempFile}" --model base --output_format txt --language en 2>/dev/null`, { encoding: 'utf-8', timeout: 30_000 }).trim();
|
|
229
|
+
return transcription || await readlineInput();
|
|
230
|
+
}
|
|
231
|
+
catch (err) {
|
|
232
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
233
|
+
console.warn(chalk.yellow(`⚠ STT failed: ${message}. Falling back to text input.`));
|
|
234
|
+
return readlineInput();
|
|
235
|
+
}
|
|
236
|
+
finally {
|
|
237
|
+
// Clean up temp file
|
|
238
|
+
try {
|
|
239
|
+
if (existsSync(tempFile))
|
|
240
|
+
unlinkSync(tempFile);
|
|
241
|
+
}
|
|
242
|
+
catch {
|
|
243
|
+
// ignore cleanup errors
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
/** Readline fallback for text input when STT is unavailable. */
|
|
248
|
+
function readlineInput() {
|
|
249
|
+
return new Promise((resolve) => {
|
|
250
|
+
const rl = createInterface({
|
|
251
|
+
input: process.stdin,
|
|
252
|
+
output: process.stdout,
|
|
253
|
+
});
|
|
254
|
+
rl.question(chalk.cyan('You: '), (answer) => {
|
|
255
|
+
rl.close();
|
|
256
|
+
resolve(answer.trim());
|
|
257
|
+
});
|
|
258
|
+
});
|
|
259
|
+
}
|
|
260
|
+
// ---------------------------------------------------------------------------
|
|
261
|
+
// 5. listVoices
|
|
262
|
+
// ---------------------------------------------------------------------------
|
|
263
|
+
export function listVoices() {
|
|
264
|
+
const ttsEngine = detectTTSEngine();
|
|
265
|
+
if (!ttsEngine)
|
|
266
|
+
return [];
|
|
267
|
+
try {
|
|
268
|
+
switch (ttsEngine) {
|
|
269
|
+
case 'say': {
|
|
270
|
+
// macOS: `say -v ?` outputs lines like "Alex en_US # Most people recognize me by my voice."
|
|
271
|
+
const output = execSync('say -v ?', { encoding: 'utf-8' });
|
|
272
|
+
return output
|
|
273
|
+
.split('\n')
|
|
274
|
+
.filter(Boolean)
|
|
275
|
+
.map((line) => {
|
|
276
|
+
const match = line.match(/^(\S+)/);
|
|
277
|
+
return match ? match[1] : '';
|
|
278
|
+
})
|
|
279
|
+
.filter(Boolean);
|
|
280
|
+
}
|
|
281
|
+
case 'espeak': {
|
|
282
|
+
const output = execSync('espeak --voices', { encoding: 'utf-8' });
|
|
283
|
+
return output
|
|
284
|
+
.split('\n')
|
|
285
|
+
.slice(1) // skip header
|
|
286
|
+
.filter(Boolean)
|
|
287
|
+
.map((line) => {
|
|
288
|
+
const parts = line.trim().split(/\s+/);
|
|
289
|
+
// voice name is typically the 4th column
|
|
290
|
+
return parts[3] ?? '';
|
|
291
|
+
})
|
|
292
|
+
.filter(Boolean);
|
|
293
|
+
}
|
|
294
|
+
case 'festival': {
|
|
295
|
+
try {
|
|
296
|
+
const output = execSync('echo "(voice.list)" | festival --pipe 2>/dev/null', { encoding: 'utf-8' });
|
|
297
|
+
const match = output.match(/\(([^)]+)\)/);
|
|
298
|
+
if (match) {
|
|
299
|
+
return match[1].split(/\s+/).filter(Boolean);
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
catch {
|
|
303
|
+
// festival voice listing can be finicky
|
|
304
|
+
}
|
|
305
|
+
return [];
|
|
306
|
+
}
|
|
307
|
+
default:
|
|
308
|
+
return [];
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
catch {
|
|
312
|
+
return [];
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
// ---------------------------------------------------------------------------
|
|
316
|
+
// 6. formatVoiceStatus
|
|
317
|
+
// ---------------------------------------------------------------------------
|
|
318
|
+
export function formatVoiceStatus(state) {
|
|
319
|
+
const lines = [];
|
|
320
|
+
lines.push(chalk.bold('Voice Mode'));
|
|
321
|
+
lines.push('');
|
|
322
|
+
const ttsEngine = detectTTSEngine();
|
|
323
|
+
lines.push(` TTS: ${state.enabled
|
|
324
|
+
? chalk.green('enabled') + chalk.dim(` (${ttsEngine ?? 'unknown'})`)
|
|
325
|
+
: chalk.red('disabled')}`);
|
|
326
|
+
lines.push(` Voice: ${chalk.cyan(state.voice)}`);
|
|
327
|
+
lines.push(` Rate: ${state.rate} wpm`);
|
|
328
|
+
lines.push(` STT: ${state.sttAvailable
|
|
329
|
+
? chalk.green('available') + chalk.dim(' (whisper)')
|
|
330
|
+
: chalk.dim('not available')}`);
|
|
331
|
+
lines.push(` Speaking: ${state.ttsProcess
|
|
332
|
+
? chalk.yellow('in progress')
|
|
333
|
+
: chalk.dim('idle')}`);
|
|
334
|
+
return lines.join('\n');
|
|
335
|
+
}
|
|
336
|
+
//# sourceMappingURL=voice.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"voice.js","sourceRoot":"","sources":["../src/voice.ts"],"names":[],"mappings":"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"}
|
package/dist/watch.d.ts
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export interface WatchOptions {
|
|
2
|
+
/** Directory to watch (default: cwd) */
|
|
3
|
+
path?: string;
|
|
4
|
+
/** File extensions to watch (default: common source extensions) */
|
|
5
|
+
extensions?: string[];
|
|
6
|
+
/** Whether to run analysis on changes (default: true) */
|
|
7
|
+
analyze?: boolean;
|
|
8
|
+
/** Callback for change events */
|
|
9
|
+
onChange?: (event: WatchEvent) => void;
|
|
10
|
+
}
|
|
11
|
+
export interface WatchEvent {
|
|
12
|
+
file: string;
|
|
13
|
+
type: 'change' | 'rename';
|
|
14
|
+
timestamp: Date;
|
|
15
|
+
analysis?: FileAnalysis;
|
|
16
|
+
}
|
|
17
|
+
export interface FileAnalysis {
|
|
18
|
+
todos: number;
|
|
19
|
+
debugStatements: number;
|
|
20
|
+
syntaxIssues: string[];
|
|
21
|
+
lineCount: number;
|
|
22
|
+
}
|
|
23
|
+
export declare function startWatch(path?: string, options?: WatchOptions): Promise<void>;
|
|
24
|
+
export declare function stopWatch(): void;
|
|
25
|
+
/**
|
|
26
|
+
* Get the recent change log (last 20 file changes).
|
|
27
|
+
*/
|
|
28
|
+
export declare function getChangeLog(): WatchEvent[];
|
|
29
|
+
/**
|
|
30
|
+
* Clear the change log.
|
|
31
|
+
*/
|
|
32
|
+
export declare function clearChangeLog(): void;
|
|
33
|
+
/**
|
|
34
|
+
* Check whether the watcher is currently active.
|
|
35
|
+
*/
|
|
36
|
+
export declare function isWatching(): boolean;
|
|
37
|
+
//# sourceMappingURL=watch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watch.d.ts","sourceRoot":"","sources":["../src/watch.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,YAAY;IAC3B,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,mEAAmE;IACnE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,yDAAyD;IACzD,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;CACvC;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAA;IACzB,SAAS,EAAE,IAAI,CAAA;IACf,QAAQ,CAAC,EAAE,YAAY,CAAA;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,eAAe,EAAE,MAAM,CAAA;IACvB,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;CAClB;AAySD,wBAAsB,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAgGrF;AAED,wBAAgB,SAAS,IAAI,IAAI,CAahC;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,UAAU,EAAE,CAE3C;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAErC;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,OAAO,CAEpC"}
|