@felan-ai/agent-core 0.4.4 → 0.4.6
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/NOTICE +2 -2
- package/README.md +11 -4
- package/dist/resource-loader.d.ts +8 -0
- package/dist/resource-loader.d.ts.map +1 -1
- package/dist/resource-loader.js +7 -0
- package/dist/resource-loader.js.map +1 -1
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +22 -2
- package/dist/session.js.map +1 -1
- package/package.json +3 -3
package/NOTICE
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
Copyright (c) 2026 Felan contributors
|
|
4
4
|
|
|
5
|
-
This package uses @earendil-works/pi-ai 0.84.
|
|
6
|
-
@earendil-works/pi-coding-agent 0.84.
|
|
5
|
+
This package uses @earendil-works/pi-ai 0.84.1 and
|
|
6
|
+
@earendil-works/pi-coding-agent 0.84.1 from
|
|
7
7
|
https://github.com/earendil-works/pi, licensed under the MIT License.
|
|
8
8
|
Copyright (c) 2025 Mario Zechner.
|
|
9
9
|
|
package/README.md
CHANGED
|
@@ -48,7 +48,7 @@ Host mode runs with the current user's filesystem and process permissions. It
|
|
|
48
48
|
does not provide OS isolation or a sandbox boundary. Run untrusted workloads in
|
|
49
49
|
an isolated runtime instead.
|
|
50
50
|
|
|
51
|
-
The package also composes Pi 0.84.
|
|
51
|
+
The package also composes Pi 0.84.1 sessions with inline-only Felan extensions
|
|
52
52
|
and runtime-backed coding tools. `createAgentCoreSession` returns a headless,
|
|
53
53
|
inactive session, while `createAgentCoreSessionRuntimeFactory` provides the
|
|
54
54
|
typed seam used with Pi's `createAgentSessionRuntime`. Applications retain
|
|
@@ -99,7 +99,12 @@ scale. Agent Core does not load model-tier configuration or resolve credentials.
|
|
|
99
99
|
|
|
100
100
|
Agent Core owns the runtime-neutral Felan base system prompt. Every composed
|
|
101
101
|
session uses this prompt; consumers extend it with `appendSystemPrompt` and
|
|
102
|
-
cannot replace it.
|
|
102
|
+
cannot replace it. During composition, Agent Core also reads at most one
|
|
103
|
+
instruction file from the session cwd through `AgentRuntime`, with `AGENTS.md`
|
|
104
|
+
taking precedence over `CLAUDE.md`. Missing, unreadable, and blank instruction
|
|
105
|
+
files are nonfatal. The selected file is supplied through Pi's context-file
|
|
106
|
+
interface, which renders it as path-labeled project instructions rather than a
|
|
107
|
+
consumer prompt append. Inline extensions can contribute model-facing behavior
|
|
103
108
|
during initialization:
|
|
104
109
|
|
|
105
110
|
```ts
|
|
@@ -115,7 +120,8 @@ Capability IDs and instructions are validated, duplicate IDs report both
|
|
|
115
120
|
extension sources, and contributions retain extension load and registration
|
|
116
121
|
order across resource reloads. Agent Core renders enabled capabilities as one
|
|
117
122
|
section after the base prompt. Consumer appends follow that section, then Pi
|
|
118
|
-
adds explicit skills and the current working
|
|
123
|
+
adds cwd project instructions, explicit skills, and the current working
|
|
124
|
+
directory.
|
|
119
125
|
|
|
120
126
|
Tool definitions sent with the model request remain the authoritative tool
|
|
121
127
|
inventory. The Felan-owned prompt intentionally does not render Pi's default
|
|
@@ -125,7 +131,8 @@ capabilities for multi-tool workflow guidance.
|
|
|
125
131
|
Applications may pass explicit `skills` or `skillPaths` into session
|
|
126
132
|
composition. Agent Core exposes only those resources while ambient project,
|
|
127
133
|
user, and package skill discovery remains disabled. Ambient system prompt,
|
|
128
|
-
append prompt, and context discovery are also disabled
|
|
134
|
+
append prompt, and context discovery are also disabled; the selected cwd
|
|
135
|
+
instruction file is the only built-in project-context input.
|
|
129
136
|
|
|
130
137
|
## Development
|
|
131
138
|
|
|
@@ -9,5 +9,13 @@ export interface CreateAgentCoreResourceLoaderOptions {
|
|
|
9
9
|
readonly skills?: readonly Skill[];
|
|
10
10
|
readonly appendSystemPrompt?: readonly string[];
|
|
11
11
|
}
|
|
12
|
+
interface CreateAgentCoreResourceLoaderInternalOptions extends CreateAgentCoreResourceLoaderOptions {
|
|
13
|
+
readonly contextFiles?: readonly {
|
|
14
|
+
readonly path: string;
|
|
15
|
+
readonly content: string;
|
|
16
|
+
}[];
|
|
17
|
+
}
|
|
12
18
|
export declare function createAgentCoreResourceLoader(options: CreateAgentCoreResourceLoaderOptions): Promise<ResourceLoader>;
|
|
19
|
+
export declare function createAgentCoreResourceLoaderWithContextFiles(options: CreateAgentCoreResourceLoaderInternalOptions): Promise<ResourceLoader>;
|
|
20
|
+
export {};
|
|
13
21
|
//# sourceMappingURL=resource-loader.d.ts.map
|
|
@@ -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,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,
|
|
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,UAAU,4CAA6C,SAAQ,oCAAoC;IACjG,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS;QAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;KAC1B,EAAE,CAAC;CACL;AAED,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,oCAAoC,GAC5C,OAAO,CAAC,cAAc,CAAC,CAEzB;AAED,wBAAsB,6CAA6C,CACjE,OAAO,EAAE,4CAA4C,GACpD,OAAO,CAAC,cAAc,CAAC,CA0DzB"}
|
package/dist/resource-loader.js
CHANGED
|
@@ -4,7 +4,11 @@ import { FELAN_BASE_SYSTEM_PROMPT } from './system-prompt.js';
|
|
|
4
4
|
export const runtimeToolsExtensionName = '@felan-ai/agent-core/runtime-tools';
|
|
5
5
|
const runtimeToolsExtensionPath = `<inline:${runtimeToolsExtensionName}>`;
|
|
6
6
|
export async function createAgentCoreResourceLoader(options) {
|
|
7
|
+
return createAgentCoreResourceLoaderWithContextFiles(options);
|
|
8
|
+
}
|
|
9
|
+
export async function createAgentCoreResourceLoaderWithContextFiles(options) {
|
|
7
10
|
const skills = options.skills === undefined ? undefined : [...options.skills];
|
|
11
|
+
const contextFiles = (options.contextFiles ?? []).map((file) => ({ ...file }));
|
|
8
12
|
const consumerAppends = (options.appendSystemPrompt ?? []).filter((prompt) => prompt.trim().length > 0);
|
|
9
13
|
const resourceSettings = SettingsManager.inMemory({
|
|
10
14
|
packages: [],
|
|
@@ -37,6 +41,9 @@ export async function createAgentCoreResourceLoader(options) {
|
|
|
37
41
|
diagnostics: [],
|
|
38
42
|
}),
|
|
39
43
|
}),
|
|
44
|
+
agentsFilesOverride: () => ({
|
|
45
|
+
agentsFiles: contextFiles,
|
|
46
|
+
}),
|
|
40
47
|
systemPromptOverride: () => FELAN_BASE_SYSTEM_PROMPT,
|
|
41
48
|
appendSystemPromptOverride: () => {
|
|
42
49
|
const capabilities = formatCapabilitiesSection(collectCapabilities(options.extensionFactories));
|
|
@@ -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;AAE9D,MAAM,CAAC,MAAM,yBAAyB,GAAG,oCAAoC,CAAC;AAC9E,MAAM,yBAAyB,GAAG,WAAW,yBAAyB,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"resource-loader.js","sourceRoot":"","sources":["../src/resource-loader.ts"],"names":[],"mappings":"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"}
|
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,EACpC,KAAK,eAAe,EACpB,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;
|
|
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,EACpC,KAAK,eAAe,EACpB,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;AAIrE,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,gBAAgB,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;IACvD,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,7 +1,9 @@
|
|
|
1
1
|
import { createAgentSession, } from '@earendil-works/pi-coding-agent';
|
|
2
2
|
import { loadFelanExtensions } from './extensions.js';
|
|
3
|
-
import {
|
|
3
|
+
import { createAgentCoreResourceLoaderWithContextFiles, runtimeToolsExtensionName, } from './resource-loader.js';
|
|
4
4
|
import { createRuntimeCodingTools } from './tools.js';
|
|
5
|
+
const PROJECT_INSTRUCTION_FILENAMES = ['AGENTS.md', 'CLAUDE.md'];
|
|
6
|
+
const decoder = new TextDecoder();
|
|
5
7
|
export async function createAgentCoreSession(options) {
|
|
6
8
|
const composition = await composeAgentCoreSession(options);
|
|
7
9
|
return composition.result;
|
|
@@ -32,7 +34,8 @@ async function composeAgentCoreSession(options) {
|
|
|
32
34
|
...(options.inlineExtensions ?? []),
|
|
33
35
|
createRuntimeToolsExtension(options.runtime),
|
|
34
36
|
];
|
|
35
|
-
const
|
|
37
|
+
const projectInstructions = await loadProjectInstructions(options.runtime);
|
|
38
|
+
const resourceLoader = await createAgentCoreResourceLoaderWithContextFiles({
|
|
36
39
|
cwd: options.runtime.cwd,
|
|
37
40
|
agentDir,
|
|
38
41
|
extensionFactories,
|
|
@@ -41,6 +44,7 @@ async function composeAgentCoreSession(options) {
|
|
|
41
44
|
: { extensionFlagValues: options.extensionFlagValues }),
|
|
42
45
|
...(options.skillPaths === undefined ? {} : { skillPaths: options.skillPaths }),
|
|
43
46
|
...(options.skills === undefined ? {} : { skills: options.skills }),
|
|
47
|
+
...(projectInstructions === undefined ? {} : { contextFiles: [projectInstructions] }),
|
|
44
48
|
...(options.appendSystemPrompt === undefined
|
|
45
49
|
? {}
|
|
46
50
|
: { appendSystemPrompt: options.appendSystemPrompt }),
|
|
@@ -82,6 +86,22 @@ async function composeAgentCoreSession(options) {
|
|
|
82
86
|
},
|
|
83
87
|
};
|
|
84
88
|
}
|
|
89
|
+
async function loadProjectInstructions(runtime) {
|
|
90
|
+
for (const filename of PROJECT_INSTRUCTION_FILENAMES) {
|
|
91
|
+
try {
|
|
92
|
+
const content = decoder.decode(await runtime.readFile(filename));
|
|
93
|
+
if (content.trim().length === 0)
|
|
94
|
+
return undefined;
|
|
95
|
+
return {
|
|
96
|
+
path: `${runtime.cwd.replace(/\\/g, '/').replace(/\/+$/, '')}/${filename}`,
|
|
97
|
+
content,
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
catch {
|
|
101
|
+
continue;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
85
105
|
function createRuntimeToolsExtension(runtime) {
|
|
86
106
|
return {
|
|
87
107
|
name: runtimeToolsExtensionName,
|
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,GAcnB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAiC,MAAM,iBAAiB,CAAC;AACrF,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@felan-ai/agent-core",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.6",
|
|
4
4
|
"description": "Portable Felan agent contracts and composition",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
}
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@earendil-works/pi-ai": "0.84.
|
|
29
|
-
"@earendil-works/pi-coding-agent": "0.84.
|
|
28
|
+
"@earendil-works/pi-ai": "0.84.1",
|
|
29
|
+
"@earendil-works/pi-coding-agent": "0.84.1",
|
|
30
30
|
"@lydell/node-pty": "1.2.0-beta.14"
|
|
31
31
|
},
|
|
32
32
|
"publishConfig": {
|