phaibel 4.0.45 → 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.
Files changed (42) hide show
  1. package/dist/agents/a2a-client.d.ts +71 -0
  2. package/dist/agents/a2a-client.d.ts.map +1 -0
  3. package/dist/agents/a2a-client.js +155 -0
  4. package/dist/agents/a2a-client.js.map +1 -0
  5. package/dist/agents/agent-config.d.ts +13 -0
  6. package/dist/agents/agent-config.d.ts.map +1 -0
  7. package/dist/agents/agent-config.js +23 -0
  8. package/dist/agents/agent-config.js.map +1 -0
  9. package/dist/commands/agent.d.ts +4 -0
  10. package/dist/commands/agent.d.ts.map +1 -0
  11. package/dist/commands/agent.js +128 -0
  12. package/dist/commands/agent.js.map +1 -0
  13. package/dist/feral/bootstrap.d.ts.map +1 -1
  14. package/dist/feral/bootstrap.js +10 -3
  15. package/dist/feral/bootstrap.js.map +1 -1
  16. package/dist/feral/catalog/a2a-catalog-source.d.ts +14 -0
  17. package/dist/feral/catalog/a2a-catalog-source.d.ts.map +1 -0
  18. package/dist/feral/catalog/a2a-catalog-source.js +53 -0
  19. package/dist/feral/catalog/a2a-catalog-source.js.map +1 -0
  20. package/dist/feral/node-code/a2a/a2a-send-task-node-code.d.ts +12 -0
  21. package/dist/feral/node-code/a2a/a2a-send-task-node-code.d.ts.map +1 -0
  22. package/dist/feral/node-code/a2a/a2a-send-task-node-code.js +95 -0
  23. package/dist/feral/node-code/a2a/a2a-send-task-node-code.js.map +1 -0
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +2 -0
  26. package/dist/index.js.map +1 -1
  27. package/dist/paths.d.ts +1 -0
  28. package/dist/paths.d.ts.map +1 -1
  29. package/dist/paths.js +3 -0
  30. package/dist/paths.js.map +1 -1
  31. package/dist/service/a2a-server.d.ts +12 -0
  32. package/dist/service/a2a-server.d.ts.map +1 -0
  33. package/dist/service/a2a-server.js +255 -0
  34. package/dist/service/a2a-server.js.map +1 -0
  35. package/dist/service/mcp-server.d.ts +7 -0
  36. package/dist/service/mcp-server.d.ts.map +1 -0
  37. package/dist/service/mcp-server.js +151 -0
  38. package/dist/service/mcp-server.js.map +1 -0
  39. package/dist/service/web-server.d.ts.map +1 -1
  40. package/dist/service/web-server.js +17 -0
  41. package/dist/service/web-server.js.map +1 -1
  42. package/package.json +1 -1
