summer-engine 2.8.2 → 3.1.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 (790) hide show
  1. package/.claude-plugin/marketplace.json +27 -7
  2. package/.claude-plugin/plugin.json +99 -83
  3. package/.codex-plugin/plugin.json +112 -82
  4. package/.cursor-plugin/plugin.json +119 -83
  5. package/.factory-plugin/plugin.json +100 -3
  6. package/.mcp.json +6 -1
  7. package/.opencode/INSTALL.md +7 -4
  8. package/.opencode/plugins/summer.js +31 -18
  9. package/AGENTS.md +107 -34
  10. package/CHANGELOG.md +149 -44
  11. package/CLAUDE.md +4 -2
  12. package/GEMINI.md +7 -53
  13. package/NOTICE +31 -0
  14. package/README.md +161 -393
  15. package/assets/api-docs.json.gz +0 -0
  16. package/assets/autopilot/README.md +20 -6
  17. package/assets/autopilot/autopilot.gd +80 -26
  18. package/assets/autopilot/run.sh +132 -7
  19. package/assets/navigation/web-routes.json +719 -0
  20. package/commands/gameskill.md +10 -108
  21. package/commands/summer.md +72 -4
  22. package/dist/bin/summer.js +6 -87
  23. package/dist/cli/banner.d.ts +1 -0
  24. package/dist/cli/banner.js +33 -0
  25. package/dist/{commands → cli/commands}/config.js +1 -1
  26. package/dist/cli/commands/create.d.ts +30 -0
  27. package/dist/cli/commands/create.js +212 -0
  28. package/dist/{commands → cli/commands}/debug.js +2 -2
  29. package/dist/cli/commands/doctor.d.ts +2 -0
  30. package/dist/cli/commands/doctor.js +18 -0
  31. package/dist/cli/commands/events.d.ts +57 -0
  32. package/dist/cli/commands/events.js +158 -0
  33. package/dist/cli/commands/install.d.ts +50 -0
  34. package/dist/cli/commands/install.js +447 -0
  35. package/dist/cli/commands/list.js +72 -0
  36. package/dist/{commands → cli/commands}/login.js +33 -17
  37. package/dist/{commands → cli/commands}/logout.d.ts +1 -0
  38. package/dist/cli/commands/logout.js +19 -0
  39. package/dist/{commands → cli/commands}/memory.d.ts +1 -8
  40. package/dist/{commands → cli/commands}/memory.js +20 -11
  41. package/dist/cli/commands/open.d.ts +45 -0
  42. package/dist/cli/commands/open.js +216 -0
  43. package/dist/{commands → cli/commands}/plan.js +2 -2
  44. package/dist/{commands → cli/commands}/publish.js +1 -1
  45. package/dist/{commands → cli/commands}/releases.js +1 -1
  46. package/dist/cli/commands/run.d.ts +19 -0
  47. package/dist/cli/commands/run.js +255 -0
  48. package/dist/cli/commands/setup.js +158 -0
  49. package/dist/{commands → cli/commands}/skills.js +121 -251
  50. package/dist/{commands → cli/commands}/status.d.ts +1 -0
  51. package/dist/cli/commands/status.js +62 -0
  52. package/dist/cli/commands/tool.d.ts +11 -0
  53. package/dist/cli/commands/tool.js +121 -0
  54. package/dist/cli/index.d.ts +6 -0
  55. package/dist/cli/index.js +89 -0
  56. package/dist/cli/root-action.d.ts +7 -0
  57. package/dist/cli/root-action.js +15 -0
  58. package/dist/{lib → core}/api-client.d.ts +106 -15
  59. package/dist/{lib → core}/api-client.js +267 -75
  60. package/dist/{lib → core}/async-op-lifecycle.d.ts +3 -4
  61. package/dist/{lib → core}/async-op-lifecycle.js +3 -4
  62. package/dist/{lib → core}/auth.d.ts +14 -6
  63. package/dist/{lib → core}/auth.js +56 -40
  64. package/dist/core/capabilities/agent-playbook.d.ts +20 -0
  65. package/dist/core/capabilities/agent-playbook.js +218 -0
  66. package/dist/core/capabilities/api-docs.d.ts +36 -0
  67. package/dist/core/capabilities/api-docs.js +118 -0
  68. package/dist/core/capabilities/asset-import.d.ts +49 -0
  69. package/dist/core/capabilities/asset-import.js +134 -0
  70. package/dist/core/capabilities/camera-view.d.ts +98 -0
  71. package/dist/core/capabilities/camera-view.js +222 -0
  72. package/dist/core/capabilities/capture.d.ts +63 -0
  73. package/dist/core/capabilities/capture.js +67 -0
  74. package/dist/core/capabilities/console-read.d.ts +17 -0
  75. package/dist/core/capabilities/console-read.js +21 -0
  76. package/dist/{lib → core/capabilities}/creator.d.ts +1 -29
  77. package/dist/{lib → core/capabilities}/creator.js +14 -33
  78. package/dist/{lib → core/capabilities}/debug-report.d.ts +1 -1
  79. package/dist/{lib → core/capabilities}/debug-report.js +12 -31
  80. package/dist/{commands → core/capabilities}/doctor.d.ts +7 -2
  81. package/dist/{commands → core/capabilities}/doctor.js +47 -73
  82. package/dist/core/capabilities/engine-fallbacks.d.ts +26 -0
  83. package/dist/core/capabilities/engine-fallbacks.js +36 -0
  84. package/dist/core/capabilities/engine-ops.d.ts +33 -0
  85. package/dist/core/capabilities/engine-ops.js +145 -0
  86. package/dist/core/capabilities/engine-receipt.d.ts +53 -0
  87. package/dist/core/capabilities/engine-receipt.js +134 -0
  88. package/dist/core/capabilities/events.d.ts +200 -0
  89. package/dist/core/capabilities/events.js +383 -0
  90. package/dist/core/capabilities/fabricate-mesh.d.ts +111 -0
  91. package/dist/core/capabilities/fabricate-mesh.js +165 -0
  92. package/dist/core/capabilities/frame-quality.d.ts +71 -0
  93. package/dist/core/capabilities/frame-quality.js +449 -0
  94. package/dist/core/capabilities/game-task-plan.d.ts +66 -0
  95. package/dist/{lib → core/capabilities}/game-task-plan.js +59 -8
  96. package/dist/core/capabilities/hdri-import.d.ts +90 -0
  97. package/dist/core/capabilities/hdri-import.js +250 -0
  98. package/dist/core/capabilities/image-generation.d.ts +24 -0
  99. package/dist/core/capabilities/image-generation.js +22 -0
  100. package/dist/core/capabilities/navigation/open.d.ts +156 -0
  101. package/dist/core/capabilities/navigation/open.js +567 -0
  102. package/dist/core/capabilities/navigation/render-product-map.d.ts +1 -0
  103. package/dist/core/capabilities/navigation/render-product-map.js +84 -0
  104. package/dist/core/capabilities/navigation/targets.d.ts +87 -0
  105. package/dist/core/capabilities/navigation/targets.js +250 -0
  106. package/dist/core/capabilities/play-determinism.d.ts +35 -0
  107. package/dist/core/capabilities/play-determinism.js +86 -0
  108. package/dist/core/capabilities/project-context.d.ts +114 -0
  109. package/dist/core/capabilities/project-context.js +249 -0
  110. package/dist/core/capabilities/runtime-control.d.ts +540 -0
  111. package/dist/core/capabilities/runtime-control.js +1011 -0
  112. package/dist/core/capabilities/scene-kind.d.ts +19 -0
  113. package/dist/core/capabilities/scene-kind.js +137 -0
  114. package/dist/core/capabilities/scene-script.d.ts +38 -0
  115. package/dist/core/capabilities/scene-script.js +45 -0
  116. package/dist/core/capabilities/tool-dispatch.d.ts +42 -0
  117. package/dist/core/capabilities/tool-dispatch.js +1490 -0
  118. package/dist/core/capabilities/ui-control.d.ts +179 -0
  119. package/dist/core/capabilities/ui-control.js +423 -0
  120. package/dist/core/capabilities/variant-types.d.ts +22 -0
  121. package/dist/core/capabilities/variant-types.js +101 -0
  122. package/dist/core/capability-skew.d.ts +205 -0
  123. package/dist/core/capability-skew.js +386 -0
  124. package/dist/{lib → core}/config.d.ts +11 -1
  125. package/dist/{lib → core}/config.js +13 -2
  126. package/dist/core/embeddings.d.ts +78 -0
  127. package/dist/core/embeddings.js +166 -0
  128. package/dist/core/engine-install.d.ts +105 -0
  129. package/dist/core/engine-install.js +190 -0
  130. package/dist/core/engine.d.ts +94 -0
  131. package/dist/{lib → core}/engine.js +74 -28
  132. package/dist/core/feedback/client.d.ts +88 -0
  133. package/dist/core/feedback/client.js +182 -0
  134. package/dist/{lib → core}/format.d.ts +0 -1
  135. package/dist/{lib → core}/format.js +1 -1
  136. package/dist/core/headless/connection.d.ts +86 -0
  137. package/dist/core/headless/connection.js +97 -0
  138. package/dist/core/headless/editor-connection.d.ts +26 -0
  139. package/dist/core/headless/editor-connection.js +81 -0
  140. package/dist/core/headless/mcp-routing.d.ts +38 -0
  141. package/dist/core/headless/mcp-routing.js +83 -0
  142. package/dist/core/headless/registry.d.ts +91 -0
  143. package/dist/core/headless/registry.js +226 -0
  144. package/dist/core/headless/resolve.d.ts +46 -0
  145. package/dist/core/headless/resolve.js +75 -0
  146. package/dist/core/headless/spawn.d.ts +46 -0
  147. package/dist/core/headless/spawn.js +205 -0
  148. package/dist/core/headless/worker-connection.d.ts +96 -0
  149. package/dist/core/headless/worker-connection.js +353 -0
  150. package/dist/core/headless/worker-engine-client.d.ts +58 -0
  151. package/dist/core/headless/worker-engine-client.js +246 -0
  152. package/dist/core/launch-posture.d.ts +170 -0
  153. package/dist/core/launch-posture.js +317 -0
  154. package/dist/core/library-read.d.ts +73 -0
  155. package/dist/core/library-read.js +279 -0
  156. package/dist/core/library-search.d.ts +143 -0
  157. package/dist/core/library-search.js +301 -0
  158. package/dist/{lib → core}/log-filters.js +4 -2
  159. package/dist/{lib → core}/mcp-log.js +2 -17
  160. package/dist/core/package-root.d.ts +9 -0
  161. package/dist/core/package-root.js +11 -0
  162. package/dist/core/redact.d.ts +20 -0
  163. package/dist/core/redact.js +64 -0
  164. package/dist/core/registry-search.d.ts +167 -0
  165. package/dist/core/registry-search.js +358 -0
  166. package/dist/core/skills-registry.d.ts +55 -0
  167. package/dist/core/skills-registry.js +106 -0
  168. package/dist/{lib → core}/store.js +11 -7
  169. package/dist/{lib → core}/summer-compatibility.js +3 -3
  170. package/dist/{lib → core}/telemetry.js +5 -2
  171. package/dist/core/templates.d.ts +98 -0
  172. package/dist/core/templates.js +241 -0
  173. package/dist/core/tool-errors.d.ts +30 -0
  174. package/dist/core/tool-errors.js +40 -0
  175. package/dist/core/trajectory.d.ts +80 -0
  176. package/dist/core/trajectory.js +307 -0
  177. package/dist/core/util/http.d.ts +13 -0
  178. package/dist/core/util/http.js +28 -0
  179. package/dist/core/util/json.d.ts +12 -0
  180. package/dist/core/util/json.js +21 -0
  181. package/dist/core/util/process.d.ts +3 -0
  182. package/dist/core/util/process.js +13 -0
  183. package/dist/core/util/sleep.d.ts +1 -0
  184. package/dist/core/util/sleep.js +3 -0
  185. package/dist/core/version.d.ts +3 -0
  186. package/dist/core/version.js +5 -0
  187. package/dist/installer/agent-config.d.ts +63 -0
  188. package/dist/installer/agent-config.js +540 -0
  189. package/dist/installer/agent-table.d.ts +103 -0
  190. package/dist/installer/agent-table.js +584 -0
  191. package/dist/installer/legacy-skills.d.ts +26 -0
  192. package/dist/installer/legacy-skills.js +53 -0
  193. package/dist/installer/setup.d.ts +76 -0
  194. package/dist/installer/setup.js +148 -0
  195. package/dist/installer/skill-locations.d.ts +36 -0
  196. package/dist/installer/skill-locations.js +91 -0
  197. package/dist/installer/version-check.d.ts +178 -0
  198. package/dist/installer/version-check.js +479 -0
  199. package/dist/{lib/mcp-boot-notice.d.ts → mcp/boot-notice.d.ts} +1 -1
  200. package/dist/{commands/mcp.js → mcp/command.js} +18 -6
  201. package/dist/mcp/server.d.ts +23 -3
  202. package/dist/mcp/server.js +122 -28
  203. package/dist/mcp/tools/asset-tools.js +62 -142
  204. package/dist/mcp/tools/creator-tools.js +5 -23
  205. package/dist/mcp/tools/debug-tools.js +61 -18
  206. package/dist/mcp/tools/event-tools.d.ts +14 -0
  207. package/dist/mcp/tools/event-tools.js +41 -0
  208. package/dist/mcp/tools/fabricate-tools.d.ts +2 -0
  209. package/dist/mcp/tools/fabricate-tools.js +28 -0
  210. package/dist/mcp/tools/feedback-tools.d.ts +77 -0
  211. package/dist/mcp/tools/feedback-tools.js +88 -0
  212. package/dist/mcp/tools/file-tools.js +6 -53
  213. package/dist/mcp/tools/generate-tools.js +37 -63
  214. package/dist/mcp/tools/library-tools.d.ts +11 -0
  215. package/dist/mcp/tools/library-tools.js +42 -0
  216. package/dist/mcp/tools/navigation-tools.d.ts +7 -0
  217. package/dist/mcp/tools/navigation-tools.js +37 -0
  218. package/dist/mcp/tools/perception-tools.d.ts +20 -0
  219. package/dist/mcp/tools/perception-tools.js +146 -0
  220. package/dist/mcp/tools/project-tools.d.ts +14 -0
  221. package/dist/mcp/tools/project-tools.js +72 -281
  222. package/dist/mcp/tools/runtime-tools.d.ts +2 -0
  223. package/dist/mcp/tools/runtime-tools.js +92 -0
  224. package/dist/mcp/tools/scene-tools.d.ts +3 -0
  225. package/dist/mcp/tools/scene-tools.js +68 -119
  226. package/dist/mcp/tools/script-tools.d.ts +3 -0
  227. package/dist/mcp/tools/script-tools.js +118 -0
  228. package/dist/mcp/tools/spatial-tools.d.ts +2 -0
  229. package/dist/mcp/tools/spatial-tools.js +485 -0
  230. package/dist/mcp/tools/text-json.d.ts +8 -0
  231. package/dist/mcp/tools/text-json.js +12 -0
  232. package/dist/mcp/tools/{cloud-tools.d.ts → ui-tools.d.ts} +1 -1
  233. package/dist/mcp/tools/ui-tools.js +82 -0
  234. package/dist/mcp/tools/visual-tools.d.ts +2 -7
  235. package/dist/mcp/tools/visual-tools.js +383 -101
  236. package/dist/mcp/tools/with-engine.d.ts +9 -15
  237. package/dist/mcp/tools/with-engine.js +60 -96
  238. package/dist/project-memory/project-manifest.d.ts +36 -0
  239. package/dist/project-memory/project-manifest.js +50 -0
  240. package/dist/project-memory/project-memory.d.ts +57 -0
  241. package/dist/{lib → project-memory}/project-memory.js +46 -0
  242. package/gemini-extension.json +103 -2
  243. package/hooks/hooks-cursor.json +2 -2
  244. package/hooks/hooks.json +2 -1
  245. package/hooks/pre-commit-doctor.sh +45 -39
  246. package/hooks/run-hook.cmd +30 -23
  247. package/hooks/run-hook.sh +20 -0
  248. package/hooks/session-start.sh +18 -7
  249. package/integrations/README.md +99 -0
  250. package/integrations/amp/README.md +12 -0
  251. package/integrations/amp/manifest-target.json +3 -0
  252. package/integrations/antigravity/README.md +12 -0
  253. package/integrations/antigravity/manifest-target.json +3 -0
  254. package/integrations/claude/README.md +19 -0
  255. package/integrations/claude/manifest-target.json +16 -0
  256. package/integrations/claude-desktop/README.md +12 -0
  257. package/integrations/claude-desktop/manifest-target.json +3 -0
  258. package/integrations/cline/README.md +12 -0
  259. package/integrations/cline/manifest-target.json +3 -0
  260. package/integrations/cline-cli/README.md +12 -0
  261. package/integrations/cline-cli/manifest-target.json +3 -0
  262. package/integrations/codex/README.md +15 -0
  263. package/integrations/codex/manifest-target.json +5 -0
  264. package/integrations/copilot-jetbrains/README.md +12 -0
  265. package/integrations/copilot-jetbrains/manifest-target.json +3 -0
  266. package/integrations/crush/README.md +12 -0
  267. package/integrations/crush/manifest-target.json +3 -0
  268. package/integrations/cursor/README.md +16 -0
  269. package/integrations/cursor/manifest-target.json +5 -0
  270. package/integrations/factory/README.md +26 -0
  271. package/integrations/factory/manifest-target.json +5 -0
  272. package/integrations/gemini/README.md +26 -0
  273. package/integrations/gemini/manifest-target.json +5 -0
  274. package/integrations/github-copilot/README.md +12 -0
  275. package/integrations/github-copilot/manifest-target.json +3 -0
  276. package/integrations/goose/README.md +12 -0
  277. package/integrations/goose/manifest-target.json +3 -0
  278. package/integrations/grok-build/README.md +12 -0
  279. package/integrations/grok-build/manifest-target.json +3 -0
  280. package/integrations/hermes/README.md +12 -0
  281. package/integrations/hermes/manifest-target.json +3 -0
  282. package/integrations/junie/README.md +12 -0
  283. package/integrations/junie/manifest-target.json +3 -0
  284. package/integrations/kilo-code/README.md +12 -0
  285. package/integrations/kilo-code/manifest-target.json +3 -0
  286. package/integrations/kimi-code/README.md +12 -0
  287. package/integrations/kimi-code/manifest-target.json +3 -0
  288. package/integrations/kiro/README.md +12 -0
  289. package/integrations/kiro/manifest-target.json +3 -0
  290. package/integrations/lm-studio/README.md +12 -0
  291. package/integrations/lm-studio/manifest-target.json +3 -0
  292. package/integrations/mistral-vibe/README.md +12 -0
  293. package/integrations/mistral-vibe/manifest-target.json +3 -0
  294. package/integrations/opencode/README.md +12 -0
  295. package/integrations/opencode/manifest-target.json +3 -0
  296. package/integrations/qoder/README.md +12 -0
  297. package/integrations/qoder/manifest-target.json +3 -0
  298. package/integrations/qwen-code/README.md +12 -0
  299. package/integrations/qwen-code/manifest-target.json +3 -0
  300. package/integrations/roo-code/README.md +14 -0
  301. package/integrations/roo-code/manifest-target.json +3 -0
  302. package/integrations/rovo-dev/README.md +12 -0
  303. package/integrations/rovo-dev/manifest-target.json +3 -0
  304. package/integrations/trae/README.md +12 -0
  305. package/integrations/trae/manifest-target.json +3 -0
  306. package/integrations/visual-studio/README.md +12 -0
  307. package/integrations/visual-studio/manifest-target.json +3 -0
  308. package/integrations/vscode-copilot/README.md +12 -0
  309. package/integrations/vscode-copilot/manifest-target.json +3 -0
  310. package/integrations/warp/README.md +12 -0
  311. package/integrations/warp/manifest-target.json +3 -0
  312. package/integrations/windsurf/README.md +12 -0
  313. package/integrations/windsurf/manifest-target.json +3 -0
  314. package/integrations/zed/README.md +12 -0
  315. package/integrations/zed/manifest-target.json +3 -0
  316. package/library/references/collaborative-protocol/resource.yaml +24 -0
  317. package/library/references/gd-style/resource.yaml +24 -0
  318. package/{references → library/references/godot-version}/godot-version.md +6 -6
  319. package/library/references/godot-version/resource.yaml +22 -0
  320. package/library/references/headless-routing/headless-routing.md +46 -0
  321. package/library/references/headless-routing/resource.yaml +24 -0
  322. package/library/references/mcp-fresh-chat-playbook/mcp-fresh-chat-playbook.md +49 -0
  323. package/library/references/mcp-fresh-chat-playbook/resource.yaml +23 -0
  324. package/library/references/mcp-tools-reference/mcp-tools-reference.md +271 -0
  325. package/library/references/mcp-tools-reference/resource.yaml +17 -0
  326. package/library/references/product-map/product-map.md +103 -0
  327. package/library/references/product-map/resource.yaml +33 -0
  328. package/{references → library/references/public-surface-language}/public-surface-language.md +5 -7
  329. package/library/references/public-surface-language/resource.yaml +17 -0
  330. package/library/references/summer-folder/resource.yaml +20 -0
  331. package/{references → library/references/summer-folder}/summer-folder.md +22 -21
  332. package/{skills/rendering-and-lighting → library/skills}/3d-lighting/SKILL.md +15 -11
  333. package/library/skills/3d-lighting/resource.yaml +27 -0
  334. package/library/skills/README.md +242 -0
  335. package/{skills/audio → library/skills}/adaptive-music/SKILL.md +1 -1
  336. package/library/skills/adaptive-music/resource.yaml +28 -0
  337. package/library/skills/agent-playtesting/SKILL.md +148 -0
  338. package/library/skills/agent-playtesting/resource.yaml +52 -0
  339. package/library/skills/ambient-bed/resource.yaml +24 -0
  340. package/{skills/video → library/skills}/animated-loop/SKILL.md +1 -1
  341. package/library/skills/animated-loop/resource.yaml +27 -0
  342. package/{skills/animation → library/skills}/animation-tree/SKILL.md +29 -14
  343. package/library/skills/animation-tree/resource.yaml +33 -0
  344. package/{skills/rendering-and-lighting → library/skills}/art-direction/SKILL.md +3 -3
  345. package/library/skills/art-direction/resource.yaml +29 -0
  346. package/{skills/asset-pipeline → library/skills}/asset-strategy/SKILL.md +44 -44
  347. package/library/skills/asset-strategy/resource.yaml +63 -0
  348. package/{skills/audio → library/skills}/audio-direction/SKILL.md +7 -7
  349. package/library/skills/audio-direction/resource.yaml +32 -0
  350. package/library/skills/auto-fire-targeting/resource.yaml +22 -0
  351. package/{skills/scene-and-project → library/skills}/brainstorm-game/SKILL.md +8 -8
  352. package/library/skills/brainstorm-game/resource.yaml +30 -0
  353. package/{skills/workflow → library/skills}/brainstorming/SKILL.md +2 -22
  354. package/library/skills/brainstorming/resource.yaml +23 -0
  355. package/{skills/workflow → library/skills}/brainstorming/spec-document-reviewer-prompt.md +1 -1
  356. package/{skills/scene-and-project → library/skills}/browse-templates/SKILL.md +18 -18
  357. package/library/skills/browse-templates/resource.yaml +23 -0
  358. package/library/skills/celeste-momentum-platforming/SKILL.md +366 -0
  359. package/library/skills/celeste-momentum-platforming/resource.yaml +33 -0
  360. package/library/skills/character-animation-wiring/SKILL.md +249 -0
  361. package/library/skills/character-animation-wiring/resource.yaml +39 -0
  362. package/{skills/3d-assets → library/skills}/character-model/SKILL.md +25 -25
  363. package/library/skills/character-model/resource.yaml +36 -0
  364. package/{skills/2d-assets → library/skills}/character-portrait/SKILL.md +14 -14
  365. package/library/skills/character-portrait/resource.yaml +30 -0
  366. package/{skills/video → library/skills}/cinematic-cutscene/SKILL.md +2 -2
  367. package/library/skills/cinematic-cutscene/resource.yaml +29 -0
  368. package/{skills/2d-assets → library/skills}/concept-art/SKILL.md +15 -15
  369. package/library/skills/concept-art/resource.yaml +34 -0
  370. package/{skills/2d-assets → library/skills}/create-asset-sheet/SKILL.md +8 -8
  371. package/library/skills/create-asset-sheet/resource.yaml +33 -0
  372. package/{skills/debugging → library/skills}/debug/SKILL.md +3 -3
  373. package/library/skills/debug/resource.yaml +31 -0
  374. package/{skills/workflow → library/skills}/debugging-game-feel/SKILL.md +11 -11
  375. package/library/skills/debugging-game-feel/resource.yaml +25 -0
  376. package/{skills/level-design → library/skills}/design-level/SKILL.md +6 -6
  377. package/library/skills/design-level/resource.yaml +31 -0
  378. package/{skills/gameplay-mechanics → library/skills}/design-mechanic/SKILL.md +3 -3
  379. package/library/skills/design-mechanic/resource.yaml +31 -0
  380. package/{skills/ai-and-npcs → library/skills}/design-npc/SKILL.md +7 -3
  381. package/library/skills/design-npc/resource.yaml +29 -0
  382. package/{skills/workflow → library/skills}/diagnosing-perf-regressions/SKILL.md +10 -10
  383. package/library/skills/diagnosing-perf-regressions/resource.yaml +25 -0
  384. package/{skills/workflow → library/skills}/dispatching-parallel-agents/SKILL.md +8 -8
  385. package/library/skills/dispatching-parallel-agents/resource.yaml +23 -0
  386. package/library/skills/driving-the-editor-ui/SKILL.md +85 -0
  387. package/library/skills/driving-the-editor-ui/resource.yaml +46 -0
  388. package/{skills/3d-assets → library/skills}/environment-kit/SKILL.md +11 -11
  389. package/library/skills/environment-kit/resource.yaml +29 -0
  390. package/{skills/deployment → library/skills}/export-and-ship/SKILL.md +5 -5
  391. package/library/skills/export-and-ship/resource.yaml +32 -0
  392. package/library/skills/fabricating-assets/SKILL.md +195 -0
  393. package/library/skills/fabricating-assets/resource.yaml +52 -0
  394. package/{skills/animation → library/skills}/facial-and-lipsync/SKILL.md +23 -11
  395. package/library/skills/facial-and-lipsync/resource.yaml +36 -0
  396. package/{skills/character-controllers → library/skills}/fps-controller/SKILL.md +8 -4
  397. package/library/skills/fps-controller/resource.yaml +29 -0
  398. package/{skills/visual-effects → library/skills}/game-feel/SKILL.md +7 -7
  399. package/library/skills/game-feel/resource.yaml +27 -0
  400. package/library/skills/gameskill/SKILL.md +64 -0
  401. package/library/skills/gameskill/resource.yaml +22 -0
  402. package/library/skills/gdscript-patterns/resource.yaml +23 -0
  403. package/{skills/animation → library/skills}/generate-motion/SKILL.md +16 -16
  404. package/library/skills/generate-motion/resource.yaml +34 -0
  405. package/library/skills/godogen-visual-proof-game-generation/SKILL.md +223 -0
  406. package/library/skills/godogen-visual-proof-game-generation/resource.yaml +33 -0
  407. package/{skills/workflow → library/skills}/headless-scripting/SKILL.md +14 -7
  408. package/library/skills/headless-scripting/resource.yaml +26 -0
  409. package/library/skills/host-authoritative-state/resource.yaml +28 -0
  410. package/{skills/2d-assets → library/skills}/instantiate-asset-pack/SKILL.md +10 -12
  411. package/library/skills/instantiate-asset-pack/resource.yaml +29 -0
  412. package/{skills/workflow → library/skills}/investigating-bugs/SKILL.md +4 -4
  413. package/{skills/workflow → library/skills}/investigating-bugs/condition-based-waiting.md +8 -8
  414. package/library/skills/investigating-bugs/resource.yaml +24 -0
  415. package/{skills/workflow → library/skills}/investigating-bugs/root-cause-tracing.md +1 -7
  416. package/library/skills/lumera-single-image-scene-reconstruction/SKILL.md +164 -0
  417. package/library/skills/lumera-single-image-scene-reconstruction/resource.yaml +35 -0
  418. package/{skills/scene-and-project → library/skills}/make-game/SKILL.md +22 -22
  419. package/library/skills/make-game/resource.yaml +35 -0
  420. package/library/skills/music-track/resource.yaml +28 -0
  421. package/library/skills/navigate-summer/SKILL.md +61 -0
  422. package/library/skills/navigate-summer/resource.yaml +35 -0
  423. package/{skills/scene-and-project → library/skills}/new-project/SKILL.md +10 -10
  424. package/library/skills/new-project/resource.yaml +28 -0
  425. package/{skills/3d-assets → library/skills}/organic-model/SKILL.md +16 -16
  426. package/library/skills/organic-model/resource.yaml +32 -0
  427. package/{skills/multiplayer-and-networking → library/skills}/peer-to-peer-multiplayer/SKILL.md +2 -2
  428. package/library/skills/peer-to-peer-multiplayer/resource.yaml +28 -0
  429. package/{skills/2d-assets → library/skills}/pixel-art/SKILL.md +13 -13
  430. package/library/skills/pixel-art/resource.yaml +31 -0
  431. package/library/skills/play/resource.yaml +26 -0
  432. package/{skills/workflow → library/skills}/playtesting-a-feature/SKILL.md +41 -22
  433. package/library/skills/playtesting-a-feature/resource.yaml +31 -0
  434. package/{skills/animation → library/skills}/procedural-animation/SKILL.md +25 -10
  435. package/library/skills/procedural-animation/resource.yaml +33 -0
  436. package/{skills/3d-assets → library/skills}/prop-model/SKILL.md +13 -13
  437. package/library/skills/prop-model/resource.yaml +33 -0
  438. package/library/skills/psx-retro-rendering/SKILL.md +416 -0
  439. package/library/skills/psx-retro-rendering/resource.yaml +36 -0
  440. package/library/skills/realtime-wet-surfaces/SKILL.md +189 -0
  441. package/library/skills/realtime-wet-surfaces/resource.yaml +31 -0
  442. package/{skills/deployment → library/skills}/remote-deploy/SKILL.md +3 -3
  443. package/library/skills/remote-deploy/resource.yaml +23 -0
  444. package/{skills/animation → library/skills}/retarget/SKILL.md +15 -14
  445. package/library/skills/retarget/resource.yaml +33 -0
  446. package/library/skills/running-in-the-cloud/SKILL.md +103 -0
  447. package/library/skills/running-in-the-cloud/resource.yaml +33 -0
  448. package/{skills/scene-and-project → library/skills}/scene-composition/SKILL.md +8 -0
  449. package/library/skills/scene-composition/resource.yaml +27 -0
  450. package/library/skills/scene-hierarchy-design/SKILL.md +102 -0
  451. package/library/skills/scene-hierarchy-design/resource.yaml +31 -0
  452. package/library/skills/scene-scripting/SKILL.md +764 -0
  453. package/library/skills/scene-scripting/resource.yaml +58 -0
  454. package/{skills/level-design → library/skills}/scene-to-level/SKILL.md +16 -17
  455. package/library/skills/scene-to-level/resource.yaml +33 -0
  456. package/library/skills/setup-multiplayer/resource.yaml +28 -0
  457. package/library/skills/skill-create/SKILL.md +138 -0
  458. package/library/skills/skill-create/resource.yaml +25 -0
  459. package/{skills/workflow → library/skills}/skill-improve/SKILL.md +2 -2
  460. package/library/skills/skill-improve/resource.yaml +25 -0
  461. package/{skills/workflow → library/skills}/skill-test/SKILL.md +4 -4
  462. package/library/skills/skill-test/resource.yaml +26 -0
  463. package/library/skills/skintokens-auto-rigging/SKILL.md +200 -0
  464. package/library/skills/skintokens-auto-rigging/resource.yaml +38 -0
  465. package/{skills/2d-assets → library/skills}/skybox-panorama/SKILL.md +8 -8
  466. package/library/skills/skybox-panorama/resource.yaml +28 -0
  467. package/{skills/audio → library/skills}/sound-effect/SKILL.md +2 -2
  468. package/library/skills/sound-effect/resource.yaml +27 -0
  469. package/library/skills/spatial-placement/SKILL.md +74 -0
  470. package/library/skills/spatial-placement/resource.yaml +42 -0
  471. package/library/skills/spatial-placement/tests/spec.md +65 -0
  472. package/{skills/2d-assets → library/skills}/sprite-sheet/SKILL.md +12 -12
  473. package/library/skills/sprite-sheet/resource.yaml +32 -0
  474. package/{skills/2d-assets → library/skills}/tileable-texture/SKILL.md +9 -9
  475. package/library/skills/tileable-texture/resource.yaml +31 -0
  476. package/{skills/video → library/skills}/trailer-shot/SKILL.md +1 -1
  477. package/library/skills/trailer-shot/resource.yaml +27 -0
  478. package/{skills/performance → library/skills}/tune-performance/SKILL.md +6 -6
  479. package/library/skills/tune-performance/resource.yaml +31 -0
  480. package/library/skills/ui-basics/resource.yaml +25 -0
  481. package/{skills/2d-assets → library/skills}/ui-graphics/SKILL.md +11 -11
  482. package/library/skills/ui-graphics/resource.yaml +29 -0
  483. package/{skills/2d-assets → library/skills}/use-widget-asset/SKILL.md +4 -4
  484. package/library/skills/use-widget-asset/resource.yaml +29 -0
  485. package/{skills/workflow → library/skills}/using-summer/SKILL.md +12 -9
  486. package/library/skills/using-summer/resource.yaml +41 -0
  487. package/{skills/3d-assets → library/skills}/vehicle-model/SKILL.md +18 -18
  488. package/library/skills/vehicle-model/resource.yaml +34 -0
  489. package/{skills/workflow → library/skills}/verification-before-completion/SKILL.md +10 -10
  490. package/library/skills/verification-before-completion/resource.yaml +23 -0
  491. package/library/skills/verifying-scenes/SKILL.md +98 -0
  492. package/library/skills/verifying-scenes/resource.yaml +42 -0
  493. package/{skills/visual-effects/recipes/dissolve → library/skills/vfx-dissolve}/SKILL.md +31 -11
  494. package/library/skills/vfx-dissolve/resource.yaml +33 -0
  495. package/{skills/visual-effects/recipes/fire → library/skills/vfx-fire}/SKILL.md +43 -12
  496. package/library/skills/vfx-fire/_building-blocks/noise-3d-fbm.gdshaderinc +45 -0
  497. package/library/skills/vfx-fire/resource.yaml +35 -0
  498. package/{skills/visual-effects/recipes/hit-spark → library/skills/vfx-hit-spark}/SKILL.md +16 -10
  499. package/library/skills/vfx-hit-spark/_building-blocks/additive-billboard-particles.md +37 -0
  500. package/library/skills/vfx-hit-spark/resource.yaml +34 -0
  501. package/{skills/visual-effects/recipes/lightning → library/skills/vfx-lightning}/SKILL.md +24 -11
  502. package/library/skills/vfx-lightning/_building-blocks/additive-billboard-particles.md +37 -0
  503. package/library/skills/vfx-lightning/resource.yaml +33 -0
  504. package/{skills/visual-effects/recipes/magic-glow → library/skills/vfx-magic-glow}/SKILL.md +31 -11
  505. package/library/skills/vfx-magic-glow/_building-blocks/additive-billboard-particles.md +37 -0
  506. package/library/skills/vfx-magic-glow/resource.yaml +34 -0
  507. package/{skills/visual-effects/recipes/muzzle-flash → library/skills/vfx-muzzle-flash}/SKILL.md +29 -9
  508. package/library/skills/vfx-muzzle-flash/_building-blocks/additive-billboard-particles.md +37 -0
  509. package/library/skills/vfx-muzzle-flash/_building-blocks/trauma-shake-snippet.md +53 -0
  510. package/library/skills/vfx-muzzle-flash/resource.yaml +35 -0
  511. package/{skills/visual-effects/recipes/smoke → library/skills/vfx-smoke}/SKILL.md +35 -9
  512. package/library/skills/vfx-smoke/_building-blocks/noise-3d-fbm.gdshaderinc +45 -0
  513. package/library/skills/vfx-smoke/resource.yaml +32 -0
  514. package/{skills/visual-effects/recipes/water-ripple → library/skills/vfx-water-ripple}/SKILL.md +31 -9
  515. package/library/skills/vfx-water-ripple/_building-blocks/additive-billboard-particles.md +37 -0
  516. package/library/skills/vfx-water-ripple/resource.yaml +31 -0
  517. package/library/skills/voice-line/resource.yaml +27 -0
  518. package/library/skills/world-building-3d/SKILL.md +105 -0
  519. package/library/skills/world-building-3d/references/spatial-tools.md +50 -0
  520. package/library/skills/world-building-3d/resource.yaml +44 -0
  521. package/library/skills/world-building-3d/tests/spec.md +48 -0
  522. package/{skills/workflow → library/skills}/writing-plans/SKILL.md +19 -14
  523. package/library/skills/writing-plans/resource.yaml +23 -0
  524. package/{skills/workflow → library/skills}/writing-skills/SKILL.md +38 -44
  525. package/library/skills/writing-skills/resource.yaml +29 -0
  526. package/{skills/workflow → library/skills}/writing-skills/testing-skills-with-subagents.md +13 -14
  527. package/library/templates/2d-brario-platformer/resource.yaml +21 -0
  528. package/library/templates/2d-dungeon-roguelike/resource.yaml +23 -0
  529. package/library/templates/2d-grid-puzzle/resource.yaml +21 -0
  530. package/library/templates/2d-plants-and-zombies-tower-defense/resource.yaml +21 -0
  531. package/library/templates/2d-platformer/resource.yaml +24 -0
  532. package/library/templates/2d-rpg/resource.yaml +21 -0
  533. package/library/templates/2d-vampire-survivor-roguelike/resource.yaml +21 -0
  534. package/library/templates/3d-basic/resource.yaml +16 -0
  535. package/library/templates/3d-city-kit/resource.yaml +24 -0
  536. package/library/templates/3d-fps-old-school/resource.yaml +21 -0
  537. package/library/templates/3d-fps-simple-animated-npc/resource.yaml +21 -0
  538. package/library/templates/3d-lan-multiplayer-starter/resource.yaml +22 -0
  539. package/library/templates/3d-open-world-explore-tps/resource.yaml +21 -0
  540. package/library/templates/3d-procedural-road-world/resource.yaml +21 -0
  541. package/library/templates/3d-racing-game/resource.yaml +21 -0
  542. package/library/templates/3d-royale-clash-type/resource.yaml +21 -0
  543. package/library/templates/3d-third-person-controller/resource.yaml +21 -0
  544. package/library/templates/3d-voxel-sandbox/resource.yaml +24 -0
  545. package/library/templates/README.md +94 -0
  546. package/library/templates/empty/resource.yaml +16 -0
  547. package/library/tools/add-node/resource.yaml +60 -0
  548. package/library/tools/align-distribute-3d/resource.yaml +87 -0
  549. package/library/tools/api-docs/resource.yaml +57 -0
  550. package/library/tools/batch/resource.yaml +52 -0
  551. package/library/tools/camera-bookmark/resource.yaml +73 -0
  552. package/library/tools/check-job/resource.yaml +45 -0
  553. package/library/tools/clear-console/resource.yaml +40 -0
  554. package/library/tools/connect-signal/resource.yaml +63 -0
  555. package/library/tools/create-debug-report/resource.yaml +67 -0
  556. package/library/tools/create-scene/resource.yaml +59 -0
  557. package/library/tools/creator-config/resource.yaml +63 -0
  558. package/library/tools/creator-publish/resource.yaml +73 -0
  559. package/library/tools/creator-releases/resource.yaml +53 -0
  560. package/library/tools/fabricate-3d/resource.yaml +108 -0
  561. package/library/tools/game-control/resource.yaml +84 -0
  562. package/library/tools/game-input/resource.yaml +159 -0
  563. package/library/tools/game-probe/resource.yaml +90 -0
  564. package/library/tools/generate-3d/resource.yaml +112 -0
  565. package/library/tools/generate-audio/resource.yaml +80 -0
  566. package/library/tools/generate-image/resource.yaml +62 -0
  567. package/library/tools/generate-motion/resource.yaml +66 -0
  568. package/library/tools/generate-video/resource.yaml +66 -0
  569. package/library/tools/get-agent-playbook/resource.yaml +40 -0
  570. package/library/tools/get-asset/resource.yaml +42 -0
  571. package/library/tools/get-asset-download-url/resource.yaml +52 -0
  572. package/library/tools/get-console/resource.yaml +69 -0
  573. package/library/tools/get-debugger-errors/resource.yaml +56 -0
  574. package/library/tools/get-debugger-warnings/resource.yaml +52 -0
  575. package/library/tools/get-diagnostics/resource.yaml +42 -0
  576. package/library/tools/get-project-context/resource.yaml +45 -0
  577. package/library/tools/get-runtime-tree/resource.yaml +62 -0
  578. package/library/tools/get-scene-tree/resource.yaml +52 -0
  579. package/library/tools/get-script-errors/resource.yaml +45 -0
  580. package/library/tools/get-studio-workflow/resource.yaml +43 -0
  581. package/library/tools/import-asset/resource.yaml +73 -0
  582. package/library/tools/import-asset-by-id/resource.yaml +56 -0
  583. package/library/tools/import-from-url/resource.yaml +51 -0
  584. package/library/tools/import-from-url-batch/resource.yaml +60 -0
  585. package/library/tools/import-hdri/resource.yaml +69 -0
  586. package/library/tools/input-map-bind/resource.yaml +52 -0
  587. package/library/tools/inspect-node/resource.yaml +46 -0
  588. package/library/tools/inspect-resource/resource.yaml +45 -0
  589. package/library/tools/inspect-runtime-node/resource.yaml +54 -0
  590. package/library/tools/instantiate-scene/resource.yaml +62 -0
  591. package/library/tools/is-running/resource.yaml +40 -0
  592. package/library/tools/library-feedback/resource.yaml +89 -0
  593. package/library/tools/list-my-assets/resource.yaml +56 -0
  594. package/library/tools/navigation-probe/resource.yaml +85 -0
  595. package/library/tools/open/resource.yaml +80 -0
  596. package/library/tools/open-main-scene/resource.yaml +40 -0
  597. package/library/tools/open-scene/resource.yaml +46 -0
  598. package/library/tools/play/resource.yaml +91 -0
  599. package/library/tools/project-setting/resource.yaml +53 -0
  600. package/library/tools/read-file/resource.yaml +47 -0
  601. package/library/tools/read-library/resource.yaml +67 -0
  602. package/library/tools/recent-events/resource.yaml +71 -0
  603. package/library/tools/remove-node/resource.yaml +51 -0
  604. package/library/tools/replace-node/resource.yaml +57 -0
  605. package/library/tools/replace-text/resource.yaml +61 -0
  606. package/library/tools/run-editor-script/resource.yaml +61 -0
  607. package/library/tools/run-script/resource.yaml +73 -0
  608. package/library/tools/runtime-animate/resource.yaml +140 -0
  609. package/library/tools/runtime-call/resource.yaml +74 -0
  610. package/library/tools/runtime-set/resource.yaml +80 -0
  611. package/library/tools/runtime-spawn/resource.yaml +95 -0
  612. package/library/tools/save-scene/resource.yaml +50 -0
  613. package/library/tools/screenshot/resource.yaml +112 -0
  614. package/library/tools/search-assets/resource.yaml +67 -0
  615. package/library/tools/search-library/resource.yaml +81 -0
  616. package/library/tools/select-node/resource.yaml +48 -0
  617. package/library/tools/set-prop/resource.yaml +64 -0
  618. package/library/tools/set-resource-property/resource.yaml +66 -0
  619. package/library/tools/slice-asset-sheet/resource.yaml +47 -0
  620. package/library/tools/snap-to-surface/resource.yaml +90 -0
  621. package/library/tools/snapshot-diff/resource.yaml +58 -0
  622. package/library/tools/starcast/resource.yaml +120 -0
  623. package/library/tools/start-game-task/resource.yaml +91 -0
  624. package/library/tools/stop/resource.yaml +51 -0
  625. package/library/tools/test-placement/resource.yaml +109 -0
  626. package/library/tools/ui-actions/resource.yaml +77 -0
  627. package/library/tools/ui-activate/resource.yaml +88 -0
  628. package/library/tools/ui-screenshot/resource.yaml +63 -0
  629. package/library/tools/ui-tree/resource.yaml +69 -0
  630. package/library/tools/wait-for-event/resource.yaml +84 -0
  631. package/library/tools/world-snapshot/resource.yaml +60 -0
  632. package/library/tools/write-file/resource.yaml +54 -0
  633. package/package.json +21 -15
  634. package/registry/generated/aliases.json +207 -0
  635. package/registry/generated/counts.json +12 -0
  636. package/registry/generated/gemini-extension.json +122 -0
  637. package/registry/generated/index.json +7709 -0
  638. package/registry/generated/marketplace.claude.json +44 -0
  639. package/registry/generated/mcp.json +13 -0
  640. package/registry/generated/plugin.claude.json +135 -0
  641. package/registry/generated/plugin.codex.json +144 -0
  642. package/registry/generated/plugin.cursor.json +134 -0
  643. package/registry/generated/plugin.factory.json +117 -0
  644. package/registry/generated/skills-index.md +242 -0
  645. package/registry/generated/skills-registry.json +1249 -0
  646. package/registry/generated/templates-registry.json +455 -0
  647. package/registry/schemas/allowed-hosts.json +19 -0
  648. package/registry/schemas/collection.schema.json +68 -0
  649. package/registry/schemas/domains.json +96 -0
  650. package/registry/schemas/example.schema.json +11 -0
  651. package/registry/schemas/reference.schema.json +10 -0
  652. package/registry/schemas/resource.schema.json +154 -0
  653. package/registry/schemas/skill.schema.json +14 -0
  654. package/registry/schemas/template.schema.json +46 -0
  655. package/registry/schemas/tool.schema.json +61 -0
  656. package/_persona/summer/SKILL.md +0 -113
  657. package/dist/bin/postinstall.d.ts +0 -2
  658. package/dist/bin/postinstall.js +0 -3
  659. package/dist/commands/cloud.d.ts +0 -2
  660. package/dist/commands/cloud.js +0 -80
  661. package/dist/commands/create.d.ts +0 -3
  662. package/dist/commands/create.js +0 -171
  663. package/dist/commands/install.d.ts +0 -19
  664. package/dist/commands/install.js +0 -194
  665. package/dist/commands/list.js +0 -67
  666. package/dist/commands/logout.js +0 -13
  667. package/dist/commands/logs.d.ts +0 -2
  668. package/dist/commands/logs.js +0 -19
  669. package/dist/commands/open.d.ts +0 -2
  670. package/dist/commands/open.js +0 -32
  671. package/dist/commands/orchestrator.d.ts +0 -8
  672. package/dist/commands/orchestrator.js +0 -143
  673. package/dist/commands/run.d.ts +0 -2
  674. package/dist/commands/run.js +0 -167
  675. package/dist/commands/setup.js +0 -217
  676. package/dist/commands/status.js +0 -46
  677. package/dist/lib/agent-config.d.ts +0 -39
  678. package/dist/lib/agent-config.js +0 -626
  679. package/dist/lib/banner.d.ts +0 -4
  680. package/dist/lib/banner.js +0 -122
  681. package/dist/lib/cloud/api.d.ts +0 -79
  682. package/dist/lib/cloud/api.js +0 -107
  683. package/dist/lib/cloud/apply.d.ts +0 -32
  684. package/dist/lib/cloud/apply.js +0 -294
  685. package/dist/lib/cloud/checkpoint.d.ts +0 -26
  686. package/dist/lib/cloud/checkpoint.js +0 -142
  687. package/dist/lib/cloud/conflicts.d.ts +0 -55
  688. package/dist/lib/cloud/conflicts.js +0 -131
  689. package/dist/lib/cloud/containment.d.ts +0 -8
  690. package/dist/lib/cloud/containment.js +0 -52
  691. package/dist/lib/cloud/diff.d.ts +0 -39
  692. package/dist/lib/cloud/diff.js +0 -138
  693. package/dist/lib/cloud/engine-bridge.d.ts +0 -34
  694. package/dist/lib/cloud/engine-bridge.js +0 -139
  695. package/dist/lib/cloud/hash-cache.d.ts +0 -23
  696. package/dist/lib/cloud/hash-cache.js +0 -44
  697. package/dist/lib/cloud/hash.d.ts +0 -10
  698. package/dist/lib/cloud/hash.js +0 -111
  699. package/dist/lib/cloud/http.d.ts +0 -17
  700. package/dist/lib/cloud/http.js +0 -47
  701. package/dist/lib/cloud/lock-path.d.ts +0 -1
  702. package/dist/lib/cloud/lock-path.js +0 -5
  703. package/dist/lib/cloud/lock.d.ts +0 -14
  704. package/dist/lib/cloud/lock.js +0 -143
  705. package/dist/lib/cloud/manifest.d.ts +0 -6
  706. package/dist/lib/cloud/manifest.js +0 -41
  707. package/dist/lib/cloud/paths.d.ts +0 -20
  708. package/dist/lib/cloud/paths.js +0 -90
  709. package/dist/lib/cloud/project-godot-merge.d.ts +0 -32
  710. package/dist/lib/cloud/project-godot-merge.js +0 -185
  711. package/dist/lib/cloud/rules.d.ts +0 -39
  712. package/dist/lib/cloud/rules.js +0 -159
  713. package/dist/lib/cloud/sync.d.ts +0 -21
  714. package/dist/lib/cloud/sync.js +0 -518
  715. package/dist/lib/cloud/transfer.d.ts +0 -23
  716. package/dist/lib/cloud/transfer.js +0 -184
  717. package/dist/lib/cloud/types.d.ts +0 -62
  718. package/dist/lib/cloud/types.js +0 -1
  719. package/dist/lib/cloud/validate-path.d.ts +0 -23
  720. package/dist/lib/cloud/validate-path.js +0 -103
  721. package/dist/lib/engine.d.ts +0 -51
  722. package/dist/lib/game-task-plan.d.ts +0 -42
  723. package/dist/lib/project-memory.d.ts +0 -33
  724. package/dist/lib/public-surface-paths.d.ts +0 -13
  725. package/dist/lib/public-surface-paths.js +0 -42
  726. package/dist/lib/remote-templates.d.ts +0 -25
  727. package/dist/lib/remote-templates.js +0 -86
  728. package/dist/lib/skills-registry.d.ts +0 -572
  729. package/dist/lib/skills-registry.js +0 -1061
  730. package/dist/lib/version-check.d.ts +0 -106
  731. package/dist/lib/version-check.js +0 -338
  732. package/dist/mcp/tools/cloud-tools.js +0 -42
  733. package/references/mcp-tools-reference.md +0 -199
  734. package/references/template-registry.md +0 -73
  735. package/skills/README.md +0 -103
  736. package/skills/scene-and-project/summer-cloud/SKILL.md +0 -92
  737. package/skills/workflow/brainstorming/scripts/frame-template.html +0 -214
  738. package/skills/workflow/brainstorming/scripts/helper.js +0 -88
  739. package/skills/workflow/brainstorming/scripts/server.cjs +0 -354
  740. package/skills/workflow/brainstorming/scripts/start-server.sh +0 -148
  741. package/skills/workflow/brainstorming/scripts/stop-server.sh +0 -56
  742. package/skills/workflow/brainstorming/visual-companion.md +0 -287
  743. package/skills/workflow/gameskill/SKILL.md +0 -120
  744. package/skills/workflow/investigating-bugs/CREATION-LOG.md +0 -119
  745. package/skills/workflow/investigating-bugs/condition-based-waiting-example.ts +0 -158
  746. package/skills/workflow/investigating-bugs/find-polluter.sh +0 -63
  747. package/skills/workflow/investigating-bugs/test-academic.md +0 -14
  748. package/skills/workflow/investigating-bugs/test-pressure-1.md +0 -58
  749. package/skills/workflow/investigating-bugs/test-pressure-2.md +0 -68
  750. package/skills/workflow/investigating-bugs/test-pressure-3.md +0 -69
  751. package/skills/workflow/mcpupdate/SKILL.md +0 -134
  752. package/skills/workflow/skill-create/SKILL.md +0 -153
  753. package/skills/workflow/writing-skills/anthropic-best-practices.md +0 -1150
  754. package/skills/workflow/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
  755. package/skills/workflow/writing-skills/graphviz-conventions.dot +0 -172
  756. package/skills/workflow/writing-skills/persuasion-principles.md +0 -187
  757. package/skills/workflow/writing-skills/render-graphs.js +0 -168
  758. /package/dist/{commands → cli/commands}/config.d.ts +0 -0
  759. /package/dist/{commands → cli/commands}/debug.d.ts +0 -0
  760. /package/dist/{commands → cli/commands}/list.d.ts +0 -0
  761. /package/dist/{commands → cli/commands}/login.d.ts +0 -0
  762. /package/dist/{commands → cli/commands}/plan.d.ts +0 -0
  763. /package/dist/{commands → cli/commands}/publish.d.ts +0 -0
  764. /package/dist/{commands → cli/commands}/releases.d.ts +0 -0
  765. /package/dist/{commands → cli/commands}/setup.d.ts +0 -0
  766. /package/dist/{commands → cli/commands}/skills.d.ts +0 -0
  767. /package/dist/{lib → core}/log-filters.d.ts +0 -0
  768. /package/dist/{lib → core}/mcp-log.d.ts +0 -0
  769. /package/dist/{lib → core}/store.d.ts +0 -0
  770. /package/dist/{lib → core}/summer-compatibility.d.ts +0 -0
  771. /package/dist/{lib → core}/telemetry.d.ts +0 -0
  772. /package/dist/{lib/mcp-boot-notice.js → mcp/boot-notice.js} +0 -0
  773. /package/dist/{commands/mcp.d.ts → mcp/command.d.ts} +0 -0
  774. /package/{references → library/references/collaborative-protocol}/collaborative-protocol.md +0 -0
  775. /package/{references → library/references/gd-style}/gd-style.md +0 -0
  776. /package/{skills/audio → library/skills}/ambient-bed/SKILL.md +0 -0
  777. /package/{skills/gameplay-mechanics → library/skills}/auto-fire-targeting/SKILL.md +0 -0
  778. /package/{skills/scripting-patterns → library/skills}/gdscript-patterns/SKILL.md +0 -0
  779. /package/{skills/scripting-patterns → library/skills}/gdscript-patterns/reference.md +0 -0
  780. /package/{skills/multiplayer-and-networking → library/skills}/host-authoritative-state/SKILL.md +0 -0
  781. /package/{skills/workflow → library/skills}/investigating-bugs/defense-in-depth.md +0 -0
  782. /package/{skills/audio → library/skills}/music-track/SKILL.md +0 -0
  783. /package/{skills/scene-and-project → library/skills}/play/SKILL.md +0 -0
  784. /package/{skills/multiplayer-and-networking → library/skills}/setup-multiplayer/SKILL.md +0 -0
  785. /package/{skills/ui-and-ux → library/skills}/ui-basics/SKILL.md +0 -0
  786. /package/{skills/visual-effects → library/skills/vfx-dissolve}/_building-blocks/noise-3d-fbm.gdshaderinc +0 -0
  787. /package/{skills/visual-effects → library/skills/vfx-fire}/_building-blocks/additive-billboard-particles.md +0 -0
  788. /package/{skills/visual-effects → library/skills/vfx-lightning}/_building-blocks/trauma-shake-snippet.md +0 -0
  789. /package/{skills/audio → library/skills}/voice-line/SKILL.md +0 -0
  790. /package/{skills/workflow → library/skills}/writing-plans/plan-document-reviewer-prompt.md +0 -0
