@squadrules/mcp 5.18.1 → 5.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/embed-docs/mem/adapter-migration.md +1 -1
  3. package/dist/embed-docs/mem/author-adapter.md +1 -1
  4. package/dist/embed-docs/mem/bulk-insert-adapters-via-cli.md +1 -1
  5. package/dist/embed-docs/mem/challenge-type-guide.md +1 -1
  6. package/dist/embed-docs/mem/critic-loop-guide.md +1 -1
  7. package/dist/embed-docs/mem/critic-loop.md +1 -1
  8. package/dist/embed-docs/mem/protocol-linking-guide.md +1 -1
  9. package/dist/embed-docs/mem/refine-search.md +1 -1
  10. package/dist/http/http-mcp-handler.d.ts +7 -4
  11. package/dist/http/http-mcp-handler.d.ts.map +1 -1
  12. package/dist/http/http-mcp-handler.js +40 -35
  13. package/dist/http/http-mcp-handler.js.map +1 -1
  14. package/dist/http/mcp-audit-emit.d.ts +18 -8
  15. package/dist/http/mcp-audit-emit.d.ts.map +1 -1
  16. package/dist/http/mcp-audit-emit.js +38 -14
  17. package/dist/http/mcp-audit-emit.js.map +1 -1
  18. package/dist/resources/embedded-mcp-resources.js +14 -14
  19. package/dist/resources/embedded-mcp-resources.js.map +1 -1
  20. package/dist/runtime-lock.json +2 -2
  21. package/dist/server.d.ts.map +1 -1
  22. package/dist/server.js +3 -1
  23. package/dist/server.js.map +1 -1
  24. package/dist/tools/activate.d.ts.map +1 -1
  25. package/dist/tools/activate.js +6 -2
  26. package/dist/tools/activate.js.map +1 -1
  27. package/dist/tools/delete.d.ts.map +1 -1
  28. package/dist/tools/delete.js +6 -2
  29. package/dist/tools/delete.js.map +1 -1
  30. package/dist/tools/export.d.ts.map +1 -1
  31. package/dist/tools/export.js +6 -2
  32. package/dist/tools/export.js.map +1 -1
  33. package/dist/tools/forward-register.d.ts.map +1 -1
  34. package/dist/tools/forward-register.js +6 -2
  35. package/dist/tools/forward-register.js.map +1 -1
  36. package/dist/tools/reward.d.ts.map +1 -1
  37. package/dist/tools/reward.js +6 -2
  38. package/dist/tools/reward.js.map +1 -1
  39. package/dist/tools/spaces.d.ts.map +1 -1
  40. package/dist/tools/spaces.js +6 -2
  41. package/dist/tools/spaces.js.map +1 -1
  42. package/dist/tools/tool-annotations.d.ts +72 -0
  43. package/dist/tools/tool-annotations.d.ts.map +1 -0
  44. package/dist/tools/tool-annotations.js +103 -0
  45. package/dist/tools/tool-annotations.js.map +1 -0
  46. package/dist/tools/tool-icons.d.ts +62 -0
  47. package/dist/tools/tool-icons.d.ts.map +1 -0
  48. package/dist/tools/tool-icons.js +89 -0
  49. package/dist/tools/tool-icons.js.map +1 -0
  50. package/dist/tools/tool-registry.d.ts +55 -1
  51. package/dist/tools/tool-registry.d.ts.map +1 -1
  52. package/dist/tools/tool-registry.js +36 -8
  53. package/dist/tools/tool-registry.js.map +1 -1
  54. package/dist/tools/train.d.ts.map +1 -1
  55. package/dist/tools/train.js +6 -2
  56. package/dist/tools/train.js.map +1 -1
  57. package/dist/tools/tune.d.ts.map +1 -1
  58. package/dist/tools/tune.js +6 -2
  59. package/dist/tools/tune.js.map +1 -1
  60. package/dist/ui/assets/{AccountPage-BArTku32.js → AccountPage-DH1vwc2O.js} +1 -1
  61. package/dist/ui/assets/{index-BXsPoNTU.js → index-2iUzrQ_h.js} +2 -2
  62. package/dist/ui/index.html +1 -1
  63. package/package.json +1 -1