@@ -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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"}
@@ -0,0 +1,12 @@
1
+ import type http from 'http';
2
+ /**
3
+ * Handle the Agent Card request.
4
+ * GET /.well-known/agent.json
5
+ */
6
+ export declare function handleAgentCard(req: http.IncomingMessage, res: http.ServerResponse): void;
7
+ /**
8
+ * Handle A2A JSON-RPC requests.
9
+ * POST /a2a
10
+ */
11
+ export declare function handleA2ARequest(req: http.IncomingMessage, res: http.ServerResponse): Promise<void>;
12
+ //# sourceMappingURL=a2a-server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a2a-server.d.ts","sourceRoot":"","sources":["../../src/service/a2a-server.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAyK7B;;;GAGG;AACH,wBAAgB,eAAe,CAC3B,GAAG,EAAE,IAAI,CAAC,eAAe,EACzB,GAAG,EAAE,IAAI,CAAC,cAAc,GACzB,IAAI,CAKN;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CAClC,GAAG,EAAE,IAAI,CAAC,eAAe,EACzB,GAAG,EAAE,IAAI,CAAC,cAAc,GACzB,OAAO,CAAC,IAAI,CAAC,CA4Gf"}
@@ -0,0 +1,255 @@
1
+ // ─────────────────────────────────────────────────────────────────────────────
2
+ // A2A Server — Agent-to-Agent Protocol for Phaibel
3
+ //
4
+ // Implements the Google A2A protocol so other agents can interact with Phaibel:
5
+ // GET /.well-known/agent.json → Agent Card (discovery)
6
+ // POST /a2a → tasks/send (send a task)
7
+ // GET /a2a → tasks/get (get task status)
8
+ //
9
+ // A2A spec: https://google.github.io/A2A/
10
+ // ─────────────────────────────────────────────────────────────────────────────
11
+ import crypto from 'crypto';
12
+ import { feralChatHeadless } from '../commands/chat.js';
13
+ import { listEntities } from '../entities/entity.js';
14
+ import { getEntityIndex } from '../entities/entity-index.js';
15
+ import { loadEntityTypes } from '../entities/entity-type-config.js';
16
+ import { debug } from '../utils/debug.js';
17
+ // ── In-memory task store (simple, no persistence needed) ────────────────────
18
+ const tasks = new Map();
19
+ const MAX_TASKS = 100;
20
+ function pruneOldTasks() {
21
+ if (tasks.size <= MAX_TASKS)
22
+ return;
23
+ const keys = Array.from(tasks.keys());
24
+ for (let i = 0; i < keys.length - MAX_TASKS; i++) {
25
+ tasks.delete(keys[i]);
26
+ }
27
+ }
28
+ // ── Agent Card ──────────────────────────────────────────────────────────────
29
+ const AGENT_CARD = {
30
+ name: 'Phaibel',
31
+ description: 'Personal Digital Agent — manages tasks, events, notes, goals, and more in a structured vault with AI-powered workflows.',
32
+ url: '', // filled dynamically
33
+ version: '1.0.0',
34
+ capabilities: {
35
+ streaming: false,
36
+ pushNotifications: false,
37
+ stateTransitionHistory: false,
38
+ },
39
+ authentication: {
40
+ schemes: [],
41
+ },
42
+ defaultInputModes: ['text'],
43
+ defaultOutputModes: ['text'],
44
+ skills: [
45
+ {
46
+ id: 'chat',
47
+ name: 'Chat',
48
+ description: 'Send a message through the full Phaibel AI pipeline — understands natural language, creates/updates entities, runs workflows.',
49
+ tags: ['chat', 'ai', 'agent'],
50
+ examples: [
51
+ 'Create a todo to buy groceries',
52
+ 'What events do I have this week?',
53
+ 'Link the meeting with the project goal',
54
+ ],
55
+ },
56
+ {
57
+ id: 'query',
58
+ name: 'Query Vault',
59
+ description: 'Search and list entities in the vault. Supports filtering by type, status, and full-text search.',
60
+ tags: ['search', 'entities', 'data'],
61
+ examples: [
62
+ 'List all active todos',
63
+ 'Search for anything about the project',
64
+ ],
65
+ },
66
+ ],
67
+ };
68
+ // ── Skill handlers ──────────────────────────────────────────────────────────
69
+ async function handleChatSkill(text) {
70
+ const response = await feralChatHeadless(text);
71
+ return [{
72
+ name: 'response',
73
+ parts: [{ type: 'text', text: response }],
74
+ }];
75
+ }
76
+ async function handleQuerySkill(data) {
77
+ const action = data.action || 'search';
78
+ if (action === 'list') {
79
+ const type = data.type || 'todo';
80
+ const filters = {};
81
+ if (data.status)
82
+ filters.status = data.status;
83
+ if (data.tag)
84
+ filters.tag = data.tag;
85
+ const entities = await listEntities(type, filters);
86
+ const summary = entities.map(e => ({
87
+ id: e.meta.id,
88
+ title: e.meta.title,
89
+ status: e.meta.status,
90
+ }));
91
+ return [{
92
+ name: 'entities',
93
+ parts: [{ type: 'data', data: { type, count: summary.length, entities: summary } }],
94
+ }];
95
+ }
96
+ if (action === 'search') {
97
+ const query = data.query || '';
98
+ const index = getEntityIndex();
99
+ const results = index.search(query, data.type);
100
+ const summary = results.slice(0, 20).map(r => ({
101
+ type: r.node.type, id: r.node.id, title: r.node.title, score: r.score,
102
+ }));
103
+ return [{
104
+ name: 'search_results',
105
+ parts: [{ type: 'data', data: { query, count: summary.length, results: summary } }],
106
+ }];
107
+ }
108
+ if (action === 'types') {
109
+ const types = await loadEntityTypes();
110
+ const summary = types.map(t => ({
111
+ name: t.name,
112
+ plural: t.plural,
113
+ fields: t.fields.map(f => f.key),
114
+ }));
115
+ return [{
116
+ name: 'entity_types',
117
+ parts: [{ type: 'data', data: { count: summary.length, types: summary } }],
118
+ }];
119
+ }
120
+ throw new Error(`Unknown query action: ${action}`);
121
+ }
122
+ // ── Request handling ────────────────────────────────────────────────────────
123
+ function readBody(req) {
124
+ return new Promise((resolve, reject) => {
125
+ const chunks = [];
126
+ req.on('data', (c) => chunks.push(c));
127
+ req.on('end', () => resolve(Buffer.concat(chunks).toString()));
128
+ req.on('error', reject);
129
+ });
130
+ }
131
+ function json(res, status, body) {
132
+ res.writeHead(status, { 'Content-Type': 'application/json' });
133
+ res.end(JSON.stringify(body));
134
+ }
135
+ function jsonrpcResponse(id, result) {
136
+ return { jsonrpc: '2.0', id, result };
137
+ }
138
+ function jsonrpcError(id, code, message) {
139
+ return { jsonrpc: '2.0', id, error: { code, message } };
140
+ }
141
+ /**
142
+ * Handle the Agent Card request.
143
+ * GET /.well-known/agent.json
144
+ */
145
+ export function handleAgentCard(req, res) {
146
+ const host = req.headers.host || 'localhost:3737';
147
+ const proto = req.headers['x-forwarded-proto'] || 'http';
148
+ const card = { ...AGENT_CARD, url: `${proto}://${host}` };
149
+ json(res, 200, card);
150
+ }
151
+ /**
152
+ * Handle A2A JSON-RPC requests.
153
+ * POST /a2a
154
+ */
155
+ export async function handleA2ARequest(req, res) {
156
+ let body;
157
+ try {
158
+ const raw = await readBody(req);
159
+ body = JSON.parse(raw);
160
+ }
161
+ catch {
162
+ json(res, 400, jsonrpcError(null, -32700, 'Parse error'));
163
+ return;
164
+ }
165
+ const method = body.method;
166
+ const params = (body.params || {});
167
+ const id = body.id;
168
+ if (!method) {
169
+ json(res, 400, jsonrpcError(id, -32600, 'Invalid request: missing method'));
170
+ return;
171
+ }
172
+ try {
173
+ switch (method) {
174
+ case 'tasks/send': {
175
+ const taskId = params.id || crypto.randomUUID();
176
+ const message = params.message;
177
+ if (!message || !message.parts || message.parts.length === 0) {
178
+ json(res, 400, jsonrpcError(id, -32602, 'Invalid params: message with parts required'));
179
+ return;
180
+ }
181
+ // Create task in submitted state
182
+ const task = {
183
+ id: taskId,
184
+ status: { state: 'working' },
185
+ history: [message],
186
+ };
187
+ tasks.set(taskId, task);
188
+ pruneOldTasks();
189
+ // Extract text and data from parts
190
+ const textParts = message.parts.filter((p) => p.type === 'text');
191
+ const dataParts = message.parts.filter((p) => p.type === 'data');
192
+ const text = textParts.map(p => p.text).join('\n');
193
+ // Determine skill from data parts or default to chat
194
+ const skillData = dataParts.find(p => p.data.skill)?.data;
195
+ const skill = skillData?.skill || 'chat';
196
+ try {
197
+ let artifacts;
198
+ if (skill === 'query' && skillData) {
199
+ artifacts = await handleQuerySkill(skillData);
200
+ }
201
+ else {
202
+ artifacts = await handleChatSkill(text || JSON.stringify(skillData || {}));
203
+ }
204
+ task.status = { state: 'completed' };
205
+ task.artifacts = artifacts;
206
+ task.history.push({
207
+ role: 'agent',
208
+ parts: artifacts.flatMap(a => a.parts),
209
+ });
210
+ debug('a2a', `Task ${taskId} completed (skill: ${skill})`);
211
+ }
212
+ catch (err) {
213
+ task.status = { state: 'failed' };
214
+ task.history.push({
215
+ role: 'agent',
216
+ parts: [{ type: 'text', text: `Error: ${err instanceof Error ? err.message : String(err)}` }],
217
+ });
218
+ debug('a2a', `Task ${taskId} failed: ${err}`);
219
+ }
220
+ json(res, 200, jsonrpcResponse(id, task));
221
+ return;
222
+ }
223
+ case 'tasks/get': {
224
+ const taskId = params.id;
225
+ if (!taskId) {
226
+ json(res, 400, jsonrpcError(id, -32602, 'Invalid params: id required'));
227
+ return;
228
+ }
229
+ const task = tasks.get(taskId);
230
+ if (!task) {
231
+ json(res, 404, jsonrpcError(id, -32001, `Task not found: ${taskId}`));
232
+ return;
233
+ }
234
+ json(res, 200, jsonrpcResponse(id, task));
235
+ return;
236
+ }
237
+ case 'tasks/cancel': {
238
+ const taskId = params.id;
239
+ const task = tasks.get(taskId);
240
+ if (task && task.status.state === 'working') {
241
+ task.status = { state: 'canceled' };
242
+ }
243
+ json(res, 200, jsonrpcResponse(id, task || null));
244
+ return;
245
+ }
246
+ default:
247
+ json(res, 400, jsonrpcError(id, -32601, `Method not found: ${method}`));
248
+ }
249
+ }
250
+ catch (err) {
251
+ debug('a2a', `Error handling ${method}: ${err}`);
252
+ json(res, 500, jsonrpcError(id, -32603, err instanceof Error ? err.message : 'Internal error'));
253
+ }
254
+ }
255
+ //# sourceMappingURL=a2a-server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a2a-server.js","sourceRoot":"","sources":["../../src/service/a2a-server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type http from 'http';
2
+ /**
3
+ * Handle an MCP request via Streamable HTTP.
4
+ * Route: POST /mcp, GET /mcp, DELETE /mcp
5
+ */
6
+ export declare function handleMcpRequest(req: http.IncomingMessage, res: http.ServerResponse): Promise<void>;
7
+ //# sourceMappingURL=mcp-server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../../src/service/mcp-server.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AA6J7B;;;GAGG;AACH,wBAAsB,gBAAgB,CAClC,GAAG,EAAE,IAAI,CAAC,eAAe,EACzB,GAAG,EAAE,IAAI,CAAC,cAAc,GACzB,OAAO,CAAC,IAAI,CAAC,CAYf"}