@felan-ai/felan 0.1.0-alpha.3 → 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.
Files changed (42) hide show
  1. package/NOTICE +1 -1
  2. package/README.md +69 -11
  3. package/dist/application.d.ts.map +1 -1
  4. package/dist/application.js +25 -2
  5. package/dist/application.js.map +1 -1
  6. package/dist/extensions.d.ts +13 -1
  7. package/dist/extensions.d.ts.map +1 -1
  8. package/dist/extensions.js +46 -5
  9. package/dist/extensions.js.map +1 -1
  10. package/dist/index.d.ts +9 -4
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +5 -3
  13. package/dist/index.js.map +1 -1
  14. package/dist/runtime.d.ts +13 -3
  15. package/dist/runtime.d.ts.map +1 -1
  16. package/dist/runtime.js +159 -124
  17. package/dist/runtime.js.map +1 -1
  18. package/dist/settings.d.ts +7 -0
  19. package/dist/settings.d.ts.map +1 -1
  20. package/dist/settings.js +15 -3
  21. package/dist/settings.js.map +1 -1
  22. package/dist/subagents/catalog.d.ts +8 -0
  23. package/dist/subagents/catalog.d.ts.map +1 -0
  24. package/dist/subagents/catalog.js +132 -0
  25. package/dist/subagents/catalog.js.map +1 -0
  26. package/dist/subagents/host.d.ts +86 -0
  27. package/dist/subagents/host.d.ts.map +1 -0
  28. package/dist/subagents/host.js +994 -0
  29. package/dist/subagents/host.js.map +1 -0
  30. package/dist/subagents/presenter.d.ts +11 -0
  31. package/dist/subagents/presenter.d.ts.map +1 -0
  32. package/dist/subagents/presenter.js +34 -0
  33. package/dist/subagents/presenter.js.map +1 -0
  34. package/dist/subagents/store.d.ts +17 -0
  35. package/dist/subagents/store.d.ts.map +1 -0
  36. package/dist/subagents/store.js +34 -0
  37. package/dist/subagents/store.js.map +1 -0
  38. package/dist/system-prompt.d.ts +4 -0
  39. package/dist/system-prompt.d.ts.map +1 -0
  40. package/dist/system-prompt.js +22 -0
  41. package/dist/system-prompt.js.map +1 -0
  42. package/package.json +8 -7