@@ -0,0 +1,103 @@
1
+ /**
2
+ * Tool annotations for SquadRules MCP tools.
3
+ *
4
+ * Annotations are truthful hints about tool behavior, based on the MCP 2026-07-28 spec.
5
+ * Each annotation is derived from actual handler behavior:
6
+ *
7
+ * - readOnlyHint: true if tool only reads, never modifies environment
8
+ * - destructiveHint: true if tool may delete or overwrite data (meaningful only when not read-only)
9
+ * - idempotentHint: true if repeating call with same args has no additional effect (meaningful only when not read-only)
10
+ * - openWorldHint: true if tool reaches external systems beyond server's own storage
11
+ *
12
+ * Defaults per spec: readOnlyHint=false, destructiveHint=true, idempotentHint=false, openWorldHint=true
13
+ */
14
+ /**
15
+ * Annotations for each tool, derived from handler behavior analysis:
16
+ *
17
+ * activate: Read-only search over local adapter store. No external systems.
18
+ * - readOnlyHint: true (only searches, never modifies)
19
+ * - openWorldHint: false (local Qdrant/LanceDB store only)
20
+ *
21
+ * forward: Advances execution chain and writes proof-of-work state.
22
+ * - readOnlyHint: false (writes proof-of-work, advances state)
23
+ * - destructiveHint: false (additive state changes, doesn't delete/overwrite)
24
+ * - idempotentHint: false (each call advances the chain, not safe to retry)
25
+ * - openWorldHint: false (local storage only)
26
+ *
27
+ * train: Creates or overwrites adapter in local store.
28
+ * - readOnlyHint: false (writes new adapter data)
29
+ * - destructiveHint: true (can overwrite existing adapter with force_update)
30
+ * - idempotentHint: false (duplicate detection means second call may fail or differ)
31
+ * - openWorldHint: false (local storage only)
32
+ *
33
+ * reward: Records reward signal for adapter execution.
34
+ * - readOnlyHint: false (writes reward data)
35
+ * - destructiveHint: false (append-only, doesn't delete existing data)
36
+ * - idempotentHint: false (re-delivery checks for proof conflicts, may reject)
37
+ * - openWorldHint: false (local storage only)
38
+ *
39
+ * tune: Updates existing adapter layer content.
40
+ * - readOnlyHint: false (modifies existing data)
41
+ * - destructiveHint: true (overwrites existing layer content)
42
+ * - idempotentHint: true (same content update = same result, safe to retry)
43
+ * - openWorldHint: false (local storage only)
44
+ *
45
+ * delete: Removes adapters or layers from store.
46
+ * - readOnlyHint: false (deletes data)
47
+ * - destructiveHint: true (permanently removes data)
48
+ * - idempotentHint: true (deleting already-deleted resource returns success or not-found)
49
+ * - openWorldHint: false (local storage only)
50
+ *
51
+ * export: Reads and exports adapter/training data.
52
+ * - readOnlyHint: true (only reads, never modifies)
53
+ * - openWorldHint: false (local storage only)
54
+ *
55
+ * spaces: Lists available spaces and adapter counts.
56
+ * - readOnlyHint: true (only reads, never modifies)
57
+ * - openWorldHint: false (local storage only)
58
+ */
59
+ export const TOOL_ANNOTATIONS = {
60
+ activate: {
61
+ readOnlyHint: true,
62
+ openWorldHint: false
63
+ },
64
+ forward: {
65
+ readOnlyHint: false,
66
+ destructiveHint: false,
67
+ idempotentHint: false,
68
+ openWorldHint: false
69
+ },
70
+ train: {
71
+ readOnlyHint: false,
72
+ destructiveHint: true,
73
+ idempotentHint: false,
74
+ openWorldHint: false
75
+ },
76
+ reward: {
77
+ readOnlyHint: false,
78
+ destructiveHint: false,
79
+ idempotentHint: false,
80
+ openWorldHint: false
81
+ },
82
+ tune: {
83
+ readOnlyHint: false,
84
+ destructiveHint: true,
85
+ idempotentHint: true,
86
+ openWorldHint: false
87
+ },
88
+ delete: {
89
+ readOnlyHint: false,
90
+ destructiveHint: true,
91
+ idempotentHint: true,
92
+ openWorldHint: false
93
+ },
94
+ export: {
95
+ readOnlyHint: true,
96
+ openWorldHint: false
97
+ },
98
+ spaces: {
99
+ readOnlyHint: true,
100
+ openWorldHint: false
101
+ }
102
+ };
103
+ //# sourceMappingURL=tool-annotations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-annotations.js","sourceRoot":"","sources":["../../src/tools/tool-annotations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAwBH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAuD;IAClF,QAAQ,EAAE;QACR,YAAY,EAAE,IAAI;QAClB,aAAa,EAAE,KAAK;KACrB;IACD,OAAO,EAAE;QACP,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,KAAK;QACtB,cAAc,EAAE,KAAK;QACrB,aAAa,EAAE,KAAK;KACrB;IACD,KAAK,EAAE;QACL,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,IAAI;QACrB,cAAc,EAAE,KAAK;QACrB,aAAa,EAAE,KAAK;KACrB;IACD,MAAM,EAAE;QACN,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,KAAK;QACtB,cAAc,EAAE,KAAK;QACrB,aAAa,EAAE,KAAK;KACrB;IACD,IAAI,EAAE;QACJ,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,IAAI;QACrB,cAAc,EAAE,IAAI;QACpB,aAAa,EAAE,KAAK;KACrB;IACD,MAAM,EAAE;QACN,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,IAAI;QACrB,cAAc,EAAE,IAAI;QACpB,aAAa,EAAE,KAAK;KACrB;IACD,MAAM,EAAE;QACN,YAAY,EAAE,IAAI;QAClB,aAAa,EAAE,KAAK;KACrB;IACD,MAAM,EAAE;QACN,YAAY,EAAE,IAAI;QAClB,aAAa,EAAE,KAAK;KACrB;CACO,CAAC"}
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Tool icons for SquadRules MCP tools.
3
+ *
4
+ * Each tool has a meaningful icon encoded as a data URI (image/svg+xml).
5
+ * The MCP 2026-07-28 spec requires at minimum image/png at 48x48, but
6
+ * SVG is more flexible and scales better. We provide SVG icons.
7
+ */
8
+ export declare const ACTIVATE_ICON: string;
9
+ export declare const FORWARD_ICON: string;
10
+ export declare const TRAIN_ICON: string;
11
+ export declare const REWARD_ICON: string;
12
+ export declare const TUNE_ICON: string;
13
+ export declare const DELETE_ICON: string;
14
+ export declare const EXPORT_ICON: string;
15
+ export declare const SPACES_ICON: string;
16
+ /**
17
+ * Icon metadata for each tool - follows MCP 2026-07-28 spec.
18
+ * Each entry provides an SVG icon at 48x48.
19
+ */
20
+ export declare const TOOL_ICONS: {
21
+ readonly activate: readonly [{
22
+ readonly src: string;
23
+ readonly mimeType: "image/svg+xml";
24
+ readonly sizes: readonly ["48x48"];
25
+ }];
26
+ readonly forward: readonly [{
27
+ readonly src: string;
28
+ readonly mimeType: "image/svg+xml";
29
+ readonly sizes: readonly ["48x48"];
30
+ }];
31
+ readonly train: readonly [{
32
+ readonly src: string;
33
+ readonly mimeType: "image/svg+xml";
34
+ readonly sizes: readonly ["48x48"];
35
+ }];
36
+ readonly reward: readonly [{
37
+ readonly src: string;
38
+ readonly mimeType: "image/svg+xml";
39
+ readonly sizes: readonly ["48x48"];
40
+ }];
41
+ readonly tune: readonly [{
42
+ readonly src: string;
43
+ readonly mimeType: "image/svg+xml";
44
+ readonly sizes: readonly ["48x48"];
45
+ }];
46
+ readonly delete: readonly [{
47
+ readonly src: string;
48
+ readonly mimeType: "image/svg+xml";
49
+ readonly sizes: readonly ["48x48"];
50
+ }];
51
+ readonly export: readonly [{
52
+ readonly src: string;
53
+ readonly mimeType: "image/svg+xml";
54
+ readonly sizes: readonly ["48x48"];
55
+ }];
56
+ readonly spaces: readonly [{
57
+ readonly src: string;
58
+ readonly mimeType: "image/svg+xml";
59
+ readonly sizes: readonly ["48x48"];
60
+ }];
61
+ };
62
+ //# sourceMappingURL=tool-icons.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-icons.d.ts","sourceRoot":"","sources":["../../src/tools/tool-icons.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH,eAAO,MAAM,aAAa,QAKxB,CAAC;AAGH,eAAO,MAAM,YAAY,QAKvB,CAAC;AAGH,eAAO,MAAM,UAAU,QAMrB,CAAC;AAGH,eAAO,MAAM,WAAW,QAItB,CAAC;AAGH,eAAO,MAAM,SAAS,QAKpB,CAAC;AAGH,eAAO,MAAM,WAAW,QAQtB,CAAC;AAGH,eAAO,MAAM,WAAW,QAMtB,CAAC;AAGH,eAAO,MAAM,WAAW,QAOtB,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASb,CAAC"}
@@ -0,0 +1,89 @@
1
+ /**
2
+ * Tool icons for SquadRules MCP tools.
3
+ *
4
+ * Each tool has a meaningful icon encoded as a data URI (image/svg+xml).
5
+ * The MCP 2026-07-28 spec requires at minimum image/png at 48x48, but
6
+ * SVG is more flexible and scales better. We provide SVG icons.
7
+ */
8
+ // Simple SVG icons for each tool - encoded as data URIs
9
+ const createSvgDataUri = (svgContent) => {
10
+ const encoded = encodeURIComponent(svgContent.trim());
11
+ return `data:image/svg+xml,${encoded}`;
12
+ };
13
+ // activate: search/find icon (magnifying glass)
14
+ export const ACTIVATE_ICON = createSvgDataUri(`
15
+ <svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="#4A90E2" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
16
+ <circle cx="11" cy="11" r="8"/>
17
+ <path d="m21 21-4.35-4.35"/>
18
+ </svg>
19
+ `);
20
+ // forward: play/advance icon (arrow right)
21
+ export const FORWARD_ICON = createSvgDataUri(`
22
+ <svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="#50C878" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
23
+ <path d="M5 12h14"/>
24
+ <path d="m12 5 7 7-7 7"/>
25
+ </svg>
26
+ `);
27
+ // train: add/create icon (plus in circle)
28
+ export const TRAIN_ICON = createSvgDataUri(`
29
+ <svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="#9B59B6" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
30
+ <circle cx="12" cy="12" r="10"/>
31
+ <path d="M12 8v8"/>
32
+ <path d="M8 12h8"/>
33
+ </svg>
34
+ `);
35
+ // reward: star/rating icon
36
+ export const REWARD_ICON = createSvgDataUri(`
37
+ <svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="#F39C12" stroke="#F39C12" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
38
+ <polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"/>
39
+ </svg>
40
+ `);
41
+ // tune: edit/modify icon (pencil)
42
+ export const TUNE_ICON = createSvgDataUri(`
43
+ <svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="#E67E22" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
44
+ <path d="M17 3a2.85 2.83 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5Z"/>
45
+ <path d="m15 5 4 4"/>
46
+ </svg>
47
+ `);
48
+ // delete: trash/remove icon
49
+ export const DELETE_ICON = createSvgDataUri(`
50
+ <svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="#E74C3C" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
51
+ <path d="M3 6h18"/>
52
+ <path d="M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"/>
53
+ <path d="M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2"/>
54
+ <line x1="10" x2="10" y1="11" y2="17"/>
55
+ <line x1="14" x2="14" y1="11" y2="17"/>
56
+ </svg>
57
+ `);
58
+ // export: download/output icon
59
+ export const EXPORT_ICON = createSvgDataUri(`
60
+ <svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="#1ABC9C" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
61
+ <path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/>
62
+ <polyline points="7 10 12 15 17 10"/>
63
+ <line x1="12" x2="12" y1="15" y2="3"/>
64
+ </svg>
65
+ `);
66
+ // spaces: grid/layout icon
67
+ export const SPACES_ICON = createSvgDataUri(`
68
+ <svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="#3498DB" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
69
+ <rect width="7" height="7" x="3" y="3" rx="1"/>
70
+ <rect width="7" height="7" x="14" y="3" rx="1"/>
71
+ <rect width="7" height="7" x="14" y="14" rx="1"/>
72
+ <rect width="7" height="7" x="3" y="14" rx="1"/>
73
+ </svg>
74
+ `);
75
+ /**
76
+ * Icon metadata for each tool - follows MCP 2026-07-28 spec.
77
+ * Each entry provides an SVG icon at 48x48.
78
+ */
79
+ export const TOOL_ICONS = {
80
+ activate: [{ src: ACTIVATE_ICON, mimeType: 'image/svg+xml', sizes: ['48x48'] }],
81
+ forward: [{ src: FORWARD_ICON, mimeType: 'image/svg+xml', sizes: ['48x48'] }],
82
+ train: [{ src: TRAIN_ICON, mimeType: 'image/svg+xml', sizes: ['48x48'] }],
83
+ reward: [{ src: REWARD_ICON, mimeType: 'image/svg+xml', sizes: ['48x48'] }],
84
+ tune: [{ src: TUNE_ICON, mimeType: 'image/svg+xml', sizes: ['48x48'] }],
85
+ delete: [{ src: DELETE_ICON, mimeType: 'image/svg+xml', sizes: ['48x48'] }],
86
+ export: [{ src: EXPORT_ICON, mimeType: 'image/svg+xml', sizes: ['48x48'] }],
87
+ spaces: [{ src: SPACES_ICON, mimeType: 'image/svg+xml', sizes: ['48x48'] }]
88
+ };
89
+ //# sourceMappingURL=tool-icons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-icons.js","sourceRoot":"","sources":["../../src/tools/tool-icons.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,wDAAwD;AACxD,MAAM,gBAAgB,GAAG,CAAC,UAAkB,EAAU,EAAE;IACtD,MAAM,OAAO,GAAG,kBAAkB,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IACtD,OAAO,sBAAsB,OAAO,EAAE,CAAC;AACzC,CAAC,CAAC;AAEF,gDAAgD;AAChD,MAAM,CAAC,MAAM,aAAa,GAAG,gBAAgB,CAAC;;;;;CAK7C,CAAC,CAAC;AAEH,2CAA2C;AAC3C,MAAM,CAAC,MAAM,YAAY,GAAG,gBAAgB,CAAC;;;;;CAK5C,CAAC,CAAC;AAEH,0CAA0C;AAC1C,MAAM,CAAC,MAAM,UAAU,GAAG,gBAAgB,CAAC;;;;;;CAM1C,CAAC,CAAC;AAEH,2BAA2B;AAC3B,MAAM,CAAC,MAAM,WAAW,GAAG,gBAAgB,CAAC;;;;CAI3C,CAAC,CAAC;AAEH,kCAAkC;AAClC,MAAM,CAAC,MAAM,SAAS,GAAG,gBAAgB,CAAC;;;;;CAKzC,CAAC,CAAC;AAEH,4BAA4B;AAC5B,MAAM,CAAC,MAAM,WAAW,GAAG,gBAAgB,CAAC;;;;;;;;CAQ3C,CAAC,CAAC;AAEH,+BAA+B;AAC/B,MAAM,CAAC,MAAM,WAAW,GAAG,gBAAgB,CAAC;;;;;;CAM3C,CAAC,CAAC;AAEH,2BAA2B;AAC3B,MAAM,CAAC,MAAM,WAAW,GAAG,gBAAgB,CAAC;;;;;;;CAO3C,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC/E,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,YAAY,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC7E,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACzE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC3E,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACvE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC3E,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC3E,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CACnE,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { type SquadrulesToolNameLiteral } from './tool-annotations.js';
1
2
  /**
2
3
  * Canonical SQUADRULES MCP tool registry — the single source of truth for the tool
3
4
  * surface. MCP `tools/list` registration, the HTTP `/api/<tool>` routes, and the
@@ -6,6 +7,11 @@
6
7
  * Kept in its own module (rather than inline in server.ts) so that tests and the
7
8
  * cross-surface parity gates can import the canonical list without pulling in the
8
9
  * full server (no Qdrant/OpenAI side effects at import).
10
+ *
11
+ * Each tool includes:
12
+ * - annotations: behavioral hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint)
13
+ * - icons: display icons for UI (SVG data URIs at 48x48)
14
+ * - description: names (a) what response contains, (b) next action on success, (c) recovery on failure
9
15
  */
