@felan-ai/agent-core 0.4.12 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,58 @@
1
+ export type ExtensionConfigPrimitive = boolean | number | string;
2
+ export interface ExtensionConfigJsonObject {
3
+ readonly [key: string]: ExtensionConfigValue;
4
+ }
5
+ export interface ExtensionConfigJsonArray extends ReadonlyArray<ExtensionConfigValue> {
6
+ }
7
+ export type ExtensionConfigValue = ExtensionConfigPrimitive | null | ExtensionConfigJsonObject | ExtensionConfigJsonArray;
8
+ export interface ExtensionConfigFieldOptions<T> {
9
+ readonly default: T;
10
+ readonly label?: string;
11
+ readonly description: string;
12
+ readonly cliName?: string | false;
13
+ readonly sensitive?: boolean;
14
+ readonly validate?: (value: unknown) => string | undefined;
15
+ }
16
+ export interface ExtensionConfigField<T = unknown> extends ExtensionConfigFieldOptions<T> {
17
+ readonly type: 'boolean' | 'json' | 'number' | 'string';
18
+ readonly values?: readonly T[];
19
+ }
20
+ export type ExtensionConfigFields = Readonly<Record<string, ExtensionConfigField<unknown>>>;
21
+ export interface ExtensionConfigDefinition<TFields extends ExtensionConfigFields = ExtensionConfigFields> {
22
+ readonly id: string;
23
+ readonly title: string;
24
+ readonly fields: TFields;
25
+ }
26
+ export type ExtensionConfigFieldValue<TField> = TField extends ExtensionConfigField<infer TValue> ? TValue : never;
27
+ export type InferExtensionConfig<TDefinition extends ExtensionConfigDefinition> = Readonly<{
28
+ [TKey in keyof TDefinition['fields']]: ExtensionConfigFieldValue<TDefinition['fields'][TKey]>;
29
+ }>;
30
+ export interface ExtensionConfigOverride {
31
+ readonly extensionId: string;
32
+ readonly values: Readonly<Record<string, unknown>>;
33
+ readonly source: string;
34
+ }
35
+ export interface ExtensionConfigCliOption {
36
+ readonly name: string;
37
+ readonly extensionId: string;
38
+ readonly field: string;
39
+ readonly definition: ExtensionConfigDefinition;
40
+ readonly configField: ExtensionConfigField;
41
+ }
42
+ export declare const configField: {
43
+ boolean(options: ExtensionConfigFieldOptions<boolean>): ExtensionConfigField<boolean>;
44
+ number(options: ExtensionConfigFieldOptions<number>): ExtensionConfigField<number>;
45
+ string(options: ExtensionConfigFieldOptions<string>): ExtensionConfigField<string>;
46
+ enum<const TValues extends readonly [string, ...string[]]>(values: TValues, options: ExtensionConfigFieldOptions<TValues[number]>): ExtensionConfigField<TValues[number]>;
47
+ json<const TValue>(options: ExtensionConfigFieldOptions<TValue>): ExtensionConfigField<TValue>;
48
+ };
49
+ export declare function defineExtensionConfig<const TFields extends ExtensionConfigFields>(definition: ExtensionConfigDefinition<TFields>): ExtensionConfigDefinition<TFields>;
50
+ export declare function associateExtensionConfig(extension: Function, definition: ExtensionConfigDefinition): void;
51
+ export declare function getExtensionConfigDefinition(extension: Function): ExtensionConfigDefinition | undefined;
52
+ export declare function configureExtension<TDefinition extends ExtensionConfigDefinition>(definition: TDefinition, values: Partial<InferExtensionConfig<TDefinition>>, source?: string): ExtensionConfigOverride;
53
+ export declare function extensionConfigOverridesFromObject(definitions: readonly ExtensionConfigDefinition[], value: unknown, source: string): ExtensionConfigOverride[];
54
+ export declare function resolveExtensionConfigs(definitions: readonly ExtensionConfigDefinition[], overrides?: readonly ExtensionConfigOverride[]): ReadonlyMap<string, Readonly<Record<string, ExtensionConfigValue>>>;
55
+ export declare function getExtensionConfigCliOptions(definitions: readonly ExtensionConfigDefinition[]): readonly ExtensionConfigCliOption[];
56
+ export declare function parseExtensionConfigCliValue(option: ExtensionConfigCliOption, value: string | boolean): ExtensionConfigValue;
57
+ export declare function validateExtensionConfigValue(definition: ExtensionConfigDefinition, field: string, value: unknown, source: string): ExtensionConfigValue;
58
+ //# sourceMappingURL=extension-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extension-config.d.ts","sourceRoot":"","sources":["../src/extension-config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,289 @@
1
+ const extensionDefinitions = new WeakMap();
2
+ export const configField = {
3
+ boolean(options) {
4
+ return createField('boolean', options);
5
+ },
6
+ number(options) {
7
+ return createField('number', options);
8
+ },
9
+ string(options) {
10
+ return createField('string', options);
11
+ },
12
+ enum(values, options) {
13
+ return createField('string', options, values);
14
+ },
15
+ json(options) {
16
+ return createField('json', options);
17
+ },
18
+ };
19
+ export function defineExtensionConfig(definition) {
20
+ validateDefinition(definition);
21
+ const fields = Object.fromEntries(Object.entries(definition.fields).map(([name, field]) => [
22
+ name,
23
+ Object.freeze({
24
+ ...field,
25
+ default: cloneExtensionConfigValue(field.default),
26
+ ...(field.values === undefined ? {} : { values: Object.freeze([...field.values]) }),
27
+ }),
28
+ ]));
29
+ return Object.freeze({ ...definition, fields: Object.freeze(fields) });
30
+ }
31
+ export function associateExtensionConfig(extension, definition) {
32
+ extensionDefinitions.set(extension, definition);
33
+ }
34
+ export function getExtensionConfigDefinition(extension) {
35
+ return extensionDefinitions.get(extension);
36
+ }
37
+ export function configureExtension(definition, values, source = 'programmatic') {
38
+ return {
39
+ extensionId: definition.id,
40
+ values: { ...values },
41
+ source,
42
+ };
43
+ }
44
+ export function extensionConfigOverridesFromObject(definitions, value, source) {
45
+ if (value === undefined)
46
+ return [];
47
+ if (!isRecord(value))
48
+ throw new Error(`${source} must be an object`);
49
+ const definitionsById = definitionMap(definitions);
50
+ const overrides = [];
51
+ for (const [extensionId, fields] of Object.entries(value)) {
52
+ if (!definitionsById.has(extensionId)) {
53
+ throw new Error(`${source} contains unknown extension: ${extensionId}`);
54
+ }
55
+ if (!isRecord(fields))
56
+ throw new Error(`${source}.${extensionId} must be an object`);
57
+ overrides.push({ extensionId, values: { ...fields }, source: `${source}.${extensionId}` });
58
+ }
59
+ return overrides;
60
+ }
61
+ export function resolveExtensionConfigs(definitions, overrides = []) {
62
+ const definitionsById = definitionMap(definitions);
63
+ const resolved = new Map();
64
+ for (const definition of definitions) {
65
+ const values = {};
66
+ for (const [name, field] of Object.entries(definition.fields)) {
67
+ validateFieldValue(definition, name, field, field.default, `default for ${definition.id}.${name}`);
68
+ values[name] = cloneExtensionConfigValue(field.default);
69
+ }
70
+ resolved.set(definition.id, values);
71
+ }
72
+ for (const override of overrides) {
73
+ const definition = definitionsById.get(override.extensionId);
74
+ if (!definition) {
75
+ throw new Error(`${override.source} configures unknown extension: ${override.extensionId}`);
76
+ }
77
+ if (!isRecord(override.values)) {
78
+ throw new Error(`${override.source} must provide an object for ${override.extensionId}`);
79
+ }
80
+ const values = resolved.get(definition.id);
81
+ for (const [name, value] of Object.entries(override.values)) {
82
+ const field = definition.fields[name];
83
+ if (!field)
84
+ throw new Error(`${override.source} contains unknown field: ${definition.id}.${name}`);
85
+ validateFieldValue(definition, name, field, value, `${override.source}.${name}`);
86
+ values[name] = cloneExtensionConfigValue(value);
87
+ }
88
+ }
89
+ return new Map([...resolved].map(([id, values]) => [id, Object.freeze({ ...values })]));
90
+ }
91
+ export function getExtensionConfigCliOptions(definitions) {
92
+ definitionMap(definitions);
93
+ const seen = new Set();
94
+ const options = [];
95
+ for (const definition of definitions) {
96
+ for (const [field, configField] of Object.entries(definition.fields)) {
97
+ if (configField.cliName === false || configField.sensitive === true)
98
+ continue;
99
+ const name = configField.cliName ?? `${toKebabCase(definition.id)}-${toKebabCase(field)}`;
100
+ if (!/^[a-z][a-z0-9-]*$/u.test(name)) {
101
+ throw new Error(`Invalid CLI name for ${definition.id}.${field}: ${name}`);
102
+ }
103
+ if (seen.has(name))
104
+ throw new Error(`Duplicate extension configuration CLI option: --${name}`);
105
+ seen.add(name);
106
+ options.push({ name, extensionId: definition.id, field, definition, configField });
107
+ }
108
+ }
109
+ return Object.freeze(options);
110
+ }
111
+ export function parseExtensionConfigCliValue(option, value) {
112
+ const { definition, field, configField } = option;
113
+ let parsed;
114
+ if (configField.type === 'boolean') {
115
+ if (typeof value === 'boolean')
116
+ parsed = value;
117
+ else if (value === 'true')
118
+ parsed = true;
119
+ else if (value === 'false')
120
+ parsed = false;
121
+ else
122
+ throw new Error(`--${option.name} must be true or false`);
123
+ }
124
+ else if (configField.type === 'number') {
125
+ if (typeof value !== 'string' || value.trim().length === 0) {
126
+ throw new Error(`--${option.name} requires a number`);
127
+ }
128
+ parsed = Number(value);
129
+ }
130
+ else if (configField.type === 'json') {
131
+ if (typeof value !== 'string')
132
+ throw new Error(`--${option.name} requires JSON`);
133
+ try {
134
+ parsed = JSON.parse(value);
135
+ }
136
+ catch (error) {
137
+ throw new Error(`--${option.name} must be valid JSON: ${errorMessage(error)}`);
138
+ }
139
+ }
140
+ else {
141
+ if (typeof value !== 'string')
142
+ throw new Error(`--${option.name} requires a value`);
143
+ parsed = value;
144
+ }
145
+ validateFieldValue(definition, field, configField, parsed, `--${option.name}`);
146
+ return cloneExtensionConfigValue(parsed);
147
+ }
148
+ export function validateExtensionConfigValue(definition, field, value, source) {
149
+ const configField = definition.fields[field];
150
+ if (!configField)
151
+ throw new Error(`${source} refers to unknown field: ${definition.id}.${field}`);
152
+ validateFieldValue(definition, field, configField, value, source);
153
+ return cloneExtensionConfigValue(value);
154
+ }
155
+ function createField(type, options, values) {
156
+ return Object.freeze({
157
+ type,
158
+ ...options,
159
+ ...(values === undefined ? {} : { values: Object.freeze([...values]) }),
160
+ });
161
+ }
162
+ function validateDefinition(definition) {
163
+ if (!/^[a-z][a-zA-Z0-9-]*$/u.test(definition.id)) {
164
+ throw new Error(`Invalid extension configuration id: ${definition.id}`);
165
+ }
166
+ if (definition.title.trim().length === 0) {
167
+ throw new Error(`Extension configuration ${definition.id} must have a title`);
168
+ }
169
+ const names = Object.keys(definition.fields);
170
+ if (names.length === 0)
171
+ throw new Error(`Extension configuration ${definition.id} must define fields`);
172
+ for (const [name, field] of Object.entries(definition.fields)) {
173
+ if (!/^[a-z][a-zA-Z0-9]*$/u.test(name)) {
174
+ throw new Error(`Invalid extension configuration field: ${definition.id}.${name}`);
175
+ }
176
+ if (field.description.trim().length === 0) {
177
+ throw new Error(`Extension configuration field ${definition.id}.${name} must have a description`);
178
+ }
179
+ if (field.values && field.values.length === 0) {
180
+ throw new Error(`Extension configuration field ${definition.id}.${name} must not have empty values`);
181
+ }
182
+ validateFieldValue(definition, name, field, field.default, `default for ${definition.id}.${name}`);
183
+ }
184
+ }
185
+ function definitionMap(definitions) {
186
+ const result = new Map();
187
+ for (const definition of definitions) {
188
+ validateDefinition(definition);
189
+ if (result.has(definition.id))
190
+ throw new Error(`Duplicate extension configuration id: ${definition.id}`);
191
+ result.set(definition.id, definition);
192
+ }
193
+ return result;
194
+ }
195
+ function validateFieldValue(definition, name, field, value, source) {
196
+ if (field.type === 'json') {
197
+ const issue = jsonValueIssue(value);
198
+ if (issue)
199
+ throw new Error(`${source} must be valid JSON: ${issue}`);
200
+ }
201
+ else if (typeof value !== field.type || (field.type === 'number' && !Number.isFinite(value))) {
202
+ throw new Error(`${source} must be a ${field.type}`);
203
+ }
204
+ if (field.values && !field.values.includes(value)) {
205
+ throw new Error(`${source} must be one of: ${field.values.join(', ')}`);
206
+ }
207
+ const validation = field.validate?.(value);
208
+ if (validation)
209
+ throw new Error(`${source} ${validation}`);
210
+ if (!Object.hasOwn(definition.fields, name)) {
211
+ throw new Error(`${source} refers to unknown field: ${definition.id}.${name}`);
212
+ }
213
+ }
214
+ function cloneExtensionConfigValue(value) {
215
+ if (value === null || typeof value === 'boolean' || typeof value === 'string')
216
+ return value;
217
+ if (typeof value === 'number')
218
+ return value;
219
+ if (Array.isArray(value)) {
220
+ return Object.freeze(value.map((item) => cloneExtensionConfigValue(item)));
221
+ }
222
+ return Object.freeze(Object.fromEntries(Object.entries(value).map(([key, item]) => [
223
+ key,
224
+ cloneExtensionConfigValue(item),
225
+ ])));
226
+ }
227
+ function jsonValueIssue(value) {
228
+ return inspectJsonValue(value, '$', new WeakSet(), 0);
229
+ }
230
+ function inspectJsonValue(value, path, ancestors, depth) {
231
+ if (depth > 100)
232
+ return `${path} exceeds the maximum nesting depth of 100`;
233
+ if (value === null || typeof value === 'boolean' || typeof value === 'string')
234
+ return undefined;
235
+ if (typeof value === 'number')
236
+ return Number.isFinite(value) ? undefined : `${path} is not a finite number`;
237
+ if (typeof value !== 'object')
238
+ return `${path} contains ${typeof value}`;
239
+ if (ancestors.has(value))
240
+ return `${path} contains a circular reference`;
241
+ ancestors.add(value);
242
+ try {
243
+ if (Array.isArray(value)) {
244
+ if (Object.keys(value).length !== value.length)
245
+ return `${path} must be a dense JSON array`;
246
+ if (Object.getOwnPropertySymbols(value).length > 0)
247
+ return `${path} contains symbol properties`;
248
+ for (let index = 0; index < value.length; index += 1) {
249
+ if (!Object.hasOwn(value, index))
250
+ return `${path} must be a dense JSON array`;
251
+ const issue = inspectJsonValue(value[index], `${path}[${index}]`, ancestors, depth + 1);
252
+ if (issue)
253
+ return issue;
254
+ }
255
+ return undefined;
256
+ }
257
+ const prototype = Object.getPrototypeOf(value);
258
+ if (prototype !== Object.prototype && prototype !== null)
259
+ return `${path} must be a plain object`;
260
+ for (const key of Reflect.ownKeys(value)) {
261
+ if (typeof key !== 'string')
262
+ return `${path} contains symbol properties`;
263
+ const descriptor = Object.getOwnPropertyDescriptor(value, key);
264
+ if (!descriptor?.enumerable || !('value' in descriptor)) {
265
+ return `${path}.${key} must be an enumerable data property`;
266
+ }
267
+ const issue = inspectJsonValue(descriptor.value, `${path}.${key}`, ancestors, depth + 1);
268
+ if (issue)
269
+ return issue;
270
+ }
271
+ return undefined;
272
+ }
273
+ finally {
274
+ ancestors.delete(value);
275
+ }
276
+ }
277
+ function errorMessage(error) {
278
+ return error instanceof Error ? error.message : String(error);
279
+ }
280
+ function toKebabCase(value) {
281
+ return value
282
+ .replace(/([a-z0-9])([A-Z])/gu, '$1-$2')
283
+ .replace(/_/gu, '-')
284
+ .toLowerCase();
285
+ }
286
+ function isRecord(value) {
287
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
288
+ }
289
+ //# sourceMappingURL=extension-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extension-config.js","sourceRoot":"","sources":["../src/extension-config.ts"],"names":[],"mappings":"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"}
@@ -2,19 +2,24 @@ import type { ExtensionAPI, InlineExtension } from '@earendil-works/pi-coding-ag
2
2
  import type { AgentRuntime } from './runtime.js';
