summer-engine 2.8.2 → 3.0.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 (742) 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 +131 -44
  11. package/CLAUDE.md +4 -2
  12. package/GEMINI.md +7 -53
  13. package/NOTICE +31 -0
  14. package/README.md +159 -391
  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/{commands → cli/commands}/setup.js +43 -89
  49. package/dist/{commands → cli/commands}/skills.js +85 -222
  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 +47 -0
  167. package/dist/core/skills-registry.js +83 -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/{lib → installer}/agent-config.d.ts +20 -1
  188. package/dist/{lib → installer}/agent-config.js +138 -24
  189. package/dist/installer/legacy-skills.d.ts +26 -0
  190. package/dist/installer/legacy-skills.js +53 -0
  191. package/dist/installer/setup.d.ts +76 -0
  192. package/dist/installer/setup.js +146 -0
  193. package/dist/installer/skill-locations.d.ts +45 -0
  194. package/dist/installer/skill-locations.js +170 -0
  195. package/dist/installer/version-check.d.ts +174 -0
  196. package/dist/{lib → installer}/version-check.js +173 -42
  197. package/dist/{lib/mcp-boot-notice.d.ts → mcp/boot-notice.d.ts} +1 -1
  198. package/dist/{commands/mcp.js → mcp/command.js} +18 -6
  199. package/dist/mcp/server.d.ts +23 -3
  200. package/dist/mcp/server.js +122 -28
  201. package/dist/mcp/tools/asset-tools.js +62 -142
  202. package/dist/mcp/tools/creator-tools.js +5 -23
  203. package/dist/mcp/tools/debug-tools.js +61 -18
  204. package/dist/mcp/tools/event-tools.d.ts +14 -0
  205. package/dist/mcp/tools/event-tools.js +41 -0
  206. package/dist/mcp/tools/fabricate-tools.d.ts +2 -0
  207. package/dist/mcp/tools/fabricate-tools.js +28 -0
  208. package/dist/mcp/tools/feedback-tools.d.ts +77 -0
  209. package/dist/mcp/tools/feedback-tools.js +88 -0
  210. package/dist/mcp/tools/file-tools.js +6 -53
  211. package/dist/mcp/tools/generate-tools.js +37 -63
  212. package/dist/mcp/tools/library-tools.d.ts +11 -0
  213. package/dist/mcp/tools/library-tools.js +42 -0
  214. package/dist/mcp/tools/navigation-tools.d.ts +7 -0
  215. package/dist/mcp/tools/navigation-tools.js +37 -0
  216. package/dist/mcp/tools/perception-tools.d.ts +20 -0
  217. package/dist/mcp/tools/perception-tools.js +146 -0
  218. package/dist/mcp/tools/project-tools.d.ts +14 -0
  219. package/dist/mcp/tools/project-tools.js +72 -281
  220. package/dist/mcp/tools/runtime-tools.d.ts +2 -0
  221. package/dist/mcp/tools/runtime-tools.js +92 -0
  222. package/dist/mcp/tools/scene-tools.d.ts +3 -0
  223. package/dist/mcp/tools/scene-tools.js +68 -119
  224. package/dist/mcp/tools/script-tools.d.ts +3 -0
  225. package/dist/mcp/tools/script-tools.js +118 -0
  226. package/dist/mcp/tools/spatial-tools.d.ts +2 -0
  227. package/dist/mcp/tools/spatial-tools.js +485 -0
  228. package/dist/mcp/tools/text-json.d.ts +8 -0
  229. package/dist/mcp/tools/text-json.js +12 -0
  230. package/dist/mcp/tools/{cloud-tools.d.ts → ui-tools.d.ts} +1 -1
  231. package/dist/mcp/tools/ui-tools.js +82 -0
  232. package/dist/mcp/tools/visual-tools.d.ts +2 -7
  233. package/dist/mcp/tools/visual-tools.js +383 -101
  234. package/dist/mcp/tools/with-engine.d.ts +9 -15
  235. package/dist/mcp/tools/with-engine.js +60 -96
  236. package/dist/project-memory/project-manifest.d.ts +36 -0
  237. package/dist/project-memory/project-manifest.js +50 -0
  238. package/dist/project-memory/project-memory.d.ts +57 -0
  239. package/dist/{lib → project-memory}/project-memory.js +46 -0
  240. package/gemini-extension.json +103 -2
  241. package/hooks/hooks-cursor.json +2 -2
  242. package/hooks/hooks.json +2 -1
  243. package/hooks/pre-commit-doctor.sh +45 -39
  244. package/hooks/run-hook.cmd +30 -23
  245. package/hooks/run-hook.sh +20 -0
  246. package/hooks/session-start.sh +18 -7
  247. package/integrations/README.md +70 -0
  248. package/integrations/claude/README.md +19 -0
  249. package/integrations/claude/manifest-target.json +16 -0
  250. package/integrations/cline/README.md +13 -0
  251. package/integrations/cline/manifest-target.json +3 -0
  252. package/integrations/codex/README.md +15 -0
  253. package/integrations/codex/manifest-target.json +5 -0
  254. package/integrations/cursor/README.md +16 -0
  255. package/integrations/cursor/manifest-target.json +5 -0
  256. package/integrations/factory/README.md +26 -0
  257. package/integrations/factory/manifest-target.json +5 -0
  258. package/integrations/gemini/README.md +26 -0
  259. package/integrations/gemini/manifest-target.json +5 -0
  260. package/integrations/github-copilot/README.md +12 -0
  261. package/integrations/github-copilot/manifest-target.json +3 -0
  262. package/integrations/kilo-code/README.md +16 -0
  263. package/integrations/kilo-code/manifest-target.json +3 -0
  264. package/integrations/lm-studio/README.md +12 -0
  265. package/integrations/lm-studio/manifest-target.json +3 -0
  266. package/integrations/opencode/README.md +15 -0
  267. package/integrations/opencode/manifest-target.json +3 -0
  268. package/integrations/roo-code/README.md +13 -0
  269. package/integrations/roo-code/manifest-target.json +3 -0
  270. package/integrations/vscode-copilot/README.md +12 -0
  271. package/integrations/vscode-copilot/manifest-target.json +3 -0
  272. package/integrations/windsurf/README.md +13 -0
  273. package/integrations/windsurf/manifest-target.json +3 -0
  274. package/library/references/collaborative-protocol/resource.yaml +24 -0
  275. package/library/references/gd-style/resource.yaml +24 -0
  276. package/{references → library/references/godot-version}/godot-version.md +6 -6
  277. package/library/references/godot-version/resource.yaml +22 -0
  278. package/library/references/headless-routing/headless-routing.md +46 -0
  279. package/library/references/headless-routing/resource.yaml +24 -0
  280. package/library/references/mcp-fresh-chat-playbook/mcp-fresh-chat-playbook.md +49 -0
  281. package/library/references/mcp-fresh-chat-playbook/resource.yaml +23 -0
  282. package/library/references/mcp-tools-reference/mcp-tools-reference.md +271 -0
  283. package/library/references/mcp-tools-reference/resource.yaml +17 -0
  284. package/library/references/product-map/product-map.md +103 -0
  285. package/library/references/product-map/resource.yaml +33 -0
  286. package/{references → library/references/public-surface-language}/public-surface-language.md +5 -7
  287. package/library/references/public-surface-language/resource.yaml +17 -0
  288. package/library/references/summer-folder/resource.yaml +20 -0
  289. package/{references → library/references/summer-folder}/summer-folder.md +22 -21
  290. package/{skills/rendering-and-lighting → library/skills}/3d-lighting/SKILL.md +15 -11
  291. package/library/skills/3d-lighting/resource.yaml +27 -0
  292. package/{skills/audio → library/skills}/adaptive-music/SKILL.md +1 -1
  293. package/library/skills/adaptive-music/resource.yaml +28 -0
  294. package/library/skills/agent-playtesting/SKILL.md +148 -0
  295. package/library/skills/agent-playtesting/resource.yaml +52 -0
  296. package/library/skills/ambient-bed/resource.yaml +24 -0
  297. package/{skills/video → library/skills}/animated-loop/SKILL.md +1 -1
  298. package/library/skills/animated-loop/resource.yaml +27 -0
  299. package/{skills/animation → library/skills}/animation-tree/SKILL.md +29 -14
  300. package/library/skills/animation-tree/resource.yaml +33 -0
  301. package/{skills/rendering-and-lighting → library/skills}/art-direction/SKILL.md +3 -3
  302. package/library/skills/art-direction/resource.yaml +29 -0
  303. package/{skills/asset-pipeline → library/skills}/asset-strategy/SKILL.md +44 -44
  304. package/library/skills/asset-strategy/resource.yaml +63 -0
  305. package/{skills/audio → library/skills}/audio-direction/SKILL.md +7 -7
  306. package/library/skills/audio-direction/resource.yaml +32 -0
  307. package/library/skills/auto-fire-targeting/resource.yaml +22 -0
  308. package/{skills/scene-and-project → library/skills}/brainstorm-game/SKILL.md +8 -8
  309. package/library/skills/brainstorm-game/resource.yaml +30 -0
  310. package/{skills/workflow → library/skills}/brainstorming/SKILL.md +2 -22
  311. package/library/skills/brainstorming/resource.yaml +23 -0
  312. package/{skills/workflow → library/skills}/brainstorming/spec-document-reviewer-prompt.md +1 -1
  313. package/{skills/scene-and-project → library/skills}/browse-templates/SKILL.md +18 -18
  314. package/library/skills/browse-templates/resource.yaml +23 -0
  315. package/library/skills/celeste-momentum-platforming/SKILL.md +366 -0
  316. package/library/skills/celeste-momentum-platforming/resource.yaml +33 -0
  317. package/library/skills/character-animation-wiring/SKILL.md +249 -0
  318. package/library/skills/character-animation-wiring/resource.yaml +39 -0
  319. package/{skills/3d-assets → library/skills}/character-model/SKILL.md +25 -25
  320. package/library/skills/character-model/resource.yaml +36 -0
  321. package/{skills/2d-assets → library/skills}/character-portrait/SKILL.md +14 -14
  322. package/library/skills/character-portrait/resource.yaml +30 -0
  323. package/{skills/video → library/skills}/cinematic-cutscene/SKILL.md +2 -2
  324. package/library/skills/cinematic-cutscene/resource.yaml +29 -0
  325. package/{skills/2d-assets → library/skills}/concept-art/SKILL.md +15 -15
  326. package/library/skills/concept-art/resource.yaml +34 -0
  327. package/{skills/2d-assets → library/skills}/create-asset-sheet/SKILL.md +8 -8
  328. package/library/skills/create-asset-sheet/resource.yaml +33 -0
  329. package/{skills/debugging → library/skills}/debug/SKILL.md +3 -3
  330. package/library/skills/debug/resource.yaml +31 -0
  331. package/{skills/workflow → library/skills}/debugging-game-feel/SKILL.md +11 -11
  332. package/library/skills/debugging-game-feel/resource.yaml +25 -0
  333. package/{skills/level-design → library/skills}/design-level/SKILL.md +6 -6
  334. package/library/skills/design-level/resource.yaml +31 -0
  335. package/{skills/gameplay-mechanics → library/skills}/design-mechanic/SKILL.md +3 -3
  336. package/library/skills/design-mechanic/resource.yaml +31 -0
  337. package/{skills/ai-and-npcs → library/skills}/design-npc/SKILL.md +7 -3
  338. package/library/skills/design-npc/resource.yaml +29 -0
  339. package/{skills/workflow → library/skills}/diagnosing-perf-regressions/SKILL.md +10 -10
  340. package/library/skills/diagnosing-perf-regressions/resource.yaml +25 -0
  341. package/{skills/workflow → library/skills}/dispatching-parallel-agents/SKILL.md +8 -8
  342. package/library/skills/dispatching-parallel-agents/resource.yaml +23 -0
  343. package/library/skills/driving-the-editor-ui/SKILL.md +85 -0
  344. package/library/skills/driving-the-editor-ui/resource.yaml +46 -0
  345. package/{skills/3d-assets → library/skills}/environment-kit/SKILL.md +11 -11
  346. package/library/skills/environment-kit/resource.yaml +29 -0
  347. package/{skills/deployment → library/skills}/export-and-ship/SKILL.md +5 -5
  348. package/library/skills/export-and-ship/resource.yaml +32 -0
  349. package/library/skills/fabricating-assets/SKILL.md +195 -0
  350. package/library/skills/fabricating-assets/resource.yaml +52 -0
  351. package/{skills/animation → library/skills}/facial-and-lipsync/SKILL.md +23 -11
  352. package/library/skills/facial-and-lipsync/resource.yaml +36 -0
  353. package/{skills/character-controllers → library/skills}/fps-controller/SKILL.md +8 -4
  354. package/library/skills/fps-controller/resource.yaml +29 -0
  355. package/{skills/visual-effects → library/skills}/game-feel/SKILL.md +7 -7
  356. package/library/skills/game-feel/resource.yaml +27 -0
  357. package/library/skills/gameskill/SKILL.md +64 -0
  358. package/library/skills/gameskill/resource.yaml +22 -0
  359. package/library/skills/gdscript-patterns/resource.yaml +23 -0
  360. package/{skills/animation → library/skills}/generate-motion/SKILL.md +16 -16
  361. package/library/skills/generate-motion/resource.yaml +34 -0
  362. package/library/skills/godogen-visual-proof-game-generation/SKILL.md +223 -0
  363. package/library/skills/godogen-visual-proof-game-generation/resource.yaml +33 -0
  364. package/{skills/workflow → library/skills}/headless-scripting/SKILL.md +14 -7
  365. package/library/skills/headless-scripting/resource.yaml +26 -0
  366. package/library/skills/host-authoritative-state/resource.yaml +28 -0
  367. package/{skills/2d-assets → library/skills}/instantiate-asset-pack/SKILL.md +10 -12
  368. package/library/skills/instantiate-asset-pack/resource.yaml +29 -0
  369. package/{skills/workflow → library/skills}/investigating-bugs/SKILL.md +4 -4
  370. package/{skills/workflow → library/skills}/investigating-bugs/condition-based-waiting.md +8 -8
  371. package/library/skills/investigating-bugs/resource.yaml +24 -0
  372. package/{skills/workflow → library/skills}/investigating-bugs/root-cause-tracing.md +1 -7
  373. package/library/skills/lumera-single-image-scene-reconstruction/SKILL.md +164 -0
  374. package/library/skills/lumera-single-image-scene-reconstruction/resource.yaml +35 -0
  375. package/{skills/scene-and-project → library/skills}/make-game/SKILL.md +22 -22
  376. package/library/skills/make-game/resource.yaml +35 -0
  377. package/library/skills/music-track/resource.yaml +28 -0
  378. package/library/skills/navigate-summer/SKILL.md +61 -0
  379. package/library/skills/navigate-summer/resource.yaml +35 -0
  380. package/{skills/scene-and-project → library/skills}/new-project/SKILL.md +10 -10
  381. package/library/skills/new-project/resource.yaml +28 -0
  382. package/{skills/3d-assets → library/skills}/organic-model/SKILL.md +16 -16
  383. package/library/skills/organic-model/resource.yaml +32 -0
  384. package/{skills/multiplayer-and-networking → library/skills}/peer-to-peer-multiplayer/SKILL.md +2 -2
  385. package/library/skills/peer-to-peer-multiplayer/resource.yaml +28 -0
  386. package/{skills/2d-assets → library/skills}/pixel-art/SKILL.md +13 -13
  387. package/library/skills/pixel-art/resource.yaml +31 -0
  388. package/library/skills/play/resource.yaml +26 -0
  389. package/{skills/workflow → library/skills}/playtesting-a-feature/SKILL.md +41 -22
  390. package/library/skills/playtesting-a-feature/resource.yaml +31 -0
  391. package/{skills/animation → library/skills}/procedural-animation/SKILL.md +25 -10
  392. package/library/skills/procedural-animation/resource.yaml +33 -0
  393. package/{skills/3d-assets → library/skills}/prop-model/SKILL.md +13 -13
  394. package/library/skills/prop-model/resource.yaml +33 -0
  395. package/library/skills/psx-retro-rendering/SKILL.md +416 -0
  396. package/library/skills/psx-retro-rendering/resource.yaml +36 -0
  397. package/library/skills/realtime-wet-surfaces/SKILL.md +189 -0
  398. package/library/skills/realtime-wet-surfaces/resource.yaml +31 -0
  399. package/{skills/deployment → library/skills}/remote-deploy/SKILL.md +3 -3
  400. package/library/skills/remote-deploy/resource.yaml +23 -0
  401. package/{skills/animation → library/skills}/retarget/SKILL.md +15 -14
  402. package/library/skills/retarget/resource.yaml +33 -0
  403. package/library/skills/running-in-the-cloud/SKILL.md +103 -0
  404. package/library/skills/running-in-the-cloud/resource.yaml +33 -0
  405. package/{skills/scene-and-project → library/skills}/scene-composition/SKILL.md +8 -0
  406. package/library/skills/scene-composition/resource.yaml +27 -0
  407. package/library/skills/scene-hierarchy-design/SKILL.md +102 -0
  408. package/library/skills/scene-hierarchy-design/resource.yaml +31 -0
  409. package/library/skills/scene-scripting/SKILL.md +764 -0
  410. package/library/skills/scene-scripting/resource.yaml +58 -0
  411. package/{skills/level-design → library/skills}/scene-to-level/SKILL.md +16 -17
  412. package/library/skills/scene-to-level/resource.yaml +33 -0
  413. package/library/skills/setup-multiplayer/resource.yaml +28 -0
  414. package/library/skills/skill-create/SKILL.md +138 -0
  415. package/library/skills/skill-create/resource.yaml +25 -0
  416. package/{skills/workflow → library/skills}/skill-improve/SKILL.md +2 -2
  417. package/library/skills/skill-improve/resource.yaml +25 -0
  418. package/{skills/workflow → library/skills}/skill-test/SKILL.md +4 -4
  419. package/library/skills/skill-test/resource.yaml +26 -0
  420. package/library/skills/skintokens-auto-rigging/SKILL.md +200 -0
  421. package/library/skills/skintokens-auto-rigging/resource.yaml +38 -0
  422. package/{skills/2d-assets → library/skills}/skybox-panorama/SKILL.md +8 -8
  423. package/library/skills/skybox-panorama/resource.yaml +28 -0
  424. package/{skills/audio → library/skills}/sound-effect/SKILL.md +2 -2
  425. package/library/skills/sound-effect/resource.yaml +27 -0
  426. package/library/skills/spatial-placement/SKILL.md +74 -0
  427. package/library/skills/spatial-placement/resource.yaml +42 -0
  428. package/library/skills/spatial-placement/tests/spec.md +65 -0
  429. package/{skills/2d-assets → library/skills}/sprite-sheet/SKILL.md +12 -12
  430. package/library/skills/sprite-sheet/resource.yaml +32 -0
  431. package/{skills/2d-assets → library/skills}/tileable-texture/SKILL.md +9 -9
  432. package/library/skills/tileable-texture/resource.yaml +31 -0
  433. package/{skills/video → library/skills}/trailer-shot/SKILL.md +1 -1
  434. package/library/skills/trailer-shot/resource.yaml +27 -0
  435. package/{skills/performance → library/skills}/tune-performance/SKILL.md +6 -6
  436. package/library/skills/tune-performance/resource.yaml +31 -0
  437. package/library/skills/ui-basics/resource.yaml +25 -0
  438. package/{skills/2d-assets → library/skills}/ui-graphics/SKILL.md +11 -11
  439. package/library/skills/ui-graphics/resource.yaml +29 -0
  440. package/{skills/2d-assets → library/skills}/use-widget-asset/SKILL.md +4 -4
  441. package/library/skills/use-widget-asset/resource.yaml +29 -0
  442. package/{skills/workflow → library/skills}/using-summer/SKILL.md +12 -9
  443. package/library/skills/using-summer/resource.yaml +41 -0
  444. package/{skills/3d-assets → library/skills}/vehicle-model/SKILL.md +18 -18
  445. package/library/skills/vehicle-model/resource.yaml +34 -0
  446. package/{skills/workflow → library/skills}/verification-before-completion/SKILL.md +10 -10
  447. package/library/skills/verification-before-completion/resource.yaml +23 -0
  448. package/library/skills/verifying-scenes/SKILL.md +98 -0
  449. package/library/skills/verifying-scenes/resource.yaml +42 -0
  450. package/{skills/visual-effects/recipes/dissolve → library/skills/vfx-dissolve}/SKILL.md +31 -11
  451. package/library/skills/vfx-dissolve/resource.yaml +33 -0
  452. package/{skills/visual-effects/recipes/fire → library/skills/vfx-fire}/SKILL.md +43 -12
  453. package/library/skills/vfx-fire/_building-blocks/noise-3d-fbm.gdshaderinc +45 -0
  454. package/library/skills/vfx-fire/resource.yaml +35 -0
  455. package/{skills/visual-effects/recipes/hit-spark → library/skills/vfx-hit-spark}/SKILL.md +16 -10
  456. package/library/skills/vfx-hit-spark/_building-blocks/additive-billboard-particles.md +37 -0
  457. package/library/skills/vfx-hit-spark/resource.yaml +34 -0
  458. package/{skills/visual-effects/recipes/lightning → library/skills/vfx-lightning}/SKILL.md +24 -11
  459. package/library/skills/vfx-lightning/_building-blocks/additive-billboard-particles.md +37 -0
  460. package/library/skills/vfx-lightning/resource.yaml +33 -0
  461. package/{skills/visual-effects/recipes/magic-glow → library/skills/vfx-magic-glow}/SKILL.md +31 -11
  462. package/library/skills/vfx-magic-glow/_building-blocks/additive-billboard-particles.md +37 -0
  463. package/library/skills/vfx-magic-glow/resource.yaml +34 -0
  464. package/{skills/visual-effects/recipes/muzzle-flash → library/skills/vfx-muzzle-flash}/SKILL.md +29 -9
  465. package/library/skills/vfx-muzzle-flash/_building-blocks/additive-billboard-particles.md +37 -0
  466. package/library/skills/vfx-muzzle-flash/_building-blocks/trauma-shake-snippet.md +53 -0
  467. package/library/skills/vfx-muzzle-flash/resource.yaml +35 -0
  468. package/{skills/visual-effects/recipes/smoke → library/skills/vfx-smoke}/SKILL.md +35 -9
  469. package/library/skills/vfx-smoke/_building-blocks/noise-3d-fbm.gdshaderinc +45 -0
  470. package/library/skills/vfx-smoke/resource.yaml +32 -0
  471. package/{skills/visual-effects/recipes/water-ripple → library/skills/vfx-water-ripple}/SKILL.md +31 -9
  472. package/library/skills/vfx-water-ripple/_building-blocks/additive-billboard-particles.md +37 -0
  473. package/library/skills/vfx-water-ripple/resource.yaml +31 -0
  474. package/library/skills/voice-line/resource.yaml +27 -0
  475. package/library/skills/world-building-3d/SKILL.md +105 -0
  476. package/library/skills/world-building-3d/references/spatial-tools.md +50 -0
  477. package/library/skills/world-building-3d/resource.yaml +44 -0
  478. package/library/skills/world-building-3d/tests/spec.md +48 -0
  479. package/{skills/workflow → library/skills}/writing-plans/SKILL.md +19 -14
  480. package/library/skills/writing-plans/resource.yaml +23 -0
  481. package/{skills/workflow → library/skills}/writing-skills/SKILL.md +38 -44
  482. package/library/skills/writing-skills/resource.yaml +29 -0
  483. package/{skills/workflow → library/skills}/writing-skills/testing-skills-with-subagents.md +13 -14
  484. package/library/templates/2d-brario-platformer/resource.yaml +21 -0
  485. package/library/templates/2d-dungeon-roguelike/resource.yaml +23 -0
  486. package/library/templates/2d-grid-puzzle/resource.yaml +21 -0
  487. package/library/templates/2d-plants-and-zombies-tower-defense/resource.yaml +21 -0
  488. package/library/templates/2d-platformer/resource.yaml +24 -0
  489. package/library/templates/2d-rpg/resource.yaml +21 -0
  490. package/library/templates/2d-vampire-survivor-roguelike/resource.yaml +21 -0
  491. package/library/templates/3d-basic/resource.yaml +16 -0
  492. package/library/templates/3d-city-kit/resource.yaml +24 -0
  493. package/library/templates/3d-fps-old-school/resource.yaml +21 -0
  494. package/library/templates/3d-fps-simple-animated-npc/resource.yaml +21 -0
  495. package/library/templates/3d-lan-multiplayer-starter/resource.yaml +22 -0
  496. package/library/templates/3d-open-world-explore-tps/resource.yaml +21 -0
  497. package/library/templates/3d-procedural-road-world/resource.yaml +21 -0
  498. package/library/templates/3d-racing-game/resource.yaml +21 -0
  499. package/library/templates/3d-royale-clash-type/resource.yaml +21 -0
  500. package/library/templates/3d-third-person-controller/resource.yaml +21 -0
  501. package/library/templates/3d-voxel-sandbox/resource.yaml +24 -0
  502. package/library/templates/README.md +94 -0
  503. package/library/templates/empty/resource.yaml +16 -0
  504. package/library/tools/add-node/resource.yaml +60 -0
  505. package/library/tools/align-distribute-3d/resource.yaml +87 -0
  506. package/library/tools/api-docs/resource.yaml +57 -0
  507. package/library/tools/batch/resource.yaml +52 -0
  508. package/library/tools/camera-bookmark/resource.yaml +73 -0
  509. package/library/tools/check-job/resource.yaml +45 -0
  510. package/library/tools/clear-console/resource.yaml +40 -0
  511. package/library/tools/connect-signal/resource.yaml +63 -0
  512. package/library/tools/create-debug-report/resource.yaml +67 -0
  513. package/library/tools/create-scene/resource.yaml +59 -0
  514. package/library/tools/creator-config/resource.yaml +63 -0
  515. package/library/tools/creator-publish/resource.yaml +73 -0
  516. package/library/tools/creator-releases/resource.yaml +53 -0
  517. package/library/tools/fabricate-3d/resource.yaml +108 -0
  518. package/library/tools/game-control/resource.yaml +84 -0
  519. package/library/tools/game-input/resource.yaml +159 -0
  520. package/library/tools/game-probe/resource.yaml +90 -0
  521. package/library/tools/generate-3d/resource.yaml +112 -0
  522. package/library/tools/generate-audio/resource.yaml +80 -0
  523. package/library/tools/generate-image/resource.yaml +62 -0
  524. package/library/tools/generate-motion/resource.yaml +66 -0
  525. package/library/tools/generate-video/resource.yaml +66 -0
  526. package/library/tools/get-agent-playbook/resource.yaml +40 -0
  527. package/library/tools/get-asset/resource.yaml +42 -0
  528. package/library/tools/get-asset-download-url/resource.yaml +52 -0
  529. package/library/tools/get-console/resource.yaml +69 -0
  530. package/library/tools/get-debugger-errors/resource.yaml +56 -0
  531. package/library/tools/get-debugger-warnings/resource.yaml +52 -0
  532. package/library/tools/get-diagnostics/resource.yaml +42 -0
  533. package/library/tools/get-project-context/resource.yaml +45 -0
  534. package/library/tools/get-runtime-tree/resource.yaml +62 -0
  535. package/library/tools/get-scene-tree/resource.yaml +52 -0
  536. package/library/tools/get-script-errors/resource.yaml +45 -0
  537. package/library/tools/get-studio-workflow/resource.yaml +43 -0
  538. package/library/tools/import-asset/resource.yaml +73 -0
  539. package/library/tools/import-asset-by-id/resource.yaml +56 -0
  540. package/library/tools/import-from-url/resource.yaml +51 -0
  541. package/library/tools/import-from-url-batch/resource.yaml +60 -0
  542. package/library/tools/import-hdri/resource.yaml +69 -0
  543. package/library/tools/input-map-bind/resource.yaml +52 -0
  544. package/library/tools/inspect-node/resource.yaml +46 -0
  545. package/library/tools/inspect-resource/resource.yaml +45 -0
  546. package/library/tools/inspect-runtime-node/resource.yaml +54 -0
  547. package/library/tools/instantiate-scene/resource.yaml +62 -0
  548. package/library/tools/is-running/resource.yaml +40 -0
  549. package/library/tools/library-feedback/resource.yaml +89 -0
  550. package/library/tools/list-my-assets/resource.yaml +56 -0
  551. package/library/tools/navigation-probe/resource.yaml +85 -0
  552. package/library/tools/open/resource.yaml +80 -0
  553. package/library/tools/open-main-scene/resource.yaml +40 -0
  554. package/library/tools/open-scene/resource.yaml +46 -0
  555. package/library/tools/play/resource.yaml +91 -0
  556. package/library/tools/project-setting/resource.yaml +53 -0
  557. package/library/tools/read-file/resource.yaml +47 -0
  558. package/library/tools/read-library/resource.yaml +67 -0
  559. package/library/tools/recent-events/resource.yaml +71 -0
  560. package/library/tools/remove-node/resource.yaml +51 -0
  561. package/library/tools/replace-node/resource.yaml +57 -0
  562. package/library/tools/replace-text/resource.yaml +61 -0
  563. package/library/tools/run-editor-script/resource.yaml +61 -0
  564. package/library/tools/run-script/resource.yaml +73 -0
  565. package/library/tools/runtime-animate/resource.yaml +140 -0
  566. package/library/tools/runtime-call/resource.yaml +74 -0
  567. package/library/tools/runtime-set/resource.yaml +80 -0
  568. package/library/tools/runtime-spawn/resource.yaml +95 -0
  569. package/library/tools/save-scene/resource.yaml +50 -0
  570. package/library/tools/screenshot/resource.yaml +112 -0
  571. package/library/tools/search-assets/resource.yaml +67 -0
  572. package/library/tools/search-library/resource.yaml +81 -0
  573. package/library/tools/select-node/resource.yaml +48 -0
  574. package/library/tools/set-prop/resource.yaml +64 -0
  575. package/library/tools/set-resource-property/resource.yaml +66 -0
  576. package/library/tools/slice-asset-sheet/resource.yaml +47 -0
  577. package/library/tools/snap-to-surface/resource.yaml +90 -0
  578. package/library/tools/snapshot-diff/resource.yaml +58 -0
  579. package/library/tools/starcast/resource.yaml +120 -0
  580. package/library/tools/start-game-task/resource.yaml +91 -0
  581. package/library/tools/stop/resource.yaml +51 -0
  582. package/library/tools/test-placement/resource.yaml +109 -0
  583. package/library/tools/ui-actions/resource.yaml +77 -0
  584. package/library/tools/ui-activate/resource.yaml +88 -0
  585. package/library/tools/ui-screenshot/resource.yaml +63 -0
  586. package/library/tools/ui-tree/resource.yaml +69 -0
  587. package/library/tools/wait-for-event/resource.yaml +84 -0
  588. package/library/tools/world-snapshot/resource.yaml +60 -0
  589. package/library/tools/write-file/resource.yaml +54 -0
  590. package/package.json +22 -16
  591. package/registry/generated/aliases.json +207 -0
  592. package/registry/generated/counts.json +12 -0
  593. package/registry/generated/gemini-extension.json +122 -0
  594. package/registry/generated/index.json +7709 -0
  595. package/registry/generated/marketplace.claude.json +44 -0
  596. package/registry/generated/mcp.json +13 -0
  597. package/registry/generated/plugin.claude.json +135 -0
  598. package/registry/generated/plugin.codex.json +144 -0
  599. package/registry/generated/plugin.cursor.json +134 -0
  600. package/registry/generated/plugin.factory.json +117 -0
  601. package/registry/generated/skills-registry.json +851 -0
  602. package/registry/generated/templates-registry.json +455 -0
  603. package/registry/schemas/allowed-hosts.json +19 -0
  604. package/registry/schemas/collection.schema.json +68 -0
  605. package/registry/schemas/domains.json +96 -0
  606. package/registry/schemas/example.schema.json +11 -0
  607. package/registry/schemas/reference.schema.json +10 -0
  608. package/registry/schemas/resource.schema.json +154 -0
  609. package/registry/schemas/skill.schema.json +14 -0
  610. package/registry/schemas/template.schema.json +46 -0
  611. package/registry/schemas/tool.schema.json +61 -0
  612. package/_persona/summer/SKILL.md +0 -113
  613. package/dist/bin/postinstall.d.ts +0 -2
  614. package/dist/bin/postinstall.js +0 -3
  615. package/dist/commands/cloud.d.ts +0 -2
  616. package/dist/commands/cloud.js +0 -80
  617. package/dist/commands/create.d.ts +0 -3
  618. package/dist/commands/create.js +0 -171
  619. package/dist/commands/install.d.ts +0 -19
  620. package/dist/commands/install.js +0 -194
  621. package/dist/commands/list.js +0 -67
  622. package/dist/commands/logout.js +0 -13
  623. package/dist/commands/logs.d.ts +0 -2
  624. package/dist/commands/logs.js +0 -19
  625. package/dist/commands/open.d.ts +0 -2
  626. package/dist/commands/open.js +0 -32
  627. package/dist/commands/orchestrator.d.ts +0 -8
  628. package/dist/commands/orchestrator.js +0 -143
  629. package/dist/commands/run.d.ts +0 -2
  630. package/dist/commands/run.js +0 -167
  631. package/dist/commands/status.js +0 -46
  632. package/dist/lib/banner.d.ts +0 -4
  633. package/dist/lib/banner.js +0 -122
  634. package/dist/lib/cloud/api.d.ts +0 -79
  635. package/dist/lib/cloud/api.js +0 -107
  636. package/dist/lib/cloud/apply.d.ts +0 -32
  637. package/dist/lib/cloud/apply.js +0 -294
  638. package/dist/lib/cloud/checkpoint.d.ts +0 -26
  639. package/dist/lib/cloud/checkpoint.js +0 -142
  640. package/dist/lib/cloud/conflicts.d.ts +0 -55
  641. package/dist/lib/cloud/conflicts.js +0 -131
  642. package/dist/lib/cloud/containment.d.ts +0 -8
  643. package/dist/lib/cloud/containment.js +0 -52
  644. package/dist/lib/cloud/diff.d.ts +0 -39
  645. package/dist/lib/cloud/diff.js +0 -138
  646. package/dist/lib/cloud/engine-bridge.d.ts +0 -34
  647. package/dist/lib/cloud/engine-bridge.js +0 -139
  648. package/dist/lib/cloud/hash-cache.d.ts +0 -23
  649. package/dist/lib/cloud/hash-cache.js +0 -44
  650. package/dist/lib/cloud/hash.d.ts +0 -10
  651. package/dist/lib/cloud/hash.js +0 -111
  652. package/dist/lib/cloud/http.d.ts +0 -17
  653. package/dist/lib/cloud/http.js +0 -47
  654. package/dist/lib/cloud/lock-path.d.ts +0 -1
  655. package/dist/lib/cloud/lock-path.js +0 -5
  656. package/dist/lib/cloud/lock.d.ts +0 -14
  657. package/dist/lib/cloud/lock.js +0 -143
  658. package/dist/lib/cloud/manifest.d.ts +0 -6
  659. package/dist/lib/cloud/manifest.js +0 -41
  660. package/dist/lib/cloud/paths.d.ts +0 -20
  661. package/dist/lib/cloud/paths.js +0 -90
  662. package/dist/lib/cloud/project-godot-merge.d.ts +0 -32
  663. package/dist/lib/cloud/project-godot-merge.js +0 -185
  664. package/dist/lib/cloud/rules.d.ts +0 -39
  665. package/dist/lib/cloud/rules.js +0 -159
  666. package/dist/lib/cloud/sync.d.ts +0 -21
  667. package/dist/lib/cloud/sync.js +0 -518
  668. package/dist/lib/cloud/transfer.d.ts +0 -23
  669. package/dist/lib/cloud/transfer.js +0 -184
  670. package/dist/lib/cloud/types.d.ts +0 -62
  671. package/dist/lib/cloud/types.js +0 -1
  672. package/dist/lib/cloud/validate-path.d.ts +0 -23
  673. package/dist/lib/cloud/validate-path.js +0 -103
  674. package/dist/lib/engine.d.ts +0 -51
  675. package/dist/lib/game-task-plan.d.ts +0 -42
  676. package/dist/lib/project-memory.d.ts +0 -33
  677. package/dist/lib/public-surface-paths.d.ts +0 -13
  678. package/dist/lib/public-surface-paths.js +0 -42
  679. package/dist/lib/remote-templates.d.ts +0 -25
  680. package/dist/lib/remote-templates.js +0 -86
  681. package/dist/lib/skills-registry.d.ts +0 -572
  682. package/dist/lib/skills-registry.js +0 -1061
  683. package/dist/lib/version-check.d.ts +0 -106
  684. package/dist/mcp/tools/cloud-tools.js +0 -42
  685. package/references/mcp-tools-reference.md +0 -199
  686. package/references/template-registry.md +0 -73
  687. package/skills/README.md +0 -103
  688. package/skills/scene-and-project/summer-cloud/SKILL.md +0 -92
  689. package/skills/workflow/brainstorming/scripts/frame-template.html +0 -214
  690. package/skills/workflow/brainstorming/scripts/helper.js +0 -88
  691. package/skills/workflow/brainstorming/scripts/server.cjs +0 -354
  692. package/skills/workflow/brainstorming/scripts/start-server.sh +0 -148
  693. package/skills/workflow/brainstorming/scripts/stop-server.sh +0 -56
  694. package/skills/workflow/brainstorming/visual-companion.md +0 -287
  695. package/skills/workflow/gameskill/SKILL.md +0 -120
  696. package/skills/workflow/investigating-bugs/CREATION-LOG.md +0 -119
  697. package/skills/workflow/investigating-bugs/condition-based-waiting-example.ts +0 -158
  698. package/skills/workflow/investigating-bugs/find-polluter.sh +0 -63
  699. package/skills/workflow/investigating-bugs/test-academic.md +0 -14
  700. package/skills/workflow/investigating-bugs/test-pressure-1.md +0 -58
  701. package/skills/workflow/investigating-bugs/test-pressure-2.md +0 -68
  702. package/skills/workflow/investigating-bugs/test-pressure-3.md +0 -69
  703. package/skills/workflow/mcpupdate/SKILL.md +0 -134
  704. package/skills/workflow/skill-create/SKILL.md +0 -153
  705. package/skills/workflow/writing-skills/anthropic-best-practices.md +0 -1150
  706. package/skills/workflow/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
  707. package/skills/workflow/writing-skills/graphviz-conventions.dot +0 -172
  708. package/skills/workflow/writing-skills/persuasion-principles.md +0 -187
  709. package/skills/workflow/writing-skills/render-graphs.js +0 -168
  710. /package/dist/{commands → cli/commands}/config.d.ts +0 -0
  711. /package/dist/{commands → cli/commands}/debug.d.ts +0 -0
  712. /package/dist/{commands → cli/commands}/list.d.ts +0 -0
  713. /package/dist/{commands → cli/commands}/login.d.ts +0 -0
  714. /package/dist/{commands → cli/commands}/plan.d.ts +0 -0
  715. /package/dist/{commands → cli/commands}/publish.d.ts +0 -0
  716. /package/dist/{commands → cli/commands}/releases.d.ts +0 -0
  717. /package/dist/{commands → cli/commands}/setup.d.ts +0 -0
  718. /package/dist/{commands → cli/commands}/skills.d.ts +0 -0
  719. /package/dist/{lib → core}/log-filters.d.ts +0 -0
  720. /package/dist/{lib → core}/mcp-log.d.ts +0 -0
  721. /package/dist/{lib → core}/store.d.ts +0 -0
  722. /package/dist/{lib → core}/summer-compatibility.d.ts +0 -0
  723. /package/dist/{lib → core}/telemetry.d.ts +0 -0
  724. /package/dist/{lib/mcp-boot-notice.js → mcp/boot-notice.js} +0 -0
  725. /package/dist/{commands/mcp.d.ts → mcp/command.d.ts} +0 -0
  726. /package/{references → library/references/collaborative-protocol}/collaborative-protocol.md +0 -0
  727. /package/{references → library/references/gd-style}/gd-style.md +0 -0
  728. /package/{skills/audio → library/skills}/ambient-bed/SKILL.md +0 -0
  729. /package/{skills/gameplay-mechanics → library/skills}/auto-fire-targeting/SKILL.md +0 -0
  730. /package/{skills/scripting-patterns → library/skills}/gdscript-patterns/SKILL.md +0 -0
  731. /package/{skills/scripting-patterns → library/skills}/gdscript-patterns/reference.md +0 -0
  732. /package/{skills/multiplayer-and-networking → library/skills}/host-authoritative-state/SKILL.md +0 -0
  733. /package/{skills/workflow → library/skills}/investigating-bugs/defense-in-depth.md +0 -0
  734. /package/{skills/audio → library/skills}/music-track/SKILL.md +0 -0
  735. /package/{skills/scene-and-project → library/skills}/play/SKILL.md +0 -0
  736. /package/{skills/multiplayer-and-networking → library/skills}/setup-multiplayer/SKILL.md +0 -0
  737. /package/{skills/ui-and-ux → library/skills}/ui-basics/SKILL.md +0 -0
  738. /package/{skills/visual-effects → library/skills/vfx-dissolve}/_building-blocks/noise-3d-fbm.gdshaderinc +0 -0
  739. /package/{skills/visual-effects → library/skills/vfx-fire}/_building-blocks/additive-billboard-particles.md +0 -0
  740. /package/{skills/visual-effects → library/skills/vfx-lightning}/_building-blocks/trauma-shake-snippet.md +0 -0
  741. /package/{skills/audio → library/skills}/voice-line/SKILL.md +0 -0
  742. /package/{skills/workflow → library/skills}/writing-plans/plan-document-reviewer-prompt.md +0 -0
