@eminent337/aery 0.1.63 → 0.1.65
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/docs/custom-provider.md +1 -1
- package/docs/extensions.md +18 -18
- package/docs/index.md +5 -5
- package/docs/json.md +1 -1
- package/docs/keybindings.md +2 -2
- package/docs/models.md +2 -2
- package/docs/packages.md +13 -13
- package/docs/providers.md +5 -5
- package/docs/quickstart.md +19 -19
- package/docs/rpc.md +3 -3
- package/docs/sdk.md +1 -1
- package/docs/session-format.md +3 -3
- package/docs/sessions.md +10 -10
- package/docs/settings.md +4 -4
- package/docs/skills.md +2 -2
- package/docs/terminal-setup.md +6 -6
- package/docs/termux.md +3 -3
- package/docs/themes.md +3 -3
- package/docs/tmux.md +1 -1
- package/docs/tui.md +2 -2
- package/docs/usage.md +33 -33
- package/examples/extensions/README.md +3 -3
- package/examples/extensions/antigravity-image-gen.ts +6 -6
- package/examples/extensions/auto-commit-on-exit.ts +1 -1
- package/examples/extensions/bash-spawn-hook.ts +1 -1
- package/examples/extensions/built-in-tool-renderer.ts +1 -1
- package/examples/extensions/claude-rules.ts +1 -1
- package/examples/extensions/commands.ts +1 -1
- package/examples/extensions/custom-compaction.ts +1 -1
- package/examples/extensions/custom-header.ts +2 -2
- package/examples/extensions/custom-provider-anthropic/index.ts +2 -2
- package/examples/extensions/custom-provider-gitlab-duo/index.ts +2 -2
- package/examples/extensions/custom-provider-qwen-cli/index.ts +1 -1
- package/examples/extensions/doom-overlay/README.md +2 -2
- package/examples/extensions/doom-overlay/doom/build.sh +2 -2
- package/examples/extensions/doom-overlay/index.ts +1 -1
- package/examples/extensions/hidden-thinking-label.ts +1 -1
- package/examples/extensions/inline-bash.ts +2 -2
- package/examples/extensions/input-transform.ts +3 -3
- package/examples/extensions/interactive-shell.ts +1 -1
- package/examples/extensions/mac-system-theme.ts +2 -2
- package/examples/extensions/minimal-mode.ts +1 -1
- package/examples/extensions/modal-editor.ts +1 -1
- package/examples/extensions/model-status.ts +1 -1
- package/examples/extensions/overlay-qa-tests.ts +1 -1
- package/examples/extensions/overlay-test.ts +1 -1
- package/examples/extensions/pirate.ts +1 -1
- package/examples/extensions/preset.ts +12 -6
- package/examples/extensions/prompt-customizer.ts +1 -1
- package/examples/extensions/provider-payload.ts +1 -1
- package/examples/extensions/rainbow-editor.ts +1 -1
- package/examples/extensions/rpc-demo.ts +1 -1
- package/examples/extensions/sandbox/index.ts +8 -8
- package/examples/extensions/shutdown-command.ts +5 -5
- package/examples/extensions/ssh.ts +2 -2
- package/examples/extensions/subagent/README.md +13 -13
- package/examples/extensions/subagent/agents.ts +1 -1
- package/examples/extensions/subagent/index.ts +5 -5
- package/examples/extensions/titlebar-spinner.ts +1 -1
- package/examples/extensions/tool-override.ts +2 -2
- package/examples/extensions/tools.ts +1 -1
- package/examples/extensions/truncated-tool.ts +1 -1
- package/examples/extensions/working-indicator.ts +4 -4
- package/examples/extensions/working-message-test.ts +1 -1
- package/examples/sdk/01-minimal.ts +1 -1
- package/examples/sdk/03-custom-prompt.ts +1 -1
- package/examples/sdk/04-skills.ts +1 -1
- package/examples/sdk/06-extensions.ts +2 -2
- package/examples/sdk/08-prompt-templates.ts +1 -1
- package/examples/sdk/09-api-keys-and-oauth.ts +2 -2
- package/examples/sdk/README.md +1 -1
- package/package.json +3 -3
- package/dist/bun/cli.d.ts +0 -3
- package/dist/bun/cli.d.ts.map +0 -1
- package/dist/bun/cli.js +0 -8
- 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/bun/restore-sandbox-env.d.ts +0 -13
- package/dist/bun/restore-sandbox-env.d.ts.map +0 -1
- package/dist/bun/restore-sandbox-env.js +0 -32
- package/dist/bun/restore-sandbox-env.js.map +0 -1
- package/dist/cli/args.d.ts +0 -53
- package/dist/cli/args.d.ts.map +0 -1
- package/dist/cli/args.js +0 -329
- 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 -98
- 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 -19
- package/dist/cli.js.map +0 -1
- package/dist/config.d.ts +0 -86
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js +0 -332
- package/dist/config.js.map +0 -1
- package/dist/core/agent-session-runtime.d.ts +0 -117
- package/dist/core/agent-session-runtime.d.ts.map +0 -1
- package/dist/core/agent-session-runtime.js +0 -300
- package/dist/core/agent-session-runtime.js.map +0 -1
- package/dist/core/agent-session-services.d.ts +0 -86
- package/dist/core/agent-session-services.d.ts.map +0 -1
- package/dist/core/agent-session-services.js +0 -117
- package/dist/core/agent-session-services.js.map +0 -1
- package/dist/core/agent-session.d.ts +0 -595
- package/dist/core/agent-session.d.ts.map +0 -1
- package/dist/core/agent-session.js +0 -2520
- package/dist/core/agent-session.js.map +0 -1
- package/dist/core/auth-guidance.d.ts +0 -5
- package/dist/core/auth-guidance.d.ts.map +0 -1
- package/dist/core/auth-guidance.js +0 -21
- package/dist/core/auth-guidance.js.map +0 -1
- package/dist/core/auth-storage.d.ts +0 -141
- package/dist/core/auth-storage.d.ts.map +0 -1
- package/dist/core/auth-storage.js +0 -441
- 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 -111
- 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 -1022
- package/dist/core/export-html/template.html +0 -55
- package/dist/core/export-html/template.js +0 -1770
- package/dist/core/export-html/tool-renderer.d.ts +0 -34
- package/dist/core/export-html/tool-renderer.d.ts.map +0 -1
- package/dist/core/export-html/tool-renderer.js +0 -108
- 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 -476
- package/dist/core/extensions/loader.js.map +0 -1
- package/dist/core/extensions/runner.d.ts +0 -158
- package/dist/core/extensions/runner.d.ts.map +0 -1
- package/dist/core/extensions/runner.js +0 -784
- package/dist/core/extensions/runner.js.map +0 -1
- package/dist/core/extensions/types.d.ts +0 -1153
- 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 -52
- package/dist/core/footer-data-provider.d.ts.map +0 -1
- package/dist/core/footer-data-provider.js +0 -310
- 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 -144
- package/dist/core/model-registry.d.ts.map +0 -1
- package/dist/core/model-registry.js +0 -699
- 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 -489
- 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 -199
- package/dist/core/package-manager.d.ts.map +0 -1
- package/dist/core/package-manager.js +0 -1974
- 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 -727
- package/dist/core/resource-loader.js.map +0 -1
- package/dist/core/sdk.d.ts +0 -107
- package/dist/core/sdk.d.ts.map +0 -1
- package/dist/core/sdk.js +0 -274
- 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 -261
- package/dist/core/settings-manager.d.ts.map +0 -1
- package/dist/core/settings-manager.js +0 -782
- 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 -404
- 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 -25
- 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 -68
- 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 -338
- 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 -324
- 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 -481
- 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 -46
- package/dist/modes/interactive/components/login-dialog.d.ts.map +0 -1
- package/dist/modes/interactive/components/login-dialog.js +0 -158
- 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 -29
- package/dist/modes/interactive/components/oauth-selector.d.ts.map +0 -1
- package/dist/modes/interactive/components/oauth-selector.js +0 -141
- 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 -861
- package/dist/modes/interactive/components/session-selector.js.map +0 -1
- package/dist/modes/interactive/components/settings-selector.d.ts +0 -67
- package/dist/modes/interactive/components/settings-selector.d.ts.map +0 -1
- package/dist/modes/interactive/components/settings-selector.js +0 -373
- 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 -63
- package/dist/modes/interactive/components/tool-execution.d.ts.map +0 -1
- package/dist/modes/interactive/components/tool-execution.js +0 -295
- 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 -359
- package/dist/modes/interactive/interactive-mode.d.ts.map +0 -1
- package/dist/modes/interactive/interactive-mode.js +0 -4573
- package/dist/modes/interactive/interactive-mode.js.map +0 -1
- package/dist/modes/interactive/theme/aery.json +0 -84
- package/dist/modes/interactive/theme/catppuccin-mocha.json +0 -81
- package/dist/modes/interactive/theme/dark.json +0 -85
- package/dist/modes/interactive/theme/dracula.json +0 -81
- package/dist/modes/interactive/theme/light.json +0 -84
- package/dist/modes/interactive/theme/nord.json +0 -81
- 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 -975
- package/dist/modes/interactive/theme/theme.js.map +0 -1
- package/dist/modes/interactive/theme/tokyo-night.json +0 -81
- 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 -131
- 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 -597
- 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 -468
- package/dist/package-manager-cli.js.map +0 -1
- package/dist/utils/aery-user-agent.d.ts +0 -2
- package/dist/utils/aery-user-agent.d.ts.map +0 -1
- package/dist/utils/aery-user-agent.js +0 -5
- package/dist/utils/aery-user-agent.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 -110
- 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/fs-watch.d.ts +0 -5
- package/dist/utils/fs-watch.d.ts.map +0 -1
- package/dist/utils/fs-watch.js +0 -25
- package/dist/utils/fs-watch.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 -14
- package/dist/utils/paths.d.ts.map +0 -1
- package/dist/utils/paths.js +0 -34
- 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 -30
- package/dist/utils/shell.d.ts.map +0 -1
- package/dist/utils/shell.js +0 -190
- 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 -256
- package/dist/utils/tools-manager.js.map +0 -1
- package/dist/utils/version-check.d.ts +0 -7
- package/dist/utils/version-check.d.ts.map +0 -1
- package/dist/utils/version-check.js +0 -70
- package/dist/utils/version-check.js.map +0 -1
package/docs/custom-provider.md
CHANGED
|
@@ -59,7 +59,7 @@ export default function (aery: ExtensionAPI) {
|
|
|
59
59
|
}
|
|
60
60
|
```
|
|
61
61
|
|
|
62
|
-
The extension factory can also be `async`. For dynamic model discovery, fetch and register models in the factory instead of `session_start`.
|
|
62
|
+
The extension factory can also be `async`. For dynamic model discovery, fetch and register models in the factory instead of `session_start`. aery waits for the factory before startup continues, so the provider is available during interactive startup and to `aery --list-models`.
|
|
63
63
|
|
|
64
64
|
## Override Existing Provider
|
|
65
65
|
|
package/docs/extensions.md
CHANGED
|
@@ -134,7 +134,7 @@ Additional paths via `settings.json`:
|
|
|
134
134
|
}
|
|
135
135
|
```
|
|
136
136
|
|
|
137
|
-
To share extensions via npm or git as
|
|
137
|
+
To share extensions via npm or git as aery packages, see [packages.md](packages.md).
|
|
138
138
|
|
|
139
139
|
## Available Imports
|
|
140
140
|
|
|
@@ -147,7 +147,7 @@ To share extensions via npm or git as pi packages, see [packages.md](packages.md
|
|
|
147
147
|
|
|
148
148
|
npm dependencies work too. Add a `package.json` next to your extension (or in a parent directory), run `npm install`, and imports from `node_modules/` are resolved automatically.
|
|
149
149
|
|
|
150
|
-
For distributed
|
|
150
|
+
For distributed aery packages installed with `aery install` (npm or git), runtime deps must be in `dependencies`. Package installation uses production installs (`npm install --omit=dev`), so `devDependencies` are not available at runtime.
|
|
151
151
|
|
|
152
152
|
Node.js built-ins (`node:fs`, `node:path`, etc.) are also available.
|
|
153
153
|
|
|
@@ -178,7 +178,7 @@ export default function (aery: ExtensionAPI) {
|
|
|
178
178
|
|
|
179
179
|
Extensions are loaded via [jiti](https://github.com/unjs/jiti), so TypeScript works without compilation.
|
|
180
180
|
|
|
181
|
-
If the factory returns a `Promise`,
|
|
181
|
+
If the factory returns a `Promise`, aery awaits it before continuing startup. That means async initialization completes before `session_start`, before `resources_discover`, and before provider registrations queued via `pi.registerProvider()` are flushed.
|
|
182
182
|
|
|
183
183
|
### Async factory functions
|
|
184
184
|
|
|
@@ -269,7 +269,7 @@ Run `npm install` in the extension directory, then imports from `node_modules/`
|
|
|
269
269
|
### Lifecycle Overview
|
|
270
270
|
|
|
271
271
|
```
|
|
272
|
-
|
|
272
|
+
aery starts
|
|
273
273
|
│
|
|
274
274
|
├─► session_start { reason: "startup" }
|
|
275
275
|
└─► resources_discover { reason: "startup" }
|
|
@@ -382,7 +382,7 @@ pi.on("session_before_switch", async (event, ctx) => {
|
|
|
382
382
|
});
|
|
383
383
|
```
|
|
384
384
|
|
|
385
|
-
After a successful switch or new-session action,
|
|
385
|
+
After a successful switch or new-session action, aery emits `session_shutdown` for the old extension instance, reloads and rebinds extensions for the new session, then emits `session_start` with `reason: "new" | "resume"` and `previousSessionFile`.
|
|
386
386
|
Do cleanup work in `session_shutdown`, then reestablish any in-memory state in `session_start`.
|
|
387
387
|
|
|
388
388
|
#### session_before_fork
|
|
@@ -399,7 +399,7 @@ pi.on("session_before_fork", async (event, ctx) => {
|
|
|
399
399
|
});
|
|
400
400
|
```
|
|
401
401
|
|
|
402
|
-
After a successful fork or clone,
|
|
402
|
+
After a successful fork or clone, aery emits `session_shutdown` for the old extension instance, reloads and rebinds extensions for the new session, then emits `session_start` with `reason: "fork"` and `previousSessionFile`.
|
|
403
403
|
Do cleanup work in `session_shutdown`, then reestablish any in-memory state in `session_start`.
|
|
404
404
|
|
|
405
405
|
#### session_before_compact / session_compact
|
|
@@ -640,7 +640,7 @@ Use this to update UI elements (status bars, footers) or perform model-specific
|
|
|
640
640
|
|
|
641
641
|
Fired after `tool_execution_start`, before the tool executes. **Can block.** Use `isToolCallEventType` to narrow and get typed inputs.
|
|
642
642
|
|
|
643
|
-
Before `tool_call` runs,
|
|
643
|
+
Before `tool_call` runs, aery waits for previously emitted Agent events to finish draining through `AgentSession`. This means `ctx.sessionManager` is up to date through the current assistant tool-calling message.
|
|
644
644
|
|
|
645
645
|
In the default parallel tool execution mode, sibling tool calls from the same assistant message are preflighted sequentially, then executed concurrently. `tool_call` is not guaranteed to see sibling tool results from that same assistant message in `ctx.sessionManager`.
|
|
646
646
|
|
|
@@ -751,7 +751,7 @@ pi.on("user_bash", (event, ctx) => {
|
|
|
751
751
|
// Option 1: Provide custom operations (e.g., SSH)
|
|
752
752
|
return { operations: remoteBashOps };
|
|
753
753
|
|
|
754
|
-
// Option 2: Wrap
|
|
754
|
+
// Option 2: Wrap aery's built-in local bash backend
|
|
755
755
|
const local = createLocalBashOperations();
|
|
756
756
|
return {
|
|
757
757
|
operations: {
|
|
@@ -856,7 +856,7 @@ Use this for abort-aware nested work started by extension handlers, for example:
|
|
|
856
856
|
- file or process helpers that accept `AbortSignal`
|
|
857
857
|
|
|
858
858
|
`ctx.signal` is typically defined during active turn events such as `tool_call`, `tool_result`, `message_update`, and `turn_end`.
|
|
859
|
-
It is usually `undefined` in idle or non-turn contexts such as session events, extension commands, and shortcuts fired while
|
|
859
|
+
It is usually `undefined` in idle or non-turn contexts such as session events, extension commands, and shortcuts fired while aery is idle.
|
|
860
860
|
|
|
861
861
|
```typescript
|
|
862
862
|
pi.on("tool_result", async (event, ctx) => {
|
|
@@ -877,7 +877,7 @@ Control flow helpers.
|
|
|
877
877
|
|
|
878
878
|
### ctx.shutdown()
|
|
879
879
|
|
|
880
|
-
Request a graceful shutdown of
|
|
880
|
+
Request a graceful shutdown of aery.
|
|
881
881
|
|
|
882
882
|
- **Interactive mode:** Deferred until the agent becomes idle (after processing all queued steering and follow-up messages).
|
|
883
883
|
- **RPC mode:** Deferred until the next idle state (after completing the current command response, when waiting for the next command).
|
|
@@ -984,7 +984,7 @@ if (result.cancelled) {
|
|
|
984
984
|
Options:
|
|
985
985
|
- `parentSession`: parent session file to record in the new session header
|
|
986
986
|
- `setup`: mutate the new session's `SessionManager` before `withSession` runs
|
|
987
|
-
- `withSession`: run post-switch work against a fresh replacement-session context. Do not use captured old `
|
|
987
|
+
- `withSession`: run post-switch work against a fresh replacement-session context. Do not use captured old `aery` / command `ctx`; see [Session replacement lifecycle and footguns](#session-replacement-lifecycle-and-footguns).
|
|
988
988
|
|
|
989
989
|
### ctx.fork(entryId, options?)
|
|
990
990
|
|
|
@@ -1010,7 +1010,7 @@ if (cloneResult.cancelled) {
|
|
|
1010
1010
|
Options:
|
|
1011
1011
|
- `position`: `"before"` (default) forks before the selected user message, restoring that prompt into the editor
|
|
1012
1012
|
- `position`: `"at"` duplicates the active path through the selected entry without restoring editor text
|
|
1013
|
-
- `withSession`: run post-switch work against a fresh replacement-session context. Do not use captured old `
|
|
1013
|
+
- `withSession`: run post-switch work against a fresh replacement-session context. Do not use captured old `aery` / command `ctx`; see [Session replacement lifecycle and footguns](#session-replacement-lifecycle-and-footguns).
|
|
1014
1014
|
|
|
1015
1015
|
### ctx.navigateTree(targetId, options?)
|
|
1016
1016
|
|
|
@@ -1047,7 +1047,7 @@ if (result.cancelled) {
|
|
|
1047
1047
|
```
|
|
1048
1048
|
|
|
1049
1049
|
Options:
|
|
1050
|
-
- `withSession`: run post-switch work against a fresh replacement-session context. Do not use captured old `
|
|
1050
|
+
- `withSession`: run post-switch work against a fresh replacement-session context. Do not use captured old `aery` / command `ctx`; see [Session replacement lifecycle and footguns](#session-replacement-lifecycle-and-footguns).
|
|
1051
1051
|
|
|
1052
1052
|
To discover available sessions, use the static `SessionManager.list()` or `SessionManager.listAll()` methods:
|
|
1053
1053
|
|
|
@@ -1081,7 +1081,7 @@ pi.registerCommand("switch", {
|
|
|
1081
1081
|
Lifecycle and footguns:
|
|
1082
1082
|
- `withSession` runs only after the old session has emitted `session_shutdown`, the old runtime has been torn down, the replacement session has been rebound, and the new extension instance has already received `session_start`.
|
|
1083
1083
|
- The callback still executes in the original closure, not inside the new extension instance. That means your old extension instance may already have run its shutdown cleanup before `withSession` starts.
|
|
1084
|
-
- Captured old `
|
|
1084
|
+
- Captured old `aery` / old command `ctx` session-bound objects are stale after replacement and will throw if used. Use only the `ctx` passed to `withSession` for session-bound work.
|
|
1085
1085
|
- Previously extracted raw objects are still your responsibility. For example, if you capture `const sm = ctx.sessionManager` before replacement, `sm` is still the old `SessionManager` object. Do not reuse it after replacement.
|
|
1086
1086
|
- Code in `withSession` should assume any state invalidated by your `session_shutdown` handler is already gone. Only capture plain data that survives shutdown cleanly, such as strings, ids, and serialized config.
|
|
1087
1087
|
|
|
@@ -1338,7 +1338,7 @@ Labels persist in the session and survive restarts. Use them to mark important p
|
|
|
1338
1338
|
|
|
1339
1339
|
Register a command.
|
|
1340
1340
|
|
|
1341
|
-
If multiple extensions register the same command name,
|
|
1341
|
+
If multiple extensions register the same command name, aery keeps them all and assigns numeric invocation suffixes in load order, for example `/review:1` and `/review:2`.
|
|
1342
1342
|
|
|
1343
1343
|
```typescript
|
|
1344
1344
|
pi.registerCommand("stats", {
|
|
@@ -1509,7 +1509,7 @@ Register or override a model provider dynamically. Useful for proxies, custom en
|
|
|
1509
1509
|
|
|
1510
1510
|
Calls made during the extension factory function are queued and applied once the runner initialises. Calls made after that — for example from a command handler following a user setup flow — take effect immediately without requiring a `/reload`.
|
|
1511
1511
|
|
|
1512
|
-
If you need to discover models from a remote endpoint, prefer an async extension factory over deferring the fetch to `session_start`.
|
|
1512
|
+
If you need to discover models from a remote endpoint, prefer an async extension factory over deferring the fetch to `session_start`. aery waits for the factory before startup continues, so the registered models are available immediately, including to `aery --list-models`.
|
|
1513
1513
|
|
|
1514
1514
|
```typescript
|
|
1515
1515
|
// Register a new provider with custom models
|
|
@@ -1737,7 +1737,7 @@ async execute(toolCallId, params) {
|
|
|
1737
1737
|
|
|
1738
1738
|
**Important:** Use `StringEnum` from `@eminent337/aery-ai` for string enums. `Type.Union`/`Type.Literal` doesn't work with Google's API.
|
|
1739
1739
|
|
|
1740
|
-
**Argument preparation:** `prepareArguments(args)` is optional. If defined, it runs before schema validation and before `execute()`. Use it to mimic an older accepted input shape when
|
|
1740
|
+
**Argument preparation:** `prepareArguments(args)` is optional. If defined, it runs before schema validation and before `execute()`. Use it to mimic an older accepted input shape when aery resumes an older session whose stored tool call arguments no longer match the current schema. Return the object you want validated against `parameters`. Keep the public schema strict. Do not add deprecated compatibility fields to `parameters` just to keep old resumed sessions working.
|
|
1741
1741
|
|
|
1742
1742
|
Example: an older session may contain an `edit` tool call with top-level `oldText` and `newText`, while the current schema only accepts `edits: [{ oldText, newText }]`.
|
|
1743
1743
|
|
|
@@ -1847,7 +1847,7 @@ pi.registerTool({
|
|
|
1847
1847
|
|
|
1848
1848
|
**Operations interfaces:** `ReadOperations`, `WriteOperations`, `EditOperations`, `BashOperations`, `LsOperations`, `GrepOperations`, `FindOperations`
|
|
1849
1849
|
|
|
1850
|
-
For `user_bash`, extensions can reuse
|
|
1850
|
+
For `user_bash`, extensions can reuse aery's local shell backend via `createLocalBashOperations()` instead of reimplementing local process spawning, shell resolution, and process-tree termination.
|
|
1851
1851
|
|
|
1852
1852
|
The bash tool also supports a spawn hook to adjust the command, cwd, or env before execution:
|
|
1853
1853
|
|
package/docs/index.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# Pi Documentation
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Aery is a minimal terminal coding harness. It is designed to stay small at the core while being extended through TypeScript extensions, skills, prompt templates, themes, and aery packages.
|
|
4
4
|
|
|
5
5
|
## Quick start
|
|
6
6
|
|
|
7
|
-
Install
|
|
7
|
+
Install aery with npm:
|
|
8
8
|
|
|
9
9
|
```bash
|
|
10
10
|
npm install -g @eminent337/aery
|
|
@@ -13,10 +13,10 @@ npm install -g @eminent337/aery
|
|
|
13
13
|
Then run it in a project directory:
|
|
14
14
|
|
|
15
15
|
```bash
|
|
16
|
-
|
|
16
|
+
aery
|
|
17
17
|
```
|
|
18
18
|
|
|
19
|
-
Authenticate with `/login` for subscription providers, or set an API key such as `ANTHROPIC_API_KEY` before starting
|
|
19
|
+
Authenticate with `/login` for subscription providers, or set an API key such as `ANTHROPIC_API_KEY` before starting aery.
|
|
20
20
|
|
|
21
21
|
For the full first-run flow, see [Quickstart](quickstart.md).
|
|
22
22
|
|
|
@@ -43,7 +43,7 @@ For the full first-run flow, see [Quickstart](quickstart.md).
|
|
|
43
43
|
|
|
44
44
|
## Programmatic usage
|
|
45
45
|
|
|
46
|
-
- [SDK](sdk.md) - embed
|
|
46
|
+
- [SDK](sdk.md) - embed aery in Node.js applications.
|
|
47
47
|
- [RPC mode](rpc.md) - integrate over stdin/stdout JSONL.
|
|
48
48
|
- [JSON event stream mode](json.md) - print mode with structured events.
|
|
49
49
|
- [TUI components](tui.md) - build custom terminal UI for extensions.
|
package/docs/json.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
aery --mode json "Your prompt"
|
|
5
5
|
```
|
|
6
6
|
|
|
7
|
-
Outputs all session events as JSON lines to stdout. Useful for integrating
|
|
7
|
+
Outputs all session events as JSON lines to stdout. Useful for integrating aery into other tools or custom UIs.
|
|
8
8
|
|
|
9
9
|
## Event Types
|
|
10
10
|
|
package/docs/keybindings.md
CHANGED
|
@@ -6,7 +6,7 @@ The config file uses the same namespaced keybinding ids that The agent uses inte
|
|
|
6
6
|
|
|
7
7
|
Older configs using pre-namespaced ids such as `cursorUp` or `expandTools` are migrated automatically to the namespaced ids on startup.
|
|
8
8
|
|
|
9
|
-
After editing `keybindings.json`, run `/reload` in
|
|
9
|
+
After editing `keybindings.json`, run `/reload` in aery to apply the changes without restarting the session.
|
|
10
10
|
|
|
11
11
|
## Key Format
|
|
12
12
|
|
|
@@ -165,7 +165,7 @@ Create `~/.aery/agent/keybindings.json`:
|
|
|
165
165
|
|
|
166
166
|
Each action can have a single key or an array of keys. User config overrides defaults.
|
|
167
167
|
|
|
168
|
-
On native Windows, `app.suspend` has no default binding because Windows terminals do not support Unix job control. If you bind it manually,
|
|
168
|
+
On native Windows, `app.suspend` has no default binding because Windows terminals do not support Unix job control. If you bind it manually, aery shows a status message instead of suspending. In WSL, the normal Linux `ctrl+z`/`fg` behavior still applies.
|
|
169
169
|
|
|
170
170
|
### Emacs Example
|
|
171
171
|
|
package/docs/models.md
CHANGED
|
@@ -274,7 +274,7 @@ Behavior notes:
|
|
|
274
274
|
|
|
275
275
|
For providers or proxies using `api: "anthropic-messages"`, use `compat.supportsEagerToolInputStreaming` to control Anthropic fine-grained tool streaming compatibility.
|
|
276
276
|
|
|
277
|
-
By default
|
|
277
|
+
By default aery sends per-tool `eager_input_streaming: true`. If a proxy or Anthropic-compatible backend rejects that field, set `supportsEagerToolInputStreaming` to `false`. Aery will omit `tools[].eager_input_streaming` and send the legacy `fine-grained-tool-streaming-2025-05-14` beta header for tool-enabled requests instead.
|
|
278
278
|
|
|
279
279
|
```json
|
|
280
280
|
{
|
|
@@ -332,7 +332,7 @@ For providers with partial OpenAI compatibility, use the `compat` field.
|
|
|
332
332
|
| `supportsStore` | Provider supports `store` field |
|
|
333
333
|
| `supportsDeveloperRole` | Use `developer` vs `system` role |
|
|
334
334
|
| `supportsReasoningEffort` | Support for `reasoning_effort` parameter |
|
|
335
|
-
| `reasoningEffortMap` | Map
|
|
335
|
+
| `reasoningEffortMap` | Map aery thinking levels to provider-specific `reasoning_effort` values |
|
|
336
336
|
| `supportsUsageInStreaming` | Supports `stream_options: { include_usage: true }` (default: `true`) |
|
|
337
337
|
| `maxTokensField` | Use `max_completion_tokens` or `max_tokens` |
|
|
338
338
|
| `requiresToolResultName` | Include `name` on tool result messages |
|
package/docs/packages.md
CHANGED
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
# Pi Packages
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
aery packages bundle extensions, skills, prompt templates, and themes so you can share them through npm or git. A package can declare resources in `package.json` under the `aery` key, or use conventional directories.
|
|
6
6
|
|
|
7
7
|
## Table of Contents
|
|
8
8
|
|
|
9
9
|
- [Install and Manage](#install-and-manage)
|
|
10
10
|
- [Package Sources](#package-sources)
|
|
11
|
-
- [Creating an
|
|
11
|
+
- [Creating an aery Package](#creating-a-aery-package)
|
|
12
12
|
- [Package Structure](#package-structure)
|
|
13
13
|
- [Dependencies](#dependencies)
|
|
14
14
|
- [Package Filtering](#package-filtering)
|
|
@@ -17,7 +17,7 @@ pi packages bundle extensions, skills, prompt templates, and themes so you can s
|
|
|
17
17
|
|
|
18
18
|
## Install and Manage
|
|
19
19
|
|
|
20
|
-
> **Security:**
|
|
20
|
+
> **Security:** aery packages run with full system access. Extensions execute arbitrary code, and skills can instruct the model to perform any action including running executables. Review source code before installing third-party packages.
|
|
21
21
|
|
|
22
22
|
```bash
|
|
23
23
|
aery install npm:@foo/bar@1.0.0
|
|
@@ -31,7 +31,7 @@ aery list # show installed packages from settings
|
|
|
31
31
|
aery update # update all non-pinned packages
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
-
By default, `install` and `remove` write to global settings (`~/.aery/agent/settings.json`). Use `-l` to write to project settings (`.aery/settings.json`) instead. Project settings can be shared with your team, and
|
|
34
|
+
By default, `install` and `remove` write to global settings (`~/.aery/agent/settings.json`). Use `-l` to write to project settings (`.aery/settings.json`) instead. Project settings can be shared with your team, and aery installs any missing packages automatically on startup.
|
|
35
35
|
|
|
36
36
|
To try a package without installing it, use `--extension` or `-e`. This installs to a temporary directory for the current run only:
|
|
37
37
|
|
|
@@ -101,16 +101,16 @@ aery install git:git@github.com:user/repo@v1.0.0
|
|
|
101
101
|
./relative/path/to/package
|
|
102
102
|
```
|
|
103
103
|
|
|
104
|
-
Local paths point to files or directories on disk and are added to settings without copying. Relative paths are resolved against the settings file they appear in. If the path is a file, it loads as a single extension. If it is a directory,
|
|
104
|
+
Local paths point to files or directories on disk and are added to settings without copying. Relative paths are resolved against the settings file they appear in. If the path is a file, it loads as a single extension. If it is a directory, aery loads resources using package rules.
|
|
105
105
|
|
|
106
|
-
## Creating an
|
|
106
|
+
## Creating an aery Package
|
|
107
107
|
|
|
108
|
-
Add
|
|
108
|
+
Add an `aery` manifest to `package.json` or use conventional directories. Include the `aery-package` keyword for discoverability.
|
|
109
109
|
|
|
110
110
|
```json
|
|
111
111
|
{
|
|
112
112
|
"name": "my-package",
|
|
113
|
-
"keywords": ["
|
|
113
|
+
"keywords": ["aery-package"],
|
|
114
114
|
"aery": {
|
|
115
115
|
"extensions": ["./extensions"],
|
|
116
116
|
"skills": ["./skills"],
|
|
@@ -124,12 +124,12 @@ 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://aery.dev/packages) displays packages tagged with `
|
|
127
|
+
The [package gallery](https://aery.dev/packages) displays packages tagged with `aery-package`. Add `video` or `image` fields to show a preview:
|
|
128
128
|
|
|
129
129
|
```json
|
|
130
130
|
{
|
|
131
131
|
"name": "my-package",
|
|
132
|
-
"keywords": ["
|
|
132
|
+
"keywords": ["aery-package"],
|
|
133
133
|
"aery": {
|
|
134
134
|
"extensions": ["./extensions"],
|
|
135
135
|
"video": "https://example.com/demo.mp4",
|
|
@@ -147,7 +147,7 @@ If both are set, video takes precedence.
|
|
|
147
147
|
|
|
148
148
|
### Convention Directories
|
|
149
149
|
|
|
150
|
-
If no `
|
|
150
|
+
If no `aery` manifest is present, aery auto-discovers resources from these directories:
|
|
151
151
|
|
|
152
152
|
- `extensions/` loads `.ts` and `.js` files
|
|
153
153
|
- `skills/` recursively finds `SKILL.md` folders and loads top-level `.md` files as skills
|
|
@@ -156,7 +156,7 @@ If no `pi` manifest is present, pi auto-discovers resources from these directori
|
|
|
156
156
|
|
|
157
157
|
## Dependencies
|
|
158
158
|
|
|
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
|
|
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 aery installs a package from npm or git, it runs `npm install`, so those dependencies are installed automatically.
|
|
160
160
|
|
|
161
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: `@eminent337/aery-ai`, `@eminent337/aery-core`, `@eminent337/aery`, `@eminent337/aery-tui`, `@sinclair/typebox`.
|
|
162
162
|
|
|
@@ -207,7 +207,7 @@ Filter what a package loads using the object form in settings:
|
|
|
207
207
|
|
|
208
208
|
## Enable and Disable Resources
|
|
209
209
|
|
|
210
|
-
Use `
|
|
210
|
+
Use `aery config` to enable or disable extensions, skills, prompt templates, and themes from installed packages and local directories. Works for both global (`~/.aery/agent`) and project (`.aery/`) scopes.
|
|
211
211
|
|
|
212
212
|
## Scope and Deduplication
|
|
213
213
|
|
package/docs/providers.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Providers
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Aery supports subscription-based providers via OAuth and API key providers via environment variables or auth file. For each provider, aery knows all available models. The list is updated with every aery release.
|
|
4
4
|
|
|
5
5
|
> Provider support is shared across the ecosystem. [pi](https://github.com/badlogic/pi-mono), [Aery](https://github.com/eminent337/aery), [openclaude](https://github.com/Gitlawb/openclaude), and [opencode](https://github.com/sst/opencode) all support similar provider configurations.
|
|
6
6
|
|
|
@@ -50,7 +50,7 @@ Use `/login` in interactive mode and select a provider to store an API key in `a
|
|
|
50
50
|
|
|
51
51
|
```bash
|
|
52
52
|
export ANTHROPIC_API_KEY=sk-ant-...
|
|
53
|
-
|
|
53
|
+
aery
|
|
54
54
|
```
|
|
55
55
|
|
|
56
56
|
| Provider | Environment Variable | `auth.json` key |
|
|
@@ -152,14 +152,14 @@ export AWS_REGION=us-west-2
|
|
|
152
152
|
Also supports ECS task roles (`AWS_CONTAINER_CREDENTIALS_*`) and IRSA (`AWS_WEB_IDENTITY_TOKEN_FILE`).
|
|
153
153
|
|
|
154
154
|
```bash
|
|
155
|
-
|
|
155
|
+
aery --provider amazon-bedrock --model us.anthropic.claude-sonnet-4-20250514-v1:0
|
|
156
156
|
```
|
|
157
157
|
|
|
158
158
|
Prompt caching is enabled automatically for Claude models whose ID contains a recognizable model name (base models and system-defined inference profiles). For application inference profiles (whose ARNs don't contain the model name), set `AWS_BEDROCK_FORCE_CACHE=1` to enable cache points:
|
|
159
159
|
|
|
160
160
|
```bash
|
|
161
161
|
export AWS_BEDROCK_FORCE_CACHE=1
|
|
162
|
-
|
|
162
|
+
aery --provider amazon-bedrock --model arn:aws:bedrock:us-east-1:123456789012:application-inference-profile/abc123
|
|
163
163
|
```
|
|
164
164
|
|
|
165
165
|
If you are connecting to a Bedrock API proxy, the following environment variables can be used:
|
|
@@ -182,7 +182,7 @@ export AWS_BEDROCK_FORCE_HTTP1=1
|
|
|
182
182
|
```bash
|
|
183
183
|
export CLOUDFLARE_API_KEY=... # or use /login
|
|
184
184
|
export CLOUDFLARE_ACCOUNT_ID=...
|
|
185
|
-
|
|
185
|
+
aery --provider cloudflare-workers-ai --model "@cf/moonshotai/kimi-k2.6"
|
|
186
186
|
```
|
|
187
187
|
|
|
188
188
|
Pi automatically sets `x-session-affinity` for [prefix caching](https://developers.cloudflare.com/workers-ai/features/prompt-caching/) discounts.
|
package/docs/quickstart.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Quickstart
|
|
2
2
|
|
|
3
|
-
This page gets you from install to a useful first
|
|
3
|
+
This page gets you from install to a useful first aery session.
|
|
4
4
|
|
|
5
5
|
## Install
|
|
6
6
|
|
|
@@ -10,11 +10,11 @@ Pi is distributed as an npm package:
|
|
|
10
10
|
npm install -g @eminent337/aery
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
-
Then start
|
|
13
|
+
Then start aery in the project directory you want it to work on:
|
|
14
14
|
|
|
15
15
|
```bash
|
|
16
16
|
cd /path/to/project
|
|
17
|
-
|
|
17
|
+
aery
|
|
18
18
|
```
|
|
19
19
|
|
|
20
20
|
## Authenticate
|
|
@@ -23,7 +23,7 @@ Pi can use subscription providers through `/login`, or API-key providers through
|
|
|
23
23
|
|
|
24
24
|
### Option 1: subscription login
|
|
25
25
|
|
|
26
|
-
Start
|
|
26
|
+
Start aery and run:
|
|
27
27
|
|
|
28
28
|
```text
|
|
29
29
|
/login
|
|
@@ -33,11 +33,11 @@ Then select a provider. Built-in subscription logins include Claude Pro/Max, Cha
|
|
|
33
33
|
|
|
34
34
|
### Option 2: API key
|
|
35
35
|
|
|
36
|
-
Set an API key before launching
|
|
36
|
+
Set an API key before launching aery:
|
|
37
37
|
|
|
38
38
|
```bash
|
|
39
39
|
export ANTHROPIC_API_KEY=sk-ant-...
|
|
40
|
-
|
|
40
|
+
aery
|
|
41
41
|
```
|
|
42
42
|
|
|
43
43
|
You can also run `/login` and select an API-key provider to store the key in `~/.aery/agent/auth.json`.
|
|
@@ -46,13 +46,13 @@ See [Providers](providers.md) for all supported providers, environment variables
|
|
|
46
46
|
|
|
47
47
|
## First session
|
|
48
48
|
|
|
49
|
-
Once
|
|
49
|
+
Once aery starts, type a request and press Enter:
|
|
50
50
|
|
|
51
51
|
```text
|
|
52
52
|
Summarize this repository and tell me how to run its checks.
|
|
53
53
|
```
|
|
54
54
|
|
|
55
|
-
By default,
|
|
55
|
+
By default, aery gives the model four tools:
|
|
56
56
|
|
|
57
57
|
- `read` - read files
|
|
58
58
|
- `write` - create or overwrite files
|
|
@@ -61,7 +61,7 @@ By default, pi gives the model four tools:
|
|
|
61
61
|
|
|
62
62
|
Additional built-in read-only tools (`grep`, `find`, `ls`) are available through tool options. Pi runs in your current working directory and can modify files there. Use git or another checkpointing workflow if you want easy rollback.
|
|
63
63
|
|
|
64
|
-
## Give
|
|
64
|
+
## Give aery project instructions
|
|
65
65
|
|
|
66
66
|
Pi loads context files at startup. Add an `AGENTS.md` file to tell it how to work in a project:
|
|
67
67
|
|
|
@@ -78,7 +78,7 @@ Pi loads:
|
|
|
78
78
|
- `~/.aery/agent/AGENTS.md` for global instructions
|
|
79
79
|
- `AGENTS.md` or `CLAUDE.md` from parent directories and the current directory
|
|
80
80
|
|
|
81
|
-
Restart
|
|
81
|
+
Restart aery, or run `/reload`, after changing context files.
|
|
82
82
|
|
|
83
83
|
## Common things to try
|
|
84
84
|
|
|
@@ -87,8 +87,8 @@ Restart pi, or run `/reload`, after changing context files.
|
|
|
87
87
|
Type `@` in the editor to fuzzy-search files, or pass files on the command line:
|
|
88
88
|
|
|
89
89
|
```bash
|
|
90
|
-
|
|
91
|
-
|
|
90
|
+
aery @README.md "Summarize this"
|
|
91
|
+
aery @src/app.ts @src/app.test.ts "Review these together"
|
|
92
92
|
```
|
|
93
93
|
|
|
94
94
|
Images can be pasted with Ctrl+V (Alt+V on Windows) or dragged into supported terminals.
|
|
@@ -112,21 +112,21 @@ Use `/model` or Ctrl+L to choose a model. Use Shift+Tab to cycle thinking level.
|
|
|
112
112
|
Sessions are saved automatically:
|
|
113
113
|
|
|
114
114
|
```bash
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
115
|
+
aery -c # Continue most recent session
|
|
116
|
+
aery -r # Browse previous sessions
|
|
117
|
+
aery --session <path|id> # Open a specific session
|
|
118
118
|
```
|
|
119
119
|
|
|
120
|
-
Inside
|
|
120
|
+
Inside aery, use `/resume`, `/new`, `/tree`, `/fork`, and `/clone` to manage sessions.
|
|
121
121
|
|
|
122
122
|
### Non-interactive mode
|
|
123
123
|
|
|
124
124
|
For one-shot prompts:
|
|
125
125
|
|
|
126
126
|
```bash
|
|
127
|
-
|
|
128
|
-
cat README.md |
|
|
129
|
-
|
|
127
|
+
aery -p "Summarize this codebase"
|
|
128
|
+
cat README.md | aery -p "Summarize this text"
|
|
129
|
+
aery -p @screenshot.png "What's in this image?"
|
|
130
130
|
```
|
|
131
131
|
|
|
132
132
|
Use `--mode json` for JSON event output or `--mode rpc` for process integration.
|
package/docs/rpc.md
CHANGED
|
@@ -1132,7 +1132,7 @@ Set the terminal window/tab title. Fire-and-forget.
|
|
|
1132
1132
|
"type": "extension_ui_request",
|
|
1133
1133
|
"id": "uuid-8",
|
|
1134
1134
|
"method": "setTitle",
|
|
1135
|
-
"title": "
|
|
1135
|
+
"title": "aery - my project"
|
|
1136
1136
|
}
|
|
1137
1137
|
```
|
|
1138
1138
|
|
|
@@ -1319,7 +1319,7 @@ import subprocess
|
|
|
1319
1319
|
import json
|
|
1320
1320
|
|
|
1321
1321
|
proc = subprocess.Popen(
|
|
1322
|
-
["
|
|
1322
|
+
["aery", "--mode", "rpc", "--no-session"],
|
|
1323
1323
|
stdin=subprocess.PIPE,
|
|
1324
1324
|
stdout=subprocess.PIPE,
|
|
1325
1325
|
text=True
|
|
@@ -1358,7 +1358,7 @@ For a complete example of handling the extension UI protocol, see [`examples/rpc
|
|
|
1358
1358
|
const { spawn } = require("child_process");
|
|
1359
1359
|
const { StringDecoder } = require("string_decoder");
|
|
1360
1360
|
|
|
1361
|
-
const agent = spawn("
|
|
1361
|
+
const agent = spawn("aery", ["--mode", "rpc", "--no-session"]);
|
|
1362
1362
|
|
|
1363
1363
|
function attachJsonlReader(stream, onLine) {
|
|
1364
1364
|
const decoder = new StringDecoder("utf8");
|
package/docs/sdk.md
CHANGED
|
@@ -520,7 +520,7 @@ const { session } = await createAgentSession({
|
|
|
520
520
|
```
|
|
521
521
|
|
|
522
522
|
**When you don't need factories:**
|
|
523
|
-
- If you omit `tools`,
|
|
523
|
+
- If you omit `tools`, aery automatically creates them with the correct `cwd`
|
|
524
524
|
- If you use `process.cwd()` as your `cwd`, the pre-built instances work fine
|
|
525
525
|
|
|
526
526
|
**When you must use factories:**
|
package/docs/session-format.md
CHANGED
|
@@ -14,7 +14,7 @@ Where `<path>` is the working directory with `/` replaced by `-`.
|
|
|
14
14
|
|
|
15
15
|
Sessions can be removed by deleting their `.jsonl` files under `~/.aery/agent/sessions/`.
|
|
16
16
|
|
|
17
|
-
Pi also supports deleting sessions interactively from `/resume` (select a session and press `Ctrl+D`, then confirm). When available,
|
|
17
|
+
Pi also supports deleting sessions interactively from `/resume` (select a session and press `Ctrl+D`, then confirm). When available, aery uses the `trash` CLI to avoid permanent deletion.
|
|
18
18
|
|
|
19
19
|
## Session Version
|
|
20
20
|
|
|
@@ -233,7 +233,7 @@ Created when context is compacted. Stores a summary of earlier messages.
|
|
|
233
233
|
|
|
234
234
|
Optional fields:
|
|
235
235
|
- `details`: Implementation-specific data (e.g., `{ readFiles: string[], modifiedFiles: string[] }` for default, or custom data for extensions)
|
|
236
|
-
- `fromHook`: `true` if generated by an extension, `false`/`undefined` if
|
|
236
|
+
- `fromHook`: `true` if generated by an extension, `false`/`undefined` if aery-generated (legacy field name)
|
|
237
237
|
|
|
238
238
|
### BranchSummaryEntry
|
|
239
239
|
|
|
@@ -245,7 +245,7 @@ Created when switching branches via `/tree` with an LLM generated summary of the
|
|
|
245
245
|
|
|
246
246
|
Optional fields:
|
|
247
247
|
- `details`: File tracking data (`{ readFiles: string[], modifiedFiles: string[] }`) for default, or custom data for extensions
|
|
248
|
-
- `fromHook`: `true` if generated by an extension, `false`/`undefined` if
|
|
248
|
+
- `fromHook`: `true` if generated by an extension, `false`/`undefined` if aery-generated (legacy field name)
|
|
249
249
|
|
|
250
250
|
### CustomEntry
|
|
251
251
|
|
package/docs/sessions.md
CHANGED
|
@@ -4,14 +4,14 @@ Pi saves conversations as sessions so you can continue work, branch from earlier
|
|
|
4
4
|
|
|
5
5
|
## Session Storage
|
|
6
6
|
|
|
7
|
-
Sessions auto-save to `~/.
|
|
7
|
+
Sessions auto-save to `~/.aery/agent/sessions/`, organized by working directory. Each session is a JSONL file with a tree structure.
|
|
8
8
|
|
|
9
9
|
```bash
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
10
|
+
aery -c # Continue most recent session
|
|
11
|
+
aery -r # Browse and select from past sessions
|
|
12
|
+
aery --no-session # Ephemeral mode; do not save
|
|
13
|
+
aery --session <path|id> # Use a specific session file or partial session ID
|
|
14
|
+
aery --fork <path|id> # Fork a session file or partial session ID into a new session
|
|
15
15
|
```
|
|
16
16
|
|
|
17
17
|
Use `/session` in interactive mode to see the current session file, session ID, message count, tokens, and cost.
|
|
@@ -35,7 +35,7 @@ For the JSONL file format and SessionManager API, see [Session Format](session-f
|
|
|
35
35
|
|
|
36
36
|
## Resuming and Deleting Sessions
|
|
37
37
|
|
|
38
|
-
`/resume` opens an interactive session picker for the current project. `
|
|
38
|
+
`/resume` opens an interactive session picker for the current project. `aery -r` opens the same picker at startup.
|
|
39
39
|
|
|
40
40
|
In the picker you can:
|
|
41
41
|
|
|
@@ -46,7 +46,7 @@ In the picker you can:
|
|
|
46
46
|
- rename with Ctrl+R
|
|
47
47
|
- delete with Ctrl+D, then confirm
|
|
48
48
|
|
|
49
|
-
When available,
|
|
49
|
+
When available, aery uses the `trash` CLI for deletion instead of permanently removing files.
|
|
50
50
|
|
|
51
51
|
## Naming Sessions
|
|
52
52
|
|
|
@@ -56,7 +56,7 @@ Use `/name <name>` to set a human-readable session name:
|
|
|
56
56
|
/name Refactor auth module
|
|
57
57
|
```
|
|
58
58
|
|
|
59
|
-
Named sessions are easier to find in `/resume` and `
|
|
59
|
+
Named sessions are easier to find in `/resume` and `aery -r`.
|
|
60
60
|
|
|
61
61
|
## Branching with `/tree`
|
|
62
62
|
|
|
@@ -120,7 +120,7 @@ Use `/tree` when you want to keep alternatives together. Use `/fork` or `/clone`
|
|
|
120
120
|
|
|
121
121
|
## Branch Summaries
|
|
122
122
|
|
|
123
|
-
When `/tree` switches away from one branch to another,
|
|
123
|
+
When `/tree` switches away from one branch to another, aery 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
124
|
|
|
125
125
|
When prompted, choose one of:
|
|
126
126
|
|