rbxstudio-mcp 2.3.1 → 2.4.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 (175) hide show
  1. package/README.md +67 -14
  2. package/dist/__tests__/bridge-service.test.js +25 -13
  3. package/dist/__tests__/bridge-service.test.js.map +1 -1
  4. package/dist/__tests__/bridge-session.test.d.ts +2 -0
  5. package/dist/__tests__/bridge-session.test.d.ts.map +1 -0
  6. package/dist/__tests__/bridge-session.test.js +171 -0
  7. package/dist/__tests__/bridge-session.test.js.map +1 -0
  8. package/dist/__tests__/chunker.test.d.ts +2 -0
  9. package/dist/__tests__/chunker.test.d.ts.map +1 -0
  10. package/dist/__tests__/chunker.test.js +201 -0
  11. package/dist/__tests__/chunker.test.js.map +1 -0
  12. package/dist/__tests__/docs-core.test.d.ts +2 -0
  13. package/dist/__tests__/docs-core.test.d.ts.map +1 -0
  14. package/dist/__tests__/docs-core.test.js +137 -0
  15. package/dist/__tests__/docs-core.test.js.map +1 -0
  16. package/dist/__tests__/docs-fetcher.test.d.ts +2 -0
  17. package/dist/__tests__/docs-fetcher.test.d.ts.map +1 -0
  18. package/dist/__tests__/docs-fetcher.test.js +173 -0
  19. package/dist/__tests__/docs-fetcher.test.js.map +1 -0
  20. package/dist/__tests__/helpers.d.ts +8 -0
  21. package/dist/__tests__/helpers.d.ts.map +1 -0
  22. package/dist/__tests__/helpers.js +23 -0
  23. package/dist/__tests__/helpers.js.map +1 -0
  24. package/dist/__tests__/http-routes.test.d.ts +2 -0
  25. package/dist/__tests__/http-routes.test.d.ts.map +1 -0
  26. package/dist/__tests__/http-routes.test.js +233 -0
  27. package/dist/__tests__/http-routes.test.js.map +1 -0
  28. package/dist/__tests__/http-server.test.js +13 -6
  29. package/dist/__tests__/http-server.test.js.map +1 -1
  30. package/dist/__tests__/integration.test.js +9 -4
  31. package/dist/__tests__/integration.test.js.map +1 -1
  32. package/dist/__tests__/semantic-search.test.d.ts +2 -0
  33. package/dist/__tests__/semantic-search.test.d.ts.map +1 -0
  34. package/dist/__tests__/semantic-search.test.js +202 -0
  35. package/dist/__tests__/semantic-search.test.js.map +1 -0
  36. package/dist/__tests__/smoke.test.js +7 -3
  37. package/dist/__tests__/smoke.test.js.map +1 -1
  38. package/dist/__tests__/studio-client.test.d.ts +2 -0
  39. package/dist/__tests__/studio-client.test.d.ts.map +1 -0
  40. package/dist/__tests__/studio-client.test.js +25 -0
  41. package/dist/__tests__/studio-client.test.js.map +1 -0
  42. package/dist/__tests__/tool-nudges.test.d.ts +2 -0
  43. package/dist/__tests__/tool-nudges.test.d.ts.map +1 -0
  44. package/dist/__tests__/tool-nudges.test.js +60 -0
  45. package/dist/__tests__/tool-nudges.test.js.map +1 -0
  46. package/dist/__tests__/tool-registry.test.d.ts +2 -0
  47. package/dist/__tests__/tool-registry.test.d.ts.map +1 -0
  48. package/dist/__tests__/tool-registry.test.js +365 -0
  49. package/dist/__tests__/tool-registry.test.js.map +1 -0
  50. package/dist/__tests__/tools-bridge.test.d.ts +2 -0
  51. package/dist/__tests__/tools-bridge.test.d.ts.map +1 -0
  52. package/dist/__tests__/tools-bridge.test.js +396 -0
  53. package/dist/__tests__/tools-bridge.test.js.map +1 -0
  54. package/dist/__tests__/tools-docs.test.d.ts +2 -0
  55. package/dist/__tests__/tools-docs.test.d.ts.map +1 -0
  56. package/dist/__tests__/tools-docs.test.js +112 -0
  57. package/dist/__tests__/tools-docs.test.js.map +1 -0
  58. package/dist/__tests__/tools-guards.test.d.ts +2 -0
  59. package/dist/__tests__/tools-guards.test.d.ts.map +1 -0
  60. package/dist/__tests__/tools-guards.test.js +131 -0
  61. package/dist/__tests__/tools-guards.test.js.map +1 -0
  62. package/dist/__tests__/tools-runtime.test.d.ts +2 -0
  63. package/dist/__tests__/tools-runtime.test.d.ts.map +1 -0
  64. package/dist/__tests__/tools-runtime.test.js +214 -0
  65. package/dist/__tests__/tools-runtime.test.js.map +1 -0
  66. package/dist/__tests__/tools-visual.test.d.ts +2 -0
  67. package/dist/__tests__/tools-visual.test.d.ts.map +1 -0
  68. package/dist/__tests__/tools-visual.test.js +149 -0
  69. package/dist/__tests__/tools-visual.test.js.map +1 -0
  70. package/dist/bridge-service.d.ts +99 -12
  71. package/dist/bridge-service.d.ts.map +1 -1
  72. package/dist/bridge-service.js +238 -21
  73. package/dist/bridge-service.js.map +1 -1
  74. package/dist/docs/cache.d.ts +50 -0
  75. package/dist/docs/cache.d.ts.map +1 -0
  76. package/dist/docs/cache.js +123 -0
  77. package/dist/docs/cache.js.map +1 -0
  78. package/dist/docs/embeddings/chunker.d.ts +120 -0
  79. package/dist/docs/embeddings/chunker.d.ts.map +1 -0
  80. package/dist/docs/embeddings/chunker.js +395 -0
  81. package/dist/docs/embeddings/chunker.js.map +1 -0
  82. package/dist/docs/embeddings/embedder.d.ts +41 -0
  83. package/dist/docs/embeddings/embedder.d.ts.map +1 -0
  84. package/dist/docs/embeddings/embedder.js +113 -0
  85. package/dist/docs/embeddings/embedder.js.map +1 -0
  86. package/dist/docs/embeddings/index.d.ts +102 -0
  87. package/dist/docs/embeddings/index.d.ts.map +1 -0
  88. package/dist/docs/embeddings/index.js +250 -0
  89. package/dist/docs/embeddings/index.js.map +1 -0
  90. package/dist/docs/embeddings/manager.d.ts +68 -0
  91. package/dist/docs/embeddings/manager.d.ts.map +1 -0
  92. package/dist/docs/embeddings/manager.js +97 -0
  93. package/dist/docs/embeddings/manager.js.map +1 -0
  94. package/dist/docs/fetcher.d.ts +29 -0
  95. package/dist/docs/fetcher.d.ts.map +1 -0
  96. package/dist/docs/fetcher.js +244 -0
  97. package/dist/docs/fetcher.js.map +1 -0
  98. package/dist/docs/reference.d.ts +37 -0
  99. package/dist/docs/reference.d.ts.map +1 -0
  100. package/dist/docs/reference.js +108 -0
  101. package/dist/docs/reference.js.map +1 -0
  102. package/dist/docs/search.d.ts +194 -0
  103. package/dist/docs/search.d.ts.map +1 -0
  104. package/dist/docs/search.js +733 -0
  105. package/dist/docs/search.js.map +1 -0
  106. package/dist/http-server.d.ts.map +1 -1
  107. package/dist/http-server.js +52 -5
  108. package/dist/http-server.js.map +1 -1
  109. package/dist/index.d.ts +8 -9
  110. package/dist/index.d.ts.map +1 -1
  111. package/dist/index.js +35 -1035
  112. package/dist/index.js.map +1 -1
  113. package/dist/instructions.d.ts +15 -0
  114. package/dist/instructions.d.ts.map +1 -0
  115. package/dist/instructions.js +26 -0
  116. package/dist/instructions.js.map +1 -0
  117. package/dist/tools/defs/attributes.d.ts +6 -0
  118. package/dist/tools/defs/attributes.d.ts.map +1 -0
  119. package/dist/tools/defs/attributes.js +85 -0
  120. package/dist/tools/defs/attributes.js.map +1 -0
  121. package/dist/tools/defs/docs.d.ts +17 -0
  122. package/dist/tools/defs/docs.d.ts.map +1 -0
  123. package/dist/tools/defs/docs.js +151 -0
  124. package/dist/tools/defs/docs.js.map +1 -0
  125. package/dist/tools/defs/execute.d.ts +6 -0
  126. package/dist/tools/defs/execute.d.ts.map +1 -0
  127. package/dist/tools/defs/execute.js +21 -0
  128. package/dist/tools/defs/execute.js.map +1 -0
  129. package/dist/tools/defs/inspection.d.ts +7 -0
  130. package/dist/tools/defs/inspection.d.ts.map +1 -0
  131. package/dist/tools/defs/inspection.js +202 -0
  132. package/dist/tools/defs/inspection.js.map +1 -0
  133. package/dist/tools/defs/objects.d.ts +6 -0
  134. package/dist/tools/defs/objects.d.ts.map +1 -0
  135. package/dist/tools/defs/objects.js +111 -0
  136. package/dist/tools/defs/objects.js.map +1 -0
  137. package/dist/tools/defs/properties.d.ts +6 -0
  138. package/dist/tools/defs/properties.d.ts.map +1 -0
  139. package/dist/tools/defs/properties.js +71 -0
  140. package/dist/tools/defs/properties.js.map +1 -0
  141. package/dist/tools/defs/runtime.d.ts +6 -0
  142. package/dist/tools/defs/runtime.d.ts.map +1 -0
  143. package/dist/tools/defs/runtime.js +145 -0
  144. package/dist/tools/defs/runtime.js.map +1 -0
  145. package/dist/tools/defs/scripts.d.ts +18 -0
  146. package/dist/tools/defs/scripts.d.ts.map +1 -0
  147. package/dist/tools/defs/scripts.js +163 -0
  148. package/dist/tools/defs/scripts.js.map +1 -0
  149. package/dist/tools/defs/tags.d.ts +6 -0
  150. package/dist/tools/defs/tags.d.ts.map +1 -0
  151. package/dist/tools/defs/tags.js +74 -0
  152. package/dist/tools/defs/tags.js.map +1 -0
  153. package/dist/tools/defs/visual.d.ts +7 -0
  154. package/dist/tools/defs/visual.d.ts.map +1 -0
  155. package/dist/tools/defs/visual.js +208 -0
  156. package/dist/tools/defs/visual.js.map +1 -0
  157. package/dist/tools/index.d.ts +101 -25
  158. package/dist/tools/index.d.ts.map +1 -1
  159. package/dist/tools/index.js +580 -63
  160. package/dist/tools/index.js.map +1 -1
  161. package/dist/tools/nudges.d.ts +25 -0
  162. package/dist/tools/nudges.d.ts.map +1 -0
  163. package/dist/tools/nudges.js +34 -0
  164. package/dist/tools/nudges.js.map +1 -0
  165. package/dist/tools/registry.d.ts +20 -0
  166. package/dist/tools/registry.d.ts.map +1 -0
  167. package/dist/tools/registry.js +65 -0
  168. package/dist/tools/registry.js.map +1 -0
  169. package/dist/tools/types.d.ts +24 -0
  170. package/dist/tools/types.d.ts.map +1 -0
  171. package/dist/tools/types.js +2 -0
  172. package/dist/tools/types.js.map +1 -0
  173. package/package.json +7 -6
  174. package/studio-plugin/MCPPlugin.rbxmx +3 -238
  175. package/studio-plugin/plugin.luau +2041 -365
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Server-level `instructions` — the always-on operating manual returned in the
3
+ * MCP `initialize` response. Clients typically fold this into the system prompt.
4
+ *
5
+ * This is the ONE place we pay always-on tokens deliberately, so it earns its
6
+ * keep by carrying what individual tool descriptions cannot: the overall mental
7
+ * model and the cross-tool workflow. Per MCP guidance it must NOT duplicate tool
8
+ * descriptions (those are already in front of the model) — keep it about
9
+ * relationships, sequencing, and the core operating principle.
10
+ *
11
+ * The same principle is reinforced just-in-time by `src/tools/nudges.ts`, which
12
+ * fires only when the relevant tools are actually called.
13
+ */
14
+ export declare const SERVER_INSTRUCTIONS = "This server drives a live Roblox Studio session through a bridge plugin. Unless a play test is running you are in Edit mode (the open place file), so changes you make are edits to the project, not to a running game.\n\nCore principle \u2014 instrument, don't spectate. You can mutate the world and read back facts, but you cannot perceive motion, timing, input feel, or sound. For anything dynamic or subjective, INSTRUMENT it (event-keyed debug prints, on-screen readouts, attribute mirroring, visual markers) and hand the test to the user with a short test card: do X -> watch for Y -> paste Z back. Treat play tests and screenshots as smoke checks \u2014 they confirm the game boots and surface errors/tracebacks; they are not how you decide whether behavior is correct. Do not loop play-tests or screenshots trying to judge feel.\n\nTypical flow:\n- Locate things with grep (it searches script Source and instance names) before browsing get_project_structure.\n- Verify the engine API with search_roblox_docs / get_roblox_api_reference instead of guessing property and method names.\n- Edit scripts with targeted edit_script / find_and_replace_in_scripts rather than rewriting whole files with set_script_source.\n- execute_lua runs in Edit mode as a single undoable waypoint (keep its mutations synchronous so undo captures them); run_live_lua runs inside a play test (start one with play_solo first).\n- See results with render_object_view (3D objects), render_gui (2D UI), or capture_screenshot paired with focus_camera \u2014 all are still frames.\n\nPrefer small, verifiable steps; report what you changed and let the user drive any test that needs human judgment.";
15
+ //# sourceMappingURL=instructions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,mBAAmB,8oDAWmF,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Server-level `instructions` — the always-on operating manual returned in the
3
+ * MCP `initialize` response. Clients typically fold this into the system prompt.
4
+ *
5
+ * This is the ONE place we pay always-on tokens deliberately, so it earns its
6
+ * keep by carrying what individual tool descriptions cannot: the overall mental
7
+ * model and the cross-tool workflow. Per MCP guidance it must NOT duplicate tool
8
+ * descriptions (those are already in front of the model) — keep it about
9
+ * relationships, sequencing, and the core operating principle.
10
+ *
11
+ * The same principle is reinforced just-in-time by `src/tools/nudges.ts`, which
12
+ * fires only when the relevant tools are actually called.
13
+ */
14
+ export const SERVER_INSTRUCTIONS = `This server drives a live Roblox Studio session through a bridge plugin. Unless a play test is running you are in Edit mode (the open place file), so changes you make are edits to the project, not to a running game.
15
+
16
+ Core principle — instrument, don't spectate. You can mutate the world and read back facts, but you cannot perceive motion, timing, input feel, or sound. For anything dynamic or subjective, INSTRUMENT it (event-keyed debug prints, on-screen readouts, attribute mirroring, visual markers) and hand the test to the user with a short test card: do X -> watch for Y -> paste Z back. Treat play tests and screenshots as smoke checks — they confirm the game boots and surface errors/tracebacks; they are not how you decide whether behavior is correct. Do not loop play-tests or screenshots trying to judge feel.
17
+
18
+ Typical flow:
19
+ - Locate things with grep (it searches script Source and instance names) before browsing get_project_structure.
20
+ - Verify the engine API with search_roblox_docs / get_roblox_api_reference instead of guessing property and method names.
21
+ - Edit scripts with targeted edit_script / find_and_replace_in_scripts rather than rewriting whole files with set_script_source.
22
+ - execute_lua runs in Edit mode as a single undoable waypoint (keep its mutations synchronous so undo captures them); run_live_lua runs inside a play test (start one with play_solo first).
23
+ - See results with render_object_view (3D objects), render_gui (2D UI), or capture_screenshot paired with focus_camera — all are still frames.
24
+
25
+ Prefer small, verifiable steps; report what you changed and let the user drive any test that needs human judgment.`;
26
+ //# sourceMappingURL=instructions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;;;;;;;mHAWgF,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { ToolDef } from '../types.js';
2
+ /**
3
+ * Attribute tools: get/set/list/delete instance attributes.
4
+ */
5
+ export declare const attributeTools: ToolDef[];
6
+ //# sourceMappingURL=attributes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attributes.d.ts","sourceRoot":"","sources":["../../../src/tools/defs/attributes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,OAAO,EA4FnC,CAAC"}
@@ -0,0 +1,85 @@
1
+ /**
2
+ * Attribute tools: get/set/list/delete instance attributes.
3
+ */
4
+ export const attributeTools = [
5
+ {
6
+ name: 'get_attribute',
7
+ description: 'Get a single attribute value from a Roblox instance',
8
+ inputSchema: {
9
+ type: 'object',
10
+ properties: {
11
+ instancePath: {
12
+ type: 'string',
13
+ description: 'Roblox instance path using dot notation (e.g., "game.Workspace.Part", "game.ServerStorage.DataStore")',
14
+ },
15
+ attributeName: {
16
+ type: 'string',
17
+ description: 'Name of the attribute to get',
18
+ },
19
+ },
20
+ required: ['instancePath', 'attributeName'],
21
+ },
22
+ handler: (args, { tools }) => tools.getAttribute(args?.instancePath, args?.attributeName),
23
+ },
24
+ {
25
+ name: 'set_attribute',
26
+ description: 'Set an attribute value on a Roblox instance. Supports string, number, boolean, Vector3, Color3, UDim2, and BrickColor.',
27
+ inputSchema: {
28
+ type: 'object',
29
+ properties: {
30
+ instancePath: {
31
+ type: 'string',
32
+ description: 'Roblox instance path using dot notation (e.g., "game.Workspace.Part")',
33
+ },
34
+ attributeName: {
35
+ type: 'string',
36
+ description: 'Name of the attribute to set',
37
+ },
38
+ attributeValue: {
39
+ description: 'Value to set. For Vector3: {X, Y, Z}, Color3: {R, G, B}, UDim2: {X: {Scale, Offset}, Y: {Scale, Offset}}',
40
+ },
41
+ valueType: {
42
+ type: 'string',
43
+ description: 'Optional type hint: "Vector3", "Color3", "UDim2", "BrickColor"',
44
+ },
45
+ },
46
+ required: ['instancePath', 'attributeName', 'attributeValue'],
47
+ },
48
+ handler: (args, { tools }) => tools.setAttribute(args?.instancePath, args?.attributeName, args?.attributeValue, args?.valueType),
49
+ },
50
+ {
51
+ name: 'get_attributes',
52
+ description: 'Get all attributes on a Roblox instance',
53
+ inputSchema: {
54
+ type: 'object',
55
+ properties: {
56
+ instancePath: {
57
+ type: 'string',
58
+ description: 'Roblox instance path using dot notation (e.g., "game.Workspace.Part")',
59
+ },
60
+ },
61
+ required: ['instancePath'],
62
+ },
63
+ handler: (args, { tools }) => tools.getAttributes(args?.instancePath),
64
+ },
65
+ {
66
+ name: 'delete_attribute',
67
+ description: 'Delete an attribute from a Roblox instance',
68
+ inputSchema: {
69
+ type: 'object',
70
+ properties: {
71
+ instancePath: {
72
+ type: 'string',
73
+ description: 'Roblox instance path using dot notation (e.g., "game.Workspace.Part")',
74
+ },
75
+ attributeName: {
76
+ type: 'string',
77
+ description: 'Name of the attribute to delete',
78
+ },
79
+ },
80
+ required: ['instancePath', 'attributeName'],
81
+ },
82
+ handler: (args, { tools }) => tools.deleteAttribute(args?.instancePath, args?.attributeName),
83
+ },
84
+ ];
85
+ //# sourceMappingURL=attributes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attributes.js","sourceRoot":"","sources":["../../../src/tools/defs/attributes.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAc;IACvC;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,qDAAqD;QAClE,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,YAAY,EAAE;oBACZ,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,uGAAuG;iBAC1G;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8BAA8B;iBAC5C;aACF;YACD,QAAQ,EAAE,CAAC,cAAc,EAAE,eAAe,CAAC;SAC5C;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,CAAC;KAC1F;IAED;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,wHAAwH;QAC1H,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,YAAY,EAAE;oBACZ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,uEAAuE;iBACrF;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8BAA8B;iBAC5C;gBACD,cAAc,EAAE;oBACd,WAAW,EACT,0GAA0G;iBAC7G;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,gEAAgE;iBAC9E;aACF;YACD,QAAQ,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,gBAAgB,CAAC;SAC9D;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAC3B,KAAK,CAAC,YAAY,CAChB,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,aAAa,EACnB,IAAI,EAAE,cAAc,EACpB,IAAI,EAAE,SAAS,CAChB;KACJ;IAED;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,yCAAyC;QACtD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,YAAY,EAAE;oBACZ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,uEAAuE;iBACrF;aACF;YACD,QAAQ,EAAE,CAAC,cAAc,CAAC;SAC3B;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,YAAY,CAAC;KACtE;IAED;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,4CAA4C;QACzD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,YAAY,EAAE;oBACZ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,uEAAuE;iBACrF;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,iCAAiC;iBAC/C;aACF;YACD,QAAQ,EAAE,CAAC,cAAc,EAAE,eAAe,CAAC;SAC5C;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,CAAC;KAC7F;CACF,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { ToolDef } from '../types.js';
2
+ /**
3
+ * Roblox documentation tools — read-only access to a local mirror of
4
+ * https://github.com/Roblox/creator-docs.
5
+ *
6
+ * The mirror is downloaded lazily on first use and refreshed at most
7
+ * once every 24 hours (with a SHA short-circuit so unchanged upstream
8
+ * = no redownload). See `src/docs/fetcher.ts` for the cache strategy.
9
+ *
10
+ * These tools exist because the model frequently struggles with
11
+ * topics where it has stale or imprecise training data — animation,
12
+ * Motor6D / C0, R6 rig anatomy, ScreenGui properties, etc. Giving it
13
+ * `search_roblox_docs` + `get_roblox_doc` means the canonical answer
14
+ * is always one tool call away.
15
+ */
16
+ export declare const docTools: ToolDef[];
17
+ //# sourceMappingURL=docs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docs.d.ts","sourceRoot":"","sources":["../../../src/tools/defs/docs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,QAAQ,EAAE,OAAO,EAgK7B,CAAC"}
@@ -0,0 +1,151 @@
1
+ /**
2
+ * Roblox documentation tools — read-only access to a local mirror of
3
+ * https://github.com/Roblox/creator-docs.
4
+ *
5
+ * The mirror is downloaded lazily on first use and refreshed at most
6
+ * once every 24 hours (with a SHA short-circuit so unchanged upstream
7
+ * = no redownload). See `src/docs/fetcher.ts` for the cache strategy.
8
+ *
9
+ * These tools exist because the model frequently struggles with
10
+ * topics where it has stale or imprecise training data — animation,
11
+ * Motor6D / C0, R6 rig anatomy, ScreenGui properties, etc. Giving it
12
+ * `search_roblox_docs` + `get_roblox_doc` means the canonical answer
13
+ * is always one tool call away.
14
+ */
15
+ export const docTools = [
16
+ {
17
+ name: 'search_roblox_docs',
18
+ description: "Search Roblox's official creator documentation (mirror of github.com/Roblox/creator-docs). " +
19
+ 'Returns matching passages with file path, line number, and surrounding context (plus a relevance score in hybrid mode). ' +
20
+ 'Use this FIRST for authoritative info on a Roblox API or behavior — especially things models get wrong (animation, Motor6D C0/C1, R6/R15 rigs, AlignOrientation, etc.). ' +
21
+ '\n\nMulti-word queries use **hybrid mode**: meaningful tokens (stopwords stripped) must all appear within `window_lines` of each other, then hits are reranked by semantic similarity to your full query (`keywordFiltered: true`). If that finds nothing it falls back to pure-semantic top-K (`keywordFiltered: false` — topically relevant, not guaranteed to contain every term). Single tokens, regex, and quoted phrases use literal substring search. Wrap a phrase in double quotes to force one literal token, e.g. `"Class.Motor6D.C0"`. Pass `semantic: false` for deterministic keyword-only ranking. ' +
22
+ '\n\nFirst use downloads ~30MB of docs (~5s) and builds a one-time semantic index (~25MB model + embeds ~19k chunks; minutes on a single CPU). Until the index is ready the tool falls back to keyword ranking and sets `semanticUsed: false`. Subsequent calls hit the cache instantly (refreshed at most once per 24h).',
23
+ inputSchema: {
24
+ type: 'object',
25
+ properties: {
26
+ query: {
27
+ type: 'string',
28
+ description: 'Search query. Multiple whitespace-separated words trigger hybrid mode (keyword token-AND + semantic rerank). Single tokens / regex / quoted phrases use literal substring search. Use double quotes to force a phrase: `"Class.Motor6D"` is one token. Examples: "Motor6D C0", "AlignOrientation servo", "how do I rotate a body part smoothly", "humanoid animation rig".',
29
+ },
30
+ scope: {
31
+ type: 'string',
32
+ description: 'Optional: restrict search to a subdirectory of the docs tree. Examples: "en-us/reference/engine/classes", "en-us/animation", "en-us/characters". Useful when a generic term ("frame") would otherwise match thousands of lines.',
33
+ },
34
+ extensions: {
35
+ type: 'array',
36
+ items: { type: 'string' },
37
+ description: 'File extensions to include (without leading dot). Default ["md","yaml","yml"]. Pass ["yaml"] to search only structured API reference, ["md"] to search only long-form guides.',
38
+ },
39
+ use_regex: {
40
+ type: 'boolean',
41
+ description: 'Treat `query` as a single JS regex. Disables hybrid mode (no token splitting, no semantic rerank). Default false.',
42
+ default: false,
43
+ },
44
+ case_sensitive: {
45
+ type: 'boolean',
46
+ description: 'Match case exactly. Default false.',
47
+ default: false,
48
+ },
49
+ context_lines: {
50
+ type: 'number',
51
+ description: 'Lines of context before/after each hit (like grep -C). 0–10. Default 0 in literal mode; in hybrid mode the matched token-AND window is always emitted, and this widens it further if larger than `window_lines`.',
52
+ default: 0,
53
+ },
54
+ window_lines: {
55
+ type: 'number',
56
+ description: 'Hybrid / token-AND mode only: how close (in lines) the tokens must appear to count as a hit. 1–10. Default 3. Lower = stricter (tokens on adjacent lines), higher = looser (tokens anywhere in a paragraph).',
57
+ default: 3,
58
+ },
59
+ max_hits: {
60
+ type: 'number',
61
+ description: 'Cap on results returned. Default 200, max 1000. In hybrid mode, an internal high-recall pool of up to 3× this is generated for reranking, then the top `max_hits` by relevance are returned.',
62
+ default: 200,
63
+ },
64
+ semantic: {
65
+ type: 'boolean',
66
+ description: 'Toggle semantic reranking for multi-token queries. Default true. Set to false to force plain keyword ranking (faster, deterministic, no model load). Has no effect on single-token / regex / quoted-phrase queries.',
67
+ default: true,
68
+ },
69
+ },
70
+ required: ['query'],
71
+ },
72
+ handler: (args, { tools }) => tools.searchRobloxDocs(args?.query, {
73
+ scope: args?.scope,
74
+ extensions: args?.extensions,
75
+ useRegex: args?.use_regex ?? false,
76
+ caseSensitive: args?.case_sensitive ?? false,
77
+ contextLines: args?.context_lines ?? 0,
78
+ windowLines: args?.window_lines ?? 3,
79
+ maxHits: args?.max_hits ?? 200,
80
+ semantic: args?.semantic ?? true,
81
+ }),
82
+ },
83
+ {
84
+ name: 'get_roblox_doc',
85
+ description: "Fetch the full content of a single Roblox docs file by its relative path under the cached `content/` tree. " +
86
+ 'Use this AFTER `search_roblox_docs` to read the surrounding section once you have a promising hit. ' +
87
+ 'For structured API reference (Class/DataType/Enum) prefer `get_roblox_api_reference` — it does the path resolution for you.',
88
+ inputSchema: {
89
+ type: 'object',
90
+ properties: {
91
+ path: {
92
+ type: 'string',
93
+ description: 'Path relative to the docs content root. Examples: "en-us/animation/using.md", "en-us/reference/engine/classes/Motor6D.yaml". `search_roblox_docs` returns hits in this format already.',
94
+ },
95
+ },
96
+ required: ['path'],
97
+ },
98
+ handler: (args, { tools }) => tools.getRobloxDoc(args?.path),
99
+ },
100
+ {
101
+ name: 'list_roblox_docs',
102
+ description: 'List directory contents within the cached Roblox docs tree (like `ls`) to discover what reference docs or guides exist. An empty path lists top-level locales ("en-us"). Paginated at 100 (response has totalEntries/offset/limit/truncated; max limit 1000) — but prefer search_roblox_docs or get_roblox_api_reference to find a specific entry.',
103
+ inputSchema: {
104
+ type: 'object',
105
+ properties: {
106
+ path: {
107
+ type: 'string',
108
+ description: 'Path relative to the docs content root. Empty string lists the top level. Examples: "en-us/reference/engine", "en-us/animation".',
109
+ default: '',
110
+ },
111
+ offset: {
112
+ type: 'number',
113
+ description: 'Pagination offset (0-indexed). Default 0.',
114
+ default: 0,
115
+ },
116
+ limit: {
117
+ type: 'number',
118
+ description: 'Page size. Default 100, max 1000.',
119
+ default: 100,
120
+ },
121
+ },
122
+ },
123
+ handler: (args, { tools }) => tools.listRobloxDocs(args?.path ?? '', {
124
+ offset: args?.offset ?? 0,
125
+ limit: args?.limit ?? 100,
126
+ }),
127
+ },
128
+ {
129
+ name: 'get_roblox_api_reference',
130
+ description: "Fetch the structured YAML API reference for a Roblox class, datatype, enum, global, or library by name. Returns parsed YAML (with `members`, `properties`, `methods`, etc. depending on category) plus the raw source. " +
131
+ 'PREFER THIS over `get_roblox_doc` when you know what you\'re looking for — it does category resolution and case-folding automatically. ' +
132
+ 'Examples that work: "Motor6D", "Part", "CFrame", "Vector3", "Material", "KeyCode", "math", "string".',
133
+ inputSchema: {
134
+ type: 'object',
135
+ properties: {
136
+ name: {
137
+ type: 'string',
138
+ description: 'API name as it appears in Lua/Luau code. Case-insensitive but PascalCase recommended ("Motor6D" not "motor6d").',
139
+ },
140
+ category: {
141
+ type: 'string',
142
+ enum: ['class', 'datatype', 'enum', 'global', 'library'],
143
+ description: 'Optional category to disambiguate. If omitted, the tool searches in order: class, datatype, enum, global, library — first match wins.',
144
+ },
145
+ },
146
+ required: ['name'],
147
+ },
148
+ handler: (args, { tools }) => tools.getRobloxApiReference(args?.name, args?.category),
149
+ },
150
+ ];
151
+ //# sourceMappingURL=docs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docs.js","sourceRoot":"","sources":["../../../src/tools/defs/docs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { ToolDef } from '../types.js';
2
+ /**
3
+ * Arbitrary Lua execution — the swiss-army knife.
4
+ */
5
+ export declare const executeTools: ToolDef[];
6
+ //# sourceMappingURL=execute.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../../src/tools/defs/execute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,OAAO,EAkBjC,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Arbitrary Lua execution — the swiss-army knife.
3
+ */
4
+ export const executeTools = [
5
+ {
6
+ name: 'execute_lua',
7
+ description: "Execute arbitrary Lua/Luau in the Studio plugin context (Edit mode) with full access to services, Instance constructors, and the Roblox API. Use it for complex operations that would otherwise need many tool calls, debugging, or prototyping. Returns the last expression's value. For code that must run inside a play test, use run_live_lua instead.\n\nUndo: the whole execution is one ChangeHistoryService waypoint (revert via `undo` / Ctrl+Z); if the code errors the recording is canceled and partial mutations roll back. Caveat: mutations made AFTER the handler returns (inside task.spawn/task.delay, or past long task.waits) are NOT captured — keep mutation work synchronous for reliable undo.",
8
+ inputSchema: {
9
+ type: 'object',
10
+ properties: {
11
+ code: {
12
+ type: 'string',
13
+ description: 'The Lua/Luau code to execute. Has access to: game, workspace, all services (Players, ReplicatedStorage, etc.), Instance constructors (Vector3, CFrame, Color3, etc.), and helper function getInstanceByPath(path). Return a value to get it back in the response.',
14
+ },
15
+ },
16
+ required: ['code'],
17
+ },
18
+ handler: (args, { tools }) => tools.executeLua(args?.code),
19
+ },
20
+ ];
21
+ //# sourceMappingURL=execute.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute.js","sourceRoot":"","sources":["../../../src/tools/defs/execute.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAc;IACrC;QACE,IAAI,EAAE,aAAa;QACnB,WAAW,EACT,wrBAAwrB;QAC1rB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,mQAAmQ;iBACtQ;aACF;YACD,QAAQ,EAAE,CAAC,MAAM,CAAC;SACnB;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC;KAC3D;CACF,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { ToolDef } from '../types.js';
2
+ /**
3
+ * Read-only inspection tools: place info, services, instance/class/project
4
+ * structure, current selection, and Studio output buffer.
5
+ */
6
+ export declare const inspectionTools: ToolDef[];
7
+ //# sourceMappingURL=inspection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspection.d.ts","sourceRoot":"","sources":["../../../src/tools/defs/inspection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,OAAO,EAgOpC,CAAC"}