@@ -1,49 +1,55 @@
1
1
  #!/usr/bin/env bash
2
2
  # Summer Engine — Pre-commit doctor hook (OPT-IN)
3
3
  #
4
- # Event: PreToolUse (matcher: Bash, if: "Bash(git commit*)")
5
- # Purpose: Run `summer doctor` before any git commit Claude is about to make.
6
- # Block the commit on FAIL. Allow with warnings on WARN.
4
+ # Event: PreToolUse (matcher: "Bash", if: "Bash(git commit*)") — registered
5
+ # in hooks/hooks.json (Claude Code) and hooks/hooks-cursor.json.
6
+ # Purpose: Run `summer doctor` before any git commit the agent is about to
7
+ # make. Block the commit on fail. Allow with warnings on warning.
7
8
  #
8
- # Status: OPT-IN. Not registered in the Summer plugin manifest by default.
9
- #
10
- # To enable, add to ~/.claude/settings.json (or .claude/settings.json):
11
- #
12
- # {
13
- # "hooks": {
14
- # "PreToolUse": [
15
- # {
16
- # "matcher": "Bash",
17
- # "hooks": [
18
- # {
19
- # "type": "command",
20
- # "command": "${CLAUDE_PLUGIN_ROOT}/hooks/pre-commit-doctor.sh",
21
- # "if": "Bash(git commit*)",
22
- # "timeout": 15
23
- # }
24
- # ]
25
- # }
26
- # ]
27
- # }
28
- # }
29
- #
30
- # Then: chmod +x ${CLAUDE_PLUGIN_ROOT}/hooks/pre-commit-doctor.sh
9
+ # Status: OPT-IN. The hook is always registered but exits 0 immediately
10
+ # unless one of these is set:
11
+ # CLAUDE_PLUGIN_OPTION_ENABLE_PRE_COMMIT_DOCTOR=true
12
+ # Claude Code exports every plugin userConfig value to hook
13
+ # processes as CLAUDE_PLUGIN_OPTION_<KEY>; this is the
14
+ # `enable_pre_commit_doctor` toggle from plugin.json.
15
+ # SUMMER_PRE_COMMIT_DOCTOR=1
16
+ # Manual / other-host opt-in (also the envVar Gemini's
17
+ # gemini-extension.json `settings` entry maps to).
31
18
  #
