phaibel 4.0.46 → 4.0.47

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,71 @@
1
+ export interface A2AAgentCard {
2
+ name: string;
3
+ description: string;
4
+ url: string;
5
+ version?: string;
6
+ capabilities?: Record<string, unknown>;
7
+ skills?: A2ASkillInfo[];
8
+ }
9
+ export interface A2ASkillInfo {
10
+ id: string;
11
+ name: string;
12
+ description: string;
13
+ tags?: string[];
14
+ examples?: string[];
15
+ }
16
+ export interface A2ADiscoveredAgent {
17
+ agentId: string;
18
+ agentName: string;
19
+ description: string;
20
+ url: string;
21
+ skills: A2ASkillInfo[];
22
+ }
23
+ interface A2ATaskResult {
24
+ id: string;
25
+ status: {
26
+ state: string;
27
+ };
28
+ artifacts?: Array<{
29
+ name?: string;
30
+ parts: Array<{
31
+ type: string;
32
+ text?: string;
33
+ data?: unknown;
34
+ }>;
35
+ }>;
36
+ history?: Array<{
37
+ role: string;
38
+ parts: Array<{
39
+ type: string;
40
+ text?: string;
41
+ data?: unknown;
42
+ }>;
43
+ }>;
44
+ }
45
+ declare class A2AClientManager {
46
+ private agents;
47
+ private cards;
48
+ /**
49
+ * Fetch Agent Cards from all configured A2A agents, discover their skills.
50
+ */
51
+ discoverAllAgents(): Promise<A2ADiscoveredAgent[]>;
52
+ /**
53
+ * Send a task to an A2A agent. Returns the task result (synchronous — waits for completion).
54
+ */
55
+ sendTask(agentId: string, message: string, options?: {
56
+ skillId?: string;
57
+ data?: Record<string, unknown>;
58
+ }): Promise<A2ATaskResult>;
59
+ /**
60
+ * Get the status of a previously sent task.
61
+ */
62
+ getTask(agentId: string, taskId: string): Promise<A2ATaskResult>;
63
+ /**
64
+ * Get the cached agent card for an agent.
65
+ */
66
+ getAgentCard(agentId: string): A2AAgentCard | undefined;
67
+ private fetchAgentCard;
68
+ }
69
+ export declare const a2aClient: A2AClientManager;
70
+ export {};
71
+ //# sourceMappingURL=a2a-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a2a-client.d.ts","sourceRoot":"","sources":["../../src/agents/a2a-client.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,YAAY;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,YAAY;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,YAAY,EAAE,CAAC;CAC1B;AAED,UAAU,aAAa;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1B,SAAS,CAAC,EAAE,KAAK,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC;KACjE,CAAC,CAAC;IACH,OAAO,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC,CAAC;KACjE,CAAC,CAAC;CACN;AAID,cAAM,gBAAgB;IAClB,OAAO,CAAC,MAAM,CAAiC;IAC/C,OAAO,CAAC,KAAK,CAAmC;IAEhD;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAmCxD;;OAEG;IACG,QAAQ,CACV,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAC/D,OAAO,CAAC,aAAa,CAAC;IAiEzB;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAoCtE;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;YAMzC,cAAc;CAW/B;AAED,eAAO,MAAM,SAAS,kBAAyB,CAAC"}
@@ -0,0 +1,155 @@
1
+ // ─────────────────────────────────────────────────────────────────────────────
2
+ // A2A Client — Connection Manager
3
+ // ─────────────────────────────────────────────────────────────────────────────
4
+ // Singleton that manages A2A agent connections. Discovers agent skills via
5
+ // Agent Cards, sends tasks via JSON-RPC.
6
+ //
7
+ // A2A spec: https://google.github.io/A2A/
8
+ // ─────────────────────────────────────────────────────────────────────────────
9
+ import crypto from 'crypto';
10
+ import { loadAgentsConfig } from './agent-config.js';
11
+ import { debug } from '../utils/debug.js';
12
+ // ── Client ───────────────────────────────────────────────────────────────────
13
+ class A2AClientManager {
14
+ agents = new Map();
15
+ cards = new Map();
16
+ /**
17
+ * Fetch Agent Cards from all configured A2A agents, discover their skills.
18
+ */
19
+ async discoverAllAgents() {
20
+ const config = await loadAgentsConfig();
21
+ if (config.agents.length === 0)
22
+ return [];
23
+ for (const agent of config.agents) {
24
+ this.agents.set(agent.id, agent);
25
+ }
26
+ const results = await Promise.allSettled(config.agents.map(agent => this.fetchAgentCard(agent)));
27
+ const discovered = [];
28
+ for (let i = 0; i < results.length; i++) {
29
+ const result = results[i];
30
+ if (result.status === 'fulfilled' && result.value) {
31
+ const agent = config.agents[i];
32
+ const card = result.value;
33
+ this.cards.set(agent.id, card);
34
+ discovered.push({
35
+ agentId: agent.id,
36
+ agentName: card.name,
37
+ description: card.description,
38
+ url: agent.url,
39
+ skills: card.skills ?? [],
40
+ });
41
+ debug('a2a-client', `Discovered agent "${card.name}" at ${agent.url} with ${card.skills?.length ?? 0} skills`);
42
+ }
43
+ else if (result.status === 'rejected') {
44
+ console.warn(`[agents] Failed to connect to "${config.agents[i].name}": ${result.reason}`);
45
+ }
46
+ }
47
+ return discovered;
48
+ }
49
+ /**
50
+ * Send a task to an A2A agent. Returns the task result (synchronous — waits for completion).
51
+ */
52
+ async sendTask(agentId, message, options) {
53
+ const agent = this.agents.get(agentId);
54
+ if (!agent)
55
+ throw new Error(`Unknown agent: ${agentId}`);
56
+ const taskId = crypto.randomUUID();
57
+ const parts = [];
58
+ // Text message
59
+ if (message) {
60
+ parts.push({ type: 'text', text: message });
61
+ }
62
+ // Structured data (e.g. skill selection, query parameters)
63
+ if (options?.data || options?.skillId) {
64
+ parts.push({
65
+ type: 'data',
66
+ data: { skill: options.skillId, ...options?.data },
67
+ });
68
+ }
69
+ const body = {
70
+ jsonrpc: '2.0',
71
+ id: taskId,
72
+ method: 'tasks/send',
73
+ params: {
74
+ id: taskId,
75
+ message: {
76
+ role: 'user',
77
+ parts,
78
+ },
79
+ },
80
+ };
81
+ const url = agent.url.replace(/\/$/, '') + '/a2a';
82
+ const headers = {
83
+ 'Content-Type': 'application/json',
84
+ ...agent.headers,
85
+ };
86
+ debug('a2a-client', `Sending task ${taskId} to ${agent.name} at ${url}`);
87
+ const response = await fetch(url, {
88
+ method: 'POST',
89
+ headers,
90
+ body: JSON.stringify(body),
91
+ });
92
+ if (!response.ok) {
93
+ throw new Error(`A2A request failed: ${response.status} ${response.statusText}`);
94
+ }
95
+ const json = await response.json();
96
+ if (json.error) {
97
+ throw new Error(`A2A error: ${json.error.message}`);
98
+ }
99
+ if (!json.result) {
100
+ throw new Error('A2A response missing result');
101
+ }
102
+ debug('a2a-client', `Task ${taskId} completed with state: ${json.result.status.state}`);
103
+ return json.result;
104
+ }
105
+ /**
106
+ * Get the status of a previously sent task.
107
+ */
108
+ async getTask(agentId, taskId) {
109
+ const agent = this.agents.get(agentId);
110
+ if (!agent)
111
+ throw new Error(`Unknown agent: ${agentId}`);
112
+ const url = agent.url.replace(/\/$/, '') + '/a2a';
113
+ const headers = {
114
+ 'Content-Type': 'application/json',
115
+ ...agent.headers,
116
+ };
117
+ const body = {
118
+ jsonrpc: '2.0',
119
+ id: 1,
120
+ method: 'tasks/get',
121
+ params: { id: taskId },
122
+ };
123
+ const response = await fetch(url, {
124
+ method: 'POST',
125
+ headers,
126
+ body: JSON.stringify(body),
127
+ });
128
+ if (!response.ok) {
129
+ throw new Error(`A2A request failed: ${response.status} ${response.statusText}`);
130
+ }
131
+ const json = await response.json();
132
+ if (json.error) {
133
+ throw new Error(`A2A error: ${json.error.message}`);
134
+ }
135
+ return json.result;
136
+ }
137
+ /**
138
+ * Get the cached agent card for an agent.
139
+ */
140
+ getAgentCard(agentId) {
141
+ return this.cards.get(agentId);
142
+ }
143
+ // ── Private ──────────────────────────────────────────────────────────────
144
+ async fetchAgentCard(agent) {
145
+ const url = agent.url.replace(/\/$/, '') + '/.well-known/agent.json';
146
+ const headers = { ...agent.headers };
147
+ const response = await fetch(url, { headers });
148
+ if (!response.ok) {
149
+ throw new Error(`Failed to fetch agent card: ${response.status} ${response.statusText}`);
150
+ }
151
+ return await response.json();
152
+ }
153
+ }
154
+ export const a2aClient = new A2AClientManager();
155
+ //# sourceMappingURL=a2a-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a2a-client.js","sourceRoot":"","sources":["../../src/agents/a2a-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export interface AgentEntry {
2
+ id: string;
3
+ name: string;
4
+ url: string;
5
+ description?: string;
6
+ headers?: Record<string, string>;
7
+ }
8
+ export interface AgentsConfig {
9
+ agents: AgentEntry[];
10
+ }
11
+ export declare function loadAgentsConfig(): Promise<AgentsConfig>;
12
+ export declare function saveAgentsConfig(cfg: AgentsConfig): Promise<void>;
13
+ //# sourceMappingURL=agent-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-config.d.ts","sourceRoot":"","sources":["../../src/agents/agent-config.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,UAAU;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,YAAY;IACzB,MAAM,EAAE,UAAU,EAAE,CAAC;CACxB;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,YAAY,CAAC,CAS9D;AAED,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAKvE"}
@@ -0,0 +1,23 @@
1
+ // ─────────────────────────────────────────────────────────────────────────────
2
+ // A2A Agents — Configuration
3
+ // ─────────────────────────────────────────────────────────────────────────────
4
+ import { promises as fsPromises } from 'fs';
5
+ import { getAgentsConfigPath, getVaultConfigDir } from '../paths.js';
6
+ export async function loadAgentsConfig() {
7
+ try {
8
+ const configPath = await getAgentsConfigPath();
9
+ const raw = await fsPromises.readFile(configPath, 'utf-8');
10
+ const parsed = JSON.parse(raw);
11
+ return { agents: parsed.agents ?? [] };
12
+ }
13
+ catch {
14
+ return { agents: [] };
15
+ }
16
+ }
17
+ export async function saveAgentsConfig(cfg) {
18
+ const dir = await getVaultConfigDir();
19
+ await fsPromises.mkdir(dir, { recursive: true });
20
+ const configPath = await getAgentsConfigPath();
21
+ await fsPromises.writeFile(configPath, JSON.stringify(cfg, null, 2));
22
+ }
23
+ //# sourceMappingURL=agent-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-config.js","sourceRoot":"","sources":["../../src/agents/agent-config.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,6BAA6B;AAC7B,gFAAgF;AAEhF,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,IAAI,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAcrE,MAAM,CAAC,KAAK,UAAU,gBAAgB;IAClC,IAAI,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,mBAAmB,EAAE,CAAC;QAC/C,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC1B,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,GAAiB;IACpD,MAAM,GAAG,GAAG,MAAM,iBAAiB,EAAE,CAAC;IACtC,MAAM,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,MAAM,UAAU,GAAG,MAAM,mBAAmB,EAAE,CAAC;IAC/C,MAAM,UAAU,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACzE,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { Command } from 'commander';
2
+ export declare const agentCommand: Command;
3
+ export default agentCommand;
4
+ //# sourceMappingURL=agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/commands/agent.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,eAAO,MAAM,YAAY,SACuB,CAAC;AAyIjD,eAAe,YAAY,CAAC"}
@@ -0,0 +1,128 @@
1
+ // ─────────────────────────────────────────────────────────────────────────────
2
+ // AGENT COMMAND
3
+ // ─────────────────────────────────────────────────────────────────────────────
4
+ // Manage A2A agent connections — add, remove, list, ping.
5
+ // ─────────────────────────────────────────────────────────────────────────────
6
+ import { Command } from 'commander';
7
+ import chalk from 'chalk';
8
+ import { loadAgentsConfig, saveAgentsConfig } from '../agents/agent-config.js';
9
+ export const agentCommand = new Command('agent')
10
+ .description('Manage A2A agent connections');
11
+ // ── add ──────────────────────────────────────────────────────────────────────
12
+ agentCommand
13
+ .command('add <name>')
14
+ .description('Add an A2A agent')
15
+ .requiredOption('--url <url>', 'Base URL of the A2A agent (e.g. http://localhost:4000)')
16
+ .option('--description <desc>', 'Human-readable description of the agent')
17
+ .option('--headers <pairs...>', 'Custom headers as KEY=VAL pairs (e.g. Authorization="Bearer token")')
18
+ .action(async (name, opts) => {
19
+ const cfg = await loadAgentsConfig();
20
+ const id = name.toLowerCase().replace(/[^a-z0-9-_]/g, '-');
21
+ if (cfg.agents.some(a => a.id === id)) {
22
+ console.log(chalk.yellow(`\n An agent with id "${id}" already exists, sir.`));
23
+ console.log(chalk.gray(` Use ${chalk.bold(`phaibel agent remove ${id}`)} first, then re-add.\n`));
24
+ return;
25
+ }
26
+ const headers = {};
27
+ if (opts.headers) {
28
+ for (const pair of opts.headers) {
29
+ const eqIdx = pair.indexOf('=');
30
+ if (eqIdx > 0) {
31
+ headers[pair.slice(0, eqIdx)] = pair.slice(eqIdx + 1);
32
+ }
33
+ }
34
+ }
35
+ cfg.agents.push({
36
+ id,
37
+ name,
38
+ url: opts.url.replace(/\/$/, ''),
39
+ description: opts.description,
40
+ headers: Object.keys(headers).length > 0 ? headers : undefined,
41
+ });
42
+ await saveAgentsConfig(cfg);
43
+ console.log(chalk.green(`\n Agent "${name}" (${id}) added at ${opts.url}`));
44
+ console.log(chalk.gray(` It will be available next time the agent starts.\n`));
45
+ });
46
+ // ── remove ───────────────────────────────────────────────────────────────────
47
+ agentCommand
48
+ .command('remove <name>')
49
+ .description('Remove an A2A agent')
50
+ .action(async (name) => {
51
+ const cfg = await loadAgentsConfig();
52
+ const idx = cfg.agents.findIndex(a => a.id === name || a.name === name);
53
+ if (idx === -1) {
54
+ console.log(chalk.yellow(`\n No agent found with id or name "${name}", sir.\n`));
55
+ return;
56
+ }
57
+ const removed = cfg.agents.splice(idx, 1)[0];
58
+ await saveAgentsConfig(cfg);
59
+ console.log(chalk.green(`\n Agent "${removed.name}" (${removed.id}) removed, sir.\n`));
60
+ });
61
+ // ── list ─────────────────────────────────────────────────────────────────────
62
+ agentCommand
63
+ .command('list')
64
+ .description('Show all configured A2A agents')
65
+ .action(async () => {
66
+ const cfg = await loadAgentsConfig();
67
+ if (cfg.agents.length === 0) {
68
+ console.log(chalk.yellow('\n No agents configured.'));
69
+ console.log(chalk.gray(` Use ${chalk.bold('phaibel agent add <name> --url <url>')} to add one.\n`));
70
+ return;
71
+ }
72
+ console.log(chalk.cyan('\n Configured A2A agents:\n'));
73
+ for (const agent of cfg.agents) {
74
+ console.log(` ${chalk.bold(agent.name)} ${chalk.gray(`(${agent.id})`)}`);
75
+ console.log(` ${chalk.gray(agent.url)}`);
76
+ if (agent.description) {
77
+ console.log(` ${chalk.gray(agent.description)}`);
78
+ }
79
+ if (agent.headers && Object.keys(agent.headers).length > 0) {
80
+ console.log(` ${chalk.gray(`headers: ${Object.keys(agent.headers).join(', ')}`)}`);
81
+ }
82
+ console.log('');
83
+ }
84
+ });
85
+ // ── ping ─────────────────────────────────────────────────────────────────────
86
+ agentCommand
87
+ .command('ping [name]')
88
+ .description('Ping an A2A agent (or all) to check connectivity and discover skills')
89
+ .action(async (name) => {
90
+ const cfg = await loadAgentsConfig();
91
+ if (cfg.agents.length === 0) {
92
+ console.log(chalk.yellow('\n No agents configured.\n'));
93
+ return;
94
+ }
95
+ const targets = name
96
+ ? cfg.agents.filter(a => a.id === name || a.name === name)
97
+ : cfg.agents;
98
+ if (targets.length === 0) {
99
+ console.log(chalk.yellow(`\n No agent found with id or name "${name}", sir.\n`));
100
+ return;
101
+ }
102
+ console.log(chalk.cyan('\n Pinging A2A agents...\n'));
103
+ for (const agent of targets) {
104
+ try {
105
+ const url = agent.url + '/.well-known/agent.json';
106
+ const response = await fetch(url, { headers: agent.headers });
107
+ if (!response.ok) {
108
+ console.log(` ${chalk.red('✗')} ${chalk.bold(agent.name)} — ${response.status} ${response.statusText}`);
109
+ continue;
110
+ }
111
+ const card = await response.json();
112
+ const skillCount = card.skills?.length ?? 0;
113
+ console.log(` ${chalk.green('✓')} ${chalk.bold(card.name)} — ${skillCount} skill${skillCount !== 1 ? 's' : ''}`);
114
+ if (card.skills) {
115
+ for (const skill of card.skills) {
116
+ console.log(` ${chalk.gray(`- ${skill.name} (${skill.id})`)}`);
117
+ }
118
+ }
119
+ }
120
+ catch (err) {
121
+ const msg = err instanceof Error ? err.message : String(err);
122
+ console.log(` ${chalk.red('✗')} ${chalk.bold(agent.name)} — ${msg}`);
123
+ }
124
+ }
125
+ console.log('');
126
+ });
127
+ export default agentCommand;
128
+ //# sourceMappingURL=agent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/commands/agent.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../src/feral/bootstrap.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAI/C,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAiLpD;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACzC,QAAQ,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC;CACtC;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAChC,cAAc,GAAE,aAAa,EAAO,GACrC,OAAO,CAAC,YAAY,CAAC,CAgEvB"}
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../src/feral/bootstrap.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAI/C,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAqLpD;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACzC,QAAQ,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC;CACtC;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAChC,cAAc,GAAE,aAAa,EAAO,GACrC,OAAO,CAAC,YAAY,CAAC,CAmEvB"}
@@ -74,8 +74,9 @@ import { LoadVaultContextNodeCode } from './node-code/entity/load-vault-context-
74
74
  import { CreateRecurringTaskNodeCode } from './node-code/entity/create-recurring-task-node-code.js';
