aven-ai 0.0.1 → 0.0.3
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/README.md +55 -131
- package/dist/index.js +9 -2
- package/dist/index.js.map +1 -1
- package/dist/libs/lexa/index.d.ts +2 -0
- package/dist/libs/lexa/index.d.ts.map +1 -0
- package/dist/libs/lexa/index.js +2 -0
- package/dist/libs/lexa/index.js.map +1 -0
- package/dist/libs/lexa/lexa-runtime.d.ts +17 -0
- package/dist/libs/lexa/lexa-runtime.d.ts.map +1 -0
- package/dist/libs/lexa/lexa-runtime.js +66 -0
- package/dist/libs/lexa/lexa-runtime.js.map +1 -0
- package/dist/libs/pty/index.d.ts +1 -1
- package/dist/libs/pty/index.d.ts.map +1 -1
- package/dist/libs/pty/index.js +1 -1
- package/dist/libs/pty/index.js.map +1 -1
- package/dist/libs/pty/pty-runner.d.ts +5 -1
- package/dist/libs/pty/pty-runner.d.ts.map +1 -1
- package/dist/libs/pty/pty-runner.js +16 -5
- package/dist/libs/pty/pty-runner.js.map +1 -1
- package/dist/modules/agent/core.d.ts +3 -1
- package/dist/modules/agent/core.d.ts.map +1 -1
- package/dist/modules/agent/core.js +4 -3
- package/dist/modules/agent/core.js.map +1 -1
- package/dist/modules/agent/events/tool-message-adapter.d.ts +1 -0
- package/dist/modules/agent/events/tool-message-adapter.d.ts.map +1 -1
- package/dist/modules/agent/events/tool-message-adapter.js +30 -0
- package/dist/modules/agent/events/tool-message-adapter.js.map +1 -1
- package/dist/modules/agent/index.d.ts +1 -1
- package/dist/modules/agent/index.d.ts.map +1 -1
- package/dist/modules/agent/index.js.map +1 -1
- package/dist/modules/agent/prompts/identity.d.ts +1 -1
- package/dist/modules/agent/prompts/identity.d.ts.map +1 -1
- package/dist/modules/agent/prompts/identity.js +1 -4
- package/dist/modules/agent/prompts/identity.js.map +1 -1
- package/dist/modules/agent/prompts/project-instructions.d.ts +19 -0
- package/dist/modules/agent/prompts/project-instructions.d.ts.map +1 -0
- package/dist/modules/agent/prompts/project-instructions.js +121 -0
- package/dist/modules/agent/prompts/project-instructions.js.map +1 -0
- package/dist/modules/agent/prompts/system.d.ts +12 -1
- package/dist/modules/agent/prompts/system.d.ts.map +1 -1
- package/dist/modules/agent/prompts/system.js +54 -1
- package/dist/modules/agent/prompts/system.js.map +1 -1
- package/dist/modules/agent/prompts/workflow.d.ts +2 -0
- package/dist/modules/agent/prompts/workflow.d.ts.map +1 -0
- package/dist/modules/agent/prompts/workflow.js +12 -0
- package/dist/modules/agent/prompts/workflow.js.map +1 -0
- package/dist/modules/agent/services/agent-recovery.d.ts +16 -0
- package/dist/modules/agent/services/agent-recovery.d.ts.map +1 -0
- package/dist/modules/agent/services/agent-recovery.js +143 -0
- package/dist/modules/agent/services/agent-recovery.js.map +1 -0
- package/dist/modules/agent/services/prompt-turn-executor.d.ts +4 -2
- package/dist/modules/agent/services/prompt-turn-executor.d.ts.map +1 -1
- package/dist/modules/agent/services/prompt-turn-executor.js +21 -3
- package/dist/modules/agent/services/prompt-turn-executor.js.map +1 -1
- package/dist/modules/agent/tools/exec-command.d.ts +1 -0
- package/dist/modules/agent/tools/exec-command.d.ts.map +1 -1
- package/dist/modules/agent/tools/files/contracts.d.ts +12 -0
- package/dist/modules/agent/tools/files/contracts.d.ts.map +1 -1
- package/dist/modules/agent/tools/files/contracts.js +6 -0
- package/dist/modules/agent/tools/files/contracts.js.map +1 -1
- package/dist/modules/agent/tools/files/create-file-tools.d.ts +7 -0
- package/dist/modules/agent/tools/files/create-file-tools.d.ts.map +1 -1
- package/dist/modules/app/cli.d.ts +1 -0
- package/dist/modules/app/cli.d.ts.map +1 -1
- package/dist/modules/app/cli.js +5 -1
- package/dist/modules/app/cli.js.map +1 -1
- package/dist/modules/app/components/app.d.ts +2 -1
- package/dist/modules/app/components/app.d.ts.map +1 -1
- package/dist/modules/app/components/app.js +4 -4
- package/dist/modules/app/components/app.js.map +1 -1
- package/dist/modules/app/index.d.ts +1 -1
- package/dist/modules/app/index.d.ts.map +1 -1
- package/dist/modules/app/index.js +1 -1
- package/dist/modules/app/index.js.map +1 -1
- package/dist/modules/app/input/use-overlay-controller.d.ts.map +1 -1
- package/dist/modules/app/input/use-overlay-controller.js +1 -7
- package/dist/modules/app/input/use-overlay-controller.js.map +1 -1
- package/dist/modules/app/services/use-app-input.d.ts.map +1 -1
- package/dist/modules/app/services/use-app-input.js +0 -4
- package/dist/modules/app/services/use-app-input.js.map +1 -1
- package/dist/modules/commands/registry.d.ts +1 -1
- package/dist/modules/commands/registry.d.ts.map +1 -1
- package/dist/modules/commands/registry.js +0 -1
- package/dist/modules/commands/registry.js.map +1 -1
- package/dist/modules/composer/components/composer.d.ts +2 -1
- package/dist/modules/composer/components/composer.d.ts.map +1 -1
- package/dist/modules/composer/components/composer.js +4 -12
- package/dist/modules/composer/components/composer.js.map +1 -1
- package/dist/modules/conversation/components/virtual-transcript.d.ts.map +1 -1
- package/dist/modules/conversation/components/virtual-transcript.js +1 -10
- package/dist/modules/conversation/components/virtual-transcript.js.map +1 -1
- package/dist/modules/conversation/services/use-transcript-controller.d.ts +0 -3
- package/dist/modules/conversation/services/use-transcript-controller.d.ts.map +1 -1
- package/dist/modules/conversation/services/use-transcript-controller.js +3 -21
- package/dist/modules/conversation/services/use-transcript-controller.js.map +1 -1
- package/dist/modules/overlays/components/overlay.d.ts.map +1 -1
- package/dist/modules/overlays/components/overlay.js +1 -5
- package/dist/modules/overlays/components/overlay.js.map +1 -1
- package/dist/modules/overlays/services/overlay-items.d.ts +0 -1
- package/dist/modules/overlays/services/overlay-items.d.ts.map +1 -1
- package/dist/modules/overlays/services/overlay-items.js +0 -3
- package/dist/modules/overlays/services/overlay-items.js.map +1 -1
- package/dist/modules/overlays/services/overlay-registry.d.ts.map +1 -1
- package/dist/modules/overlays/services/overlay-registry.js +0 -3
- package/dist/modules/overlays/services/overlay-registry.js.map +1 -1
- package/dist/modules/overlays/services/overlay-selection.d.ts +0 -3
- package/dist/modules/overlays/services/overlay-selection.d.ts.map +1 -1
- package/dist/modules/overlays/services/overlay-selection.js +0 -2
- package/dist/modules/overlays/services/overlay-selection.js.map +1 -1
- package/dist/modules/overlays/types.d.ts +1 -1
- package/dist/modules/overlays/types.d.ts.map +1 -1
- package/package.json +78 -71
package/README.md
CHANGED
|
@@ -1,171 +1,95 @@
|
|
|
1
1
|
# Aven AI
|
|
2
2
|
|
|
3
|
-
A terminal-native coding agent built with TypeScript, React, Ink, and [Anvia](https://anvia.dev).
|
|
3
|
+
A terminal-native AI coding agent built with TypeScript, React, Ink, and [Anvia](https://anvia.dev).
|
|
4
4
|
|
|
5
|
-
Aven
|
|
5
|
+
Aven lets you chat with AI models, inspect tool calls, edit files, run commands, and resume project sessions without leaving the terminal.
|
|
6
6
|
|
|
7
|
-
##
|
|
7
|
+
## Install
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
- Thirteen model providers with in-app credential setup and model selection
|
|
11
|
-
- Built-in `Read`, `Edit`, and `Write` tools with stale-read protection and inline diffs
|
|
12
|
-
- Real PTY command execution for agent tools and direct shell commands
|
|
13
|
-
- Project-scoped sessions and local conversation memory backed by SQLite
|
|
14
|
-
- Searchable prompts, transcripts, commands, sessions, and model lists
|
|
15
|
-
- Mouse scrolling and text selection with OSC 52 clipboard support
|
|
16
|
-
|
|
17
|
-
## Requirements
|
|
18
|
-
|
|
19
|
-
- Node.js 22 or newer
|
|
20
|
-
- pnpm 11 or newer
|
|
21
|
-
- An interactive terminal with ANSI and Unicode support
|
|
22
|
-
|
|
23
|
-
## Quick start
|
|
24
|
-
|
|
25
|
-
```sh
|
|
26
|
-
pnpm install
|
|
27
|
-
pnpm dev
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
Once Aven AI opens, run `/setup` to choose a provider and add its credentials. Aven AI supports OpenAI, OpenRouter, DeepSeek, Fireworks AI, GitHub Models, Hugging Face, Devscale AI, Sumopod, Databricks, Anthropic, OpenCode Go, Xiaomi MiMo, and MiniMax.
|
|
31
|
-
|
|
32
|
-
Credentials are read exclusively from `config.toml`; provider environment variables are not used. Dynamic provider keys are verified through model discovery before they are saved. Xiaomi MiMo and MiniMax use curated model lists, so their keys are verified by the provider on the first request. Databricks setup asks for the workspace URL before the API token.
|
|
33
|
-
|
|
34
|
-
## Local installation
|
|
35
|
-
|
|
36
|
-
Install the published CLI globally:
|
|
9
|
+
Requires Node.js 22 or newer and a supported platform: macOS on Apple Silicon or Intel, or Linux x64 with glibc 2.39 or newer.
|
|
37
10
|
|
|
38
11
|
```sh
|
|
39
12
|
npm install --global aven-ai
|
|
40
13
|
aven
|
|
41
14
|
```
|
|
42
15
|
|
|
43
|
-
|
|
16
|
+
The install includes the matching [Lexa](https://github.com/anvia-hq/lexa) native code-intelligence binary. Aven verifies that required binary before opening the terminal interface.
|
|
44
17
|
|
|
45
|
-
|
|
46
|
-
pnpm install:local
|
|
47
|
-
aven
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
Set `AVEN_BIN_DIR` to install the symlink elsewhere. Reinstalling refreshes stale build links from the same checkout, but the installer will not overwrite regular files or symlinks owned by another project.
|
|
18
|
+
On first launch, run `/setup` to choose a provider and add its API key.
|
|
51
19
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
```sh
|
|
55
|
-
pnpm uninstall:local
|
|
56
|
-
```
|
|
20
|
+
## Features
|
|
57
21
|
|
|
58
|
-
|
|
22
|
+
- Full-screen terminal interface with Markdown rendering
|
|
23
|
+
- File reading, editing, and writing with inline diffs
|
|
24
|
+
- PTY-backed shell command execution
|
|
25
|
+
- Project-scoped sessions and searchable history
|
|
26
|
+
- Mouse scrolling, text selection, and clipboard support
|
|
27
|
+
- Multiple model providers, including OpenAI, Anthropic, OpenRouter, DeepSeek, GitHub Models, and more
|
|
59
28
|
|
|
60
|
-
|
|
29
|
+
## Usage
|
|
61
30
|
|
|
62
|
-
Prefix
|
|
31
|
+
Type a prompt and press `Enter`. Prefix a command with `!` to run it directly in the project shell:
|
|
63
32
|
|
|
64
33
|
```text
|
|
65
34
|
!git status
|
|
66
35
|
```
|
|
67
36
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
| Command | Description |
|
|
71
|
-
| -------------- | -------------------------------------- |
|
|
72
|
-
| `/setup` | Add or replace provider credentials |
|
|
73
|
-
| `/connect` | Connect a configured provider |
|
|
74
|
-
| `/model` | View or change the active model |
|
|
75
|
-
| `/new` | Start a new project session |
|
|
76
|
-
| `/resume` | Search and resume project sessions |
|
|
77
|
-
| `/resume-last` | Resume the most recent project session |
|
|
78
|
-
| `/history` | Search local prompt history |
|
|
79
|
-
| `/search` | Search the visible transcript |
|
|
80
|
-
| `/commands` | Browse available commands |
|
|
81
|
-
| `/help` | Show keyboard and interaction help |
|
|
82
|
-
| `/theme` | Preview the current terminal theme |
|
|
83
|
-
|
|
84
|
-
### Keyboard and mouse controls
|
|
85
|
-
|
|
86
|
-
| Input | Action |
|
|
87
|
-
| --------------------------- | -------------------------------------------------------- |
|
|
88
|
-
| `Enter` | Submit a prompt |
|
|
89
|
-
| `Shift+Enter` / `Alt+Enter` | Insert a newline |
|
|
90
|
-
| `\` then `Enter` | Insert a newline in terminals without modifier support |
|
|
91
|
-
| `Ctrl+O` | Toggle transcript navigation and tool output |
|
|
92
|
-
| `Page Up` / `Page Down` | Scroll the transcript |
|
|
93
|
-
| `Ctrl+Home` / `Ctrl+End` | Jump to the start or end |
|
|
94
|
-
| `↑` / `↓` or `j` / `k` | Scroll one line while transcript navigation is active |
|
|
95
|
-
| `g` / `G` or `Home` / `End` | Jump to either end while transcript navigation is active |
|
|
96
|
-
| `Ctrl+R` | Open prompt history |
|
|
97
|
-
| Mouse wheel | Scroll the transcript |
|
|
98
|
-
| Mouse drag | Select transcript text |
|
|
99
|
-
| Double-click / triple-click | Select a word or line |
|
|
100
|
-
| `Ctrl+Shift+C` | Copy selected text through OSC 52 |
|
|
101
|
-
| `Esc` | Close or cancel the current UI context |
|
|
102
|
-
| `Ctrl+C` | Interrupt active work; press twice while idle to exit |
|
|
103
|
-
| `Ctrl+D` | Delete forward; press twice on empty input to exit |
|
|
104
|
-
|
|
105
|
-
Typing `?` or `!` into an empty composer opens help or direct command mode. Session changes are disabled while a turn is active or prompts are queued.
|
|
106
|
-
|
|
107
|
-
## Sessions and local data
|
|
108
|
-
|
|
109
|
-
Sessions are scoped to the directory where Aven AI starts. Each launch begins a fresh session; use `/resume-last` or `/resume` to continue earlier work for the same project.
|
|
110
|
-
|
|
111
|
-
Local data lives under `${XDG_CONFIG_HOME:-~/.config}/aven-ai`:
|
|
112
|
-
|
|
113
|
-
| File | Contents |
|
|
114
|
-
| ----------------- | -------------------------------------------- |
|
|
115
|
-
| `config.toml` | Provider settings, model cache, and API keys |
|
|
116
|
-
| `memory.sqlite` | Agent conversation memory |
|
|
117
|
-
| `sessions.sqlite` | Project and session metadata |
|
|
118
|
-
|
|
119
|
-
Configuration files are written with owner-only permissions. Existing `config.json` files are migrated automatically. Provider credentials must be added through `/setup`; environment variables are intentionally ignored. Aven AI does not create session metadata inside your project.
|
|
37
|
+
Common slash commands:
|
|
120
38
|
|
|
121
|
-
|
|
39
|
+
| Command | Action |
|
|
40
|
+
| -------------- | ------------------------------------ |
|
|
41
|
+
| `/setup` | Configure provider credentials |
|
|
42
|
+
| `/connect` | Connect to a configured provider |
|
|
43
|
+
| `/model` | Change the active model |
|
|
44
|
+
| `/new` | Start a new session |
|
|
45
|
+
| `/resume` | Find and resume a previous session |
|
|
46
|
+
| `/resume-last` | Resume the most recent session |
|
|
47
|
+
| `/commands` | Browse all available commands |
|
|
48
|
+
| `/help` | Show controls and keyboard shortcuts |
|
|
122
49
|
|
|
123
|
-
|
|
50
|
+
Useful controls:
|
|
124
51
|
|
|
125
|
-
|
|
52
|
+
| Input | Action |
|
|
53
|
+
| --------------------------- | --------------------- |
|
|
54
|
+
| `Enter` | Submit a prompt |
|
|
55
|
+
| `Shift+Enter` / `Alt+Enter` | Insert a newline |
|
|
56
|
+
| `Page Up` / `Page Down` | Scroll the transcript |
|
|
57
|
+
| `Esc` | Close or cancel |
|
|
58
|
+
| `Ctrl+C` | Interrupt active work |
|
|
126
59
|
|
|
127
|
-
##
|
|
60
|
+
## Local data
|
|
128
61
|
|
|
129
|
-
|
|
62
|
+
Aven stores configuration and project-scoped session data under:
|
|
130
63
|
|
|
131
64
|
```text
|
|
132
|
-
|
|
133
|
-
index.ts CLI entrypoint
|
|
134
|
-
libs/ config, SDK, PTY, storage, and terminal adapters
|
|
135
|
-
modules/
|
|
136
|
-
agent/ runtime, prompts, tools, and events
|
|
137
|
-
app/ application composition and state
|
|
138
|
-
commands/ slash-command registry
|
|
139
|
-
composer/ editor and input behavior
|
|
140
|
-
conversation/ transcript rendering and selection
|
|
141
|
-
overlays/ searchable overlay models and views
|
|
142
|
-
providers/ provider connections and model selection
|
|
143
|
-
sessions/ project-session lifecycle
|
|
144
|
-
utils/ dependency-free shared helpers
|
|
145
|
-
test/
|
|
146
|
-
integration/ cross-feature integration tests
|
|
147
|
-
support/ shared test fakes and helpers
|
|
65
|
+
${XDG_CONFIG_HOME:-~/.config}/aven-ai
|
|
148
66
|
```
|
|
149
67
|
|
|
150
|
-
|
|
68
|
+
Provider credentials are stored locally in `config.toml` with owner-only permissions. Add or replace credentials through `/setup`.
|
|
151
69
|
|
|
152
|
-
|
|
70
|
+
Commands run with the same permissions as the Aven process and are not sandboxed. Review commands and file changes before accepting them.
|
|
153
71
|
|
|
154
72
|
## Development
|
|
155
73
|
|
|
74
|
+
```sh
|
|
75
|
+
pnpm install
|
|
76
|
+
pnpm dev
|
|
77
|
+
```
|
|
78
|
+
|
|
156
79
|
Useful commands:
|
|
157
80
|
|
|
158
81
|
```sh
|
|
159
|
-
pnpm
|
|
160
|
-
pnpm
|
|
161
|
-
pnpm
|
|
162
|
-
pnpm
|
|
163
|
-
pnpm
|
|
164
|
-
pnpm lint # Run ESLint
|
|
165
|
-
pnpm build # Build the production CLI
|
|
166
|
-
pnpm check # Run the complete local quality gate
|
|
82
|
+
pnpm test # Run tests
|
|
83
|
+
pnpm typecheck # Check TypeScript
|
|
84
|
+
pnpm lint # Run ESLint
|
|
85
|
+
pnpm build # Build the CLI
|
|
86
|
+
pnpm check # Run the complete quality gate
|
|
167
87
|
```
|
|
168
88
|
|
|
169
|
-
|
|
89
|
+
Install a development build as the `aven` command:
|
|
90
|
+
|
|
91
|
+
```sh
|
|
92
|
+
pnpm install:local
|
|
93
|
+
```
|
|
170
94
|
|
|
171
|
-
See [CONTRIBUTING.md](./CONTRIBUTING.md)
|
|
95
|
+
See [ARCHITECTURE.md](./ARCHITECTURE.md) and [CONTRIBUTING.md](./CONTRIBUTING.md) for project details.
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import
|
|
3
|
-
|
|
2
|
+
import process from 'node:process';
|
|
3
|
+
import { formatCliError, runCli } from './modules/app/index.js';
|
|
4
|
+
try {
|
|
5
|
+
await runCli();
|
|
6
|
+
}
|
|
7
|
+
catch (error) {
|
|
8
|
+
process.stderr.write(formatCliError(error));
|
|
9
|
+
process.exitCode = 1;
|
|
10
|
+
}
|
|
4
11
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAC,MAAM,EAAC,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,EAAC,cAAc,EAAE,MAAM,EAAC,MAAM,wBAAwB,CAAC;AAE9D,IAAI,CAAC;IACJ,MAAM,MAAM,EAAE,CAAC;AAChB,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5C,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACtB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/libs/lexa/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAE,KAAK,WAAW,EAAE,KAAK,sBAAsB,EAAC,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/libs/lexa/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAgD,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
type ModuleImporter = (specifier: string) => Promise<unknown>;
|
|
2
|
+
type BinaryVersionRunner = (binaryPath: string) => Promise<string>;
|
|
3
|
+
export type LexaRuntime = Readonly<{
|
|
4
|
+
binaryDirectory: string;
|
|
5
|
+
binaryPath: string;
|
|
6
|
+
skill: string;
|
|
7
|
+
version: string;
|
|
8
|
+
}>;
|
|
9
|
+
export type LoadLexaRuntimeOptions = {
|
|
10
|
+
architecture?: string;
|
|
11
|
+
importModule?: ModuleImporter;
|
|
12
|
+
platform?: string;
|
|
13
|
+
runVersion?: BinaryVersionRunner;
|
|
14
|
+
};
|
|
15
|
+
export declare const loadLexaRuntime: (options?: LoadLexaRuntimeOptions) => Promise<LexaRuntime>;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=lexa-runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lexa-runtime.d.ts","sourceRoot":"","sources":["../../../src/libs/lexa/lexa-runtime.ts"],"names":[],"mappings":"AAOA,KAAK,cAAc,GAAG,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAC9D,KAAK,mBAAmB,GAAG,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAEnE,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CAChB,CAAC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,mBAAmB,CAAC;CACjC,CAAC;AA6BF,eAAO,MAAM,eAAe,aAAmB,sBAAsB,KAAQ,OAAO,CAAC,WAAW,CAgD/F,CAAC"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { execFile } from 'node:child_process';
|
|
2
|
+
import { dirname } from 'node:path';
|
|
3
|
+
const SUPPORTED_TARGETS = new Set(['darwin-arm64', 'darwin-x64', 'linux-x64']);
|
|
4
|
+
const NATIVE_MODULE = 'lexa-index';
|
|
5
|
+
const SKILL_MODULE = 'lexa-index/skill';
|
|
6
|
+
const importModule = (specifier) => import(specifier);
|
|
7
|
+
const runVersion = (binaryPath) => new Promise((resolve, reject) => {
|
|
8
|
+
execFile(binaryPath, ['--version'], { encoding: 'utf8', timeout: 10_000 }, (error, stdout, stderr) => {
|
|
9
|
+
const output = `${stdout}${stderr}`.trim();
|
|
10
|
+
if (error) {
|
|
11
|
+
reject(new Error([error.message, output].filter(Boolean).join('\n'), { cause: error }));
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
resolve(output);
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
const record = (value) => typeof value === 'object' && value !== null ? value : undefined;
|
|
18
|
+
const stringExport = (module, name) => {
|
|
19
|
+
const value = record(module)?.[name];
|
|
20
|
+
return typeof value === 'string' && value.length > 0 ? value : undefined;
|
|
21
|
+
};
|
|
22
|
+
const errorDetail = (error) => (error instanceof Error ? error.message : String(error));
|
|
23
|
+
const versionPattern = (version) => new RegExp(`(?:^|\\s)${version.replace(/[.*+?^${}()|[\]\\]/gu, '\\$&')}(?:\\s|$)`, 'u');
|
|
24
|
+
export const loadLexaRuntime = async (options = {}) => {
|
|
25
|
+
const platform = options.platform ?? process.platform;
|
|
26
|
+
const architecture = options.architecture ?? process.arch;
|
|
27
|
+
const target = `${platform}-${architecture}`;
|
|
28
|
+
if (!SUPPORTED_TARGETS.has(target)) {
|
|
29
|
+
throw new Error(`Aven requires Lexa, which does not currently support ${target}.`);
|
|
30
|
+
}
|
|
31
|
+
let nativeModule;
|
|
32
|
+
let skillModule;
|
|
33
|
+
try {
|
|
34
|
+
[nativeModule, skillModule] = await Promise.all([
|
|
35
|
+
(options.importModule ?? importModule)(NATIVE_MODULE),
|
|
36
|
+
(options.importModule ?? importModule)(SKILL_MODULE),
|
|
37
|
+
]);
|
|
38
|
+
}
|
|
39
|
+
catch (error) {
|
|
40
|
+
throw new Error(`Aven could not load its required Lexa installation. Reinstall aven-ai with optional dependencies enabled. ${errorDetail(error)}`, { cause: error });
|
|
41
|
+
}
|
|
42
|
+
const binaryPath = stringExport(nativeModule, 'binaryPath');
|
|
43
|
+
const nativeVersion = stringExport(nativeModule, 'lexaVersion');
|
|
44
|
+
const skill = stringExport(skillModule, 'lexaSkill');
|
|
45
|
+
const skillVersion = stringExport(skillModule, 'lexaVersion');
|
|
46
|
+
if (!binaryPath || !nativeVersion || !skill || !skillVersion) {
|
|
47
|
+
throw new Error('Aven loaded an invalid Lexa package. Reinstall aven-ai.');
|
|
48
|
+
}
|
|
49
|
+
if (nativeVersion !== skillVersion) {
|
|
50
|
+
throw new Error(`Aven loaded mismatched Lexa packages (${nativeVersion} and ${skillVersion}). Reinstall aven-ai.`);
|
|
51
|
+
}
|
|
52
|
+
let versionOutput;
|
|
53
|
+
try {
|
|
54
|
+
versionOutput = await (options.runVersion ?? runVersion)(binaryPath);
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
throw new Error(`Aven could not start its required Lexa ${nativeVersion} binary. ${errorDetail(error)}`, {
|
|
58
|
+
cause: error,
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
if (!versionPattern(nativeVersion).test(versionOutput)) {
|
|
62
|
+
throw new Error(`Aven expected Lexa ${nativeVersion}, but the packaged binary reported ${versionOutput.trim() || '(no version)'}.`);
|
|
63
|
+
}
|
|
64
|
+
return { binaryDirectory: dirname(binaryPath), binaryPath, skill, version: nativeVersion };
|
|
65
|
+
};
|
|
66
|
+
//# sourceMappingURL=lexa-runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lexa-runtime.js","sourceRoot":"","sources":["../../../src/libs/lexa/lexa-runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/libs/pty/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { commandResultDetail, NodePtyRunner, type ExecCommandOptions, type ExecCommandResult, type PtyRunner, } from './pty-runner.js';
|
|
1
|
+
export { activeShell, commandResultDetail, NodePtyRunner, type NodePtyRunnerOptions, type ExecCommandOptions, type ExecCommandResult, type PtyRunner, } from './pty-runner.js';
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/libs/pty/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,mBAAmB,EACnB,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,SAAS,GACd,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/libs/pty/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,WAAW,EACX,mBAAmB,EACnB,aAAa,EACb,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,SAAS,GACd,MAAM,iBAAiB,CAAC"}
|
package/dist/libs/pty/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { commandResultDetail, NodePtyRunner, } from './pty-runner.js';
|
|
1
|
+
export { activeShell, commandResultDetail, NodePtyRunner, } from './pty-runner.js';
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/libs/pty/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,mBAAmB,EACnB,aAAa,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/libs/pty/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,WAAW,EACX,mBAAmB,EACnB,aAAa,GAKb,MAAM,iBAAiB,CAAC"}
|
|
@@ -15,10 +15,14 @@ export interface PtyRunner {
|
|
|
15
15
|
run(command: string, options?: ExecCommandOptions): Promise<ExecCommandResult>;
|
|
16
16
|
dispose(): void;
|
|
17
17
|
}
|
|
18
|
+
export type NodePtyRunnerOptions = {
|
|
19
|
+
pathEntries?: readonly string[];
|
|
20
|
+
};
|
|
21
|
+
export declare const activeShell: () => string;
|
|
18
22
|
export declare class NodePtyRunner implements PtyRunner {
|
|
19
23
|
#private;
|
|
20
24
|
readonly cwd: string;
|
|
21
|
-
constructor(cwd?: string);
|
|
25
|
+
constructor(cwd?: string, options?: NodePtyRunnerOptions);
|
|
22
26
|
run(command: string, options?: ExecCommandOptions): Promise<ExecCommandResult>;
|
|
23
27
|
dispose(): void;
|
|
24
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pty-runner.d.ts","sourceRoot":"","sources":["../../../src/libs/pty/pty-runner.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,iBAAiB,GAAG;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAChC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,WAAW,SAAS;IACzB,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC/E,OAAO,IAAI,IAAI,CAAC;CAChB;
|
|
1
|
+
{"version":3,"file":"pty-runner.d.ts","sourceRoot":"","sources":["../../../src/libs/pty/pty-runner.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,iBAAiB,GAAG;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAChC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,WAAW,SAAS;IACzB,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC/E,OAAO,IAAI,IAAI,CAAC;CAChB;AAED,MAAM,MAAM,oBAAoB,GAAG;IAClC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC,CAAC;AAwCF,eAAO,MAAM,WAAW,QAAO,MAG9B,CAAC;AA4BF,qBAAa,aAAc,YAAW,SAAS;;IAC9C,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAMrB,YAAY,GAAG,SAAgB,EAAE,OAAO,GAAE,oBAAyB,EAIlE;IAED,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CA6DjF;IAED,OAAO,IAAI,IAAI,CAGd;CAUD;AAED,eAAO,MAAM,mBAAmB,WAAY,iBAAiB,KAAG,MAM/D,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import process from 'node:process';
|
|
2
2
|
import { accessSync, chmodSync, constants, existsSync } from 'node:fs';
|
|
3
3
|
import { createRequire } from 'node:module';
|
|
4
|
-
import { dirname, join } from 'node:path';
|
|
4
|
+
import { delimiter, dirname, join } from 'node:path';
|
|
5
5
|
import * as nodePty from 'node-pty';
|
|
6
6
|
import stripAnsi from 'strip-ansi';
|
|
7
7
|
const OUTPUT_LIMIT = 64 * 1024;
|
|
@@ -33,13 +33,19 @@ const captureText = (capture) => {
|
|
|
33
33
|
.trimEnd(),
|
|
34
34
|
};
|
|
35
35
|
};
|
|
36
|
+
export const activeShell = () => {
|
|
37
|
+
if (process.platform === 'win32')
|
|
38
|
+
return process.env.COMSPEC ?? 'powershell.exe';
|
|
39
|
+
return process.env.SHELL ?? '/bin/sh';
|
|
40
|
+
};
|
|
36
41
|
const shellCommand = (command) => {
|
|
37
42
|
if (process.platform === 'win32') {
|
|
43
|
+
const file = activeShell();
|
|
38
44
|
if (process.env.COMSPEC)
|
|
39
|
-
return { file
|
|
40
|
-
return { file
|
|
45
|
+
return { file, args: ['/d', '/s', '/c', command] };
|
|
46
|
+
return { file, args: ['-NoLogo', '-NoProfile', '-Command', command] };
|
|
41
47
|
}
|
|
42
|
-
return { file:
|
|
48
|
+
return { file: activeShell(), args: ['-lc', command] };
|
|
43
49
|
};
|
|
44
50
|
const ensureSpawnHelperIsExecutable = () => {
|
|
45
51
|
if (process.platform === 'win32')
|
|
@@ -64,10 +70,12 @@ export class NodePtyRunner {
|
|
|
64
70
|
cwd;
|
|
65
71
|
#active = new Set();
|
|
66
72
|
#forceTimers = new Map();
|
|
73
|
+
#pathEntries;
|
|
67
74
|
#disposed = false;
|
|
68
|
-
constructor(cwd = process.cwd()) {
|
|
75
|
+
constructor(cwd = process.cwd(), options = {}) {
|
|
69
76
|
ensureSpawnHelperIsExecutable();
|
|
70
77
|
this.cwd = cwd;
|
|
78
|
+
this.#pathEntries = [...(options.pathEntries ?? [])];
|
|
71
79
|
}
|
|
72
80
|
run(command, options = {}) {
|
|
73
81
|
if (this.#disposed)
|
|
@@ -79,6 +87,9 @@ export class NodePtyRunner {
|
|
|
79
87
|
return Promise.reject(options.signal.reason ?? new Error('Aborted'));
|
|
80
88
|
const shell = shellCommand(normalized);
|
|
81
89
|
const environment = Object.fromEntries(Object.entries(process.env).flatMap(([key, value]) => (value === undefined ? [] : [[key, value]])));
|
|
90
|
+
if (this.#pathEntries.length > 0) {
|
|
91
|
+
environment.PATH = [...this.#pathEntries, environment.PATH].filter(Boolean).join(delimiter);
|
|
92
|
+
}
|
|
82
93
|
const terminal = nodePty.spawn(shell.file, shell.args, {
|
|
83
94
|
name: 'xterm-256color',
|
|
84
95
|
cwd: this.cwd,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pty-runner.js","sourceRoot":"","sources":["../../../src/libs/pty/pty-runner.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,EAAC,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAC,MAAM,SAAS,CAAC;AACrE,OAAO,EAAC,aAAa,EAAC,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"pty-runner.js","sourceRoot":"","sources":["../../../src/libs/pty/pty-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,11 +8,13 @@ import { ConfigStore } from '../../libs/config/index.js';
|
|
|
8
8
|
import { type ProviderFactory } from '../../libs/provider-clients/index.js';
|
|
9
9
|
import { type PtyRunner } from '../../libs/pty/index.js';
|
|
10
10
|
import { SessionCatalog } from '../../libs/session-storage/index.js';
|
|
11
|
+
import type { LexaRuntime } from '../../libs/lexa/index.js';
|
|
11
12
|
export type { ProviderConnection, ProviderFactory } from '../../libs/provider-clients/index.js';
|
|
12
13
|
export { MissingProviderKeyError } from '../providers/index.js';
|
|
13
14
|
export type AnviaRuntimeOptions = {
|
|
14
15
|
configStore?: ConfigStore;
|
|
15
16
|
memoryPath?: string;
|
|
17
|
+
lexa: LexaRuntime;
|
|
16
18
|
ptyRunner?: PtyRunner;
|
|
17
19
|
providerFactory?: ProviderFactory;
|
|
18
20
|
projectRoot?: string;
|
|
@@ -20,7 +22,7 @@ export type AnviaRuntimeOptions = {
|
|
|
20
22
|
};
|
|
21
23
|
export declare class AnviaAgentRuntime implements ConfigurableAgentRuntime, ProjectSessionRuntime {
|
|
22
24
|
#private;
|
|
23
|
-
constructor(options
|
|
25
|
+
constructor(options: AnviaRuntimeOptions);
|
|
24
26
|
getProjectRoot(): string;
|
|
25
27
|
getActiveSession(): ProjectSessionSummary;
|
|
26
28
|
initializeSessions(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/modules/agent/core.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,0BAA0B,CAAC;AACxD,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,sBAAsB,CAAC;AAChE,OAAO,KAAK,EAAC,mBAAmB,EAAE,UAAU,EAAC,MAAM,uBAAuB,CAAC;AAC3E,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EACX,wBAAwB,EACxB,eAAe,EACf,WAAW,EACX,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,MAAM,YAAY,CAAC;AAIpB,OAAO,EAAC,WAAW,EAAyB,MAAM,4BAA4B,CAAC;AAG/E,OAAO,EAAyB,KAAK,eAAe,EAAC,MAAM,sCAAsC,CAAC;AAClG,OAAO,EAAgB,KAAK,SAAS,EAAC,MAAM,yBAAyB,CAAC;AAEtE,OAAO,EAAC,cAAc,EAAC,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/modules/agent/core.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,0BAA0B,CAAC;AACxD,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,sBAAsB,CAAC;AAChE,OAAO,KAAK,EAAC,mBAAmB,EAAE,UAAU,EAAC,MAAM,uBAAuB,CAAC;AAC3E,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EACX,wBAAwB,EACxB,eAAe,EACf,WAAW,EACX,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,MAAM,YAAY,CAAC;AAIpB,OAAO,EAAC,WAAW,EAAyB,MAAM,4BAA4B,CAAC;AAG/E,OAAO,EAAyB,KAAK,eAAe,EAAC,MAAM,sCAAsC,CAAC;AAClG,OAAO,EAAgB,KAAK,SAAS,EAAC,MAAM,yBAAyB,CAAC;AAEtE,OAAO,EAAC,cAAc,EAAC,MAAM,qCAAqC,CAAC;AACnE,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,0BAA0B,CAAC;AAE1D,YAAY,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,sCAAsC,CAAC;AAC9F,OAAO,EAAC,uBAAuB,EAAC,MAAM,uBAAuB,CAAC;AAE9D,MAAM,MAAM,mBAAmB,GAAG;IACjC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,WAAW,CAAC;IAClB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,cAAc,CAAC;CAChC,CAAC;AAEF,qBAAa,iBAAkB,YAAW,wBAAwB,EAAE,qBAAqB;;IAWxF,YAAY,OAAO,EAAE,mBAAmB,EAiBvC;IAED,cAAc,IAAI,MAAM,CAEvB;IAED,gBAAgB,IAAI,qBAAqB,CAExC;IAEK,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAGxC;IAEK,YAAY,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAGrD;IAED,eAAe,IAAI,qBAAqB,CAIvC;IAEK,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAKpE;IAED,aAAa,IAAI,eAAe,CAE/B;IAED,gBAAgB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAE5C;IAED,aAAa,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAEtC;IAED,OAAO,IAAI,OAAO,CAAC,eAAe,CAAC,CAElC;IAED,OAAO,CAAC,QAAQ,EAAE,UAAU,GAAG,OAAO,CAAC,eAAe,CAAC,CAGtD;IAED,KAAK,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC,CAGtF;IAED,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAGnD;IAEK,WAAW,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC,CAExC;IAEM,GAAG,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,GAAG,aAAa,CAAC,YAAY,CAAC,CAsBnF;IAED,OAAO,IAAI,IAAI,CAKd;CA2BD"}
|
|
@@ -22,7 +22,7 @@ export class AnviaAgentRuntime {
|
|
|
22
22
|
#pty;
|
|
23
23
|
#disposed = false;
|
|
24
24
|
#running = false;
|
|
25
|
-
constructor(options
|
|
25
|
+
constructor(options) {
|
|
26
26
|
this.#projectRoot = realpathSync(options.projectRoot ?? process.cwd());
|
|
27
27
|
if (!statSync(this.#projectRoot).isDirectory())
|
|
28
28
|
throw new Error('Project root must be a directory.');
|
|
@@ -31,9 +31,10 @@ export class AnviaAgentRuntime {
|
|
|
31
31
|
});
|
|
32
32
|
const sessionCatalog = options.sessionCatalog ?? new SessionCatalog(join(defaultConfigDirectory(), 'sessions.sqlite'));
|
|
33
33
|
this.#projectSessions = new ProjectSessionManager(this.#projectRoot, sessionCatalog, memory);
|
|
34
|
-
this.#pty =
|
|
34
|
+
this.#pty =
|
|
35
|
+
options.ptyRunner ?? new NodePtyRunner(this.#projectRoot, { pathEntries: [options.lexa.binaryDirectory] });
|
|
35
36
|
this.#providers = new ProviderConnectionManager(options.configStore ?? new ConfigStore(), options.providerFactory ?? defaultProviderFactory);
|
|
36
|
-
this.#promptTurns = new PromptTurnExecutor(this.#projectRoot, memory, this.#pty, this.#files);
|
|
37
|
+
this.#promptTurns = new PromptTurnExecutor(this.#projectRoot, memory, this.#pty, this.#files, options.lexa);
|
|
37
38
|
this.#directCommands = new DirectCommandExecutor(this.#projectRoot, memory, this.#pty);
|
|
38
39
|
}
|
|
39
40
|
getProjectRoot() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/modules/agent/core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,uBAAuB,EAAC,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAC,YAAY,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AAc/B,OAAO,EAAC,qBAAqB,EAAC,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAC,kBAAkB,EAAC,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAC,yBAAyB,EAAC,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAC,WAAW,EAAE,sBAAsB,EAAC,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAC,kBAAkB,EAAC,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAC,eAAe,EAAC,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAC,sBAAsB,EAAuB,MAAM,sCAAsC,CAAC;AAClG,OAAO,EAAC,aAAa,EAAiB,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAC,qBAAqB,EAAC,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAC,cAAc,EAAC,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/modules/agent/core.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,7 @@ export declare const execResultSchema: z.ZodObject<{
|
|
|
10
10
|
timedOut: z.ZodBoolean;
|
|
11
11
|
truncated: z.ZodBoolean;
|
|
12
12
|
output: z.ZodString;
|
|
13
|
+
agent_guidance: z.ZodOptional<z.ZodString>;
|
|
13
14
|
}, z.core.$strip>;
|
|
14
15
|
export declare const safeJson: (value: unknown) => string;
|
|
15
16
|
export declare const summaryFromArguments: (name: string, value: unknown) => string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-message-adapter.d.ts","sourceRoot":"","sources":["../../../../src/modules/agent/events/tool-message-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AACtB,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAuB,KAAK,cAAc,EAAC,MAAM,6BAA6B,CAAC;AACtF,OAAO,EAAsB,KAAK,iBAAiB,EAAC,MAAM,4BAA4B,CAAC;AAEvF,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"tool-message-adapter.d.ts","sourceRoot":"","sources":["../../../../src/modules/agent/events/tool-message-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AACtB,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAuB,KAAK,cAAc,EAAC,MAAM,6BAA6B,CAAC;AACtF,OAAO,EAAsB,KAAK,iBAAiB,EAAC,MAAM,4BAA4B,CAAC;AAEvF,eAAO,MAAM,gBAAgB;;;;;;;;;iBAS3B,CAAC;AAWH,eAAO,MAAM,QAAQ,UAAW,OAAO,KAAG,MAMzC,CAAC;AAEF,eAAO,MAAM,oBAAoB,SAAU,MAAM,SAAS,OAAO,KAAG,MAMnE,CAAC;AAEF,eAAO,MAAM,8BAA8B,SAAU,MAAM,SAAS,MAAM,KAAG,MAM5E,CAAC;AAEF,eAAO,MAAM,YAAY,SAAU,MAAM,KAAG,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAI3E,CAAC;AAUF,eAAO,MAAM,eAAe,UAAW,MAAM,KAAG,cAAc,GAAG,SAMhE,CAAC;AAWF,eAAO,MAAM,qBAAqB,OAAQ,MAAM,UAAU,iBAAiB,KAAG,WAS5E,CAAC;AAwCH,eAAO,MAAM,+BAA+B,OACvC,MAAM,QACJ,MAAM,oBACM,MAAM,WACf,MAAM,KACb,WA0BF,CAAC"}
|