32
19
  # Input: JSON on stdin: { tool_name, tool_input: { command, ... }, ... }
33
- # Output: On FAIL: stderr explanation, exit 2 (blocks commit).
34
- # On WARN: stderr warnings, exit 0 (allows commit).
35
- # On PASS or no `summer` CLI: silent, exit 0.
20
+ # Output: On fail: stderr explanation, exit 2 (blocks commit).
21
+ # On warning: stderr warnings, exit 0 (allows commit).
22
+ # On ok, opt-in unset, or no `summer` CLI on PATH: silent, exit 0.
23
+ # (No npx fallback: a cold `npx summer-engine` download would blow
24
+ # the 30s hook budget mid-commit. Install the CLI to use this hook.)
25
+ #
26
+ # Doctor JSON shape (src/core/capabilities/doctor.ts):
27
+ # { ok, checks: [{ id, label, status: "ok"|"warning"|"fail", message }], summary }
36
28
  #
37
29
  # Portability: bash 3.2+, POSIX-friendly. jq optional.
38
30
 
39
31
  set +e
40
32
 
33
+ # ---------- Opt-in gate ----------
34
+ is_truthy() {
35
+ case "$(printf '%s' "$1" | tr '[:upper:]' '[:lower:]')" in
36
+ 1|true|yes|on) return 0 ;;
37
+ *) return 1 ;;
38
+ esac
39
+ }
40
+ if ! is_truthy "${CLAUDE_PLUGIN_OPTION_ENABLE_PRE_COMMIT_DOCTOR:-}" \
41
+ && ! is_truthy "${SUMMER_PRE_COMMIT_DOCTOR:-}"; then
42
+ cat >/dev/null
43
+ exit 0
44
+ fi
45
+
41
46
  INPUT=$(cat)