75
75
  import { SearchEntitiesNodeCode } from './node-code/entity/search-entities-node-code.js';
76
76
  import { LinkEntitiesNodeCode } from './node-code/entity/link-entities-node-code.js';
77
- // PAMP node codes
77
+ // MCP & A2A node codes
78
78
  import { McpCallToolNodeCode } from './node-code/mcp/mcp-call-tool-node-code.js';
79
+ import { A2ASendTaskNodeCode } from './node-code/a2a/a2a-send-task-node-code.js';
79
80
  import { PampSendNodeCode } from './node-code/pamp/pamp-send-node-code.js';
80
81
  import { PampCheckInboxNodeCode } from './node-code/pamp/pamp-check-inbox-node-code.js';
81
82
  import { PampShareEntityNodeCode } from './node-code/pamp/pamp-share-entity-node-code.js';
@@ -89,6 +90,7 @@ import { OutputCatalogSource } from './catalog/output-catalog-source.js';
89
90
  import { IntrospectCatalogSource } from './catalog/introspect-catalog-source.js';
90
91
  import { PampCatalogSource } from './catalog/pamp-catalog-source.js';
91
92
  import { McpCatalogSource } from './catalog/mcp-catalog-source.js';
93
+ import { A2ACatalogSource } from './catalog/a2a-catalog-source.js';
92
94
  import { UsageCatalogSource } from './catalog/usage-catalog-source.js';
