@eminent337/aery 0.1.11 → 1.0.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 +898 -898
- package/README.md +2 -32
- package/docs/compaction.md +14 -14
- package/docs/custom-provider.md +9 -9
- package/docs/development.md +2 -2
- package/docs/extensions.md +25 -25
- package/docs/json.md +4 -4
- package/docs/packages.md +2 -2
- package/docs/providers.md +1 -1
- package/docs/rpc.md +1 -1
- package/docs/sdk.md +22 -22
- package/docs/session.md +7 -7
- package/docs/termux.md +1 -1
- package/docs/themes.md +2 -2
- package/docs/tui.md +7 -7
- package/examples/extensions/dynamic-resources/dynamic.json +1 -1
- package/package.json +5 -5
- package/dist/bun/cli.d.ts +0 -3
- package/dist/bun/cli.d.ts.map +0 -1
- package/dist/bun/cli.js +0 -7
- package/dist/bun/cli.js.map +0 -1
- package/dist/bun/register-bedrock.d.ts +0 -2
- package/dist/bun/register-bedrock.d.ts.map +0 -1
- package/dist/bun/register-bedrock.js +0 -4
- package/dist/bun/register-bedrock.js.map +0 -1
- package/dist/cli/args.d.ts +0 -52
- package/dist/cli/args.d.ts.map +0 -1
- package/dist/cli/args.js +0 -321
- package/dist/cli/args.js.map +0 -1
- package/dist/cli/config-selector.d.ts +0 -14
- package/dist/cli/config-selector.d.ts.map +0 -1
- package/dist/cli/config-selector.js +0 -31
- package/dist/cli/config-selector.js.map +0 -1
- package/dist/cli/file-processor.d.ts +0 -15
- package/dist/cli/file-processor.d.ts.map +0 -1
- package/dist/cli/file-processor.js +0 -83
- package/dist/cli/file-processor.js.map +0 -1
- package/dist/cli/initial-message.d.ts +0 -18
- package/dist/cli/initial-message.d.ts.map +0 -1
- package/dist/cli/initial-message.js +0 -22
- package/dist/cli/initial-message.js.map +0 -1
- package/dist/cli/list-models.d.ts +0 -9
- package/dist/cli/list-models.d.ts.map +0 -1
- package/dist/cli/list-models.js +0 -97
- package/dist/cli/list-models.js.map +0 -1
- package/dist/cli/session-picker.d.ts +0 -9
- package/dist/cli/session-picker.d.ts.map +0 -1
- package/dist/cli/session-picker.js +0 -35
- package/dist/cli/session-picker.js.map +0 -1
- package/dist/cli.d.ts +0 -3
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js +0 -15
- package/dist/cli.js.map +0 -1
- package/dist/config.d.ts +0 -77
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js +0 -221
- package/dist/config.js.map +0 -1
- package/dist/core/agent-session-runtime.d.ts +0 -99
- package/dist/core/agent-session-runtime.d.ts.map +0 -1
- package/dist/core/agent-session-runtime.js +0 -261
- package/dist/core/agent-session-runtime.js.map +0 -1
- package/dist/core/agent-session-services.d.ts +0 -85
- package/dist/core/agent-session-services.d.ts.map +0 -1
- package/dist/core/agent-session-services.js +0 -116
- package/dist/core/agent-session-services.js.map +0 -1
- package/dist/core/agent-session.d.ts +0 -590
- package/dist/core/agent-session.d.ts.map +0 -1
- package/dist/core/agent-session.js +0 -2505
- package/dist/core/agent-session.js.map +0 -1
- package/dist/core/auth-storage.d.ts +0 -132
- package/dist/core/auth-storage.d.ts.map +0 -1
- package/dist/core/auth-storage.js +0 -422
- package/dist/core/auth-storage.js.map +0 -1
- package/dist/core/bash-executor.d.ts +0 -32
- package/dist/core/bash-executor.d.ts.map +0 -1
- package/dist/core/bash-executor.js +0 -108
- package/dist/core/bash-executor.js.map +0 -1
- package/dist/core/compaction/branch-summarization.d.ts +0 -88
- package/dist/core/compaction/branch-summarization.d.ts.map +0 -1
- package/dist/core/compaction/branch-summarization.js +0 -243
- package/dist/core/compaction/branch-summarization.js.map +0 -1
- package/dist/core/compaction/compaction.d.ts +0 -121
- package/dist/core/compaction/compaction.d.ts.map +0 -1
- package/dist/core/compaction/compaction.js +0 -615
- package/dist/core/compaction/compaction.js.map +0 -1
- package/dist/core/compaction/index.d.ts +0 -7
- package/dist/core/compaction/index.d.ts.map +0 -1
- package/dist/core/compaction/index.js +0 -7
- package/dist/core/compaction/index.js.map +0 -1
- package/dist/core/compaction/utils.d.ts +0 -38
- package/dist/core/compaction/utils.d.ts.map +0 -1
- package/dist/core/compaction/utils.js +0 -153
- package/dist/core/compaction/utils.js.map +0 -1
- package/dist/core/defaults.d.ts +0 -3
- package/dist/core/defaults.d.ts.map +0 -1
- package/dist/core/defaults.js +0 -2
- package/dist/core/defaults.js.map +0 -1
- package/dist/core/diagnostics.d.ts +0 -15
- package/dist/core/diagnostics.d.ts.map +0 -1
- package/dist/core/diagnostics.js +0 -2
- package/dist/core/diagnostics.js.map +0 -1
- package/dist/core/event-bus.d.ts +0 -9
- package/dist/core/event-bus.d.ts.map +0 -1
- package/dist/core/event-bus.js +0 -25
- package/dist/core/event-bus.js.map +0 -1
- package/dist/core/exec.d.ts +0 -29
- package/dist/core/exec.d.ts.map +0 -1
- package/dist/core/exec.js +0 -75
- package/dist/core/exec.js.map +0 -1
- package/dist/core/export-html/ansi-to-html.d.ts +0 -22
- package/dist/core/export-html/ansi-to-html.d.ts.map +0 -1
- package/dist/core/export-html/ansi-to-html.js +0 -249
- package/dist/core/export-html/ansi-to-html.js.map +0 -1
- package/dist/core/export-html/index.d.ts +0 -37
- package/dist/core/export-html/index.d.ts.map +0 -1
- package/dist/core/export-html/index.js +0 -224
- package/dist/core/export-html/index.js.map +0 -1
- package/dist/core/export-html/template.css +0 -1017
- package/dist/core/export-html/template.html +0 -55
- package/dist/core/export-html/template.js +0 -1729
- package/dist/core/export-html/tool-renderer.d.ts +0 -40
- package/dist/core/export-html/tool-renderer.d.ts.map +0 -1
- package/dist/core/export-html/tool-renderer.js +0 -95
- package/dist/core/export-html/tool-renderer.js.map +0 -1
- package/dist/core/export-html/vendor/highlight.min.js +0 -1213
- package/dist/core/export-html/vendor/marked.min.js +0 -6
- package/dist/core/extensions/index.d.ts +0 -12
- package/dist/core/extensions/index.d.ts.map +0 -1
- package/dist/core/extensions/index.js +0 -9
- package/dist/core/extensions/index.js.map +0 -1
- package/dist/core/extensions/loader.d.ts +0 -25
- package/dist/core/extensions/loader.d.ts.map +0 -1
- package/dist/core/extensions/loader.js +0 -436
- package/dist/core/extensions/loader.js.map +0 -1
- package/dist/core/extensions/runner.d.ts +0 -150
- package/dist/core/extensions/runner.d.ts.map +0 -1
- package/dist/core/extensions/runner.js +0 -706
- package/dist/core/extensions/runner.js.map +0 -1
- package/dist/core/extensions/types.d.ts +0 -1111
- package/dist/core/extensions/types.d.ts.map +0 -1
- package/dist/core/extensions/types.js +0 -45
- package/dist/core/extensions/types.js.map +0 -1
- package/dist/core/extensions/wrapper.d.ts +0 -20
- package/dist/core/extensions/wrapper.d.ts.map +0 -1
- package/dist/core/extensions/wrapper.js +0 -22
- package/dist/core/extensions/wrapper.js.map +0 -1
- package/dist/core/footer-data-provider.d.ts +0 -48
- package/dist/core/footer-data-provider.d.ts.map +0 -1
- package/dist/core/footer-data-provider.js +0 -314
- package/dist/core/footer-data-provider.js.map +0 -1
- package/dist/core/index.d.ts +0 -12
- package/dist/core/index.d.ts.map +0 -1
- package/dist/core/index.js +0 -12
- package/dist/core/index.js.map +0 -1
- package/dist/core/keybindings.d.ts +0 -353
- package/dist/core/keybindings.d.ts.map +0 -1
- package/dist/core/keybindings.js +0 -295
- package/dist/core/keybindings.js.map +0 -1
- package/dist/core/messages.d.ts +0 -77
- package/dist/core/messages.d.ts.map +0 -1
- package/dist/core/messages.js +0 -123
- package/dist/core/messages.js.map +0 -1
- package/dist/core/model-registry.d.ts +0 -132
- package/dist/core/model-registry.d.ts.map +0 -1
- package/dist/core/model-registry.js +0 -635
- package/dist/core/model-registry.js.map +0 -1
- package/dist/core/model-resolver.d.ts +0 -110
- package/dist/core/model-resolver.d.ts.map +0 -1
- package/dist/core/model-resolver.js +0 -486
- package/dist/core/model-resolver.js.map +0 -1
- package/dist/core/output-guard.d.ts +0 -6
- package/dist/core/output-guard.d.ts.map +0 -1
- package/dist/core/output-guard.js +0 -59
- package/dist/core/output-guard.js.map +0 -1
- package/dist/core/package-manager.d.ts +0 -194
- package/dist/core/package-manager.d.ts.map +0 -1
- package/dist/core/package-manager.js +0 -1882
- package/dist/core/package-manager.js.map +0 -1
- package/dist/core/prompt-templates.d.ts +0 -52
- package/dist/core/prompt-templates.d.ts.map +0 -1
- package/dist/core/prompt-templates.js +0 -250
- package/dist/core/prompt-templates.js.map +0 -1
- package/dist/core/resolve-config-value.d.ts +0 -23
- package/dist/core/resolve-config-value.d.ts.map +0 -1
- package/dist/core/resolve-config-value.js +0 -126
- package/dist/core/resolve-config-value.js.map +0 -1
- package/dist/core/resource-loader.d.ts +0 -194
- package/dist/core/resource-loader.d.ts.map +0 -1
- package/dist/core/resource-loader.js +0 -726
- package/dist/core/resource-loader.js.map +0 -1
- package/dist/core/sdk.d.ts +0 -99
- package/dist/core/sdk.d.ts.map +0 -1
- package/dist/core/sdk.js +0 -261
- package/dist/core/sdk.js.map +0 -1
- package/dist/core/session-cwd.d.ts +0 -19
- package/dist/core/session-cwd.d.ts.map +0 -1
- package/dist/core/session-cwd.js +0 -38
- package/dist/core/session-cwd.js.map +0 -1
- package/dist/core/session-manager.d.ts +0 -333
- package/dist/core/session-manager.d.ts.map +0 -1
- package/dist/core/session-manager.js +0 -1109
- package/dist/core/session-manager.js.map +0 -1
- package/dist/core/settings-manager.d.ts +0 -240
- package/dist/core/settings-manager.d.ts.map +0 -1
- package/dist/core/settings-manager.js +0 -711
- package/dist/core/settings-manager.js.map +0 -1
- package/dist/core/skills.d.ts +0 -60
- package/dist/core/skills.d.ts.map +0 -1
- package/dist/core/skills.js +0 -409
- package/dist/core/skills.js.map +0 -1
- package/dist/core/slash-commands.d.ts +0 -14
- package/dist/core/slash-commands.d.ts.map +0 -1
- package/dist/core/slash-commands.js +0 -24
- package/dist/core/slash-commands.js.map +0 -1
- package/dist/core/source-info.d.ts +0 -18
- package/dist/core/source-info.d.ts.map +0 -1
- package/dist/core/source-info.js +0 -19
- package/dist/core/source-info.js.map +0 -1
- package/dist/core/system-prompt.d.ts +0 -28
- package/dist/core/system-prompt.d.ts.map +0 -1
- package/dist/core/system-prompt.js +0 -120
- package/dist/core/system-prompt.js.map +0 -1
- package/dist/core/telemetry.d.ts +0 -3
- package/dist/core/telemetry.d.ts.map +0 -1
- package/dist/core/telemetry.js +0 -9
- package/dist/core/telemetry.js.map +0 -1
- package/dist/core/timings.d.ts +0 -8
- package/dist/core/timings.d.ts.map +0 -1
- package/dist/core/timings.js +0 -31
- package/dist/core/timings.js.map +0 -1
- package/dist/core/tools/bash.d.ts +0 -64
- package/dist/core/tools/bash.d.ts.map +0 -1
- package/dist/core/tools/bash.js +0 -355
- package/dist/core/tools/bash.js.map +0 -1
- package/dist/core/tools/edit-diff.d.ts +0 -85
- package/dist/core/tools/edit-diff.d.ts.map +0 -1
- package/dist/core/tools/edit-diff.js +0 -337
- package/dist/core/tools/edit-diff.js.map +0 -1
- package/dist/core/tools/edit.d.ts +0 -49
- package/dist/core/tools/edit.d.ts.map +0 -1
- package/dist/core/tools/edit.js +0 -323
- package/dist/core/tools/edit.js.map +0 -1
- package/dist/core/tools/file-mutation-queue.d.ts +0 -6
- package/dist/core/tools/file-mutation-queue.d.ts.map +0 -1
- package/dist/core/tools/file-mutation-queue.js +0 -37
- package/dist/core/tools/file-mutation-queue.js.map +0 -1
- package/dist/core/tools/find.d.ts +0 -35
- package/dist/core/tools/find.d.ts.map +0 -1
- package/dist/core/tools/find.js +0 -298
- package/dist/core/tools/find.js.map +0 -1
- package/dist/core/tools/grep.d.ts +0 -37
- package/dist/core/tools/grep.d.ts.map +0 -1
- package/dist/core/tools/grep.js +0 -304
- package/dist/core/tools/grep.js.map +0 -1
- package/dist/core/tools/index.d.ts +0 -40
- package/dist/core/tools/index.d.ts.map +0 -1
- package/dist/core/tools/index.js +0 -112
- package/dist/core/tools/index.js.map +0 -1
- package/dist/core/tools/ls.d.ts +0 -37
- package/dist/core/tools/ls.d.ts.map +0 -1
- package/dist/core/tools/ls.js +0 -169
- package/dist/core/tools/ls.js.map +0 -1
- package/dist/core/tools/path-utils.d.ts +0 -8
- package/dist/core/tools/path-utils.d.ts.map +0 -1
- package/dist/core/tools/path-utils.js +0 -81
- package/dist/core/tools/path-utils.js.map +0 -1
- package/dist/core/tools/read.d.ts +0 -35
- package/dist/core/tools/read.d.ts.map +0 -1
- package/dist/core/tools/read.js +0 -232
- package/dist/core/tools/read.js.map +0 -1
- package/dist/core/tools/render-utils.d.ts +0 -21
- package/dist/core/tools/render-utils.d.ts.map +0 -1
- package/dist/core/tools/render-utils.js +0 -49
- package/dist/core/tools/render-utils.js.map +0 -1
- package/dist/core/tools/tool-definition-wrapper.d.ts +0 -14
- package/dist/core/tools/tool-definition-wrapper.d.ts.map +0 -1
- package/dist/core/tools/tool-definition-wrapper.js +0 -34
- package/dist/core/tools/tool-definition-wrapper.js.map +0 -1
- package/dist/core/tools/truncate.d.ts +0 -70
- package/dist/core/tools/truncate.d.ts.map +0 -1
- package/dist/core/tools/truncate.js +0 -205
- package/dist/core/tools/truncate.js.map +0 -1
- package/dist/core/tools/write.d.ts +0 -26
- package/dist/core/tools/write.d.ts.map +0 -1
- package/dist/core/tools/write.js +0 -213
- package/dist/core/tools/write.js.map +0 -1
- package/dist/index.d.ts +0 -28
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -41
- package/dist/index.js.map +0 -1
- package/dist/main.d.ts +0 -12
- package/dist/main.d.ts.map +0 -1
- package/dist/main.js +0 -589
- package/dist/main.js.map +0 -1
- package/dist/migrations.d.ts +0 -33
- package/dist/migrations.d.ts.map +0 -1
- package/dist/migrations.js +0 -281
- package/dist/migrations.js.map +0 -1
- package/dist/modes/index.d.ts +0 -9
- package/dist/modes/index.d.ts.map +0 -1
- package/dist/modes/index.js +0 -8
- package/dist/modes/index.js.map +0 -1
- package/dist/modes/interactive/assets/clankolas.png +0 -0
- package/dist/modes/interactive/components/armin.d.ts +0 -34
- package/dist/modes/interactive/components/armin.d.ts.map +0 -1
- package/dist/modes/interactive/components/armin.js +0 -333
- package/dist/modes/interactive/components/armin.js.map +0 -1
- package/dist/modes/interactive/components/assistant-message.d.ts +0 -20
- package/dist/modes/interactive/components/assistant-message.d.ts.map +0 -1
- package/dist/modes/interactive/components/assistant-message.js +0 -121
- package/dist/modes/interactive/components/assistant-message.js.map +0 -1
- package/dist/modes/interactive/components/bash-execution.d.ts +0 -34
- package/dist/modes/interactive/components/bash-execution.d.ts.map +0 -1
- package/dist/modes/interactive/components/bash-execution.js +0 -175
- package/dist/modes/interactive/components/bash-execution.js.map +0 -1
- package/dist/modes/interactive/components/bordered-loader.d.ts +0 -16
- package/dist/modes/interactive/components/bordered-loader.d.ts.map +0 -1
- package/dist/modes/interactive/components/bordered-loader.js +0 -54
- package/dist/modes/interactive/components/bordered-loader.js.map +0 -1
- package/dist/modes/interactive/components/branch-summary-message.d.ts +0 -16
- package/dist/modes/interactive/components/branch-summary-message.d.ts.map +0 -1
- package/dist/modes/interactive/components/branch-summary-message.js +0 -44
- package/dist/modes/interactive/components/branch-summary-message.js.map +0 -1
- package/dist/modes/interactive/components/compaction-summary-message.d.ts +0 -16
- package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +0 -1
- package/dist/modes/interactive/components/compaction-summary-message.js +0 -45
- package/dist/modes/interactive/components/compaction-summary-message.js.map +0 -1
- package/dist/modes/interactive/components/config-selector.d.ts +0 -71
- package/dist/modes/interactive/components/config-selector.d.ts.map +0 -1
- package/dist/modes/interactive/components/config-selector.js +0 -479
- package/dist/modes/interactive/components/config-selector.js.map +0 -1
- package/dist/modes/interactive/components/countdown-timer.d.ts +0 -14
- package/dist/modes/interactive/components/countdown-timer.d.ts.map +0 -1
- package/dist/modes/interactive/components/countdown-timer.js +0 -33
- package/dist/modes/interactive/components/countdown-timer.js.map +0 -1
- package/dist/modes/interactive/components/custom-editor.d.ts +0 -21
- package/dist/modes/interactive/components/custom-editor.d.ts.map +0 -1
- package/dist/modes/interactive/components/custom-editor.js +0 -70
- package/dist/modes/interactive/components/custom-editor.js.map +0 -1
- package/dist/modes/interactive/components/custom-message.d.ts +0 -20
- package/dist/modes/interactive/components/custom-message.d.ts.map +0 -1
- package/dist/modes/interactive/components/custom-message.js +0 -79
- package/dist/modes/interactive/components/custom-message.js.map +0 -1
- package/dist/modes/interactive/components/daxnuts.d.ts +0 -23
- package/dist/modes/interactive/components/daxnuts.d.ts.map +0 -1
- package/dist/modes/interactive/components/daxnuts.js +0 -140
- package/dist/modes/interactive/components/daxnuts.js.map +0 -1
- package/dist/modes/interactive/components/diff.d.ts +0 -12
- package/dist/modes/interactive/components/diff.d.ts.map +0 -1
- package/dist/modes/interactive/components/diff.js +0 -133
- package/dist/modes/interactive/components/diff.js.map +0 -1
- package/dist/modes/interactive/components/dynamic-border.d.ts +0 -15
- package/dist/modes/interactive/components/dynamic-border.d.ts.map +0 -1
- package/dist/modes/interactive/components/dynamic-border.js +0 -21
- package/dist/modes/interactive/components/dynamic-border.js.map +0 -1
- package/dist/modes/interactive/components/earendil-announcement.d.ts +0 -5
- package/dist/modes/interactive/components/earendil-announcement.d.ts.map +0 -1
- package/dist/modes/interactive/components/earendil-announcement.js +0 -40
- package/dist/modes/interactive/components/earendil-announcement.js.map +0 -1
- package/dist/modes/interactive/components/extension-editor.d.ts +0 -20
- package/dist/modes/interactive/components/extension-editor.d.ts.map +0 -1
- package/dist/modes/interactive/components/extension-editor.js +0 -111
- package/dist/modes/interactive/components/extension-editor.js.map +0 -1
- package/dist/modes/interactive/components/extension-input.d.ts +0 -23
- package/dist/modes/interactive/components/extension-input.d.ts.map +0 -1
- package/dist/modes/interactive/components/extension-input.js +0 -61
- package/dist/modes/interactive/components/extension-input.js.map +0 -1
- package/dist/modes/interactive/components/extension-selector.d.ts +0 -24
- package/dist/modes/interactive/components/extension-selector.d.ts.map +0 -1
- package/dist/modes/interactive/components/extension-selector.js +0 -78
- package/dist/modes/interactive/components/extension-selector.js.map +0 -1
- package/dist/modes/interactive/components/footer.d.ts +0 -27
- package/dist/modes/interactive/components/footer.d.ts.map +0 -1
- package/dist/modes/interactive/components/footer.js +0 -201
- package/dist/modes/interactive/components/footer.js.map +0 -1
- package/dist/modes/interactive/components/index.d.ts +0 -32
- package/dist/modes/interactive/components/index.d.ts.map +0 -1
- package/dist/modes/interactive/components/index.js +0 -33
- package/dist/modes/interactive/components/index.js.map +0 -1
- package/dist/modes/interactive/components/keybinding-hints.d.ts +0 -8
- package/dist/modes/interactive/components/keybinding-hints.d.ts.map +0 -1
- package/dist/modes/interactive/components/keybinding-hints.js +0 -22
- package/dist/modes/interactive/components/keybinding-hints.js.map +0 -1
- package/dist/modes/interactive/components/login-dialog.d.ts +0 -42
- package/dist/modes/interactive/components/login-dialog.d.ts.map +0 -1
- package/dist/modes/interactive/components/login-dialog.js +0 -145
- package/dist/modes/interactive/components/login-dialog.js.map +0 -1
- package/dist/modes/interactive/components/model-selector.d.ts +0 -47
- package/dist/modes/interactive/components/model-selector.d.ts.map +0 -1
- package/dist/modes/interactive/components/model-selector.js +0 -278
- package/dist/modes/interactive/components/model-selector.js.map +0 -1
- package/dist/modes/interactive/components/oauth-selector.d.ts +0 -19
- package/dist/modes/interactive/components/oauth-selector.d.ts.map +0 -1
- package/dist/modes/interactive/components/oauth-selector.js +0 -97
- package/dist/modes/interactive/components/oauth-selector.js.map +0 -1
- package/dist/modes/interactive/components/scoped-models-selector.d.ts +0 -42
- package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +0 -1
- package/dist/modes/interactive/components/scoped-models-selector.js +0 -290
- package/dist/modes/interactive/components/scoped-models-selector.js.map +0 -1
- package/dist/modes/interactive/components/session-selector-search.d.ts +0 -23
- package/dist/modes/interactive/components/session-selector-search.d.ts.map +0 -1
- package/dist/modes/interactive/components/session-selector-search.js +0 -155
- package/dist/modes/interactive/components/session-selector-search.js.map +0 -1
- package/dist/modes/interactive/components/session-selector.d.ts +0 -96
- package/dist/modes/interactive/components/session-selector.d.ts.map +0 -1
- package/dist/modes/interactive/components/session-selector.js +0 -865
- package/dist/modes/interactive/components/session-selector.js.map +0 -1
- package/dist/modes/interactive/components/settings-selector.d.ts +0 -60
- package/dist/modes/interactive/components/settings-selector.d.ts.map +0 -1
- package/dist/modes/interactive/components/settings-selector.js +0 -311
- package/dist/modes/interactive/components/settings-selector.js.map +0 -1
- package/dist/modes/interactive/components/show-images-selector.d.ts +0 -10
- package/dist/modes/interactive/components/show-images-selector.d.ts.map +0 -1
- package/dist/modes/interactive/components/show-images-selector.js +0 -39
- package/dist/modes/interactive/components/show-images-selector.js.map +0 -1
- package/dist/modes/interactive/components/skill-invocation-message.d.ts +0 -17
- package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +0 -1
- package/dist/modes/interactive/components/skill-invocation-message.js +0 -47
- package/dist/modes/interactive/components/skill-invocation-message.js.map +0 -1
- package/dist/modes/interactive/components/theme-selector.d.ts +0 -11
- package/dist/modes/interactive/components/theme-selector.d.ts.map +0 -1
- package/dist/modes/interactive/components/theme-selector.js +0 -50
- package/dist/modes/interactive/components/theme-selector.js.map +0 -1
- package/dist/modes/interactive/components/thinking-selector.d.ts +0 -11
- package/dist/modes/interactive/components/thinking-selector.d.ts.map +0 -1
- package/dist/modes/interactive/components/thinking-selector.js +0 -51
- package/dist/modes/interactive/components/thinking-selector.js.map +0 -1
- package/dist/modes/interactive/components/tool-execution.d.ts +0 -60
- package/dist/modes/interactive/components/tool-execution.d.ts.map +0 -1
- package/dist/modes/interactive/components/tool-execution.js +0 -289
- package/dist/modes/interactive/components/tool-execution.js.map +0 -1
- package/dist/modes/interactive/components/tree-selector.d.ts +0 -89
- package/dist/modes/interactive/components/tree-selector.d.ts.map +0 -1
- package/dist/modes/interactive/components/tree-selector.js +0 -1092
- package/dist/modes/interactive/components/tree-selector.js.map +0 -1
- package/dist/modes/interactive/components/user-message-selector.d.ts +0 -30
- package/dist/modes/interactive/components/user-message-selector.d.ts.map +0 -1
- package/dist/modes/interactive/components/user-message-selector.js +0 -114
- package/dist/modes/interactive/components/user-message-selector.js.map +0 -1
- package/dist/modes/interactive/components/user-message.d.ts +0 -10
- package/dist/modes/interactive/components/user-message.d.ts.map +0 -1
- package/dist/modes/interactive/components/user-message.js +0 -29
- package/dist/modes/interactive/components/user-message.js.map +0 -1
- package/dist/modes/interactive/components/visual-truncate.d.ts +0 -24
- package/dist/modes/interactive/components/visual-truncate.d.ts.map +0 -1
- package/dist/modes/interactive/components/visual-truncate.js +0 -33
- package/dist/modes/interactive/components/visual-truncate.js.map +0 -1
- package/dist/modes/interactive/interactive-mode.d.ts +0 -343
- package/dist/modes/interactive/interactive-mode.d.ts.map +0 -1
- package/dist/modes/interactive/interactive-mode.js +0 -4315
- package/dist/modes/interactive/interactive-mode.js.map +0 -1
- package/dist/modes/interactive/theme/aery.json +0 -84
- package/dist/modes/interactive/theme/dark.json +0 -85
- package/dist/modes/interactive/theme/light.json +0 -84
- package/dist/modes/interactive/theme/theme-schema.json +0 -335
- package/dist/modes/interactive/theme/theme.d.ts +0 -81
- package/dist/modes/interactive/theme/theme.d.ts.map +0 -1
- package/dist/modes/interactive/theme/theme.js +0 -979
- package/dist/modes/interactive/theme/theme.js.map +0 -1
- package/dist/modes/print-mode.d.ts +0 -28
- package/dist/modes/print-mode.d.ts.map +0 -1
- package/dist/modes/print-mode.js +0 -141
- package/dist/modes/print-mode.js.map +0 -1
- package/dist/modes/rpc/jsonl.d.ts +0 -17
- package/dist/modes/rpc/jsonl.d.ts.map +0 -1
- package/dist/modes/rpc/jsonl.js +0 -49
- package/dist/modes/rpc/jsonl.js.map +0 -1
- package/dist/modes/rpc/rpc-client.d.ts +0 -224
- package/dist/modes/rpc/rpc-client.d.ts.map +0 -1
- package/dist/modes/rpc/rpc-client.js +0 -410
- package/dist/modes/rpc/rpc-client.js.map +0 -1
- package/dist/modes/rpc/rpc-mode.d.ts +0 -20
- package/dist/modes/rpc/rpc-mode.d.ts.map +0 -1
- package/dist/modes/rpc/rpc-mode.js +0 -601
- package/dist/modes/rpc/rpc-mode.js.map +0 -1
- package/dist/modes/rpc/rpc-types.d.ts +0 -419
- package/dist/modes/rpc/rpc-types.d.ts.map +0 -1
- package/dist/modes/rpc/rpc-types.js +0 -8
- package/dist/modes/rpc/rpc-types.js.map +0 -1
- package/dist/package-manager-cli.d.ts +0 -4
- package/dist/package-manager-cli.d.ts.map +0 -1
- package/dist/package-manager-cli.js +0 -234
- package/dist/package-manager-cli.js.map +0 -1
- package/dist/utils/changelog.d.ts +0 -21
- package/dist/utils/changelog.d.ts.map +0 -1
- package/dist/utils/changelog.js +0 -87
- package/dist/utils/changelog.js.map +0 -1
- package/dist/utils/child-process.d.ts +0 -11
- package/dist/utils/child-process.d.ts.map +0 -1
- package/dist/utils/child-process.js +0 -78
- package/dist/utils/child-process.js.map +0 -1
- package/dist/utils/clipboard-image.d.ts +0 -11
- package/dist/utils/clipboard-image.d.ts.map +0 -1
- package/dist/utils/clipboard-image.js +0 -245
- package/dist/utils/clipboard-image.js.map +0 -1
- package/dist/utils/clipboard-native.d.ts +0 -8
- package/dist/utils/clipboard-native.d.ts.map +0 -1
- package/dist/utils/clipboard-native.js +0 -14
- package/dist/utils/clipboard-native.js.map +0 -1
- package/dist/utils/clipboard.d.ts +0 -2
- package/dist/utils/clipboard.d.ts.map +0 -1
- package/dist/utils/clipboard.js +0 -78
- package/dist/utils/clipboard.js.map +0 -1
- package/dist/utils/exif-orientation.d.ts +0 -5
- package/dist/utils/exif-orientation.d.ts.map +0 -1
- package/dist/utils/exif-orientation.js +0 -158
- package/dist/utils/exif-orientation.js.map +0 -1
- package/dist/utils/frontmatter.d.ts +0 -8
- package/dist/utils/frontmatter.d.ts.map +0 -1
- package/dist/utils/frontmatter.js +0 -26
- package/dist/utils/frontmatter.js.map +0 -1
- package/dist/utils/git.d.ts +0 -26
- package/dist/utils/git.d.ts.map +0 -1
- package/dist/utils/git.js +0 -163
- package/dist/utils/git.js.map +0 -1
- package/dist/utils/image-convert.d.ts +0 -9
- package/dist/utils/image-convert.d.ts.map +0 -1
- package/dist/utils/image-convert.js +0 -39
- package/dist/utils/image-convert.js.map +0 -1
- package/dist/utils/image-resize.d.ts +0 -36
- package/dist/utils/image-resize.d.ts.map +0 -1
- package/dist/utils/image-resize.js +0 -137
- package/dist/utils/image-resize.js.map +0 -1
- package/dist/utils/mime.d.ts +0 -2
- package/dist/utils/mime.d.ts.map +0 -1
- package/dist/utils/mime.js +0 -26
- package/dist/utils/mime.js.map +0 -1
- package/dist/utils/paths.d.ts +0 -7
- package/dist/utils/paths.d.ts.map +0 -1
- package/dist/utils/paths.js +0 -19
- package/dist/utils/paths.js.map +0 -1
- package/dist/utils/photon.d.ts +0 -21
- package/dist/utils/photon.d.ts.map +0 -1
- package/dist/utils/photon.js +0 -121
- package/dist/utils/photon.js.map +0 -1
- package/dist/utils/shell.d.ts +0 -29
- package/dist/utils/shell.d.ts.map +0 -1
- package/dist/utils/shell.js +0 -203
- package/dist/utils/shell.js.map +0 -1
- package/dist/utils/sleep.d.ts +0 -5
- package/dist/utils/sleep.d.ts.map +0 -1
- package/dist/utils/sleep.js +0 -17
- package/dist/utils/sleep.js.map +0 -1
- package/dist/utils/tools-manager.d.ts +0 -3
- package/dist/utils/tools-manager.d.ts.map +0 -1
- package/dist/utils/tools-manager.js +0 -252
- package/dist/utils/tools-manager.js.map +0 -1
package/README.md
CHANGED
|
@@ -2,8 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
> AI coding agent for the terminal. Built by Aryee.
|
|
4
4
|
|
|
5
|
-
Aery is a powerful, extensible AI coding agent that lives in your terminal. It reads your codebase, edits files, runs commands, and manages git workflows through natural language — with automatic model failover across 300+ providers.
|
|
6
|
-
|
|
7
5
|
## Install
|
|
8
6
|
|
|
9
7
|
```bash
|
|
@@ -22,38 +20,10 @@ git clone https://github.com/eminent337/aery && cd aery && ./install.sh
|
|
|
22
20
|
aery
|
|
23
21
|
```
|
|
24
22
|
|
|
25
|
-
## Why Aery?
|
|
26
|
-
|
|
27
|
-
- **Multi-provider** — works with NVIDIA, OpenRouter, Anthropic, OpenAI, Gemini, and 300+ more
|
|
28
|
-
- **Auto-router** — automatically picks the best model for each task (simple vs complex)
|
|
29
|
-
- **Model failover** — switches to next working model on rate limits or errors (402/429)
|
|
30
|
-
- **Free model support** — works with free OpenRouter models, handles their limitations automatically
|
|
31
|
-
- **27 extensions** — agent teams, loop scheduler, session memory, health scoring, and more
|
|
32
|
-
|
|
33
23
|
## Extensions
|
|
34
24
|
|
|
35
|
-
All features are
|
|
25
|
+
All features are added as extensions in `~/.aery/agent/extensions/`.
|
|
36
26
|
|
|
37
27
|
## Configuration
|
|
38
28
|
|
|
39
|
-
|
|
40
|
-
~/.aery/agent/
|
|
41
|
-
├── settings.json — theme, extensions, defaults
|
|
42
|
-
├── auth.json — API keys
|
|
43
|
-
├── profiles.json — provider profiles
|
|
44
|
-
├── models.json — custom model definitions
|
|
45
|
-
└── AGENTS.md — system prompt injected every session
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
## Key Commands
|
|
49
|
-
|
|
50
|
-
```
|
|
51
|
-
/provider — switch provider/model profile
|
|
52
|
-
/loop 1h ... — schedule recurring agent task
|
|
53
|
-
/health — run code quality checks
|
|
54
|
-
/checkpoint — save/restore working state
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
## License
|
|
58
|
-
|
|
59
|
-
MIT — see [LICENSE](LICENSE)
|
|
29
|
+
Settings: `~/.aery/agent/settings.json`
|
package/docs/compaction.md
CHANGED
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
LLMs have limited context windows. When conversations grow too long, pi uses compaction to summarize older content while preserving recent work. This page covers both auto-compaction and branch summarization.
|
|
4
4
|
|
|
5
|
-
**Source files** ([pi-mono](https://github.com/
|
|
6
|
-
- [`packages/coding-agent/src/core/compaction/compaction.ts`](https://github.com/
|
|
7
|
-
- [`packages/coding-agent/src/core/compaction/branch-summarization.ts`](https://github.com/
|
|
8
|
-
- [`packages/coding-agent/src/core/compaction/utils.ts`](https://github.com/
|
|
9
|
-
- [`packages/coding-agent/src/core/session-manager.ts`](https://github.com/
|
|
10
|
-
- [`packages/coding-agent/src/core/extensions/types.ts`](https://github.com/
|
|
5
|
+
**Source files** ([pi-mono](https://github.com/badlogic/pi-mono)):
|
|
6
|
+
- [`packages/coding-agent/src/core/compaction/compaction.ts`](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/compaction/compaction.ts) - Auto-compaction logic
|
|
7
|
+
- [`packages/coding-agent/src/core/compaction/branch-summarization.ts`](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/compaction/branch-summarization.ts) - Branch summarization
|
|
8
|
+
- [`packages/coding-agent/src/core/compaction/utils.ts`](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/compaction/utils.ts) - Shared utilities (file tracking, serialization)
|
|
9
|
+
- [`packages/coding-agent/src/core/session-manager.ts`](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/session-manager.ts) - Entry types (`CompactionEntry`, `BranchSummaryEntry`)
|
|
10
|
+
- [`packages/coding-agent/src/core/extensions/types.ts`](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/extensions/types.ts) - Extension event types
|
|
11
11
|
|
|
12
|
-
For TypeScript definitions in your project, inspect `node_modules/@mariozechner/
|
|
12
|
+
For TypeScript definitions in your project, inspect `node_modules/@mariozechner/pi-coding-agent/dist/`.
|
|
13
13
|
|
|
14
14
|
## Overview
|
|
15
15
|
|
|
@@ -118,7 +118,7 @@ Never cut at tool results (they must stay with their tool call).
|
|
|
118
118
|
|
|
119
119
|
### CompactionEntry Structure
|
|
120
120
|
|
|
121
|
-
Defined in [`session-manager.ts`](https://github.com/
|
|
121
|
+
Defined in [`session-manager.ts`](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/session-manager.ts):
|
|
122
122
|
|
|
123
123
|
```typescript
|
|
124
124
|
interface CompactionEntry<T = unknown> {
|
|
@@ -142,7 +142,7 @@ interface CompactionDetails {
|
|
|
142
142
|
|
|
143
143
|
Extensions can store any JSON-serializable data in `details`. The default compaction tracks file operations, but custom extension implementations can use their own structure.
|
|
144
144
|
|
|
145
|
-
See [`prepareCompaction()`](https://github.com/
|
|
145
|
+
See [`prepareCompaction()`](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/compaction/compaction.ts) and [`compact()`](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/compaction/compaction.ts) for the implementation.
|
|
146
146
|
|
|
147
147
|
## Branch Summarization
|
|
148
148
|
|
|
@@ -185,7 +185,7 @@ This means file tracking accumulates across multiple compactions or nested branc
|
|
|
185
185
|
|
|
186
186
|
### BranchSummaryEntry Structure
|
|
187
187
|
|
|
188
|
-
Defined in [`session-manager.ts`](https://github.com/
|
|
188
|
+
Defined in [`session-manager.ts`](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/session-manager.ts):
|
|
189
189
|
|
|
190
190
|
```typescript
|
|
191
191
|
interface BranchSummaryEntry<T = unknown> {
|
|
@@ -208,7 +208,7 @@ interface BranchSummaryDetails {
|
|
|
208
208
|
|
|
209
209
|
Same as compaction, extensions can store custom data in `details`.
|
|
210
210
|
|
|
211
|
-
See [`collectEntriesForBranchSummary()`](https://github.com/
|
|
211
|
+
See [`collectEntriesForBranchSummary()`](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/compaction/branch-summarization.ts), [`prepareBranchEntries()`](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/compaction/branch-summarization.ts), and [`generateBranchSummary()`](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/compaction/branch-summarization.ts) for the implementation.
|
|
212
212
|
|
|
213
213
|
## Summary Format
|
|
214
214
|
|
|
@@ -252,7 +252,7 @@ path/to/changed.ts
|
|
|
252
252
|
|
|
253
253
|
### Message Serialization
|
|
254
254
|
|
|
255
|
-
Before summarization, messages are serialized to text via [`serializeConversation()`](https://github.com/
|
|
255
|
+
Before summarization, messages are serialized to text via [`serializeConversation()`](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/compaction/utils.ts):
|
|
256
256
|
|
|
257
257
|
```
|
|
258
258
|
[User]: What they said
|
|
@@ -268,7 +268,7 @@ Tool results are truncated to 2000 characters during serialization. Content beyo
|
|
|
268
268
|
|
|
269
269
|
## Custom Summarization via Extensions
|
|
270
270
|
|
|
271
|
-
Extensions can intercept and customize both compaction and branch summarization. See [`extensions/types.ts`](https://github.com/
|
|
271
|
+
Extensions can intercept and customize both compaction and branch summarization. See [`extensions/types.ts`](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/extensions/types.ts) for event type definitions.
|
|
272
272
|
|
|
273
273
|
### session_before_compact
|
|
274
274
|
|
|
@@ -309,7 +309,7 @@ pi.on("session_before_compact", async (event, ctx) => {
|
|
|
309
309
|
To generate a summary with your own model, convert messages to text using `serializeConversation`:
|
|
310
310
|
|
|
311
311
|
```typescript
|
|
312
|
-
import { convertToLlm, serializeConversation } from "@mariozechner/
|
|
312
|
+
import { convertToLlm, serializeConversation } from "@mariozechner/pi-coding-agent";
|
|
313
313
|
|
|
314
314
|
pi.on("session_before_compact", async (event, ctx) => {
|
|
315
315
|
const { preparation } = event;
|
package/docs/custom-provider.md
CHANGED
|
@@ -31,7 +31,7 @@ See these complete provider examples:
|
|
|
31
31
|
## Quick Reference
|
|
32
32
|
|
|
33
33
|
```typescript
|
|
34
|
-
import type { ExtensionAPI } from "@mariozechner/
|
|
34
|
+
import type { ExtensionAPI } from "@mariozechner/pi-coding-agent";
|
|
35
35
|
|
|
36
36
|
export default function (pi: ExtensionAPI) {
|
|
37
37
|
// Override baseUrl for existing provider
|
|
@@ -96,7 +96,7 @@ To add a completely new provider, specify `models` along with the required confi
|
|
|
96
96
|
If the model list comes from a remote endpoint, use an async extension factory:
|
|
97
97
|
|
|
98
98
|
```typescript
|
|
99
|
-
import type { ExtensionAPI } from "@mariozechner/
|
|
99
|
+
import type { ExtensionAPI } from "@mariozechner/pi-coding-agent";
|
|
100
100
|
|
|
101
101
|
export default async function (pi: ExtensionAPI) {
|
|
102
102
|
const response = await fetch("http://localhost:1234/v1/models");
|
|
@@ -345,12 +345,12 @@ interface OAuthCredentials {
|
|
|
345
345
|
For providers with non-standard APIs, implement `streamSimple`. Study the existing provider implementations before writing your own:
|
|
346
346
|
|
|
347
347
|
**Reference implementations:**
|
|
348
|
-
- [anthropic.ts](https://github.com/
|
|
349
|
-
- [mistral.ts](https://github.com/
|
|
350
|
-
- [openai-completions.ts](https://github.com/
|
|
351
|
-
- [openai-responses.ts](https://github.com/
|
|
352
|
-
- [google.ts](https://github.com/
|
|
353
|
-
- [amazon-bedrock.ts](https://github.com/
|
|
348
|
+
- [anthropic.ts](https://github.com/badlogic/pi-mono/blob/main/packages/ai/src/providers/anthropic.ts) - Anthropic Messages API
|
|
349
|
+
- [mistral.ts](https://github.com/badlogic/pi-mono/blob/main/packages/ai/src/providers/mistral.ts) - Mistral Conversations API
|
|
350
|
+
- [openai-completions.ts](https://github.com/badlogic/pi-mono/blob/main/packages/ai/src/providers/openai-completions.ts) - OpenAI Chat Completions
|
|
351
|
+
- [openai-responses.ts](https://github.com/badlogic/pi-mono/blob/main/packages/ai/src/providers/openai-responses.ts) - OpenAI Responses API
|
|
352
|
+
- [google.ts](https://github.com/badlogic/pi-mono/blob/main/packages/ai/src/providers/google.ts) - Google Generative AI
|
|
353
|
+
- [amazon-bedrock.ts](https://github.com/badlogic/pi-mono/blob/main/packages/ai/src/providers/amazon-bedrock.ts) - AWS Bedrock
|
|
354
354
|
|
|
355
355
|
### Stream Pattern
|
|
356
356
|
|
|
@@ -522,7 +522,7 @@ pi.registerProvider("my-provider", {
|
|
|
522
522
|
|
|
523
523
|
## Testing Your Implementation
|
|
524
524
|
|
|
525
|
-
Test your provider against the same test suites used by built-in providers. Copy and adapt these test files from [packages/ai/test/](https://github.com/
|
|
525
|
+
Test your provider against the same test suites used by built-in providers. Copy and adapt these test files from [packages/ai/test/](https://github.com/badlogic/pi-mono/tree/main/packages/ai/test):
|
|
526
526
|
|
|
527
527
|
| Test | Purpose |
|
|
528
528
|
|------|---------|
|
package/docs/development.md
CHANGED
|
@@ -5,7 +5,7 @@ See [AGENTS.md](../../../AGENTS.md) for additional guidelines.
|
|
|
5
5
|
## Setup
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
|
-
git clone https://github.com/
|
|
8
|
+
git clone https://github.com/badlogic/pi-mono
|
|
9
9
|
cd pi-mono
|
|
10
10
|
npm install
|
|
11
11
|
npm run build
|
|
@@ -25,7 +25,7 @@ Configure via `package.json`:
|
|
|
25
25
|
|
|
26
26
|
```json
|
|
27
27
|
{
|
|
28
|
-
"
|
|
28
|
+
"piConfig": {
|
|
29
29
|
"name": "pi",
|
|
30
30
|
"configDir": ".pi"
|
|
31
31
|
}
|
package/docs/extensions.md
CHANGED
|
@@ -56,7 +56,7 @@ See [examples/extensions/](../examples/extensions/) for working implementations.
|
|
|
56
56
|
Create `~/.pi/agent/extensions/my-extension.ts`:
|
|
57
57
|
|
|
58
58
|
```typescript
|
|
59
|
-
import type { ExtensionAPI } from "@mariozechner/
|
|
59
|
+
import type { ExtensionAPI } from "@mariozechner/pi-coding-agent";
|
|
60
60
|
import { Type } from "@sinclair/typebox";
|
|
61
61
|
|
|
62
62
|
export default function (pi: ExtensionAPI) {
|
|
@@ -138,7 +138,7 @@ To share extensions via npm or git as pi packages, see [packages.md](packages.md
|
|
|
138
138
|
|
|
139
139
|
| Package | Purpose |
|
|
140
140
|
|---------|---------|
|
|
141
|
-
| `@mariozechner/
|
|
141
|
+
| `@mariozechner/pi-coding-agent` | Extension types (`ExtensionAPI`, `ExtensionContext`, events) |
|
|
142
142
|
| `@sinclair/typebox` | Schema definitions for tool parameters |
|
|
143
143
|
| `@mariozechner/pi-ai` | AI utilities (`StringEnum` for Google-compatible enums) |
|
|
144
144
|
| `@mariozechner/pi-tui` | TUI components for custom rendering |
|
|
@@ -154,7 +154,7 @@ Node.js built-ins (`node:fs`, `node:path`, etc.) are also available.
|
|
|
154
154
|
An extension exports a default factory function that receives `ExtensionAPI`. The factory can be synchronous or asynchronous:
|
|
155
155
|
|
|
156
156
|
```typescript
|
|
157
|
-
import type { ExtensionAPI } from "@mariozechner/
|
|
157
|
+
import type { ExtensionAPI } from "@mariozechner/pi-coding-agent";
|
|
158
158
|
|
|
159
159
|
export default function (pi: ExtensionAPI) {
|
|
160
160
|
// Subscribe to events
|
|
@@ -183,7 +183,7 @@ If the factory returns a `Promise`, pi awaits it before continuing startup. That
|
|
|
183
183
|
Use an async factory for one-time startup work such as fetching remote configuration or dynamically discovering available models.
|
|
184
184
|
|
|
185
185
|
```typescript
|
|
186
|
-
import type { ExtensionAPI } from "@mariozechner/
|
|
186
|
+
import type { ExtensionAPI } from "@mariozechner/pi-coding-agent";
|
|
187
187
|
|
|
188
188
|
export default async function (pi: ExtensionAPI) {
|
|
189
189
|
const response = await fetch("http://localhost:1234/v1/models");
|
|
@@ -635,7 +635,7 @@ Behavior guarantees:
|
|
|
635
635
|
- Return values from `tool_call` only control blocking via `{ block: true, reason?: string }`
|
|
636
636
|
|
|
637
637
|
```typescript
|
|
638
|
-
import { isToolCallEventType } from "@mariozechner/
|
|
638
|
+
import { isToolCallEventType } from "@mariozechner/pi-coding-agent";
|
|
639
639
|
|
|
640
640
|
pi.on("tool_call", async (event, ctx) => {
|
|
641
641
|
// event.toolName - "bash", "read", "write", "edit", etc.
|
|
@@ -671,7 +671,7 @@ export type MyToolInput = Static<typeof myToolSchema>;
|
|
|
671
671
|
Use `isToolCallEventType` with explicit type parameters:
|
|
672
672
|
|
|
673
673
|
```typescript
|
|
674
|
-
import { isToolCallEventType } from "@mariozechner/
|
|
674
|
+
import { isToolCallEventType } from "@mariozechner/pi-coding-agent";
|
|
675
675
|
import type { MyToolInput } from "my-extension";
|
|
676
676
|
|
|
677
677
|
pi.on("tool_call", (event) => {
|
|
@@ -693,7 +693,7 @@ Fired after tool execution finishes and before `tool_execution_end` plus the fin
|
|
|
693
693
|
Use `ctx.signal` for nested async work inside the handler. This lets Esc cancel model calls, `fetch()`, and other abort-aware operations started by the extension.
|
|
694
694
|
|
|
695
695
|
```typescript
|
|
696
|
-
import { isBashToolResult } from "@mariozechner/
|
|
696
|
+
import { isBashToolResult } from "@mariozechner/pi-coding-agent";
|
|
697
697
|
|
|
698
698
|
pi.on("tool_result", async (event, ctx) => {
|
|
699
699
|
// event.toolName, event.toolCallId, event.input
|
|
@@ -721,7 +721,7 @@ pi.on("tool_result", async (event, ctx) => {
|
|
|
721
721
|
Fired when user executes `!` or `!!` commands. **Can intercept.**
|
|
722
722
|
|
|
723
723
|
```typescript
|
|
724
|
-
import { createLocalBashOperations } from "@mariozechner/
|
|
724
|
+
import { createLocalBashOperations } from "@mariozechner/pi-coding-agent";
|
|
725
725
|
|
|
726
726
|
pi.on("user_bash", (event, ctx) => {
|
|
727
727
|
// event.command - the bash command
|
|
@@ -1002,7 +1002,7 @@ if (result.cancelled) {
|
|
|
1002
1002
|
To discover available sessions, use the static `SessionManager.list()` or `SessionManager.listAll()` methods:
|
|
1003
1003
|
|
|
1004
1004
|
```typescript
|
|
1005
|
-
import { SessionManager } from "@mariozechner/
|
|
1005
|
+
import { SessionManager } from "@mariozechner/pi-coding-agent";
|
|
1006
1006
|
|
|
1007
1007
|
pi.registerCommand("switch", {
|
|
1008
1008
|
description: "Switch to another session",
|
|
@@ -1049,7 +1049,7 @@ Tools run with `ExtensionContext`, so they cannot call `ctx.reload()` directly.
|
|
|
1049
1049
|
Example tool the LLM can call to trigger reload:
|
|
1050
1050
|
|
|
1051
1051
|
```typescript
|
|
1052
|
-
import type { ExtensionAPI } from "@mariozechner/
|
|
1052
|
+
import type { ExtensionAPI } from "@mariozechner/pi-coding-agent";
|
|
1053
1053
|
import { Type } from "@sinclair/typebox";
|
|
1054
1054
|
|
|
1055
1055
|
export default function (pi: ExtensionAPI) {
|
|
@@ -1540,7 +1540,7 @@ Pass the real target file path to `withFileMutationQueue()`, not the raw user ar
|
|
|
1540
1540
|
Queue the entire mutation window on that target path. That includes read-modify-write logic, not just the final write.
|
|
1541
1541
|
|
|
1542
1542
|
```typescript
|
|
1543
|
-
import { withFileMutationQueue } from "@mariozechner/
|
|
1543
|
+
import { withFileMutationQueue } from "@mariozechner/pi-coding-agent";
|
|
1544
1544
|
import { mkdir, readFile, writeFile } from "node:fs/promises";
|
|
1545
1545
|
import { dirname, resolve } from "node:path";
|
|
1546
1546
|
|
|
@@ -1702,20 +1702,20 @@ See [examples/extensions/tool-override.ts](../examples/extensions/tool-override.
|
|
|
1702
1702
|
**Your implementation must match the exact result shape**, including the `details` type. The UI and session logic depend on these shapes for rendering and state tracking.
|
|
1703
1703
|
|
|
1704
1704
|
Built-in tool implementations:
|
|
1705
|
-
- [read.ts](https://github.com/
|
|
1706
|
-
- [bash.ts](https://github.com/
|
|
1707
|
-
- [edit.ts](https://github.com/
|
|
1708
|
-
- [write.ts](https://github.com/
|
|
1709
|
-
- [grep.ts](https://github.com/
|
|
1710
|
-
- [find.ts](https://github.com/
|
|
1711
|
-
- [ls.ts](https://github.com/
|
|
1705
|
+
- [read.ts](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/tools/read.ts) - `ReadToolDetails`
|
|
1706
|
+
- [bash.ts](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/tools/bash.ts) - `BashToolDetails`
|
|
1707
|
+
- [edit.ts](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/tools/edit.ts)
|
|
1708
|
+
- [write.ts](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/tools/write.ts)
|
|
1709
|
+
- [grep.ts](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/tools/grep.ts) - `GrepToolDetails`
|
|
1710
|
+
- [find.ts](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/tools/find.ts) - `FindToolDetails`
|
|
1711
|
+
- [ls.ts](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/tools/ls.ts) - `LsToolDetails`
|
|
1712
1712
|
|
|
1713
1713
|
### Remote Execution
|
|
1714
1714
|
|
|
1715
1715
|
Built-in tools support pluggable operations for delegating to remote systems (SSH, containers, etc.):
|
|
1716
1716
|
|
|
1717
1717
|
```typescript
|
|
1718
|
-
import { createReadTool, createBashTool, type ReadOperations } from "@mariozechner/
|
|
1718
|
+
import { createReadTool, createBashTool, type ReadOperations } from "@mariozechner/pi-coding-agent";
|
|
1719
1719
|
|
|
1720
1720
|
// Create tool with custom operations
|
|
1721
1721
|
const remoteRead = createReadTool(cwd, {
|
|
@@ -1746,7 +1746,7 @@ For `user_bash`, extensions can reuse pi's local shell backend via `createLocalB
|
|
|
1746
1746
|
The bash tool also supports a spawn hook to adjust the command, cwd, or env before execution:
|
|
1747
1747
|
|
|
1748
1748
|
```typescript
|
|
1749
|
-
import { createBashTool } from "@mariozechner/
|
|
1749
|
+
import { createBashTool } from "@mariozechner/pi-coding-agent";
|
|
1750
1750
|
|
|
1751
1751
|
const bashTool = createBashTool(cwd, {
|
|
1752
1752
|
spawnHook: ({ command, cwd, env }) => ({
|
|
@@ -1776,7 +1776,7 @@ import {
|
|
|
1776
1776
|
formatSize, // Human-readable size (e.g., "50KB", "1.5MB")
|
|
1777
1777
|
DEFAULT_MAX_BYTES, // 50KB
|
|
1778
1778
|
DEFAULT_MAX_LINES, // 2000
|
|
1779
|
-
} from "@mariozechner/
|
|
1779
|
+
} from "@mariozechner/pi-coding-agent";
|
|
1780
1780
|
|
|
1781
1781
|
async execute(toolCallId, params, signal, onUpdate, ctx) {
|
|
1782
1782
|
const output = await runCommand();
|
|
@@ -1831,7 +1831,7 @@ export default function (pi: ExtensionAPI) {
|
|
|
1831
1831
|
|
|
1832
1832
|
### Custom Rendering
|
|
1833
1833
|
|
|
1834
|
-
Tools can provide `renderCall` and `renderResult` for custom TUI display. See [tui.md](tui.md) for the full component API and [tool-execution.ts](https://github.com/
|
|
1834
|
+
Tools can provide `renderCall` and `renderResult` for custom TUI display. See [tui.md](tui.md) for the full component API and [tool-execution.ts](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/modes/interactive/components/tool-execution.ts) for how tool rows are composed.
|
|
1835
1835
|
|
|
1836
1836
|
By default, tool output is wrapped in a `Box` that handles padding and background. A defined `renderCall` or `renderResult` must return a `Component`. If a slot renderer is not defined, `tool-execution.ts` uses fallback rendering for that slot.
|
|
1837
1837
|
|
|
@@ -1912,7 +1912,7 @@ If a slot intentionally has no visible content, return an empty `Component` such
|
|
|
1912
1912
|
Use `keyHint()` to display keybinding hints that respect the active keybinding configuration:
|
|
1913
1913
|
|
|
1914
1914
|
```typescript
|
|
1915
|
-
import { keyHint } from "@mariozechner/
|
|
1915
|
+
import { keyHint } from "@mariozechner/pi-coding-agent";
|
|
1916
1916
|
|
|
1917
1917
|
renderResult(result, { expanded }, theme, context) {
|
|
1918
1918
|
let text = theme.fg("success", "✓ Done");
|
|
@@ -2171,7 +2171,7 @@ See [tui.md](tui.md) for the full `OverlayOptions` API and [overlay-qa-tests.ts]
|
|
|
2171
2171
|
Replace the main input editor with a custom implementation (vim mode, emacs mode, etc.):
|
|
2172
2172
|
|
|
2173
2173
|
```typescript
|
|
2174
|
-
import { CustomEditor, type ExtensionAPI } from "@mariozechner/
|
|
2174
|
+
import { CustomEditor, type ExtensionAPI } from "@mariozechner/pi-coding-agent";
|
|
2175
2175
|
import { matchesKey } from "@mariozechner/pi-tui";
|
|
2176
2176
|
|
|
2177
2177
|
class VimEditor extends CustomEditor {
|
|
@@ -2261,7 +2261,7 @@ theme.strikethrough(text)
|
|
|
2261
2261
|
For syntax highlighting in custom tool renderers:
|
|
2262
2262
|
|
|
2263
2263
|
```typescript
|
|
2264
|
-
import { highlightCode, getLanguageFromPath } from "@mariozechner/
|
|
2264
|
+
import { highlightCode, getLanguageFromPath } from "@mariozechner/pi-coding-agent";
|
|
2265
2265
|
|
|
2266
2266
|
// Highlight code with explicit language
|
|
2267
2267
|
const highlighted = highlightCode("const x = 1;", "typescript", theme);
|
package/docs/json.md
CHANGED
|
@@ -8,7 +8,7 @@ Outputs all session events as JSON lines to stdout. Useful for integrating pi in
|
|
|
8
8
|
|
|
9
9
|
## Event Types
|
|
10
10
|
|
|
11
|
-
Events are defined in [`AgentSessionEvent`](https://github.com/
|
|
11
|
+
Events are defined in [`AgentSessionEvent`](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/agent-session.ts#L102):
|
|
12
12
|
|
|
13
13
|
```typescript
|
|
14
14
|
type AgentSessionEvent =
|
|
@@ -22,7 +22,7 @@ type AgentSessionEvent =
|
|
|
22
22
|
|
|
23
23
|
`queue_update` emits the full pending steering and follow-up queues whenever they change. `compaction_start` and `compaction_end` cover both manual and automatic compaction.
|
|
24
24
|
|
|
25
|
-
Base events from [`AgentEvent`](https://github.com/
|
|
25
|
+
Base events from [`AgentEvent`](https://github.com/badlogic/pi-mono/blob/main/packages/agent/src/types.ts#L179):
|
|
26
26
|
|
|
27
27
|
```typescript
|
|
28
28
|
type AgentEvent =
|
|
@@ -44,12 +44,12 @@ type AgentEvent =
|
|
|
44
44
|
|
|
45
45
|
## Message Types
|
|
46
46
|
|
|
47
|
-
Base messages from [`packages/ai/src/types.ts`](https://github.com/
|
|
47
|
+
Base messages from [`packages/ai/src/types.ts`](https://github.com/badlogic/pi-mono/blob/main/packages/ai/src/types.ts#L134):
|
|
48
48
|
- `UserMessage` (line 134)
|
|
49
49
|
- `AssistantMessage` (line 140)
|
|
50
50
|
- `ToolResultMessage` (line 152)
|
|
51
51
|
|
|
52
|
-
Extended messages from [`packages/coding-agent/src/core/messages.ts`](https://github.com/
|
|
52
|
+
Extended messages from [`packages/coding-agent/src/core/messages.ts`](https://github.com/badlogic/pi-mono/blob/main/packages/coding-agent/src/core/messages.ts#L29):
|
|
53
53
|
- `BashExecutionMessage` (line 29)
|
|
54
54
|
- `CustomMessage` (line 46)
|
|
55
55
|
- `BranchSummaryMessage` (line 55)
|
package/docs/packages.md
CHANGED
|
@@ -124,7 +124,7 @@ Paths are relative to the package root. Arrays support glob patterns and `!exclu
|
|
|
124
124
|
|
|
125
125
|
### Gallery Metadata
|
|
126
126
|
|
|
127
|
-
The [package gallery](https://
|
|
127
|
+
The [package gallery](https://shittycodingagent.ai/packages) displays packages tagged with `pi-package`. Add `video` or `image` fields to show a preview:
|
|
128
128
|
|
|
129
129
|
```json
|
|
130
130
|
{
|
|
@@ -158,7 +158,7 @@ If no `pi` manifest is present, pi auto-discovers resources from these directori
|
|
|
158
158
|
|
|
159
159
|
Third party runtime dependencies belong in `dependencies` in `package.json`. Dependencies that do not register extensions, skills, prompt templates, or themes also belong in `dependencies`. When pi installs a package from npm or git, it runs `npm install`, so those dependencies are installed automatically.
|
|
160
160
|
|
|
161
|
-
Pi bundles core packages for extensions and skills. If you import any of these, list them in `peerDependencies` with a `"*"` range and do not bundle them: `@mariozechner/pi-ai`, `@mariozechner/pi-agent-core`, `@mariozechner/
|
|
161
|
+
Pi bundles core packages for extensions and skills. If you import any of these, list them in `peerDependencies` with a `"*"` range and do not bundle them: `@mariozechner/pi-ai`, `@mariozechner/pi-agent-core`, `@mariozechner/pi-coding-agent`, `@mariozechner/pi-tui`, `@sinclair/typebox`.
|
|
162
162
|
|
|
163
163
|
Other pi packages must be bundled in your tarball. Add them to `dependencies` and `bundledDependencies`, then reference their resources through `node_modules/` paths. Pi loads packages with separate module roots, so separate installs do not collide or share modules.
|
|
164
164
|
|
package/docs/providers.md
CHANGED
|
@@ -71,7 +71,7 @@ pi
|
|
|
71
71
|
| MiniMax | `MINIMAX_API_KEY` | `minimax` |
|
|
72
72
|
| MiniMax (China) | `MINIMAX_CN_API_KEY` | `minimax-cn` |
|
|
73
73
|
|
|
74
|
-
Reference for environment variables and `auth.json` keys: [`const envMap`](https://github.com/
|
|
74
|
+
Reference for environment variables and `auth.json` keys: [`const envMap`](https://github.com/badlogic/pi-mono/blob/main/packages/ai/src/env-api-keys.ts) in [`packages/ai/src/env-api-keys.ts`](https://github.com/badlogic/pi-mono/blob/main/packages/ai/src/env-api-keys.ts).
|
|
75
75
|
|
|
76
76
|
#### Auth File
|
|
77
77
|
|
package/docs/rpc.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
RPC mode enables headless operation of the coding agent via a JSON protocol over stdin/stdout. This is useful for embedding the agent in other applications, IDEs, or custom UIs.
|
|
4
4
|
|
|
5
|
-
**Note for Node.js/TypeScript users**: If you're building a Node.js application, consider using `AgentSession` directly from `@mariozechner/
|
|
5
|
+
**Note for Node.js/TypeScript users**: If you're building a Node.js application, consider using `AgentSession` directly from `@mariozechner/pi-coding-agent` instead of spawning a subprocess. See [`src/core/agent-session.ts`](../src/core/agent-session.ts) for the API. For a subprocess-based TypeScript client, see [`src/modes/rpc/rpc-client.ts`](../src/modes/rpc/rpc-client.ts).
|
|
6
6
|
|
|
7
7
|
## Starting RPC Mode
|
|
8
8
|
|