42
47
 
43
48
  # ---------- Parse the command ----------
44
49
  COMMAND=""
45
50
  if command -v jq >/dev/null 2>&1; then
46
- COMMAND=$(printf '%s' "$INPUT" | jq -r '.tool_input.command // empty' 2>/dev/null)
51
+ # Claude Code PreToolUse: .tool_input.command; Cursor beforeShellExecution: .command
52
+ COMMAND=$(printf '%s' "$INPUT" | jq -r '.tool_input.command // .command // empty' 2>/dev/null)
47
53
  fi
48
54
  if [ -z "$COMMAND" ]; then
49
55
  COMMAND=$(printf '%s' "$INPUT" \
@@ -77,23 +83,23 @@ WARN_MSGS=""
77
83
 
78
84
  if command -v jq >/dev/null 2>&1; then
79
85
  FAIL_MSGS=$(printf '%s' "$DOCTOR_OUT" \
80
- | jq -r '.checks[]? | select(.status == "FAIL") | " - " + (.name // "?") + ": " + (.message // "")' 2>/dev/null)
86
+ | jq -r '.checks[]? | select((.status // "" | ascii_downcase) == "fail") | " - " + (.label // .name // "?") + ": " + (.message // "")' 2>/dev/null)
81
87
  WARN_MSGS=$(printf '%s' "$DOCTOR_OUT" \
82
- | jq -r '.checks[]? | select(.status == "WARN") | " - " + (.name // "?") + ": " + (.message // "")' 2>/dev/null)
88
+ | jq -r '.checks[]? | select((.status // "" | ascii_downcase) | IN("warning", "warn")) | " - " + (.label // .name // "?") + ": " + (.message // "")' 2>/dev/null)
83
89
  [ -n "$FAIL_MSGS" ] && HAS_FAIL=1