93
95
  // System & output node codes
94
96
  import { CliCommandNodeCode } from './node-code/system/cli-command-node-code.js';
@@ -180,6 +182,8 @@ function getBuiltInNodeCodes() {
180
182
  new PampAwaitReplyNodeCode(),
181
183
  // MCP
182
184
  new McpCallToolNodeCode(),
185
+ // A2A
186
+ new A2ASendTaskNodeCode(),
183
187
  ];
184
188
  }
185
189
  /**
@@ -194,12 +198,14 @@ export async function bootstrapFeral(processSources = []) {
194
198
  const nodeCodeFactory = new NodeCodeFactory([
195
199
  { getNodeCodes: () => getBuiltInNodeCodes() },
196
200
  ]);
197
- // 2. Load catalog config, entity types, and MCP tools (parallel — independent)
201
+ // 2. Load catalog config, entity types, MCP tools, and A2A agents (parallel — independent)
198
202
  const { mcpManager } = await import('../skills/mcp-manager.js');
199
- const [catalogConfig, entityTypes, mcpTools, trackedModels] = await Promise.all([
203
+ const { a2aClient } = await import('../agents/a2a-client.js');
204
+ const [catalogConfig, entityTypes, mcpTools, a2aAgents, trackedModels] = await Promise.all([
200
205
  loadFeralCatalogConfig(),
201
206
  loadEntityTypes(),
202
207
  mcpManager.discoverAllTools(),
208
+ a2aClient.discoverAllAgents(),
203
209
  getTrackedModels(),
204
210
  ]);
205
211
  // 3. Build catalog from all sources
@@ -214,6 +220,7 @@ export async function bootstrapFeral(processSources = []) {
214
220
  new IntrospectCatalogSource(),
215
221
  new PampCatalogSource(),
216
222
  new McpCatalogSource(mcpTools),
223
+ new A2ACatalogSource(a2aAgents),
217
224
  new UsageCatalogSource(trackedModels),
218
225
  ]);
219
226
  // 4. Load process definitions from {vault}/.phaibel/processes/
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../src/feral/bootstrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../src/feral/bootstrap.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { CatalogSource } from './catalog.js';
2
+ import type { CatalogNode } from './catalog-node.js';
3
+ import type { A2ADiscoveredAgent } from '../../agents/a2a-client.js';
4
+ /**
5
+ * Provides CatalogNodes for skills discovered from A2A agents.
6
+ * Each agent skill becomes a selectable catalog node.
7
+ * Agents with no declared skills get a single "chat" node.
8
+ */
9
+ export declare class A2ACatalogSource implements CatalogSource {
10
+ private agents;
11
+ constructor(agents: A2ADiscoveredAgent[]);
12
+ getCatalogNodes(): CatalogNode[];
13
+ }
14
+ //# sourceMappingURL=a2a-catalog-source.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a2a-catalog-source.d.ts","sourceRoot":"","sources":["../../../src/feral/catalog/a2a-catalog-source.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE;;;;GAIG;AACH,qBAAa,gBAAiB,YAAW,aAAa;IAClD,OAAO,CAAC,MAAM,CAAuB;gBAEzB,MAAM,EAAE,kBAAkB,EAAE;IAIxC,eAAe,IAAI,WAAW,EAAE;CAsCnC"}
@@ -0,0 +1,53 @@
1
+ // ─────────────────────────────────────────────────────────────────────────────
2
+ // Feral A2A — Catalog Source
3
+ // ─────────────────────────────────────────────────────────────────────────────
4
+ import { createCatalogNode } from './catalog-node.js';
5
+ /**
6
+ * Provides CatalogNodes for skills discovered from A2A agents.
7
+ * Each agent skill becomes a selectable catalog node.
8
+ * Agents with no declared skills get a single "chat" node.
9
+ */
10
+ export class A2ACatalogSource {
11
+ agents;
12
+ constructor(agents) {
13
+ this.agents = agents;
14
+ }
15
+ getCatalogNodes() {
16
+ const nodes = [];
17
+ for (const agent of this.agents) {
18
+ if (agent.skills.length > 0) {
19
+ // One catalog node per declared skill
20
+ for (const skill of agent.skills) {
21
+ nodes.push(createCatalogNode({
22
+ key: `a2a_${agent.agentId}_${skill.id}`,
23
+ nodeCodeKey: 'a2a_send_task',
24
+ name: `${agent.agentName}: ${skill.name}`,
25
+ group: `agent:${agent.agentId}`,
26
+ description: skill.description,
27
+ configuration: {
28
+ agent_id: agent.agentId,
29
+ agent_name: agent.agentName,
30
+ skill_id: skill.id,
31
+ },
32
+ }));
33
+ }
34
+ }
35
+ else {
36
+ // Agent without declared skills — single chat node
37
+ nodes.push(createCatalogNode({
38
+ key: `a2a_${agent.agentId}_chat`,
39
+ nodeCodeKey: 'a2a_send_task',
40
+ name: `${agent.agentName}: Chat`,
41
+ group: `agent:${agent.agentId}`,
42
+ description: agent.description,
43
+ configuration: {
44
+ agent_id: agent.agentId,
45
+ agent_name: agent.agentName,
46
+ },
47
+ }));
48
+ }
49
+ }
50
+ return nodes;
51
+ }
52
+ }
53
+ //# sourceMappingURL=a2a-catalog-source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a2a-catalog-source.js","sourceRoot":"","sources":["../../../src/feral/catalog/a2a-catalog-source.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,6BAA6B;AAC7B,gFAAgF;AAIhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGtD;;;;GAIG;AACH,MAAM,OAAO,gBAAgB;IACjB,MAAM,CAAuB;IAErC,YAAY,MAA4B;QACpC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED,eAAe;QACX,MAAM,KAAK,GAAkB,EAAE,CAAC;QAEhC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC9B,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,sCAAsC;gBACtC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBAC/B,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC;wBACzB,GAAG,EAAE,OAAO,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,EAAE,EAAE;wBACvC,WAAW,EAAE,eAAe;wBAC5B,IAAI,EAAE,GAAG,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,IAAI,EAAE;wBACzC,KAAK,EAAE,SAAS,KAAK,CAAC,OAAO,EAAE;wBAC/B,WAAW,EAAE,KAAK,CAAC,WAAW;wBAC9B,aAAa,EAAE;4BACX,QAAQ,EAAE,KAAK,CAAC,OAAO;4BACvB,UAAU,EAAE,KAAK,CAAC,SAAS;4BAC3B,QAAQ,EAAE,KAAK,CAAC,EAAE;yBACrB;qBACJ,CAAC,CAAC,CAAC;gBACR,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,mDAAmD;gBACnD,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC;oBACzB,GAAG,EAAE,OAAO,KAAK,CAAC,OAAO,OAAO;oBAChC,WAAW,EAAE,eAAe;oBAC5B,IAAI,EAAE,GAAG,KAAK,CAAC,SAAS,QAAQ;oBAChC,KAAK,EAAE,SAAS,KAAK,CAAC,OAAO,EAAE;oBAC/B,WAAW,EAAE,KAAK,CAAC,WAAW;oBAC9B,aAAa,EAAE;wBACX,QAAQ,EAAE,KAAK,CAAC,OAAO;wBACvB,UAAU,EAAE,KAAK,CAAC,SAAS;qBAC9B;iBACJ,CAAC,CAAC,CAAC;YACR,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ"}
@@ -0,0 +1,12 @@
1
+ import type { Context } from '../../context/context.js';
2
+ import type { Result } from '../../result/result.js';
3
+ import type { ConfigurationDescription, ResultDescription } from '../../configuration/configuration-description.js';
4
+ import { AbstractNodeCode } from '../abstract-node-code.js';
5
+ export declare class A2ASendTaskNodeCode extends AbstractNodeCode {
6
+ readonly allowExtraConfig = true;
7
+ static readonly configDescriptions: ConfigurationDescription[];
8
+ static readonly resultDescriptions: ResultDescription[];
9
+ constructor();
10
+ process(context: Context): Promise<Result>;
11
+ }
12
+ //# sourceMappingURL=a2a-send-task-node-code.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a2a-send-task-node-code.d.ts","sourceRoot":"","sources":["../../../../src/feral/node-code/a2a/a2a-send-task-node-code.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,KAAK,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AACpH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAI5D,qBAAa,mBAAoB,SAAQ,gBAAgB;IACrD,QAAQ,CAAC,gBAAgB,QAAQ;IAEjC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,EAAE,CAQ5D;IACF,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,CAGrD;;IAMI,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;CAgDnD"}
@@ -0,0 +1,95 @@
1
+ // ─────────────────────────────────────────────────────────────────────────────
2
+ // Feral CCF — A2A Send Task NodeCode
3
+ // ─────────────────────────────────────────────────────────────────────────────
4
+ import { ResultStatus } from '../../result/result.js';
5
+ import { AbstractNodeCode } from '../abstract-node-code.js';
6
+ import { NodeCodeCategory } from '../node-code.js';
7
+ import { a2aClient } from '../../../agents/a2a-client.js';
8
+ export class A2ASendTaskNodeCode extends AbstractNodeCode {
9
+ allowExtraConfig = true;
10
+ static configDescriptions = [
11
+ { key: 'agent_id', name: 'Agent ID', description: 'The A2A agent ID to send the task to.', type: 'string' },
12
+ { key: 'agent_name', name: 'Agent Name', description: 'Display name of the remote agent.', type: 'string', isOptional: true },
13
+ { key: 'skill_id', name: 'Skill ID', description: 'Optional skill to invoke on the remote agent.', type: 'string', isOptional: true },
14
+ { key: 'message_context_path', name: 'Message Path', description: 'Context key containing the message text to send.', type: 'string', default: 'user_message' },
15
+ { key: 'data_context_path', name: 'Data Path', description: 'Context key containing structured data to include.', type: 'string', isOptional: true },
16
+ { key: 'response_context_path', name: 'Response Path', description: 'Context key to store the agent response text.', type: 'string', default: 'a2a_response' },
17
+ { key: 'task_context_path', name: 'Task Path', description: 'Context key to store the full task result object.', type: 'string', isOptional: true },
18
+ ];
19
+ static resultDescriptions = [
20
+ { status: ResultStatus.OK, description: 'A2A task completed successfully.' },
21
+ { status: ResultStatus.ERROR, description: 'A2A task failed or agent returned an error.' },
22
+ ];
23
+ constructor() {
24
+ super('a2a_send_task', 'A2A Send Task', 'Send a task to a remote A2A agent.', NodeCodeCategory.DATA);
25
+ }
26
+ async process(context) {
27
+ const agentId = this.getRequiredConfigValue('agent_id');
28
+ const agentName = this.getOptionalConfigValue('agent_name');
29
+ const skillId = this.getOptionalConfigValue('skill_id');
30
+ const messagePath = this.getRequiredConfigValue('message_context_path', 'user_message');
31
+ const dataPath = this.getOptionalConfigValue('data_context_path');
32
+ const responsePath = this.getRequiredConfigValue('response_context_path', 'a2a_response');
33
+ const taskPath = this.getOptionalConfigValue('task_context_path');
34
+ // Get message from context
35
+ const message = context.has(messagePath)
36
+ ? String(context.get(messagePath))
37
+ : '';
38
+ // Get optional structured data
39
+ let data;
40
+ if (dataPath && context.has(dataPath)) {
41
+ const raw = context.get(dataPath);
42
+ data = typeof raw === 'object' && raw !== null ? raw : undefined;
43
+ }
44
+ const label = agentName || agentId;
45
+ try {
46
+ const result = await a2aClient.sendTask(agentId, message, {
47
+ skillId: skillId || undefined,
48
+ data,
49
+ });
50
+ // Store full task result if requested
51
+ if (taskPath) {
52
+ context.set(taskPath, result);
53
+ }
54
+ // Extract text response from artifacts or history
55
+ const responseText = extractTextResponse(result);
56
+ context.set(responsePath, responseText);
57
+ if (result.status.state === 'failed') {
58
+ return this.result(ResultStatus.ERROR, `Agent "${label}" task failed: ${responseText}`);
59
+ }
60
+ return this.result(ResultStatus.OK, `Agent "${label}" responded successfully.`);
61
+ }
62
+ catch (error) {
63
+ const message = error instanceof Error ? error.message : String(error);
64
+ return this.result(ResultStatus.ERROR, `A2A call to "${label}" failed: ${message}`);
65
+ }
66
+ }
67
+ }
68
+ /**
69
+ * Extract text from A2A task result — looks at artifacts first, then history.
70
+ */
71
+ function extractTextResponse(result) {
72
+ // Try artifacts first
73
+ if (result.artifacts) {
74
+ const texts = result.artifacts
75
+ .flatMap(a => a.parts)
76
+ .filter(p => p.type === 'text' && p.text)
77
+ .map(p => p.text);
78
+ if (texts.length > 0)
79
+ return texts.join('\n');
80
+ }
81
+ // Fall back to last agent message in history
82
+ if (result.history) {
83
+ const agentMessages = result.history.filter(m => m.role === 'agent');
84
+ if (agentMessages.length > 0) {
85
+ const last = agentMessages[agentMessages.length - 1];
86
+ const texts = last.parts
87
+ .filter(p => p.type === 'text' && p.text)
88
+ .map(p => p.text);
89
+ if (texts.length > 0)
90
+ return texts.join('\n');
91
+ }
92
+ }
93
+ return '';
94
+ }
95
+ //# sourceMappingURL=a2a-send-task-node-code.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a2a-send-task-node-code.js","sourceRoot":"","sources":["../../../../src/feral/node-code/a2a/a2a-send-task-node-code.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAIA,OAAO,oBAAoB,CAAC;AAE5B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqBpC,eAAO,MAAM,OAAO,SAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAIA,OAAO,oBAAoB,CAAC;AAE5B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsBpC,eAAO,MAAM,OAAO,SAAgB,CAAC"}
package/dist/index.js CHANGED
@@ -13,6 +13,7 @@ import { setupCommand } from './commands/setup.js';
13
13
  import { cronCommand } from './commands/cron.js';
