@opvs-ai/mcp 0.5.3 → 0.5.5
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/dist/generated-tools.d.ts +12416 -700
- package/dist/generated-tools.js +1797 -21
- package/dist/generated-tools.js.map +1 -1
- package/dist/handlers/agent.d.ts +6 -0
- package/dist/handlers/agent.js +93 -0
- package/dist/handlers/agent.js.map +1 -0
- package/dist/handlers/auth.d.ts +6 -0
- package/dist/handlers/auth.js +87 -0
- package/dist/handlers/auth.js.map +1 -0
- package/dist/handlers/board.d.ts +6 -0
- package/dist/handlers/board.js +232 -0
- package/dist/handlers/board.js.map +1 -0
- package/dist/handlers/docs.d.ts +6 -0
- package/dist/handlers/docs.js +140 -0
- package/dist/handlers/docs.js.map +1 -0
- package/dist/handlers/stages.d.ts +6 -0
- package/dist/handlers/stages.js +66 -0
- package/dist/handlers/stages.js.map +1 -0
- package/dist/handlers/types.d.ts +31 -0
- package/dist/handlers/types.js +25 -0
- package/dist/handlers/types.js.map +1 -0
- package/dist/handlers/views.d.ts +6 -0
- package/dist/handlers/views.js +74 -0
- package/dist/handlers/views.js.map +1 -0
- package/dist/index.js +34 -1835
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/generated-tools.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* DO NOT EDIT — regenerate with: opvs-skills generate --all --mcp
|
|
5
5
|
*
|
|
6
|
-
* 27 skills,
|
|
6
|
+
* 27 skills, 254 tools total.
|
|
7
7
|
* Paste this into packages/mcp/src/index.ts or import as a module.
|
|
8
8
|
*/
|
|
9
9
|
// ── Generated Tool Definitions ────────────────────────────────────
|
|
@@ -454,6 +454,1167 @@ export const GENERATED_TOOLS = [
|
|
|
454
454
|
]
|
|
455
455
|
},
|
|
456
456
|
},
|
|
457
|
+
{
|
|
458
|
+
name: "agentboard_listSubtasks",
|
|
459
|
+
description: "List subtasks of a parent task. Returns child tasks with their status and priority.",
|
|
460
|
+
inputSchema: {
|
|
461
|
+
"type": "object",
|
|
462
|
+
"properties": {
|
|
463
|
+
"task_id": {
|
|
464
|
+
"type": "string",
|
|
465
|
+
"description": "Parent task UUID"
|
|
466
|
+
},
|
|
467
|
+
"workspace": {
|
|
468
|
+
"type": "string",
|
|
469
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
470
|
+
}
|
|
471
|
+
},
|
|
472
|
+
"required": [
|
|
473
|
+
"task_id"
|
|
474
|
+
]
|
|
475
|
+
},
|
|
476
|
+
},
|
|
477
|
+
{
|
|
478
|
+
name: "agentboard_searchTasks",
|
|
479
|
+
description: "Full-text search across all tasks/cards. Searches titles, descriptions, and comments.",
|
|
480
|
+
inputSchema: {
|
|
481
|
+
"type": "object",
|
|
482
|
+
"properties": {
|
|
483
|
+
"query": {
|
|
484
|
+
"type": "string",
|
|
485
|
+
"description": "Search query"
|
|
486
|
+
},
|
|
487
|
+
"board_id": {
|
|
488
|
+
"type": "string",
|
|
489
|
+
"description": "Scope to a specific board"
|
|
490
|
+
},
|
|
491
|
+
"limit": {
|
|
492
|
+
"type": "number",
|
|
493
|
+
"description": "Max results (default 25)"
|
|
494
|
+
},
|
|
495
|
+
"workspace": {
|
|
496
|
+
"type": "string",
|
|
497
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
498
|
+
}
|
|
499
|
+
},
|
|
500
|
+
"required": [
|
|
501
|
+
"query"
|
|
502
|
+
]
|
|
503
|
+
},
|
|
504
|
+
},
|
|
505
|
+
{
|
|
506
|
+
name: "agentboard_batchGetTasks",
|
|
507
|
+
description: "Get multiple tasks by IDs in one call (max 50). More efficient than calling getTask multiple times.",
|
|
508
|
+
inputSchema: {
|
|
509
|
+
"type": "object",
|
|
510
|
+
"properties": {
|
|
511
|
+
"ids": {
|
|
512
|
+
"type": "array",
|
|
513
|
+
"description": "Array of task UUIDs (max 50)",
|
|
514
|
+
"items": {
|
|
515
|
+
"type": "string"
|
|
516
|
+
}
|
|
517
|
+
},
|
|
518
|
+
"workspace": {
|
|
519
|
+
"type": "string",
|
|
520
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
521
|
+
}
|
|
522
|
+
},
|
|
523
|
+
"required": [
|
|
524
|
+
"ids"
|
|
525
|
+
]
|
|
526
|
+
},
|
|
527
|
+
},
|
|
528
|
+
{
|
|
529
|
+
name: "agentboard_createBoard",
|
|
530
|
+
description: "Create a new board. Default columns: Backlog, To Do, In Progress, Review, Done. Visibility: public (default) or private.",
|
|
531
|
+
inputSchema: {
|
|
532
|
+
"type": "object",
|
|
533
|
+
"properties": {
|
|
534
|
+
"name": {
|
|
535
|
+
"type": "string",
|
|
536
|
+
"description": "Board name"
|
|
537
|
+
},
|
|
538
|
+
"description": {
|
|
539
|
+
"type": "string",
|
|
540
|
+
"description": "Board description"
|
|
541
|
+
},
|
|
542
|
+
"visibility": {
|
|
543
|
+
"type": "string",
|
|
544
|
+
"description": "Board visibility",
|
|
545
|
+
"enum": [
|
|
546
|
+
"public",
|
|
547
|
+
"private"
|
|
548
|
+
]
|
|
549
|
+
},
|
|
550
|
+
"workspace": {
|
|
551
|
+
"type": "string",
|
|
552
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
553
|
+
}
|
|
554
|
+
},
|
|
555
|
+
"required": [
|
|
556
|
+
"name"
|
|
557
|
+
]
|
|
558
|
+
},
|
|
559
|
+
},
|
|
560
|
+
{
|
|
561
|
+
name: "agentboard_updateBoard",
|
|
562
|
+
description: "Update a board's name, description, or visibility. Provide only the fields you want to change.",
|
|
563
|
+
inputSchema: {
|
|
564
|
+
"type": "object",
|
|
565
|
+
"properties": {
|
|
566
|
+
"board_id": {
|
|
567
|
+
"type": "string",
|
|
568
|
+
"description": "Board UUID"
|
|
569
|
+
},
|
|
570
|
+
"name": {
|
|
571
|
+
"type": "string",
|
|
572
|
+
"description": "New name"
|
|
573
|
+
},
|
|
574
|
+
"description": {
|
|
575
|
+
"type": "string",
|
|
576
|
+
"description": "New description"
|
|
577
|
+
},
|
|
578
|
+
"visibility": {
|
|
579
|
+
"type": "string",
|
|
580
|
+
"description": "New visibility",
|
|
581
|
+
"enum": [
|
|
582
|
+
"public",
|
|
583
|
+
"private"
|
|
584
|
+
]
|
|
585
|
+
},
|
|
586
|
+
"workspace": {
|
|
587
|
+
"type": "string",
|
|
588
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
589
|
+
}
|
|
590
|
+
},
|
|
591
|
+
"required": [
|
|
592
|
+
"board_id"
|
|
593
|
+
]
|
|
594
|
+
},
|
|
595
|
+
},
|
|
596
|
+
{
|
|
597
|
+
name: "agentboard_createColumn",
|
|
598
|
+
description: "Create a new column on a board. New column is added at the end. Use reorderColumns to change position.",
|
|
599
|
+
inputSchema: {
|
|
600
|
+
"type": "object",
|
|
601
|
+
"properties": {
|
|
602
|
+
"board_id": {
|
|
603
|
+
"type": "string",
|
|
604
|
+
"description": "Board UUID"
|
|
605
|
+
},
|
|
606
|
+
"name": {
|
|
607
|
+
"type": "string",
|
|
608
|
+
"description": "Column name (e.g. 'In Review', 'Blocked')"
|
|
609
|
+
},
|
|
610
|
+
"color": {
|
|
611
|
+
"type": "string",
|
|
612
|
+
"description": "Column color hex (e.g. '#3B82F6')"
|
|
613
|
+
},
|
|
614
|
+
"wip_limit": {
|
|
615
|
+
"type": "number",
|
|
616
|
+
"description": "Max tasks allowed in this column"
|
|
617
|
+
},
|
|
618
|
+
"workspace": {
|
|
619
|
+
"type": "string",
|
|
620
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
621
|
+
}
|
|
622
|
+
},
|
|
623
|
+
"required": [
|
|
624
|
+
"board_id",
|
|
625
|
+
"name"
|
|
626
|
+
]
|
|
627
|
+
},
|
|
628
|
+
},
|
|
629
|
+
{
|
|
630
|
+
name: "agentboard_reorderColumns",
|
|
631
|
+
description: "Set the order of columns on a board. Pass ALL column UUIDs in desired order — omitted columns will be removed.",
|
|
632
|
+
inputSchema: {
|
|
633
|
+
"type": "object",
|
|
634
|
+
"properties": {
|
|
635
|
+
"board_id": {
|
|
636
|
+
"type": "string",
|
|
637
|
+
"description": "Board UUID"
|
|
638
|
+
},
|
|
639
|
+
"column_ids": {
|
|
640
|
+
"type": "array",
|
|
641
|
+
"description": "ALL column UUIDs in desired left-to-right order",
|
|
642
|
+
"items": {
|
|
643
|
+
"type": "string"
|
|
644
|
+
}
|
|
645
|
+
},
|
|
646
|
+
"workspace": {
|
|
647
|
+
"type": "string",
|
|
648
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
649
|
+
}
|
|
650
|
+
},
|
|
651
|
+
"required": [
|
|
652
|
+
"board_id",
|
|
653
|
+
"column_ids"
|
|
654
|
+
]
|
|
655
|
+
},
|
|
656
|
+
},
|
|
657
|
+
{
|
|
658
|
+
name: "agentboard_listStages",
|
|
659
|
+
description: "List stages (sequential in-card steps) for a task. Stages enable multi-agent handoff workflows within a single task.",
|
|
660
|
+
inputSchema: {
|
|
661
|
+
"type": "object",
|
|
662
|
+
"properties": {
|
|
663
|
+
"task_id": {
|
|
664
|
+
"type": "string",
|
|
665
|
+
"description": "Task UUID"
|
|
666
|
+
},
|
|
667
|
+
"workspace": {
|
|
668
|
+
"type": "string",
|
|
669
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
670
|
+
}
|
|
671
|
+
},
|
|
672
|
+
"required": [
|
|
673
|
+
"task_id"
|
|
674
|
+
]
|
|
675
|
+
},
|
|
676
|
+
},
|
|
677
|
+
{
|
|
678
|
+
name: "agentboard_createStage",
|
|
679
|
+
description: "Create a stage on a task. The first stage auto-activates. Subsequent stages stay pending until the previous one is completed via handoff.",
|
|
680
|
+
inputSchema: {
|
|
681
|
+
"type": "object",
|
|
682
|
+
"properties": {
|
|
683
|
+
"task_id": {
|
|
684
|
+
"type": "string",
|
|
685
|
+
"description": "Task UUID"
|
|
686
|
+
},
|
|
687
|
+
"title": {
|
|
688
|
+
"type": "string",
|
|
689
|
+
"description": "Stage title"
|
|
690
|
+
},
|
|
691
|
+
"description": {
|
|
692
|
+
"type": "string",
|
|
693
|
+
"description": "Stage description"
|
|
694
|
+
},
|
|
695
|
+
"assignee_agent_id": {
|
|
696
|
+
"type": "string",
|
|
697
|
+
"description": "Agent UUID to assign this stage to"
|
|
698
|
+
},
|
|
699
|
+
"agent_instructions": {
|
|
700
|
+
"type": "string",
|
|
701
|
+
"description": "Instructions for the agent handling this stage"
|
|
702
|
+
},
|
|
703
|
+
"position": {
|
|
704
|
+
"type": "number",
|
|
705
|
+
"description": "Position in stage order"
|
|
706
|
+
},
|
|
707
|
+
"workspace": {
|
|
708
|
+
"type": "string",
|
|
709
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
710
|
+
}
|
|
711
|
+
},
|
|
712
|
+
"required": [
|
|
713
|
+
"task_id",
|
|
714
|
+
"title"
|
|
715
|
+
]
|
|
716
|
+
},
|
|
717
|
+
},
|
|
718
|
+
{
|
|
719
|
+
name: "agentboard_updateStage",
|
|
720
|
+
description: "Update a stage (pending or active only). Provide only the fields you want to change.",
|
|
721
|
+
inputSchema: {
|
|
722
|
+
"type": "object",
|
|
723
|
+
"properties": {
|
|
724
|
+
"task_id": {
|
|
725
|
+
"type": "string",
|
|
726
|
+
"description": "Task UUID"
|
|
727
|
+
},
|
|
728
|
+
"stage_id": {
|
|
729
|
+
"type": "string",
|
|
730
|
+
"description": "Stage UUID"
|
|
731
|
+
},
|
|
732
|
+
"title": {
|
|
733
|
+
"type": "string",
|
|
734
|
+
"description": "New title"
|
|
735
|
+
},
|
|
736
|
+
"description": {
|
|
737
|
+
"type": "string",
|
|
738
|
+
"description": "New description"
|
|
739
|
+
},
|
|
740
|
+
"assignee_agent_id": {
|
|
741
|
+
"type": "string",
|
|
742
|
+
"description": "New agent assignment"
|
|
743
|
+
},
|
|
744
|
+
"agent_instructions": {
|
|
745
|
+
"type": "string",
|
|
746
|
+
"description": "New agent instructions"
|
|
747
|
+
},
|
|
748
|
+
"workspace": {
|
|
749
|
+
"type": "string",
|
|
750
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
751
|
+
}
|
|
752
|
+
},
|
|
753
|
+
"required": [
|
|
754
|
+
"task_id",
|
|
755
|
+
"stage_id"
|
|
756
|
+
]
|
|
757
|
+
},
|
|
758
|
+
},
|
|
759
|
+
{
|
|
760
|
+
name: "agentboard_completeStage",
|
|
761
|
+
description: "Complete a stage and hand off to the next one. Adds a handoff comment. If this is the last stage, the task can be completed.",
|
|
762
|
+
inputSchema: {
|
|
763
|
+
"type": "object",
|
|
764
|
+
"properties": {
|
|
765
|
+
"task_id": {
|
|
766
|
+
"type": "string",
|
|
767
|
+
"description": "Task UUID"
|
|
768
|
+
},
|
|
769
|
+
"stage_id": {
|
|
770
|
+
"type": "string",
|
|
771
|
+
"description": "Stage UUID to complete"
|
|
772
|
+
},
|
|
773
|
+
"comment": {
|
|
774
|
+
"type": "string",
|
|
775
|
+
"description": "Handoff comment for the next stage's assignee"
|
|
776
|
+
},
|
|
777
|
+
"workspace": {
|
|
778
|
+
"type": "string",
|
|
779
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
780
|
+
}
|
|
781
|
+
},
|
|
782
|
+
"required": [
|
|
783
|
+
"task_id",
|
|
784
|
+
"stage_id"
|
|
785
|
+
]
|
|
786
|
+
},
|
|
787
|
+
},
|
|
788
|
+
{
|
|
789
|
+
name: "agentboard_reorderStages",
|
|
790
|
+
description: "Reorder pending stages on a task. Active and completed stages cannot be reordered.",
|
|
791
|
+
inputSchema: {
|
|
792
|
+
"type": "object",
|
|
793
|
+
"properties": {
|
|
794
|
+
"task_id": {
|
|
795
|
+
"type": "string",
|
|
796
|
+
"description": "Task UUID"
|
|
797
|
+
},
|
|
798
|
+
"order": {
|
|
799
|
+
"type": "array",
|
|
800
|
+
"description": "Stage UUIDs in desired order",
|
|
801
|
+
"items": {
|
|
802
|
+
"type": "string"
|
|
803
|
+
}
|
|
804
|
+
},
|
|
805
|
+
"workspace": {
|
|
806
|
+
"type": "string",
|
|
807
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
808
|
+
}
|
|
809
|
+
},
|
|
810
|
+
"required": [
|
|
811
|
+
"task_id",
|
|
812
|
+
"order"
|
|
813
|
+
]
|
|
814
|
+
},
|
|
815
|
+
},
|
|
816
|
+
{
|
|
817
|
+
name: "agentboard_listTaskLinks",
|
|
818
|
+
description: "List links between tasks (related, blocks, blocked_by, etc.).",
|
|
819
|
+
inputSchema: {
|
|
820
|
+
"type": "object",
|
|
821
|
+
"properties": {
|
|
822
|
+
"task_id": {
|
|
823
|
+
"type": "string",
|
|
824
|
+
"description": "Task UUID"
|
|
825
|
+
},
|
|
826
|
+
"workspace": {
|
|
827
|
+
"type": "string",
|
|
828
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
829
|
+
}
|
|
830
|
+
},
|
|
831
|
+
"required": [
|
|
832
|
+
"task_id"
|
|
833
|
+
]
|
|
834
|
+
},
|
|
835
|
+
},
|
|
836
|
+
{
|
|
837
|
+
name: "agentboard_createTaskLink",
|
|
838
|
+
description: "Create a link between two tasks (e.g. related, blocks, blocked_by, parent, child).",
|
|
839
|
+
inputSchema: {
|
|
840
|
+
"type": "object",
|
|
841
|
+
"properties": {
|
|
842
|
+
"task_id": {
|
|
843
|
+
"type": "string",
|
|
844
|
+
"description": "Source task UUID"
|
|
845
|
+
},
|
|
846
|
+
"target_task_id": {
|
|
847
|
+
"type": "string",
|
|
848
|
+
"description": "Target task UUID"
|
|
849
|
+
},
|
|
850
|
+
"link_type": {
|
|
851
|
+
"type": "string",
|
|
852
|
+
"description": "Link type (related, blocks, blocked_by, parent, child)"
|
|
853
|
+
},
|
|
854
|
+
"workspace": {
|
|
855
|
+
"type": "string",
|
|
856
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
857
|
+
}
|
|
858
|
+
},
|
|
859
|
+
"required": [
|
|
860
|
+
"task_id",
|
|
861
|
+
"target_task_id"
|
|
862
|
+
]
|
|
863
|
+
},
|
|
864
|
+
},
|
|
865
|
+
{
|
|
866
|
+
name: "agentboard_deleteTaskLink",
|
|
867
|
+
description: "Delete a task link by its ID.",
|
|
868
|
+
inputSchema: {
|
|
869
|
+
"type": "object",
|
|
870
|
+
"properties": {
|
|
871
|
+
"link_id": {
|
|
872
|
+
"type": "string",
|
|
873
|
+
"description": "Link UUID"
|
|
874
|
+
},
|
|
875
|
+
"workspace": {
|
|
876
|
+
"type": "string",
|
|
877
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
878
|
+
}
|
|
879
|
+
},
|
|
880
|
+
"required": [
|
|
881
|
+
"link_id"
|
|
882
|
+
]
|
|
883
|
+
},
|
|
884
|
+
},
|
|
885
|
+
{
|
|
886
|
+
name: "agentboard_listBoardMembers",
|
|
887
|
+
description: "List members of a board (users and agents with access).",
|
|
888
|
+
inputSchema: {
|
|
889
|
+
"type": "object",
|
|
890
|
+
"properties": {
|
|
891
|
+
"board_id": {
|
|
892
|
+
"type": "string",
|
|
893
|
+
"description": "Board UUID"
|
|
894
|
+
},
|
|
895
|
+
"workspace": {
|
|
896
|
+
"type": "string",
|
|
897
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
898
|
+
}
|
|
899
|
+
},
|
|
900
|
+
"required": [
|
|
901
|
+
"board_id"
|
|
902
|
+
]
|
|
903
|
+
},
|
|
904
|
+
},
|
|
905
|
+
{
|
|
906
|
+
name: "agentboard_addBoardMember",
|
|
907
|
+
description: "Add a user or agent as a member of a board.",
|
|
908
|
+
inputSchema: {
|
|
909
|
+
"type": "object",
|
|
910
|
+
"properties": {
|
|
911
|
+
"board_id": {
|
|
912
|
+
"type": "string",
|
|
913
|
+
"description": "Board UUID"
|
|
914
|
+
},
|
|
915
|
+
"user_id": {
|
|
916
|
+
"type": "string",
|
|
917
|
+
"description": "User UUID to add"
|
|
918
|
+
},
|
|
919
|
+
"role": {
|
|
920
|
+
"type": "string",
|
|
921
|
+
"description": "Member role",
|
|
922
|
+
"enum": [
|
|
923
|
+
"member",
|
|
924
|
+
"admin"
|
|
925
|
+
]
|
|
926
|
+
},
|
|
927
|
+
"workspace": {
|
|
928
|
+
"type": "string",
|
|
929
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
930
|
+
}
|
|
931
|
+
},
|
|
932
|
+
"required": [
|
|
933
|
+
"board_id",
|
|
934
|
+
"user_id"
|
|
935
|
+
]
|
|
936
|
+
},
|
|
937
|
+
},
|
|
938
|
+
{
|
|
939
|
+
name: "agentboard_removeBoardMember",
|
|
940
|
+
description: "Remove a member from a board.",
|
|
941
|
+
inputSchema: {
|
|
942
|
+
"type": "object",
|
|
943
|
+
"properties": {
|
|
944
|
+
"board_id": {
|
|
945
|
+
"type": "string",
|
|
946
|
+
"description": "Board UUID"
|
|
947
|
+
},
|
|
948
|
+
"user_id": {
|
|
949
|
+
"type": "string",
|
|
950
|
+
"description": "User UUID to remove"
|
|
951
|
+
},
|
|
952
|
+
"workspace": {
|
|
953
|
+
"type": "string",
|
|
954
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
955
|
+
}
|
|
956
|
+
},
|
|
957
|
+
"required": [
|
|
958
|
+
"board_id",
|
|
959
|
+
"user_id"
|
|
960
|
+
]
|
|
961
|
+
},
|
|
962
|
+
},
|
|
963
|
+
{
|
|
964
|
+
name: "agentboard_listMarkers",
|
|
965
|
+
description: "List all markers/tags in the workspace. Markers are color-coded labels that can be toggled on tasks.",
|
|
966
|
+
inputSchema: {
|
|
967
|
+
"type": "object",
|
|
968
|
+
"properties": {
|
|
969
|
+
"workspace": {
|
|
970
|
+
"type": "string",
|
|
971
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
972
|
+
}
|
|
973
|
+
}
|
|
974
|
+
},
|
|
975
|
+
},
|
|
976
|
+
{
|
|
977
|
+
name: "agentboard_createMarker",
|
|
978
|
+
description: "Create a new marker with a name, color, and optional icon.",
|
|
979
|
+
inputSchema: {
|
|
980
|
+
"type": "object",
|
|
981
|
+
"properties": {
|
|
982
|
+
"name": {
|
|
983
|
+
"type": "string",
|
|
984
|
+
"description": "Marker name"
|
|
985
|
+
},
|
|
986
|
+
"color": {
|
|
987
|
+
"type": "string",
|
|
988
|
+
"description": "Color hex (e.g. '#ff0000')"
|
|
989
|
+
},
|
|
990
|
+
"icon": {
|
|
991
|
+
"type": "string",
|
|
992
|
+
"description": "Icon name"
|
|
993
|
+
},
|
|
994
|
+
"workspace": {
|
|
995
|
+
"type": "string",
|
|
996
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
997
|
+
}
|
|
998
|
+
},
|
|
999
|
+
"required": [
|
|
1000
|
+
"name"
|
|
1001
|
+
]
|
|
1002
|
+
},
|
|
1003
|
+
},
|
|
1004
|
+
{
|
|
1005
|
+
name: "agentboard_updateMarker",
|
|
1006
|
+
description: "Update a marker's name, color, or icon.",
|
|
1007
|
+
inputSchema: {
|
|
1008
|
+
"type": "object",
|
|
1009
|
+
"properties": {
|
|
1010
|
+
"marker_id": {
|
|
1011
|
+
"type": "string",
|
|
1012
|
+
"description": "Marker UUID"
|
|
1013
|
+
},
|
|
1014
|
+
"name": {
|
|
1015
|
+
"type": "string",
|
|
1016
|
+
"description": "New name"
|
|
1017
|
+
},
|
|
1018
|
+
"color": {
|
|
1019
|
+
"type": "string",
|
|
1020
|
+
"description": "New color hex"
|
|
1021
|
+
},
|
|
1022
|
+
"icon": {
|
|
1023
|
+
"type": "string",
|
|
1024
|
+
"description": "New icon"
|
|
1025
|
+
},
|
|
1026
|
+
"workspace": {
|
|
1027
|
+
"type": "string",
|
|
1028
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1029
|
+
}
|
|
1030
|
+
},
|
|
1031
|
+
"required": [
|
|
1032
|
+
"marker_id"
|
|
1033
|
+
]
|
|
1034
|
+
},
|
|
1035
|
+
},
|
|
1036
|
+
{
|
|
1037
|
+
name: "agentboard_deleteMarker",
|
|
1038
|
+
description: "Delete a marker. Removes it from all tasks.",
|
|
1039
|
+
inputSchema: {
|
|
1040
|
+
"type": "object",
|
|
1041
|
+
"properties": {
|
|
1042
|
+
"marker_id": {
|
|
1043
|
+
"type": "string",
|
|
1044
|
+
"description": "Marker UUID"
|
|
1045
|
+
},
|
|
1046
|
+
"workspace": {
|
|
1047
|
+
"type": "string",
|
|
1048
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1049
|
+
}
|
|
1050
|
+
},
|
|
1051
|
+
"required": [
|
|
1052
|
+
"marker_id"
|
|
1053
|
+
]
|
|
1054
|
+
},
|
|
1055
|
+
},
|
|
1056
|
+
{
|
|
1057
|
+
name: "agentboard_toggleMarker",
|
|
1058
|
+
description: "Toggle a marker on/off for a task.",
|
|
1059
|
+
inputSchema: {
|
|
1060
|
+
"type": "object",
|
|
1061
|
+
"properties": {
|
|
1062
|
+
"marker_id": {
|
|
1063
|
+
"type": "string",
|
|
1064
|
+
"description": "Marker UUID"
|
|
1065
|
+
},
|
|
1066
|
+
"task_id": {
|
|
1067
|
+
"type": "string",
|
|
1068
|
+
"description": "Task UUID to toggle marker on"
|
|
1069
|
+
},
|
|
1070
|
+
"workspace": {
|
|
1071
|
+
"type": "string",
|
|
1072
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1073
|
+
}
|
|
1074
|
+
},
|
|
1075
|
+
"required": [
|
|
1076
|
+
"marker_id",
|
|
1077
|
+
"task_id"
|
|
1078
|
+
]
|
|
1079
|
+
},
|
|
1080
|
+
},
|
|
1081
|
+
{
|
|
1082
|
+
name: "agentboard_listBoardLinks",
|
|
1083
|
+
description: "List cross-board links (relationships between boards).",
|
|
1084
|
+
inputSchema: {
|
|
1085
|
+
"type": "object",
|
|
1086
|
+
"properties": {
|
|
1087
|
+
"workspace": {
|
|
1088
|
+
"type": "string",
|
|
1089
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1090
|
+
}
|
|
1091
|
+
}
|
|
1092
|
+
},
|
|
1093
|
+
},
|
|
1094
|
+
{
|
|
1095
|
+
name: "agentboard_createBoardLink",
|
|
1096
|
+
description: "Create a link between two boards.",
|
|
1097
|
+
inputSchema: {
|
|
1098
|
+
"type": "object",
|
|
1099
|
+
"properties": {
|
|
1100
|
+
"source_board_id": {
|
|
1101
|
+
"type": "string",
|
|
1102
|
+
"description": "Source board UUID"
|
|
1103
|
+
},
|
|
1104
|
+
"target_board_id": {
|
|
1105
|
+
"type": "string",
|
|
1106
|
+
"description": "Target board UUID"
|
|
1107
|
+
},
|
|
1108
|
+
"link_type": {
|
|
1109
|
+
"type": "string",
|
|
1110
|
+
"description": "Link type"
|
|
1111
|
+
},
|
|
1112
|
+
"label": {
|
|
1113
|
+
"type": "string",
|
|
1114
|
+
"description": "Link label/description"
|
|
1115
|
+
},
|
|
1116
|
+
"workspace": {
|
|
1117
|
+
"type": "string",
|
|
1118
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1119
|
+
}
|
|
1120
|
+
},
|
|
1121
|
+
"required": [
|
|
1122
|
+
"source_board_id",
|
|
1123
|
+
"target_board_id"
|
|
1124
|
+
]
|
|
1125
|
+
},
|
|
1126
|
+
},
|
|
1127
|
+
{
|
|
1128
|
+
name: "agentboard_updateBoardLink",
|
|
1129
|
+
description: "Update a board link's type or label.",
|
|
1130
|
+
inputSchema: {
|
|
1131
|
+
"type": "object",
|
|
1132
|
+
"properties": {
|
|
1133
|
+
"link_id": {
|
|
1134
|
+
"type": "string",
|
|
1135
|
+
"description": "Link UUID"
|
|
1136
|
+
},
|
|
1137
|
+
"link_type": {
|
|
1138
|
+
"type": "string",
|
|
1139
|
+
"description": "New link type"
|
|
1140
|
+
},
|
|
1141
|
+
"label": {
|
|
1142
|
+
"type": "string",
|
|
1143
|
+
"description": "New label"
|
|
1144
|
+
},
|
|
1145
|
+
"workspace": {
|
|
1146
|
+
"type": "string",
|
|
1147
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1148
|
+
}
|
|
1149
|
+
},
|
|
1150
|
+
"required": [
|
|
1151
|
+
"link_id"
|
|
1152
|
+
]
|
|
1153
|
+
},
|
|
1154
|
+
},
|
|
1155
|
+
{
|
|
1156
|
+
name: "agentboard_deleteBoardLink",
|
|
1157
|
+
description: "Delete a board link.",
|
|
1158
|
+
inputSchema: {
|
|
1159
|
+
"type": "object",
|
|
1160
|
+
"properties": {
|
|
1161
|
+
"link_id": {
|
|
1162
|
+
"type": "string",
|
|
1163
|
+
"description": "Link UUID"
|
|
1164
|
+
},
|
|
1165
|
+
"workspace": {
|
|
1166
|
+
"type": "string",
|
|
1167
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1168
|
+
}
|
|
1169
|
+
},
|
|
1170
|
+
"required": [
|
|
1171
|
+
"link_id"
|
|
1172
|
+
]
|
|
1173
|
+
},
|
|
1174
|
+
},
|
|
1175
|
+
{
|
|
1176
|
+
name: "agentboard_listFiles",
|
|
1177
|
+
description: "List file attachments on a task. Returns file names, sizes, types, and IDs. Use getFile for download URLs.",
|
|
1178
|
+
inputSchema: {
|
|
1179
|
+
"type": "object",
|
|
1180
|
+
"properties": {
|
|
1181
|
+
"task_id": {
|
|
1182
|
+
"type": "string",
|
|
1183
|
+
"description": "Task UUID"
|
|
1184
|
+
},
|
|
1185
|
+
"workspace": {
|
|
1186
|
+
"type": "string",
|
|
1187
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1188
|
+
}
|
|
1189
|
+
},
|
|
1190
|
+
"required": [
|
|
1191
|
+
"task_id"
|
|
1192
|
+
]
|
|
1193
|
+
},
|
|
1194
|
+
},
|
|
1195
|
+
{
|
|
1196
|
+
name: "agentboard_getFile",
|
|
1197
|
+
description: "Get file metadata including name, size, MIME type, and download URL.",
|
|
1198
|
+
inputSchema: {
|
|
1199
|
+
"type": "object",
|
|
1200
|
+
"properties": {
|
|
1201
|
+
"file_id": {
|
|
1202
|
+
"type": "string",
|
|
1203
|
+
"description": "File UUID"
|
|
1204
|
+
},
|
|
1205
|
+
"workspace": {
|
|
1206
|
+
"type": "string",
|
|
1207
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1208
|
+
}
|
|
1209
|
+
},
|
|
1210
|
+
"required": [
|
|
1211
|
+
"file_id"
|
|
1212
|
+
]
|
|
1213
|
+
},
|
|
1214
|
+
},
|
|
1215
|
+
{
|
|
1216
|
+
name: "agentboard_agentMyTasks",
|
|
1217
|
+
description: "Get tasks assigned to you across ALL boards in one call. More comprehensive than listTasks with self=true — aggregates from every board and includes board names.",
|
|
1218
|
+
inputSchema: {
|
|
1219
|
+
"type": "object",
|
|
1220
|
+
"properties": {
|
|
1221
|
+
"board_id": {
|
|
1222
|
+
"type": "string",
|
|
1223
|
+
"description": "Scope to a specific board"
|
|
1224
|
+
},
|
|
1225
|
+
"status": {
|
|
1226
|
+
"type": "string",
|
|
1227
|
+
"description": "Filter by status",
|
|
1228
|
+
"enum": [
|
|
1229
|
+
"pending",
|
|
1230
|
+
"assigned",
|
|
1231
|
+
"in_progress",
|
|
1232
|
+
"blocked",
|
|
1233
|
+
"review",
|
|
1234
|
+
"done",
|
|
1235
|
+
"failed"
|
|
1236
|
+
]
|
|
1237
|
+
},
|
|
1238
|
+
"limit": {
|
|
1239
|
+
"type": "number",
|
|
1240
|
+
"description": "Max results"
|
|
1241
|
+
},
|
|
1242
|
+
"workspace": {
|
|
1243
|
+
"type": "string",
|
|
1244
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1245
|
+
}
|
|
1246
|
+
}
|
|
1247
|
+
},
|
|
1248
|
+
},
|
|
1249
|
+
{
|
|
1250
|
+
name: "agentboard_agentMyDelegations",
|
|
1251
|
+
description: "List tasks you delegated to other agents. Complement to agentMyTasks — shows tasks you handed off, not tasks assigned to you.",
|
|
1252
|
+
inputSchema: {
|
|
1253
|
+
"type": "object",
|
|
1254
|
+
"properties": {
|
|
1255
|
+
"status": {
|
|
1256
|
+
"type": "string",
|
|
1257
|
+
"description": "Filter by status",
|
|
1258
|
+
"enum": [
|
|
1259
|
+
"pending",
|
|
1260
|
+
"assigned",
|
|
1261
|
+
"in_progress",
|
|
1262
|
+
"blocked",
|
|
1263
|
+
"review",
|
|
1264
|
+
"done",
|
|
1265
|
+
"failed"
|
|
1266
|
+
]
|
|
1267
|
+
},
|
|
1268
|
+
"limit": {
|
|
1269
|
+
"type": "number",
|
|
1270
|
+
"description": "Max results"
|
|
1271
|
+
},
|
|
1272
|
+
"workspace": {
|
|
1273
|
+
"type": "string",
|
|
1274
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1275
|
+
}
|
|
1276
|
+
}
|
|
1277
|
+
},
|
|
1278
|
+
},
|
|
1279
|
+
{
|
|
1280
|
+
name: "agentboard_agentBatchCreateTasks",
|
|
1281
|
+
description: "Create multiple tasks at once. Each task needs board_id and title. Returns list of created IDs and any errors.",
|
|
1282
|
+
inputSchema: {
|
|
1283
|
+
"type": "object",
|
|
1284
|
+
"properties": {
|
|
1285
|
+
"tasks": {
|
|
1286
|
+
"type": "array",
|
|
1287
|
+
"description": "Array of task objects. Each object: board_id (required), title (required), description, priority (low/medium/high/critical), column_id, agent_instructions\n",
|
|
1288
|
+
"items": {
|
|
1289
|
+
"type": "string"
|
|
1290
|
+
}
|
|
1291
|
+
},
|
|
1292
|
+
"workspace": {
|
|
1293
|
+
"type": "string",
|
|
1294
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1295
|
+
}
|
|
1296
|
+
},
|
|
1297
|
+
"required": [
|
|
1298
|
+
"tasks"
|
|
1299
|
+
]
|
|
1300
|
+
},
|
|
1301
|
+
},
|
|
1302
|
+
{
|
|
1303
|
+
name: "agentboard_agentReportProgress",
|
|
1304
|
+
description: "Report progress on a task. Updates metadata and adds a progress comment. Use for long-running tasks to keep stakeholders informed.",
|
|
1305
|
+
inputSchema: {
|
|
1306
|
+
"type": "object",
|
|
1307
|
+
"properties": {
|
|
1308
|
+
"task_id": {
|
|
1309
|
+
"type": "string",
|
|
1310
|
+
"description": "Task UUID"
|
|
1311
|
+
},
|
|
1312
|
+
"percent": {
|
|
1313
|
+
"type": "number",
|
|
1314
|
+
"description": "Progress percentage (0-100)"
|
|
1315
|
+
},
|
|
1316
|
+
"message": {
|
|
1317
|
+
"type": "string",
|
|
1318
|
+
"description": "Progress message"
|
|
1319
|
+
},
|
|
1320
|
+
"current_operation": {
|
|
1321
|
+
"type": "string",
|
|
1322
|
+
"description": "What you're currently doing"
|
|
1323
|
+
},
|
|
1324
|
+
"workspace": {
|
|
1325
|
+
"type": "string",
|
|
1326
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1327
|
+
}
|
|
1328
|
+
},
|
|
1329
|
+
"required": [
|
|
1330
|
+
"task_id",
|
|
1331
|
+
"percent"
|
|
1332
|
+
]
|
|
1333
|
+
},
|
|
1334
|
+
},
|
|
1335
|
+
{
|
|
1336
|
+
name: "agentboard_agentCompleteTask",
|
|
1337
|
+
description: "Mark a task as done or failed. Automatically walks through intermediate status transitions (pending->assigned-> in_progress->done). Adds a completion comment.",
|
|
1338
|
+
inputSchema: {
|
|
1339
|
+
"type": "object",
|
|
1340
|
+
"properties": {
|
|
1341
|
+
"task_id": {
|
|
1342
|
+
"type": "string",
|
|
1343
|
+
"description": "Task UUID"
|
|
1344
|
+
},
|
|
1345
|
+
"status": {
|
|
1346
|
+
"type": "string",
|
|
1347
|
+
"description": "Final status",
|
|
1348
|
+
"enum": [
|
|
1349
|
+
"done",
|
|
1350
|
+
"failed"
|
|
1351
|
+
]
|
|
1352
|
+
},
|
|
1353
|
+
"summary": {
|
|
1354
|
+
"type": "string",
|
|
1355
|
+
"description": "Completion summary (added as comment)"
|
|
1356
|
+
},
|
|
1357
|
+
"result_data": {
|
|
1358
|
+
"type": "object",
|
|
1359
|
+
"description": "Structured result data (JSON object)"
|
|
1360
|
+
},
|
|
1361
|
+
"workspace": {
|
|
1362
|
+
"type": "string",
|
|
1363
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1364
|
+
}
|
|
1365
|
+
},
|
|
1366
|
+
"required": [
|
|
1367
|
+
"task_id"
|
|
1368
|
+
]
|
|
1369
|
+
},
|
|
1370
|
+
},
|
|
1371
|
+
{
|
|
1372
|
+
name: "agentboard_agentDelegateTask",
|
|
1373
|
+
description: "Reassign a task to another agent by their slug. Resolves the slug to a UUID, updates assignment, and adds a delegation comment.",
|
|
1374
|
+
inputSchema: {
|
|
1375
|
+
"type": "object",
|
|
1376
|
+
"properties": {
|
|
1377
|
+
"task_id": {
|
|
1378
|
+
"type": "string",
|
|
1379
|
+
"description": "Task UUID"
|
|
1380
|
+
},
|
|
1381
|
+
"agent_slug": {
|
|
1382
|
+
"type": "string",
|
|
1383
|
+
"description": "Target agent's slug (e.g. 'maya')"
|
|
1384
|
+
},
|
|
1385
|
+
"instructions": {
|
|
1386
|
+
"type": "string",
|
|
1387
|
+
"description": "Instructions for the target agent"
|
|
1388
|
+
},
|
|
1389
|
+
"workspace": {
|
|
1390
|
+
"type": "string",
|
|
1391
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1392
|
+
}
|
|
1393
|
+
},
|
|
1394
|
+
"required": [
|
|
1395
|
+
"task_id",
|
|
1396
|
+
"agent_slug"
|
|
1397
|
+
]
|
|
1398
|
+
},
|
|
1399
|
+
},
|
|
1400
|
+
{
|
|
1401
|
+
name: "agentboard_agentMention",
|
|
1402
|
+
description: "@mention an agent on a task to trigger them to respond. The agent receives a notification with the task context.",
|
|
1403
|
+
inputSchema: {
|
|
1404
|
+
"type": "object",
|
|
1405
|
+
"properties": {
|
|
1406
|
+
"task_id": {
|
|
1407
|
+
"type": "string",
|
|
1408
|
+
"description": "Task UUID"
|
|
1409
|
+
},
|
|
1410
|
+
"agent_slug": {
|
|
1411
|
+
"type": "string",
|
|
1412
|
+
"description": "Agent slug to mention"
|
|
1413
|
+
},
|
|
1414
|
+
"message": {
|
|
1415
|
+
"type": "string",
|
|
1416
|
+
"description": "Message for the agent"
|
|
1417
|
+
},
|
|
1418
|
+
"workspace": {
|
|
1419
|
+
"type": "string",
|
|
1420
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1421
|
+
}
|
|
1422
|
+
},
|
|
1423
|
+
"required": [
|
|
1424
|
+
"task_id",
|
|
1425
|
+
"agent_slug"
|
|
1426
|
+
]
|
|
1427
|
+
},
|
|
1428
|
+
},
|
|
1429
|
+
{
|
|
1430
|
+
name: "agentboard_agentTasksBy",
|
|
1431
|
+
description: "List tasks assigned to a specific agent by their slug.",
|
|
1432
|
+
inputSchema: {
|
|
1433
|
+
"type": "object",
|
|
1434
|
+
"properties": {
|
|
1435
|
+
"agent_slug": {
|
|
1436
|
+
"type": "string",
|
|
1437
|
+
"description": "Agent slug"
|
|
1438
|
+
},
|
|
1439
|
+
"status": {
|
|
1440
|
+
"type": "string",
|
|
1441
|
+
"description": "Filter by status",
|
|
1442
|
+
"enum": [
|
|
1443
|
+
"pending",
|
|
1444
|
+
"assigned",
|
|
1445
|
+
"in_progress",
|
|
1446
|
+
"blocked",
|
|
1447
|
+
"review",
|
|
1448
|
+
"done",
|
|
1449
|
+
"failed"
|
|
1450
|
+
]
|
|
1451
|
+
},
|
|
1452
|
+
"limit": {
|
|
1453
|
+
"type": "number",
|
|
1454
|
+
"description": "Max results"
|
|
1455
|
+
},
|
|
1456
|
+
"workspace": {
|
|
1457
|
+
"type": "string",
|
|
1458
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1459
|
+
}
|
|
1460
|
+
},
|
|
1461
|
+
"required": [
|
|
1462
|
+
"agent_slug"
|
|
1463
|
+
]
|
|
1464
|
+
},
|
|
1465
|
+
},
|
|
1466
|
+
{
|
|
1467
|
+
name: "agentboard_getBoardOverview",
|
|
1468
|
+
description: "Get board overview with column structure, task counts per column, and board metadata. Lighter than getSession (no task details).",
|
|
1469
|
+
inputSchema: {
|
|
1470
|
+
"type": "object",
|
|
1471
|
+
"properties": {
|
|
1472
|
+
"board_id": {
|
|
1473
|
+
"type": "string",
|
|
1474
|
+
"description": "Board UUID"
|
|
1475
|
+
},
|
|
1476
|
+
"workspace": {
|
|
1477
|
+
"type": "string",
|
|
1478
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1479
|
+
}
|
|
1480
|
+
},
|
|
1481
|
+
"required": [
|
|
1482
|
+
"board_id"
|
|
1483
|
+
]
|
|
1484
|
+
},
|
|
1485
|
+
},
|
|
1486
|
+
{
|
|
1487
|
+
name: "agentboard_getBoardSummary",
|
|
1488
|
+
description: "Get board KPIs: task counts by status, workload by assignee, priority distribution, and recent activity stats. Useful for reporting and board health.",
|
|
1489
|
+
inputSchema: {
|
|
1490
|
+
"type": "object",
|
|
1491
|
+
"properties": {
|
|
1492
|
+
"board_id": {
|
|
1493
|
+
"type": "string",
|
|
1494
|
+
"description": "Board UUID"
|
|
1495
|
+
},
|
|
1496
|
+
"days": {
|
|
1497
|
+
"type": "number",
|
|
1498
|
+
"description": "Time window in days"
|
|
1499
|
+
},
|
|
1500
|
+
"workspace": {
|
|
1501
|
+
"type": "string",
|
|
1502
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1503
|
+
}
|
|
1504
|
+
},
|
|
1505
|
+
"required": [
|
|
1506
|
+
"board_id"
|
|
1507
|
+
]
|
|
1508
|
+
},
|
|
1509
|
+
},
|
|
1510
|
+
{
|
|
1511
|
+
name: "agentboard_getTaskVelocity",
|
|
1512
|
+
description: "Get task velocity: tasks created vs completed per day over time. Useful for tracking team throughput and trends.",
|
|
1513
|
+
inputSchema: {
|
|
1514
|
+
"type": "object",
|
|
1515
|
+
"properties": {
|
|
1516
|
+
"days": {
|
|
1517
|
+
"type": "number",
|
|
1518
|
+
"description": "Time window in days"
|
|
1519
|
+
},
|
|
1520
|
+
"workspace": {
|
|
1521
|
+
"type": "string",
|
|
1522
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1523
|
+
}
|
|
1524
|
+
}
|
|
1525
|
+
},
|
|
1526
|
+
},
|
|
1527
|
+
{
|
|
1528
|
+
name: "agentboard_getCostMetrics",
|
|
1529
|
+
description: "Get LLM cost data over time.",
|
|
1530
|
+
inputSchema: {
|
|
1531
|
+
"type": "object",
|
|
1532
|
+
"properties": {
|
|
1533
|
+
"days": {
|
|
1534
|
+
"type": "number",
|
|
1535
|
+
"description": "Time window in days"
|
|
1536
|
+
},
|
|
1537
|
+
"workspace": {
|
|
1538
|
+
"type": "string",
|
|
1539
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1540
|
+
}
|
|
1541
|
+
}
|
|
1542
|
+
},
|
|
1543
|
+
},
|
|
1544
|
+
{
|
|
1545
|
+
name: "agentboard_getTaskDistribution",
|
|
1546
|
+
description: "Get task status distribution (counts by status, for dashboards).",
|
|
1547
|
+
inputSchema: {
|
|
1548
|
+
"type": "object",
|
|
1549
|
+
"properties": {
|
|
1550
|
+
"board_id": {
|
|
1551
|
+
"type": "string",
|
|
1552
|
+
"description": "Board UUID (optional — omit for workspace-wide)"
|
|
1553
|
+
},
|
|
1554
|
+
"workspace": {
|
|
1555
|
+
"type": "string",
|
|
1556
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1557
|
+
}
|
|
1558
|
+
}
|
|
1559
|
+
},
|
|
1560
|
+
},
|
|
1561
|
+
{
|
|
1562
|
+
name: "agentboard_viewBoardTasks",
|
|
1563
|
+
description: "Filtered task list view for a board. Returns tasks with full context in YAML format.",
|
|
1564
|
+
inputSchema: {
|
|
1565
|
+
"type": "object",
|
|
1566
|
+
"properties": {
|
|
1567
|
+
"board_id": {
|
|
1568
|
+
"type": "string",
|
|
1569
|
+
"description": "Board UUID"
|
|
1570
|
+
},
|
|
1571
|
+
"status": {
|
|
1572
|
+
"type": "string",
|
|
1573
|
+
"description": "Filter by status",
|
|
1574
|
+
"enum": [
|
|
1575
|
+
"pending",
|
|
1576
|
+
"assigned",
|
|
1577
|
+
"in_progress",
|
|
1578
|
+
"blocked",
|
|
1579
|
+
"review",
|
|
1580
|
+
"done",
|
|
1581
|
+
"failed"
|
|
1582
|
+
]
|
|
1583
|
+
},
|
|
1584
|
+
"limit": {
|
|
1585
|
+
"type": "number",
|
|
1586
|
+
"description": "Max results"
|
|
1587
|
+
},
|
|
1588
|
+
"workspace": {
|
|
1589
|
+
"type": "string",
|
|
1590
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1591
|
+
}
|
|
1592
|
+
},
|
|
1593
|
+
"required": [
|
|
1594
|
+
"board_id"
|
|
1595
|
+
]
|
|
1596
|
+
},
|
|
1597
|
+
},
|
|
1598
|
+
{
|
|
1599
|
+
name: "agentboard_viewTaskDetail",
|
|
1600
|
+
description: "Single task detail view with full context — description, stages, links, comments, activity.",
|
|
1601
|
+
inputSchema: {
|
|
1602
|
+
"type": "object",
|
|
1603
|
+
"properties": {
|
|
1604
|
+
"task_id": {
|
|
1605
|
+
"type": "string",
|
|
1606
|
+
"description": "Task UUID"
|
|
1607
|
+
},
|
|
1608
|
+
"workspace": {
|
|
1609
|
+
"type": "string",
|
|
1610
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1611
|
+
}
|
|
1612
|
+
},
|
|
1613
|
+
"required": [
|
|
1614
|
+
"task_id"
|
|
1615
|
+
]
|
|
1616
|
+
},
|
|
1617
|
+
},
|
|
457
1618
|
{
|
|
458
1619
|
name: "agentdocs_listProjects",
|
|
459
1620
|
description: "List all documentation projects for the current brand. Returns project metadata: name, slug, page count, description.",
|
|
@@ -727,14 +1888,220 @@ export const GENERATED_TOOLS = [
|
|
|
727
1888
|
},
|
|
728
1889
|
},
|
|
729
1890
|
{
|
|
730
|
-
name: "agentdocs_deleteProject",
|
|
731
|
-
description: "Delete a documentation project and all its pages. This is destructive and cannot be undone.",
|
|
1891
|
+
name: "agentdocs_deleteProject",
|
|
1892
|
+
description: "Delete a documentation project and all its pages. This is destructive and cannot be undone.",
|
|
1893
|
+
inputSchema: {
|
|
1894
|
+
"type": "object",
|
|
1895
|
+
"properties": {
|
|
1896
|
+
"project_id": {
|
|
1897
|
+
"type": "string",
|
|
1898
|
+
"description": "Project UUID to delete"
|
|
1899
|
+
},
|
|
1900
|
+
"workspace": {
|
|
1901
|
+
"type": "string",
|
|
1902
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1903
|
+
}
|
|
1904
|
+
},
|
|
1905
|
+
"required": [
|
|
1906
|
+
"project_id"
|
|
1907
|
+
]
|
|
1908
|
+
},
|
|
1909
|
+
},
|
|
1910
|
+
{
|
|
1911
|
+
name: "agentdocs_movePage",
|
|
1912
|
+
description: "Move a documentation page to a different folder or change its sort order within the current folder.",
|
|
1913
|
+
inputSchema: {
|
|
1914
|
+
"type": "object",
|
|
1915
|
+
"properties": {
|
|
1916
|
+
"project_slug": {
|
|
1917
|
+
"type": "string",
|
|
1918
|
+
"description": "Project slug, UUID, or name"
|
|
1919
|
+
},
|
|
1920
|
+
"slug": {
|
|
1921
|
+
"type": "string",
|
|
1922
|
+
"description": "Page slug to move"
|
|
1923
|
+
},
|
|
1924
|
+
"path": {
|
|
1925
|
+
"type": "string",
|
|
1926
|
+
"description": "New folder path (e.g. \"/guides\", \"/api-reference\")"
|
|
1927
|
+
},
|
|
1928
|
+
"sort_order": {
|
|
1929
|
+
"type": "number",
|
|
1930
|
+
"description": "Position within the folder (0 = first)"
|
|
1931
|
+
},
|
|
1932
|
+
"workspace": {
|
|
1933
|
+
"type": "string",
|
|
1934
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1935
|
+
}
|
|
1936
|
+
},
|
|
1937
|
+
"required": [
|
|
1938
|
+
"project_slug",
|
|
1939
|
+
"slug"
|
|
1940
|
+
]
|
|
1941
|
+
},
|
|
1942
|
+
},
|
|
1943
|
+
{
|
|
1944
|
+
name: "agentdocs_createProject",
|
|
1945
|
+
description: "Create a new documentation project. Returns the project with its ID and slug.",
|
|
1946
|
+
inputSchema: {
|
|
1947
|
+
"type": "object",
|
|
1948
|
+
"properties": {
|
|
1949
|
+
"name": {
|
|
1950
|
+
"type": "string",
|
|
1951
|
+
"description": "Project name"
|
|
1952
|
+
},
|
|
1953
|
+
"description": {
|
|
1954
|
+
"type": "string",
|
|
1955
|
+
"description": "Project description"
|
|
1956
|
+
},
|
|
1957
|
+
"visibility": {
|
|
1958
|
+
"type": "string",
|
|
1959
|
+
"description": "Project visibility",
|
|
1960
|
+
"enum": [
|
|
1961
|
+
"public",
|
|
1962
|
+
"private"
|
|
1963
|
+
]
|
|
1964
|
+
},
|
|
1965
|
+
"workspace": {
|
|
1966
|
+
"type": "string",
|
|
1967
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
1968
|
+
}
|
|
1969
|
+
},
|
|
1970
|
+
"required": [
|
|
1971
|
+
"name"
|
|
1972
|
+
]
|
|
1973
|
+
},
|
|
1974
|
+
},
|
|
1975
|
+
{
|
|
1976
|
+
name: "agentdocs_updateProject",
|
|
1977
|
+
description: "Update a documentation project's name, description, or visibility.",
|
|
1978
|
+
inputSchema: {
|
|
1979
|
+
"type": "object",
|
|
1980
|
+
"properties": {
|
|
1981
|
+
"project_slug": {
|
|
1982
|
+
"type": "string",
|
|
1983
|
+
"description": "Project slug or UUID"
|
|
1984
|
+
},
|
|
1985
|
+
"name": {
|
|
1986
|
+
"type": "string",
|
|
1987
|
+
"description": "New name"
|
|
1988
|
+
},
|
|
1989
|
+
"description": {
|
|
1990
|
+
"type": "string",
|
|
1991
|
+
"description": "New description"
|
|
1992
|
+
},
|
|
1993
|
+
"visibility": {
|
|
1994
|
+
"type": "string",
|
|
1995
|
+
"description": "New visibility",
|
|
1996
|
+
"enum": [
|
|
1997
|
+
"public",
|
|
1998
|
+
"private"
|
|
1999
|
+
]
|
|
2000
|
+
},
|
|
2001
|
+
"workspace": {
|
|
2002
|
+
"type": "string",
|
|
2003
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2004
|
+
}
|
|
2005
|
+
},
|
|
2006
|
+
"required": [
|
|
2007
|
+
"project_slug"
|
|
2008
|
+
]
|
|
2009
|
+
},
|
|
2010
|
+
},
|
|
2011
|
+
{
|
|
2012
|
+
name: "agentdocs_pageHistory",
|
|
2013
|
+
description: "Get revision history for a page. Returns all past versions with dates and authors.",
|
|
2014
|
+
inputSchema: {
|
|
2015
|
+
"type": "object",
|
|
2016
|
+
"properties": {
|
|
2017
|
+
"page_id": {
|
|
2018
|
+
"type": "string",
|
|
2019
|
+
"description": "Page UUID"
|
|
2020
|
+
},
|
|
2021
|
+
"limit": {
|
|
2022
|
+
"type": "number",
|
|
2023
|
+
"description": "Max results"
|
|
2024
|
+
},
|
|
2025
|
+
"workspace": {
|
|
2026
|
+
"type": "string",
|
|
2027
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2028
|
+
}
|
|
2029
|
+
},
|
|
2030
|
+
"required": [
|
|
2031
|
+
"page_id"
|
|
2032
|
+
]
|
|
2033
|
+
},
|
|
2034
|
+
},
|
|
2035
|
+
{
|
|
2036
|
+
name: "agentdocs_pageDiff",
|
|
2037
|
+
description: "Compute unified diff between two revisions. Omit from_rev for parent comparison.",
|
|
2038
|
+
inputSchema: {
|
|
2039
|
+
"type": "object",
|
|
2040
|
+
"properties": {
|
|
2041
|
+
"page_id": {
|
|
2042
|
+
"type": "string",
|
|
2043
|
+
"description": "Page UUID"
|
|
2044
|
+
},
|
|
2045
|
+
"from_rev": {
|
|
2046
|
+
"type": "string",
|
|
2047
|
+
"description": "From revision ID (omit for parent comparison)"
|
|
2048
|
+
},
|
|
2049
|
+
"to_rev": {
|
|
2050
|
+
"type": "string",
|
|
2051
|
+
"description": "To revision ID"
|
|
2052
|
+
},
|
|
2053
|
+
"workspace": {
|
|
2054
|
+
"type": "string",
|
|
2055
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2056
|
+
}
|
|
2057
|
+
},
|
|
2058
|
+
"required": [
|
|
2059
|
+
"page_id"
|
|
2060
|
+
]
|
|
2061
|
+
},
|
|
2062
|
+
},
|
|
2063
|
+
{
|
|
2064
|
+
name: "agentdocs_pageRollback",
|
|
2065
|
+
description: "Rollback a page to a previous revision. Non-destructive — creates a new revision with the old content.",
|
|
2066
|
+
inputSchema: {
|
|
2067
|
+
"type": "object",
|
|
2068
|
+
"properties": {
|
|
2069
|
+
"page_id": {
|
|
2070
|
+
"type": "string",
|
|
2071
|
+
"description": "Page UUID"
|
|
2072
|
+
},
|
|
2073
|
+
"revision_id": {
|
|
2074
|
+
"type": "string",
|
|
2075
|
+
"description": "Target revision ID to restore"
|
|
2076
|
+
},
|
|
2077
|
+
"message": {
|
|
2078
|
+
"type": "string",
|
|
2079
|
+
"description": "Commit message"
|
|
2080
|
+
},
|
|
2081
|
+
"workspace": {
|
|
2082
|
+
"type": "string",
|
|
2083
|
+
"description": "Workspace slug (optional, uses current workspace if omitted)"
|
|
2084
|
+
}
|
|
2085
|
+
},
|
|
2086
|
+
"required": [
|
|
2087
|
+
"page_id",
|
|
2088
|
+
"revision_id"
|
|
2089
|
+
]
|
|
2090
|
+
},
|
|
2091
|
+
},
|
|
2092
|
+
{
|
|
2093
|
+
name: "agentdocs_listMedia",
|
|
2094
|
+
description: "List media files in a documentation project. Returns filenames, sizes, URLs, and markdown embed snippets.",
|
|
732
2095
|
inputSchema: {
|
|
733
2096
|
"type": "object",
|
|
734
2097
|
"properties": {
|
|
735
|
-
"
|
|
2098
|
+
"project_slug": {
|
|
736
2099
|
"type": "string",
|
|
737
|
-
"description": "Project
|
|
2100
|
+
"description": "Project slug or UUID"
|
|
2101
|
+
},
|
|
2102
|
+
"limit": {
|
|
2103
|
+
"type": "number",
|
|
2104
|
+
"description": "Max results"
|
|
738
2105
|
},
|
|
739
2106
|
"workspace": {
|
|
740
2107
|
"type": "string",
|
|
@@ -742,31 +2109,26 @@ export const GENERATED_TOOLS = [
|
|
|
742
2109
|
}
|
|
743
2110
|
},
|
|
744
2111
|
"required": [
|
|
745
|
-
"
|
|
2112
|
+
"project_slug"
|
|
746
2113
|
]
|
|
747
2114
|
},
|
|
748
2115
|
},
|
|
749
2116
|
{
|
|
750
|
-
name: "
|
|
751
|
-
description: "
|
|
2117
|
+
name: "agentdocs_bulkCreatePages",
|
|
2118
|
+
description: "Bulk create or update multiple pages at once. Used for multi-page writes. Each page needs title, slug, content_md, commit_message.",
|
|
752
2119
|
inputSchema: {
|
|
753
2120
|
"type": "object",
|
|
754
2121
|
"properties": {
|
|
755
2122
|
"project_slug": {
|
|
756
2123
|
"type": "string",
|
|
757
|
-
"description": "Project slug
|
|
758
|
-
},
|
|
759
|
-
"slug": {
|
|
760
|
-
"type": "string",
|
|
761
|
-
"description": "Page slug to move"
|
|
762
|
-
},
|
|
763
|
-
"path": {
|
|
764
|
-
"type": "string",
|
|
765
|
-
"description": "New folder path (e.g. \"/guides\", \"/api-reference\")"
|
|
2124
|
+
"description": "Project slug or UUID"
|
|
766
2125
|
},
|
|
767
|
-
"
|
|
768
|
-
"type": "
|
|
769
|
-
"description": "
|
|
2126
|
+
"pages": {
|
|
2127
|
+
"type": "array",
|
|
2128
|
+
"description": "Array of page objects. Each object: title (required), slug (required), content_md (required), commit_message (required), path (optional tree location)\n",
|
|
2129
|
+
"items": {
|
|
2130
|
+
"type": "string"
|
|
2131
|
+
}
|
|
770
2132
|
},
|
|
771
2133
|
"workspace": {
|
|
772
2134
|
"type": "string",
|
|
@@ -775,7 +2137,7 @@ export const GENERATED_TOOLS = [
|
|
|
775
2137
|
},
|
|
776
2138
|
"required": [
|
|
777
2139
|
"project_slug",
|
|
778
|
-
"
|
|
2140
|
+
"pages"
|
|
779
2141
|
]
|
|
780
2142
|
},
|
|
781
2143
|
},
|
|
@@ -5233,6 +6595,356 @@ export async function handleGeneratedTool(name, args, callApi, buildUrl, ok) {
|
|
|
5233
6595
|
body["position"] = args.position;
|
|
5234
6596
|
return ok(await callApi("POST", path, ws, body));
|
|
5235
6597
|
}
|
|
6598
|
+
case "agentboard_listSubtasks": {
|
|
6599
|
+
const path = buildUrl(`/api/v1/board/tasks/${args.task_id}/subtasks`, undefined, fmt);
|
|
6600
|
+
return ok(await callApi("GET", path, ws));
|
|
6601
|
+
}
|
|
6602
|
+
case "agentboard_searchTasks": {
|
|
6603
|
+
const qp = [];
|
|
6604
|
+
if (args.query != null)
|
|
6605
|
+
qp.push(`query=${args.query}`);
|
|
6606
|
+
if (args.board_id != null)
|
|
6607
|
+
qp.push(`board_id=${args.board_id}`);
|
|
6608
|
+
if (args.limit != null)
|
|
6609
|
+
qp.push(`limit=${args.limit}`);
|
|
6610
|
+
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
6611
|
+
const path = buildUrl("/api/v1/board/cards/search" + qs, undefined, fmt);
|
|
6612
|
+
return ok(await callApi("GET", path, ws));
|
|
6613
|
+
}
|
|
6614
|
+
case "agentboard_batchGetTasks": {
|
|
6615
|
+
const qp = [];
|
|
6616
|
+
if (args.ids != null)
|
|
6617
|
+
qp.push(`ids=${args.ids}`);
|
|
6618
|
+
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
6619
|
+
const path = buildUrl("/api/v1/board/tasks/batch" + qs, undefined, fmt);
|
|
6620
|
+
return ok(await callApi("GET", path, ws));
|
|
6621
|
+
}
|
|
6622
|
+
case "agentboard_createBoard": {
|
|
6623
|
+
const path = "/api/v1/board/boards";
|
|
6624
|
+
const body = {};
|
|
6625
|
+
if (args.name != null)
|
|
6626
|
+
body["name"] = args.name;
|
|
6627
|
+
if (args.description != null)
|
|
6628
|
+
body["description"] = args.description;
|
|
6629
|
+
if (args.visibility != null)
|
|
6630
|
+
body["visibility"] = args.visibility;
|
|
6631
|
+
return ok(await callApi("POST", path, ws, body));
|
|
6632
|
+
}
|
|
6633
|
+
case "agentboard_updateBoard": {
|
|
6634
|
+
const path = `/api/v1/board/boards/${args.board_id}`;
|
|
6635
|
+
const body = {};
|
|
6636
|
+
if (args.name != null)
|
|
6637
|
+
body["name"] = args.name;
|
|
6638
|
+
if (args.description != null)
|
|
6639
|
+
body["description"] = args.description;
|
|
6640
|
+
if (args.visibility != null)
|
|
6641
|
+
body["visibility"] = args.visibility;
|
|
6642
|
+
return ok(await callApi("PATCH", path, ws, body));
|
|
6643
|
+
}
|
|
6644
|
+
case "agentboard_createColumn": {
|
|
6645
|
+
const path = `/api/v1/board/boards/${args.board_id}/columns`;
|
|
6646
|
+
const body = {};
|
|
6647
|
+
if (args.name != null)
|
|
6648
|
+
body["name"] = args.name;
|
|
6649
|
+
if (args.color != null)
|
|
6650
|
+
body["color"] = args.color;
|
|
6651
|
+
if (args.wip_limit != null)
|
|
6652
|
+
body["wip_limit"] = args.wip_limit;
|
|
6653
|
+
return ok(await callApi("POST", path, ws, body));
|
|
6654
|
+
}
|
|
6655
|
+
case "agentboard_reorderColumns": {
|
|
6656
|
+
const path = `/api/v1/board/boards/${args.board_id}/columns/reorder`;
|
|
6657
|
+
const body = {};
|
|
6658
|
+
if (args.column_ids != null)
|
|
6659
|
+
body["column_ids"] = args.column_ids;
|
|
6660
|
+
return ok(await callApi("POST", path, ws, body));
|
|
6661
|
+
}
|
|
6662
|
+
case "agentboard_listStages": {
|
|
6663
|
+
const path = buildUrl(`/api/v1/board/tasks/${args.task_id}/stages`, undefined, fmt);
|
|
6664
|
+
return ok(await callApi("GET", path, ws));
|
|
6665
|
+
}
|
|
6666
|
+
case "agentboard_createStage": {
|
|
6667
|
+
const path = `/api/v1/board/tasks/${args.task_id}/stages`;
|
|
6668
|
+
const body = {};
|
|
6669
|
+
if (args.title != null)
|
|
6670
|
+
body["title"] = args.title;
|
|
6671
|
+
if (args.description != null)
|
|
6672
|
+
body["description"] = args.description;
|
|
6673
|
+
if (args.assignee_agent_id != null)
|
|
6674
|
+
body["assignee_agent_id"] = args.assignee_agent_id;
|
|
6675
|
+
if (args.agent_instructions != null)
|
|
6676
|
+
body["agent_instructions"] = args.agent_instructions;
|
|
6677
|
+
if (args.position != null)
|
|
6678
|
+
body["position"] = args.position;
|
|
6679
|
+
return ok(await callApi("POST", path, ws, body));
|
|
6680
|
+
}
|
|
6681
|
+
case "agentboard_updateStage": {
|
|
6682
|
+
const path = `/api/v1/board/tasks/${args.task_id}/stages/${args.stage_id}`;
|
|
6683
|
+
const body = {};
|
|
6684
|
+
if (args.title != null)
|
|
6685
|
+
body["title"] = args.title;
|
|
6686
|
+
if (args.description != null)
|
|
6687
|
+
body["description"] = args.description;
|
|
6688
|
+
if (args.assignee_agent_id != null)
|
|
6689
|
+
body["assignee_agent_id"] = args.assignee_agent_id;
|
|
6690
|
+
if (args.agent_instructions != null)
|
|
6691
|
+
body["agent_instructions"] = args.agent_instructions;
|
|
6692
|
+
return ok(await callApi("PATCH", path, ws, body));
|
|
6693
|
+
}
|
|
6694
|
+
case "agentboard_completeStage": {
|
|
6695
|
+
const path = `/api/v1/board/tasks/${args.task_id}/stages/${args.stage_id}/handoff`;
|
|
6696
|
+
const body = {};
|
|
6697
|
+
if (args.comment != null)
|
|
6698
|
+
body["comment"] = args.comment;
|
|
6699
|
+
return ok(await callApi("POST", path, ws, body));
|
|
6700
|
+
}
|
|
6701
|
+
case "agentboard_reorderStages": {
|
|
6702
|
+
const path = `/api/v1/board/tasks/${args.task_id}/stages/reorder`;
|
|
6703
|
+
const body = {};
|
|
6704
|
+
if (args.order != null)
|
|
6705
|
+
body["order"] = args.order;
|
|
6706
|
+
return ok(await callApi("POST", path, ws, body));
|
|
6707
|
+
}
|
|
6708
|
+
case "agentboard_listTaskLinks": {
|
|
6709
|
+
const path = buildUrl(`/api/v1/board/tasks/${args.task_id}/links`, undefined, fmt);
|
|
6710
|
+
return ok(await callApi("GET", path, ws));
|
|
6711
|
+
}
|
|
6712
|
+
case "agentboard_createTaskLink": {
|
|
6713
|
+
const path = `/api/v1/board/tasks/${args.task_id}/links`;
|
|
6714
|
+
const body = {};
|
|
6715
|
+
if (args.target_task_id != null)
|
|
6716
|
+
body["target_task_id"] = args.target_task_id;
|
|
6717
|
+
if (args.link_type != null)
|
|
6718
|
+
body["link_type"] = args.link_type;
|
|
6719
|
+
return ok(await callApi("POST", path, ws, body));
|
|
6720
|
+
}
|
|
6721
|
+
case "agentboard_deleteTaskLink": {
|
|
6722
|
+
const path = `/api/v1/board/task-links/${args.link_id}`;
|
|
6723
|
+
return ok(await callApi("DELETE", path, ws));
|
|
6724
|
+
}
|
|
6725
|
+
case "agentboard_listBoardMembers": {
|
|
6726
|
+
const path = buildUrl(`/api/v1/board/boards/${args.board_id}/members`, undefined, fmt);
|
|
6727
|
+
return ok(await callApi("GET", path, ws));
|
|
6728
|
+
}
|
|
6729
|
+
case "agentboard_addBoardMember": {
|
|
6730
|
+
const path = `/api/v1/board/boards/${args.board_id}/members`;
|
|
6731
|
+
const body = {};
|
|
6732
|
+
if (args.user_id != null)
|
|
6733
|
+
body["user_id"] = args.user_id;
|
|
6734
|
+
if (args.role != null)
|
|
6735
|
+
body["role"] = args.role;
|
|
6736
|
+
return ok(await callApi("POST", path, ws, body));
|
|
6737
|
+
}
|
|
6738
|
+
case "agentboard_removeBoardMember": {
|
|
6739
|
+
const path = `/api/v1/board/boards/${args.board_id}/members/${args.user_id}`;
|
|
6740
|
+
return ok(await callApi("DELETE", path, ws));
|
|
6741
|
+
}
|
|
6742
|
+
case "agentboard_listMarkers": {
|
|
6743
|
+
const path = buildUrl("/api/v1/board/markers", undefined, fmt);
|
|
6744
|
+
return ok(await callApi("GET", path, ws));
|
|
6745
|
+
}
|
|
6746
|
+
case "agentboard_createMarker": {
|
|
6747
|
+
const path = "/api/v1/board/markers";
|
|
6748
|
+
const body = {};
|
|
6749
|
+
if (args.name != null)
|
|
6750
|
+
body["name"] = args.name;
|
|
6751
|
+
if (args.color != null)
|
|
6752
|
+
body["color"] = args.color;
|
|
6753
|
+
if (args.icon != null)
|
|
6754
|
+
body["icon"] = args.icon;
|
|
6755
|
+
return ok(await callApi("POST", path, ws, body));
|
|
6756
|
+
}
|
|
6757
|
+
case "agentboard_updateMarker": {
|
|
6758
|
+
const path = `/api/v1/board/markers/${args.marker_id}`;
|
|
6759
|
+
const body = {};
|
|
6760
|
+
if (args.name != null)
|
|
6761
|
+
body["name"] = args.name;
|
|
6762
|
+
if (args.color != null)
|
|
6763
|
+
body["color"] = args.color;
|
|
6764
|
+
if (args.icon != null)
|
|
6765
|
+
body["icon"] = args.icon;
|
|
6766
|
+
return ok(await callApi("PATCH", path, ws, body));
|
|
6767
|
+
}
|
|
6768
|
+
case "agentboard_deleteMarker": {
|
|
6769
|
+
const path = `/api/v1/board/markers/${args.marker_id}`;
|
|
6770
|
+
return ok(await callApi("DELETE", path, ws));
|
|
6771
|
+
}
|
|
6772
|
+
case "agentboard_toggleMarker": {
|
|
6773
|
+
const path = `/api/v1/board/markers/${args.marker_id}/toggle`;
|
|
6774
|
+
const body = {};
|
|
6775
|
+
if (args.task_id != null)
|
|
6776
|
+
body["task_id"] = args.task_id;
|
|
6777
|
+
return ok(await callApi("POST", path, ws, body));
|
|
6778
|
+
}
|
|
6779
|
+
case "agentboard_listBoardLinks": {
|
|
6780
|
+
const path = buildUrl("/api/v1/board/board-links", undefined, fmt);
|
|
6781
|
+
return ok(await callApi("GET", path, ws));
|
|
6782
|
+
}
|
|
6783
|
+
case "agentboard_createBoardLink": {
|
|
6784
|
+
const path = "/api/v1/board/board-links";
|
|
6785
|
+
const body = {};
|
|
6786
|
+
if (args.source_board_id != null)
|
|
6787
|
+
body["source_board_id"] = args.source_board_id;
|
|
6788
|
+
if (args.target_board_id != null)
|
|
6789
|
+
body["target_board_id"] = args.target_board_id;
|
|
6790
|
+
if (args.link_type != null)
|
|
6791
|
+
body["link_type"] = args.link_type;
|
|
6792
|
+
if (args.label != null)
|
|
6793
|
+
body["label"] = args.label;
|
|
6794
|
+
return ok(await callApi("POST", path, ws, body));
|
|
6795
|
+
}
|
|
6796
|
+
case "agentboard_updateBoardLink": {
|
|
6797
|
+
const path = `/api/v1/board/board-links/${args.link_id}`;
|
|
6798
|
+
const body = {};
|
|
6799
|
+
if (args.link_type != null)
|
|
6800
|
+
body["link_type"] = args.link_type;
|
|
6801
|
+
if (args.label != null)
|
|
6802
|
+
body["label"] = args.label;
|
|
6803
|
+
return ok(await callApi("PATCH", path, ws, body));
|
|
6804
|
+
}
|
|
6805
|
+
case "agentboard_deleteBoardLink": {
|
|
6806
|
+
const path = `/api/v1/board/board-links/${args.link_id}`;
|
|
6807
|
+
return ok(await callApi("DELETE", path, ws));
|
|
6808
|
+
}
|
|
6809
|
+
case "agentboard_listFiles": {
|
|
6810
|
+
const path = buildUrl(`/api/v1/board/tasks/${args.task_id}/files`, undefined, fmt);
|
|
6811
|
+
return ok(await callApi("GET", path, ws));
|
|
6812
|
+
}
|
|
6813
|
+
case "agentboard_getFile": {
|
|
6814
|
+
const path = buildUrl(`/api/v1/board/files/${args.file_id}`, undefined, fmt);
|
|
6815
|
+
return ok(await callApi("GET", path, ws));
|
|
6816
|
+
}
|
|
6817
|
+
case "agentboard_agentMyTasks": {
|
|
6818
|
+
const qp = [];
|
|
6819
|
+
if (args.board_id != null)
|
|
6820
|
+
qp.push(`board_id=${args.board_id}`);
|
|
6821
|
+
if (args.status != null)
|
|
6822
|
+
qp.push(`status=${args.status}`);
|
|
6823
|
+
if (args.limit != null)
|
|
6824
|
+
qp.push(`limit=${args.limit}`);
|
|
6825
|
+
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
6826
|
+
const path = buildUrl("/api/v1/board/agent-api/my-tasks" + qs, undefined, fmt);
|
|
6827
|
+
return ok(await callApi("GET", path, ws));
|
|
6828
|
+
}
|
|
6829
|
+
case "agentboard_agentMyDelegations": {
|
|
6830
|
+
const qp = [];
|
|
6831
|
+
if (args.status != null)
|
|
6832
|
+
qp.push(`status=${args.status}`);
|
|
6833
|
+
if (args.limit != null)
|
|
6834
|
+
qp.push(`limit=${args.limit}`);
|
|
6835
|
+
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
6836
|
+
const path = buildUrl("/api/v1/board/agent-api/my-delegations" + qs, undefined, fmt);
|
|
6837
|
+
return ok(await callApi("GET", path, ws));
|
|
6838
|
+
}
|
|
6839
|
+
case "agentboard_agentBatchCreateTasks": {
|
|
6840
|
+
const path = "/api/v1/board/agent-api/tasks/batch";
|
|
6841
|
+
const body = {};
|
|
6842
|
+
if (args.tasks != null)
|
|
6843
|
+
body["tasks"] = args.tasks;
|
|
6844
|
+
return ok(await callApi("POST", path, ws, body));
|
|
6845
|
+
}
|
|
6846
|
+
case "agentboard_agentReportProgress": {
|
|
6847
|
+
const path = `/api/v1/board/agent-api/tasks/${args.task_id}/progress`;
|
|
6848
|
+
const body = {};
|
|
6849
|
+
if (args.percent != null)
|
|
6850
|
+
body["percent"] = args.percent;
|
|
6851
|
+
if (args.message != null)
|
|
6852
|
+
body["message"] = args.message;
|
|
6853
|
+
if (args.current_operation != null)
|
|
6854
|
+
body["current_operation"] = args.current_operation;
|
|
6855
|
+
return ok(await callApi("POST", path, ws, body));
|
|
6856
|
+
}
|
|
6857
|
+
case "agentboard_agentCompleteTask": {
|
|
6858
|
+
const path = `/api/v1/board/agent-api/tasks/${args.task_id}/complete`;
|
|
6859
|
+
const body = {};
|
|
6860
|
+
if (args.status != null)
|
|
6861
|
+
body["status"] = args.status;
|
|
6862
|
+
if (args.summary != null)
|
|
6863
|
+
body["summary"] = args.summary;
|
|
6864
|
+
if (args.result_data != null)
|
|
6865
|
+
body["result_data"] = args.result_data;
|
|
6866
|
+
return ok(await callApi("POST", path, ws, body));
|
|
6867
|
+
}
|
|
6868
|
+
case "agentboard_agentDelegateTask": {
|
|
6869
|
+
const path = `/api/v1/board/agent-api/tasks/${args.task_id}/delegate`;
|
|
6870
|
+
const body = {};
|
|
6871
|
+
if (args.agent_slug != null)
|
|
6872
|
+
body["agent_slug"] = args.agent_slug;
|
|
6873
|
+
if (args.instructions != null)
|
|
6874
|
+
body["instructions"] = args.instructions;
|
|
6875
|
+
return ok(await callApi("POST", path, ws, body));
|
|
6876
|
+
}
|
|
6877
|
+
case "agentboard_agentMention": {
|
|
6878
|
+
const path = `/api/v1/board/tasks/${args.task_id}/agent-mention`;
|
|
6879
|
+
const body = {};
|
|
6880
|
+
if (args.agent_slug != null)
|
|
6881
|
+
body["agent_slug"] = args.agent_slug;
|
|
6882
|
+
if (args.message != null)
|
|
6883
|
+
body["message"] = args.message;
|
|
6884
|
+
return ok(await callApi("POST", path, ws, body));
|
|
6885
|
+
}
|
|
6886
|
+
case "agentboard_agentTasksBy": {
|
|
6887
|
+
const qp = [];
|
|
6888
|
+
if (args.status != null)
|
|
6889
|
+
qp.push(`status=${args.status}`);
|
|
6890
|
+
if (args.limit != null)
|
|
6891
|
+
qp.push(`limit=${args.limit}`);
|
|
6892
|
+
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
6893
|
+
const path = buildUrl(`/api/v1/board/agents/${args.agent_slug}/tasks` + qs, undefined, fmt);
|
|
6894
|
+
return ok(await callApi("GET", path, ws));
|
|
6895
|
+
}
|
|
6896
|
+
case "agentboard_getBoardOverview": {
|
|
6897
|
+
const path = buildUrl(`/api/v1/board/views/boards/${args.board_id}/overview`, undefined, fmt);
|
|
6898
|
+
return ok(await callApi("GET", path, ws));
|
|
6899
|
+
}
|
|
6900
|
+
case "agentboard_getBoardSummary": {
|
|
6901
|
+
const qp = [];
|
|
6902
|
+
if (args.board_id != null)
|
|
6903
|
+
qp.push(`board_id=${args.board_id}`);
|
|
6904
|
+
if (args.days != null)
|
|
6905
|
+
qp.push(`days=${args.days}`);
|
|
6906
|
+
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
6907
|
+
const path = buildUrl("/api/v1/board/metrics/board-summary" + qs, undefined, fmt);
|
|
6908
|
+
return ok(await callApi("GET", path, ws));
|
|
6909
|
+
}
|
|
6910
|
+
case "agentboard_getTaskVelocity": {
|
|
6911
|
+
const qp = [];
|
|
6912
|
+
if (args.days != null)
|
|
6913
|
+
qp.push(`days=${args.days}`);
|
|
6914
|
+
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
6915
|
+
const path = buildUrl("/api/v1/board/metrics/task-velocity" + qs, undefined, fmt);
|
|
6916
|
+
return ok(await callApi("GET", path, ws));
|
|
6917
|
+
}
|
|
6918
|
+
case "agentboard_getCostMetrics": {
|
|
6919
|
+
const qp = [];
|
|
6920
|
+
if (args.days != null)
|
|
6921
|
+
qp.push(`days=${args.days}`);
|
|
6922
|
+
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
6923
|
+
const path = buildUrl("/api/v1/board/metrics/costs" + qs, undefined, fmt);
|
|
6924
|
+
return ok(await callApi("GET", path, ws));
|
|
6925
|
+
}
|
|
6926
|
+
case "agentboard_getTaskDistribution": {
|
|
6927
|
+
const qp = [];
|
|
6928
|
+
if (args.board_id != null)
|
|
6929
|
+
qp.push(`board_id=${args.board_id}`);
|
|
6930
|
+
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
6931
|
+
const path = buildUrl("/api/v1/board/metrics/distribution" + qs, undefined, fmt);
|
|
6932
|
+
return ok(await callApi("GET", path, ws));
|
|
6933
|
+
}
|
|
6934
|
+
case "agentboard_viewBoardTasks": {
|
|
6935
|
+
const qp = [];
|
|
6936
|
+
if (args.status != null)
|
|
6937
|
+
qp.push(`status=${args.status}`);
|
|
6938
|
+
if (args.limit != null)
|
|
6939
|
+
qp.push(`limit=${args.limit}`);
|
|
6940
|
+
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
6941
|
+
const path = buildUrl(`/api/v1/board/views/boards/${args.board_id}/tasks` + qs, undefined, fmt);
|
|
6942
|
+
return ok(await callApi("GET", path, ws));
|
|
6943
|
+
}
|
|
6944
|
+
case "agentboard_viewTaskDetail": {
|
|
6945
|
+
const path = buildUrl(`/api/v1/board/views/tasks/${args.task_id}`, undefined, fmt);
|
|
6946
|
+
return ok(await callApi("GET", path, ws));
|
|
6947
|
+
}
|
|
5236
6948
|
case "agentdocs_listProjects": {
|
|
5237
6949
|
const path = buildUrl("/api/v1/docs/projects", undefined, fmt);
|
|
5238
6950
|
return ok(await callApi("GET", path, ws));
|
|
@@ -5323,6 +7035,70 @@ export async function handleGeneratedTool(name, args, callApi, buildUrl, ok) {
|
|
|
5323
7035
|
body["sort_order"] = args.sort_order;
|
|
5324
7036
|
return ok(await callApi("PATCH", path, ws, body));
|
|
5325
7037
|
}
|
|
7038
|
+
case "agentdocs_createProject": {
|
|
7039
|
+
const path = "/api/v1/docs/projects";
|
|
7040
|
+
const body = {};
|
|
7041
|
+
if (args.name != null)
|
|
7042
|
+
body["name"] = args.name;
|
|
7043
|
+
if (args.description != null)
|
|
7044
|
+
body["description"] = args.description;
|
|
7045
|
+
if (args.visibility != null)
|
|
7046
|
+
body["visibility"] = args.visibility;
|
|
7047
|
+
return ok(await callApi("POST", path, ws, body));
|
|
7048
|
+
}
|
|
7049
|
+
case "agentdocs_updateProject": {
|
|
7050
|
+
const path = `/api/v1/docs/projects/${args.project_slug}`;
|
|
7051
|
+
const body = {};
|
|
7052
|
+
if (args.name != null)
|
|
7053
|
+
body["name"] = args.name;
|
|
7054
|
+
if (args.description != null)
|
|
7055
|
+
body["description"] = args.description;
|
|
7056
|
+
if (args.visibility != null)
|
|
7057
|
+
body["visibility"] = args.visibility;
|
|
7058
|
+
return ok(await callApi("PATCH", path, ws, body));
|
|
7059
|
+
}
|
|
7060
|
+
case "agentdocs_pageHistory": {
|
|
7061
|
+
const qp = [];
|
|
7062
|
+
if (args.limit != null)
|
|
7063
|
+
qp.push(`limit=${args.limit}`);
|
|
7064
|
+
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
7065
|
+
const path = buildUrl(`/api/v1/docs/pages/${args.page_id}/history` + qs, undefined, fmt);
|
|
7066
|
+
return ok(await callApi("GET", path, ws));
|
|
7067
|
+
}
|
|
7068
|
+
case "agentdocs_pageDiff": {
|
|
7069
|
+
const qp = [];
|
|
7070
|
+
if (args.from_rev != null)
|
|
7071
|
+
qp.push(`from_rev=${args.from_rev}`);
|
|
7072
|
+
if (args.to_rev != null)
|
|
7073
|
+
qp.push(`to_rev=${args.to_rev}`);
|
|
7074
|
+
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
7075
|
+
const path = buildUrl(`/api/v1/docs/pages/${args.page_id}/diff` + qs, undefined, fmt);
|
|
7076
|
+
return ok(await callApi("GET", path, ws));
|
|
7077
|
+
}
|
|
7078
|
+
case "agentdocs_pageRollback": {
|
|
7079
|
+
const path = `/api/v1/docs/pages/${args.page_id}/rollback`;
|
|
7080
|
+
const body = {};
|
|
7081
|
+
if (args.revision_id != null)
|
|
7082
|
+
body["revision_id"] = args.revision_id;
|
|
7083
|
+
if (args.message != null)
|
|
7084
|
+
body["message"] = args.message;
|
|
7085
|
+
return ok(await callApi("POST", path, ws, body));
|
|
7086
|
+
}
|
|
7087
|
+
case "agentdocs_listMedia": {
|
|
7088
|
+
const qp = [];
|
|
7089
|
+
if (args.limit != null)
|
|
7090
|
+
qp.push(`limit=${args.limit}`);
|
|
7091
|
+
const qs = qp.length ? "?" + qp.join("&") : "";
|
|
7092
|
+
const path = buildUrl(`/api/v1/docs/projects/${args.project_slug}/media` + qs, undefined, fmt);
|
|
7093
|
+
return ok(await callApi("GET", path, ws));
|
|
7094
|
+
}
|
|
7095
|
+
case "agentdocs_bulkCreatePages": {
|
|
7096
|
+
const path = `/api/v1/docs/projects/${args.project_slug}/pages/bulk`;
|
|
7097
|
+
const body = {};
|
|
7098
|
+
if (args.pages != null)
|
|
7099
|
+
body["pages"] = args.pages;
|
|
7100
|
+
return ok(await callApi("POST", path, ws, body));
|
|
7101
|
+
}
|
|
5326
7102
|
case "agentmemory_searchMemories": {
|
|
5327
7103
|
const path = `/api/v1/memory/agents/${args.agent_id}/context`;
|
|
5328
7104
|
const body = {};
|