84
90
  [ -n "$WARN_MSGS" ] && HAS_WARN=1
85
91
  else
86
92
  # Fallback: substring sniffing
87
- if printf '%s' "$DOCTOR_OUT" | grep -q '"status"[[:space:]]*:[[:space:]]*"FAIL"'; then
93
+ if printf '%s' "$DOCTOR_OUT" | grep -q '"status"[[:space:]]*:[[:space:]]*"(FAIL|fail)"'; then
88
94
  HAS_FAIL=1
89
95
  FAIL_MSGS=$(printf '%s' "$DOCTOR_OUT" \
90
- | grep -oE '"status"[[:space:]]*:[[:space:]]*"FAIL"[^}]*"message"[[:space:]]*:[[:space:]]*"[^"]*"' \
96
+ | grep -oE '"status"[[:space:]]*:[[:space:]]*"(FAIL|fail)"[^}]*"message"[[:space:]]*:[[:space:]]*"[^"]*"' \
91
97
  | sed -E 's/.*"message"[[:space:]]*:[[:space:]]*"([^"]*)"/ - \1/')
92
98
  fi
93
- if printf '%s' "$DOCTOR_OUT" | grep -q '"status"[[:space:]]*:[[:space:]]*"WARN"'; then
99
+ if printf '%s' "$DOCTOR_OUT" | grep -q '"status"[[:space:]]*:[[:space:]]*"(WARN|warn|warning)"'; then
94
100
  HAS_WARN=1