14
14
  import { calCommand } from './commands/cal.js';
15
15
  import { skillCommand } from './commands/skill.js';
16
+ import { agentCommand } from './commands/agent.js';
16
17
  import { entityTypeCommand } from './commands/entity-type.js';
17
18
  import { entityCommand } from './commands/entity.js';
18
19
  import { timeCommand } from './commands/time.js';
@@ -41,6 +42,7 @@ program.addCommand(entityCommand);
41
42
  program.addCommand(cronCommand);
42
43
  program.addCommand(calCommand);
43
44
  program.addCommand(skillCommand);
45
+ program.addCommand(agentCommand);
44
46
  // Tool command - run any registered tool
45
47
  program
46
48
  .command('tool <name> [input]')
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/paths.d.ts CHANGED
@@ -13,6 +13,7 @@ export declare function getConfigPath(): Promise<string>;
13
13
  export declare function getEntityTypesPath(): Promise<string>;
14
14
  export declare function getFeralCatalogPath(): Promise<string>;
15
15
  export declare function getSkillsConfigPath(): Promise<string>;
16
+ export declare function getAgentsConfigPath(): Promise<string>;
16
17
  export declare function getCalConfigPath(): Promise<string>;
17
18
  export declare function getEmbeddingsPath(): Promise<string>;
