agenthub-multiagent-mcp 1.1.5 → 1.3.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.
@@ -1,14 +1,28 @@
1
1
  /**
2
2
  * MCP tool definitions and handlers
3
3
  */
4
- import { ApiClient } from "../client.js";
4
+ import { ApiClient, Message } from "../client.js";
5
5
  import type { Tool } from "@modelcontextprotocol/sdk/types.js";
6
+ export interface PushedItems {
7
+ tasks: PendingTask[];
8
+ messages: Message[];
9
+ }
6
10
  export interface ToolContext {
7
11
  getCurrentAgentId: () => string;
8
12
  setCurrentAgentId: (id: string) => void;
9
13
  stopHeartbeat: () => void;
10
14
  getWorkingDir: () => string;
15
+ getPushedItems: () => PushedItems;
16
+ }
17
+ interface PendingTask {
18
+ id: string;
19
+ assigned_by: string;
20
+ assigned_by_name?: string;
21
+ task: string;
22
+ priority: string;
23
+ created_at: string;
11
24
  }
12
25
  export declare function registerTools(): Tool[];
13
26
  export declare function handleToolCall(name: string, args: Record<string, unknown>, client: ApiClient, context: ToolContext): Promise<unknown>;
27
+ export {};
14
28
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAW,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAG/D,MAAM,WAAW,WAAW;IAC1B,iBAAiB,EAAE,MAAM,MAAM,CAAC;IAChC,iBAAiB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,aAAa,EAAE,MAAM,MAAM,CAAC;CAC7B;AA2FD,wBAAgB,aAAa,IAAI,IAAI,EAAE,CAkVtC;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,OAAO,CAAC,CAoOlB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,OAAO,EAAqD,MAAM,cAAc,CAAC;AACrG,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAI/D,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,iBAAiB,EAAE,MAAM,MAAM,CAAC;IAChC,iBAAiB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,aAAa,EAAE,MAAM,MAAM,CAAC;IAC5B,cAAc,EAAE,MAAM,WAAW,CAAC;CACnC;AAED,UAAU,WAAW;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AA8ID,wBAAgB,aAAa,IAAI,IAAI,EAAE,CA6ZtC;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,OAAO,CAAC,CAuSlB"}
@@ -2,19 +2,40 @@
2
2
  * MCP tool definitions and handlers
3
3
  */
4
4
  import * as state from "../state.js";
5
+ import open from "open";
5
6
  /**
6
- * Wraps a tool response with pending messages
7
- * This enables automatic message delivery without extra API calls
7
+ * Wraps a tool response with pending messages and tasks
8
+ * This enables automatic delivery without extra API calls
9
+ * Includes items pushed via WebSocket
8
10
  */