95
101
  WARN_MSGS=$(printf '%s' "$DOCTOR_OUT" \
96
- | grep -oE '"status"[[:space:]]*:[[:space:]]*"WARN"[^}]*"message"[[:space:]]*:[[:space:]]*"[^"]*"' \
102
+ | grep -oE '"status"[[:space:]]*:[[:space:]]*"(WARN|warn|warning)"[^}]*"message"[[:space:]]*:[[:space:]]*"[^"]*"' \
97
103
  | sed -E 's/.*"message"[[:space:]]*:[[:space:]]*"([^"]*)"/ - \1/')
98
104
  fi
99
105
  fi
@@ -101,11 +107,11 @@ fi
101
107
  # ---------- FAIL: block ----------
102
108
  if [ "$HAS_FAIL" -eq 1 ]; then
103
109
  {
104
- echo "=== Summer doctor: FAIL — commit blocked ==="
110
+ echo "=== Summer doctor: fail — commit blocked ==="
105
111
  echo "$FAIL_MSGS"
106
112
  echo ""
107
113
  echo "Fix the failures above, or run: summer doctor"
108
- echo "To bypass once: disable the pre-commit-doctor hook in settings.json."
114
+ echo "To bypass: turn off the plugin option enable_pre_commit_doctor (or unset SUMMER_PRE_COMMIT_DOCTOR)."
109
115
  echo "============================================"
110
116
  } >&2
111
117
  exit 2
@@ -114,7 +120,7 @@ fi
114
120
  # ---------- WARN: allow with notice ----------
115
121
  if [ "$HAS_WARN" -eq 1 ]; then
116
122
  {
117
- echo "=== Summer doctor: WARN — commit allowed ==="
123
+ echo "=== Summer doctor: warning — commit allowed ==="
118
124
  echo "$WARN_MSGS"
119
125
  echo "============================================"
120
126
  } >&2
@@ -1,23 +1,30 @@
1
- #!/usr/bin/env bash
2
- # Cross-platform hook dispatcher.
3
- # Usage: run-hook.cmd <hook-name>
4
- # Reads stdin, forwards to <plugin-root>/hooks/<hook-name>.sh
5
- # On Windows, Claude Code / Cursor / Codex invoke this via Git-Bash.
6
-
7
- HOOK_NAME="$1"
8
- shift || true
9
-
10
- HOOK_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
11
- HOOK_SCRIPT="$HOOK_DIR/$HOOK_NAME.sh"
12
-
13
- if [ ! -f "$HOOK_SCRIPT" ]; then
14
- # Missing hook = no-op (don't break the host).
15
- exit 0
16
- fi
17
-
18
- if [ ! -x "$HOOK_SCRIPT" ]; then
19
- # Not executable yet (likely fresh checkout). Fall back to bash invocation.
20
- exec bash "$HOOK_SCRIPT" "$@"
21
- fi
22
-
23
- exec "$HOOK_SCRIPT" "$@"
1
+ :; exec bash "$(dirname "$0")/run-hook.sh" "$@"
2
+ @echo off
3
+ rem Summer Engine hook dispatcher — bash / cmd.exe polyglot.
4
+ rem
5
+ rem bash (macOS, Linux, Git Bash): line 1 is a no-op ":" followed by an exec
6
+ rem into run-hook.sh; nothing below it is ever parsed. No shebang on purpose:
7
+ rem bash falls back to running a shebang-less file as a script, and cmd.exe
8
+ rem would otherwise print an error for the "#!" line.
9
+ rem cmd.exe / PowerShell (Windows without a bash hook shell): line 1 is a
10
+ rem label and is skipped; the batch below locates Git Bash and forwards, or
11
+ rem exits 0 so a missing bash never blocks the host.
12
+ rem
13
+ rem Usage: run-hook.cmd <hook-name> (stdin is forwarded untouched)
14
+ setlocal
15
+ set "HOOK_DIR=%~dp0"
16
+ where bash >nul 2>nul
17
+ if %errorlevel%==0 (
18
+ bash "%HOOK_DIR%run-hook.sh" %*
19
+ exit /b %errorlevel%
20
+ )
21
+ if exist "%ProgramFiles%\Git\bin\bash.exe" (
22
+ "%ProgramFiles%\Git\bin\bash.exe" "%HOOK_DIR%run-hook.sh" %*
23
+ exit /b %errorlevel%
24
+ )
25
+ if exist "%LocalAppData%\Programs\Git\bin\bash.exe" (
26
+ "%LocalAppData%\Programs\Git\bin\bash.exe" "%HOOK_DIR%run-hook.sh" %*
27
+ exit /b %errorlevel%
28
+ )
29
+ echo Summer hooks need Git Bash on Windows; skipping hook. 1>&2
30
+ exit /b 0
@@ -0,0 +1,20 @@
1
+ #!/usr/bin/env bash
2
+ # Cross-platform hook dispatcher (bash side).
3
+ # Usage: run-hook.sh <hook-name>
4
+ # Reads stdin, forwards to <plugin-root>/hooks/<hook-name>.sh
5
+ # Hosts reference run-hook.cmd, a bash/cmd.exe polyglot that lands here on
6
+ # every platform that has bash (macOS, Linux, Git Bash / WSL on Windows).
7
+
8
+ HOOK_NAME="$1"
9
+ shift || true
10
+
11
+ HOOK_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
12
+ HOOK_SCRIPT="$HOOK_DIR/$HOOK_NAME.sh"
13
+
14
+ if [ ! -f "$HOOK_SCRIPT" ]; then
15
+ # Missing hook = no-op (don't break the host).
16
+ exit 0
17
+ fi
18
+
19
+ # Always go through bash: fresh checkouts / npm tarballs may drop the exec bit.
20
+ exec bash "$HOOK_SCRIPT" "$@"
@@ -25,10 +25,17 @@ PROJECT_DIR="${CLAUDE_PROJECT_DIR:-$(pwd)}"
25
25
  LINES=()
26
26
 
27
27
  # Line 1: Summer ready + skill count
28
+ # The count is the number of Summer skills actually loaded by THIS host — the
29
+ # plugin's bundled library when running as a plugin. Outside a plugin root we
30
+ # cannot tell Summer skills from the user's own, so the number is dropped
31
+ # rather than reporting the whole library as if it were installed.
28
32
  SKILL_COUNT=""
29
- if command -v summer >/dev/null 2>&1; then
30
- # `summer skills count` is best-effort; ignore failure
31
- SKILL_COUNT=$(summer skills count 2>/dev/null | grep -oE '[0-9]+' | head -1)
33
+ PLUGIN_ROOT="${CLAUDE_PLUGIN_ROOT:-${CURSOR_PLUGIN_ROOT:-}}"
34
+ if [ -n "$PLUGIN_ROOT" ] && [ -d "${PLUGIN_ROOT}/library/skills" ]; then
35
+ SKILL_COUNT=$(find "${PLUGIN_ROOT}/library/skills" -mindepth 2 -maxdepth 2 -name SKILL.md 2>/dev/null | grep -c .)
36
+ case "$SKILL_COUNT" in
37
+ ''|0|*[!0-9]*) SKILL_COUNT="" ;;
38
+ esac
32
39
  fi
33
40
  if [ -n "$SKILL_COUNT" ]; then
34
41
  LINES+=("Summer ready. ${SKILL_COUNT} skills.")
@@ -57,18 +64,22 @@ if [ -f "${PROJECT_DIR}/project.godot" ]; then
57
64
  fi
58
65
  fi
59
66
 
60
- # Line 3: doctor FAIL one-liner (only on FAIL — silent on PASS/WARN)
67
+ # Line 3: doctor fail one-liner (only on status "fail" — silent on ok/warning).
68
+ # Doctor JSON (src/core/capabilities/doctor.ts): checks[].status is lowercase
69
+ # "ok" | "warning" | "fail". Only runs when a `summer` CLI is on PATH: the
70
+ # documented npx install never puts one there, and a cold `npx summer-engine`
71
+ # fetch would exceed the 10s SessionStart budget, so we degrade silently.
61
72
  if command -v summer >/dev/null 2>&1; then
62
73
  DOCTOR_OUT=$(summer doctor --json 2>/dev/null)
63
74
  if [ -n "$DOCTOR_OUT" ]; then
64
75
  FAIL_REASON=""
65
76
  if command -v jq >/dev/null 2>&1; then
66
77
  FAIL_REASON=$(printf '%s' "$DOCTOR_OUT" \
67
- | jq -r 'first(.checks[]? | select(.status == "FAIL") | .message) // empty' 2>/dev/null)
78
+ | jq -r 'first(.checks[]? | select((.status // "" | ascii_downcase) == "fail") | .message) // empty' 2>/dev/null)
68
79
  else
69
- # Crude fallback: first "message" near a "FAIL"
80
+ # Crude fallback: first "message" near a "fail"
70
81
  FAIL_REASON=$(printf '%s' "$DOCTOR_OUT" \
71
- | grep -oE '"status"[[:space:]]*:[[:space:]]*"FAIL"[^}]*"message"[[:space:]]*:[[:space:]]*"[^"]*"' \
82
+ | grep -oE '"status"[[:space:]]*:[[:space:]]*"(FAIL|fail)"[^}]*"message"[[:space:]]*:[[:space:]]*"[^"]*"' \
72
83
  | head -1 \
73
84
  | grep -oE '"message"[[:space:]]*:[[:space:]]*"[^"]*"' \
74
85
  | sed 's/.*"message"[[:space:]]*:[[:space:]]*"//;s/"$//')
