@felan-ai/felan 0.1.0 → 0.2.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.
package/README.md CHANGED
@@ -8,9 +8,16 @@ npx @felan-ai/felan
8
8
  ```
9
9
 
10
10
  The package exposes the `felan` binary. It stores model credentials, settings,
11
- and sessions under `~/.felan/agent` by default; set `FELAN_AGENT_DIR` to select
12
- another local directory. Use `/login` inside the TUI to configure provider-owned
13
- model credentials without a Felan account.
11
+ sessions, agents, and runtime state under `~/.felan` by default; set
12
+ `FELAN_AGENT_DIR` to select another directory. Use `/login` inside the TUI to
13
+ configure provider-owned model credentials without a Felan account. Felan reads
14
+ global settings from `~/.felan/settings.json` and does not load Pi project
15
+ settings. Pi project trust does not apply to Felan's fixed resource policy, so
16
+ Felan starts without a project trust prompt.
17
+
18
+ Felan suppresses Pi's version notification, bundled changelog, package update
19
+ notifications, and install/update telemetry. Update behavior is owned by the
20
+ Felan application.
14
21
 
15
22
  Each session uses a cwd-bound `HostAgentRuntime`. Pi's session runtime recreates
16
23
  the host runtime, filtered settings, resources, and session composition for
@@ -18,11 +25,43 @@ new, resume, fork, clone, and import flows, then rebinds the active interactive
18
25
  UI. Host mode uses the current user's filesystem and process permissions and is
19
26
  not an isolation boundary.
20
27
 
21
- Only the source-controlled Felan extension package list is imported. Ambient Pi
22
- packages, extensions, skills, prompts, themes, and context files remain filtered;
23
- inline Felan extensions can still provide shared tools, prompts, interaction,
24
- and subagent behavior. The application explicitly configures
25
- `@felan-ai/ext-subagents` with its session-bound local host; the extension provides `Agent`, `list_subagents`,
28
+ Only source-controlled built-in Felan extensions can be imported. External
29
+ packages, extensions, configured skill paths, prompts, themes, and Pi context
30
+ files remain filtered. Agent Skills are loaded from `~/.agents/skills` and
31
+ `<workspace>/.agents/skills` and are shared with local subagents.
32
+ The built-in powerline reads `~/.felan/powerline.json` (or
33
+ `$FELAN_AGENT_DIR/powerline.json`) once when it initializes.
34
+
35
+ All built-in extensions are enabled by default. Toggle them in
36
+ `~/.felan/settings.json`:
37
+
38
+ ```json
39
+ {
40
+ "builtinExtensions": {
41
+ "subagents": true,
42
+ "prewalk": true,
43
+ "context": true,
44
+ "powerline": false
45
+ }
46
+ }
47
+ ```
48
+
49
+ ## System prompt append
50
+
51
+ The TUI reads one optional `$FELAN_AGENT_DIR/APPEND_SYSTEM.md` file when each
52
+ session is constructed (`~/.felan/APPEND_SYSTEM.md` by default). Missing and
53
+ blank files add nothing; other read failures stop session construction with the
54
+ filesystem error. The file extends Agent Core's Felan prompt after enabled
55
+ extension capabilities. Child persona instructions follow this application
56
+ append. Explicit Agent Skills and the current working directory are added last.
57
+
58
+ System prompt inputs are limited to Agent Core, enabled capabilities, the
59
+ single application append above, explicit Agent Skills, and the current working
60
+ directory. Pi `SYSTEM.md`, project `APPEND_SYSTEM.md`, and project
61
+ prompt/context files stay outside local composition.
62
+
63
+ When enabled, `@felan-ai/ext-subagents` uses the session-bound local host and
64
+ provides `Agent`, `list_subagents`,
26
65
  `get_subagent_result`, `steer_subagent`, and `cancel_subagent`. A root-scoped
27
66
  local host tracks foreground and background runs, persists the latest child session
28
67
  metadata, delivers completion notices, supports bounded nesting, and uses the
@@ -34,7 +73,8 @@ includes `@felan-ai/ext-powerline` for an ANSI-aware footer; it is a direct TUI
34
73
  dependency and is not part of cloud composition.
35
74
 
36
75
  Local agent definitions are loaded only from bundled Felan definitions,
37
- `$FELAN_AGENT_DIR/agents/*.md`, and `<workspace>/.felan/agents/*.md`, with
76
+ `~/.felan/agents/*.md` (or `$FELAN_AGENT_DIR/agents/*.md`), and
77
+ `<workspace>/.felan/agents/*.md`, with
38
78
  project definitions taking precedence. Pi ambient agent discovery remains
39
79
  disabled. Local subagent concurrency defaults to four and depth defaults to
40
80
  three; set `felanSubagents.concurrency` and `felanSubagents.maxDepth` in the
@@ -1 +1 @@
1
- {"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,8BAA8B,EACpC,MAAM,cAAc,CAAC;AAGtB,MAAM,WAAW,oBAAqB,SAAQ,8BAA8B;IAC1E,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAsB,aAAa,CAAC,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BrF"}
1
+ {"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,8BAA8B,EACpC,MAAM,cAAc,CAAC;AAGtB,MAAM,WAAW,oBAAqB,SAAQ,8BAA8B;IAC1E,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAsB,aAAa,CAAC,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4CrF"}
@@ -4,7 +4,11 @@ import { attachLocalSubagentPresenter } from './subagents/presenter.js';
4
4
  export async function runLocalFelan(options = {}) {
5
5
  const runtime = await createLocalFelanRuntime(options);
6
6
  const previousPiAgentDir = process.env.PI_CODING_AGENT_DIR;
7
+ const previousPiSkipVersionCheck = process.env.PI_SKIP_VERSION_CHECK;
8
+ const previousPiTelemetry = process.env.PI_TELEMETRY;
7
9
  process.env.PI_CODING_AGENT_DIR = runtime.services.agentDir;
10
+ process.env.PI_SKIP_VERSION_CHECK = '1';
11
+ process.env.PI_TELEMETRY = '0';
8
12
  try {
9
13
  const mode = new InteractiveMode(runtime, {
10
14
  ...(options.initialMessage === undefined ? {} : { initialMessage: options.initialMessage }),
@@ -29,6 +33,18 @@ export async function runLocalFelan(options = {}) {
29
33
  else {
30
34
  process.env.PI_CODING_AGENT_DIR = previousPiAgentDir;
31
35
  }
36
+ if (previousPiSkipVersionCheck === undefined) {
37
+ delete process.env.PI_SKIP_VERSION_CHECK;
38
+ }
39
+ else {
40
+ process.env.PI_SKIP_VERSION_CHECK = previousPiSkipVersionCheck;
41
+ }
42
+ if (previousPiTelemetry === undefined) {
43
+ delete process.env.PI_TELEMETRY;
44
+ }
45
+ else {
46
+ process.env.PI_TELEMETRY = previousPiTelemetry;
47
+ }
32
48
  }
33
49
  }
34
50
  }
@@ -1 +1 @@
1
- {"version":3,"file":"application.js","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EACL,uBAAuB,GAExB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AAOxE,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,UAAgC,EAAE;IACpE,MAAM,OAAO,GAAG,MAAM,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACvD,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAE5D,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,eAAe,CAAC,OAAO,EAAE;YACxC,GAAG,CAAC,OAAO,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC;YAC3F,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;SACvE,CAAC,CAAC;QACH,MAAM,eAAe,GAAG,4BAA4B,CAClD,OAAO,EACP,IAAqE,CACtE,CAAC;QACF,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;QACnB,CAAC;gBAAS,CAAC;YACT,eAAe,EAAE,CAAC;QACpB,CAAC;IACH,CAAC;YAAS,CAAC;QACT,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1B,CAAC;gBAAS,CAAC;YACT,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;gBACrC,OAAO,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,kBAAkB,CAAC;YACvD,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"application.js","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EACL,uBAAuB,GAExB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AAOxE,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,UAAgC,EAAE;IACpE,MAAM,OAAO,GAAG,MAAM,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACvD,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAC3D,MAAM,0BAA0B,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;IACrE,MAAM,mBAAmB,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IACrD,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAC5D,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,GAAG,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC;IAE/B,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,eAAe,CAAC,OAAO,EAAE;YACxC,GAAG,CAAC,OAAO,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC;YAC3F,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;SACvE,CAAC,CAAC;QACH,MAAM,eAAe,GAAG,4BAA4B,CAClD,OAAO,EACP,IAAqE,CACtE,CAAC;QACF,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;QACnB,CAAC;gBAAS,CAAC;YACT,eAAe,EAAE,CAAC;QACpB,CAAC;IACH,CAAC;YAAS,CAAC;QACT,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1B,CAAC;gBAAS,CAAC;YACT,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;gBACrC,OAAO,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,kBAAkB,CAAC;YACvD,CAAC;YACD,IAAI,0BAA0B,KAAK,SAAS,EAAE,CAAC;gBAC7C,OAAO,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,0BAA0B,CAAC;YACjE,CAAC;YACD,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;gBACtC,OAAO,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;YAClC,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,mBAAmB,CAAC;YACjD,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1,7 +1,16 @@
1
1
  import type { ExtensionPackageImporter } from '@felan-ai/agent-core';
2
2
  import { type SubagentHost } from '@felan-ai/ext-subagents';
3
3
  export declare const subagentsExtensionPackage = "@felan-ai/ext-subagents";
4
- export declare const localExtensionPackages: readonly ["@felan-ai/ext-subagents", "@felan-ai/ext-prewalk", "@felan-ai/ext-context", "@felan-ai/ext-powerline"];
4
+ export declare const builtinExtensionPackages: {
5
+ readonly subagents: "@felan-ai/ext-subagents";
6
+ readonly prewalk: "@felan-ai/ext-prewalk";
7
+ readonly context: "@felan-ai/ext-context";
8
+ readonly powerline: "@felan-ai/ext-powerline";
9
+ };
10
+ export declare const localExtensionPackages: ("@felan-ai/ext-subagents" | "@felan-ai/ext-prewalk" | "@felan-ai/ext-context" | "@felan-ai/ext-powerline")[];
11
+ export type BuiltinExtensionName = keyof typeof builtinExtensionPackages;
12
+ export type BuiltinExtensionSettings = Partial<Record<BuiltinExtensionName, boolean>>;
13
+ export declare function resolveBuiltinExtensionPackages(settings: unknown): readonly string[];
5
14
  export declare const importLocalExtension: ExtensionPackageImporter;
6
15
  export declare function createLocalExtensionImporter(host: SubagentHost, importExtension?: ExtensionPackageImporter, shutdownHost?: () => Promise<void>): ExtensionPackageImporter;
7
16
  //# sourceMappingURL=extensions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../src/extensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAEL,KAAK,YAAY,EAClB,MAAM,yBAAyB,CAAC;AAEjC,eAAO,MAAM,yBAAyB,4BAA4B,CAAC;AACnE,eAAO,MAAM,sBAAsB,mHAKzB,CAAC;AAIX,eAAO,MAAM,oBAAoB,EAAE,wBAKlC,CAAC;AAEF,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,YAAY,EAClB,eAAe,GAAE,wBAA+C,EAChE,YAAY,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GACjC,wBAAwB,CAiB1B"}
1
+ {"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../src/extensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAEL,KAAK,YAAY,EAClB,MAAM,yBAAyB,CAAC;AAEjC,eAAO,MAAM,yBAAyB,4BAA4B,CAAC;AACnE,eAAO,MAAM,wBAAwB;;;;;CAK3B,CAAC;AACX,eAAO,MAAM,sBAAsB,+GAA0C,CAAC;AAE9E,MAAM,MAAM,oBAAoB,GAAG,MAAM,OAAO,wBAAwB,CAAC;AACzE,MAAM,MAAM,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC,CAAC;AAItF,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,OAAO,GAAG,SAAS,MAAM,EAAE,CAYpF;AAED,eAAO,MAAM,oBAAoB,EAAE,wBAKlC,CAAC;AAEF,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,YAAY,EAClB,eAAe,GAAE,wBAA+C,EAChE,YAAY,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GACjC,wBAAwB,CAiB1B"}
@@ -1,12 +1,28 @@
1
1
  import { createSubagentsExtension, } from '@felan-ai/ext-subagents';
2
2
  export const subagentsExtensionPackage = '@felan-ai/ext-subagents';
3
- export const localExtensionPackages = [
4
- '@felan-ai/ext-subagents',
5
- '@felan-ai/ext-prewalk',
6
- '@felan-ai/ext-context',
7
- '@felan-ai/ext-powerline',
8
- ];
3
+ export const builtinExtensionPackages = {
4
+ subagents: subagentsExtensionPackage,
5
+ prewalk: '@felan-ai/ext-prewalk',
6
+ context: '@felan-ai/ext-context',
7
+ powerline: '@felan-ai/ext-powerline',
8
+ };
9
+ export const localExtensionPackages = Object.values(builtinExtensionPackages);
9
10
  const localExtensionPackageSet = new Set(localExtensionPackages);
11
+ export function resolveBuiltinExtensionPackages(settings) {
12
+ if (settings === undefined)
13
+ return localExtensionPackages;
14
+ if (!isRecord(settings))
15
+ throw new Error('builtinExtensions must be an object');
16
+ for (const [name, enabled] of Object.entries(settings)) {
17
+ if (!Object.hasOwn(builtinExtensionPackages, name))
18
+ throw new Error(`Unknown built-in extension: ${name}`);
19
+ if (typeof enabled !== 'boolean')
20
+ throw new Error(`Built-in extension ${name} must be a boolean`);
21
+ }
22
+ return Object.entries(builtinExtensionPackages)
23
+ .filter(([name]) => settings[name] !== false)
24
+ .map(([, packageName]) => packageName);
25
+ }
10
26
  export const importLocalExtension = async (packageName) => {
11
27
  if (!localExtensionPackageSet.has(packageName)) {
12
28
  throw new Error(`Unknown local extension package: ${packageName}`);
@@ -32,4 +48,7 @@ export function createLocalExtensionImporter(host, importExtension = importLocal
32
48
  return importExtension(packageName);
33
49
  };
34
50
  }
51
+ function isRecord(value) {
52
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
53
+ }
35
54
  //# sourceMappingURL=extensions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"extensions.js","sourceRoot":"","sources":["../src/extensions.ts"],"names":[],"mappings":"AACA,OAAO,EACL,wBAAwB,GAEzB,MAAM,yBAAyB,CAAC;AAEjC,MAAM,CAAC,MAAM,yBAAyB,GAAG,yBAAyB,CAAC;AACnE,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,yBAAyB;IACzB,uBAAuB;IACvB,uBAAuB;IACvB,yBAAyB;CACjB,CAAC;AAEX,MAAM,wBAAwB,GAAwB,IAAI,GAAG,CAAC,sBAAsB,CAAC,CAAC;AAEtF,MAAM,CAAC,MAAM,oBAAoB,GAA6B,KAAK,EAAE,WAAW,EAAE,EAAE;IAClF,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,oCAAoC,WAAW,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,MAAM,CAAC,WAAW,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,UAAU,4BAA4B,CAC1C,IAAkB,EAClB,kBAA4C,oBAAoB,EAChE,YAAkC;IAElC,OAAO,KAAK,EAAE,WAAW,EAAE,EAAE;QAC3B,IAAI,WAAW,KAAK,yBAAyB,EAAE,CAAC;YAC9C,MAAM,SAAS,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;YACjD,OAAO;gBACL,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE;oBACf,SAAS,CAAC,EAAE,CAAC,CAAC;oBACd,IAAI,YAAY,EAAE,CAAC;wBACjB,EAAE,CAAC,EAAE,CAAC,kBAAkB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;4BACxC,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ;gCAAE,MAAM,YAAY,EAAE,CAAC;wBACtD,CAAC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC,CAAuD;aACzD,CAAC;QACJ,CAAC;QACD,OAAO,eAAe,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"extensions.js","sourceRoot":"","sources":["../src/extensions.ts"],"names":[],"mappings":"AACA,OAAO,EACL,wBAAwB,GAEzB,MAAM,yBAAyB,CAAC;AAEjC,MAAM,CAAC,MAAM,yBAAyB,GAAG,yBAAyB,CAAC;AACnE,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,SAAS,EAAE,yBAAyB;IACpC,OAAO,EAAE,uBAAuB;IAChC,OAAO,EAAE,uBAAuB;IAChC,SAAS,EAAE,yBAAyB;CAC5B,CAAC;AACX,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAK9E,MAAM,wBAAwB,GAAwB,IAAI,GAAG,CAAC,sBAAsB,CAAC,CAAC;AAEtF,MAAM,UAAU,+BAA+B,CAAC,QAAiB;IAC/D,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,sBAAsB,CAAC;IAC1D,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IAEhF,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,wBAAwB,EAAE,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC;QAC3G,IAAI,OAAO,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,IAAI,oBAAoB,CAAC,CAAC;IACpG,CAAC;IAED,OAAO,MAAM,CAAC,OAAO,CAAC,wBAAwB,CAAC;SAC5C,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC;SAC5C,GAAG,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,CAAC,MAAM,oBAAoB,GAA6B,KAAK,EAAE,WAAW,EAAE,EAAE;IAClF,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,oCAAoC,WAAW,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,MAAM,CAAC,WAAW,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,UAAU,4BAA4B,CAC1C,IAAkB,EAClB,kBAA4C,oBAAoB,EAChE,YAAkC;IAElC,OAAO,KAAK,EAAE,WAAW,EAAE,EAAE;QAC3B,IAAI,WAAW,KAAK,yBAAyB,EAAE,CAAC;YAC9C,MAAM,SAAS,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;YACjD,OAAO;gBACL,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE;oBACf,SAAS,CAAC,EAAE,CAAC,CAAC;oBACd,IAAI,YAAY,EAAE,CAAC;wBACjB,EAAE,CAAC,EAAE,CAAC,kBAAkB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;4BACxC,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ;gCAAE,MAAM,YAAY,EAAE,CAAC;wBACtD,CAAC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC,CAAuD;aACzD,CAAC;QACJ,CAAC;QACD,OAAO,eAAe,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
package/dist/index.d.ts CHANGED
@@ -2,11 +2,14 @@ export { runLocalFelan } from './application.js';
2
2
  export type { RunLocalFelanOptions } from './application.js';
3
3
  export { runCli } from './cli-main.js';
4
4
  export type { CliDependencies } from './cli-main.js';
5
- export { importLocalExtension, localExtensionPackages } from './extensions.js';
6
- export { createLocalFelanRuntime, createLocalModelRuntime, createLocalSessionRuntimeFactory, getLocalAgentDir, } from './runtime.js';
5
+ export { builtinExtensionPackages, importLocalExtension, localExtensionPackages, resolveBuiltinExtensionPackages, } from './extensions.js';
6
+ export type { BuiltinExtensionName, BuiltinExtensionSettings } from './extensions.js';
7
+ export { createLocalFelanRuntime, createLocalModelRuntime, createLocalSessionRuntimeFactory, getLocalAgentDir, getLocalSkillPaths, } from './runtime.js';
7
8
  export { LocalSubagentHost } from './subagents/host.js';
8
9
  export type { CreateLocalSubagentHostOptions, LocalSubagentSettings, LocalSubagentView, } from './subagents/host.js';
9
10
  export type { CreateLocalFelanRuntimeOptions, CreateLocalSessionRuntimeFactoryOptions, LocalFelanRuntime, } from './runtime.js';
10
- export { createLocalSettingsManager } from './settings.js';
11
+ export { createLocalSettingsManager, getFelanSettings } from './settings.js';
12
+ export type { FelanSettings } from './settings.js';
13
+ export { LOCAL_APPEND_SYSTEM_PROMPT_FILENAME, loadLocalAppendSystemPrompt, } from './system-prompt.js';
11
14
  export { FELAN_VERSION } from './version.js';
12
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,gCAAgC,EAChC,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,YAAY,EACV,8BAA8B,EAC9B,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,8BAA8B,EAC9B,uCAAuC,EACvC,iBAAiB,GAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,sBAAsB,EACtB,+BAA+B,GAChC,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AACtF,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,gCAAgC,EAChC,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,YAAY,EACV,8BAA8B,EAC9B,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,8BAA8B,EAC9B,uCAAuC,EACvC,iBAAiB,GAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC7E,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EACL,mCAAmC,EACnC,2BAA2B,GAC5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC"}
package/dist/index.js CHANGED
@@ -1,8 +1,9 @@
1
1
  export { runLocalFelan } from './application.js';
2
2
  export { runCli } from './cli-main.js';
3
- export { importLocalExtension, localExtensionPackages } from './extensions.js';
4
- export { createLocalFelanRuntime, createLocalModelRuntime, createLocalSessionRuntimeFactory, getLocalAgentDir, } from './runtime.js';
3
+ export { builtinExtensionPackages, importLocalExtension, localExtensionPackages, resolveBuiltinExtensionPackages, } from './extensions.js';
4
+ export { createLocalFelanRuntime, createLocalModelRuntime, createLocalSessionRuntimeFactory, getLocalAgentDir, getLocalSkillPaths, } from './runtime.js';
5
5
  export { LocalSubagentHost } from './subagents/host.js';
6
- export { createLocalSettingsManager } from './settings.js';
6
+ export { createLocalSettingsManager, getFelanSettings } from './settings.js';
7
+ export { LOCAL_APPEND_SYSTEM_PROMPT_FILENAME, loadLocalAppendSystemPrompt, } from './system-prompt.js';
7
8
  export { FELAN_VERSION } from './version.js';
8
9
  //# 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":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,gCAAgC,EAChC,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAWxD,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,sBAAsB,EACtB,+BAA+B,GAChC,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,gCAAgC,EAChC,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAWxD,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAE7E,OAAO,EACL,mCAAmC,EACnC,2BAA2B,GAC5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC"}
package/dist/runtime.d.ts CHANGED
@@ -11,6 +11,7 @@ export interface CreateLocalSessionRuntimeFactoryOptions {
11
11
  readonly extensionPackages?: readonly string[];
12
12
  readonly importExtension?: ExtensionPackageImporter;
13
13
  readonly runtimeFactory?: (cwd: string) => AgentRuntime;
14
+ readonly skillPaths?: readonly string[];
14
15
  readonly subagentSettings?: LocalSubagentSettings;
15
16
  }
16
17
  export interface CreateLocalFelanRuntimeOptions {
@@ -21,9 +22,11 @@ export interface CreateLocalFelanRuntimeOptions {
21
22
  readonly modelRuntime?: ModelRuntime;
22
23
  readonly sessionDir?: string;
23
24
  readonly runtimeFactory?: (cwd: string) => AgentRuntime;
25
+ readonly skillPaths?: readonly string[];
24
26
  readonly subagentSettings?: LocalSubagentSettings;
25
27
  }
26
28
  export declare function getLocalAgentDir(): string;
29
+ export declare function getLocalSkillPaths(cwd: string, homeDir?: string): readonly string[];
27
30
  export declare function createLocalSessionRuntimeFactory(options: CreateLocalSessionRuntimeFactoryOptions): CreateAgentSessionRuntimeFactory;
28
31
  export declare function createLocalModelRuntime(agentDir: string): Promise<ModelRuntime>;
29
32
  export declare function createLocalFelanRuntime(options?: CreateLocalFelanRuntimeOptions): Promise<LocalFelanRuntime>;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,YAAY,EACZ,cAAc,EAGd,KAAK,YAAY,EAEjB,KAAK,gCAAgC,EACrC,KAAK,wBAAwB,EAC9B,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,iCAAiC,CAAC;AAOzC,OAAO,EACL,iBAAiB,EACjB,KAAK,qBAAqB,EAC3B,MAAM,qBAAqB,CAAC;AAe7B,MAAM,MAAM,iBAAiB,GAAG,mBAAmB,GAAG;IACpD,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC9C,0BAA0B,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;CACrF,CAAC;AAEF,MAAM,WAAW,uCAAuC;IACtD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/C,QAAQ,CAAC,eAAe,CAAC,EAAE,wBAAwB,CAAC;IACpD,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,YAAY,CAAC;IACxD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CACnD;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC;IACzC,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,YAAY,CAAC;IACxD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CACnD;AAED,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,uCAAuC,GAC/C,gCAAgC,CAoElC;AAED,wBAAsB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAKrF;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,GAAE,8BAAmC,GAC3C,OAAO,CAAC,iBAAiB,CAAC,CAwB5B"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,YAAY,EACZ,cAAc,EAGd,KAAK,YAAY,EAEjB,KAAK,gCAAgC,EACrC,KAAK,wBAAwB,EAC9B,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,iCAAiC,CAAC;AAQzC,OAAO,EACL,iBAAiB,EACjB,KAAK,qBAAqB,EAC3B,MAAM,qBAAqB,CAAC;AAe7B,MAAM,MAAM,iBAAiB,GAAG,mBAAmB,GAAG;IACpD,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC9C,0BAA0B,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;CACrF,CAAC;AAEF,MAAM,WAAW,uCAAuC;IACtD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/C,QAAQ,CAAC,eAAe,CAAC,EAAE,wBAAwB,CAAC;IACpD,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,YAAY,CAAC;IACxD,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CACnD;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC;IACzC,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,YAAY,CAAC;IACxD,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CACnD;AAED,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,MAAkB,GAAG,SAAS,MAAM,EAAE,CAK9F;AAED,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,uCAAuC,GAC/C,gCAAgC,CA4ElC;AAED,wBAAsB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAKrF;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,GAAE,8BAAmC,GAC3C,OAAO,CAAC,iBAAiB,CAAC,CAyB5B"}
package/dist/runtime.js CHANGED
@@ -1,27 +1,40 @@
1
- import { mkdir, readFile } from 'node:fs/promises';
1
+ import { existsSync } from 'node:fs';
2
+ import { mkdir } from 'node:fs/promises';
2
3
  import { homedir } from 'node:os';
3
4
  import { join, resolve } from 'node:path';
4
5
  import { AGENT_CORE_VERSION, HostAgentRuntime, ModelRuntime, SessionManager, createAgentCoreSessionRuntimeFactory, createAgentSessionRuntime, } from '@felan-ai/agent-core';
5
6
  import { bindSubagentSession } from '@felan-ai/ext-subagents';
6
7
  import { resolveModelScopeWithDiagnostics, } from '@earendil-works/pi-coding-agent';
7
- import { createLocalExtensionImporter, importLocalExtension, localExtensionPackages, } from './extensions.js';
8
- import { createLocalSettingsManager } from './settings.js';
8
+ import { createLocalExtensionImporter, importLocalExtension, resolveBuiltinExtensionPackages, } from './extensions.js';
9
+ import { createLocalSettingsManager, getFelanSettings } from './settings.js';
10
+ import { loadLocalAppendSystemPrompt } from './system-prompt.js';
9
11
  import { LocalSubagentHost, } from './subagents/host.js';
10
12
  const localSubagentHost = Symbol('localSubagentHost');
11
13
  const localSubagentShutdown = Symbol('localSubagentShutdown');
12
14
  export function getLocalAgentDir() {
13
- return resolve(process.env.FELAN_AGENT_DIR ?? join(homedir(), '.felan', 'agent'));
15
+ return resolve(process.env.FELAN_AGENT_DIR ?? join(homedir(), '.felan'));
16
+ }
17
+ export function getLocalSkillPaths(cwd, homeDir = homedir()) {
18
+ return [...new Set([
19
+ resolve(cwd, '.agents', 'skills'),
20
+ resolve(homeDir, '.agents', 'skills'),
21
+ ])].filter((path) => existsSync(path));
14
22
  }
15
23
  export function createLocalSessionRuntimeFactory(options) {
16
24
  const sessions = new WeakMap();
17
25
  const createCoreRuntime = createAgentCoreSessionRuntimeFactory(async ({ cwd, sessionManager }) => {
18
26
  const settingsManager = createLocalSettingsManager(cwd, options.agentDir);
27
+ const felanSettings = getFelanSettings(settingsManager);
19
28
  const modelPatterns = settingsManager.getEnabledModels();
20
29
  const modelScope = modelPatterns && modelPatterns.length > 0
21
30
  ? await resolveModelScopeWithDiagnostics(modelPatterns, options.modelRuntime)
22
31
  : { scopedModels: [], diagnostics: [] };
23
- const extensionPackages = options.extensionPackages ?? localExtensionPackages;
32
+ const extensionPackages = options.extensionPackages
33
+ ?? resolveBuiltinExtensionPackages(felanSettings.builtinExtensions);
24
34
  const importExtension = options.importExtension ?? importLocalExtension;
35
+ const skillPaths = options.skillPaths ?? getLocalSkillPaths(cwd);
36
+ const subagentSettings = options.subagentSettings ?? felanSettings.felanSubagents;
37
+ const appendSystemPrompt = await loadLocalAppendSystemPrompt(options.agentDir);
25
38
  const host = await LocalSubagentHost.create({
26
39
  sessionId: sessionManager.getSessionId(),
27
40
  cwd,
@@ -30,8 +43,9 @@ export function createLocalSessionRuntimeFactory(options) {
30
43
  settingsManager,
31
44
  extensionPackages,
32
45
  importExtension,
46
+ skillPaths,
33
47
  ...(options.runtimeFactory === undefined ? {} : { runtimeFactory: options.runtimeFactory }),
34
- ...(options.subagentSettings === undefined ? {} : { settings: options.subagentSettings }),
48
+ ...(subagentSettings === undefined ? {} : { settings: subagentSettings }),
35
49
  });
36
50
  const shutdownState = { failed: false };
37
51
  const shutdownHost = async () => {
@@ -51,6 +65,8 @@ export function createLocalSessionRuntimeFactory(options) {
51
65
  importExtension: createLocalExtensionImporter(host, importExtension, shutdownHost),
52
66
  modelRuntime: options.modelRuntime,
53
67
  settingsManager,
68
+ skillPaths,
69
+ ...(appendSystemPrompt === undefined ? {} : { appendSystemPrompt: [appendSystemPrompt] }),
54
70
  ...(modelScope.scopedModels.length === 0 ? {} : { scopedModels: modelScope.scopedModels }),
55
71
  };
56
72
  });
@@ -87,7 +103,7 @@ export async function createLocalFelanRuntime(options = {}) {
87
103
  await mkdir(agentDir, { recursive: true });
88
104
  const modelRuntime = options.modelRuntime ?? await createLocalModelRuntime(agentDir);
89
105
  const startupSettings = createLocalSettingsManager(cwd, agentDir);
90
- const sessionDir = options.sessionDir ?? startupSettings.getSessionDir();
106
+ const sessionDir = options.sessionDir ?? startupSettings.getSessionDir() ?? join(agentDir, 'sessions');
91
107
  const sessionManager = options.sessionManager
92
108
  ?? (options.continueRecent
93
109
  ? SessionManager.continueRecent(cwd, sessionDir)
@@ -95,8 +111,9 @@ export async function createLocalFelanRuntime(options = {}) {
95
111
  const createRuntime = createLocalSessionRuntimeFactory({
96
112
  agentDir,
97
113
  modelRuntime,
98
- subagentSettings: options.subagentSettings ?? await loadLocalSubagentSettings(agentDir),
99
114
  ...(options.runtimeFactory === undefined ? {} : { runtimeFactory: options.runtimeFactory }),
115
+ ...(options.skillPaths === undefined ? {} : { skillPaths: options.skillPaths }),
116
+ ...(options.subagentSettings === undefined ? {} : { subagentSettings: options.subagentSettings }),
100
117
  });
101
118
  const runtime = await createAgentSessionRuntime(createRuntime, {
102
119
  cwd: sessionManager.getCwd(),
@@ -201,17 +218,4 @@ function installLocalSubagentLifecycle(runtime) {
201
218
  };
202
219
  return localRuntime;
203
220
  }
204
- async function loadLocalSubagentSettings(agentDir) {
205
- try {
206
- const settings = JSON.parse(await readFile(join(agentDir, 'settings.json'), 'utf8'));
207
- return settings.felanSubagents ?? {};
208
- }
209
- catch (error) {
210
- if (error instanceof Error && 'code' in error && error.code === 'ENOENT')
211
- return {};
212
- if (error instanceof SyntaxError)
213
- return {};
214
- throw error;
215
- }
216
- }
217
221
  //# sourceMappingURL=runtime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,10 @@
1
1
  import { SettingsManager } from '@felan-ai/agent-core';
2
+ import type { BuiltinExtensionSettings } from './extensions.js';
3
+ import type { LocalSubagentSettings } from './subagents/host.js';
4
+ export interface FelanSettings {
5
+ readonly builtinExtensions?: BuiltinExtensionSettings;
6
+ readonly felanSubagents?: LocalSubagentSettings;
7
+ }
2
8
  export declare function createLocalSettingsManager(cwd: string, agentDir: string): SettingsManager;
9
+ export declare function getFelanSettings(settingsManager: SettingsManager): FelanSettings;
3
10
  //# sourceMappingURL=settings.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,CA2BzF"}
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEjE,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,wBAAwB,CAAC;IACtD,QAAQ,CAAC,cAAc,CAAC,EAAE,qBAAqB,CAAC;CACjD;AAED,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,CAmCzF;AAED,wBAAgB,gBAAgB,CAAC,eAAe,EAAE,eAAe,GAAG,aAAa,CAEhF"}
package/dist/settings.js CHANGED
@@ -1,6 +1,10 @@
1
+ import { VERSION as PI_VERSION } from '@earendil-works/pi-coding-agent';
1
2
  import { SettingsManager } from '@felan-ai/agent-core';
2
3
  export function createLocalSettingsManager(cwd, agentDir) {
3
- const settingsManager = SettingsManager.create(cwd, agentDir);
4
+ const settingsManager = SettingsManager.create(cwd, agentDir, { projectTrusted: false });
5
+ // Felan's fixed resource policy makes Pi project trust unnecessary.
6
+ settingsManager.isProjectTrusted = () => true;
7
+ settingsManager.setProjectTrusted = () => { };
4
8
  const filteredResources = {
5
9
  packages: [],
6
10
  extensions: [],
@@ -8,13 +12,18 @@ export function createLocalSettingsManager(cwd, agentDir) {
8
12
  prompts: [],
9
13
  themes: [],
10
14
  };
15
+ const runtimeOverrides = {
16
+ ...filteredResources,
17
+ enableInstallTelemetry: false,
18
+ lastChangelogVersion: PI_VERSION,
19
+ };
11
20
  const reload = settingsManager.reload.bind(settingsManager);
12
21
  const getGlobalSettings = settingsManager.getGlobalSettings.bind(settingsManager);
13
22
  const getProjectSettings = settingsManager.getProjectSettings.bind(settingsManager);
14
- settingsManager.applyOverrides(filteredResources);
23
+ settingsManager.applyOverrides(runtimeOverrides);
15
24
  settingsManager.reload = async () => {
16
25
  await reload();
17
- settingsManager.applyOverrides(filteredResources);
26
+ settingsManager.applyOverrides(runtimeOverrides);
18
27
  };
19
28
  settingsManager.getGlobalSettings = () => ({
20
29
  ...getGlobalSettings(),
@@ -26,4 +35,7 @@ export function createLocalSettingsManager(cwd, agentDir) {
26
35
  });
27
36
  return settingsManager;
28
37
  }
38
+ export function getFelanSettings(settingsManager) {
39
+ return settingsManager.getGlobalSettings();
40
+ }
29
41
  //# sourceMappingURL=settings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"settings.js","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,MAAM,UAAU,0BAA0B,CAAC,GAAW,EAAE,QAAgB;IACtE,MAAM,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC9D,MAAM,iBAAiB,GAAG;QACxB,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,EAAE;KACX,CAAC;IACF,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC5D,MAAM,iBAAiB,GAAG,eAAe,CAAC,iBAAiB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAClF,MAAM,kBAAkB,GAAG,eAAe,CAAC,kBAAkB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAEpF,eAAe,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;IAClD,eAAe,CAAC,MAAM,GAAG,KAAK,IAAI,EAAE;QAClC,MAAM,MAAM,EAAE,CAAC;QACf,eAAe,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;IACpD,CAAC,CAAC;IACF,eAAe,CAAC,iBAAiB,GAAG,GAAG,EAAE,CAAC,CAAC;QACzC,GAAG,iBAAiB,EAAE;QACtB,GAAG,iBAAiB;KACrB,CAAC,CAAC;IACH,eAAe,CAAC,kBAAkB,GAAG,GAAG,EAAE,CAAC,CAAC;QAC1C,GAAG,kBAAkB,EAAE;QACvB,GAAG,iBAAiB;KACrB,CAAC,CAAC;IACH,OAAO,eAAe,CAAC;AACzB,CAAC"}
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AASvD,MAAM,UAAU,0BAA0B,CAAC,GAAW,EAAE,QAAgB;IACtE,MAAM,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;IACzF,oEAAoE;IACpE,eAAe,CAAC,gBAAgB,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC;IAC9C,eAAe,CAAC,iBAAiB,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;IAC7C,MAAM,iBAAiB,GAAG;QACxB,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,EAAE;KACX,CAAC;IACF,MAAM,gBAAgB,GAAG;QACvB,GAAG,iBAAiB;QACpB,sBAAsB,EAAE,KAAK;QAC7B,oBAAoB,EAAE,UAAU;KACjC,CAAC;IACF,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC5D,MAAM,iBAAiB,GAAG,eAAe,CAAC,iBAAiB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAClF,MAAM,kBAAkB,GAAG,eAAe,CAAC,kBAAkB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAEpF,eAAe,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;IACjD,eAAe,CAAC,MAAM,GAAG,KAAK,IAAI,EAAE;QAClC,MAAM,MAAM,EAAE,CAAC;QACf,eAAe,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;IACnD,CAAC,CAAC;IACF,eAAe,CAAC,iBAAiB,GAAG,GAAG,EAAE,CAAC,CAAC;QACzC,GAAG,iBAAiB,EAAE;QACtB,GAAG,iBAAiB;KACrB,CAAC,CAAC;IACH,eAAe,CAAC,kBAAkB,GAAG,GAAG,EAAE,CAAC,CAAC;QAC1C,GAAG,kBAAkB,EAAE;QACvB,GAAG,iBAAiB;KACrB,CAAC,CAAC;IACH,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,eAAgC;IAC/D,OAAO,eAAe,CAAC,iBAAiB,EAAmB,CAAC;AAC9D,CAAC"}
@@ -14,6 +14,7 @@ export interface CreateLocalSubagentHostOptions {
14
14
  readonly settingsManager: SettingsManager;
15
15
  readonly extensionPackages: readonly string[];
16
16
  readonly importExtension: ExtensionPackageImporter;
17
+ readonly skillPaths?: readonly string[];
17
18
  readonly runtimeFactory?: (cwd: string) => AgentRuntime;
18
19
  readonly settings?: LocalSubagentSettings;
19
20
  readonly runChild?: LocalSubagentRunner;
@@ -1 +1 @@
1
- {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../src/subagents/host.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../src/subagents/host.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { HostAgentRuntime, SessionManager, createAgentCoreSession, } from '@fela
4
4
  import { bindSubagentSession, } from '@felan-ai/ext-subagents';
5
5
  import { CURRENT_SESSION_VERSION } from '@earendil-works/pi-coding-agent';
6
6
  import { createLocalExtensionImporter } from '../extensions.js';
7
+ import { loadLocalChildSystemPromptAppends } from '../system-prompt.js';
7
8
  import { discoverLocalSubagents } from './catalog.js';
8
9
  import { LocalSubagentStore } from './store.js';
9
10
  const EXT_SUBAGENTS = '@felan-ai/ext-subagents';
@@ -583,6 +584,7 @@ export class LocalSubagentManager {
583
584
  : this.#options.extensionPackages.filter((packageName) => packageName !== EXT_SUBAGENTS);
584
585
  if (input.signal.aborted)
585
586
  return {};
587
+ const appendSystemPrompt = await loadLocalChildSystemPromptAppends(this.#options.agentDir, input.definition.prompt);
586
588
  const created = await createAgentCoreSession({
587
589
  runtime: this.#options.runtimeFactory?.(input.cwd) ?? new HostAgentRuntime(input.cwd),
588
590
  extensionPackages,
@@ -590,7 +592,8 @@ export class LocalSubagentManager {
590
592
  modelRuntime: this.#options.modelRuntime,
591
593
  settingsManager: this.#options.settingsManager,
592
594
  sessionManager,
593
- appendSystemPrompt: [input.definition.prompt],
595
+ appendSystemPrompt,
596
+ ...(this.#options.skillPaths === undefined ? {} : { skillPaths: this.#options.skillPaths }),
594
597
  ...(model === undefined ? {} : { model }),
595
598
  ...(input.request.thinking === undefined ? {} : { thinkingLevel: input.request.thinking }),
596
599
  });
@@ -1 +1 @@
1
- {"version":3,"file":"host.js","sourceRoot":"","sources":["../../src/subagents/host.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"host.js","sourceRoot":"","sources":["../../src/subagents/host.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare const LOCAL_APPEND_SYSTEM_PROMPT_FILENAME = "APPEND_SYSTEM.md";
2
+ export declare function loadLocalAppendSystemPrompt(agentDir: string): Promise<string | undefined>;
3
+ export declare function loadLocalChildSystemPromptAppends(agentDir: string, persona: string): Promise<readonly string[]>;
4
+ //# sourceMappingURL=system-prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-prompt.d.ts","sourceRoot":"","sources":["../src/system-prompt.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,mCAAmC,qBAAqB,CAAC;AAEtE,wBAAsB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAQ/F;AAED,wBAAsB,iCAAiC,CACrD,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAG5B"}
@@ -0,0 +1,22 @@
1
+ import { readFile } from 'node:fs/promises';
2
+ import { join } from 'node:path';
3
+ export const LOCAL_APPEND_SYSTEM_PROMPT_FILENAME = 'APPEND_SYSTEM.md';
4
+ export async function loadLocalAppendSystemPrompt(agentDir) {
5
+ try {
6
+ const prompt = await readFile(join(agentDir, LOCAL_APPEND_SYSTEM_PROMPT_FILENAME), 'utf8');
7
+ return prompt.trim().length === 0 ? undefined : prompt.trim();
8
+ }
9
+ catch (error) {
10
+ if (isMissingFileError(error))
11
+ return undefined;
12
+ throw error;
13
+ }
14
+ }
15
+ export async function loadLocalChildSystemPromptAppends(agentDir, persona) {
16
+ const applicationAppend = await loadLocalAppendSystemPrompt(agentDir);
17
+ return [...(applicationAppend === undefined ? [] : [applicationAppend]), persona];
18
+ }
19
+ function isMissingFileError(error) {
20
+ return error instanceof Error && 'code' in error && error.code === 'ENOENT';
21
+ }
22
+ //# sourceMappingURL=system-prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../src/system-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,CAAC,MAAM,mCAAmC,GAAG,kBAAkB,CAAC;AAEtE,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,QAAgB;IAChE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,mCAAmC,CAAC,EAAE,MAAM,CAAC,CAAC;QAC3F,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAChE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,kBAAkB,CAAC,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAChD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACrD,QAAgB,EAChB,OAAe;IAEf,MAAM,iBAAiB,GAAG,MAAM,2BAA2B,CAAC,QAAQ,CAAC,CAAC;IACtE,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AACpF,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,OAAO,KAAK,YAAY,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC;AAC9E,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@felan-ai/felan",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Local Felan terminal agent",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -29,18 +29,18 @@
29
29
  },
30
30
  "dependencies": {
31
31
  "@earendil-works/pi-coding-agent": "0.83.0",
32
- "@felan-ai/agent-core": "0.1.0",
33
- "@felan-ai/ext-subagents": "0.1.0",
34
- "@felan-ai/ext-powerline": "0.1.0",
35
- "@felan-ai/ext-context": "0.1.0",
36
- "@felan-ai/ext-prewalk": "0.1.0"
32
+ "@felan-ai/agent-core": "0.2.0",
33
+ "@felan-ai/ext-subagents": "0.2.0",
34
+ "@felan-ai/ext-context": "0.2.0",
35
+ "@felan-ai/ext-prewalk": "0.2.0",
36
+ "@felan-ai/ext-powerline": "0.2.0"
37
37
  },
38
38
  "publishConfig": {
39
39
  "access": "public",
40
40
  "provenance": true
41
41
  },
42
42
  "scripts": {
43
- "build": "rm -rf dist && tsc -p tsconfig.build.json",
43
+ "build": "rm -rf dist && tsc -p tsconfig.build.json && chmod +x dist/cli.js",
44
44
  "type-check": "tsc -p tsconfig.json --noEmit",
45
45
  "test": "vitest run --passWithNoTests"
46
46
  }