9
- async function wrapWithMessages(client, agentId, result) {
11
+ async function wrapWithPendingItems(client, agentId, result, context) {
10
12
  // If not registered, return raw result
11
13
  if (!agentId)
12
14
  return result;
13
15
  try {
14
- // Fetch unread messages
15
- const inbox = await client.getInbox(agentId, true, 10);
16
- const messages = inbox.messages || [];
17
- // Sort: urgent first, then by created_at
16
+ // Get items pushed via WebSocket (if connected)
17
+ const pushedItems = context?.getPushedItems() || { tasks: [], messages: [] };
18
+ // Fetch unread messages and pending tasks in parallel
19
+ const [inbox, tasksResponse] = await Promise.all([
20
+ client.getInbox(agentId, true, 10),
21
+ client.getPendingTasks(agentId),
22
+ ]);
23
+ // Merge pushed items with fetched items (deduplicating by ID)
24
+ const fetchedMessages = inbox.messages || [];
25
+ const fetchedTasks = (tasksResponse.tasks || []);
26
+ // Deduplicate messages
27
+ const messageIds = new Set(fetchedMessages.map((m) => m.id));
28
+ const messages = [
29
+ ...fetchedMessages,
30
+ ...pushedItems.messages.filter((m) => !messageIds.has(m.id)),
31
+ ];
32
+ // Deduplicate tasks
33
+ const taskIds = new Set(fetchedTasks.map((t) => t.id));
34
+ const tasks = [
35
+ ...fetchedTasks,
36
+ ...pushedItems.tasks.filter((t) => !taskIds.has(t.id)),
37
+ ];
38
+ // Sort messages: urgent first, then by created_at
18
39
  messages.sort((a, b) => {
19
40
  const aUrgent = isUrgentMessage(a);
20
41
  const bUrgent = isUrgentMessage(b);
@@ -24,27 +45,40 @@ async function wrapWithMessages(client, agentId, result) {
24
45
  return 1;
25
46
  return new Date(b.created_at).getTime() - new Date(a.created_at).getTime();
26
47
  });
27
- // Find urgent message for action
28
- const urgentMsg = messages.find(isUrgentMessage);
48
+ // Determine urgent action - tasks take priority over messages
29
49
  let urgentAction = null;
30
- if (urgentMsg) {
50
+ // Check for pending tasks first (they're actionable)
51
+ if (tasks.length > 0) {
52
+ const highPriorityTask = tasks.find((t) => t.priority === "high") || tasks[0];
31
53
  urgentAction = {
32
54
  required: true,
33
- instruction: buildUrgentInstruction(urgentMsg),
34
- message: urgentMsg,
55
+ instruction: buildTaskInstruction(highPriorityTask),
56
+ task: highPriorityTask,
35
57
  };
36
58
  }
59
+ else {
60
+ // Check for urgent messages
61
+ const urgentMsg = messages.find(isUrgentMessage);
62
+ if (urgentMsg) {
63
+ urgentAction = {
64
+ required: true,
65
+ instruction: buildUrgentInstruction(urgentMsg),
66
+ message: urgentMsg,
67
+ };
68
+ }
69
+ }
37
70
  return {
38
71
  result,
39
72
  pending_messages: messages,
40
- pending_count: inbox.total,
41
- has_more: inbox.total > messages.length,
73
+ pending_messages_count: messages.length,
74
+ pending_tasks: tasks,
75
+ pending_tasks_count: tasks.length,
42
76
  urgent_action: urgentAction,
43
77
  };
44
78
  }
45
79
  catch (error) {
46
- // Don't break tool call if message fetch fails
47
- console.warn("Failed to fetch messages for wrapping:", error);
80
+ // Don't break tool call if fetch fails
81
+ console.warn("Failed to fetch pending items for wrapping:", error);
48
82
  return result;
49
83
  }
50
84
  }
@@ -67,6 +101,17 @@ Details: ${msg.body}
67
101
 
68
102
  Spawn a subagent with Task tool to research and respond to this query. Use send_message to reply when done.`;
69
103
  }
104
+ /**
105
+ * Build instruction text for pending tasks
106
+ */
107
+ function buildTaskInstruction(task) {
108
+ const assignerName = task.assigned_by_name || task.assigned_by;
109
+ return `ACTION REQUIRED: You have a task assigned by ${assignerName}.
110
+
111
+ Task: ${task.task}
112
+
113
+ Use accept_task with task_id="${task.id}" to accept and start working, or decline_task to decline with a reason.`;
114
+ }
70
115
  export function registerTools() {
71
116
  return [
72
117
  // Registration tools
@@ -106,6 +151,10 @@ export function registerTools() {
106
151
  type: "string",
107
152
  description: "Project name (optional)",
108
153
  },
154
+ task_id: {
155
+ type: "string",
156
+ description: "Optional: ID of a ticket system task to link this work to",
157
+ },
109
158
  },
110
159
  required: ["task"],
111
160
  },
@@ -399,6 +448,76 @@ export function registerTools() {
399
448
  required: ["task_id", "reason"],
400
449
  },
401
450
  },
451
+ // Ticket system tools (for project management integration)
452
+ {
453
+ name: "get_available_tasks",
454
+ description: "Get tasks from the ticket system that are available for you to claim and work on",
455
+ inputSchema: {
456
+ type: "object",
457
+ properties: {
458
+ status: {
459
+ type: "string",
460
+ description: "Filter by status (default: todo)",
461
+ enum: ["backlog", "todo", "in_progress"],
462
+ },
463
+ project_id: {
464
+ type: "string",
465
+ description: "Filter by project ID (optional)",
466
+ },
467
+ priority: {
468
+ type: "string",
469
+ description: "Filter by priority (optional)",
470
+ enum: ["lowest", "low", "medium", "high", "highest"],
471
+ },
472
+ },
473
+ },
474
+ },
475
+ {
476
+ name: "get_task_context",
477
+ description: "Get full context for a ticket task including its parent story and epic",
478
+ inputSchema: {
479
+ type: "object",
480
+ properties: {
481
+ task_id: {
482
+ type: "string",
483
+ description: "ID of the task to get context for",
484
+ },
485
+ },
486
+ required: ["task_id"],
487
+ },
488
+ },
489
+ {
490
+ name: "claim_ticket_task",
491
+ description: "Claim a ticket task from the project board to work on",
492
+ inputSchema: {
493
+ type: "object",
494
+ properties: {
495
+ task_id: {
496
+ type: "string",
497
+ description: "ID of the task to claim",
498
+ },
499
+ },
500
+ required: ["task_id"],
501
+ },
502
+ },
503
+ {
504
+ name: "reach_checkpoint",
505
+ description: "Signal that you've reached a checkpoint and request human review before continuing",
506
+ inputSchema: {
507
+ type: "object",
508
+ properties: {
509
+ task_id: {
510
+ type: "string",
511
+ description: "ID of the task you're working on",
512
+ },
513
+ description: {
514
+ type: "string",
515
+ description: "Description of what you've accomplished and what you're waiting for review on",
516
+ },
517
+ },
518
+ required: ["task_id", "description"],
519
+ },
520
+ },
402
521
  ];
403
522
  }
404
523
  export async function handleToolCall(name, args, client, context) {
@@ -445,38 +564,70 @@ export async function handleToolCall(name, args, client, context) {
445
564
  }
446
565
  }
447
566
  }
448
- // Fresh registration
449
- // Auto-detect model from environment or use provided value
450
- const model = args.model ||
451
- process.env.CLAUDE_MODEL ||
452
- "claude-opus-4-5-20251101";
453
- const result = await client.registerAgent(requestedId, args.name, owner, workingDir, model);
454
- context.setCurrentAgentId(requestedId);
455
- // Save state for future reconnection (including name)
567
+ // Fresh registration - use browser-based flow
568
+ // Step 1: Initialize registration session
569
+ const initResult = await client.initRegistration(requestedId, args.name);
570
+ // Step 2: Open browser to dashboard
571
+ const dashboardUrl = client.getBaseUrl().replace('/api', '') + initResult.dashboard_url;
572
+ console.error(`Opening browser for agent registration: ${dashboardUrl}`);
573
+ await open(dashboardUrl);
574
+ // Step 3: Poll for completion (max 10 minutes)
575
+ const pollInterval = 3000; // 3 seconds
576
+ const maxPolls = 200; // 10 minutes
577
+ let pollCount = 0;
578
+ let registrationResult = null;
579
+ console.error('Waiting for browser registration to complete...');
580
+ while (pollCount < maxPolls) {
581
+ await new Promise(resolve => setTimeout(resolve, pollInterval));
582
+ pollCount++;
583
+ try {
584
+ const pollResult = await client.pollRegistrationCallback(initResult.session_token);
585
+ if (pollResult.status === 'completed') {
586
+ registrationResult = pollResult;
587
+ break;
588
+ }
589
+ else if (pollResult.status === 'expired') {
590
+ throw new Error('Registration session expired. Please try again.');
591
+ }
592
+ // status === 'pending' - continue polling
593
+ }
594
+ catch (error) {
595
+ // Non-fatal errors during polling - continue
596
+ console.warn('Poll error:', error);
597
+ }
598
+ }
599
+ if (!registrationResult || registrationResult.status !== 'completed') {
600
+ throw new Error('Registration timed out. Please try again.');
601
+ }
602
+ const agentId = registrationResult.agent_id;
603
+ context.setCurrentAgentId(agentId);
604
+ // Save state for future reconnection
456
605
  state.saveState(workingDir, {
457
- agent_id: requestedId,
458
- name: result.name,
606
+ agent_id: agentId,
607
+ name: registrationResult.agent_name || agentId,
459
608
  owner,
460
- token: result.token,
461
- registered_at: result.registered_at,
609
+ token: registrationResult.connect_token,
610
+ registered_at: new Date().toISOString(),
462
611
  });
463
612
  return {
464
- ...result,
465
- mode: "registered",
466
- message: `Registered as ${result.name || requestedId}. You have ${result.pending_tasks_count} pending tasks and ${result.unread_messages_count} unread messages.`,
613
+ agent_id: agentId,
614
+ name: registrationResult.agent_name,
615
+ agent_type: registrationResult.agent_type,
616
+ mode: 'registered',
617
+ message: `Successfully registered as ${registrationResult.agent_name || agentId}. You can now use other AgentHub tools.`,
467
618
  };
468
619
  }
469
620
  case "agent_start_work": {
470
621
  if (!agentId)
471
622
  throw new Error("Not registered. Call agent_register first.");
472
- const result = await client.startWork(agentId, args.task, args.project);
473
- return wrapWithMessages(client, agentId, result);
623
+ const result = await client.startWork(agentId, args.task, args.project, args.task_id);
624
+ return wrapWithPendingItems(client, agentId, result, context);
474
625
  }
475
626
  case "agent_set_status": {
476
627
  if (!agentId)
477
628
  throw new Error("Not registered. Call agent_register first.");
478
629
  const result = await client.heartbeat(agentId, args.status);
479
- return wrapWithMessages(client, agentId, result);
630
+ return wrapWithPendingItems(client, agentId, result, context);
480
631
  }
481
632
  case "agent_disconnect": {
482
633
  // No wrapping - agent is going offline
@@ -497,7 +648,7 @@ export async function handleToolCall(name, args, client, context) {
497
648
  body: args.body,
498
649
  priority: args.priority,
499
650
  });
500
- return wrapWithMessages(client, agentId, result);
651
+ return wrapWithPendingItems(client, agentId, result, context);
501
652
  }
502
653
  case "send_to_channel": {
503
654
  if (!agentId)
@@ -509,7 +660,7 @@ export async function handleToolCall(name, args, client, context) {
509
660
  subject: args.subject,
510
661
  body: args.body,
511
662
  });
512
- return wrapWithMessages(client, agentId, result);
663
+ return wrapWithPendingItems(client, agentId, result, context);
513
664
  }
514
665
  case "broadcast": {
515
666
  if (!agentId)
@@ -521,7 +672,7 @@ export async function handleToolCall(name, args, client, context) {
521
672
  subject: args.subject,
522
673
  body: args.body,
523
674
  });
524
- return wrapWithMessages(client, agentId, result);
675
+ return wrapWithPendingItems(client, agentId, result, context);
525
676
  }
526
677
  case "check_inbox": {
527
678
  // No wrapping - already fetching messages
@@ -531,38 +682,38 @@ export async function handleToolCall(name, args, client, context) {
531
682
  }
532
683
  case "mark_read": {
533
684
  const result = await client.markRead(args.message_id);
534
- return wrapWithMessages(client, agentId, result);
685
+ return wrapWithPendingItems(client, agentId, result, context);
535
686
  }
536
687
  case "reply": {
537
688
  if (!agentId)
538
689
  throw new Error("Not registered. Call agent_register first.");
539
690
  const result = await client.reply(args.message_id, agentId, args.body);
540
- return wrapWithMessages(client, agentId, result);
691
+ return wrapWithPendingItems(client, agentId, result, context);
541
692
  }
542
693
  // Discovery
543
694
  case "list_agents": {
544
695
  const result = await client.listAgents(args.status);
545
- return wrapWithMessages(client, agentId, result);
696
+ return wrapWithPendingItems(client, agentId, result, context);
546
697
  }
547
698
  case "get_agent": {
548
699
  const result = await client.getAgent(args.id);
549
- return wrapWithMessages(client, agentId, result);
700
+ return wrapWithPendingItems(client, agentId, result, context);
550
701
  }
551
702
  case "list_channels": {
552
703
  const result = await client.listChannels();
553
- return wrapWithMessages(client, agentId, result);
704
+ return wrapWithPendingItems(client, agentId, result, context);
554
705
  }
555
706
  case "join_channel": {
556
707
  if (!agentId)
557
708
  throw new Error("Not registered. Call agent_register first.");
558
709
  const result = await client.joinChannel(args.channel, agentId);
559
- return wrapWithMessages(client, agentId, result);
710
+ return wrapWithPendingItems(client, agentId, result, context);
560
711
  }
561
712
  case "leave_channel": {
562
713
  if (!agentId)
563
714
  throw new Error("Not registered. Call agent_register first.");
564
715
  const result = await client.leaveChannel(args.channel, agentId);
565
- return wrapWithMessages(client, agentId, result);
716
+ return wrapWithPendingItems(client, agentId, result, context);
566
717
  }
567
718
  // Task completion
568
719
  case "agent_complete_task": {
@@ -575,25 +726,54 @@ export async function handleToolCall(name, args, client, context) {
575
726
  time_spent: args.time_spent,
576
727
  next_steps: args.next_steps,
577
728
  });
578
- return wrapWithMessages(client, agentId, result);
729
+ return wrapWithPendingItems(client, agentId, result, context);
579
730
  }
580
731
  case "get_pending_tasks": {
581
732
  if (!agentId)
582
733
  throw new Error("Not registered. Call agent_register first.");
583
734
  const result = await client.getPendingTasks(agentId);
584
- return wrapWithMessages(client, agentId, result);
735
+ return wrapWithPendingItems(client, agentId, result, context);
585
736
  }
586
737
  case "accept_task": {
587
738
  if (!agentId)
588
739
  throw new Error("Not registered. Call agent_register first.");
589
740
  const result = await client.acceptTask(agentId, args.task_id);
590
- return wrapWithMessages(client, agentId, result);
741
+ return wrapWithPendingItems(client, agentId, result, context);
591
742
  }
592
743
  case "decline_task": {
593
744
  if (!agentId)
594
745
  throw new Error("Not registered. Call agent_register first.");
595
746
  const result = await client.declineTask(agentId, args.task_id, args.reason);
596
- return wrapWithMessages(client, agentId, result);
747
+ return wrapWithPendingItems(client, agentId, result, context);
748
+ }
749
+ // Ticket system tools
750
+ case "get_available_tasks": {
751
+ if (!agentId)
752
+ throw new Error("Not registered. Call agent_register first.");
753
+ const result = await client.getAvailableTasks({
754
+ status: args.status,
755
+ project_id: args.project_id,
756
+ priority: args.priority,
757
+ });
758
+ return wrapWithPendingItems(client, agentId, result, context);
759
+ }
760
+ case "get_task_context": {
761
+ if (!agentId)
762
+ throw new Error("Not registered. Call agent_register first.");
763
+ const result = await client.getTicketTask(args.task_id);
764
+ return wrapWithPendingItems(client, agentId, result, context);
765
+ }
766
+ case "claim_ticket_task": {
767
+ if (!agentId)
768
+ throw new Error("Not registered. Call agent_register first.");
769
+ const result = await client.claimTicketTask(args.task_id, agentId);
770
+ return wrapWithPendingItems(client, agentId, result, context);
771
+ }
772
+ case "reach_checkpoint": {
773
+ if (!agentId)
774
+ throw new Error("Not registered. Call agent_register first.");
775
+ const result = await client.createCheckpoint(args.task_id, agentId, args.description);
776
+ return wrapWithPendingItems(client, agentId, result, context);
597
777
  }
598
778
  default:
599
779
  throw new Error(`Unknown tool: ${name}`);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
@@ -22,11 +22,15 @@ const mockClient = {
22
22
  listAgents: vi.fn(),
23
23
  sendMessage: vi.fn(),
24
24
  getInbox: vi.fn(),
25
+ getPendingTasks: vi.fn(),
25
26
  markRead: vi.fn(),
26
27
  reply: vi.fn(),
27
28
  listChannels: vi.fn(),
28
29
  joinChannel: vi.fn(),
29
30
  leaveChannel: vi.fn(),
31
+ completeTask: vi.fn(),
32
+ acceptTask: vi.fn(),
33
+ declineTask: vi.fn(),
30
34
  };
31
35
  // Mock context
32
36
  function createMockContext() {
@@ -38,6 +42,7 @@ function createMockContext() {
38
42
  },
39
43
  stopHeartbeat: vi.fn(),
40
44
  getWorkingDir: () => "/tmp/test-workdir",
45
+ getPushedItems: () => ({ tasks: [], messages: [] }),
41
46
  };
42
47
  }
43
48
  describe("registerTools", () => {
@@ -78,8 +83,9 @@ describe("handleToolCall", () => {
78
83
  beforeEach(() => {
79
84
  vi.clearAllMocks();
80
85
  context = createMockContext();
81
- // Default mock for inbox (used by message wrapping)
86
+ // Default mocks for wrapping (used by wrapWithPendingItems)
82
87
  vi.mocked(mockClient.getInbox).mockResolvedValue({ messages: [], total: 0 });
88
+ vi.mocked(mockClient.getPendingTasks).mockResolvedValue({ tasks: [], total: 0 });
83
89
  });
84
90
  describe("agent_register", () => {
85
91
  it("should register agent and set current agent ID", async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"tools.test.js","sourceRoot":"","sources":["../../src/tools/tools.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.test.js","sourceRoot":"","sources":["../../src/tools/tools.test.ts"],"names":[],"mappings":"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"}