@felan-ai/agent-core 0.3.1 → 0.3.2
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 +8 -0
- package/dist/host-agent-runtime.d.ts +6 -2
- package/dist/host-agent-runtime.d.ts.map +1 -1
- package/dist/host-agent-runtime.js +100 -61
- package/dist/host-agent-runtime.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/resource-loader.d.ts +1 -0
- package/dist/resource-loader.d.ts.map +1 -1
- package/dist/resource-loader.js +4 -0
- package/dist/resource-loader.js.map +1 -1
- package/dist/runtime.d.ts +15 -0
- package/dist/runtime.d.ts.map +1 -1
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +17 -7
- package/dist/session.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -14,6 +14,11 @@ Use `exec(command, args)` for literal argument boundaries and `shell(command)`
|
|
|
14
14
|
only when shell parsing is intentional. File reads and writes use
|
|
15
15
|
`Uint8Array` so binary content is preserved.
|
|
16
16
|
|
|
17
|
+
Every `AgentRuntime` also exposes an isolated persistent `storage` filesystem.
|
|
18
|
+
Local consumers select it with `new HostAgentRuntime(cwd, { storageRoot })`;
|
|
19
|
+
cloud adapters map it to their durable state root. Workspace tools remain
|
|
20
|
+
confined to `cwd`, while extension state uses `runtime.storage`.
|
|
21
|
+
|
|
17
22
|
Host mode runs with the current user's filesystem and process permissions. It
|
|
18
23
|
provides workspace path containment, but no OS isolation or sandbox boundary.
|
|
19
24
|
Run untrusted workloads in an isolated runtime instead.
|
|
@@ -26,6 +31,9 @@ ownership of model credentials, settings, session storage, stream wrappers,
|
|
|
26
31
|
feature extensions, and presentation listeners. `FelanExtensionAPI` adds only
|
|
27
32
|
the selected `AgentRuntime` and application agent directory to Pi's extension
|
|
28
33
|
API; feature-specific contracts remain in their owning extension packages.
|
|
34
|
+
Runtime-backed coding tools are installed during composition as hidden fallback
|
|
35
|
+
extension tools, so feature extensions can override standard tool names while
|
|
36
|
+
explicit application `customTools` retain final precedence.
|
|
29
37
|
|
|
30
38
|
Agent Core owns the exact Pi dependency versions used by its consumers. Its
|
|
31
39
|
public entry point exposes the Pi model, credential, streaming, session,
|
|
@@ -1,12 +1,16 @@
|
|
|
1
|
-
import type { AgentRuntime, ExecOptions, ExecResult } from './runtime.js';
|
|
1
|
+
import type { AgentRuntime, AgentRuntimeStorage, ExecOptions, ExecResult } from './runtime.js';
|
|
2
2
|
export type HostShellOptions = ExecOptions & {
|
|
3
3
|
env?: Readonly<Record<string, string>>;
|
|
4
4
|
};
|
|
5
|
+
export interface HostAgentRuntimeOptions {
|
|
6
|
+
readonly storageRoot?: string;
|
|
7
|
+
}
|
|
5
8
|
export declare class HostAgentRuntime implements AgentRuntime {
|
|
6
9
|
#private;
|
|
7
|
-
constructor(cwd?: string);
|
|
10
|
+
constructor(cwd?: string, options?: HostAgentRuntimeOptions);
|
|
8
11
|
get kind(): 'host';
|
|
9
12
|
get cwd(): string;
|
|
13
|
+
get storage(): AgentRuntimeStorage;
|
|
10
14
|
exec(command: string, args: readonly string[], options?: ExecOptions): Promise<ExecResult>;
|
|
11
15
|
shell(command: string, options?: HostShellOptions): Promise<ExecResult>;
|
|
12
16
|
readFile(path: string): Promise<Uint8Array>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host-agent-runtime.d.ts","sourceRoot":"","sources":["../src/host-agent-runtime.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"host-agent-runtime.d.ts","sourceRoot":"","sources":["../src/host-agent-runtime.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACnB,WAAW,EACX,UAAU,EACX,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG;IAC3C,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACxC,CAAC;AAEF,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,qBAAa,gBAAiB,YAAW,YAAY;;gBAIvC,GAAG,SAAgB,EAAE,OAAO,GAAE,uBAA4B;IAQtE,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,IAAI,OAAO,IAAI,mBAAmB,CAEjC;IAEK,IAAI,CACR,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,UAAU,CAAC;IAMhB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAMvE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAM3C,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAM3D,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAa7E,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAuE7E"}
|
|
@@ -3,11 +3,13 @@ import { lstat, mkdir, readFile, readdir, readlink, realpath, rm, writeFile, } f
|
|
|
3
3
|
import { isAbsolute, join, relative, resolve, sep } from 'node:path';
|
|
4
4
|
export class HostAgentRuntime {
|
|
5
5
|
#cwd;
|
|
6
|
-
|
|
6
|
+
#storage;
|
|
7
|
+
constructor(cwd = process.cwd(), options = {}) {
|
|
7
8
|
if (cwd.includes('\0')) {
|
|
8
9
|
throw new Error('Runtime cwd cannot contain NUL bytes');
|
|
9
10
|
}
|
|
10
11
|
this.#cwd = resolve(cwd);
|
|
12
|
+
this.#storage = createHostStorage(options.storageRoot ?? this.#cwd);
|
|
11
13
|
}
|
|
12
14
|
get kind() {
|
|
13
15
|
return 'host';
|
|
@@ -15,28 +17,31 @@ export class HostAgentRuntime {
|
|
|
15
17
|
get cwd() {
|
|
16
18
|
return this.#cwd;
|
|
17
19
|
}
|
|
20
|
+
get storage() {
|
|
21
|
+
return this.#storage;
|
|
22
|
+
}
|
|
18
23
|
async exec(command, args, options) {
|
|
19
24
|
const literalArgs = [...args];
|
|
20
|
-
const cwd = await this.#
|
|
25
|
+
const cwd = await resolveContainedPath(this.#cwd, options?.cwd ?? this.#cwd);
|
|
21
26
|
return this.#spawn(command, literalArgs, cwd, options, false);
|
|
22
27
|
}
|
|
23
28
|
async shell(command, options) {
|
|
24
29
|
const env = options?.env ? { ...options.env } : undefined;
|
|
25
|
-
const cwd = await this.#
|
|
30
|
+
const cwd = await resolveContainedPath(this.#cwd, options?.cwd ?? this.#cwd);
|
|
26
31
|
return this.#spawn(command, [], cwd, options, true, env);
|
|
27
32
|
}
|
|
28
33
|
async readFile(path) {
|
|
29
|
-
const resolvedPath = await this.#
|
|
34
|
+
const resolvedPath = await resolveContainedPath(this.#cwd, path);
|
|
30
35
|
const content = await readFile(resolvedPath);
|
|
31
36
|
return new Uint8Array(content);
|
|
32
37
|
}
|
|
33
38
|
async writeFile(path, content) {
|
|
34
39
|
const copiedContent = content.slice();
|
|
35
|
-
const resolvedPath = await this.#
|
|
40
|
+
const resolvedPath = await resolveContainedPath(this.#cwd, path);
|
|
36
41
|
await writeFile(resolvedPath, copiedContent);
|
|
37
42
|
}
|
|
38
43
|
async listFiles(path, options) {
|
|
39
|
-
const resolvedPath = await this.#
|
|
44
|
+
const resolvedPath = await resolveContainedPath(this.#cwd, path);
|
|
40
45
|
const entries = await readdir(resolvedPath, {
|
|
41
46
|
recursive: options?.recursive ?? false,
|
|
42
47
|
withFileTypes: true,
|
|
@@ -47,66 +52,13 @@ export class HostAgentRuntime {
|
|
|
47
52
|
.sort();
|
|
48
53
|
}
|
|
49
54
|
async mkdir(path, options) {
|
|
50
|
-
const resolvedPath = await this.#
|
|
55
|
+
const resolvedPath = await resolveContainedPath(this.#cwd, path);
|
|
51
56
|
await mkdir(resolvedPath, { recursive: options?.recursive ?? false });
|
|
52
57
|
}
|
|
53
58
|
async remove(path, options) {
|
|
54
|
-
const resolvedPath = await this.#
|
|
59
|
+
const resolvedPath = await resolveContainedPath(this.#cwd, path, false);
|
|
55
60
|
await rm(resolvedPath, { recursive: options?.recursive ?? false });
|
|
56
61
|
}
|
|
57
|
-
async #resolvePath(path, allowRoot = true) {
|
|
58
|
-
if (path.includes('\0')) {
|
|
59
|
-
throw new Error('Paths cannot contain NUL bytes');
|
|
60
|
-
}
|
|
61
|
-
const resolvedPath = isAbsolute(path) ? resolve(path) : resolve(this.#cwd, path);
|
|
62
|
-
this.#assertContained(this.#cwd, resolvedPath, allowRoot);
|
|
63
|
-
const resolvedRoot = await realpath(this.#cwd);
|
|
64
|
-
const segments = relative(this.#cwd, resolvedPath).split(sep).filter(Boolean);
|
|
65
|
-
let current = resolvedRoot;
|
|
66
|
-
for (let index = 0; index < segments.length; index += 1) {
|
|
67
|
-
const candidate = join(current, segments[index]);
|
|
68
|
-
try {
|
|
69
|
-
const stats = await lstat(candidate);
|
|
70
|
-
if (stats.isSymbolicLink()) {
|
|
71
|
-
const target = await readlink(candidate);
|
|
72
|
-
const resolvedTarget = resolve(current, target);
|
|
73
|
-
this.#assertContained(resolvedRoot, resolvedTarget, allowRoot);
|
|
74
|
-
try {
|
|
75
|
-
current = await realpath(candidate);
|
|
76
|
-
}
|
|
77
|
-
catch (error) {
|
|
78
|
-
if (!isMissingPathError(error))
|
|
79
|
-
throw error;
|
|
80
|
-
current = resolvedTarget;
|
|
81
|
-
}
|
|
82
|
-
this.#assertContained(resolvedRoot, current, allowRoot);
|
|
83
|
-
}
|
|
84
|
-
else {
|
|
85
|
-
current = candidate;
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
catch (error) {
|
|
89
|
-
if (!isMissingPathError(error))
|
|
90
|
-
throw error;
|
|
91
|
-
current = resolve(current, ...segments.slice(index));
|
|
92
|
-
this.#assertContained(resolvedRoot, current, allowRoot);
|
|
93
|
-
break;
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
this.#assertContained(resolvedRoot, current, allowRoot);
|
|
97
|
-
return resolvedPath;
|
|
98
|
-
}
|
|
99
|
-
#assertContained(root, path, allowRoot) {
|
|
100
|
-
const relativePath = relative(root, path);
|
|
101
|
-
const contained = relativePath === ''
|
|
102
|
-
|| (relativePath !== '..' && !relativePath.startsWith(`..${sep}`) && !isAbsolute(relativePath));
|
|
103
|
-
if (!contained) {
|
|
104
|
-
throw new Error(`Path escapes runtime cwd: ${path}`);
|
|
105
|
-
}
|
|
106
|
-
if (!allowRoot && relativePath === '') {
|
|
107
|
-
throw new Error('The runtime cwd cannot be removed');
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
62
|
async #spawn(command, args, cwd, options, shell, env) {
|
|
111
63
|
if (options?.signal?.aborted) {
|
|
112
64
|
return killedResult();
|
|
@@ -167,6 +119,93 @@ export class HostAgentRuntime {
|
|
|
167
119
|
});
|
|
168
120
|
}
|
|
169
121
|
}
|
|
122
|
+
function createHostStorage(root) {
|
|
123
|
+
if (root.includes('\0'))
|
|
124
|
+
throw new Error('Runtime storage root cannot contain NUL bytes');
|
|
125
|
+
const storageRoot = resolve(root);
|
|
126
|
+
return {
|
|
127
|
+
root: storageRoot,
|
|
128
|
+
async readFile(path) {
|
|
129
|
+
const content = await readFile(await resolveContainedPath(storageRoot, path));
|
|
130
|
+
return new Uint8Array(content);
|
|
131
|
+
},
|
|
132
|
+
async writeFile(path, content) {
|
|
133
|
+
const copiedContent = content.slice();
|
|
134
|
+
await writeFile(await resolveContainedPath(storageRoot, path), copiedContent);
|
|
135
|
+
},
|
|
136
|
+
async listFiles(path, options) {
|
|
137
|
+
const resolvedPath = await resolveContainedPath(storageRoot, path);
|
|
138
|
+
const entries = await readdir(resolvedPath, {
|
|
139
|
+
recursive: options?.recursive ?? false,
|
|
140
|
+
withFileTypes: true,
|
|
141
|
+
});
|
|
142
|
+
return entries
|
|
143
|
+
.filter((entry) => entry.isFile())
|
|
144
|
+
.map((entry) => relative(resolvedPath, resolve(entry.parentPath, entry.name)))
|
|
145
|
+
.sort();
|
|
146
|
+
},
|
|
147
|
+
async mkdir(path, options) {
|
|
148
|
+
await mkdir(await resolveContainedPath(storageRoot, path), {
|
|
149
|
+
recursive: options?.recursive ?? false,
|
|
150
|
+
});
|
|
151
|
+
},
|
|
152
|
+
async remove(path, options) {
|
|
153
|
+
await rm(await resolveContainedPath(storageRoot, path, false), {
|
|
154
|
+
recursive: options?.recursive ?? false,
|
|
155
|
+
});
|
|
156
|
+
},
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
async function resolveContainedPath(root, path, allowRoot = true) {
|
|
160
|
+
if (path.includes('\0'))
|
|
161
|
+
throw new Error('Paths cannot contain NUL bytes');
|
|
162
|
+
const resolvedPath = isAbsolute(path) ? resolve(path) : resolve(root, path);
|
|
163
|
+
assertContained(root, resolvedPath, allowRoot);
|
|
164
|
+
const resolvedRoot = await realpath(root);
|
|
165
|
+
const segments = relative(root, resolvedPath).split(sep).filter(Boolean);
|
|
166
|
+
let current = resolvedRoot;
|
|
167
|
+
for (let index = 0; index < segments.length; index += 1) {
|
|
168
|
+
const candidate = join(current, segments[index]);
|
|
169
|
+
try {
|
|
170
|
+
const stats = await lstat(candidate);
|
|
171
|
+
if (stats.isSymbolicLink()) {
|
|
172
|
+
const target = await readlink(candidate);
|
|
173
|
+
const resolvedTarget = resolve(current, target);
|
|
174
|
+
assertContained(resolvedRoot, resolvedTarget, allowRoot);
|
|
175
|
+
try {
|
|
176
|
+
current = await realpath(candidate);
|
|
177
|
+
}
|
|
178
|
+
catch (error) {
|
|
179
|
+
if (!isMissingPathError(error))
|
|
180
|
+
throw error;
|
|
181
|
+
current = resolvedTarget;
|
|
182
|
+
}
|
|
183
|
+
assertContained(resolvedRoot, current, allowRoot);
|
|
184
|
+
}
|
|
185
|
+
else {
|
|
186
|
+
current = candidate;
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
catch (error) {
|
|
190
|
+
if (!isMissingPathError(error))
|
|
191
|
+
throw error;
|
|
192
|
+
current = resolve(current, ...segments.slice(index));
|
|
193
|
+
assertContained(resolvedRoot, current, allowRoot);
|
|
194
|
+
break;
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
assertContained(resolvedRoot, current, allowRoot);
|
|
198
|
+
return resolvedPath;
|
|
199
|
+
}
|
|
200
|
+
function assertContained(root, path, allowRoot) {
|
|
201
|
+
const relativePath = relative(root, path);
|
|
202
|
+
const contained = relativePath === ''
|
|
203
|
+
|| (relativePath !== '..' && !relativePath.startsWith(`..${sep}`) && !isAbsolute(relativePath));
|
|
204
|
+
if (!contained)
|
|
205
|
+
throw new Error(`Path escapes runtime root: ${path}`);
|
|
206
|
+
if (!allowRoot && relativePath === '')
|
|
207
|
+
throw new Error('The runtime root cannot be removed');
|
|
208
|
+
}
|
|
170
209
|
function isMissingPathError(error) {
|
|
171
210
|
return error instanceof Error
|
|
172
211
|
&& 'code' in error
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host-agent-runtime.js","sourceRoot":"","sources":["../src/host-agent-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAqB,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACL,KAAK,EACL,KAAK,EACL,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,EAAE,EACF,SAAS,GACV,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"host-agent-runtime.js","sourceRoot":"","sources":["../src/host-agent-runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export type { AgentRuntime, AgentRuntimeKind, ExecOptions, ExecResult, } from './runtime.js';
|
|
1
|
+
export type { AgentRuntime, AgentRuntimeKind, AgentRuntimeStorage, ExecOptions, ExecResult, } from './runtime.js';
|
|
2
2
|
export { AGENT_CORE_VERSION } from './version.js';
|
|
3
3
|
export { HostAgentRuntime } from './host-agent-runtime.js';
|
|
4
|
-
export type { HostShellOptions } from './host-agent-runtime.js';
|
|
4
|
+
export type { HostAgentRuntimeOptions, HostShellOptions } from './host-agent-runtime.js';
|
|
5
5
|
export { bindFelanExtension, loadFelanExtensions, } from './extensions.js';
|
|
6
6
|
export { formatCapabilitiesSection } from './capabilities.js';
|
|
7
7
|
export type { FelanCapability, RegisteredFelanCapability } from './capabilities.js';
|
|
@@ -14,7 +14,7 @@ export { createAgentCoreSession, createAgentCoreSessionRuntime, createAgentCoreS
|
|
|
14
14
|
export type { AgentCoreSessionRuntimeFactoryOptions, AgentCoreSessionRuntimeFactoryRequest, AgentCoreSessionRuntimeOptionsFactory, CreateAgentCoreSessionOptions, StreamFunction, } from './session.js';
|
|
15
15
|
export { AgentSession, CURRENT_SESSION_VERSION, DefaultResourceLoader, ModelRuntime, SessionManager, SettingsManager, createAgentSessionRuntime, defineTool, getAgentDir, loadSkillsFromDir, } from '@earendil-works/pi-coding-agent';
|
|
16
16
|
export type { AgentSessionEvent, AgentSessionEventListener, AgentSessionRuntimeDiagnostic, AgentSessionServices, CreateAgentSessionOptions, CreateAgentSessionResult, CreateAgentSessionRuntimeFactory, CreateAgentSessionRuntimeResult, Extension, ExtensionAPI, ExtensionContext, ExtensionFactory, InlineExtension, LoadExtensionsResult, ResourceDiagnostic, ResourceLoader, SessionContext, SessionStartEvent, Skill, ToolDefinition, } from '@earendil-works/pi-coding-agent';
|
|
17
|
-
export { InMemoryCredentialStore, createAssistantMessageEventStream, getSupportedThinkingLevels, isContextOverflow, lazyStream, uuidv7, } from '@earendil-works/pi-ai';
|
|
17
|
+
export { InMemoryCredentialStore, StringEnum, createAssistantMessageEventStream, getSupportedThinkingLevels, isContextOverflow, lazyStream, uuidv7, } from '@earendil-works/pi-ai';
|
|
18
18
|
export type { Api, AssistantMessage, AssistantMessageEvent, AssistantMessageEventStream, Context, Credential, CredentialInfo, CredentialStore, Model, SimpleStreamOptions, } from '@earendil-works/pi-ai';
|
|
19
19
|
export { builtinProviders } from '@earendil-works/pi-ai/providers/all';
|
|
20
20
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,UAAU,GACX,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,YAAY,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACnB,WAAW,EACX,UAAU,GACX,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,YAAY,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACzF,OAAO,EACL,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,YAAY,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AACpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,YAAY,EACV,wBAAwB,EACxB,cAAc,EACd,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AACrE,YAAY,EAAE,oCAAoC,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EACL,sBAAsB,EACtB,6BAA6B,EAC7B,oCAAoC,GACrC,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,qCAAqC,EACrC,qCAAqC,EACrC,qCAAqC,EACrC,6BAA6B,EAC7B,cAAc,GACf,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,qBAAqB,EACrB,YAAY,EACZ,cAAc,EACd,eAAe,EACf,yBAAyB,EACzB,UAAU,EACV,WAAW,EACX,iBAAiB,GAClB,MAAM,iCAAiC,CAAC;AACzC,YAAY,EACV,iBAAiB,EACjB,yBAAyB,EACzB,6BAA6B,EAC7B,oBAAoB,EACpB,yBAAyB,EACzB,wBAAwB,EACxB,gCAAgC,EAChC,+BAA+B,EAC/B,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,KAAK,EACL,cAAc,GACf,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,uBAAuB,EACvB,UAAU,EACV,iCAAiC,EACjC,0BAA0B,EAC1B,iBAAiB,EACjB,UAAU,EACV,MAAM,GACP,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,GAAG,EACH,gBAAgB,EAChB,qBAAqB,EACrB,2BAA2B,EAC3B,OAAO,EACP,UAAU,EACV,cAAc,EACd,eAAe,EACf,KAAK,EACL,mBAAmB,GACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -7,6 +7,6 @@ export { createAgentCoreResourceLoader } from './resource-loader.js';
|
|
|
7
7
|
export { createRuntimeCodingTools } from './tools.js';
|
|
8
8
|
export { createAgentCoreSession, createAgentCoreSessionRuntime, createAgentCoreSessionRuntimeFactory, } from './session.js';
|
|
9
9
|
export { AgentSession, CURRENT_SESSION_VERSION, DefaultResourceLoader, ModelRuntime, SessionManager, SettingsManager, createAgentSessionRuntime, defineTool, getAgentDir, loadSkillsFromDir, } from '@earendil-works/pi-coding-agent';
|
|
10
|
-
export { InMemoryCredentialStore, createAssistantMessageEventStream, getSupportedThinkingLevels, isContextOverflow, lazyStream, uuidv7, } from '@earendil-works/pi-ai';
|
|
10
|
+
export { InMemoryCredentialStore, StringEnum, createAssistantMessageEventStream, getSupportedThinkingLevels, isContextOverflow, lazyStream, uuidv7, } from '@earendil-works/pi-ai';
|
|
11
11
|
export { builtinProviders } from '@earendil-works/pi-ai/providers/all';
|
|
12
12
|
//# 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":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EACL,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAM9D,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAErE,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EACL,sBAAsB,EACtB,6BAA6B,EAC7B,oCAAoC,GACrC,MAAM,cAAc,CAAC;AAQtB,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,qBAAqB,EACrB,YAAY,EACZ,cAAc,EACd,eAAe,EACf,yBAAyB,EACzB,UAAU,EACV,WAAW,EACX,iBAAiB,GAClB,MAAM,iCAAiC,CAAC;AAuBzC,OAAO,EACL,uBAAuB,EACvB,UAAU,EACV,iCAAiC,EACjC,0BAA0B,EAC1B,iBAAiB,EACjB,UAAU,EACV,MAAM,GACP,MAAM,uBAAuB,CAAC;AAa/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type InlineExtension, type ResourceLoader, type Skill } from '@earendil-works/pi-coding-agent';
|
|
2
|
+
export declare const runtimeToolsExtensionName = "@felan-ai/agent-core/runtime-tools";
|
|
2
3
|
export interface CreateAgentCoreResourceLoaderOptions {
|
|
3
4
|
readonly cwd: string;
|
|
4
5
|
readonly agentDir: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-loader.d.ts","sourceRoot":"","sources":["../src/resource-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,KAAK,EACX,MAAM,iCAAiC,CAAC;AAIzC,MAAM,WAAW,oCAAoC;IACnD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,kBAAkB,EAAE,SAAS,eAAe,EAAE,CAAC;IACxD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC;IACrE,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,KAAK,EAAE,CAAC;IACnC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACjD;AAED,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,oCAAoC,GAC5C,OAAO,CAAC,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"resource-loader.d.ts","sourceRoot":"","sources":["../src/resource-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,KAAK,EACX,MAAM,iCAAiC,CAAC;AAIzC,eAAO,MAAM,yBAAyB,uCAAuC,CAAC;AAG9E,MAAM,WAAW,oCAAoC;IACnD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,kBAAkB,EAAE,SAAS,eAAe,EAAE,CAAC;IACxD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC;IACrE,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,KAAK,EAAE,CAAC;IACnC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACjD;AAED,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,oCAAoC,GAC5C,OAAO,CAAC,cAAc,CAAC,CAsDzB"}
|
package/dist/resource-loader.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { DefaultResourceLoader, SettingsManager, } from '@earendil-works/pi-coding-agent';
|
|
2
2
|
import { collectCapabilities, formatCapabilitiesSection } from './capabilities.js';
|
|
3
3
|
import { FELAN_BASE_SYSTEM_PROMPT } from './system-prompt.js';
|
|
4
|
+
export const runtimeToolsExtensionName = '@felan-ai/agent-core/runtime-tools';
|
|
5
|
+
const runtimeToolsExtensionPath = `<inline:${runtimeToolsExtensionName}>`;
|
|
4
6
|
export async function createAgentCoreResourceLoader(options) {
|
|
5
7
|
const skills = options.skills === undefined ? undefined : [...options.skills];
|
|
6
8
|
const consumerAppends = (options.appendSystemPrompt ?? []).filter((prompt) => prompt.trim().length > 0);
|
|
@@ -43,6 +45,8 @@ export async function createAgentCoreResourceLoader(options) {
|
|
|
43
45
|
});
|
|
44
46
|
await loader.reload();
|
|
45
47
|
const extensionsResult = loader.getExtensions();
|
|
48
|
+
const actionableErrors = extensionsResult.errors.filter(({ path, error }) => (path !== runtimeToolsExtensionPath || !error.startsWith('Tool "')));
|
|
49
|
+
extensionsResult.errors.splice(0, extensionsResult.errors.length, ...actionableErrors);
|
|
46
50
|
if (extensionsResult.errors.length > 0) {
|
|
47
51
|
const first = extensionsResult.errors[0];
|
|
48
52
|
throw new Error(`${first.path}: ${first.error}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-loader.js","sourceRoot":"","sources":["../src/resource-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,eAAe,GAIhB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AACnF,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"resource-loader.js","sourceRoot":"","sources":["../src/resource-loader.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime.d.ts
CHANGED
|
@@ -1,9 +1,24 @@
|
|
|
1
1
|
import type { ExecOptions, ExecResult } from '@earendil-works/pi-coding-agent';
|
|
2
2
|
export type { ExecOptions, ExecResult } from '@earendil-works/pi-coding-agent';
|
|
3
3
|
export type AgentRuntimeKind = 'host' | 'docker' | 'daytona';
|
|
4
|
+
export interface AgentRuntimeStorage {
|
|
5
|
+
readonly root: string;
|
|
6
|
+
readFile(path: string): Promise<Uint8Array>;
|
|
7
|
+
writeFile(path: string, content: Uint8Array): Promise<void>;
|
|
8
|
+
listFiles(path: string, options?: {
|
|
9
|
+
recursive?: boolean;
|
|
10
|
+
}): Promise<string[]>;
|
|
11
|
+
mkdir(path: string, options?: {
|
|
12
|
+
recursive?: boolean;
|
|
13
|
+
}): Promise<void>;
|
|
14
|
+
remove(path: string, options?: {
|
|
15
|
+
recursive?: boolean;
|
|
16
|
+
}): Promise<void>;
|
|
17
|
+
}
|
|
4
18
|
export interface AgentRuntime {
|
|
5
19
|
readonly kind: AgentRuntimeKind;
|
|
6
20
|
readonly cwd: string;
|
|
21
|
+
readonly storage: AgentRuntimeStorage;
|
|
7
22
|
exec(command: string, args: readonly string[], options?: ExecOptions): Promise<ExecResult>;
|
|
8
23
|
shell(command: string, options?: ExecOptions & {
|
|
9
24
|
env?: Readonly<Record<string, string>>;
|
package/dist/runtime.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAE/E,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAE/E,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE7D,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAE/E,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAE/E,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE7D,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC5C,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC9E,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxE;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;IAEtC,IAAI,CACF,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,UAAU,CAAC,CAAC;IAEvB,KAAK,CACH,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,WAAW,GAAG;QAAE,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;KAAE,GACjE,OAAO,CAAC,UAAU,CAAC,CAAC;IAEvB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC5C,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC9E,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxE"}
|
package/dist/session.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,YAAY,EAEjB,KAAK,yBAAyB,EAC9B,KAAK,wBAAwB,EAC7B,KAAK,gCAAgC,EACrC,KAAK,+BAA+B,
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,YAAY,EAEjB,KAAK,yBAAyB,EAC9B,KAAK,wBAAwB,EAC7B,KAAK,gCAAgC,EACrC,KAAK,+BAA+B,EAEpC,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,KAAK,EACV,KAAK,cAAc,EACpB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAuB,KAAK,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAKrF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAGjD,MAAM,MAAM,cAAc,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,gBAAgB,CAAC,CAAC;AAErE,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,KAAK,cAAc,CAAC;IAC3E,QAAQ,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9C,QAAQ,CAAC,eAAe,EAAE,wBAAwB,CAAC;IACnD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC;IACrE,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACpD,QAAQ,CAAC,aAAa,CAAC,EAAE,yBAAyB,CAAC,eAAe,CAAC,CAAC;IACpE,QAAQ,CAAC,YAAY,CAAC,EAAE,yBAAyB,CAAC,cAAc,CAAC,CAAC;IAClE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAC/C,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IACjD,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,KAAK,EAAE,CAAC;IACnC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACjD;AAED,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,6BAA6B,GACrC,OAAO,CAAC,wBAAwB,CAAC,CAGnC;AAED,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,6BAA6B,GACrC,OAAO,CAAC,+BAA+B,CAAC,CAO1C;AAED,MAAM,MAAM,qCAAqC,GAAG,UAAU,CAAC,gCAAgC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEpG,MAAM,MAAM,qCAAqC,GAAG,IAAI,CACtD,6BAA6B,EAC7B,UAAU,GAAG,gBAAgB,GAAG,mBAAmB,CACpD,CAAC;AAEF,MAAM,MAAM,qCAAqC,GAAG,CAClD,OAAO,EAAE,qCAAqC,KAC3C,qCAAqC,GAAG,OAAO,CAAC,qCAAqC,CAAC,CAAC;AAE5F,wBAAgB,oCAAoC,CAClD,aAAa,EAAE,qCAAqC,GACnD,gCAAgC,CASlC"}
|
package/dist/session.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createAgentSession, } from '@earendil-works/pi-coding-agent';
|
|
2
2
|
import { loadFelanExtensions } from './extensions.js';
|
|
3
|
-
import { createAgentCoreResourceLoader } from './resource-loader.js';
|
|
3
|
+
import { createAgentCoreResourceLoader, runtimeToolsExtensionName, } from './resource-loader.js';
|
|
4
4
|
import { createRuntimeCodingTools } from './tools.js';
|
|
5
5
|
export async function createAgentCoreSession(options) {
|
|
6
6
|
const composition = await composeAgentCoreSession(options);
|
|
@@ -26,7 +26,11 @@ export function createAgentCoreSessionRuntimeFactory(createOptions) {
|
|
|
26
26
|
}
|
|
27
27
|
async function composeAgentCoreSession(options) {
|
|
28
28
|
const agentDir = options.agentDir ?? options.runtime.cwd;
|
|
29
|
-
const
|
|
29
|
+
const featureExtensions = await loadFelanExtensions(options.extensionPackages, options.importExtension, options.runtime, agentDir);
|
|
30
|
+
const extensionFactories = [
|
|
31
|
+
...featureExtensions,
|
|
32
|
+
createRuntimeToolsExtension(options.runtime),
|
|
33
|
+
];
|
|
30
34
|
const resourceLoader = await createAgentCoreResourceLoader({
|
|
31
35
|
cwd: options.runtime.cwd,
|
|
32
36
|
agentDir,
|
|
@@ -40,16 +44,12 @@ async function composeAgentCoreSession(options) {
|
|
|
40
44
|
? {}
|
|
41
45
|
: { appendSystemPrompt: options.appendSystemPrompt }),
|
|
42
46
|
});
|
|
43
|
-
const customTools = [
|
|
44
|
-
...createRuntimeCodingTools(options.runtime),
|
|
45
|
-
...(options.customTools ?? []),
|
|
46
|
-
];
|
|
47
47
|
const result = await createAgentSession({
|
|
48
48
|
cwd: options.runtime.cwd,
|
|
49
49
|
agentDir,
|
|
50
50
|
modelRuntime: options.modelRuntime,
|
|
51
51
|
noTools: 'builtin',
|
|
52
|
-
customTools,
|
|
52
|
+
...(options.customTools === undefined ? {} : { customTools: [...options.customTools] }),
|
|
53
53
|
resourceLoader,
|
|
54
54
|
sessionManager: options.sessionManager,
|
|
55
55
|
settingsManager: options.settingsManager,
|
|
@@ -81,4 +81,14 @@ async function composeAgentCoreSession(options) {
|
|
|
81
81
|
},
|
|
82
82
|
};
|
|
83
83
|
}
|
|
84
|
+
function createRuntimeToolsExtension(runtime) {
|
|
85
|
+
return {
|
|
86
|
+
name: runtimeToolsExtensionName,
|
|
87
|
+
hidden: true,
|
|
88
|
+
factory: (pi) => {
|
|
89
|
+
for (const tool of createRuntimeCodingTools(runtime))
|
|
90
|
+
pi.registerTool(tool);
|
|
91
|
+
},
|
|
92
|
+
};
|
|
93
|
+
}
|
|
84
94
|
//# sourceMappingURL=session.js.map
|
package/dist/session.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
|