@eminent337/aery 0.1.59 → 0.1.60
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 +0 -0
- package/README.md +0 -0
- package/dist/bun/cli.d.ts +3 -0
- package/dist/bun/cli.d.ts.map +1 -0
- package/dist/bun/cli.js +8 -0
- package/dist/bun/cli.js.map +1 -0
- package/dist/bun/register-bedrock.d.ts +2 -0
- package/dist/bun/register-bedrock.d.ts.map +1 -0
- package/dist/bun/register-bedrock.js +4 -0
- package/dist/bun/register-bedrock.js.map +1 -0
- package/dist/bun/restore-sandbox-env.d.ts +13 -0
- package/dist/bun/restore-sandbox-env.d.ts.map +1 -0
- package/dist/bun/restore-sandbox-env.js +32 -0
- package/dist/bun/restore-sandbox-env.js.map +1 -0
- package/dist/cli/args.d.ts +53 -0
- package/dist/cli/args.d.ts.map +1 -0
- package/dist/cli/args.js +329 -0
- package/dist/cli/args.js.map +1 -0
- package/dist/cli/config-selector.d.ts +14 -0
- package/dist/cli/config-selector.d.ts.map +1 -0
- package/dist/cli/config-selector.js +31 -0
- package/dist/cli/config-selector.js.map +1 -0
- package/dist/cli/file-processor.d.ts +15 -0
- package/dist/cli/file-processor.d.ts.map +1 -0
- package/dist/cli/file-processor.js +83 -0
- package/dist/cli/file-processor.js.map +1 -0
- package/dist/cli/initial-message.d.ts +18 -0
- package/dist/cli/initial-message.d.ts.map +1 -0
- package/dist/cli/initial-message.js +22 -0
- package/dist/cli/initial-message.js.map +1 -0
- package/dist/cli/list-models.d.ts +9 -0
- package/dist/cli/list-models.d.ts.map +1 -0
- package/dist/cli/list-models.js +98 -0
- package/dist/cli/list-models.js.map +1 -0
- package/dist/cli/session-picker.d.ts +9 -0
- package/dist/cli/session-picker.d.ts.map +1 -0
- package/dist/cli/session-picker.js +35 -0
- package/dist/cli/session-picker.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +19 -0
- package/dist/cli.js.map +1 -0
- package/dist/config.d.ts +86 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +332 -0
- package/dist/config.js.map +1 -0
- package/dist/core/agent-session-runtime.d.ts +117 -0
- package/dist/core/agent-session-runtime.d.ts.map +1 -0
- package/dist/core/agent-session-runtime.js +300 -0
- package/dist/core/agent-session-runtime.js.map +1 -0
- package/dist/core/agent-session-services.d.ts +86 -0
- package/dist/core/agent-session-services.d.ts.map +1 -0
- package/dist/core/agent-session-services.js +117 -0
- package/dist/core/agent-session-services.js.map +1 -0
- package/dist/core/agent-session.d.ts +595 -0
- package/dist/core/agent-session.d.ts.map +1 -0
- package/dist/core/agent-session.js +2520 -0
- package/dist/core/agent-session.js.map +1 -0
- package/dist/core/auth-guidance.d.ts +5 -0
- package/dist/core/auth-guidance.d.ts.map +1 -0
- package/dist/core/auth-guidance.js +21 -0
- package/dist/core/auth-guidance.js.map +1 -0
- package/dist/core/auth-storage.d.ts +141 -0
- package/dist/core/auth-storage.d.ts.map +1 -0
- package/dist/core/auth-storage.js +441 -0
- package/dist/core/auth-storage.js.map +1 -0
- package/dist/core/bash-executor.d.ts +32 -0
- package/dist/core/bash-executor.d.ts.map +1 -0
- package/dist/core/bash-executor.js +111 -0
- package/dist/core/bash-executor.js.map +1 -0
- package/dist/core/compaction/branch-summarization.d.ts +88 -0
- package/dist/core/compaction/branch-summarization.d.ts.map +1 -0
- package/dist/core/compaction/branch-summarization.js +243 -0
- package/dist/core/compaction/branch-summarization.js.map +1 -0
- package/dist/core/compaction/compaction.d.ts +121 -0
- package/dist/core/compaction/compaction.d.ts.map +1 -0
- package/dist/core/compaction/compaction.js +615 -0
- package/dist/core/compaction/compaction.js.map +1 -0
- package/dist/core/compaction/index.d.ts +7 -0
- package/dist/core/compaction/index.d.ts.map +1 -0
- package/dist/core/compaction/index.js +7 -0
- package/dist/core/compaction/index.js.map +1 -0
- package/dist/core/compaction/utils.d.ts +38 -0
- package/dist/core/compaction/utils.d.ts.map +1 -0
- package/dist/core/compaction/utils.js +153 -0
- package/dist/core/compaction/utils.js.map +1 -0
- package/dist/core/defaults.d.ts +3 -0
- package/dist/core/defaults.d.ts.map +1 -0
- package/dist/core/defaults.js +2 -0
- package/dist/core/defaults.js.map +1 -0
- package/dist/core/diagnostics.d.ts +15 -0
- package/dist/core/diagnostics.d.ts.map +1 -0
- package/dist/core/diagnostics.js +2 -0
- package/dist/core/diagnostics.js.map +1 -0
- package/dist/core/event-bus.d.ts +9 -0
- package/dist/core/event-bus.d.ts.map +1 -0
- package/dist/core/event-bus.js +25 -0
- package/dist/core/event-bus.js.map +1 -0
- package/dist/core/exec.d.ts +29 -0
- package/dist/core/exec.d.ts.map +1 -0
- package/dist/core/exec.js +75 -0
- package/dist/core/exec.js.map +1 -0
- package/dist/core/export-html/ansi-to-html.d.ts +22 -0
- package/dist/core/export-html/ansi-to-html.d.ts.map +1 -0
- package/dist/core/export-html/ansi-to-html.js +249 -0
- package/dist/core/export-html/ansi-to-html.js.map +1 -0
- package/dist/core/export-html/index.d.ts +37 -0
- package/dist/core/export-html/index.d.ts.map +1 -0
- package/dist/core/export-html/index.js +224 -0
- package/dist/core/export-html/index.js.map +1 -0
- package/dist/core/export-html/template.css +1022 -0
- package/dist/core/export-html/template.html +55 -0
- package/dist/core/export-html/template.js +1770 -0
- package/dist/core/export-html/tool-renderer.d.ts +34 -0
- package/dist/core/export-html/tool-renderer.d.ts.map +1 -0
- package/dist/core/export-html/tool-renderer.js +108 -0
- package/dist/core/export-html/tool-renderer.js.map +1 -0
- package/dist/core/export-html/vendor/highlight.min.js +1213 -0
- package/dist/core/export-html/vendor/marked.min.js +6 -0
- package/dist/core/extensions/index.d.ts +12 -0
- package/dist/core/extensions/index.d.ts.map +1 -0
- package/dist/core/extensions/index.js +9 -0
- package/dist/core/extensions/index.js.map +1 -0
- package/dist/core/extensions/loader.d.ts +25 -0
- package/dist/core/extensions/loader.d.ts.map +1 -0
- package/dist/core/extensions/loader.js +476 -0
- package/dist/core/extensions/loader.js.map +1 -0
- package/dist/core/extensions/runner.d.ts +158 -0
- package/dist/core/extensions/runner.d.ts.map +1 -0
- package/dist/core/extensions/runner.js +784 -0
- package/dist/core/extensions/runner.js.map +1 -0
- package/dist/core/extensions/types.d.ts +1153 -0
- package/dist/core/extensions/types.d.ts.map +1 -0
- package/dist/core/extensions/types.js +45 -0
- package/dist/core/extensions/types.js.map +1 -0
- package/dist/core/extensions/wrapper.d.ts +20 -0
- package/dist/core/extensions/wrapper.d.ts.map +1 -0
- package/dist/core/extensions/wrapper.js +22 -0
- package/dist/core/extensions/wrapper.js.map +1 -0
- package/dist/core/footer-data-provider.d.ts +52 -0
- package/dist/core/footer-data-provider.d.ts.map +1 -0
- package/dist/core/footer-data-provider.js +310 -0
- package/dist/core/footer-data-provider.js.map +1 -0
- package/dist/core/index.d.ts +12 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +12 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/keybindings.d.ts +353 -0
- package/dist/core/keybindings.d.ts.map +1 -0
- package/dist/core/keybindings.js +295 -0
- package/dist/core/keybindings.js.map +1 -0
- package/dist/core/messages.d.ts +77 -0
- package/dist/core/messages.d.ts.map +1 -0
- package/dist/core/messages.js +123 -0
- package/dist/core/messages.js.map +1 -0
- package/dist/core/model-registry.d.ts +144 -0
- package/dist/core/model-registry.d.ts.map +1 -0
- package/dist/core/model-registry.js +699 -0
- package/dist/core/model-registry.js.map +1 -0
- package/dist/core/model-resolver.d.ts +110 -0
- package/dist/core/model-resolver.d.ts.map +1 -0
- package/dist/core/model-resolver.js +489 -0
- package/dist/core/model-resolver.js.map +1 -0
- package/dist/core/output-guard.d.ts +6 -0
- package/dist/core/output-guard.d.ts.map +1 -0
- package/dist/core/output-guard.js +59 -0
- package/dist/core/output-guard.js.map +1 -0
- package/dist/core/package-manager.d.ts +199 -0
- package/dist/core/package-manager.d.ts.map +1 -0
- package/dist/core/package-manager.js +1973 -0
- package/dist/core/package-manager.js.map +1 -0
- package/dist/core/prompt-templates.d.ts +52 -0
- package/dist/core/prompt-templates.d.ts.map +1 -0
- package/dist/core/prompt-templates.js +250 -0
- package/dist/core/prompt-templates.js.map +1 -0
- package/dist/core/resolve-config-value.d.ts +23 -0
- package/dist/core/resolve-config-value.d.ts.map +1 -0
- package/dist/core/resolve-config-value.js +126 -0
- package/dist/core/resolve-config-value.js.map +1 -0
- package/dist/core/resource-loader.d.ts +194 -0
- package/dist/core/resource-loader.d.ts.map +1 -0
- package/dist/core/resource-loader.js +727 -0
- package/dist/core/resource-loader.js.map +1 -0
- package/dist/core/sdk.d.ts +107 -0
- package/dist/core/sdk.d.ts.map +1 -0
- package/dist/core/sdk.js +274 -0
- package/dist/core/sdk.js.map +1 -0
- package/dist/core/session-cwd.d.ts +19 -0
- package/dist/core/session-cwd.d.ts.map +1 -0
- package/dist/core/session-cwd.js +38 -0
- package/dist/core/session-cwd.js.map +1 -0
- package/dist/core/session-manager.d.ts +333 -0
- package/dist/core/session-manager.d.ts.map +1 -0
- package/dist/core/session-manager.js +1109 -0
- package/dist/core/session-manager.js.map +1 -0
- package/dist/core/settings-manager.d.ts +261 -0
- package/dist/core/settings-manager.d.ts.map +1 -0
- package/dist/core/settings-manager.js +782 -0
- package/dist/core/settings-manager.js.map +1 -0
- package/dist/core/skills.d.ts +60 -0
- package/dist/core/skills.d.ts.map +1 -0
- package/dist/core/skills.js +404 -0
- package/dist/core/skills.js.map +1 -0
- package/dist/core/slash-commands.d.ts +14 -0
- package/dist/core/slash-commands.d.ts.map +1 -0
- package/dist/core/slash-commands.js +25 -0
- package/dist/core/slash-commands.js.map +1 -0
- package/dist/core/source-info.d.ts +18 -0
- package/dist/core/source-info.d.ts.map +1 -0
- package/dist/core/source-info.js +19 -0
- package/dist/core/source-info.js.map +1 -0
- package/dist/core/system-prompt.d.ts +28 -0
- package/dist/core/system-prompt.d.ts.map +1 -0
- package/dist/core/system-prompt.js +120 -0
- package/dist/core/system-prompt.js.map +1 -0
- package/dist/core/telemetry.d.ts +3 -0
- package/dist/core/telemetry.d.ts.map +1 -0
- package/dist/core/telemetry.js +9 -0
- package/dist/core/telemetry.js.map +1 -0
- package/dist/core/timings.d.ts +8 -0
- package/dist/core/timings.d.ts.map +1 -0
- package/dist/core/timings.js +31 -0
- package/dist/core/timings.js.map +1 -0
- package/dist/core/tools/bash.d.ts +68 -0
- package/dist/core/tools/bash.d.ts.map +1 -0
- package/dist/core/tools/bash.js +355 -0
- package/dist/core/tools/bash.js.map +1 -0
- package/dist/core/tools/edit-diff.d.ts +85 -0
- package/dist/core/tools/edit-diff.d.ts.map +1 -0
- package/dist/core/tools/edit-diff.js +337 -0
- package/dist/core/tools/edit-diff.js.map +1 -0
- package/dist/core/tools/edit.d.ts +49 -0
- package/dist/core/tools/edit.d.ts.map +1 -0
- package/dist/core/tools/edit.js +323 -0
- package/dist/core/tools/edit.js.map +1 -0
- package/dist/core/tools/file-mutation-queue.d.ts +6 -0
- package/dist/core/tools/file-mutation-queue.d.ts.map +1 -0
- package/dist/core/tools/file-mutation-queue.js +37 -0
- package/dist/core/tools/file-mutation-queue.js.map +1 -0
- package/dist/core/tools/find.d.ts +35 -0
- package/dist/core/tools/find.d.ts.map +1 -0
- package/dist/core/tools/find.js +298 -0
- package/dist/core/tools/find.js.map +1 -0
- package/dist/core/tools/grep.d.ts +37 -0
- package/dist/core/tools/grep.d.ts.map +1 -0
- package/dist/core/tools/grep.js +304 -0
- package/dist/core/tools/grep.js.map +1 -0
- package/dist/core/tools/index.d.ts +40 -0
- package/dist/core/tools/index.d.ts.map +1 -0
- package/dist/core/tools/index.js +112 -0
- package/dist/core/tools/index.js.map +1 -0
- package/dist/core/tools/ls.d.ts +37 -0
- package/dist/core/tools/ls.d.ts.map +1 -0
- package/dist/core/tools/ls.js +169 -0
- package/dist/core/tools/ls.js.map +1 -0
- package/dist/core/tools/path-utils.d.ts +8 -0
- package/dist/core/tools/path-utils.d.ts.map +1 -0
- package/dist/core/tools/path-utils.js +81 -0
- package/dist/core/tools/path-utils.js.map +1 -0
- package/dist/core/tools/read.d.ts +35 -0
- package/dist/core/tools/read.d.ts.map +1 -0
- package/dist/core/tools/read.js +232 -0
- package/dist/core/tools/read.js.map +1 -0
- package/dist/core/tools/render-utils.d.ts +21 -0
- package/dist/core/tools/render-utils.d.ts.map +1 -0
- package/dist/core/tools/render-utils.js +49 -0
- package/dist/core/tools/render-utils.js.map +1 -0
- package/dist/core/tools/tool-definition-wrapper.d.ts +14 -0
- package/dist/core/tools/tool-definition-wrapper.d.ts.map +1 -0
- package/dist/core/tools/tool-definition-wrapper.js +34 -0
- package/dist/core/tools/tool-definition-wrapper.js.map +1 -0
- package/dist/core/tools/truncate.d.ts +70 -0
- package/dist/core/tools/truncate.d.ts.map +1 -0
- package/dist/core/tools/truncate.js +205 -0
- package/dist/core/tools/truncate.js.map +1 -0
- package/dist/core/tools/write.d.ts +26 -0
- package/dist/core/tools/write.d.ts.map +1 -0
- package/dist/core/tools/write.js +213 -0
- package/dist/core/tools/write.js.map +1 -0
- package/dist/index.d.ts +28 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +41 -0
- package/dist/index.js.map +1 -0
- package/dist/main.d.ts +12 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +589 -0
- package/dist/main.js.map +1 -0
- package/dist/migrations.d.ts +33 -0
- package/dist/migrations.d.ts.map +1 -0
- package/dist/migrations.js +281 -0
- package/dist/migrations.js.map +1 -0
- package/dist/modes/index.d.ts +9 -0
- package/dist/modes/index.d.ts.map +1 -0
- package/dist/modes/index.js +8 -0
- package/dist/modes/index.js.map +1 -0
- package/dist/modes/interactive/assets/clankolas.png +0 -0
- package/dist/modes/interactive/components/aery-splash.d.ts +18 -0
- package/dist/modes/interactive/components/aery-splash.d.ts.map +1 -0
- package/dist/modes/interactive/components/aery-splash.js +60 -0
- package/dist/modes/interactive/components/aery-splash.js.map +1 -0
- package/dist/modes/interactive/components/armin.d.ts +34 -0
- package/dist/modes/interactive/components/armin.d.ts.map +1 -0
- package/dist/modes/interactive/components/armin.js +333 -0
- package/dist/modes/interactive/components/armin.js.map +1 -0
- package/dist/modes/interactive/components/assistant-message.d.ts +20 -0
- package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -0
- package/dist/modes/interactive/components/assistant-message.js +121 -0
- package/dist/modes/interactive/components/assistant-message.js.map +1 -0
- package/dist/modes/interactive/components/bash-execution.d.ts +34 -0
- package/dist/modes/interactive/components/bash-execution.d.ts.map +1 -0
- package/dist/modes/interactive/components/bash-execution.js +175 -0
- package/dist/modes/interactive/components/bash-execution.js.map +1 -0
- package/dist/modes/interactive/components/bordered-loader.d.ts +16 -0
- package/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -0
- package/dist/modes/interactive/components/bordered-loader.js +54 -0
- package/dist/modes/interactive/components/bordered-loader.js.map +1 -0
- package/dist/modes/interactive/components/branch-summary-message.d.ts +16 -0
- package/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -0
- package/dist/modes/interactive/components/branch-summary-message.js +44 -0
- package/dist/modes/interactive/components/branch-summary-message.js.map +1 -0
- package/dist/modes/interactive/components/compaction-summary-message.d.ts +16 -0
- package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +1 -0
- package/dist/modes/interactive/components/compaction-summary-message.js +45 -0
- package/dist/modes/interactive/components/compaction-summary-message.js.map +1 -0
- package/dist/modes/interactive/components/config-selector.d.ts +71 -0
- package/dist/modes/interactive/components/config-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/config-selector.js +481 -0
- package/dist/modes/interactive/components/config-selector.js.map +1 -0
- package/dist/modes/interactive/components/countdown-timer.d.ts +14 -0
- package/dist/modes/interactive/components/countdown-timer.d.ts.map +1 -0
- package/dist/modes/interactive/components/countdown-timer.js +33 -0
- package/dist/modes/interactive/components/countdown-timer.js.map +1 -0
- package/dist/modes/interactive/components/custom-editor.d.ts +21 -0
- package/dist/modes/interactive/components/custom-editor.d.ts.map +1 -0
- package/dist/modes/interactive/components/custom-editor.js +70 -0
- package/dist/modes/interactive/components/custom-editor.js.map +1 -0
- package/dist/modes/interactive/components/custom-message.d.ts +20 -0
- package/dist/modes/interactive/components/custom-message.d.ts.map +1 -0
- package/dist/modes/interactive/components/custom-message.js +79 -0
- package/dist/modes/interactive/components/custom-message.js.map +1 -0
- package/dist/modes/interactive/components/daxnuts.d.ts +23 -0
- package/dist/modes/interactive/components/daxnuts.d.ts.map +1 -0
- package/dist/modes/interactive/components/daxnuts.js +140 -0
- package/dist/modes/interactive/components/daxnuts.js.map +1 -0
- package/dist/modes/interactive/components/diff.d.ts +12 -0
- package/dist/modes/interactive/components/diff.d.ts.map +1 -0
- package/dist/modes/interactive/components/diff.js +133 -0
- package/dist/modes/interactive/components/diff.js.map +1 -0
- package/dist/modes/interactive/components/dynamic-border.d.ts +15 -0
- package/dist/modes/interactive/components/dynamic-border.d.ts.map +1 -0
- package/dist/modes/interactive/components/dynamic-border.js +21 -0
- package/dist/modes/interactive/components/dynamic-border.js.map +1 -0
- package/dist/modes/interactive/components/earendil-announcement.d.ts +5 -0
- package/dist/modes/interactive/components/earendil-announcement.d.ts.map +1 -0
- package/dist/modes/interactive/components/earendil-announcement.js +40 -0
- package/dist/modes/interactive/components/earendil-announcement.js.map +1 -0
- package/dist/modes/interactive/components/extension-editor.d.ts +20 -0
- package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -0
- package/dist/modes/interactive/components/extension-editor.js +111 -0
- package/dist/modes/interactive/components/extension-editor.js.map +1 -0
- package/dist/modes/interactive/components/extension-input.d.ts +23 -0
- package/dist/modes/interactive/components/extension-input.d.ts.map +1 -0
- package/dist/modes/interactive/components/extension-input.js +61 -0
- package/dist/modes/interactive/components/extension-input.js.map +1 -0
- package/dist/modes/interactive/components/extension-selector.d.ts +24 -0
- package/dist/modes/interactive/components/extension-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/extension-selector.js +78 -0
- package/dist/modes/interactive/components/extension-selector.js.map +1 -0
- package/dist/modes/interactive/components/footer.d.ts +27 -0
- package/dist/modes/interactive/components/footer.d.ts.map +1 -0
- package/dist/modes/interactive/components/footer.js +201 -0
- package/dist/modes/interactive/components/footer.js.map +1 -0
- package/dist/modes/interactive/components/index.d.ts +32 -0
- package/dist/modes/interactive/components/index.d.ts.map +1 -0
- package/dist/modes/interactive/components/index.js +33 -0
- package/dist/modes/interactive/components/index.js.map +1 -0
- package/dist/modes/interactive/components/keybinding-hints.d.ts +8 -0
- package/dist/modes/interactive/components/keybinding-hints.d.ts.map +1 -0
- package/dist/modes/interactive/components/keybinding-hints.js +22 -0
- package/dist/modes/interactive/components/keybinding-hints.js.map +1 -0
- package/dist/modes/interactive/components/login-dialog.d.ts +46 -0
- package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -0
- package/dist/modes/interactive/components/login-dialog.js +158 -0
- package/dist/modes/interactive/components/login-dialog.js.map +1 -0
- package/dist/modes/interactive/components/model-selector.d.ts +47 -0
- package/dist/modes/interactive/components/model-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/model-selector.js +278 -0
- package/dist/modes/interactive/components/model-selector.js.map +1 -0
- package/dist/modes/interactive/components/oauth-selector.d.ts +29 -0
- package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/oauth-selector.js +141 -0
- package/dist/modes/interactive/components/oauth-selector.js.map +1 -0
- package/dist/modes/interactive/components/scoped-models-selector.d.ts +42 -0
- package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/scoped-models-selector.js +290 -0
- package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -0
- package/dist/modes/interactive/components/session-selector-search.d.ts +23 -0
- package/dist/modes/interactive/components/session-selector-search.d.ts.map +1 -0
- package/dist/modes/interactive/components/session-selector-search.js +155 -0
- package/dist/modes/interactive/components/session-selector-search.js.map +1 -0
- package/dist/modes/interactive/components/session-selector.d.ts +96 -0
- package/dist/modes/interactive/components/session-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/session-selector.js +861 -0
- package/dist/modes/interactive/components/session-selector.js.map +1 -0
- package/dist/modes/interactive/components/settings-selector.d.ts +67 -0
- package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/settings-selector.js +373 -0
- package/dist/modes/interactive/components/settings-selector.js.map +1 -0
- package/dist/modes/interactive/components/show-images-selector.d.ts +10 -0
- package/dist/modes/interactive/components/show-images-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/show-images-selector.js +39 -0
- package/dist/modes/interactive/components/show-images-selector.js.map +1 -0
- package/dist/modes/interactive/components/skill-invocation-message.d.ts +17 -0
- package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -0
- package/dist/modes/interactive/components/skill-invocation-message.js +47 -0
- package/dist/modes/interactive/components/skill-invocation-message.js.map +1 -0
- package/dist/modes/interactive/components/theme-selector.d.ts +11 -0
- package/dist/modes/interactive/components/theme-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/theme-selector.js +50 -0
- package/dist/modes/interactive/components/theme-selector.js.map +1 -0
- package/dist/modes/interactive/components/thinking-selector.d.ts +11 -0
- package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/thinking-selector.js +51 -0
- package/dist/modes/interactive/components/thinking-selector.js.map +1 -0
- package/dist/modes/interactive/components/tool-execution.d.ts +63 -0
- package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -0
- package/dist/modes/interactive/components/tool-execution.js +295 -0
- package/dist/modes/interactive/components/tool-execution.js.map +1 -0
- package/dist/modes/interactive/components/tree-selector.d.ts +89 -0
- package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/tree-selector.js +1092 -0
- package/dist/modes/interactive/components/tree-selector.js.map +1 -0
- package/dist/modes/interactive/components/user-message-selector.d.ts +30 -0
- package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/user-message-selector.js +114 -0
- package/dist/modes/interactive/components/user-message-selector.js.map +1 -0
- package/dist/modes/interactive/components/user-message.d.ts +10 -0
- package/dist/modes/interactive/components/user-message.d.ts.map +1 -0
- package/dist/modes/interactive/components/user-message.js +29 -0
- package/dist/modes/interactive/components/user-message.js.map +1 -0
- package/dist/modes/interactive/components/visual-truncate.d.ts +24 -0
- package/dist/modes/interactive/components/visual-truncate.d.ts.map +1 -0
- package/dist/modes/interactive/components/visual-truncate.js +33 -0
- package/dist/modes/interactive/components/visual-truncate.js.map +1 -0
- package/dist/modes/interactive/interactive-mode.d.ts +359 -0
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -0
- package/dist/modes/interactive/interactive-mode.js +4573 -0
- package/dist/modes/interactive/interactive-mode.js.map +1 -0
- package/dist/modes/interactive/theme/aery.json +84 -0
- package/dist/modes/interactive/theme/catppuccin-mocha.json +81 -0
- package/dist/modes/interactive/theme/dark.json +85 -0
- package/dist/modes/interactive/theme/dracula.json +81 -0
- package/dist/modes/interactive/theme/light.json +84 -0
- package/dist/modes/interactive/theme/nord.json +81 -0
- package/dist/modes/interactive/theme/theme-schema.json +335 -0
- package/dist/modes/interactive/theme/theme.d.ts +81 -0
- package/dist/modes/interactive/theme/theme.d.ts.map +1 -0
- package/dist/modes/interactive/theme/theme.js +975 -0
- package/dist/modes/interactive/theme/theme.js.map +1 -0
- package/dist/modes/interactive/theme/tokyo-night.json +81 -0
- package/dist/modes/print-mode.d.ts +28 -0
- package/dist/modes/print-mode.d.ts.map +1 -0
- package/dist/modes/print-mode.js +131 -0
- package/dist/modes/print-mode.js.map +1 -0
- package/dist/modes/rpc/jsonl.d.ts +17 -0
- package/dist/modes/rpc/jsonl.d.ts.map +1 -0
- package/dist/modes/rpc/jsonl.js +49 -0
- package/dist/modes/rpc/jsonl.js.map +1 -0
- package/dist/modes/rpc/rpc-client.d.ts +224 -0
- package/dist/modes/rpc/rpc-client.d.ts.map +1 -0
- package/dist/modes/rpc/rpc-client.js +410 -0
- package/dist/modes/rpc/rpc-client.js.map +1 -0
- package/dist/modes/rpc/rpc-mode.d.ts +20 -0
- package/dist/modes/rpc/rpc-mode.d.ts.map +1 -0
- package/dist/modes/rpc/rpc-mode.js +597 -0
- package/dist/modes/rpc/rpc-mode.js.map +1 -0
- package/dist/modes/rpc/rpc-types.d.ts +419 -0
- package/dist/modes/rpc/rpc-types.d.ts.map +1 -0
- package/dist/modes/rpc/rpc-types.js +8 -0
- package/dist/modes/rpc/rpc-types.js.map +1 -0
- package/dist/package-manager-cli.d.ts +4 -0
- package/dist/package-manager-cli.d.ts.map +1 -0
- package/dist/package-manager-cli.js +468 -0
- package/dist/package-manager-cli.js.map +1 -0
- package/dist/utils/aery-user-agent.d.ts +2 -0
- package/dist/utils/aery-user-agent.d.ts.map +1 -0
- package/dist/utils/aery-user-agent.js +5 -0
- package/dist/utils/aery-user-agent.js.map +1 -0
- package/dist/utils/changelog.d.ts +21 -0
- package/dist/utils/changelog.d.ts.map +1 -0
- package/dist/utils/changelog.js +87 -0
- package/dist/utils/changelog.js.map +1 -0
- package/dist/utils/child-process.d.ts +11 -0
- package/dist/utils/child-process.d.ts.map +1 -0
- package/dist/utils/child-process.js +78 -0
- package/dist/utils/child-process.js.map +1 -0
- package/dist/utils/clipboard-image.d.ts +11 -0
- package/dist/utils/clipboard-image.d.ts.map +1 -0
- package/dist/utils/clipboard-image.js +245 -0
- package/dist/utils/clipboard-image.js.map +1 -0
- package/dist/utils/clipboard-native.d.ts +8 -0
- package/dist/utils/clipboard-native.d.ts.map +1 -0
- package/dist/utils/clipboard-native.js +14 -0
- package/dist/utils/clipboard-native.js.map +1 -0
- package/dist/utils/clipboard.d.ts +2 -0
- package/dist/utils/clipboard.d.ts.map +1 -0
- package/dist/utils/clipboard.js +110 -0
- package/dist/utils/clipboard.js.map +1 -0
- package/dist/utils/exif-orientation.d.ts +5 -0
- package/dist/utils/exif-orientation.d.ts.map +1 -0
- package/dist/utils/exif-orientation.js +158 -0
- package/dist/utils/exif-orientation.js.map +1 -0
- package/dist/utils/frontmatter.d.ts +8 -0
- package/dist/utils/frontmatter.d.ts.map +1 -0
- package/dist/utils/frontmatter.js +26 -0
- package/dist/utils/frontmatter.js.map +1 -0
- package/dist/utils/fs-watch.d.ts +5 -0
- package/dist/utils/fs-watch.d.ts.map +1 -0
- package/dist/utils/fs-watch.js +25 -0
- package/dist/utils/fs-watch.js.map +1 -0
- package/dist/utils/git.d.ts +26 -0
- package/dist/utils/git.d.ts.map +1 -0
- package/dist/utils/git.js +163 -0
- package/dist/utils/git.js.map +1 -0
- package/dist/utils/image-convert.d.ts +9 -0
- package/dist/utils/image-convert.d.ts.map +1 -0
- package/dist/utils/image-convert.js +39 -0
- package/dist/utils/image-convert.js.map +1 -0
- package/dist/utils/image-resize.d.ts +36 -0
- package/dist/utils/image-resize.d.ts.map +1 -0
- package/dist/utils/image-resize.js +137 -0
- package/dist/utils/image-resize.js.map +1 -0
- package/dist/utils/mime.d.ts +2 -0
- package/dist/utils/mime.d.ts.map +1 -0
- package/dist/utils/mime.js +26 -0
- package/dist/utils/mime.js.map +1 -0
- package/dist/utils/paths.d.ts +14 -0
- package/dist/utils/paths.d.ts.map +1 -0
- package/dist/utils/paths.js +34 -0
- package/dist/utils/paths.js.map +1 -0
- package/dist/utils/photon.d.ts +21 -0
- package/dist/utils/photon.d.ts.map +1 -0
- package/dist/utils/photon.js +121 -0
- package/dist/utils/photon.js.map +1 -0
- package/dist/utils/shell.d.ts +30 -0
- package/dist/utils/shell.d.ts.map +1 -0
- package/dist/utils/shell.js +190 -0
- package/dist/utils/shell.js.map +1 -0
- package/dist/utils/sleep.d.ts +5 -0
- package/dist/utils/sleep.d.ts.map +1 -0
- package/dist/utils/sleep.js +17 -0
- package/dist/utils/sleep.js.map +1 -0
- package/dist/utils/tools-manager.d.ts +3 -0
- package/dist/utils/tools-manager.d.ts.map +1 -0
- package/dist/utils/tools-manager.js +256 -0
- package/dist/utils/tools-manager.js.map +1 -0
- package/dist/utils/version-check.d.ts +7 -0
- package/dist/utils/version-check.d.ts.map +1 -0
- package/dist/utils/version-check.js +70 -0
- package/dist/utils/version-check.js.map +1 -0
- package/docs/compaction.md +0 -0
- package/docs/custom-provider.md +3 -2
- package/docs/development.md +0 -0
- package/docs/docs.json +0 -0
- package/docs/extensions.md +198 -22
- package/docs/images/doom-extension.png +0 -0
- package/docs/images/exy.png +0 -0
- package/docs/images/interactive-mode.png +0 -0
- package/docs/images/tree-view.png +0 -0
- package/docs/index.md +0 -0
- package/docs/json.md +0 -0
- package/docs/keybindings.md +0 -0
- package/docs/models.md +39 -2
- package/docs/packages.md +0 -0
- package/docs/prompt-templates.md +0 -0
- package/docs/providers.md +18 -0
- package/docs/quickstart.md +0 -0
- package/docs/rpc.md +0 -0
- package/docs/sdk.md +1 -1
- package/docs/{session.md → session-format.md} +0 -0
- package/docs/sessions.md +137 -0
- package/docs/settings.md +32 -8
- package/docs/shell-aliases.md +0 -0
- package/docs/skills.md +0 -0
- package/docs/terminal-setup.md +0 -0
- package/docs/termux.md +0 -0
- package/docs/themes.md +0 -0
- package/docs/tmux.md +0 -0
- package/docs/tui.md +0 -0
- package/docs/usage.md +0 -0
- package/docs/windows.md +0 -0
- package/examples/README.md +0 -0
- package/examples/extensions/README.md +2 -0
- package/examples/extensions/antigravity-image-gen.ts +2 -2
- package/examples/extensions/auto-commit-on-exit.ts +0 -0
- package/examples/extensions/bash-spawn-hook.ts +0 -0
- package/examples/extensions/bookmark.ts +0 -0
- package/examples/extensions/border-status-editor.ts +145 -0
- package/examples/extensions/built-in-tool-renderer.ts +0 -0
- package/examples/extensions/claude-rules.ts +0 -0
- package/examples/extensions/commands.ts +0 -0
- package/examples/extensions/confirm-destructive.ts +0 -0
- package/examples/extensions/custom-compaction.ts +1 -1
- package/examples/extensions/custom-footer.ts +1 -1
- package/examples/extensions/custom-header.ts +0 -0
- package/examples/extensions/custom-provider-anthropic/index.ts +1 -1
- package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
- package/examples/extensions/custom-provider-anthropic/package.json +1 -1
- package/examples/extensions/custom-provider-gitlab-duo/index.ts +1 -1
- package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
- package/examples/extensions/custom-provider-gitlab-duo/test.ts +0 -0
- package/examples/extensions/custom-provider-qwen-cli/index.ts +1 -1
- package/examples/extensions/custom-provider-qwen-cli/package.json +1 -1
- package/examples/extensions/dirty-repo-guard.ts +0 -0
- package/examples/extensions/doom-overlay/README.md +0 -0
- package/examples/extensions/doom-overlay/doom/build/doom.js +0 -0
- package/examples/extensions/doom-overlay/doom/doomgeneric_pi.c +0 -0
- package/examples/extensions/doom-overlay/doom-component.ts +0 -0
- package/examples/extensions/doom-overlay/doom-engine.ts +0 -0
- package/examples/extensions/doom-overlay/doom-keys.ts +0 -0
- package/examples/extensions/doom-overlay/index.ts +0 -0
- package/examples/extensions/doom-overlay/wad-finder.ts +0 -0
- package/examples/extensions/dynamic-resources/SKILL.md +0 -0
- package/examples/extensions/dynamic-resources/dynamic.json +0 -0
- package/examples/extensions/dynamic-resources/dynamic.md +0 -0
- package/examples/extensions/dynamic-resources/index.ts +0 -0
- package/examples/extensions/dynamic-tools.ts +2 -2
- package/examples/extensions/event-bus.ts +0 -0
- package/examples/extensions/file-trigger.ts +0 -0
- package/examples/extensions/git-checkpoint.ts +0 -0
- package/examples/extensions/github-issue-autocomplete.ts +185 -0
- package/examples/extensions/handoff.ts +8 -7
- package/examples/extensions/hello.ts +1 -1
- package/examples/extensions/hidden-thinking-label.ts +0 -0
- package/examples/extensions/inline-bash.ts +0 -0
- package/examples/extensions/input-transform.ts +0 -0
- package/examples/extensions/interactive-shell.ts +0 -0
- package/examples/extensions/mac-system-theme.ts +0 -0
- package/examples/extensions/message-renderer.ts +0 -0
- package/examples/extensions/minimal-mode.ts +0 -0
- package/examples/extensions/modal-editor.ts +0 -0
- package/examples/extensions/model-status.ts +0 -0
- package/examples/extensions/notify.ts +0 -0
- package/examples/extensions/overlay-qa-tests.ts +0 -0
- package/examples/extensions/overlay-test.ts +0 -0
- package/examples/extensions/permission-gate.ts +0 -0
- package/examples/extensions/pirate.ts +0 -0
- package/examples/extensions/plan-mode/README.md +0 -0
- package/examples/extensions/plan-mode/index.ts +2 -2
- package/examples/extensions/plan-mode/utils.ts +0 -0
- package/examples/extensions/preset.ts +1 -1
- package/examples/extensions/prompt-customizer.ts +97 -0
- package/examples/extensions/protected-paths.ts +0 -0
- package/examples/extensions/provider-payload.ts +0 -0
- package/examples/extensions/qna.ts +1 -1
- package/examples/extensions/question.ts +1 -1
- package/examples/extensions/questionnaire.ts +1 -1
- package/examples/extensions/rainbow-editor.ts +0 -0
- package/examples/extensions/reload-runtime.ts +1 -1
- package/examples/extensions/rpc-demo.ts +0 -0
- package/examples/extensions/sandbox/index.ts +0 -0
- package/examples/extensions/sandbox/package-lock.json +0 -0
- package/examples/extensions/sandbox/package.json +0 -0
- package/examples/extensions/send-user-message.ts +0 -0
- package/examples/extensions/session-name.ts +0 -0
- package/examples/extensions/shutdown-command.ts +1 -1
- package/examples/extensions/snake.ts +0 -0
- package/examples/extensions/space-invaders.ts +0 -0
- package/examples/extensions/ssh.ts +0 -0
- package/examples/extensions/status-line.ts +0 -0
- package/examples/extensions/structured-output.ts +65 -0
- package/examples/extensions/subagent/README.md +0 -0
- package/examples/extensions/subagent/agents/planner.md +0 -0
- package/examples/extensions/subagent/agents/reviewer.md +0 -0
- package/examples/extensions/subagent/agents/scout.md +0 -0
- package/examples/extensions/subagent/agents/worker.md +0 -0
- package/examples/extensions/subagent/agents.ts +0 -0
- package/examples/extensions/subagent/index.ts +3 -3
- package/examples/extensions/subagent/prompts/implement-and-review.md +0 -0
- package/examples/extensions/subagent/prompts/implement.md +0 -0
- package/examples/extensions/subagent/prompts/scout-and-plan.md +0 -0
- package/examples/extensions/summarize.ts +1 -1
- package/examples/extensions/system-prompt-header.ts +0 -0
- package/examples/extensions/tic-tac-toe.ts +2 -2
- package/examples/extensions/timed-confirm.ts +0 -0
- package/examples/extensions/titlebar-spinner.ts +0 -0
- package/examples/extensions/todo.ts +2 -2
- package/examples/extensions/tool-override.ts +2 -2
- package/examples/extensions/tools.ts +0 -0
- package/examples/extensions/trigger-compact.ts +0 -0
- package/examples/extensions/truncated-tool.ts +1 -1
- package/examples/extensions/widget-placement.ts +0 -0
- package/examples/extensions/with-deps/index.ts +1 -1
- package/examples/extensions/with-deps/package-lock.json +2 -2
- package/examples/extensions/with-deps/package.json +1 -1
- package/examples/extensions/working-indicator.ts +0 -0
- package/examples/extensions/working-message-test.ts +25 -0
- package/examples/rpc-extension-ui.ts +0 -0
- package/examples/sdk/01-minimal.ts +0 -0
- package/examples/sdk/02-custom-model.ts +1 -1
- package/examples/sdk/03-custom-prompt.ts +0 -0
- package/examples/sdk/04-skills.ts +0 -0
- package/examples/sdk/05-tools.ts +0 -0
- package/examples/sdk/06-extensions.ts +0 -0
- package/examples/sdk/07-context-files.ts +0 -0
- package/examples/sdk/08-prompt-templates.ts +0 -0
- package/examples/sdk/09-api-keys-and-oauth.ts +0 -0
- package/examples/sdk/10-settings.ts +0 -0
- package/examples/sdk/11-sessions.ts +0 -0
- package/examples/sdk/12-full-control.ts +1 -1
- package/examples/sdk/13-session-runtime.ts +0 -0
- package/examples/sdk/README.md +0 -0
- package/package.json +3 -4
- package/docs/tree.md +0 -233
package/docs/providers.md
CHANGED
|
@@ -58,10 +58,12 @@ pi
|
|
|
58
58
|
| Anthropic | `ANTHROPIC_API_KEY` | `anthropic` |
|
|
59
59
|
| Azure OpenAI Responses | `AZURE_OPENAI_API_KEY` | `azure-openai-responses` |
|
|
60
60
|
| OpenAI | `OPENAI_API_KEY` | `openai` |
|
|
61
|
+
| DeepSeek | `DEEPSEEK_API_KEY` | `deepseek` |
|
|
61
62
|
| Google Gemini | `GEMINI_API_KEY` | `google` |
|
|
62
63
|
| Mistral | `MISTRAL_API_KEY` | `mistral` |
|
|
63
64
|
| Groq | `GROQ_API_KEY` | `groq` |
|
|
64
65
|
| Cerebras | `CEREBRAS_API_KEY` | `cerebras` |
|
|
66
|
+
| Cloudflare Workers AI | `CLOUDFLARE_API_KEY` (+ `CLOUDFLARE_ACCOUNT_ID`) | `cloudflare-workers-ai` |
|
|
65
67
|
| xAI | `XAI_API_KEY` | `xai` |
|
|
66
68
|
| OpenRouter | `OPENROUTER_API_KEY` | `openrouter` |
|
|
67
69
|
| Vercel AI Gateway | `AI_GATEWAY_API_KEY` | `vercel-ai-gateway` |
|
|
@@ -69,6 +71,7 @@ pi
|
|
|
69
71
|
| OpenCode Zen | `OPENCODE_API_KEY` | `opencode` |
|
|
70
72
|
| OpenCode Go | `OPENCODE_API_KEY` | `opencode-go` |
|
|
71
73
|
| Hugging Face | `HF_TOKEN` | `huggingface` |
|
|
74
|
+
| Fireworks | `FIREWORKS_API_KEY` | `fireworks` |
|
|
72
75
|
| Kimi For Coding | `KIMI_API_KEY` | `kimi-coding` |
|
|
73
76
|
| MiniMax | `MINIMAX_API_KEY` | `minimax` |
|
|
74
77
|
| MiniMax (China) | `MINIMAX_CN_API_KEY` | `minimax-cn` |
|
|
@@ -83,6 +86,7 @@ Store credentials in `~/.aery/agent/auth.json`:
|
|
|
83
86
|
{
|
|
84
87
|
"anthropic": { "type": "api_key", "key": "sk-ant-..." },
|
|
85
88
|
"openai": { "type": "api_key", "key": "sk-..." },
|
|
89
|
+
"deepseek": { "type": "api_key", "key": "sk-..." },
|
|
86
90
|
"google": { "type": "api_key", "key": "..." },
|
|
87
91
|
"opencode": { "type": "api_key", "key": "..." },
|
|
88
92
|
"opencode-go": { "type": "api_key", "key": "..." }
|
|
@@ -118,6 +122,8 @@ OAuth credentials are also stored here after `/login` and managed automatically.
|
|
|
118
122
|
```bash
|
|
119
123
|
export AZURE_OPENAI_API_KEY=...
|
|
120
124
|
export AZURE_OPENAI_BASE_URL=https://your-resource.openai.azure.com
|
|
125
|
+
# also supported: https://your-resource.cognitiveservices.azure.com
|
|
126
|
+
# root endpoints are auto-normalized to /openai/v1
|
|
121
127
|
# or use resource name instead of base URL
|
|
122
128
|
export AZURE_OPENAI_RESOURCE_NAME=your-resource
|
|
123
129
|
|
|
@@ -169,6 +175,18 @@ export AWS_BEDROCK_SKIP_AUTH=1
|
|
|
169
175
|
export AWS_BEDROCK_FORCE_HTTP1=1
|
|
170
176
|
```
|
|
171
177
|
|
|
178
|
+
### Cloudflare Workers AI
|
|
179
|
+
|
|
180
|
+
`CLOUDFLARE_API_KEY` can be set via `/login`. `CLOUDFLARE_ACCOUNT_ID` must be set as an environment variable.
|
|
181
|
+
|
|
182
|
+
```bash
|
|
183
|
+
export CLOUDFLARE_API_KEY=... # or use /login
|
|
184
|
+
export CLOUDFLARE_ACCOUNT_ID=...
|
|
185
|
+
pi --provider cloudflare-workers-ai --model "@cf/moonshotai/kimi-k2.6"
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
Pi automatically sets `x-session-affinity` for [prefix caching](https://developers.cloudflare.com/workers-ai/features/prompt-caching/) discounts.
|
|
189
|
+
|
|
172
190
|
### Google Vertex AI
|
|
173
191
|
|
|
174
192
|
Uses Application Default Credentials:
|
package/docs/quickstart.md
CHANGED
|
File without changes
|
package/docs/rpc.md
CHANGED
|
File without changes
|
package/docs/sdk.md
CHANGED
|
@@ -781,7 +781,7 @@ sm.branchWithSummary(id, "Summary..."); // Branch with context summary
|
|
|
781
781
|
sm.createBranchedSession(leafId); // Extract path to new file
|
|
782
782
|
```
|
|
783
783
|
|
|
784
|
-
> See [examples/sdk/11-sessions.ts](../examples/sdk/11-sessions.ts) and [
|
|
784
|
+
> See [examples/sdk/11-sessions.ts](../examples/sdk/11-sessions.ts) and [Session Format](session-format.md)
|
|
785
785
|
|
|
786
786
|
### Settings Management
|
|
787
787
|
|
|
File without changes
|
package/docs/sessions.md
ADDED
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
# Sessions
|
|
2
|
+
|
|
3
|
+
Pi saves conversations as sessions so you can continue work, branch from earlier turns, and revisit previous paths.
|
|
4
|
+
|
|
5
|
+
## Session Storage
|
|
6
|
+
|
|
7
|
+
Sessions auto-save to `~/.pi/agent/sessions/`, organized by working directory. Each session is a JSONL file with a tree structure.
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
pi -c # Continue most recent session
|
|
11
|
+
pi -r # Browse and select from past sessions
|
|
12
|
+
pi --no-session # Ephemeral mode; do not save
|
|
13
|
+
pi --session <path|id> # Use a specific session file or partial session ID
|
|
14
|
+
pi --fork <path|id> # Fork a session file or partial session ID into a new session
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Use `/session` in interactive mode to see the current session file, session ID, message count, tokens, and cost.
|
|
18
|
+
|
|
19
|
+
For the JSONL file format and SessionManager API, see [Session Format](session-format.md).
|
|
20
|
+
|
|
21
|
+
## Session Commands
|
|
22
|
+
|
|
23
|
+
| Command | Description |
|
|
24
|
+
|---------|-------------|
|
|
25
|
+
| `/resume` | Browse and select previous sessions |
|
|
26
|
+
| `/new` | Start a new session |
|
|
27
|
+
| `/name <name>` | Set the current session display name |
|
|
28
|
+
| `/session` | Show session info |
|
|
29
|
+
| `/tree` | Navigate the current session tree |
|
|
30
|
+
| `/fork` | Create a new session from a previous user message |
|
|
31
|
+
| `/clone` | Duplicate the current active branch into a new session |
|
|
32
|
+
| `/compact [prompt]` | Summarize older context; see [Compaction](compaction.md) |
|
|
33
|
+
| `/export [file]` | Export session to HTML |
|
|
34
|
+
| `/share` | Upload as private GitHub gist with shareable HTML link |
|
|
35
|
+
|
|
36
|
+
## Resuming and Deleting Sessions
|
|
37
|
+
|
|
38
|
+
`/resume` opens an interactive session picker for the current project. `pi -r` opens the same picker at startup.
|
|
39
|
+
|
|
40
|
+
In the picker you can:
|
|
41
|
+
|
|
42
|
+
- search by typing
|
|
43
|
+
- toggle path display with Ctrl+P
|
|
44
|
+
- toggle sort mode with Ctrl+S
|
|
45
|
+
- filter to named sessions with Ctrl+N
|
|
46
|
+
- rename with Ctrl+R
|
|
47
|
+
- delete with Ctrl+D, then confirm
|
|
48
|
+
|
|
49
|
+
When available, pi uses the `trash` CLI for deletion instead of permanently removing files.
|
|
50
|
+
|
|
51
|
+
## Naming Sessions
|
|
52
|
+
|
|
53
|
+
Use `/name <name>` to set a human-readable session name:
|
|
54
|
+
|
|
55
|
+
```text
|
|
56
|
+
/name Refactor auth module
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Named sessions are easier to find in `/resume` and `pi -r`.
|
|
60
|
+
|
|
61
|
+
## Branching with `/tree`
|
|
62
|
+
|
|
63
|
+
Sessions are stored as trees. Every entry has an `id` and `parentId`, and the current position is the active leaf. `/tree` lets you jump to any previous point and continue from there without creating a new file.
|
|
64
|
+
|
|
65
|
+
<p align="center"><img src="images/tree-view.png" alt="Tree View" width="600"></p>
|
|
66
|
+
|
|
67
|
+
Example shape:
|
|
68
|
+
|
|
69
|
+
```text
|
|
70
|
+
├─ user: "Hello, can you help..."
|
|
71
|
+
│ └─ assistant: "Of course! I can..."
|
|
72
|
+
│ ├─ user: "Let's try approach A..."
|
|
73
|
+
│ │ └─ assistant: "For approach A..."
|
|
74
|
+
│ │ └─ user: "That worked..." ← active
|
|
75
|
+
│ └─ user: "Actually, approach B..."
|
|
76
|
+
│ └─ assistant: "For approach B..."
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### Tree Controls
|
|
80
|
+
|
|
81
|
+
| Key | Action |
|
|
82
|
+
|-----|--------|
|
|
83
|
+
| ↑/↓ | Navigate visible entries |
|
|
84
|
+
| ←/→ | Page up/down |
|
|
85
|
+
| Ctrl+←/Ctrl+→ or Alt+←/Alt+→ | Fold/unfold or jump between branch segments |
|
|
86
|
+
| Shift+L | Set or clear a label on the selected entry |
|
|
87
|
+
| Shift+T | Toggle label timestamps |
|
|
88
|
+
| Enter | Select entry |
|
|
89
|
+
| Escape/Ctrl+C | Cancel |
|
|
90
|
+
| Ctrl+O | Cycle filter mode |
|
|
91
|
+
|
|
92
|
+
Filter modes are: default, no-tools, user-only, labeled-only, and all. Configure the default with `treeFilterMode` in [Settings](settings.md).
|
|
93
|
+
|
|
94
|
+
### Selection Behavior
|
|
95
|
+
|
|
96
|
+
Selecting a user or custom message:
|
|
97
|
+
|
|
98
|
+
1. Moves the leaf to the selected message's parent.
|
|
99
|
+
2. Places the selected message text in the editor.
|
|
100
|
+
3. Lets you edit and resubmit, creating a new branch.
|
|
101
|
+
|
|
102
|
+
Selecting an assistant, tool, compaction, or other non-user entry:
|
|
103
|
+
|
|
104
|
+
1. Moves the leaf to that entry.
|
|
105
|
+
2. Leaves the editor empty.
|
|
106
|
+
3. Lets you continue from that point.
|
|
107
|
+
|
|
108
|
+
Selecting the root user message resets the leaf to an empty conversation and places the original prompt in the editor.
|
|
109
|
+
|
|
110
|
+
## `/tree`, `/fork`, and `/clone`
|
|
111
|
+
|
|
112
|
+
| Feature | `/tree` | `/fork` | `/clone` |
|
|
113
|
+
|---------|---------|---------|----------|
|
|
114
|
+
| Output | Same session file | New session file | New session file |
|
|
115
|
+
| View | Full tree | User-message selector | Current active branch |
|
|
116
|
+
| Typical use | Explore alternatives in place | Start a new session from an earlier prompt | Duplicate current work before continuing |
|
|
117
|
+
| Summary | Optional branch summary | None | None |
|
|
118
|
+
|
|
119
|
+
Use `/tree` when you want to keep alternatives together. Use `/fork` or `/clone` when you want a separate session file.
|
|
120
|
+
|
|
121
|
+
## Branch Summaries
|
|
122
|
+
|
|
123
|
+
When `/tree` switches away from one branch to another, pi can summarize the abandoned branch and attach that summary at the new position. This preserves important context from the path you left without replaying the whole branch.
|
|
124
|
+
|
|
125
|
+
When prompted, choose one of:
|
|
126
|
+
|
|
127
|
+
1. no summary
|
|
128
|
+
2. summarize with the default prompt
|
|
129
|
+
3. summarize with custom focus instructions
|
|
130
|
+
|
|
131
|
+
See [Compaction](compaction.md) for branch summarization internals and extension hooks.
|
|
132
|
+
|
|
133
|
+
## Session Format
|
|
134
|
+
|
|
135
|
+
Session files are JSONL and contain message entries, model changes, thinking-level changes, labels, compactions, branch summaries, and extension entries.
|
|
136
|
+
|
|
137
|
+
For parsers, extensions, SDK usage, and the full SessionManager API, see [Session Format](session-format.md).
|
package/docs/settings.md
CHANGED
|
@@ -48,6 +48,20 @@ Edit directly or use `/settings` for common options.
|
|
|
48
48
|
| `autocompleteMaxVisible` | number | `5` | Max visible items in autocomplete dropdown (3-20) |
|
|
49
49
|
| `showHardwareCursor` | boolean | `false` | Show terminal cursor |
|
|
50
50
|
|
|
51
|
+
### Warnings
|
|
52
|
+
|
|
53
|
+
| Setting | Type | Default | Description |
|
|
54
|
+
|---------|------|---------|-------------|
|
|
55
|
+
| `warnings.anthropicExtraUsage` | boolean | `true` | Show a warning when Anthropic subscription auth may use paid extra usage |
|
|
56
|
+
|
|
57
|
+
```json
|
|
58
|
+
{
|
|
59
|
+
"warnings": {
|
|
60
|
+
"anthropicExtraUsage": false
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
```
|
|
64
|
+
|
|
51
65
|
### Compaction
|
|
52
66
|
|
|
53
67
|
| Setting | Type | Default | Description |
|
|
@@ -77,12 +91,14 @@ Edit directly or use `/settings` for common options.
|
|
|
77
91
|
|
|
78
92
|
| Setting | Type | Default | Description |
|
|
79
93
|
|---------|------|---------|-------------|
|
|
80
|
-
| `retry.enabled` | boolean | `true` | Enable automatic retry on transient errors |
|
|
81
|
-
| `retry.maxRetries` | number | `3` | Maximum retry attempts |
|
|
82
|
-
| `retry.baseDelayMs` | number | `2000` | Base delay for exponential backoff (2s, 4s, 8s) |
|
|
83
|
-
| `retry.
|
|
94
|
+
| `retry.enabled` | boolean | `true` | Enable automatic agent-level retry on transient errors |
|
|
95
|
+
| `retry.maxRetries` | number | `3` | Maximum agent-level retry attempts |
|
|
96
|
+
| `retry.baseDelayMs` | number | `2000` | Base delay for agent-level exponential backoff (2s, 4s, 8s) |
|
|
97
|
+
| `retry.provider.timeoutMs` | number | SDK default | Provider/SDK request timeout in milliseconds |
|
|
98
|
+
| `retry.provider.maxRetries` | number | SDK default | Provider/SDK retry attempts |
|
|
99
|
+
| `retry.provider.maxRetryDelayMs` | number | `60000` | Max server-requested delay before failing (60s) |
|
|
84
100
|
|
|
85
|
-
When a provider requests a retry delay longer than `
|
|
101
|
+
When a provider requests a retry delay longer than `retry.provider.maxRetryDelayMs` (e.g., Google's "quota will reset after 5h"), the request fails immediately with an informative error instead of waiting silently. Set to `0` to disable the cap.
|
|
86
102
|
|
|
87
103
|
```json
|
|
88
104
|
{
|
|
@@ -90,7 +106,11 @@ When a provider requests a retry delay longer than `maxDelayMs` (e.g., Google's
|
|
|
90
106
|
"enabled": true,
|
|
91
107
|
"maxRetries": 3,
|
|
92
108
|
"baseDelayMs": 2000,
|
|
93
|
-
"
|
|
109
|
+
"provider": {
|
|
110
|
+
"timeoutMs": 3600000,
|
|
111
|
+
"maxRetries": 0,
|
|
112
|
+
"maxRetryDelayMs": 60000
|
|
113
|
+
}
|
|
94
114
|
}
|
|
95
115
|
}
|
|
96
116
|
```
|
|
@@ -108,6 +128,7 @@ When a provider requests a retry delay longer than `maxDelayMs` (e.g., Google's
|
|
|
108
128
|
| Setting | Type | Default | Description |
|
|
109
129
|
|---------|------|---------|-------------|
|
|
110
130
|
| `terminal.showImages` | boolean | `true` | Show images in terminal (if supported) |
|
|
131
|
+
| `terminal.imageWidthCells` | number | `60` | Preferred inline image width in terminal cells |
|
|
111
132
|
| `terminal.clearOnShrink` | boolean | `false` | Clear empty rows when content shrinks (can cause flicker) |
|
|
112
133
|
| `images.autoResize` | boolean | `true` | Resize images to 2000x2000 max |
|
|
113
134
|
| `images.blockImages` | boolean | `false` | Block all images from being sent to LLM |
|
|
@@ -126,13 +147,13 @@ When a provider requests a retry delay longer than `maxDelayMs` (e.g., Google's
|
|
|
126
147
|
}
|
|
127
148
|
```
|
|
128
149
|
|
|
129
|
-
`npmCommand` is used for all npm package-manager operations, including `npm root -g`, installs, uninstalls, and
|
|
150
|
+
`npmCommand` is used for all npm package-manager operations, including `npm root -g`, installs, uninstalls, and dependency installs inside git packages. Use argv-style entries exactly as the process should be launched. When `npmCommand` is configured, git package dependency installs use plain `install` to avoid npm-specific flags in wrappers or alternate package managers.
|
|
130
151
|
|
|
131
152
|
### Sessions
|
|
132
153
|
|
|
133
154
|
| Setting | Type | Default | Description |
|
|
134
155
|
|---------|------|---------|-------------|
|
|
135
|
-
| `sessionDir` | string | - | Directory where session files are stored. Accepts absolute or relative paths
|
|
156
|
+
| `sessionDir` | string | - | Directory where session files are stored. Accepts absolute or relative paths, plus `~`. |
|
|
136
157
|
|
|
137
158
|
```json
|
|
138
159
|
{ "sessionDir": ".aery/sessions" }
|
|
@@ -219,6 +240,9 @@ See [packages.md](packages.md) for package management details.
|
|
|
219
240
|
"maxRetries": 3
|
|
220
241
|
},
|
|
221
242
|
"enabledModels": ["claude-*", "gpt-4o"],
|
|
243
|
+
"warnings": {
|
|
244
|
+
"anthropicExtraUsage": true
|
|
245
|
+
},
|
|
222
246
|
"packages": ["pi-skills"]
|
|
223
247
|
}
|
|
224
248
|
```
|
package/docs/shell-aliases.md
CHANGED
|
File without changes
|
package/docs/skills.md
CHANGED
|
File without changes
|
package/docs/terminal-setup.md
CHANGED
|
File without changes
|
package/docs/termux.md
CHANGED
|
File without changes
|
package/docs/themes.md
CHANGED
|
File without changes
|
package/docs/tmux.md
CHANGED
|
File without changes
|
package/docs/tui.md
CHANGED
|
File without changes
|
package/docs/usage.md
CHANGED
|
File without changes
|
package/docs/windows.md
CHANGED
|
File without changes
|
package/examples/README.md
CHANGED
|
File without changes
|
|
@@ -34,6 +34,7 @@ cp permission-gate.ts ~/.pi/agent/extensions/
|
|
|
34
34
|
| `questionnaire.ts` | Multi-question input with tab bar navigation between questions |
|
|
35
35
|
| `tool-override.ts` | Override built-in tools (e.g., add logging/access control to `read`) |
|
|
36
36
|
| `dynamic-tools.ts` | Register tools after startup (`session_start`) and at runtime via command, with prompt snippets and tool-specific prompt guidelines |
|
|
37
|
+
| `structured-output.ts` | Final structured-output tool that returns `terminate: true` so the agent can end on the tool call |
|
|
37
38
|
| `built-in-tool-renderer.ts` | Custom compact rendering for built-in tools (read, bash, edit, write) while keeping original behavior |
|
|
38
39
|
| `minimal-mode.ts` | Override built-in tool rendering for minimal display (only tool calls, no output in collapsed mode) |
|
|
39
40
|
| `truncated-tool.ts` | Wraps ripgrep with proper output truncation (50KB/2000 lines) |
|
|
@@ -51,6 +52,7 @@ cp permission-gate.ts ~/.pi/agent/extensions/
|
|
|
51
52
|
| `handoff.ts` | Transfer context to a new focused session via `/handoff <goal>` |
|
|
52
53
|
| `qna.ts` | Extracts questions from last response into editor via `ctx.ui.setEditorText()` |
|
|
53
54
|
| `status-line.ts` | Shows turn progress in footer via `ctx.ui.setStatus()` with themed colors |
|
|
55
|
+
| `github-issue-autocomplete.ts` | Adds `#1234` issue completions by stacking a custom autocomplete provider that preloads open issues from `gh issue list` |
|
|
54
56
|
| `widget-placement.ts` | Shows widgets above and below the editor via `ctx.ui.setWidget()` placement |
|
|
55
57
|
| `hidden-thinking-label.ts` | Customizes the collapsed thinking label via `ctx.ui.setHiddenThinkingLabel()` |
|
|
56
58
|
| `working-indicator.ts` | Customizes the streaming working indicator via `ctx.ui.setWorkingIndicator()` |
|
|
@@ -29,9 +29,9 @@ import { randomUUID } from "node:crypto";
|
|
|
29
29
|
import { existsSync, readFileSync } from "node:fs";
|
|
30
30
|
import { mkdir, writeFile } from "node:fs/promises";
|
|
31
31
|
import { join } from "node:path";
|
|
32
|
-
import { StringEnum } from "@eminent337/aery-ai";
|
|
33
32
|
import { type ExtensionAPI, getAgentDir, withFileMutationQueue } from "@eminent337/aery";
|
|
34
|
-
import {
|
|
33
|
+
import { StringEnum } from "@eminent337/aery-ai";
|
|
34
|
+
import { type Static, Type } from "typebox";
|
|
35
35
|
|
|
36
36
|
const PROVIDER = "google-antigravity";
|
|
37
37
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import { CustomEditor, type ExtensionAPI, type ExtensionContext, type KeybindingsManager } from "@eminent337/aery";
|
|
2
|
+
import type { Component, EditorTheme, TUI } from "@eminent337/aery-tui";
|
|
3
|
+
import { truncateToWidth, visibleWidth } from "@eminent337/aery-tui";
|
|
4
|
+
|
|
5
|
+
function fitBorder(
|
|
6
|
+
left: string,
|
|
7
|
+
right: string,
|
|
8
|
+
width: number,
|
|
9
|
+
border: (text: string) => string,
|
|
10
|
+
fill: (text: string) => string = border,
|
|
11
|
+
): string {
|
|
12
|
+
if (width <= 0) return "";
|
|
13
|
+
if (width === 1) return border("─");
|
|
14
|
+
|
|
15
|
+
let leftText = left;
|
|
16
|
+
let rightText = right;
|
|
17
|
+
const fixedWidth = 2;
|
|
18
|
+
const minimumGap = 3;
|
|
19
|
+
|
|
20
|
+
while (
|
|
21
|
+
fixedWidth + visibleWidth(leftText) + visibleWidth(rightText) + minimumGap > width &&
|
|
22
|
+
visibleWidth(rightText) > 0
|
|
23
|
+
) {
|
|
24
|
+
rightText = truncateToWidth(rightText, Math.max(0, visibleWidth(rightText) - 1), "");
|
|
25
|
+
}
|
|
26
|
+
while (
|
|
27
|
+
fixedWidth + visibleWidth(leftText) + visibleWidth(rightText) + minimumGap > width &&
|
|
28
|
+
visibleWidth(leftText) > 0
|
|
29
|
+
) {
|
|
30
|
+
leftText = truncateToWidth(leftText, Math.max(0, visibleWidth(leftText) - 1), "");
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
const gapWidth = Math.max(0, width - fixedWidth - visibleWidth(leftText) - visibleWidth(rightText));
|
|
34
|
+
return `${border("─")}${leftText}${fill("─".repeat(gapWidth))}${rightText}${border("─")}`;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
function formatCwd(cwd: string): string {
|
|
38
|
+
const home = process.env.HOME;
|
|
39
|
+
if (home && cwd.startsWith(home)) {
|
|
40
|
+
return `~${cwd.slice(home.length)}`;
|
|
41
|
+
}
|
|
42
|
+
return cwd;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
function formatContext(ctx: ExtensionContext): string {
|
|
46
|
+
const usage = ctx.getContextUsage();
|
|
47
|
+
const contextWindow = usage?.contextWindow ?? ctx.model?.contextWindow;
|
|
48
|
+
if (!contextWindow || !usage || usage.percent === null) {
|
|
49
|
+
return "ctx ?";
|
|
50
|
+
}
|
|
51
|
+
return `ctx ${Math.round(usage.percent)}%/${(contextWindow / 1000).toFixed(0)}k`;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
function formatThinking(level: string): string {
|
|
55
|
+
return level === "off" ? "off" : level;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
class EmptyFooter implements Component {
|
|
59
|
+
render(): string[] {
|
|
60
|
+
return [];
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
invalidate(): void {}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export default function (pi: ExtensionAPI) {
|
|
67
|
+
let isWorking = false;
|
|
68
|
+
let spinnerIndex = 0;
|
|
69
|
+
let spinnerTimer: ReturnType<typeof setInterval> | undefined;
|
|
70
|
+
let activeTui: TUI | undefined;
|
|
71
|
+
const spinnerFrames = ["⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"];
|
|
72
|
+
|
|
73
|
+
const stopSpinner = () => {
|
|
74
|
+
if (spinnerTimer) {
|
|
75
|
+
clearInterval(spinnerTimer);
|
|
76
|
+
spinnerTimer = undefined;
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
pi.on("agent_start", () => {
|
|
81
|
+
isWorking = true;
|
|
82
|
+
stopSpinner();
|
|
83
|
+
spinnerTimer = setInterval(() => {
|
|
84
|
+
spinnerIndex = (spinnerIndex + 1) % spinnerFrames.length;
|
|
85
|
+
activeTui?.requestRender();
|
|
86
|
+
}, 80);
|
|
87
|
+
activeTui?.requestRender();
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
pi.on("agent_end", () => {
|
|
91
|
+
isWorking = false;
|
|
92
|
+
stopSpinner();
|
|
93
|
+
activeTui?.requestRender();
|
|
94
|
+
});
|
|
95
|
+
|
|
96
|
+
pi.on("session_shutdown", () => {
|
|
97
|
+
stopSpinner();
|
|
98
|
+
activeTui = undefined;
|
|
99
|
+
});
|
|
100
|
+
|
|
101
|
+
pi.on("session_start", (_event, ctx) => {
|
|
102
|
+
ctx.ui.setWorkingVisible(false);
|
|
103
|
+
ctx.ui.setFooter(() => new EmptyFooter());
|
|
104
|
+
|
|
105
|
+
let branch: string | undefined;
|
|
106
|
+
|
|
107
|
+
const refreshBranch = async () => {
|
|
108
|
+
const result = await pi.exec("git", ["branch", "--show-current"], { cwd: ctx.cwd }).catch(() => undefined);
|
|
109
|
+
const stdout = result?.stdout.trim();
|
|
110
|
+
branch = stdout && stdout.length > 0 ? stdout : undefined;
|
|
111
|
+
activeTui?.requestRender();
|
|
112
|
+
};
|
|
113
|
+
void refreshBranch();
|
|
114
|
+
|
|
115
|
+
class BorderStatusEditor extends CustomEditor {
|
|
116
|
+
constructor(tui: TUI, theme: EditorTheme, keybindings: KeybindingsManager) {
|
|
117
|
+
super(tui, theme, keybindings, { paddingX: 0 });
|
|
118
|
+
activeTui = tui;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
render(width: number): string[] {
|
|
122
|
+
const lines = super.render(width);
|
|
123
|
+
if (lines.length < 2) return lines;
|
|
124
|
+
|
|
125
|
+
const thm = ctx.ui.theme;
|
|
126
|
+
const model = ctx.model ? `${ctx.model.provider}/${ctx.model.id}` : "no model";
|
|
127
|
+
const thinking = pi.getThinkingLevel();
|
|
128
|
+
const topLeft = isWorking ? thm.fg("accent", ` ${spinnerFrames[spinnerIndex]} `) : "";
|
|
129
|
+
const topRight = "";
|
|
130
|
+
const bottomLeft = thm.fg("muted", ` ${model} · ${formatThinking(thinking)} `);
|
|
131
|
+
const bottomRight = thm.fg(
|
|
132
|
+
"muted",
|
|
133
|
+
` ${formatContext(ctx)} · ${formatCwd(ctx.cwd)}${branch ? ` (${branch})` : ""} `,
|
|
134
|
+
);
|
|
135
|
+
const borderColor = (text: string) => this.borderColor(text);
|
|
136
|
+
|
|
137
|
+
lines[0] = fitBorder(topLeft, topRight, width, borderColor);
|
|
138
|
+
lines[lines.length - 1] = fitBorder(bottomLeft, bottomRight, width, borderColor);
|
|
139
|
+
return lines;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
ctx.ui.setEditorComponent((tui, theme, keybindings) => new BorderStatusEditor(tui, theme, keybindings));
|
|
144
|
+
});
|
|
145
|
+
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
* pi --extension examples/extensions/custom-compaction.ts
|
|
14
14
|
*/
|
|
15
15
|
|
|
16
|
-
import { complete } from "@eminent337/aery-ai";
|
|
17
16
|
import type { ExtensionAPI } from "@eminent337/aery";
|
|
18
17
|
import { convertToLlm, serializeConversation } from "@eminent337/aery";
|
|
18
|
+
import { complete } from "@eminent337/aery-ai";
|
|
19
19
|
|
|
20
20
|
export default function (pi: ExtensionAPI) {
|
|
21
21
|
pi.on("session_before_compact", async (event, ctx) => {
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
* Token stats come from ctx.sessionManager/ctx.model (already accessible).
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
import type { AssistantMessage } from "@eminent337/aery-ai";
|
|
12
11
|
import type { ExtensionAPI } from "@eminent337/aery";
|
|
12
|
+
import type { AssistantMessage } from "@eminent337/aery-ai";
|
|
13
13
|
import { truncateToWidth, visibleWidth } from "@eminent337/aery-tui";
|
|
14
14
|
|
|
15
15
|
export default function (pi: ExtensionAPI) {
|
|
File without changes
|
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
|
|
24
24
|
import Anthropic from "@anthropic-ai/sdk";
|
|
25
25
|
import type { ContentBlockParam, MessageCreateParamsStreaming } from "@anthropic-ai/sdk/resources/messages.js";
|
|
26
|
+
import type { ExtensionAPI } from "@eminent337/aery";
|
|
26
27
|
import {
|
|
27
28
|
type Api,
|
|
28
29
|
type AssistantMessage,
|
|
@@ -43,7 +44,6 @@ import {
|
|
|
43
44
|
type ToolCall,
|
|
44
45
|
type ToolResultMessage,
|
|
45
46
|
} from "@eminent337/aery-ai";
|
|
46
|
-
import type { ExtensionAPI } from "@eminent337/aery";
|
|
47
47
|
|
|
48
48
|
// =============================================================================
|
|
49
49
|
// OAuth Implementation (copied from packages/ai/src/utils/oauth/anthropic.ts)
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pi-extension-custom-provider",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.70.6",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "pi-extension-custom-provider",
|
|
9
|
-
"version": "0.
|
|
9
|
+
"version": "0.70.6",
|
|
10
10
|
"dependencies": {
|
|
11
11
|
"@anthropic-ai/sdk": "^0.52.0"
|
|
12
12
|
}
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
* # Then /login gitlab-duo, or set GITLAB_TOKEN=glpat-...
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
|
+
import type { ExtensionAPI } from "@eminent337/aery";
|
|
12
13
|
import {
|
|
13
14
|
type Api,
|
|
14
15
|
type AssistantMessageEventStream,
|
|
@@ -21,7 +22,6 @@ import {
|
|
|
21
22
|
streamSimpleAnthropic,
|
|
22
23
|
streamSimpleOpenAIResponses,
|
|
23
24
|
} from "@eminent337/aery-ai";
|
|
24
|
-
import type { ExtensionAPI } from "@eminent337/aery";
|
|
25
25
|
|
|
26
26
|
// =============================================================================
|
|
27
27
|
// Constants
|
|
File without changes
|
|
@@ -9,8 +9,8 @@
|
|
|
9
9
|
* # Then /login qwen-cli, or set QWEN_CLI_API_KEY=...
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
|
-
import type { OAuthCredentials, OAuthLoginCallbacks } from "@eminent337/aery-ai";
|
|
13
12
|
import type { ExtensionAPI } from "@eminent337/aery";
|
|
13
|
+
import type { OAuthCredentials, OAuthLoginCallbacks } from "@eminent337/aery-ai";
|
|
14
14
|
|
|
15
15
|
// =============================================================================
|
|
16
16
|
// Constants
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|