3
3
  import type { ModelSelectionPersistenceScope } from './model-selection.js';
4
4
  import { type FelanCapability } from './capabilities.js';
5
+ import { type ExtensionConfigDefinition, type ExtensionConfigOverride, type ExtensionConfigValue } from './extension-config.js';
5
6
  export interface FelanModelSelectionOptions {
6
7
  readonly updateDefault?: boolean;
7
8
  }
8
- export interface FelanExtensionAPI extends ExtensionAPI {
9
+ export interface FelanExtensionAPI extends Omit<ExtensionAPI, 'getFlag' | 'registerFlag'> {
9
10
  readonly agentDir: string;
10
11
  readonly runtime: AgentRuntime;
12
+ readonly config: Readonly<Record<string, ExtensionConfigValue>>;
11
13
  registerCapability(capability: FelanCapability): void;
12
14
  setModel(model: Parameters<ExtensionAPI['setModel']>[0], options?: FelanModelSelectionOptions): ReturnType<ExtensionAPI['setModel']>;
13
15
  setThinkingLevel(level: Parameters<ExtensionAPI['setThinkingLevel']>[0], options?: FelanModelSelectionOptions): ReturnType<ExtensionAPI['setThinkingLevel']>;
14
16
  }
15
17
  export type FelanExtension = (pi: FelanExtensionAPI) => void | Promise<void>;
18
+ export interface ConfiguredFelanExtension extends FelanExtension {
19
+ readonly configDefinition?: ExtensionConfigDefinition;
20
+ }
16
21
  export type ExtensionPackageImporter = (packageName: string) => Promise<unknown>;
17
- export declare function bindFelanExtension(packageName: string, extension: FelanExtension, runtime: AgentRuntime, agentDir?: string): InlineExtension;
18
- export declare function loadFelanExtensions(packageNames: readonly string[], importExtension: ExtensionPackageImporter, runtime: AgentRuntime, agentDir?: string): Promise<InlineExtension[]>;
19
- export declare function loadFelanSessionExtensions(packageNames: readonly string[], importExtension: ExtensionPackageImporter, runtime: AgentRuntime, agentDir: string, modelSelectionScope: ModelSelectionPersistenceScope): Promise<InlineExtension[]>;
22
+ export declare function bindFelanExtension(packageName: string, extension: FelanExtension, runtime: AgentRuntime, agentDir?: string, config?: Readonly<Record<string, ExtensionConfigValue>>): InlineExtension;
23
+ export declare function loadFelanExtensions(packageNames: readonly string[], importExtension: ExtensionPackageImporter, runtime: AgentRuntime, agentDir?: string, configOverrides?: readonly ExtensionConfigOverride[]): Promise<InlineExtension[]>;
24
+ export declare function loadFelanSessionExtensions(packageNames: readonly string[], importExtension: ExtensionPackageImporter, runtime: AgentRuntime, agentDir: string, modelSelectionScope: ModelSelectionPersistenceScope, configOverrides?: readonly ExtensionConfigOverride[]): Promise<InlineExtension[]>;
20
25
  //# sourceMappingURL=extensions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../src/extensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EAChB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAGL,KAAK,eAAe,EACrB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,iBAAkB,SAAQ,YAAY;IACrD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,kBAAkB,CAAC,UAAU,EAAE,eAAe,GAAG,IAAI,CAAC;IACtD,QAAQ,CACN,KAAK,EAAE,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAC9C,OAAO,CAAC,EAAE,0BAA0B,GACnC,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC;IACxC,gBAAgB,CACd,KAAK,EAAE,UAAU,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,EACtD,OAAO,CAAC,EAAE,0BAA0B,GACnC,UAAU,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC;CACjD;AAED,MAAM,MAAM,cAAc,GAAG,CAC3B,EAAE,EAAE,iBAAiB,KAClB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B,MAAM,MAAM,wBAAwB,GAAG,CACrC,WAAW,EAAE,MAAM,KAChB,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,cAAc,EACzB,OAAO,EAAE,YAAY,EACrB,QAAQ,GAAE,MAAoB,GAC7B,eAAe,CAUjB;AAuCD,wBAAsB,mBAAmB,CACvC,YAAY,EAAE,SAAS,MAAM,EAAE,EAC/B,eAAe,EAAE,wBAAwB,EACzC,OAAO,EAAE,YAAY,EACrB,QAAQ,GAAE,MAAoB,GAC7B,OAAO,CAAC,eAAe,EAAE,CAAC,CAQ5B;AAED,wBAAsB,0BAA0B,CAC9C,YAAY,EAAE,SAAS,MAAM,EAAE,EAC/B,eAAe,EAAE,wBAAwB,EACzC,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,MAAM,EAChB,mBAAmB,EAAE,8BAA8B,GAClD,OAAO,CAAC,eAAe,EAAE,CAAC,CAQ5B"}
1
+ {"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../src/extensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EAChB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAGL,KAAK,eAAe,EACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EAG1B,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAAC,YAAY,EAAE,SAAS,GAAG,cAAc,CAAC;IACvF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAChE,kBAAkB,CAAC,UAAU,EAAE,eAAe,GAAG,IAAI,CAAC;IACtD,QAAQ,CACN,KAAK,EAAE,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAC9C,OAAO,CAAC,EAAE,0BAA0B,GACnC,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC;IACxC,gBAAgB,CACd,KAAK,EAAE,UAAU,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,EACtD,OAAO,CAAC,EAAE,0BAA0B,GACnC,UAAU,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC;CACjD;AAED,MAAM,MAAM,cAAc,GAAG,CAC3B,EAAE,EAAE,iBAAiB,KAClB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B,MAAM,WAAW,wBAAyB,SAAQ,cAAc;IAC9D,QAAQ,CAAC,gBAAgB,CAAC,EAAE,yBAAyB,CAAC;CACvD;AAED,MAAM,MAAM,wBAAwB,GAAG,CACrC,WAAW,EAAE,MAAM,KAChB,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,cAAc,EACzB,OAAO,EAAE,YAAY,EACrB,QAAQ,GAAE,MAAoB,EAC9B,MAAM,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAM,GAC1D,eAAe,CAWjB;AAyCD,wBAAsB,mBAAmB,CACvC,YAAY,EAAE,SAAS,MAAM,EAAE,EAC/B,eAAe,EAAE,wBAAwB,EACzC,OAAO,EAAE,YAAY,EACrB,QAAQ,GAAE,MAAoB,EAC9B,eAAe,GAAE,SAAS,uBAAuB,EAAO,GACvD,OAAO,CAAC,eAAe,EAAE,CAAC,CAS5B;AAED,wBAAsB,0BAA0B,CAC9C,YAAY,EAAE,SAAS,MAAM,EAAE,EAC/B,eAAe,EAAE,wBAAwB,EACzC,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,MAAM,EAChB,mBAAmB,EAAE,8BAA8B,EACnD,eAAe,GAAE,SAAS,uBAAuB,EAAO,GACvD,OAAO,CAAC,eAAe,EAAE,CAAC,CAS5B"}
@@ -1,8 +1,9 @@
1
1
  import { associateCapabilityCollector, CapabilityCollector, } from './capabilities.js';
2
- export function bindFelanExtension(packageName, extension, runtime, agentDir = runtime.cwd) {
3
- return bindFelanExtensionWithCapabilities(packageName, extension, runtime, agentDir, new CapabilityCollector(), true, undefined);
2
+ import { getExtensionConfigDefinition, resolveExtensionConfigs, } from './extension-config.js';
3
+ export function bindFelanExtension(packageName, extension, runtime, agentDir = runtime.cwd, config = {}) {
4
+ return bindFelanExtensionWithCapabilities(packageName, extension, runtime, agentDir, new CapabilityCollector(), true, undefined, config);
4
5
  }
5
- function bindFelanExtensionWithCapabilities(packageName, extension, runtime, agentDir, capabilityCollector, resetCapabilities, modelSelectionScope) {
6
+ function bindFelanExtensionWithCapabilities(packageName, extension, runtime, agentDir, capabilityCollector, resetCapabilities, modelSelectionScope, config) {
6
7
  const inline = {
7
8
  name: packageName,
8
9
  factory: async (pi) => {
@@ -16,7 +17,7 @@ function bindFelanExtensionWithCapabilities(packageName, extension, runtime, age
16
17
  capabilityCollector.register(packageName, capability);
17
18
  };
18
19
  try {
19
- await extension(createFelanExtensionAPI(pi, runtime, agentDir, registerCapability, modelSelectionScope));
20
+ await extension(createFelanExtensionAPI(pi, runtime, agentDir, registerCapability, modelSelectionScope, config));
20
21
  }
21
22
  finally {
22
23
  initializing = false;
@@ -26,13 +27,13 @@ function bindFelanExtensionWithCapabilities(packageName, extension, runtime, age
26
27
  associateCapabilityCollector(inline, capabilityCollector);
27
28
  return inline;
28
29
  }
29
- export async function loadFelanExtensions(packageNames, importExtension, runtime, agentDir = runtime.cwd) {
30
- return loadFelanExtensionsWithScope(packageNames, importExtension, runtime, agentDir, undefined);
30
+ export async function loadFelanExtensions(packageNames, importExtension, runtime, agentDir = runtime.cwd, configOverrides = []) {
31
+ return loadFelanExtensionsWithScope(packageNames, importExtension, runtime, agentDir, undefined, configOverrides);
31
32
  }
32
- export async function loadFelanSessionExtensions(packageNames, importExtension, runtime, agentDir, modelSelectionScope) {
33
- return loadFelanExtensionsWithScope(packageNames, importExtension, runtime, agentDir, modelSelectionScope);
33
+ export async function loadFelanSessionExtensions(packageNames, importExtension, runtime, agentDir, modelSelectionScope, configOverrides = []) {
34
+ return loadFelanExtensionsWithScope(packageNames, importExtension, runtime, agentDir, modelSelectionScope, configOverrides);
34
35
  }
35
- async function loadFelanExtensionsWithScope(packageNames, importExtension, runtime, agentDir, modelSelectionScope) {
36
+ async function loadFelanExtensionsWithScope(packageNames, importExtension, runtime, agentDir, modelSelectionScope, configOverrides) {
36
37
  const seen = new Set();
37
38
  const extensions = [];
38
39
  const capabilityCollector = new CapabilityCollector();
@@ -62,11 +63,16 @@ async function loadFelanExtensionsWithScope(packageNames, importExtension, runti
62
63
  if (typeof defaultExport !== 'function') {
63
64
  throw new Error(`${packageName} must default-export a Felan extension`);
64
65
  }
65
- extensions.push(bindFelanExtensionWithCapabilities(packageName, defaultExport, runtime, agentDir, capabilityCollector, extensions.length === 0, modelSelectionScope));
66
+ const configuredExtension = defaultExport;
67
+ const definition = getExtensionConfigDefinition(configuredExtension);
68
+ const config = definition === undefined
69
+ ? {}
70
+ : resolveExtensionConfigs([definition], configOverrides.filter(({ extensionId }) => extensionId === definition.id)).get(definition.id);
71
+ extensions.push(bindFelanExtensionWithCapabilities(packageName, defaultExport, runtime, agentDir, capabilityCollector, extensions.length === 0, modelSelectionScope, config));
66
72
  }
67
73
  return extensions;
68
74
  }
69
- function createFelanExtensionAPI(pi, runtime, agentDir, registerCapability, modelSelectionScope) {
75
+ function createFelanExtensionAPI(pi, runtime, agentDir, registerCapability, modelSelectionScope, config) {
70
76
  const boundMethods = new Map();
71
77
  return new Proxy(pi, {
72
78
  get(target, property) {
@@ -74,6 +80,8 @@ function createFelanExtensionAPI(pi, runtime, agentDir, registerCapability, mode
74
80
  return agentDir;
75
81
  if (property === 'runtime')
76
82
  return runtime;
83
+ if (property === 'config')
84
+ return config;
77
85
  if (property === 'registerCapability') {
78
86
  return registerCapability;
79
87
  }
@@ -1 +1 @@
1
- {"version":3,"file":"extensions.js","sourceRoot":"","sources":["../src/extensions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extensions.js","sourceRoot":"","sources":["../src/extensions.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -7,6 +7,8 @@ export type { FelanThinkingLevel } from './thinking.js';
7
7
  export { HostAgentRuntime } from './host-agent-runtime.js';
8
8
  export type { HostAgentRuntimeOptions, HostShellOptions } from './host-agent-runtime.js';
9
9
  export { bindFelanExtension, loadFelanExtensions, } from './extensions.js';
10
+ export { associateExtensionConfig, configField, configureExtension, defineExtensionConfig, extensionConfigOverridesFromObject, getExtensionConfigCliOptions, getExtensionConfigDefinition, parseExtensionConfigCliValue, resolveExtensionConfigs, validateExtensionConfigValue, } from './extension-config.js';
11
+ export type { ExtensionConfigCliOption, ExtensionConfigDefinition, ExtensionConfigField, ExtensionConfigFieldOptions, ExtensionConfigFields, ExtensionConfigOverride, ExtensionConfigPrimitive, ExtensionConfigValue, ExtensionConfigJsonObject, ExtensionConfigJsonArray, InferExtensionConfig, } from './extension-config.js';
10
12
  export { formatCapabilitiesSection } from './capabilities.js';
11
13
  export type { FelanCapability, RegisteredFelanCapability } from './capabilities.js';
12
14
  export { FELAN_BASE_SYSTEM_PROMPT } from './system-prompt.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -3,6 +3,7 @@ export { MODEL_TIERS, formatModelReference, getModelFamily, getModelStrength, is
3
3
  export { FELAN_THINKING_LEVELS, isFelanThinkingLevel } from './thinking.js';
4
4
  export { HostAgentRuntime } from './host-agent-runtime.js';
5
5
  export { bindFelanExtension, loadFelanExtensions, } from './extensions.js';
6
+ export { associateExtensionConfig, configField, configureExtension, defineExtensionConfig, extensionConfigOverridesFromObject, getExtensionConfigCliOptions, getExtensionConfigDefinition, parseExtensionConfigCliValue, resolveExtensionConfigs, validateExtensionConfigValue, } from './extension-config.js';
6
7
  export { formatCapabilitiesSection } from './capabilities.js';
7
8
  export { FELAN_BASE_SYSTEM_PROMPT } from './system-prompt.js';
8
9
  export { createAgentCoreResourceLoader } from './resource-loader.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EACL,WAAW,EACX,oBAAoB,EACpB,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAO1B,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAE5E,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;AAO9D,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAErE,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAEtD,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,EACjB,WAAW,EACX,qBAAqB,GACtB,MAAM,iCAAiC,CAAC;AAwBzC,OAAO,EACL,uBAAuB,EACvB,UAAU,EACV,kBAAkB,EAClB,iCAAiC,EACjC,0BAA0B,EAC1B,iBAAiB,EACjB,UAAU,EACV,MAAM,GACP,MAAM,uBAAuB,CAAC;AAe/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EACL,WAAW,EACX,oBAAoB,EACpB,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAO1B,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAE5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EACL,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,wBAAwB,EACxB,WAAW,EACX,kBAAkB,EAClB,qBAAqB,EACrB,kCAAkC,EAClC,4BAA4B,EAC5B,4BAA4B,EAC5B,4BAA4B,EAC5B,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,uBAAuB,CAAC;AAc/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAO9D,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAErE,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAEtD,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,EACjB,WAAW,EACX,qBAAqB,GACtB,MAAM,iCAAiC,CAAC;AAwBzC,OAAO,EACL,uBAAuB,EACvB,UAAU,EACV,kBAAkB,EAClB,iCAAiC,EACjC,0BAA0B,EAC1B,iBAAiB,EACjB,UAAU,EACV,MAAM,GACP,MAAM,uBAAuB,CAAC;AAe/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC"}
@@ -4,7 +4,6 @@ export interface CreateAgentCoreResourceLoaderOptions {
4
4
  readonly cwd: string;
5
5
  readonly agentDir: string;
6
6
  readonly extensionFactories: readonly InlineExtension[];
7
- readonly extensionFlagValues?: ReadonlyMap<string, boolean | string>;
8
7
  readonly skillPaths?: readonly string[];
9
8
  readonly skills?: readonly Skill[];
10
9
  readonly appendSystemPrompt?: readonly 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,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"}
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,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,CAyDzB"}
@@ -58,27 +58,6 @@ export async function createAgentCoreResourceLoaderWithContextFiles(options) {
58
58
  const first = extensionsResult.errors[0];
59
59
  throw new Error(`${first.path}: ${first.error}`);
60
60
  }
61
- applyExtensionFlagValues(loader, options.extensionFlagValues);
62
61
  return loader;
63
62
  }
64
- function applyExtensionFlagValues(loader, values) {
65
- if (!values)
66
- return;
67
- const extensionsResult = loader.getExtensions();
68
- const registeredFlags = new Map();
69
- for (const extension of extensionsResult.extensions) {
70
- for (const [name, flag] of extension.flags) {
71
- registeredFlags.set(name, flag.type);
72
- }
73
- }
74
- for (const [name, value] of values) {
75
- const type = registeredFlags.get(name);
76
- if (!type)
77
- throw new Error(`Unknown extension flag: ${name}`);
78
- if (type !== typeof value) {
79
- throw new Error(`Extension flag ${name} requires a ${type} value`);
80
- }
81
- extensionsResult.runtime.flagValues.set(name, value);
82
- }
83
- }
84
63
  //# sourceMappingURL=resource-loader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resource-loader.js","sourceRoot":"","sources":["../src/resource-loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resource-loader.js","sourceRoot":"","sources":["../src/resource-loader.ts"],"names":[],"mappings":"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"}
package/dist/session.d.ts CHANGED
@@ -1,13 +1,14 @@
1
1
  import { type AgentSession, type CreateAgentSessionOptions, type CreateAgentSessionResult, type CreateAgentSessionRuntimeFactory, type CreateAgentSessionRuntimeResult, type InlineExtension, type ModelRuntime, type SessionManager, type SessionStartEvent, type SettingsManager, type Skill, type ToolDefinition } from '@earendil-works/pi-coding-agent';
2
2
  import { type ExtensionPackageImporter } from './extensions.js';
3
3
  import type { AgentRuntime } from './runtime.js';
4
+ import type { ExtensionConfigOverride } from './extension-config.js';
4
5
  export type StreamFunction = AgentSession['agent']['streamFunction'];
5
6
  export interface CreateAgentCoreSessionOptions {
6
7
  readonly runtime: AgentRuntime;
7
8
  readonly wrapStreamFunction?: (original: StreamFunction) => StreamFunction;
8
9
  readonly extensionPackages: readonly string[];
9
10
  readonly importExtension: ExtensionPackageImporter;
10
- readonly extensionFlagValues?: ReadonlyMap<string, boolean | string>;
11
+ readonly extensionConfigOverrides?: readonly ExtensionConfigOverride[];
11
12
  readonly modelRuntime: ModelRuntime;
12
13
  readonly settingsManager: SettingsManager;
13
14
  readonly sessionManager: SessionManager;
@@ -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,EAA8B,KAAK,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAM5F,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"}
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,EAA8B,KAAK,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAM5F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAErE,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,wBAAwB,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAC;IACvE,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
@@ -30,7 +30,7 @@ export function createAgentCoreSessionRuntimeFactory(createOptions) {
30
30
  async function composeAgentCoreSession(options) {
31
31
  const agentDir = options.agentDir ?? options.runtime.cwd;
32
32
  const modelSelectionScope = installModelSelectionPersistenceScope(options.settingsManager);
33
- const featureExtensions = await loadFelanSessionExtensions(options.extensionPackages, options.importExtension, options.runtime, agentDir, modelSelectionScope);
33
+ const featureExtensions = await loadFelanSessionExtensions(options.extensionPackages, options.importExtension, options.runtime, agentDir, modelSelectionScope, options.extensionConfigOverrides);
34
34
  const extensionFactories = [
35
35
  ...featureExtensions,
36
36
  ...(options.inlineExtensions ?? []),
@@ -41,9 +41,6 @@ async function composeAgentCoreSession(options) {
41
41
  cwd: options.runtime.cwd,
42
42
  agentDir,
43
43
  extensionFactories,
44
- ...(options.extensionFlagValues === undefined
45
- ? {}
46
- : { extensionFlagValues: options.extensionFlagValues }),
47
44
  ...(options.skillPaths === undefined ? {} : { skillPaths: options.skillPaths }),
48
45
  ...(options.skills === undefined ? {} : { skills: options.skills }),
49
46
  ...(projectInstructions === undefined ? {} : { contextFiles: [projectInstructions] }),
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
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.12",
3
+ "version": "0.5.0",
4
4
  "description": "Portable Felan agent contracts and composition",
5
5
  "license": "MIT",
6
6
  "type": "module",