@@ -0,0 +1,70 @@
1
+ # integrations/ — the complete, honest map of agent support
2
+
3
+ One folder per supported client. This directory is the single place that
4
+ says which agents Summer supports and how each one consumes the library.
5
+ Adding a new agent (e.g. Grok) = one folder here (plus, if it has a manifest
6
+ file, a builder in `scripts/generate-registry/manifests.ts` and a target in
7
+ `scripts/generate-registry/targets.ts`) + `npm run generate:registry` —
8
+ never hand-editing root files.
9
+
10
+ Each folder contains:
11
+
12
+ - `README.md` — what gets generated where, or (for clients with no manifest
13
+ file in this repo) exactly what `summer setup <client>` writes at install
14
+ time: MCP config path and skills destination.
15
+
16
+ `summer setup <client>` (default `--scope user`) writes the MCP config AND
17
+ installs every skill (`skills install --all`, preview included; `--stable-only`
18
+ skips preview) in the SAME scope,
19
+ so a user-scope MCP config never ends up beside project-scope skills.
20
+ `--scope project` moves both; `--recommended` installs only the recommended
21
+ subset. Clients whose MCP config is user-only (cline, roo-code, lm-studio,
22
+ gemini) fall back to user scope with a warning. `.mcp.json` at the repo root
23
+ (the MCP pointer the claude / codex / cursor / factory manifests share) is
24
+ generated too — `registry/generated/mcp.json -> .mcp.json`.
25
+ - `manifest-target.json` — mapping of generated file -> repo-root destination
26
+ (empty when nothing is generated). Mirrors
27
+ `scripts/generate-registry/targets.ts`; a test fails if they drift.
28
+
29
+ Generated root dot-files (`.claude-plugin/plugin.json`, `gemini-extension.json`,
30
+ …) are build artifacts of `integrations/<agent>` + `library/` — their
31
+ `_generated` banner says so ("GENERATED from integrations/<agent> — do not
32
+ edit; npm run generate:registry"). CI `--check` fails on any drift between
33
+ `library/`, `registry/generated/`, and the applied root files.
34
+
35
+ How the plugin manifests reference skills, and what is verified:
36
+
37
+ - **Claude Code** — the plugin-manifest `skills` field accepts a string or an
38
+ array of `./`-relative directory paths and *extends* the default `skills/`
39
+ scan (Claude Code plugins reference, "Plugin manifest schema"). The
40
+ generated `.claude-plugin/plugin.json` lists one entry per skill
41
+ (`./library/skills/<slug>/`). The docs do not say whether a listed
42
+ directory is loaded as one skill or scanned for skill subfolders, and this
43
+ repo has not yet loaded the generated manifest through the real plugin
44
+ path (the smoke tests exercise the `summer setup` install path, not the
45
+ marketplace one) — treat the marketplace install as unverified until that
46
+ run exists.
47
+ - **Codex** — `.codex-plugin/plugin.json` carries the same per-skill `skills`
48
+ array. Whether Codex reads that field, and with which type, is
49
+ **unverified**; the v2 manifest carried it and nobody has confirmed a load.
50
+ - **Factory** — reads skills only from a root `skills/` directory; the
51
+ manifest's `skills` array is not read (open gap, see the table).
52
+
53
+ | Client | Manifest generated in this repo | `summer setup` writes |
54
+ |---|---|---|
55
+ | claude | `.claude-plugin/plugin.json`, `.claude-plugin/marketplace.json`, `.mcp.json` | MCP: `~/.claude.json` (user) / `.mcp.json` (project); skills: `~/.claude/skills/` (user) / `.claude/skills/` (project); slash commands from `commands/` to `~/.claude/commands/` |
56
+ | codex | `.codex-plugin/plugin.json` | MCP: `~/.codex/config.toml` (TOML); skills: `.agents/skills/` |
57
+ | cursor | `.cursor-plugin/plugin.json` | MCP: `~/.cursor/mcp.json` / `.cursor/mcp.json`; skills: `.cursor/rules/` |
58
+ | factory | `.factory-plugin/plugin.json` | nothing — there is no `summer setup factory` target. Install via the plugin marketplace: `droid plugin marketplace add https://github.com/summerengine/summer` then `droid plugin install summer@summer-engine`. Factory reads MCP from the plugin's `.mcp.json` and skills only from a root `skills/` dir (this package ships them under `library/skills/`, so the manifest `skills` array is not read by Factory — open gap) |
59
+ | gemini | `gemini-extension.json` | extension dir `~/.gemini/extensions/summer-engine/`: the generated manifest (renamed `summer-engine` to match the dir, MCP launcher swapped to `npx -y summer-engine@latest mcp`) + `GEMINI.md` + `AGENTS.md`; skills: `~/.gemini/extensions/summer-engine/skills/<slug>/SKILL.md` (Gemini extension-skill discovery; user scope only) |
60
+ | windsurf (Devin Desktop) | — | MCP: `~/.codeium/windsurf/mcp_config.json`; rules: `.windsurfrules` |
61
+ | cline | — | MCP: VS Code global storage (`saoudrizwan.claude-dev`); rules: `.clinerules` |
62
+ | roo-code | — | MCP: VS Code global storage (`rooveterinaryinc.roo-cline`); rules: `.clinerules` |
63
+ | kilo-code | — | MCP: VS Code global storage `kilocode.kilo-code/settings/mcp_settings.json` (user) / `.kilocode/mcp.json` (project); rules: `~/.kilocode/rules/` (user) / `.kilocode/rules/` (project) |
64
+ | github-copilot | — | MCP: `~/.copilot/mcp-config.json` / `.mcp.json`; skills: `~/.copilot/skills/` or `.github/skills/` |
65
+ | vscode-copilot | — | MCP: VS Code user-profile `mcp.json` / `.vscode/mcp.json`; skills: `~/.copilot/skills/` or `.github/skills/` |
66
+ | opencode | — (JS plugin via npm `main`, `.opencode/plugins/summer.js`) | MCP entry in `opencode.json` (`type: "local"`, array `command`); skills: the plugin registers `library/skills/` via `skills.paths`; `skills install --agent opencode` additionally writes `agents/summer/` markdown |
67
+ | lm-studio | — | MCP: `~/.lmstudio/mcp.json` (app-global); no skills folder — guidance via `summer_get_agent_playbook` |
68
+
69
+ Source of truth for the setup paths: `src/installer/agent-config.ts` and
70
+ `src/cli/commands/skills.ts`.
@@ -0,0 +1,19 @@
1
+ # Claude Code integration
2
+
3
+ Generated by `scripts/generate-registry` from `library/**/resource.yaml`:
4
+
5
+ - `registry/generated/plugin.claude.json` -> `.claude-plugin/plugin.json`
6
+ (plugin manifest: full skill list at `./library/skills/<slug>/`, hooks,
7
+ MCP pointer, userConfig; version stamped from `package.json`).
8
+ - `registry/generated/marketplace.claude.json` -> `.claude-plugin/marketplace.json`
9
+ (marketplace listing wrapper).
10
+
11
+ The MCP pointer `./.mcp.json` these manifests reference is generated as
12
+ well (`registry/generated/mcp.json -> .mcp.json`, owned by the claude target).
13
+
14
+ The MCP pointer `./.mcp.json` these manifests reference is generated as
15
+ well (`registry/generated/mcp.json -> .mcp.json`).
16
+
17
+ Never edit the destination files by hand — edit `library/` resources or the
18
+ manifest builders in `scripts/generate-registry/manifests.ts`, then run
19
+ `npm run generate:registry`. CI `--check` fails on any drift.
@@ -0,0 +1,16 @@
1
+ {
2
+ "targets": [
3
+ {
4
+ "generated": "plugin.claude.json",
5
+ "destination": ".claude-plugin/plugin.json"
6
+ },
7
+ {
8
+ "generated": "marketplace.claude.json",
9
+ "destination": ".claude-plugin/marketplace.json"
10
+ },
11
+ {
12
+ "generated": "mcp.json",
13
+ "destination": ".mcp.json"
14
+ }
15
+ ]
16
+ }
@@ -0,0 +1,13 @@
1
+ # Cline integration
2
+
3
+ No manifest file is generated in this repo for Cline — `manifest-target.json`
4
+ is intentionally empty. Support is delivered at install time by
5
+ `summer setup cline`, which writes:
6
+
7
+ - MCP config: Cline's VS Code global storage (extension
8
+ `saoudrizwan.claude-dev`). User scope only — Cline has no project-scoped MCP
9
+ config today; project requests fall back to user scope with a warning.
10
+ - Skills: `summer skills install --agent cline` writes rule files to Cline's
11
+ user rules directory (user scope) or `./.clinerules` (project scope).
12
+
13
+ Source of truth: `src/installer/agent-config.ts`, `src/cli/commands/skills.ts`.
@@ -0,0 +1,3 @@
1
+ {
2
+ "targets": []
3
+ }
@@ -0,0 +1,15 @@
1
+ # Codex integration
2
+
3
+ Generated by `scripts/generate-registry` from `library/**/resource.yaml`:
4
+
5
+ - `registry/generated/plugin.codex.json` -> `.codex-plugin/plugin.json`
6
+ (plugin manifest with the Codex app-store `interface` block; full skill
7
+ list at `./library/skills/<slug>/` — the pre-v3 four-skill gap was a bug and
8
+ is fixed by generation; version stamped from `package.json`).
9
+
10
+ The MCP pointer `./.mcp.json` these manifests reference is generated as
11
+ well (`registry/generated/mcp.json -> .mcp.json`, owned by the claude target).
12
+
13
+ Never edit the destination file by hand — edit `library/` resources or
14
+ `scripts/generate-registry/manifests.ts`, then run
15
+ `npm run generate:registry`. CI `--check` fails on any drift.
@@ -0,0 +1,5 @@
1
+ {
2
+ "targets": [
3
+ { "generated": "plugin.codex.json", "destination": ".codex-plugin/plugin.json" }
4
+ ]
5
+ }
@@ -0,0 +1,16 @@
1
+ # Cursor integration
2
+
3
+ Generated by `scripts/generate-registry` from `library/**/resource.yaml`:
4
+
5
+ - `registry/generated/plugin.cursor.json` -> `.cursor-plugin/plugin.json`
6
+ (Cursor plugin manifest: displayName/publisher/category, cursor-specific
7
+ hooks file `./hooks/hooks-cursor.json`, full skill list at
8
+ `./library/skills/<slug>/` — the pre-v3 four-skill gap was a bug and is fixed
9
+ by generation; version stamped from `package.json`).
10
+
11
+ The MCP pointer `./.mcp.json` these manifests reference is generated as
12
+ well (`registry/generated/mcp.json -> .mcp.json`, owned by the claude target).
13
+
14
+ Never edit the destination file by hand — edit `library/` resources or
15
+ `scripts/generate-registry/manifests.ts`, then run
16
+ `npm run generate:registry`. CI `--check` fails on any drift.
@@ -0,0 +1,5 @@
1
+ {
2
+ "targets": [
3
+ { "generated": "plugin.cursor.json", "destination": ".cursor-plugin/plugin.json" }
4
+ ]
5
+ }
@@ -0,0 +1,26 @@
1
+ # Factory (Droid) integration
2
+
3
+ Generated by `scripts/generate-registry` from `library/**/resource.yaml`:
4
+
5
+ - `registry/generated/plugin.factory.json` -> `.factory-plugin/plugin.json`
6
+ (metadata manifest, now including the full skill list at
7
+ `./library/skills/<slug>/` — the pre-v3 manifest listed zero skills, which
8
+ was a bug fixed by generation; version stamped from `package.json`).
9
+
10
+ There is no `summer setup factory` target (`summer setup` rejects `factory`).
11
+ Install through the plugin marketplace instead:
12
+
13
+ ```
14
+ droid plugin marketplace add https://github.com/summerengine/summer
15
+ droid plugin install summer@summer-engine --scope user
16
+ ```
17
+
18
+ Factory reads MCP servers from the plugin's root `.mcp.json` (generated) and
19
+ skills ONLY from a root `skills/<name>/SKILL.md` directory; it has no `skills`
20
+ manifest field, so the array in `plugin.factory.json` is inert and this package
21
+ (skills under `library/skills/`) currently exposes no skills to Factory. Open
22
+ gap; fix is a root `skills/` layout, not a setup target.
23
+
24
+ Never edit the destination file by hand — edit `library/` resources or
25
+ `scripts/generate-registry/manifests.ts`, then run
26
+ `npm run generate:registry`. CI `--check` fails on any drift.
@@ -0,0 +1,5 @@
1
+ {
2
+ "targets": [
3
+ { "generated": "plugin.factory.json", "destination": ".factory-plugin/plugin.json" }
4
+ ]
5
+ }
@@ -0,0 +1,26 @@
1
+ # Gemini CLI integration
2
+
3
+ Generated by `scripts/generate-registry` from `library/**/resource.yaml`:
4
+
5
+ - `registry/generated/gemini-extension.json` -> `gemini-extension.json`
6
+ (extension manifest: MCP server, GEMINI.md context file, settings; version
7
+ stamped from `package.json`). The `skills` array is emitted for parity with
8
+ the other manifests but Gemini has no such field — it discovers extension
9
+ skills from `<extension>/skills/<name>/SKILL.md` and ignores unknown keys.
10
+
11
+ `summer setup gemini` writes `~/.gemini/extensions/summer-engine/`:
12
+
13
+ - `gemini-extension.json` — the generated manifest above with install-time
14
+ overrides: `name` becomes `summer-engine` (Gemini requires the manifest name
15
+ to match the extension directory), `mcpServers.summer-engine` becomes the
16
+ standard launcher (`npx -y summer-engine@latest mcp`, `cmd.exe /c` wrapped on
17
+ Windows) because `${extensionPath}` holds no npm package, `skills` and the
18
+ `_generated` banner are dropped.
19
+ - `GEMINI.md` and `AGENTS.md` (the context file and the file it imports).
20
+ - `skills/<slug>/SKILL.md` for every library skill (via
21
+ `skills install --all --agent gemini`); Gemini extensions are user-scoped, so
22
+ `--scope project` falls back to user with a warning.
23
+
24
+ Never edit the destination file by hand — edit `library/` resources or
25
+ `scripts/generate-registry/manifests.ts`, then run
26
+ `npm run generate:registry`. CI `--check` fails on any drift.
@@ -0,0 +1,5 @@
1
+ {
2
+ "targets": [
3
+ { "generated": "gemini-extension.json", "destination": "gemini-extension.json" }
4
+ ]
5
+ }
@@ -0,0 +1,12 @@
1
+ # GitHub Copilot CLI integration
2
+
3
+ No manifest file is generated in this repo for Copilot CLI —
4
+ `manifest-target.json` is intentionally empty. Support is delivered at install
5
+ time by `summer setup github-copilot`, which writes:
6
+
7
+ - MCP config: `~/.copilot/mcp-config.json` (user scope) or `./.mcp.json`
8
+ (project scope), in Copilot's MCP config format.
9
+ - Skills: `summer skills install --agent github-copilot` writes skill files to
10
+ `~/.copilot/skills/` (user scope) or `./.github/skills/` (project scope).
11
+
12
+ Source of truth: `src/installer/agent-config.ts`, `src/cli/commands/skills.ts`.
@@ -0,0 +1,3 @@
1
+ {
2
+ "targets": []
3
+ }
@@ -0,0 +1,16 @@
1
+ # Kilo Code integration
2
+
3
+ No manifest file is generated in this repo for Kilo Code — `manifest-target.json`
4
+ is intentionally empty. Support is delivered at install time by
5
+ `summer setup kilo-code`, which writes:
6
+
7
+ - MCP config: Kilo Code's VS Code global storage
8
+ (`<VS Code user dir>/globalStorage/kilocode.kilo-code/settings/mcp_settings.json`,
9
+ user scope) or `./.kilocode/mcp.json` (project scope).
10
+ - Skills: `summer setup kilo-code` installs the whole library in the same
11
+ scope as the MCP config (user by default), as rule files in
12
+ `~/.kilocode/rules/summer-<skill>.md` (user) or `./.kilocode/rules/`
13
+ (project). `summer skills install --agent kilo-code` on its own defaults
14
+ to project scope; pass `--scope user` to match a user-scope MCP config.
15
+
16
+ Source of truth: `src/installer/agent-config.ts`, `src/cli/commands/skills.ts`.
@@ -0,0 +1,3 @@
1
+ {
2
+ "targets": []
3
+ }
@@ -0,0 +1,12 @@
1
+ # LM Studio integration
2
+
3
+ No manifest file is generated in this repo for LM Studio —
4
+ `manifest-target.json` is intentionally empty. Support is delivered at install
5
+ time by `summer setup lm-studio`, which writes:
6
+
7
+ - MCP config: `~/.lmstudio/mcp.json`. This file is app-global (user scope
8
+ only); project-scope requests are treated as user scope with a warning.
9
+ - Skills: LM Studio has no rules or skills folder. The MCP server ships
10
+ `summer_get_agent_playbook`, so the model pulls Summer guidance in-chat.
11
+
12
+ Source of truth: `src/installer/agent-config.ts`, `src/installer/setup.ts`.
@@ -0,0 +1,3 @@
1
+ {
2
+ "targets": []
3
+ }
@@ -0,0 +1,15 @@
1
+ # OpenCode integration
2
+
3
+ Nothing is generated for OpenCode today. OpenCode consumes the npm package as
4
+ a JavaScript module (`.opencode/plugins/summer.js`, wired via the package's
5
+ `main` field). The plugin's `config` hook appends `<package>/library/skills`
6
+ to `skills.paths` (OpenCode's `<dir>/<name>/SKILL.md` layout) and its
7
+ `experimental.chat.messages.transform` hook prepends the Summer orientation to
8
+ the first user message once per session. `summer setup opencode` writes the
9
+ MCP entry to `opencode.json` (`type: "local"`, array `command`) and installs
10
+ skills as markdown under `agents/summer/`. `manifest-target.json` is
11
+ intentionally empty. Install steps: `.opencode/INSTALL.md`.
12
+
13
+ If OpenCode grows a declarative manifest, add its builder to
14
+ `scripts/generate-registry/manifests.ts` and its target to
15
+ `scripts/generate-registry/targets.ts` (mirrored here).
@@ -0,0 +1,3 @@
1
+ {
2
+ "targets": []
3
+ }
@@ -0,0 +1,13 @@
1
+ # Roo Code integration
2
+
3
+ No manifest file is generated in this repo for Roo Code — `manifest-target.json`
4
+ is intentionally empty. Support is delivered at install time by
5
+ `summer setup roo-code`, which writes:
6
+
7
+ - MCP config: Roo Code's VS Code global storage (extension
8
+ `rooveterinaryinc.roo-cline`). User scope only — no project-scoped MCP config
9
+ today; project requests fall back to user scope with a warning.
10
+ - Skills: `summer skills install --agent roo-code` writes rule files to Roo
11
+ Code's user rules directory (user scope) or `./.clinerules` (project scope).
12
+
13
+ Source of truth: `src/installer/agent-config.ts`, `src/cli/commands/skills.ts`.
@@ -0,0 +1,3 @@
1
+ {
2
+ "targets": []
3
+ }
@@ -0,0 +1,12 @@
1
+ # VS Code Copilot integration
2
+
3
+ No manifest file is generated in this repo for VS Code Copilot —
4
+ `manifest-target.json` is intentionally empty. Support is delivered at install
5
+ time by `summer setup vscode-copilot`, which writes:
6
+
7
+ - MCP config: VS Code's user-profile `mcp.json` (user scope) or
8
+ `./.vscode/mcp.json` (project scope), in VS Code's MCP config format.
9
+ - Skills: `summer skills install --agent vscode-copilot` writes skill files to
10
+ `~/.copilot/skills/` (user scope) or `./.github/skills/` (project scope).
11
+
12
+ Source of truth: `src/installer/agent-config.ts`, `src/cli/commands/skills.ts`.
@@ -0,0 +1,3 @@
1
+ {
2
+ "targets": []
3
+ }