10
16
  export declare const SQUADRULES_TOOL_REGISTRY: readonly [{
11
17
  readonly name: "activate";
@@ -17,6 +23,12 @@ export declare const SQUADRULES_TOOL_REGISTRY: readonly [{
17
23
  };
18
24
  readonly "ui/resourceUri": "ui://squadrules/activate-result";
19
25
  };
26
+ readonly annotations: import("./tool-annotations.js").ToolAnnotations;
27
+ readonly icons: readonly [{
28
+ readonly src: string;
29
+ readonly mimeType: "image/svg+xml";
30
+ readonly sizes: readonly ["48x48"];
31
+ }];
20
32
  readonly description: string;
21
33
  readonly strictInputSchema: import("zod").ZodObject<{
22
34
  authoring: import("zod").ZodOptional<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
@@ -150,6 +162,12 @@ export declare const SQUADRULES_TOOL_REGISTRY: readonly [{
150
162
  };
151
163
  readonly "ui/resourceUri": "ui://squadrules/forward-result";
152
164
  };
165
+ readonly annotations: import("./tool-annotations.js").ToolAnnotations;
166
+ readonly icons: readonly [{
167
+ readonly src: string;
168
+ readonly mimeType: "image/svg+xml";
169
+ readonly sizes: readonly ["48x48"];
170
+ }];
153
171
  readonly description: string;
154
172
  readonly strictInputSchema: import("zod").ZodObject<{
155
173
  authoring: import("zod").ZodOptional<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
@@ -323,6 +341,12 @@ export declare const SQUADRULES_TOOL_REGISTRY: readonly [{
323
341
  }, {
324
342
  readonly name: "train";
325
343
  readonly title: "Register a new adapter";
344
+ readonly annotations: import("./tool-annotations.js").ToolAnnotations;
345
+ readonly icons: readonly [{
346
+ readonly src: string;
347
+ readonly mimeType: "image/svg+xml";
348
+ readonly sizes: readonly ["48x48"];
349
+ }];
326
350
  readonly description: string;
327
351
  readonly strictInputSchema: import("zod").ZodObject<{
328
352
  content: import("zod").ZodOptional<import("zod").ZodString>;
@@ -367,6 +391,12 @@ export declare const SQUADRULES_TOOL_REGISTRY: readonly [{
367
391
  }, {
368
392
  readonly name: "reward";
369
393
  readonly title: "Record adapter reward";
394
+ readonly annotations: import("./tool-annotations.js").ToolAnnotations;
395
+ readonly icons: readonly [{
396
+ readonly src: string;
397
+ readonly mimeType: "image/svg+xml";
398
+ readonly sizes: readonly ["48x48"];
399
+ }];
370
400
  readonly description: string;
371
401
  readonly strictInputSchema: import("zod").ZodObject<{
372
402
  uri: import("zod").ZodString;
@@ -428,6 +458,12 @@ export declare const SQUADRULES_TOOL_REGISTRY: readonly [{
428
458
  }, {
429
459
  readonly name: "tune";
430
460
  readonly title: "Update adapter content";
461
+ readonly annotations: import("./tool-annotations.js").ToolAnnotations;
462
+ readonly icons: readonly [{
463
+ readonly src: string;
464
+ readonly mimeType: "image/svg+xml";
465
+ readonly sizes: readonly ["48x48"];
466
+ }];
431
467
  readonly description: string;
432
468
  readonly strictInputSchema: import("zod").ZodObject<{
433
469
  uris: import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodString]>>;
@@ -455,6 +491,12 @@ export declare const SQUADRULES_TOOL_REGISTRY: readonly [{
455
491
  }, {
456
492
  readonly name: "delete";
457
493
  readonly title: "Delete SQUADRULES adapter resource";
494
+ readonly annotations: import("./tool-annotations.js").ToolAnnotations;
495
+ readonly icons: readonly [{
496
+ readonly src: string;
497
+ readonly mimeType: "image/svg+xml";
498
+ readonly sizes: readonly ["48x48"];
499
+ }];
458
500
  readonly description: string;
459
501
  readonly strictInputSchema: import("zod").ZodObject<{
460
502
  uris: import("zod").ZodArray<import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodString]>>;
@@ -474,6 +516,12 @@ export declare const SQUADRULES_TOOL_REGISTRY: readonly [{
474
516
  }, {
475
517
  readonly name: "export";
476
518
  readonly title: "Export adapter or training data";
519
+ readonly annotations: import("./tool-annotations.js").ToolAnnotations;
520
+ readonly icons: readonly [{
521
+ readonly src: string;
522
+ readonly mimeType: "image/svg+xml";
523
+ readonly sizes: readonly ["48x48"];
524
+ }];
477
525
  readonly description: string;
478
526
  readonly strictInputSchema: import("zod").ZodObject<{
479
527
  uri: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodString, import("zod").ZodString]>>;
@@ -557,6 +605,12 @@ export declare const SQUADRULES_TOOL_REGISTRY: readonly [{
557
605
  };
558
606
  readonly "ui/resourceUri": "ui://squadrules/spaces-result";
559
607
  };
608
+ readonly annotations: import("./tool-annotations.js").ToolAnnotations;
609
+ readonly icons: readonly [{
610
+ readonly src: string;
611
+ readonly mimeType: "image/svg+xml";
612
+ readonly sizes: readonly ["48x48"];
613
+ }];
560
614
  readonly description: string;
561
615
  readonly strictInputSchema: import("zod").ZodObject<{
562
616
  include_adapter_titles: import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodBoolean>>;
@@ -594,7 +648,7 @@ export declare const SQUADRULES_TOOL_REGISTRY: readonly [{
594
648
  }, import("zod/v4/core").$strict>;
595
649
  }];
596
650
  /** Union of the canonical MCP tool names. */
597
- export type SquadrulesToolName = (typeof SQUADRULES_TOOL_REGISTRY)[number]['name'];
651
+ export type SquadrulesToolName = SquadrulesToolNameLiteral;
598
652
  /** Canonical MCP tool names in registration order. */
599
653
  export declare const SQUADRULES_TOOL_NAMES: readonly SquadrulesToolName[];
600
654
  //# sourceMappingURL=tool-registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-registry.d.ts","sourceRoot":"","sources":["../../src/tools/tool-registry.ts"],"names":[],"mappings":"AAeA;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkE3B,CAAC;AAEX,6CAA6C;AAC7C,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnF,sDAAsD;AACtD,eAAO,MAAM,qBAAqB,EAAE,SAAS,kBAAkB,EAE9D,CAAC"}
1
+ {"version":3,"file":"tool-registry.d.ts","sourceRoot":"","sources":["../../src/tools/tool-registry.ts"],"names":[],"mappings":"AAcA,OAAO,EAAoB,KAAK,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAGzF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4F3B,CAAC;AAEX,6CAA6C;AAC7C,MAAM,MAAM,kBAAkB,GAAG,yBAAyB,CAAC;AAE3D,sDAAsD;AACtD,eAAO,MAAM,qBAAqB,EAAE,SAAS,kBAAkB,EAE9D,CAAC"}
@@ -8,6 +8,8 @@ import { trainInputSchema, trainOutputSchema } from './train_schema.js';
8
8
  import { tuneInputSchema, tuneOutputSchema } from './tune_schema.js';
9
9
  import { resolveToolDoc } from '../utils/mcp-tool-doc-runtime.js';
10
10
  import { SQUADRULES_ACTIVATE_TOOL_UI_META, SQUADRULES_FORWARD_TOOL_UI_META, SQUADRULES_SPACES_TOOL_UI_META } from '../mcp-apps/squadrules-ui-constants.js';
11
+ import { TOOL_ANNOTATIONS } from './tool-annotations.js';
12
+ import { TOOL_ICONS } from './tool-icons.js';
11
13
  /**
12
14
  * Canonical SQUADRULES MCP tool registry — the single source of truth for the tool
13
15
  * surface. MCP `tools/list` registration, the HTTP `/api/<tool>` routes, and the
@@ -16,14 +18,21 @@ import { SQUADRULES_ACTIVATE_TOOL_UI_META, SQUADRULES_FORWARD_TOOL_UI_META, SQUA
16
18
  * Kept in its own module (rather than inline in server.ts) so that tests and the
17
19
  * cross-surface parity gates can import the canonical list without pulling in the
18
20
  * full server (no Qdrant/OpenAI side effects at import).
21
+ *
22
+ * Each tool includes:
23
+ * - annotations: behavioral hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint)
24
+ * - icons: display icons for UI (SVG data URIs at 48x48)
25
+ * - description: names (a) what response contains, (b) next action on success, (c) recovery on failure
19
26
  */
20
27
  export const SQUADRULES_TOOL_REGISTRY = [
21
28
  {
22
29
  name: 'activate',
23
30
  title: 'Activate the best adapter',
24
31
  uiMeta: SQUADRULES_ACTIVATE_TOOL_UI_META,
32
+ annotations: TOOL_ANNOTATIONS.activate,
33
+ icons: TOOL_ICONS.activate,
25
34
  description: resolveToolDoc('activate') ||
26
- 'Find the best adapter for the current input and return ranked activation choices.',
35
+ 'Find the best adapter for the current input and return ranked activation choices. Response contains adapter URIs, similarity scores, and ranked options. On success, call forward with the chosen adapter URI. On failure (no matches), refine your input or train a new adapter.',
27
36
  strictInputSchema: activateInputSchema,
28
37
  outputSchema: activateOutputSchema
29
38
  },
@@ -31,43 +40,60 @@ export const SQUADRULES_TOOL_REGISTRY = [
31
40
  name: 'forward',
32
41
  title: 'Run adapter forward pass',
33
42
  uiMeta: SQUADRULES_FORWARD_TOOL_UI_META,
43
+ annotations: TOOL_ANNOTATIONS.forward,
44
+ icons: TOOL_ICONS.forward,
34
45
  description: resolveToolDoc('forward') ||
35
- 'Run the first or next adapter layer. Omit `solution` on the first call in a run.',
46
+ 'Load adapter instructions and advance workflow state. Response contains current layer content, execution ID, and next layer URI or completion status. On success, execute the layer and call reward with the outcome. On failure (missing proof), submit the required proof and retry forward.',
36
47
  strictInputSchema: forwardInputSchema,
37
48
  outputSchema: forwardOutputSchema
38
49
  },
39
50
  {
40
51
  name: 'train',
41
52
  title: 'Register a new adapter',
42
- description: resolveToolDoc('train') || 'Store a new adapter from markdown.',
53
+ annotations: TOOL_ANNOTATIONS.train,
54
+ icons: TOOL_ICONS.train,
55
+ description: resolveToolDoc('train') ||
56
+ 'Store a new adapter from markdown content. Response contains the adapter URI, layer count, and creation status. On success, call activate to find and use the new adapter. On failure (duplicate or similar adapter), inspect the match and either use force_update: true or choose a different title.',
43
57
  strictInputSchema: trainInputSchema,
44
58
  outputSchema: trainOutputSchema
45
59
  },
46
60
  {
47
61
  name: 'reward',
48
62
  title: 'Record adapter reward',
49
- description: resolveToolDoc('reward') || 'Attach a reward signal after adapter execution completes.',
63
+ annotations: TOOL_ANNOTATIONS.reward,
64
+ icons: TOOL_ICONS.reward,
65
+ description: resolveToolDoc('reward') ||
66
+ 'Attach a reward signal after adapter execution completes. Response contains the evaluation score, quality bonus, and storage confirmation. On success, the reward is recorded and the adapter is updated. On failure (proof conflict), fix the failed step and run it again before retrying reward.',
50
67
  strictInputSchema: rewardInputSchema,
51
68
  outputSchema: rewardOutputSchema
52
69
  },
53
70
  {
54
71
  name: 'tune',
55
72
  title: 'Update adapter content',
56
- description: resolveToolDoc('tune') || 'Update adapter layer content.',
73
+ annotations: TOOL_ANNOTATIONS.tune,
74
+ icons: TOOL_ICONS.tune,
75
+ description: resolveToolDoc('tune') ||
76
+ 'Update adapter layer content. Response contains the updated layer URI, new content hash, and modification timestamp. On success, call forward with the updated adapter to see changes. On failure (layer not found), verify the URI and train a new adapter if needed.',
57
77
  strictInputSchema: tuneInputSchema,
58
78
  outputSchema: tuneOutputSchema
59
79
  },
60
80
  {
61
81
  name: 'delete',
62
82
  title: 'Delete SQUADRULES adapter resource',
63
- description: resolveToolDoc('delete') || 'Delete an adapter or layer by URI.',
83
+ annotations: TOOL_ANNOTATIONS.delete,
84
+ icons: TOOL_ICONS.delete,
85
+ description: resolveToolDoc('delete') ||
86
+ 'Delete an adapter or layer by URI. Response contains deletion results per URI with status and message. On success, the resource is removed and subsequent activate calls will not find it. On failure (resource not found), verify the URI or check if already deleted.',
64
87
  strictInputSchema: deleteInputSchema,
65
88
  outputSchema: deleteOutputSchema
66
89
  },
67
90
  {
68
91
  name: 'export',
69
92
  title: 'Export adapter or training data',
70
- description: resolveToolDoc('export') || 'Export adapter markdown or training datasets.',
93
+ annotations: TOOL_ANNOTATIONS.export,
94
+ icons: TOOL_ICONS.export,
95
+ description: resolveToolDoc('export') ||
96
+ 'Export adapter markdown or training datasets. Response contains export format (JSON, markdown, or zip), download URLs or inline content, and item counts. On success, use the provided URLs or content to import elsewhere. On failure (no data found), verify the export selection or train adapters first.',
71
97
  strictInputSchema: exportInputSchema,
72
98
  outputSchema: exportOutputSchema
73
99
  },
@@ -75,8 +101,10 @@ export const SQUADRULES_TOOL_REGISTRY = [
75
101
  name: 'spaces',
76
102
  title: 'List spaces and adapter counts',
77
103
  uiMeta: SQUADRULES_SPACES_TOOL_UI_META,
104
+ annotations: TOOL_ANNOTATIONS.spaces,
105
+ icons: TOOL_ICONS.spaces,
78
106
  description: resolveToolDoc('spaces') ??
79
- "List the agent's available spaces with human-readable names and adapter counts. Optionally include adapter titles and layer counts per space.",
107
+ "List the agent's available spaces with human-readable names and adapter counts. Response contains space IDs, display names, adapter counts, and optionally adapter titles and layer counts per space. On success, use space IDs to scope subsequent train or activate calls. On failure (no spaces), check agent configuration.",
80
108
  strictInputSchema: spacesInputSchema,
81
109
  outputSchema: spacesOutputSchema
82
110
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tool-registry.js","sourceRoot":"","sources":["../../src/tools/tool-registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EACL,gCAAgC,EAChC,+BAA+B,EAC/B,8BAA8B,EAC/B,MAAM,wCAAwC,CAAC;AAEhD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC;QACE,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,2BAA2B;QAClC,MAAM,EAAE,gCAAgC;QACxC,WAAW,EACT,cAAc,CAAC,UAAU,CAAC;YAC1B,mFAAmF;QACrF,iBAAiB,EAAE,mBAAmB;QACtC,YAAY,EAAE,oBAAoB;KACnC;IACD;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,0BAA0B;QACjC,MAAM,EAAE,+BAA+B;QACvC,WAAW,EACT,cAAc,CAAC,SAAS,CAAC;YACzB,kFAAkF;QACpF,iBAAiB,EAAE,kBAAkB;QACrC,YAAY,EAAE,mBAAmB;KAClC;IACD;QACE,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EAAE,cAAc,CAAC,OAAO,CAAC,IAAI,oCAAoC;QAC5E,iBAAiB,EAAE,gBAAgB;QACnC,YAAY,EAAE,iBAAiB;KAChC;IACD;QACE,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EAAE,cAAc,CAAC,QAAQ,CAAC,IAAI,2DAA2D;QACpG,iBAAiB,EAAE,iBAAiB;QACpC,YAAY,EAAE,kBAAkB;KACjC;IACD;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EAAE,cAAc,CAAC,MAAM,CAAC,IAAI,+BAA+B;QACtE,iBAAiB,EAAE,eAAe;QAClC,YAAY,EAAE,gBAAgB;KAC/B;IACD;QACE,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,oCAAoC;QAC3C,WAAW,EAAE,cAAc,CAAC,QAAQ,CAAC,IAAI,oCAAoC;QAC7E,iBAAiB,EAAE,iBAAiB;QACpC,YAAY,EAAE,kBAAkB;KACjC;IACD;QACE,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,iCAAiC;QACxC,WAAW,EAAE,cAAc,CAAC,QAAQ,CAAC,IAAI,+CAA+C;QACxF,iBAAiB,EAAE,iBAAiB;QACpC,YAAY,EAAE,kBAAkB;KACjC;IACD;QACE,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,gCAAgC;QACvC,MAAM,EAAE,8BAA8B;QACtC,WAAW,EACT,cAAc,CAAC,QAAQ,CAAC;YACxB,+IAA+I;QACjJ,iBAAiB,EAAE,iBAAiB;QACpC,YAAY,EAAE,kBAAkB;KACjC;CACO,CAAC;AAKX,sDAAsD;AACtD,MAAM,CAAC,MAAM,qBAAqB,GAAkC,wBAAwB,CAAC,GAAG,CAC9F,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CACpB,CAAC"}
1
+ {"version":3,"file":"tool-registry.js","sourceRoot":"","sources":["../../src/tools/tool-registry.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"train.d.ts","sourceRoot":"","sources":["../../src/tools/train.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAWnE,OAAO,EAGL,KAAK,UAAU,EACf,KAAK,WAAW,EAEjB,MAAM,mBAAmB,CAAC;AAS3B,UAAU,oBAAoB;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAyGD,wBAAsB,YAAY,CAChC,WAAW,EAAE,iBAAiB,EAC9B,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EACjD,aAAa,CAAC,EAAE,aAAa,GAC5B,OAAO,CAAC,WAAW,CAAC,CAsGtB;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,iBAAiB,EAAE,OAAO,GAAE,oBAAyB,QAwIhH"}
1
+ {"version":3,"file":"train.d.ts","sourceRoot":"","sources":["../../src/tools/train.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAWnE,OAAO,EAGL,KAAK,UAAU,EACf,KAAK,WAAW,EAEjB,MAAM,mBAAmB,CAAC;AAW3B,UAAU,oBAAoB;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAyGD,wBAAsB,YAAY,CAChC,WAAW,EAAE,iBAAiB,EAC9B,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EACjD,aAAa,CAAC,EAAE,aAAa,GAC5B,OAAO,CAAC,WAAW,CAAC,CAsGtB;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,iBAAiB,EAAE,OAAO,GAAE,oBAAyB,QA0IhH"}
@@ -17,6 +17,8 @@ import { resolveCanonicalAdapterUriForArtifact } from './train-artifact-adapter-
17
17
  import { assertReviewEvidencePassed } from './review-evidence-check.js';
18
18
  import { resolveAndValidateDirectory, scanMarkdownFiles } from '../utils/directory-access.js';
19
19
  import fs from 'node:fs';
20
+ import { TOOL_ANNOTATIONS } from './tool-annotations.js';
21
+ import { TOOL_ICONS } from './tool-icons.js';
20
22
  function creationAdapterUri() {
21
23
  return buildAdapterUri(SQUADRULES_CREATION_PROTOCOL_SLUG);
22
24
  }
@@ -212,9 +214,11 @@ export function registerTrainTool(server, memoryStore, options = {}) {
212
214
  const qdrantService = options.qdrantService;
213
215
  server.registerTool(toolName, {
214
216
  title: 'Register a new adapter',
215
- description: resolveToolDoc('train') || 'Store a new adapter from markdown.',
217
+ description: resolveToolDoc('train') || 'Store a new adapter from markdown content. Response contains the adapter URI, layer count, and creation status. On success, call activate to find and use the new adapter. On failure (duplicate or similar adapter), inspect the match and either use force_update: true or choose a different title.',
216
218
  inputSchema: mcpLooseToolInput(trainInputSchema),
217
- outputSchema: trainOutputSchema
219
+ outputSchema: trainOutputSchema,
220
+ annotations: TOOL_ANNOTATIONS.train,
221
+ icons: TOOL_ICONS.train
218
222
  }, async (params) => {
219
223
  const tenantId = getTenantId();
220
224
  const ctx = getSpaceContextFromStorage();
@@ -1 +1 @@
1
- {"version":3,"file":"train.js","sourceRoot":"","sources":["../../src/tools/train.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"train.js","sourceRoot":"","sources":["../../src/tools/train.ts"],"names":[],"mappings":"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"}