18
19
  export declare function getQueueStatePath(): Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":"AAgBA,gEAAgE;AAChE,eAAO,MAAM,UAAU,QAAsC,CAAC;AAE9D,+DAA+D;AAC/D,eAAO,MAAM,YAAY,QAAwC,CAAC;AAGlE,eAAO,MAAM,QAAQ,QAAuC,CAAC;AAC7D,eAAO,MAAM,WAAW,QAAwC,CAAC;AAEjE;;;GAGG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAMzD;AAID,wBAAsB,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,CAErD;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,CAE1D;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC,CAE3D;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC,CAE3D;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CAExD;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAEzD;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAEzD;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAEzD;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CAExD;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAEvD;AAED,wBAAsB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAElD;AAED,wBAAsB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAElD"}
1
+ {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":"AAgBA,gEAAgE;AAChE,eAAO,MAAM,UAAU,QAAsC,CAAC;AAE9D,+DAA+D;AAC/D,eAAO,MAAM,YAAY,QAAwC,CAAC;AAGlE,eAAO,MAAM,QAAQ,QAAuC,CAAC;AAC7D,eAAO,MAAM,WAAW,QAAwC,CAAC;AAEjE;;;GAGG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAMzD;AAID,wBAAsB,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,CAErD;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,CAE1D;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC,CAE3D;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC,CAE3D;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC,CAE3D;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CAExD;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAEzD;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAEzD;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAEzD;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CAExD;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAEvD;AAED,wBAAsB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAElD;AAED,wBAAsB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAElD"}
package/dist/paths.js CHANGED
@@ -43,6 +43,9 @@ export async function getFeralCatalogPath() {
43
43
  export async function getSkillsConfigPath() {
44
44
  return path.join(await getVaultConfigDir(), 'skills.json');
45
45
  }
46
+ export async function getAgentsConfigPath() {
47
+ return path.join(await getVaultConfigDir(), 'agents.json');
48
+ }
46
49
  export async function getCalConfigPath() {
47
50
  return path.join(await getVaultConfigDir(), 'cal-config.json');
48
51
  }
package/dist/paths.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"paths.js","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paths.js","sourceRoot":"","sources":["../src/paths.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "phaibel",
3
- "version": "4.0.46",
3
+ "version": "4.0.47",
4
4
  "description": "AI personal agent that dynamically assembles executable processes from composable code blocks — powered by FeralCCF",
5
5
  "type": "module",
6
6
  "engines": {