@@ -0,0 +1,86 @@
1
+ import { type AgentRuntime, type ExtensionPackageImporter, type ModelRuntime, type SettingsManager } from '@felan-ai/agent-core';
2
+ import { type SubagentError, type SubagentHost, type SubagentHostResult, type SubagentParentPort, type SubagentPolicy, type SubagentRecord, type SubagentSpawnRequest } from '@felan-ai/ext-subagents';
3
+ import { type LocalSubagentDefinition } from './catalog.js';
4
+ export interface LocalSubagentSettings {
5
+ readonly concurrency?: number;
6
+ readonly maxDepth?: number;
7
+ }
8
+ export type LocalSubagentView = SubagentRecord;
9
+ export interface CreateLocalSubagentHostOptions {
10
+ readonly sessionId: string;
11
+ readonly cwd: string;
12
+ readonly agentDir: string;
13
+ readonly modelRuntime: ModelRuntime;
14
+ readonly settingsManager: SettingsManager;
15
+ readonly extensionPackages: readonly string[];
16
+ readonly importExtension: ExtensionPackageImporter;
17
+ readonly skillPaths?: readonly string[];
18
+ readonly runtimeFactory?: (cwd: string) => AgentRuntime;
19
+ readonly settings?: LocalSubagentSettings;
20
+ readonly runChild?: LocalSubagentRunner;
21
+ }
22
+ export interface LocalSubagentRunInput {
23
+ readonly sessionId: string;
24
+ readonly depth: number;
25
+ readonly subagents: SubagentHost;
26
+ readonly request: SubagentSpawnRequest;
27
+ readonly definition: LocalSubagentDefinition;
28
+ readonly sessionFile?: string;
29
+ readonly cwd: string;
30
+ readonly signal: AbortSignal;
31
+ readonly initialMessage: string;
32
+ readonly onReady: (control: LocalSubagentControl) => Promise<void>;
33
+ }
34
+ export interface LocalSubagentControl {
35
+ steer(message: string): Promise<void>;
36
+ cancel(): Promise<void>;
37
+ }
38
+ export interface LocalSubagentRunOutcome {
39
+ readonly result?: string;
40
+ readonly error?: SubagentError;
41
+ readonly sessionFile?: string;
42
+ readonly turnLimitReached?: boolean;
43
+ }
44
+ export type LocalSubagentRunner = (input: LocalSubagentRunInput) => Promise<LocalSubagentRunOutcome>;
45
+ export declare class LocalSubagentHost implements SubagentHost {
46
+ #private;
47
+ readonly descriptors: readonly import("@felan-ai/ext-subagents").SubagentDescriptor[];
48
+ readonly policy: SubagentPolicy;
49
+ constructor(manager: LocalSubagentManager, sessionId: string);
50
+ static create(options: CreateLocalSubagentHostOptions): Promise<LocalSubagentHost>;
51
+ attachParent(port: SubagentParentPort): () => void;
52
+ spawn(request: SubagentSpawnRequest, signal?: AbortSignal): Promise<SubagentHostResult<SubagentRecord>>;
53
+ list(options: {
54
+ readonly includeDescendants: boolean;
55
+ }): Promise<SubagentHostResult<readonly SubagentRecord[]>>;
56
+ getResult(agentId: string, options: {
57
+ readonly wait: boolean;
58
+ readonly timeoutSeconds?: number;
59
+ }, signal?: AbortSignal): Promise<SubagentHostResult<SubagentRecord>>;
60
+ steer(agentId: string, message: string): Promise<SubagentHostResult<SubagentRecord>>;
61
+ cancel(agentId: string, reason?: string): Promise<SubagentHostResult<SubagentRecord>>;
62
+ subscribe(listener: (records: readonly LocalSubagentView[]) => void): () => void;
63
+ shutdown(): Promise<void>;
64
+ }
65
+ export declare class LocalSubagentManager {
66
+ #private;
67
+ readonly definitions: ReadonlyMap<string, LocalSubagentDefinition>;
68
+ readonly descriptors: readonly import("@felan-ai/ext-subagents").SubagentDescriptor[];
69
+ readonly policy: SubagentPolicy;
70
+ private constructor();
71
+ static create(options: CreateLocalSubagentHostOptions, definitions: readonly LocalSubagentDefinition[]): Promise<LocalSubagentManager>;
72
+ attachParent(sessionId: string, port: SubagentParentPort): () => void;
73
+ spawn(parentSessionId: string, request: SubagentSpawnRequest, signal?: AbortSignal): Promise<SubagentHostResult<SubagentRecord>>;
74
+ list(parentSessionId: string, options: {
75
+ readonly includeDescendants: boolean;
76
+ }): Promise<SubagentHostResult<readonly SubagentRecord[]>>;
77
+ getResult(parentSessionId: string, agentId: string, options: {
78
+ readonly wait: boolean;
79
+ readonly timeoutSeconds?: number;
80
+ }, signal?: AbortSignal): Promise<SubagentHostResult<SubagentRecord>>;
81
+ steer(parentSessionId: string, agentId: string, message: string): Promise<SubagentHostResult<SubagentRecord>>;
82
+ cancel(parentSessionId: string, agentId: string, reason?: string): Promise<SubagentHostResult<SubagentRecord>>;
83
+ subscribe(listener: (records: readonly LocalSubagentView[]) => void): () => void;
84
+ shutdown(): Promise<void>;
85
+ }
86
+ //# sourceMappingURL=host.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../src/subagents/host.ts"],"names":[],"mappings":"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"}