@astralyn/pi 0.86.0 → 0.87.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/CHANGELOG.md +45 -0
- package/dist/bundle/chunks/chunk-INDBRWNK.js +2 -0
- package/dist/bundle/chunks/{chunk-MSHHFVMD.js → chunk-RKLIHRPH.js} +58 -51
- package/dist/bundle/chunks/github-copilot.js +1 -1
- package/dist/bundle/chunks/{openai-completions-WJIA7NEB.js → openai-completions-JZCEEJ43.js} +1 -1
- package/dist/bundle/chunks/{virtual-modules-B4BILEXT.js → virtual-modules-CG7NJ5WO.js} +1 -1
- package/dist/bundle/cli.js +1 -1
- package/dist/bundle/index.js +1 -1
- package/dist/bundle/rpc-entry.js +1 -1
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +1 -0
- package/dist/cli/args.js.map +1 -1
- package/dist/cli/file-processor.d.ts +1 -1
- package/dist/cli/file-processor.d.ts.map +1 -1
- package/dist/cli/file-processor.js.map +1 -1
- package/dist/core/agent-session-runtime.js +1 -1
- package/dist/core/agent-session-runtime.js.map +1 -1
- package/dist/core/agent-session.d.ts +31 -4
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +395 -126
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/cache-warmer.d.ts +1 -0
- package/dist/core/cache-warmer.d.ts.map +1 -1
- package/dist/core/cache-warmer.js +15 -1
- package/dist/core/cache-warmer.js.map +1 -1
- package/dist/core/compaction/compaction.d.ts +3 -1
- package/dist/core/compaction/compaction.d.ts.map +1 -1
- package/dist/core/compaction/compaction.js +146 -48
- package/dist/core/compaction/compaction.js.map +1 -1
- package/dist/core/crash-log.d.ts +5 -0
- package/dist/core/crash-log.d.ts.map +1 -1
- package/dist/core/crash-log.js +68 -0
- package/dist/core/crash-log.js.map +1 -1
- package/dist/core/export-html/template.js +6 -1
- package/dist/core/extensions/index.d.ts +1 -1
- package/dist/core/extensions/index.d.ts.map +1 -1
- package/dist/core/extensions/index.js.map +1 -1
- package/dist/core/extensions/runner.d.ts +16 -3
- package/dist/core/extensions/runner.d.ts.map +1 -1
- package/dist/core/extensions/runner.js +110 -5
- package/dist/core/extensions/runner.js.map +1 -1
- package/dist/core/extensions/types.d.ts +77 -6
- package/dist/core/extensions/types.d.ts.map +1 -1
- package/dist/core/extensions/types.js.map +1 -1
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/model-config.d.ts +52 -0
- package/dist/core/model-config.d.ts.map +1 -1
- package/dist/core/model-config.js +16 -0
- package/dist/core/model-config.js.map +1 -1
- package/dist/core/model-resolver.d.ts.map +1 -1
- package/dist/core/model-resolver.js +1 -0
- package/dist/core/model-resolver.js.map +1 -1
- package/dist/core/prompt-templates.d.ts +6 -1
- package/dist/core/prompt-templates.d.ts.map +1 -1
- package/dist/core/prompt-templates.js +61 -35
- package/dist/core/prompt-templates.js.map +1 -1
- package/dist/core/provider-composer.d.ts +1 -0
- package/dist/core/provider-composer.d.ts.map +1 -1
- package/dist/core/provider-composer.js +19 -0
- package/dist/core/provider-composer.js.map +1 -1
- package/dist/core/resource-loader.d.ts.map +1 -1
- package/dist/core/resource-loader.js +6 -2
- package/dist/core/resource-loader.js.map +1 -1
- package/dist/core/sdk.d.ts.map +1 -1
- package/dist/core/sdk.js +3 -4
- package/dist/core/sdk.js.map +1 -1
- package/dist/core/session-manager.d.ts +36 -9
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +97 -7
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/tools/read.d.ts +4 -1
- package/dist/core/tools/read.d.ts.map +1 -1
- package/dist/core/tools/read.js +5 -1
- package/dist/core/tools/read.js.map +1 -1
- package/dist/extensions/btw/agent.d.ts.map +1 -1
- package/dist/extensions/btw/agent.js +8 -5
- package/dist/extensions/btw/agent.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +4 -3
- package/dist/main.js.map +1 -1
- package/dist/modes/interactive/bug-report.d.ts +2 -0
- package/dist/modes/interactive/bug-report.d.ts.map +1 -1
- package/dist/modes/interactive/bug-report.js +6 -5
- package/dist/modes/interactive/bug-report.js.map +1 -1
- package/dist/modes/interactive/components/extension-editor.d.ts +4 -1
- package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
- package/dist/modes/interactive/components/extension-editor.js +7 -2
- package/dist/modes/interactive/components/extension-editor.js.map +1 -1
- package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-selector.js +7 -0
- package/dist/modes/interactive/components/tree-selector.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +5 -1
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +74 -5
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/utils/clipboard-image.d.ts.map +1 -1
- package/dist/utils/clipboard-image.js +1 -12
- package/dist/utils/clipboard-image.js.map +1 -1
- package/dist/utils/clipboard.d.ts.map +1 -1
- package/dist/utils/clipboard.js +74 -20
- package/dist/utils/clipboard.js.map +1 -1
- package/dist/utils/mime.js +1 -1
- package/dist/utils/mime.js.map +1 -1
- package/dist/utils/tool-result-images.d.ts +3 -1
- package/dist/utils/tool-result-images.d.ts.map +1 -1
- package/dist/utils/tool-result-images.js +4 -1
- package/dist/utils/tool-result-images.js.map +1 -1
- package/dist/utils/wsl.d.ts +3 -0
- package/dist/utils/wsl.d.ts.map +1 -0
- package/dist/utils/wsl.js +15 -0
- package/dist/utils/wsl.js.map +1 -0
- package/docs/compaction.md +23 -4
- package/docs/extensions.md +72 -8
- package/docs/models.md +30 -1
- package/docs/providers.md +8 -0
- package/docs/sdk.md +14 -3
- package/docs/session-format.md +25 -4
- package/examples/plugins/pi-example-plugin/src/session.ts +3 -2
- package/npm-shrinkwrap.json +43 -43
- package/package.json +8 -8
- package/dist/bundle/chunks/chunk-M2YWW37K.js +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive-mode.d.ts","sourceRoot":"","sources":["../../../src/modes/interactive/interactive-mode.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"interactive-mode.d.ts","sourceRoot":"","sources":["../../../src/modes/interactive/interactive-mode.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,OAAO,EAEN,KAAK,YAAY,EAKjB,MAAM,8BAA8B,CAAC;AActC,OAAO,EAUN,KAAK,QAAQ,EAOb,MAAM,wBAAwB,CAAC;AAgBhC,OAAO,EAAE,KAAK,mBAAmB,EAAkC,MAAM,qCAAqC,CAAC;AAC/G,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,sCAAsC,CAAC;AAwC1F,OAAO,EAEN,cAAc,EAGd,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAgBpF,OAAO,EAAwB,KAAK,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAyE1F,OAAO,EAAE,oBAAoB,EAAE,6BAA6B,EAAE,MAAM,mBAAmB,CAAC;AAiFxF,wBAAgB,wBAAwB,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAe5G;AAoBD,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAatF;AAiED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACtC,gEAAgE;IAChE,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,wEAAwE;IACxE,kBAAkB,CAAC,EAAE,6BAA6B,EAAE,CAAC;IACrD,4DAA4D;IAC5D,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,qGAAqG;IACrG,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,qEAAqE;IACrE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,8CAA8C;IAC9C,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,4DAA4D;IAC5D,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,6DAA6D;IAC7D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,uBAAuB;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6DAA6D;IAC7D,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,yEAAyE;IACzE,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACpB;AAOD,qBAAa,eAAe;IAC3B,OAAO,CAAC,WAAW,CAAsB;IACzC,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,EAAE,CAAM;IAChB,OAAO,CAAC,qBAAqB,CAAuC;IACpE,OAAO,CAAC,wBAAwB,CAAY;IAC5C,OAAO,CAAC,aAAa,CAAY;IACjC,OAAO,CAAC,iBAAiB,CAAY;IACrC,OAAO,CAAC,oBAAoB,CAAoC;IAChE,OAAO,CAAC,oBAAoB,CAAwB;IACpD,OAAO,CAAC,wBAAwB,CAAY;IAC5C,OAAO,CAAC,eAAe,CAAY;IACnC,OAAO,CAAC,aAAa,CAAe;IACpC,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,sBAAsB,CAA4B;IAC1D,OAAO,CAAC,oBAAoB,CAAmC;IAC/D,OAAO,CAAC,4BAA4B,CAAqC;IACzE,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,eAAe,CAAY;IACnC,OAAO,CAAC,mBAAmB,CAAC,CAAS;IACrC,OAAO,CAAC,qBAAqB,CAAC,CAAa;IAC3C,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,eAAe,CAAY;IACnC,OAAO,CAAC,kBAAkB,CAAqB;IAE/C,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,eAAe,CAAC,CAAyB;IACjD,OAAO,CAAC,iBAAiB,CAAgB;IACzC,OAAO,CAAC,qBAAqB,CAA0C;IACvE,OAAO,CAAC,8BAA8B,CAAS;IAC/C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,cAAc,CAAiC;IACvD,OAAO,CAAC,cAAc,CAAQ;IAC9B,OAAO,CAAC,uBAAuB,CAAkD;IACjF,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAa;IACnD,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAiB;IAC5D,OAAO,CAAC,mBAAmB,CAAmC;IAE9D,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,iBAAiB,CAAiC;IAC1D,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,iCAAiC,CAAS;IAGlD,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,wBAAwB,CAAS;IAGzC,OAAO,CAAC,kBAAkB,CAAoD;IAC9E,OAAO,CAAC,QAAQ,CAAC,mCAAmC,CAAqB;IACzE,OAAO,CAAC,gBAAgB,CAA2C;IAGnE,OAAO,CAAC,YAAY,CAA6C;IAGjE,OAAO,CAAC,kBAAkB,CAAS;IAGnC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAGxC;IAGH,OAAO,CAAC,aAAa,CAA6B;IAGlD,OAAO,CAAC,WAAW,CAAC,CAAa;IACjC,OAAO,CAAC,qBAAqB,CAAyB;IAGtD,OAAO,CAAC,UAAU,CAAS;IAG3B,OAAO,CAAC,aAAa,CAAiD;IAGtE,OAAO,CAAC,qBAAqB,CAAgC;IAG7D,OAAO,CAAC,2BAA2B,CAAC,CAAa;IAGjD,OAAO,CAAC,kBAAkB,CAAC,CAAa;IAGxC,OAAO,CAAC,wBAAwB,CAAiC;IAGjE,OAAO,CAAC,iBAAiB,CAAS;IAElC,wFAAwF;IACxF,OAAO,CAAC,kBAAkB,CAAS;IAGnC,OAAO,CAAC,iBAAiB,CAAqD;IAC9E,OAAO,CAAC,cAAc,CAAkD;IACxE,OAAO,CAAC,eAAe,CAAmD;IAC1E,OAAO,CAAC,6BAA6B,CAAkC;IACvE,OAAO,CAAC,mCAAmC,CAGtC;IAGL,OAAO,CAAC,qBAAqB,CAAuD;IACpF,OAAO,CAAC,qBAAqB,CAAuD;IACpF,OAAO,CAAC,oBAAoB,CAAa;IACzC,OAAO,CAAC,oBAAoB,CAAa;IAGzC,OAAO,CAAC,YAAY,CAA6D;IAGjF,OAAO,CAAC,eAAe,CAAY;IAGnC,OAAO,CAAC,aAAa,CAAoC;IAGzD,OAAO,CAAC,YAAY,CAA6D;IAEjF,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAEhC;IACF,OAAO,CAAC,oBAAoB,CAAqB;IACjD,OAAO,CAAC,eAAe,CAA6B;IAGpD,OAAO,KAAK,OAAO,GAElB;IACD,OAAO,KAAK,KAAK,GAEhB;IACD,OAAO,KAAK,cAAc,GAEzB;IACD,OAAO,KAAK,eAAe,GAE1B;gBAEW,WAAW,EAAE,mBAAmB,EAAE,OAAO,GAAE,sBAA2B;IAmElF,OAAO,CAAC,wBAAwB;IAyBhC,OAAO,CAAC,6BAA6B;IAQrC,OAAO,CAAC,oCAAoC;IAe5C,OAAO,CAAC,8BAA8B;IAoGtC,OAAO,CAAC,yBAAyB;IAkBjC,OAAO,CAAC,0BAA0B;IA8BlC,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,aAAa;IAqDf,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA8J3B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;;OAGG;IACG,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;YAqHZ,sBAAsB;YAkBtB,sBAAsB;IA+CpC;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IA2B9B,OAAO,CAAC,sBAAsB;IAuB9B,OAAO,CAAC,4BAA4B;IAWpC,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,0BAA0B;IAMlC,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,wBAAwB;IAIhC;;OAEG;IACH,OAAO,CAAC,YAAY;IAqCpB,OAAO,CAAC,mBAAmB;IAU3B,OAAO,CAAC,4BAA4B;IAcpC,OAAO,CAAC,wBAAwB;IAqBhC,OAAO,CAAC,6BAA6B;IAOrC,OAAO,CAAC,kCAAkC;IA2B1C,OAAO,CAAC,yBAAyB;IA8BjC,OAAO,CAAC,oBAAoB;IA6B5B,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,gBAAgB;IAqCxB,OAAO,CAAC,iBAAiB;IAkCzB,OAAO,CAAC,qBAAqB;IAc7B,OAAO,CAAC,oBAAoB;IAU5B,OAAO,CAAC,iBAAiB;IAqDzB,OAAO,CAAC,mBAAmB;IAqN3B;;OAEG;YACW,4BAA4B;IA8E1C,OAAO,CAAC,+BAA+B;IAIvC,OAAO,CAAC,oBAAoB;YA4Bd,oBAAoB;YA2BpB,uBAAuB;IAerC,OAAO,CAAC,qBAAqB;IAa7B,8GAA8G;IAC9G,OAAO,CAAC,WAAW;IAenB,OAAO,CAAC,uBAAuB;IAK/B,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,yBAAyB;IASjC,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,yBAAyB;IAWjC;;OAEG;IACH;;;OAGG;IACH,OAAO,CAAC,2BAA2B;IAInC,OAAO,CAAC,4BAA4B;IAsBpC,OAAO,CAAC,4BAA4B;IAwBpC,OAAO,CAAC,uBAAuB;IAI/B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAoB/B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAK1B,OAAO,CAAC,+BAA+B;IAOvC,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,oBAAoB;IAqB5B,OAAO,CAAC,0BAA0B;IAelC,OAAO,CAAC,iBAAiB;IAazB,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,sBAAsB;IAa9B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA0C1B,OAAO,CAAC,qBAAqB;IAY7B,OAAO,CAAC,gBAAgB;IAmCxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAM;IAE9C;;OAEG;IACH,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,qBAAqB;IAuB7B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAwB1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAyC1B,OAAO,CAAC,iCAAiC;IAyBzC,OAAO,CAAC,qCAAqC;IAO7C,OAAO,CAAC,oCAAoC;IAK5C;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAejC,OAAO,CAAC,wBAAwB;IA8DhC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA8C7B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAS7B;;OAEG;YACW,oBAAoB;YAWpB,0BAA0B;IAQxC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAyC1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAS1B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA2B3B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAQ3B;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IA6EhC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAU3B,oGAAoG;YACtF,mBAAmB;IA+EjC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAsB1B,OAAO,CAAC,0BAA0B,CAAC,CAAa;IAEhD,OAAO,CAAC,4BAA4B;IAgBpC,OAAO,CAAC,gBAAgB;YAwEV,qBAAqB;YAcrB,oBAAoB;IAyBlC,OAAO,CAAC,mBAAmB;IAK3B,OAAO,CAAC,wBAAwB;IAIhC,OAAO,CAAC,oBAAoB;IAa5B,OAAO,CAAC,qBAAqB;YAoBf,kBAAkB;IAwMhC,OAAO,CAAC,gBAAgB;YAMV,WAAW;IAyWzB,+CAA+C;IAC/C,OAAO,CAAC,kBAAkB;IAS1B,qDAAqD;IACrD,OAAO,CAAC,qBAAqB;IAa7B;;;;;OAKG;IACH,OAAO,CAAC,UAAU;IAoBlB,OAAO,CAAC,oBAAoB;IAsB5B,OAAO,CAAC,gBAAgB;IA6GxB,OAAO,CAAC,kBAAkB;IAiF1B;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAiB5B,OAAO,CAAC,oBAAoB;IAM5B;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAa/B,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAgBzC,OAAO,CAAC,2BAA2B;IA0BnC;;;;OAIG;IACH,OAAO,CAAC,wBAAwB;IAQhC,OAAO,CAAC,kBAAkB;IAgB1B,qBAAqB,IAAI,IAAI;IAiB7B,OAAO,CAAC,iCAAiC;IAoBnC,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAcrC,OAAO,CAAC,uBAAuB;IAS/B,OAAO,CAAC,WAAW;IAUnB,OAAO,CAAC,WAAW;IAKnB;;;;OAIG;IACH,OAAO,CAAC,cAAc,CAAS;YAEjB,QAAQ;IA0CtB,OAAO,CAAC,qBAAqB;IAS7B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,aAAa;IAwBrB;;OAEG;YACW,sBAAsB;IAKpC,OAAO,CAAC,sBAAsB;IAwC9B,OAAO,CAAC,wBAAwB;IAOhC,OAAO,CAAC,WAAW;YAqCL,cAAc;IAO5B,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,uBAAuB;IAW/B,OAAO,CAAC,kBAAkB;YAWZ,UAAU;IAmBxB,OAAO,CAAC,yBAAyB;IAIjC,OAAO,CAAC,gBAAgB;IAkBxB,kFAAkF;IAClF,OAAO,CAAC,6BAA6B;IASrC,OAAO,CAAC,6BAA6B;YAOvB,wBAAwB;IAsBtC,WAAW,IAAI,IAAI;IAKnB,SAAS,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAMrC,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAMzC,0BAA0B,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;IAyB1D,6BAA6B,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IAkBvD;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAa5B;;;OAGG;IACH,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,4BAA4B;IAmBpC,OAAO,CAAC,6BAA6B;IAqBrC,OAAO,CAAC,sBAAsB;IAQ9B,OAAO,CAAC,kBAAkB;YAUZ,oBAAoB;IA+ElC,6DAA6D;IAC7D,OAAO,CAAC,0BAA0B;IAYlC,OAAO,CAAC,qBAAqB;IAO7B;;;OAGG;IACH,OAAO,CAAC,YAAY;IA+BpB,OAAO,CAAC,oBAAoB;IAgP5B,OAAO,CAAC,qBAAqB;IAiB7B,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,oBAAoB;YAqBd,kBAAkB;YAwBlB,mBAAmB;IAkCjC,0GAA0G;IAC1G,OAAO,CAAC,4BAA4B;YAStB,uCAAuC;IA8BrD,OAAO,CAAC,wCAAwC;IA0BhD,OAAO,CAAC,iBAAiB;IAyBzB,OAAO,CAAC,iBAAiB;IAqCzB,OAAO,CAAC,kBAAkB;IA0H1B,OAAO,CAAC,uBAAuB;YAsCjB,kBAAkB;IAqBhC,OAAO,CAAC,gBAAgB;IAqJxB,OAAO,CAAC,mBAAmB;YA2Cb,mBAAmB;IAqCjC,OAAO,CAAC,uBAAuB;YAgCjB,wBAAwB;IAWtC,OAAO,CAAC,wBAAwB;YAalB,kBAAkB;YAuBlB,kBAAkB;IAUhC,OAAO,CAAC,yBAAyB;IA0DjC,OAAO,CAAC,yBAAyB;YA2CnB,iBAAiB;YA4DjB,8BAA8B;IAiG5C,OAAO,CAAC,qBAAqB;YA2Bf,qBAAqB;IAiDnC,OAAO,CAAC,cAAc;YAiCR,cAAc;IAwB5B,OAAO,CAAC,gBAAgB;YAaV,aAAa;YAYb,eAAe;YAoCf,mBAAmB;YA0FnB,mBAAmB;IAkBjC,OAAO,CAAC,sBAAsB;YA6BhB,mBAAmB;YA4CnB,kBAAkB;YAWlB,gBAAgB;YAehB,iBAAiB;IA+B/B,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,oBAAoB;IAyE5B,OAAO,CAAC,sBAAsB;IAqB9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAIxB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,oBAAoB;YAqHd,kBAAkB;IAehC,OAAO,CAAC,kBAAkB;IAiC1B,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,qBAAqB;YAMf,iBAAiB;YA6FjB,oBAAoB;IAUlC,IAAI,CAAC,oBAAoB,uBAAiD,GAAG,IAAI;CAwBjF"}
|
|
@@ -6,6 +6,7 @@ import * as crypto from "node:crypto";
|
|
|
6
6
|
import * as fs from "node:fs";
|
|
7
7
|
import * as os from "node:os";
|
|
8
8
|
import * as path from "node:path";
|
|
9
|
+
import { isRetryableAssistantError, } from "@earendil-works/pi-ai/compat";
|
|
9
10
|
import * as TuiLayouts from "@earendil-works/pi-tui";
|
|
10
11
|
import { CombinedAutocompleteProvider, Container, fuzzyFilter, Markdown, matchesKey, Spacer, setCapabilityOverrides, setKeybindings, Text, TruncatedText, TuiAltScreen, TuiMainScreen, visibleWidth, } from "@earendil-works/pi-tui";
|
|
11
12
|
import chalk from "chalk";
|
|
@@ -15,12 +16,12 @@ import { parseSkillBlock } from "../../core/agent-session.js";
|
|
|
15
16
|
import { SessionImportFileNotFoundError } from "../../core/agent-session-runtime.js";
|
|
16
17
|
import { CACHE_TTL_MS, collectCacheMisses, computeCacheWaste, detectCacheMiss, } from "../../core/cache-stats.js";
|
|
17
18
|
import { formatCacheWarmingStatus, formatCacheWarmingUsage } from "../../core/cache-warmer.js";
|
|
18
|
-
import { recordCrash, takeUnnotifiedCrash } from "../../core/crash-log.js";
|
|
19
|
+
import { findExtensionStackMatches, recordCrash, takeUnnotifiedCrash } from "../../core/crash-log.js";
|
|
19
20
|
import { DEFAULT_THINKING_LEVEL, THINKING_LEVEL_OPTIONS } from "../../core/defaults.js";
|
|
20
21
|
import { FooterDataProvider } from "../../core/footer-data-provider.js";
|
|
21
22
|
import { configureHttpDispatcher, formatHttpIdleTimeoutMs } from "../../core/http-dispatcher.js";
|
|
22
23
|
import { KeybindingsManager } from "../../core/keybindings.js";
|
|
23
|
-
import { createCompactionSummaryMessage } from "../../core/messages.js";
|
|
24
|
+
import { createCompactionSummaryMessage, createCustomMessage } from "../../core/messages.js";
|
|
24
25
|
import { defaultModelPerProvider, findExactModelReferenceMatch, resolveModelScopeFromModels, } from "../../core/model-resolver.js";
|
|
25
26
|
import { CredentialSynchronizationError } from "../../core/model-runtime.js";
|
|
26
27
|
import { DefaultPackageManager } from "../../core/package-manager.js";
|
|
@@ -118,6 +119,22 @@ function isDeadTerminalError(error) {
|
|
|
118
119
|
const code = error.code;
|
|
119
120
|
return code !== undefined && DEAD_TERMINAL_ERROR_CODES.has(code);
|
|
120
121
|
}
|
|
122
|
+
export function formatCrashExtensionHint(extensionMatches) {
|
|
123
|
+
const matches = Array.isArray(extensionMatches)
|
|
124
|
+
? extensionMatches.filter((match) => typeof match === "string" && match.length > 0)
|
|
125
|
+
: [];
|
|
126
|
+
if (matches.length === 0)
|
|
127
|
+
return undefined;
|
|
128
|
+
const quoted = matches.map((match) => `\`${match}\``);
|
|
129
|
+
const labels = quoted.length === 1
|
|
130
|
+
? quoted[0]
|
|
131
|
+
: quoted.length === 2
|
|
132
|
+
? quoted.join(" and ")
|
|
133
|
+
: `${quoted.slice(0, -1).join(", ")}, and ${quoted[quoted.length - 1]}`;
|
|
134
|
+
const noun = matches.length === 1 ? "extension" : "extensions";
|
|
135
|
+
const pronoun = matches.length === 1 ? "it" : "them";
|
|
136
|
+
return `A stack frame came from loaded ${noun} ${labels}, which may be involved. Try disabling ${pronoun} with \`${APP_NAME} config\`, or run \`${APP_NAME} -ne\` to confirm.`;
|
|
137
|
+
}
|
|
121
138
|
const ANTHROPIC_SUBSCRIPTION_AUTH_WARNING = "Anthropic subscription auth is active. Third-party harness usage draws from extra usage and is billed per token, not your Claude plan limits. Manage extra usage at https://claude.ai/settings/usage. Disable this warning in /settings.";
|
|
122
139
|
function isAnthropicSubscriptionAuthKey(apiKey) {
|
|
123
140
|
return typeof apiKey === "string" && apiKey.startsWith("sk-ant-oat");
|
|
@@ -232,6 +249,7 @@ export class InteractiveMode {
|
|
|
232
249
|
this.managedToolStatusStarted = false;
|
|
233
250
|
// Streaming message tracking
|
|
234
251
|
this.streamingComponent = undefined;
|
|
252
|
+
this.entriesRenderedByBoundaryCompaction = new Set();
|
|
235
253
|
this.streamingMessage = undefined;
|
|
236
254
|
// Tool execution tracking: toolCallId -> component
|
|
237
255
|
this.pendingTools = new Map();
|
|
@@ -1506,6 +1524,10 @@ export class InteractiveMode {
|
|
|
1506
1524
|
async handleFatalRuntimeError(prefix, error) {
|
|
1507
1525
|
const message = error instanceof Error ? error.message : String(error);
|
|
1508
1526
|
this.showError(`${prefix}: ${message}`);
|
|
1527
|
+
const extensionHint = this.getCrashExtensionHint(error);
|
|
1528
|
+
if (extensionHint) {
|
|
1529
|
+
this.chatContainer.addChild(new Text(theme.fg("warning", extensionHint), this.outputPad, 0));
|
|
1530
|
+
}
|
|
1509
1531
|
if (this.recordCrash("fatal_error", error)) {
|
|
1510
1532
|
this.chatContainer.addChild(new Text(theme.fg("muted", this.crashReportInstructions()), this.outputPad, 0));
|
|
1511
1533
|
}
|
|
@@ -1513,6 +1535,14 @@ export class InteractiveMode {
|
|
|
1513
1535
|
this.stop("transcript");
|
|
1514
1536
|
process.exit(1);
|
|
1515
1537
|
}
|
|
1538
|
+
getCrashExtensionHint(error) {
|
|
1539
|
+
try {
|
|
1540
|
+
return formatCrashExtensionHint(findExtensionStackMatches(error instanceof Error ? error.stack : undefined, this.session.resourceLoader.getExtensions().extensions));
|
|
1541
|
+
}
|
|
1542
|
+
catch {
|
|
1543
|
+
return undefined;
|
|
1544
|
+
}
|
|
1545
|
+
}
|
|
1516
1546
|
/** Persist a crash so the next start can point the user at `/bug`. Returns false when nothing was written. */
|
|
1517
1547
|
recordCrash(kind, error) {
|
|
1518
1548
|
try {
|
|
@@ -1538,6 +1568,13 @@ export class InteractiveMode {
|
|
|
1538
1568
|
this.chatContainer.addChild(new Text(theme.fg("muted", `If this looks like a ${APP_NAME} bug, /bug sends a report to the developers.`), this.outputPad, 0));
|
|
1539
1569
|
this.ui.requestRender();
|
|
1540
1570
|
}
|
|
1571
|
+
maybeSuggestBugReport(message) {
|
|
1572
|
+
if (message.stopReason !== "error" || isRetryableAssistantError(message))
|
|
1573
|
+
return;
|
|
1574
|
+
if (/\b(?:abort(?:ed)?|cancel(?:l?ed)?)\b/i.test(message.errorMessage ?? ""))
|
|
1575
|
+
return;
|
|
1576
|
+
this.suggestBugReport();
|
|
1577
|
+
}
|
|
1541
1578
|
disposeChatToolComponents() {
|
|
1542
1579
|
for (const child of this.chatContainer.children) {
|
|
1543
1580
|
const disposable = child;
|
|
@@ -2698,6 +2735,8 @@ export class InteractiveMode {
|
|
|
2698
2735
|
this.ui.requestRender();
|
|
2699
2736
|
break;
|
|
2700
2737
|
case "entry_appended":
|
|
2738
|
+
if (this.entriesRenderedByBoundaryCompaction.delete(event.entry.id))
|
|
2739
|
+
break;
|
|
2701
2740
|
if (event.entry.type === "custom") {
|
|
2702
2741
|
this.addCustomEntryToChat(event.entry);
|
|
2703
2742
|
this.ui.requestRender();
|
|
@@ -2706,6 +2745,34 @@ export class InteractiveMode {
|
|
|
2706
2745
|
this.addCacheWarmingUsage(event.entry);
|
|
2707
2746
|
this.ui.requestRender();
|
|
2708
2747
|
}
|
|
2748
|
+
else if (event.entry.type === "custom_message" && event.entry.display) {
|
|
2749
|
+
this.addMessageToChat(createCustomMessage(event.entry.customType, event.entry.content, event.entry.display, event.entry.details, event.entry.timestamp));
|
|
2750
|
+
this.ui.requestRender();
|
|
2751
|
+
}
|
|
2752
|
+
else if (event.entry.type === "compaction") {
|
|
2753
|
+
const entries = this.sessionManager.buildContextEntries();
|
|
2754
|
+
if (entries[0]?.id !== event.entry.id)
|
|
2755
|
+
break;
|
|
2756
|
+
this.chatContainer.clear();
|
|
2757
|
+
const branch = this.sessionManager.getBranch();
|
|
2758
|
+
const compactionIndex = branch.findIndex((entry) => entry.id === event.entry.id);
|
|
2759
|
+
const entriesAfterCompaction = new Set(branch.slice(compactionIndex + 1).map((entry) => entry.id));
|
|
2760
|
+
const retainedEntries = entries.slice(1);
|
|
2761
|
+
this.renderSessionEntries(retainedEntries.filter((entry) => !entriesAfterCompaction.has(entry.id)));
|
|
2762
|
+
this.addMessageToChat(createCompactionSummaryMessage(event.entry.summary, event.entry.tokensBefore, event.entry.timestamp));
|
|
2763
|
+
if (event.entry.usage) {
|
|
2764
|
+
this.addCompactionCostNotice({
|
|
2765
|
+
type: "compaction_cost",
|
|
2766
|
+
kind: "compaction",
|
|
2767
|
+
usage: event.entry.usage,
|
|
2768
|
+
});
|
|
2769
|
+
}
|
|
2770
|
+
this.renderSessionEntries(retainedEntries.filter((entry) => entriesAfterCompaction.has(entry.id)));
|
|
2771
|
+
for (const entryId of entriesAfterCompaction)
|
|
2772
|
+
this.entriesRenderedByBoundaryCompaction.add(entryId);
|
|
2773
|
+
this.footer.invalidate();
|
|
2774
|
+
this.ui.requestRender();
|
|
2775
|
+
}
|
|
2709
2776
|
break;
|
|
2710
2777
|
case "session_info_changed":
|
|
2711
2778
|
this.updateTerminalTitle();
|
|
@@ -2782,8 +2849,7 @@ export class InteractiveMode {
|
|
|
2782
2849
|
});
|
|
2783
2850
|
}
|
|
2784
2851
|
this.pendingTools.clear();
|
|
2785
|
-
|
|
2786
|
-
this.suggestBugReport();
|
|
2852
|
+
this.maybeSuggestBugReport(this.streamingMessage);
|
|
2787
2853
|
}
|
|
2788
2854
|
else {
|
|
2789
2855
|
// Args are now complete - trigger diff computation for edit tools
|
|
@@ -2927,7 +2993,6 @@ export class InteractiveMode {
|
|
|
2927
2993
|
// Show error only on final failure (success shows normal response)
|
|
2928
2994
|
if (!event.success) {
|
|
2929
2995
|
this.showError(`Retry failed after ${event.attempt} attempts: ${event.finalError || "Unknown error"}`);
|
|
2930
|
-
this.suggestBugReport();
|
|
2931
2996
|
}
|
|
2932
2997
|
this.ui.requestRender();
|
|
2933
2998
|
break;
|
|
@@ -3413,6 +3478,9 @@ export class InteractiveMode {
|
|
|
3413
3478
|
catch { }
|
|
3414
3479
|
console.error(`${APP_NAME} exiting due to uncaughtException:`);
|
|
3415
3480
|
console.error(error);
|
|
3481
|
+
const extensionHint = this.getCrashExtensionHint(error);
|
|
3482
|
+
if (extensionHint)
|
|
3483
|
+
console.error(`\n${extensionHint}`);
|
|
3416
3484
|
if (this.recordCrash("uncaught_exception", error)) {
|
|
3417
3485
|
console.error(`\n${this.crashReportInstructions()}`);
|
|
3418
3486
|
}
|
|
@@ -5282,6 +5350,7 @@ export class InteractiveMode {
|
|
|
5282
5350
|
ui: this.ui,
|
|
5283
5351
|
editorContainer: this.editorContainer,
|
|
5284
5352
|
editor: this.editor,
|
|
5353
|
+
keybindings: this.keybindings,
|
|
5285
5354
|
showStatus: (message) => this.showStatus(message),
|
|
5286
5355
|
showError: (message) => this.showError(message),
|
|
5287
5356
|
}, hint);
|