@@ -0,0 +1,584 @@
1
+ /**
2
+ * The one table of agent clients `summer setup` and `summer skills install`
3
+ * know how to write for. Every per-agent fact lives here: label, aliases,
4
+ * where the MCP config file is (per scope and OS), which file shape it uses,
5
+ * where skills go, and what to tell the user afterwards. agent-config.ts and
6
+ * skill-locations.ts read this table; nothing else hard-codes an agent.
7
+ *
8
+ * Adding an agent = one entry here + an `integrations/<id>/` folder (a test
9
+ * keeps the two in lockstep) + a row in the docs tables.
10
+ *
11
+ * Paths were checked against each product's official docs on 2026-09-11.
12
+ */
13
+ import { join } from "path";
14
+ import { homedir, platform } from "os";
15
+ /** Ids `summer setup <agent>` accepts. Legacy ids stay so old commands and
16
+ * configs keep resolving, but they are hidden from help and warn on use. */
17
+ export const AGENT_IDS = [
18
+ "claude-code",
19
+ "claude-desktop",
20
+ "codex",
21
+ "cursor",
22
+ "windsurf",
23
+ "antigravity",
24
+ "gemini",
25
+ "cline",
26
+ "cline-cli",
27
+ "roo-code",
28
+ "kilo-code",
29
+ "github-copilot",
30
+ "vscode-copilot",
31
+ "visual-studio",
32
+ "copilot-jetbrains",
33
+ "opencode",
34
+ "zed",
35
+ "kiro",
36
+ "goose",
37
+ "hermes",
38
+ "trae",
39
+ "qwen-code",
40
+ "kimi-code",
41
+ "crush",
42
+ "amp",
43
+ "factory",
44
+ "junie",
45
+ "warp",
46
+ "rovo-dev",
47
+ "qoder",
48
+ "grok-build",
49
+ "mistral-vibe",
50
+ "lm-studio",
51
+ ];
52
+ // ---- path helpers ---------------------------------------------------------
53
+ function appData(ctx) {
54
+ return ctx.env.APPDATA ?? join(ctx.home, "AppData", "Roaming");
55
+ }
56
+ function xdgConfig(ctx) {
57
+ return ctx.env.XDG_CONFIG_HOME ?? join(ctx.home, ".config");
58
+ }
59
+ /** ~/.config on Linux, %APPDATA% on Windows, ~/Library/Application Support on macOS. */
60
+ function appConfigRoot(ctx) {
61
+ if (ctx.os === "win32")
62
+ return appData(ctx);
63
+ if (ctx.os === "darwin")
64
+ return join(ctx.home, "Library", "Application Support");
65
+ return xdgConfig(ctx);
66
+ }
67
+ /** XDG on Linux AND macOS (CLI tools that ignore Application Support), %APPDATA% on Windows. */
68
+ function xdgOrAppData(ctx) {
69
+ return ctx.os === "win32" ? appData(ctx) : xdgConfig(ctx);
70
+ }
71
+ function vsCodeUserDir(ctx) {
72
+ return join(appConfigRoot(ctx), "Code", "User");
73
+ }
74
+ function vsCodeGlobalStorage(ctx, extensionId, fileName) {
75
+ return join(vsCodeUserDir(ctx), "globalStorage", extensionId, "settings", fileName);
76
+ }
77
+ const home = (...parts) => (ctx) => join(ctx.home, ...parts);
78
+ const project = (...parts) => (ctx) => join(ctx.cwd, ...parts);
79
+ /** agentskills.io layout (`<dir>/<skill>/SKILL.md`) under a user dir and a project dir. */
80
+ function skillDirs(user, proj, extra = {}) {
81
+ return { kind: "skill-dir", user, project: proj, ...extra };
82
+ }
83
+ // ---- the table ------------------------------------------------------------
84
+ const SPECS = [
85
+ {
86
+ id: "claude-code",
87
+ label: "Claude Code",
88
+ aliases: ["claude"],
89
+ status: "active",
90
+ envOverride: "SUMMER_CLAUDE_CONFIG_FILE",
91
+ format: "json-stdio",
92
+ mcp: { user: home(".claude.json"), project: project(".mcp.json") },
93
+ restart: "Restart Claude Code or run /mcp in a new session.",
94
+ skills: skillDirs(home(".claude", "skills"), project(".claude", "skills")),
95
+ },
96
+ {
97
+ id: "claude-desktop",
98
+ label: "Claude Desktop",
99
+ aliases: ["claude-app", "claudedesktop"],
100
+ status: "active",
101
+ envOverride: "SUMMER_CLAUDE_DESKTOP_CONFIG_FILE",
102
+ format: "json",
103
+ mcp: {
104
+ user: (ctx) => join(appConfigRoot(ctx), "Claude", "claude_desktop_config.json"),
105
+ project: null,
106
+ },
107
+ restart: "Quit and reopen Claude Desktop; the summer-engine tools appear under the tools menu in a new chat.",
108
+ skills: null,
109
+ noSkillsNote: "Claude Desktop has no skills folder. The MCP server ships summer_get_agent_playbook, so the model can pull Summer guidance in-chat.",
110
+ },
111
+ {
112
+ id: "codex",
113
+ label: "Codex",
114
+ aliases: ["codex-cli", "openai-codex"],
115
+ status: "active",
116
+ envOverride: "SUMMER_CODEX_CONFIG_FILE",
117
+ format: "toml",
118
+ mcp: {
119
+ user: home(".codex", "config.toml"),
120
+ project: project(".codex", "config.toml"),
121
+ projectNote: "Codex only loads project .codex/config.toml from trusted projects.",
122
+ },
123
+ restart: "Restart Codex or run /mcp in a new session.",
124
+ skills: skillDirs(home(".agents", "skills"), project(".agents", "skills")),
125
+ },
126
+ {
127
+ id: "cursor",
128
+ label: "Cursor",
129
+ aliases: [],
130
+ status: "active",
131
+ envOverride: "SUMMER_CURSOR_MCP_CONFIG_FILE",
132
+ format: "json-stdio",
133
+ mcp: { user: home(".cursor", "mcp.json"), project: project(".cursor", "mcp.json") },
134
+ restart: "Restart Cursor and enable the summer-engine MCP server if prompted.",
135
+ skills: skillDirs(home(".cursor", "skills"), project(".cursor", "skills"), {
136
+ reloadHint: "Cursor loads skills in the next chat. Summer 3.0 and earlier wrote rule files to .cursor/rules; `--force` removes those.",
137
+ legacyRules: { user: home(".cursor", "rules"), project: project(".cursor", "rules"), suffix: ".mdc" },
138
+ }),
139
+ },
140
+ {
141
+ id: "windsurf",
142
+ label: "Devin Desktop (formerly Windsurf)",
143
+ aliases: ["devin", "devin-desktop", "devindesktop"],
144
+ status: "active",
145
+ envOverride: "SUMMER_WINDSURF_MCP_CONFIG_FILE",
146
+ format: "json",
147
+ mcp: {
148
+ user: home(".codeium", "windsurf", "mcp_config.json"),
149
+ project: null,
150
+ },
151
+ restart: "Restart Devin Desktop (formerly Windsurf) and refresh MCP servers from the agent settings. Devin's docs say mcp_config.json configures the Cascade agent; for the Devin agent add the server in the app's MCP settings with the same command.",
152
+ skills: skillDirs(home(".codeium", "windsurf", "skills"), project(".windsurf", "skills")),
153
+ },
154
+ {
155
+ id: "antigravity",
156
+ label: "Antigravity",
157
+ aliases: ["agy", "google-antigravity"],
158
+ status: "active",
159
+ envOverride: "SUMMER_ANTIGRAVITY_CONFIG_FILE",
160
+ format: "json",
161
+ mcp: {
162
+ user: home(".gemini", "config", "mcp_config.json"),
163
+ project: project(".agents", "mcp_config.json"),
164
+ },
165
+ restart: "In Antigravity open the agent panel's MCP servers view and refresh; summer-engine appears in the list (IDE and CLI share this file).",
166
+ skills: skillDirs(home(".gemini", "config", "skills"), project(".agents", "skills")),
167
+ },
168
+ {
169
+ id: "gemini",
170
+ label: "Gemini CLI",
171
+ aliases: ["gemini-cli"],
172
+ status: "legacy",
173
+ legacyNote: "Gemini CLI was retired for individual accounts on 2026-06-18 and replaced by Antigravity. Use `summer setup antigravity` unless you are on a Workspace/enterprise Gemini CLI.",
174
+ envOverride: "SUMMER_GEMINI_CONFIG_FILE",
175
+ format: "json-gemini",
176
+ mcp: {
177
+ user: home(".gemini", "extensions", "summer-engine", "gemini-extension.json"),
178
+ project: null,
179
+ },
180
+ restart: "Run `summer skills install --all --agent gemini` if skills were not installed, then restart Gemini CLI (or `gemini extensions enable summer-engine` if it is disabled).",
181
+ skills: skillDirs(home(".gemini", "extensions", "summer-engine", "skills"), null),
182
+ },
183
+ {
184
+ id: "cline",
185
+ label: "Cline (VS Code)",
186
+ aliases: ["cline-vscode"],
187
+ status: "active",
188
+ envOverride: "SUMMER_CLINE_CONFIG_FILE",
189
+ format: "json",
190
+ mcp: {
191
+ user: (ctx) => vsCodeGlobalStorage(ctx, "saoudrizwan.claude-dev", "cline_mcp_settings.json"),
192
+ project: null,
193
+ },
194
+ restart: "Restart VS Code so Cline reloads its MCP config.",
195
+ skills: skillDirs(home(".cline", "skills"), project(".cline", "skills")),
196
+ },
197
+ {
198
+ id: "cline-cli",
199
+ label: "Cline CLI",
200
+ aliases: ["clinecli"],
201
+ status: "active",
202
+ envOverride: "SUMMER_CLINE_CLI_CONFIG_FILE",
203
+ format: "json",
204
+ mcp: { user: home(".cline", "data", "settings", "cline_mcp_settings.json"), project: null },
205
+ restart: "Restart the Cline CLI so it reloads its MCP settings.",
206
+ skills: skillDirs(home(".cline", "skills"), project(".cline", "skills")),
207
+ },
208
+ {
209
+ id: "roo-code",
210
+ label: "Roo Code",
211
+ aliases: ["roo", "roocode"],
212
+ status: "legacy",
213
+ legacyNote: "Roo Code shut down on 2026-05-15. The extension may still run, but it is no longer maintained; consider Cline or Kilo Code.",
214
+ envOverride: "SUMMER_ROO_CODE_CONFIG_FILE",
215
+ format: "json",
216
+ mcp: {
217
+ user: (ctx) => vsCodeGlobalStorage(ctx, "rooveterinaryinc.roo-cline", "cline_mcp_settings.json"),
218
+ project: null,
219
+ },
220
+ restart: "Restart VS Code so Roo Code reloads its MCP config.",
221
+ skills: {
222
+ kind: "cline-rule-dir",
223
+ user: home("Documents", "Roo", "Rules"),
224
+ project: project(".clinerules"),
225
+ defaultScope: "project",
226
+ },
227
+ },
228
+ {
229
+ id: "kilo-code",
230
+ label: "Kilo Code",
231
+ aliases: ["kilo", "kilocode"],
232
+ status: "active",
233
+ envOverride: "SUMMER_KILO_CODE_CONFIG_FILE",
234
+ format: "json-opencode",
235
+ mcp: {
236
+ user: (ctx) => join(xdgOrAppData(ctx), "kilo", "kilo.json"),
237
+ project: project("kilo.json"),
238
+ },
239
+ restart: "Restart Kilo (CLI or the VS Code extension) so it reloads kilo.json.",
240
+ skills: skillDirs(home(".kilo", "skills"), project(".kilo", "skills")),
241
+ },
242
+ {
243
+ id: "github-copilot",
244
+ label: "GitHub Copilot CLI",
245
+ aliases: ["copilot", "copilot-cli", "github-copilot-cli"],
246
+ status: "active",
247
+ envOverride: "SUMMER_GITHUB_COPILOT_CONFIG_FILE",
248
+ format: "json-copilot",
249
+ mcp: { user: home(".copilot", "mcp-config.json"), project: project(".mcp.json") },
250
+ restart: "Restart Copilot CLI, or run /mcp reload and /skills reload in the active session.",
251
+ skills: skillDirs(home(".copilot", "skills"), project(".github", "skills")),
252
+ },
253
+ {
254
+ id: "vscode-copilot",
255
+ label: "GitHub Copilot in VS Code",
256
+ aliases: ["vscode", "vs-code", "vs-code-copilot", "github-copilot-vscode"],
257
+ status: "active",
258
+ envOverride: "SUMMER_VSCODE_COPILOT_CONFIG_FILE",
259
+ format: "json-vscode",
260
+ mcp: { user: (ctx) => join(vsCodeUserDir(ctx), "mcp.json"), project: project(".vscode", "mcp.json") },
261
+ restart: "Restart VS Code or run MCP: List Servers, then start summer-engine in Copilot Agent mode.",
262
+ skills: skillDirs(home(".copilot", "skills"), project(".github", "skills")),
263
+ },
264
+ {
265
+ id: "visual-studio",
266
+ label: "GitHub Copilot in Visual Studio",
267
+ aliases: ["vs", "vs2026", "visual-studio-2026", "visualstudio"],
268
+ status: "active",
269
+ envOverride: "SUMMER_VISUAL_STUDIO_CONFIG_FILE",
270
+ format: "json-vscode",
271
+ mcp: { user: home(".mcp.json"), project: project(".mcp.json") },
272
+ restart: "Restart Visual Studio, open Copilot Chat in Agent mode, and enable summer-engine in the tools picker.",
273
+ skills: null,
274
+ noSkillsNote: "Visual Studio's Copilot has no skills folder yet; the MCP server ships summer_get_agent_playbook for in-chat guidance.",
275
+ },
276
+ {
277
+ id: "copilot-jetbrains",
278
+ label: "GitHub Copilot in JetBrains IDEs",
279
+ aliases: ["jetbrains-copilot", "intellij-copilot", "copilot-intellij"],
280
+ status: "active",
281
+ envOverride: "SUMMER_COPILOT_JETBRAINS_CONFIG_FILE",
282
+ format: "json-servers",
283
+ mcp: {
284
+ user: (ctx) => join(xdgOrAppData(ctx), "github-copilot", "intellij", "mcp.json"),
285
+ project: null,
286
+ },
287
+ restart: "Restart the JetBrains IDE and open Copilot Chat in Agent mode; summer-engine shows in the tools list.",
288
+ skills: null,
289
+ noSkillsNote: "Copilot in JetBrains documents no skills folder; the MCP server ships summer_get_agent_playbook for in-chat guidance.",
290
+ },
291
+ {
292
+ id: "opencode",
293
+ label: "OpenCode",
294
+ aliases: ["open-code"],
295
+ status: "active",
296
+ envOverride: "SUMMER_OPENCODE_CONFIG_FILE",
297
+ format: "json-opencode",
298
+ mcp: {
299
+ user: (ctx) => join(xdgOrAppData(ctx), "opencode", "opencode.json"),
300
+ project: project("opencode.json"),
301
+ },
302
+ restart: "Restart OpenCode so it reloads opencode.json.",
303
+ skills: skillDirs((ctx) => join(xdgOrAppData(ctx), "opencode", "skills"), project(".opencode", "skills"), {
304
+ reloadHint: "OpenCode loads skills from this folder on the next session. Summer 3.0 and earlier wrote markdown under agents/summer; `--force` removes those.",
305
+ legacyRules: { user: (ctx) => join(xdgOrAppData(ctx), "opencode", "agents", "summer"), project: project(".opencode", "agents", "summer"), suffix: ".md" },
306
+ }),
307
+ },
308
+ {
309
+ id: "zed",
310
+ label: "Zed",
311
+ aliases: ["zed-editor"],
312
+ status: "active",
313
+ envOverride: "SUMMER_ZED_CONFIG_FILE",
314
+ format: "json-zed",
315
+ mcp: {
316
+ user: (ctx) => join(xdgOrAppData(ctx), "zed", "settings.json"),
317
+ project: null,
318
+ },
319
+ restart: "Zed reloads settings.json live; open the Agent panel and check summer-engine under MCP servers.",
320
+ skills: skillDirs(home(".agents", "skills"), project(".agents", "skills")),
321
+ },
322
+ {
323
+ id: "kiro",
324
+ label: "Kiro",
325
+ aliases: ["kiro-ide", "aws-kiro"],
326
+ status: "active",
327
+ envOverride: "SUMMER_KIRO_CONFIG_FILE",
328
+ format: "json",
329
+ mcp: { user: home(".kiro", "settings", "mcp.json"), project: project(".kiro", "settings", "mcp.json") },
330
+ restart: "Kiro reloads MCP config on save; open the MCP Servers view to confirm summer-engine is connected.",
331
+ skills: skillDirs(home(".kiro", "skills"), project(".kiro", "skills")),
332
+ },
333
+ {
334
+ id: "goose",
335
+ label: "Goose",
336
+ aliases: ["block-goose", "codename-goose"],
337
+ status: "active",
338
+ envOverride: "SUMMER_GOOSE_CONFIG_FILE",
339
+ format: "yaml-goose",
340
+ mcp: {
341
+ user: (ctx) => ctx.os === "win32"
342
+ ? join(appData(ctx), "Block", "goose", "config", "config.yaml")
343
+ : join(xdgConfig(ctx), "goose", "config.yaml"),
344
+ project: null,
345
+ },
346
+ restart: "Restart Goose (CLI or Desktop); summer-engine is listed under Extensions.",
347
+ skills: skillDirs((ctx) => join(xdgConfig(ctx), "agents", "skills"), project(".agents", "skills")),
348
+ },
349
+ {
350
+ id: "hermes",
351
+ label: "Hermes Agent",
352
+ aliases: ["hermes-agent", "nous-hermes"],
353
+ status: "active",
354
+ envOverride: "SUMMER_HERMES_CONFIG_FILE",
355
+ format: "yaml-hermes",
356
+ mcp: { user: home(".hermes", "config.yaml"), project: null },
357
+ restart: "Run /reload-mcp in Hermes Agent (or restart it).",
358
+ skills: skillDirs(home(".hermes", "skills"), project(".hermes", "skills"), {
359
+ reloadHint: "Project skills need `hermes skills trust` before Hermes loads them.",
360
+ }),
361
+ },
362
+ {
363
+ id: "trae",
364
+ label: "Trae",
365
+ aliases: ["trae-ide", "bytedance-trae"],
366
+ status: "active",
367
+ envOverride: "SUMMER_TRAE_CONFIG_FILE",
368
+ format: "json",
369
+ mcp: {
370
+ user: null,
371
+ project: project(".trae", "mcp.json"),
372
+ projectNote: "Trae manages user-level MCP servers in its UI; writing the project file .trae/mcp.json instead.",
373
+ },
374
+ restart: "Restart Trae and open the MCP settings; summer-engine should show as connected.",
375
+ skills: null,
376
+ noSkillsNote: "Trae documents no skills folder; the MCP server ships summer_get_agent_playbook for in-chat guidance.",
377
+ },
378
+ {
379
+ id: "qwen-code",
380
+ label: "Qwen Code",
381
+ aliases: ["qwen", "qwencode"],
382
+ status: "active",
383
+ envOverride: "SUMMER_QWEN_CODE_CONFIG_FILE",
384
+ format: "json",
385
+ mcp: { user: home(".qwen", "settings.json"), project: project(".qwen", "settings.json") },
386
+ restart: "Restart Qwen Code or run /mcp in a new session.",
387
+ skills: skillDirs(home(".qwen", "skills"), project(".qwen", "skills")),
388
+ },
389
+ {
390
+ id: "kimi-code",
391
+ label: "Kimi Code CLI",
392
+ aliases: ["kimi", "kimi-cli", "kimicode"],
393
+ status: "active",
394
+ envOverride: "SUMMER_KIMI_CODE_CONFIG_FILE",
395
+ format: "json",
396
+ mcp: { user: home(".kimi-code", "mcp.json"), project: project(".kimi-code", "mcp.json") },
397
+ restart: "Restart Kimi Code CLI so it reconnects its MCP servers.",
398
+ skills: skillDirs(home(".kimi-code", "skills"), project(".kimi-code", "skills")),
399
+ },
400
+ {
401
+ id: "crush",
402
+ label: "Crush",
403
+ aliases: ["charm-crush"],
404
+ status: "active",
405
+ envOverride: "SUMMER_CRUSH_CONFIG_FILE",
406
+ format: "json-crush",
407
+ mcp: {
408
+ user: home(".config", "crush", "crushrc"),
409
+ project: project(".crushrc"),
410
+ },
411
+ restart: "Restart Crush so it reloads crushrc.",
412
+ skills: skillDirs(home(".config", "crush", "skills"), project(".crush", "skills")),
413
+ },
414
+ {
415
+ id: "amp",
416
+ label: "Amp",
417
+ aliases: ["sourcegraph-amp", "ampcode"],
418
+ status: "active",
419
+ envOverride: "SUMMER_AMP_CONFIG_FILE",
420
+ format: "json-amp",
421
+ mcp: { user: (ctx) => join(xdgOrAppData(ctx), "amp", "settings.json"), project: null },
422
+ restart: "Restart Amp so it reloads settings.json.",
423
+ skills: skillDirs((ctx) => join(xdgOrAppData(ctx), "amp", "skills"), project(".agents", "skills")),
424
+ },
425
+ {
426
+ id: "factory",
427
+ label: "Factory Droid",
428
+ aliases: ["droid", "factory-droid"],
429
+ status: "active",
430
+ envOverride: "SUMMER_FACTORY_CONFIG_FILE",
431
+ format: "json-stdio",
432
+ mcp: { user: home(".factory", "mcp.json"), project: project(".factory", "mcp.json") },
433
+ restart: "Restart droid or run /mcp in the active session.",
434
+ skills: skillDirs(home(".factory", "skills"), project(".factory", "skills")),
435
+ },
436
+ {
437
+ id: "junie",
438
+ label: "Junie",
439
+ aliases: ["jetbrains-junie"],
440
+ status: "active",
441
+ envOverride: "SUMMER_JUNIE_CONFIG_FILE",
442
+ format: "json",
443
+ mcp: { user: home(".junie", "mcp", "mcp.json"), project: project(".junie", "mcp", "mcp.json") },
444
+ restart: "Restart the JetBrains IDE so Junie reloads its MCP config.",
445
+ skills: null,
446
+ noSkillsNote: "Junie has no skills folder; put project guidance in .junie/guidelines.md. The MCP server ships summer_get_agent_playbook for in-chat guidance.",
447
+ },
448
+ {
449
+ id: "warp",
450
+ label: "Warp",
451
+ aliases: ["warp-terminal"],
452
+ status: "active",
453
+ envOverride: "SUMMER_WARP_CONFIG_FILE",
454
+ format: "json",
455
+ mcp: { user: home(".warp", ".mcp.json"), project: project(".warp", ".mcp.json") },
456
+ restart: "Warp detects the file and spawns the server; check Settings > AI > MCP servers.",
457
+ skills: skillDirs(home(".warp", "skills"), project(".warp", "skills")),
458
+ },
459
+ {
460
+ id: "rovo-dev",
461
+ label: "Rovo Dev CLI",
462
+ aliases: ["rovodev", "rovo", "atlassian-rovo-dev"],
463
+ status: "active",
464
+ envOverride: "SUMMER_ROVO_DEV_CONFIG_FILE",
465
+ format: "json-transport",
466
+ mcp: { user: home(".rovodev", "mcp.json"), project: null },
467
+ restart: "Restart Rovo Dev CLI so it reconnects its MCP servers.",
468
+ skills: skillDirs(home(".rovodev", "skills"), project(".rovodev", "skills")),
469
+ },
470
+ {
471
+ id: "qoder",
472
+ label: "Qoder CLI",
473
+ aliases: ["qoder-cli"],
474
+ status: "active",
475
+ envOverride: "SUMMER_QODER_CONFIG_FILE",
476
+ format: "json",
477
+ mcp: { user: home(".qoder", "settings.json"), project: project(".mcp.json") },
478
+ restart: "Restart Qoder CLI so it reloads its MCP settings (the Qoder IDE manages servers in its UI).",
479
+ skills: skillDirs(home(".qoder", "skills"), project(".qoder", "skills")),
480
+ },
481
+ {
482
+ id: "grok-build",
483
+ label: "Grok Build",
484
+ aliases: ["grok", "xai-grok"],
485
+ status: "active",
486
+ envOverride: "SUMMER_GROK_BUILD_CONFIG_FILE",
487
+ format: "toml",
488
+ mcp: { user: home(".grok", "config.toml"), project: project(".grok", "config.toml") },
489
+ restart: "Restart Grok Build so it reloads config.toml (it also reads ~/.claude.json and .cursor/mcp.json).",
490
+ skills: skillDirs(home(".grok", "skills"), project(".grok", "skills")),
491
+ },
492
+ {
493
+ id: "mistral-vibe",
494
+ label: "Mistral Vibe",
495
+ aliases: ["vibe", "mistral"],
496
+ status: "active",
497
+ envOverride: "SUMMER_MISTRAL_VIBE_CONFIG_FILE",
498
+ format: "toml-array",
499
+ mcp: { user: home(".vibe", "config.toml"), project: project(".vibe", "config.toml") },
500
+ restart: "Restart Vibe so it reloads config.toml.",
501
+ skills: skillDirs(home(".vibe", "skills"), project(".vibe", "skills")),
502
+ },
503
+ {
504
+ id: "lm-studio",
505
+ label: "LM Studio",
506
+ aliases: ["lmstudio", "lm_studio"],
507
+ status: "active",
508
+ envOverride: "SUMMER_LM_STUDIO_CONFIG_FILE",
509
+ format: "json",
510
+ mcp: { user: home(".lmstudio", "mcp.json"), project: null },
511
+ restart: "Open LM Studio, toggle on the summer-engine MCP server in the Program tab, and raise the loaded model's context length to 32k or higher.",
512
+ skills: null,
513
+ noSkillsNote: "LM Studio has no rules or skills folder. The MCP server ships summer_get_agent_playbook, so the model can pull Summer guidance in-chat.",
514
+ },
515
+ ];
516
+ const BY_ID = new Map(SPECS.map((spec) => [spec.id, spec]));
517
+ export function agentSpec(id) {
518
+ const spec = BY_ID.get(id);
519
+ if (!spec)
520
+ throw new Error(`Unknown agent: ${id}`);
521
+ return spec;
522
+ }
523
+ export function allAgentSpecs() {
524
+ return SPECS;
525
+ }
526
+ /** Ids shown in help and error messages (legacy ids still parse). */
527
+ export const supportedAgents = SPECS.filter((s) => s.status === "active").map((s) => s.id);
528
+ /** Ids with a skills/rules home; `AGENT_CLIENTS` in core mirrors this plus "summer". */
529
+ export const skillCapableAgents = SPECS.filter((s) => s.skills !== null).map((s) => s.id);
530
+ /** Every spelling → canonical id. Aliases must be unique across the table. */
531
+ export function agentAliasMap() {
532
+ const map = {};
533
+ for (const spec of SPECS) {
534
+ for (const key of [spec.id, ...spec.aliases]) {
535
+ if (map[key] && map[key] !== spec.id) {
536
+ throw new Error(`Agent alias "${key}" is claimed by both ${map[key]} and ${spec.id}`);
537
+ }
538
+ map[key] = spec.id;
539
+ }
540
+ }
541
+ return map;
542
+ }
543
+ export function agentLabel(id) {
544
+ return agentSpec(id).label;
545
+ }
546
+ export function defaultPathContext(env = process.env, cwd = process.cwd()) {
547
+ return { home: homedir(), os: platform(), env, cwd };
548
+ }
549
+ /** Where the MCP config goes for an agent and requested scope, with the warnings to show. */
550
+ export function resolveMcpPath(spec, scope, ctx) {
551
+ const warnings = [];
552
+ if (spec.status === "legacy" && spec.legacyNote)
553
+ warnings.push(spec.legacyNote);
554
+ if (scope === "project" || spec.mcp.user === null) {
555
+ if (spec.mcp.project) {
556
+ if (spec.mcp.projectNote && (scope === "project" || spec.mcp.user === null))
557
+ warnings.push(spec.mcp.projectNote);
558
+ return { path: spec.mcp.project(ctx), scope: "project", warnings };
559
+ }
560
+ warnings.push(spec.mcp.projectNote ??
561
+ `${spec.label} reads MCP config from one user-level file only; writing user scope instead.`);
562
+ }
563
+ if (spec.mcp.user === null)
564
+ throw new Error(`${spec.label} has neither a user nor a project MCP config path.`);
565
+ return { path: spec.mcp.user(ctx), scope: "user", warnings };
566
+ }
567
+ /** Rule files a pre-3.1 Summer wrote for this agent at this scope; `null` when the agent never had any. */
568
+ export function legacyRuleFiles(spec, scope, ctx, skillNames) {
569
+ const legacy = spec.skills?.legacyRules;
570
+ if (!legacy)
571
+ return null;
572
+ const dir = scope === "project" && legacy.project ? legacy.project(ctx) : legacy.user(ctx);
573
+ const prefix = spec.id === "opencode" ? "" : "summer-";
574
+ return [...skillNames].map((name) => join(dir, `${prefix}${name}${legacy.suffix}`));
575
+ }
576
+ /** Where skills go for an agent with a skills home. */
577
+ export function resolveSkillPath(spec, scope, ctx) {
578
+ if (!spec.skills)
579
+ return null;
580
+ if (scope === "project" && spec.skills.project) {
581
+ return { kind: spec.skills.kind, path: spec.skills.project(ctx), scope };
582
+ }
583
+ return { kind: spec.skills.kind, path: spec.skills.user(ctx), scope: "user" };
584
+ }
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Skill directory names the 2.8.x package installed into hosts' skill folders
3
+ * (`~/.claude/skills/<name>` and the equivalents). v3 flattened and renamed
4
+ * the library, so a `summer setup --force` on an upgraded machine must remove
5
+ * the entries Summer itself installed that no longer exist — otherwise a
6
+ * retired skill such as `summer-cloud` stays behind and keeps telling agents
7
+ * to call tools that were removed (release review P1-2, 2026-09-11).
8
+ *
9
+ * The list is exactly the SKILL.md basenames shipped in summer-engine@2.8.2.
10
+ * Pruning removes a name ONLY when it is absent from the current registry, so
11
+ * a slug that returns to the library is never touched, and never removes a
12
+ * directory that has no SKILL.md (not a skill Summer wrote).
13
+ */
14
+ export declare const LEGACY_SKILL_SLUGS_2_8_2: readonly string[];
15
+ export interface PrunedSkill {
16
+ name: string;
17
+ path: string;
18
+ }
19
+ /** Names Summer installed in 2.8.x that the current registry no longer ships. */
20
+ export declare function retiredSkillNames(currentSkillNames: Iterable<string>): string[];
21
+ /**
22
+ * Remove retired Summer skill directories from one host skill folder. Only
23
+ * directories that still contain a SKILL.md are removed (that is what Summer
24
+ * wrote); anything else with a colliding name is left alone.
25
+ */
26
+ export declare function pruneRetiredSkills(skillsDir: string, currentSkillNames: Iterable<string>): PrunedSkill[];
@@ -0,0 +1,53 @@
1
+ import { existsSync, rmSync } from "node:fs";
2
+ import { join } from "node:path";
3
+ /**
4
+ * Skill directory names the 2.8.x package installed into hosts' skill folders
5
+ * (`~/.claude/skills/<name>` and the equivalents). v3 flattened and renamed
6
+ * the library, so a `summer setup --force` on an upgraded machine must remove
7
+ * the entries Summer itself installed that no longer exist — otherwise a
8
+ * retired skill such as `summer-cloud` stays behind and keeps telling agents
9
+ * to call tools that were removed (release review P1-2, 2026-09-11).
10
+ *
11
+ * The list is exactly the SKILL.md basenames shipped in summer-engine@2.8.2.
12
+ * Pruning removes a name ONLY when it is absent from the current registry, so
13
+ * a slug that returns to the library is never touched, and never removes a
14
+ * directory that has no SKILL.md (not a skill Summer wrote).
15
+ */
16
+ export const LEGACY_SKILL_SLUGS_2_8_2 = [
17
+ "character-portrait", "concept-art", "create-asset-sheet", "instantiate-asset-pack", "pixel-art",
18
+ "skybox-panorama", "sprite-sheet", "tileable-texture", "ui-graphics", "use-widget-asset",
19
+ "character-model", "environment-kit", "organic-model", "prop-model", "vehicle-model",
20
+ "design-npc", "animation-tree", "facial-and-lipsync", "generate-motion", "procedural-animation",
21
+ "retarget", "asset-strategy", "adaptive-music", "ambient-bed", "audio-direction", "music-track",
22
+ "sound-effect", "voice-line", "fps-controller", "debug", "export-and-ship", "remote-deploy",
23
+ "auto-fire-targeting", "design-mechanic", "design-level", "scene-to-level",
24
+ "host-authoritative-state", "peer-to-peer-multiplayer", "setup-multiplayer", "tune-performance",
25
+ "3d-lighting", "art-direction", "brainstorm-game", "browse-templates", "make-game", "new-project",
26
+ "play", "scene-composition", "summer-cloud", "gdscript-patterns", "ui-basics", "animated-loop",
27
+ "cinematic-cutscene", "trailer-shot", "game-feel", "dissolve", "fire", "hit-spark", "lightning",
28
+ "magic-glow", "muzzle-flash", "smoke", "water-ripple", "brainstorming", "debugging-game-feel",
29
+ "diagnosing-perf-regressions", "dispatching-parallel-agents", "gameskill", "headless-scripting",
30
+ "investigating-bugs", "mcpupdate", "playtesting-a-feature", "skill-create", "skill-improve",
31
+ "skill-test", "using-summer", "verification-before-completion", "writing-plans", "writing-skills",
32
+ ];
33
+ /** Names Summer installed in 2.8.x that the current registry no longer ships. */
34
+ export function retiredSkillNames(currentSkillNames) {
35
+ const current = new Set(currentSkillNames);
36
+ return LEGACY_SKILL_SLUGS_2_8_2.filter((name) => !current.has(name));
37
+ }
38
+ /**
39
+ * Remove retired Summer skill directories from one host skill folder. Only
40
+ * directories that still contain a SKILL.md are removed (that is what Summer
41
+ * wrote); anything else with a colliding name is left alone.
42
+ */
43
+ export function pruneRetiredSkills(skillsDir, currentSkillNames) {
44
+ const pruned = [];
45
+ for (const name of retiredSkillNames(currentSkillNames)) {
46
+ const dir = join(skillsDir, name);
47
+ if (!existsSync(join(dir, "SKILL.md")))
48
+ continue;
49
+ rmSync(dir, { recursive: true, force: true });
50
+ pruned.push({ name, path: dir });
51
+ }
52
+ return pruned;
53
+ }