summer-engine 4.0.0 → 4.3.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 (216) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/.claude-plugin/plugin.json +3 -2
  3. package/.codex-plugin/plugin.json +15 -11
  4. package/.cursor-plugin/plugin.json +5 -3
  5. package/.factory-plugin/plugin.json +3 -2
  6. package/AGENTS.md +2 -2
  7. package/CHANGELOG.md +48 -0
  8. package/README.md +21 -10
  9. package/dist/cli/command-usage.d.ts +8 -0
  10. package/dist/cli/command-usage.js +22 -0
  11. package/dist/cli/commands/config.js +3 -2
  12. package/dist/cli/commands/create.js +12 -3
  13. package/dist/cli/commands/list.d.ts +5 -0
  14. package/dist/cli/commands/list.js +30 -13
  15. package/dist/cli/commands/login.js +1 -1
  16. package/dist/cli/commands/memory.js +6 -2
  17. package/dist/cli/commands/ops.d.ts +20 -3
  18. package/dist/cli/commands/ops.js +60 -27
  19. package/dist/cli/commands/setup.d.ts +2 -0
  20. package/dist/cli/commands/setup.js +219 -16
  21. package/dist/cli/commands/skills.js +20 -7
  22. package/dist/cli/commands/status.d.ts +26 -0
  23. package/dist/cli/commands/status.js +36 -21
  24. package/dist/cli/commands/tool.js +4 -0
  25. package/dist/cli/index.js +2 -0
  26. package/dist/core/agent-host.d.ts +3 -0
  27. package/dist/core/agent-host.js +8 -2
  28. package/dist/core/capabilities/apps.d.ts +10 -10
  29. package/dist/core/capabilities/audit/args.d.ts +6 -6
  30. package/dist/core/capabilities/fabricate-mesh.d.ts +2 -2
  31. package/dist/core/capabilities/game-task-plan.d.ts +2 -2
  32. package/dist/core/capabilities/hdri-import.d.ts +2 -2
  33. package/dist/core/capabilities/motion-generation.d.ts +2 -2
  34. package/dist/core/capabilities/placement.d.ts +23 -23
  35. package/dist/core/capabilities/runtime-control.d.ts +38 -38
  36. package/dist/core/capabilities/seeing/args.d.ts +16 -16
  37. package/dist/core/capabilities/ui-control.d.ts +2 -2
  38. package/dist/core/capabilities/world-snapshot.d.ts +4 -4
  39. package/dist/core/cli-usage-beacon.d.ts +1 -0
  40. package/dist/core/cli-usage-beacon.js +18 -0
  41. package/dist/core/cli-usage.d.ts +49 -0
  42. package/dist/core/cli-usage.js +108 -0
  43. package/dist/core/feedback/client.d.ts +1 -1
  44. package/dist/core/feedback/client.js +3 -2
  45. package/dist/core/hosted-mcp.d.ts +7 -1
  46. package/dist/core/hosted-mcp.js +6 -4
  47. package/dist/core/library-search.d.ts +2 -2
  48. package/dist/core/ops/areas.d.ts +11 -0
  49. package/dist/core/ops/areas.js +24 -0
  50. package/dist/core/ops/catalog.d.ts +11 -0
  51. package/dist/core/ops/catalog.js +24 -1
  52. package/dist/core/ops/cloud.d.ts +10 -2
  53. package/dist/core/ops/cloud.js +51 -28
  54. package/dist/core/ops/contract.d.ts +2 -1
  55. package/dist/core/ops/contract.js +2 -10
  56. package/dist/core/ops/public-catalog.d.ts +48 -0
  57. package/dist/core/ops/public-catalog.js +56 -0
  58. package/dist/core/ops/search.d.ts +0 -1
  59. package/dist/core/ops/search.js +169 -37
  60. package/dist/core/telemetry.d.ts +10 -0
  61. package/dist/core/telemetry.js +58 -29
  62. package/dist/installer/agent-config.js +5 -0
  63. package/dist/installer/agent-table.d.ts +9 -0
  64. package/dist/installer/agent-table.js +23 -2
  65. package/dist/installer/cli-permissions.d.ts +65 -0
  66. package/dist/installer/cli-permissions.js +182 -0
  67. package/dist/installer/setup.d.ts +2 -0
  68. package/dist/installer/setup.js +3 -0
  69. package/dist/installer/skills-refresh.d.ts +29 -0
  70. package/dist/installer/skills-refresh.js +261 -0
  71. package/dist/installer/version-check.d.ts +22 -2
  72. package/dist/installer/version-check.js +66 -9
  73. package/dist/mcp/ops-surface.js +16 -6
  74. package/dist/mcp/server.d.ts +10 -0
  75. package/dist/mcp/server.js +38 -8
  76. package/dist/project-memory/agent-instructions.d.ts +47 -0
  77. package/dist/project-memory/agent-instructions.js +226 -0
  78. package/gemini-extension.json +3 -2
  79. package/integrations/README.md +1 -1
  80. package/integrations/claude/README.md +6 -0
  81. package/integrations/claude/manifest-target.json +4 -0
  82. package/integrations/gemini/README.md +11 -0
  83. package/integrations/windsurf/README.md +1 -1
  84. package/library/skills/3d-lighting/SKILL.md +16 -0
  85. package/library/skills/README.md +5 -4
  86. package/library/skills/adaptive-music/SKILL.md +21 -0
  87. package/library/skills/agent-playtesting/SKILL.md +22 -0
  88. package/library/skills/ai-characters-in-games/SKILL.md +15 -0
  89. package/library/skills/ambient-bed/SKILL.md +16 -0
  90. package/library/skills/animated-loop/SKILL.md +19 -0
  91. package/library/skills/animation-tree/SKILL.md +26 -0
  92. package/library/skills/art-direction/SKILL.md +14 -0
  93. package/library/skills/asset-strategy/SKILL.md +30 -0
  94. package/library/skills/audio-direction/SKILL.md +16 -0
  95. package/library/skills/auto-fire-targeting/SKILL.md +14 -0
  96. package/library/skills/brainstorm-game/SKILL.md +13 -0
  97. package/library/skills/browse-templates/SKILL.md +10 -0
  98. package/library/skills/camera-rigs/SKILL.md +20 -0
  99. package/library/skills/character-animation-wiring/SKILL.md +24 -0
  100. package/library/skills/character-model/SKILL.md +28 -0
  101. package/library/skills/character-movement/SKILL.md +24 -0
  102. package/library/skills/character-portrait/SKILL.md +15 -0
  103. package/library/skills/cinematic-cutscene/SKILL.md +21 -0
  104. package/library/skills/combat-basics/SKILL.md +19 -0
  105. package/library/skills/compatibility-renderer-traps/SKILL.md +11 -0
  106. package/library/skills/concept-art/SKILL.md +13 -0
  107. package/library/skills/concept-to-level/SKILL.md +20 -1
  108. package/library/skills/concept-to-level/resource.yaml +2 -2
  109. package/library/skills/create-asset-sheet/SKILL.md +18 -0
  110. package/library/skills/debug/SKILL.md +32 -0
  111. package/library/skills/debugging-game-feel/SKILL.md +12 -0
  112. package/library/skills/design-level/SKILL.md +17 -0
  113. package/library/skills/design-mechanic/SKILL.md +17 -0
  114. package/library/skills/design-npc/SKILL.md +21 -0
  115. package/library/skills/diagnosing-perf-regressions/SKILL.md +12 -0
  116. package/library/skills/driving-the-editor-ui/SKILL.md +23 -0
  117. package/library/skills/environment-kit/SKILL.md +23 -0
  118. package/library/skills/export-and-ship/SKILL.md +23 -0
  119. package/library/skills/fabricating-assets/SKILL.md +23 -0
  120. package/library/skills/facial-and-lipsync/SKILL.md +22 -0
  121. package/library/skills/fps-controller/SKILL.md +17 -0
  122. package/library/skills/game-feel/SKILL.md +26 -0
  123. package/library/skills/gameskill/SKILL.md +11 -0
  124. package/library/skills/gdscript-patterns/SKILL.md +15 -0
  125. package/library/skills/generate-motion/SKILL.md +21 -0
  126. package/library/skills/godogen-visual-proof-game-generation/SKILL.md +17 -0
  127. package/library/skills/grow-analytics/SKILL.md +10 -0
  128. package/library/skills/headless-scripting/SKILL.md +13 -0
  129. package/library/skills/in-game-purchases/SKILL.md +11 -0
  130. package/library/skills/instantiate-asset-pack/SKILL.md +17 -0
  131. package/library/skills/make-game/SKILL.md +29 -0
  132. package/library/skills/multiplayer/SKILL.md +12 -0
  133. package/library/skills/multiplayer-movement/SKILL.md +18 -0
  134. package/library/skills/multiplayer-project/SKILL.md +17 -0
  135. package/library/skills/multiplayer-publish/SKILL.md +17 -5
  136. package/library/skills/multiplayer-state/SKILL.md +16 -0
  137. package/library/skills/multiplayer-testing/SKILL.md +15 -0
  138. package/library/skills/music-track/SKILL.md +16 -0
  139. package/library/skills/navigate-summer/SKILL.md +15 -0
  140. package/library/skills/new-project/SKILL.md +11 -0
  141. package/library/skills/organic-model/SKILL.md +24 -0
  142. package/library/skills/pixel-art/SKILL.md +15 -0
  143. package/library/skills/play/SKILL.md +18 -0
  144. package/library/skills/playtesting-a-feature/SKILL.md +23 -0
  145. package/library/skills/procedural-animation/SKILL.md +18 -0
  146. package/library/skills/prop-model/SKILL.md +23 -0
  147. package/library/skills/publish-your-game/SKILL.md +27 -0
  148. package/library/skills/release-readiness/SKILL.md +12 -0
  149. package/library/skills/remote-deploy/SKILL.md +14 -0
  150. package/library/skills/retarget/SKILL.md +20 -0
  151. package/library/skills/running-in-the-cloud/SKILL.md +10 -0
  152. package/library/skills/save-load/SKILL.md +15 -0
  153. package/library/skills/scene-composition/SKILL.md +17 -0
  154. package/library/skills/scene-hierarchy-design/SKILL.md +24 -0
  155. package/library/skills/scene-scripting/SKILL.md +30 -0
  156. package/library/skills/scene-to-level/SKILL.md +22 -0
  157. package/library/skills/skill-test/SKILL.md +10 -0
  158. package/library/skills/skybox-panorama/SKILL.md +20 -0
  159. package/library/skills/sound-effect/SKILL.md +23 -0
  160. package/library/skills/spatial-placement/SKILL.md +30 -0
  161. package/library/skills/sprite-sheet/SKILL.md +23 -0
  162. package/library/skills/store-art/SKILL.md +11 -0
  163. package/library/skills/store-listing/SKILL.md +10 -0
  164. package/library/skills/summer-analytics/SKILL.md +15 -0
  165. package/library/skills/summer-apps/SKILL.md +29 -0
  166. package/library/skills/summer-assets/SKILL.md +31 -1
  167. package/library/skills/summer-assets/resource.yaml +2 -2
  168. package/library/skills/summer-cli/SKILL.md +133 -0
  169. package/library/skills/summer-cli/resource.yaml +31 -0
  170. package/library/skills/summer-friends/SKILL.md +14 -0
  171. package/library/skills/summer-leaderboards/SKILL.md +16 -0
  172. package/library/skills/summer-match-results/SKILL.md +17 -0
  173. package/library/skills/summer-matchmaking/SKILL.md +17 -0
  174. package/library/skills/summer-parties/SKILL.md +14 -0
  175. package/library/skills/summer-player-data/SKILL.md +14 -0
  176. package/library/skills/summer-store/SKILL.md +15 -0
  177. package/library/skills/summer-world-chat/SKILL.md +14 -0
  178. package/library/skills/summer-world-saves/SKILL.md +14 -0
  179. package/library/skills/text-to-motion/SKILL.md +15 -0
  180. package/library/skills/tileable-texture/SKILL.md +18 -0
  181. package/library/skills/trailer-shot/SKILL.md +18 -0
  182. package/library/skills/tune-performance/SKILL.md +26 -0
  183. package/library/skills/ui-basics/SKILL.md +14 -0
  184. package/library/skills/ui-graphics/SKILL.md +17 -0
  185. package/library/skills/use-widget-asset/SKILL.md +14 -0
  186. package/library/skills/using-summer/SKILL.md +26 -0
  187. package/library/skills/using-summer/resource.yaml +2 -1
  188. package/library/skills/vehicle-model/SKILL.md +27 -0
  189. package/library/skills/verifying-scenes/SKILL.md +29 -0
  190. package/library/skills/vfx-dissolve/SKILL.md +19 -0
  191. package/library/skills/vfx-fire/SKILL.md +26 -0
  192. package/library/skills/vfx-hit-spark/SKILL.md +23 -0
  193. package/library/skills/vfx-lightning/SKILL.md +23 -0
  194. package/library/skills/vfx-magic-glow/SKILL.md +23 -0
  195. package/library/skills/vfx-muzzle-flash/SKILL.md +23 -0
  196. package/library/skills/vfx-smoke/SKILL.md +26 -0
  197. package/library/skills/vfx-water-ripple/SKILL.md +23 -0
  198. package/library/skills/voice-line/SKILL.md +16 -0
  199. package/library/skills/web-and-touch-input/SKILL.md +19 -0
  200. package/library/skills/web-compatibility-look/SKILL.md +20 -0
  201. package/library/skills/world-building-3d/SKILL.md +28 -0
  202. package/package.json +3 -2
  203. package/registry/generated/counts.json +2 -2
  204. package/registry/generated/gemini-extension.json +3 -2
  205. package/registry/generated/index.json +157 -118
  206. package/registry/generated/marketplace.claude.json +2 -2
  207. package/registry/generated/plugin.claude-directory.json +168 -0
  208. package/registry/generated/plugin.claude.json +3 -2
  209. package/registry/generated/plugin.codex.json +15 -11
  210. package/registry/generated/plugin.cursor.json +5 -3
  211. package/registry/generated/plugin.factory.json +3 -2
  212. package/registry/generated/server.json +11 -2
  213. package/registry/generated/skills-index.md +5 -4
  214. package/registry/generated/skills-registry.json +16 -2
  215. package/registry/operations/legacy-names.json +35 -0
  216. package/registry/operations/public-catalog.json +33160 -0
@@ -247,3 +247,26 @@ After the animation is wired:
247
247
  - `generate-motion` — 3D-skeletal counterpart.
248
248
  - `sound-effect` — frame-synced SFX.
249
249
  - `summer_docs_read` id `reference/mcp-tools-reference` — how to call `assets.generate_image`.
250
+
251
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
252
+ ## From a shell
253
+
254
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
255
+
256
+ | In this skill | Command |
257
+ |---|---|
258
+ | `assets.generate_image`, `summer_assets_generate_image` | `summer assets generate-image` |
259
+ | `assets.get` | `summer assets get` |
260
+ | `summer_assets_search` | `summer assets search` |
261
+ | `assets.slice_sheet`, `summer_assets_slice_sheet` | `summer assets slice-sheet` |
262
+ | `summer_docs_read` | `summer docs read` |
263
+ | `docs.workflows` | `summer docs workflows` |
264
+ | `summer_add_node` | `summer engine add-node` |
265
+ | `summer_import_asset_by_id` | `summer engine import-asset-by-id` |
266
+ | `summer_import_from_url` | `summer engine import-from-url` |
267
+ | `summer_import_from_url_batch` | `summer engine import-from-url-batch` |
268
+ | `summer_save_scene` | `summer engine save-scene` |
269
+ | `summer_set_prop` | `summer engine set-prop` |
270
+ | `summer_set_resource_property` | `summer engine set-resource-property` |
271
+ | `summer_write_file` | `summer engine write-file` |
272
+ <!-- /shell-commands -->
@@ -21,3 +21,14 @@ Its current text lives on the hosted Summer Engine MCP, the same text the Studio
21
21
  Screenshots: `summer_capture_gameplay` takes them offscreen. Get past the title screen with the game's own flags in `args` or with `steps`, e.g. `{"args":["--autostart"],"steps":[{"wait":3000},{"shot":true},{"key":"Space"},{"wait":800},{"shot":true}]}`.
22
22
 
23
23
  The one rule to keep even before you load it: Key art, covers and icons carry no text: the stores draw the title over them. Screenshots are real play.
24
+
25
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
26
+ ## From a shell
27
+
28
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
29
+
30
+ | In this skill | Command |
31
+ |---|---|
32
+ | `summer_docs_read` | `summer docs read` |
33
+ | `summer_capture_gameplay` | `summer engine capture-gameplay` |
34
+ <!-- /shell-commands -->
@@ -19,3 +19,13 @@ Its current text lives on the hosted Summer Engine MCP, the same text the Studio
19
19
  3. Without a store sign-in: https://docs.summerengine.com/llms.txt lists every docs page; fetch any page as .md.
20
20
 
21
21
  The one rule to keep even before you load it: Never invent features, modes, player counts, awards or prices.
22
+
23
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
24
+ ## From a shell
25
+
26
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
27
+
28
+ | In this skill | Command |
29
+ |---|---|
30
+ | `summer_docs_read` | `summer docs read` |
31
+ <!-- /shell-commands -->
@@ -147,3 +147,18 @@ Every failure is final: none of them asks you to capture again.
147
147
  - `multiplayer` — where the client and the authority run
148
148
  - `multiplayer-state` — the authority's Command handlers, where most events happen
149
149
  - `summer-match-results` — results and ratings, which Summer records itself
150
+
151
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
152
+ ## From a shell
153
+
154
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
155
+
156
+ | In this skill | Command |
157
+ |---|---|
158
+ | `analytics.summary` | `summer analytics summary` |
159
+ | `summer_get_diagnostics` | `summer engine get-diagnostics` |
160
+ | `summer_get_script_errors` | `summer engine get-script-errors` |
161
+ | `summer_play` | `summer engine play` |
162
+ | `summer_stop` | `summer engine stop` |
163
+ | `studio.open` | `summer studio open` |
164
+ <!-- /shell-commands -->
@@ -166,3 +166,32 @@ critical are the person's to press.
166
166
  The app is published; `apps.screenshot` shows it with real data in light, dark and at
167
167
  390 px with no errors; its states (loading, empty, error) work; and the person knows what it
168
168
  does and where its data goes.
169
+
170
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
171
+ ## From a shell
172
+
173
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
174
+
175
+ | In this skill | Command |
176
+ |---|---|
177
+ | `apps.call`, `summer_apps_call` | `summer apps call` |
178
+ | `apps.create`, `summer_apps_create` | `summer apps create` |
179
+ | `apps.dock` | `summer apps dock` |
180
+ | `apps.events`, `summer_apps_events` | `summer apps events` |
181
+ | `apps.get`, `summer_apps_get` | `summer apps get` |
182
+ | `apps.guide`, `summer_apps_guide` | `summer apps guide` |
183
+ | `summer_apps_list` | `summer apps list` |
184
+ | `apps.page`, `summer_apps_page` | `summer apps page` |
185
+ | `apps.publish`, `summer_apps_publish` | `summer apps publish` |
186
+ | `apps.read_data`, `summer_apps_read_data` | `summer apps read-data` |
187
+ | `apps.report_gap`, `summer_apps_report_gap` | `summer apps report-gap` |
188
+ | `apps.screenshot`, `summer_apps_screenshot` | `summer apps screenshot` |
189
+ | `apps.tools`, `summer_apps_tools` | `summer apps tools` |
190
+ | `apps.update`, `summer_apps_update` | `summer apps update` |
191
+ | `apps.use_page`, `summer_apps_use_page` | `summer apps use-page` |
192
+ | `apps.write_data`, `summer_apps_write_data` | `summer apps write-data` |
193
+ | `assets.generate_sfx_choices` | `summer assets generate-sfx-choices` |
194
+ | `docs.feedback` | `summer docs feedback` |
195
+ | `jobs.wait` | `summer jobs wait` |
196
+ | `summer_search` | `summer ops search "<what you want>"` |
197
+ <!-- /shell-commands -->
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: summer-assets
3
- description: "Make game assets with Summer without Summer Engine: find, generate and download 3D models, images, audio and video for any engine or web app."
3
+ description: "Make game assets with Summer, no Summer Engine: find, generate and download 3D models, images, audio and video for any engine or app."
4
4
  license: MIT
5
5
  compatibility: [Cursor, Claude Code, Codex, Windsurf, Gemini, OpenCode, Factory, Copilot]
6
6
  category: _meta
@@ -54,3 +54,33 @@ Each asset is a normal file in the person's Summer library: GLB for 3D models, P
54
54
  | Generating the same asset again to get the file | `assets.get` with `out` on the asset you already have |
55
55
  | Telling the person the asset looks right without a preview | Say what you received, or that no preview came back |
56
56
  | The person wants a whole game, not assets | Say that this needs Summer Engine and the full setup: `npx -y summer-engine@latest setup <agent> --yes` |
57
+
58
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
59
+ ## From a shell
60
+
61
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
62
+
63
+ | In this skill | Command |
64
+ |---|---|
65
+ | `assets.choices` | `summer assets choices` |
66
+ | `assets.generate_3d` | `summer assets generate-3d` |
67
+ | `assets.generate_audio` | `summer assets generate-audio` |
68
+ | `assets.generate_image` | `summer assets generate-image` |
69
+ | `assets.generate_motion` | `summer assets generate-motion` |
70
+ | `assets.generate_sfx_choices` | `summer assets generate-sfx-choices` |
71
+ | `assets.generate_video` | `summer assets generate-video` |
72
+ | `assets.get` | `summer assets get` |
73
+ | `assets.search` | `summer assets search` |
74
+ | `assets.slice_sheet` | `summer assets slice-sheet` |
75
+ | `summer_docs_read` | `summer docs read` |
76
+ | `summer_docs_search` | `summer docs search` |
77
+ | `summer_add_node` | `summer engine add-node` |
78
+ | `summer_get_project_context` | `summer engine get-project-context` |
79
+ | `summer_import_asset_by_id` | `summer engine import-asset-by-id` |
80
+ | `summer_play` | `summer engine play` |
81
+ | `summer_screenshot` | `summer engine screenshot` |
82
+ | `jobs.wait` | `summer jobs wait` |
83
+ | `makers.npc_voice` | `summer makers npc-voice` |
84
+ | `makers.trailer_forge` | `summer makers trailer-forge` |
85
+ | `summer_search` | `summer ops search "<what you want>"` |
86
+ <!-- /shell-commands -->
@@ -1,7 +1,7 @@
1
1
  id: skill/summer-assets
2
2
  kind: skill
3
- version: 1.0.0
4
- summary: "Make game assets with Summer without Summer Engine: find, generate and download 3D models, images, audio and video for any engine or web app."
3
+ version: 1.0.1
4
+ summary: "Make game assets with Summer, no Summer Engine: find, generate and download 3D models, images, audio and video for any engine or app."
5
5
  use_when:
6
6
  - starting a session that has the Summer assets profile (generation tools, no engine tools)
7
7
  - the person wants assets for their own engine or web app, not a game built in Summer Engine
@@ -0,0 +1,133 @@
1
+ ---
2
+ name: summer-cli
3
+ description: "Summer as shell commands, no MCP: sign in, find and run operations, follow jobs, save files, drive the engine."
4
+ license: MIT
5
+ compatibility: [Cursor, Claude Code, Codex, Windsurf, Gemini, OpenCode, Factory, Copilot]
6
+ category: _meta
7
+ allowed-tools: Bash Read
8
+ ---
9
+
10
+ # Summer from the shell
11
+
12
+ Use this skill when the session has no `summer_*` MCP tools (Summer was set up with `summer setup <agent> --cli`), or when a script or CI job runs Summer. Every Summer capability is an operation named `area.action`, and every operation is one command: `summer <area> <action>`. The commands run the same code as the MCP tools and give the same answers.
13
+
14
+ First run `summer --version`. If the shell does not find `summer`, or the version is below 4.0 (an old global install, which has no `summer <area> <action>` commands), put `npx -y summer-engine@latest` in place of `summer`, with the same arguments. In Windows PowerShell, write `npx.cmd`.
15
+
16
+ ## The five commands in a game project
17
+
18
+ <!-- project-commands: the AGENTS.md that summer create and summer setup write copies this list -->
19
+ 1. `summer run .` opens the project in Summer Engine. An agent's run stays in the background.
20
+ 2. `summer engine get-project-context` (MCP: `summer_get_project_context`) reads the project, its main scene and the engine version. Run it first.
21
+ 3. `summer engine play`, then `summer engine get-diagnostics` (MCP: `summer_play`, `summer_get_diagnostics`), runs the game and reads its errors. `summer engine stop` (`summer_stop`) ends it.
22
+ 4. `summer engine screenshot` (MCP: `summer_screenshot`) saves an image of the editor or the running game. Open its `localPath` to look.
23
+ 5. `summer ops search "<what you want>"` (MCP: `summer_search`) finds any other operation. Run it as `summer <area> <action>` (MCP: `summer_call`), with `--dry-run` first for a change.
24
+ <!-- /project-commands -->
25
+
26
+ ## 1. Sign in once
27
+
28
+ ```bash
29
+ summer login # opens the browser: the Summer account, then the store and cloud operations
30
+ summer whoami # who is signed in, and their credits
31
+ ```
32
+
33
+ Cloud operations (generation, the asset library, the store, publishing, analytics) need the sign-in. Engine commands do not. Run `summer login` in the foreground, once. Tell the person that their browser opens, and wait for them.
34
+
35
+ ## 2. Find the operation
36
+
37
+ ```bash
38
+ summer ops search "make a sound effect" # the best matches: name, effect, title
39
+ summer ops describe assets.generate_audio # the exact input: fields, types, which are required
40
+ ```
41
+
42
+ Describe the job in plain words. `--area assets` keeps one area. Without a sign-in, search and describe still find every operation: a cloud one shows `(needs sign-in)` and runs after `summer login`.
43
+
44
+ For a guide instead of an operation, search the library: `summer docs search --query "<the task>"`, then `summer docs read --id <id>`. Both work offline. Then follow the skill it names.
45
+
46
+ Each Summer skill ends with a **From a shell** table: the command for each MCP tool and operation the skill names. A skill that says `summer_play` or `assets.generate_image` means `summer engine play` or `summer assets generate-image`.
47
+
48
+ ## 3. Run it
49
+
50
+ ```bash
51
+ summer assets generate-image --dry-run --prompt "a cozy pixel-art tavern" --aspect-ratio 16:9
52
+ summer engine set-prop --scene-path res://main.tscn --path Player --key position --value "Vector3(0, 1, 0)"
53
+ summer store status --game-id <id> --json
54
+ ```
55
+
56
+ - Actions and fields are kebab-case: `aspectRatio` is `--aspect-ratio`, `look_at` is `--look-at`.
57
+ - `--<field>` alone sets a boolean field to true; `--no-<field>` sets it to false. Repeat a flag to give a list.
58
+ - Objects, and anything hard to quote, go in `--input '<json>'`. A flag wins over the same key in `--input`.
59
+ - `--dry-run` checks the input and changes nothing. For a spend it shows the estimate in credits. Put it right after the action: after `summer setup <agent> --cli --allow-rules --yes` (run that only when the person asks for it), Claude Code and Codex run it without asking (and the reads). Before each generation or other spend: dry-run it, tell the person what you will make, and wait for a yes.
60
+ - `--idempotency-key <key>` makes a retry safe: Summer runs a change once per key.
61
+ - `--json` prints only the answer: `{"ok":true,"status":"done","result":{...}}`. The exit code is 0 for every `ok` answer and 1 for an error.
62
+
63
+ ## 4. Long jobs
64
+
65
+ 3D, video, animation, builds and uploads answer `Started: job <id>` with the command that follows the job.
66
+
67
+ ```bash
68
+ summer assets generate-3d --prompt "a wooden barrel" --wait # runs, then follows the job to the end
69
+ summer jobs wait --job-id <id> --timeout-seconds 50 # run it again until finished is true
70
+ ```
71
+
72
+ Do not run the same change again to get its result. Wait on the job.
73
+
74
+ ## 5. Approvals
75
+
76
+ A publish or another live change can answer `Needs approval` with a link. Give the person that link: nothing changes until they approve. Follow it with `summer jobs wait --job-id <id>` (or `--wait` on the call) until it ends: `done`, `declined`, `expired` or `stale`. Never approve for the person.
77
+
78
+ ## 6. Files
79
+
80
+ - `--out <folder or file>` on a generate command, on `summer jobs wait` or on `summer assets get` saves the file there. In a Godot project, `res://` paths work. The answer adds `localPath`.
81
+ - Without `--out`, a generation run inside a game project saves into its asset folder: Godot `assets/`, Unity `Assets/Summer`, Unreal `Content/Summer`, three.js `public/assets`. Outside a project, give `--out`.
82
+ - `summer assets get --asset-id <id>` saves only with `--out`.
83
+ - A save never overwrites a file. Tell the person the `localPath`.
84
+
85
+ ## 7. The engine
86
+
87
+ Engine commands (`summer engine …`) drive the Summer Engine app on this machine. The app must run with the project open.
88
+
89
+ ```bash
90
+ summer status # is the engine up, and the sign-in
91
+ summer run ./my-game # opens the project; for an agent, in the background
92
+ summer engine get-project-context # first call: project, main scene, engine version
93
+ summer engine get-scene-tree --scene-path res://main.tscn --depth 2
94
+ summer engine screenshot # the answer's localPath is an image: open it to look
95
+ ```
96
+
97
+ - Values are engine value strings, not JSON: `"Vector3(0, 10, 0)"`, `"Color(1, 0.5, 0, 1)"`. A resource is its class name: `"BoxMesh"`.
98
+ - Name the scene in every change: `--scene-path res://<scene>.tscn`.
99
+ - 3 or more scene edits are one script, not a chain of commands. Write a `func run(ctx):` that ends with `ctx.save_scene()` to a file, then run `summer engine run-script --scene-path res://main.tscn --source "$(cat build.gd)"`. The `scene-scripting` skill has the script API.
100
+ - With more than one editor open, set `SUMMER_ENGINE_PROJECT` to the project folder so the command picks the right one.
101
+ - `summer tool <slug> --args '<json>'` runs an engine tool by its 3.x name too. `summer tool --list` lists them.
102
+
103
+ ## Without Summer Engine
104
+
105
+ Everything except section 7 works without the app: the sign-in, the library, generation, assets and files, the store and analytics. Skip the `summer engine …` commands; there they answer `engine_not_running`. For assets for another engine or a web app, follow the `summer-assets` skill and stop at the file.
106
+
107
+ ## 8. Errors
108
+
109
+ An error prints `Error (<code>): <message>` and one `Next:` step, and exits 1. Do the next step. Retry only when the table says so.
110
+
111
+ | Code | Do this |
112
+ |---|---|
113
+ | `not_signed_in` | Run the command in `Next` (`summer login`), then the same command again. |
114
+ | `engine_not_running` | Open the project in Summer Engine, or `summer run <project-path>`. Then run it again. |
115
+ | `engine_lacks_op` | This engine build is too old for the command. Use the fallback the message names, or ask the person to update Summer Engine. |
116
+ | `invalid_input` | `summer ops describe <op>`, fix the flags, run it again. |
117
+ | `no_credits` | Give the person the link in `Next`. Do not run it again until they say they added credits. |
118
+ | `forbidden` | Summer refused this account. The person checks it in Summer Studio. |
119
+ | `not_found` | Check the id (the area's `list` command), or find the right operation with `summer ops search`. |
120
+ | `rate_limited`, `unavailable` | Nothing ran. Wait a minute and run it again. If it repeats, tell the person the message. |
121
+ | `outcome_unknown` | The change may have run. Run it again only with the same `--idempotency-key`, or check first. |
122
+ | `in_progress` | The same change is still running. Wait, then follow its job or run it again with the same `--idempotency-key`. |
123
+ | `idempotency_conflict` | That key was used for a different input. A new change needs a new key. |
124
+ | `conflict` | The state changed, or a job or approval ended without running (declined, expired, stale or cancelled). Check the current state; start again only if the person wants it. |
125
+ | `over_limit` | A plan limit or cap was reached. Give the person the message and the link in `Next`. Do not retry. |
126
+ | `unsupported` | Summer cannot do this yet, or not here. Tell the person the message. Do not retry. |
127
+ | `internal` | Summer failed on its side. Run it once more; if it fails again, tell the person the message. |
128
+
129
+ ## Done means
130
+
131
+ - You ran each command and read its answer. Do not report an answer you did not get.
132
+ - Every spend had a dry run and a yes from the person first.
133
+ - Every file you made is saved, and you told the person its `localPath`.
@@ -0,0 +1,31 @@
1
+ id: skill/summer-cli
2
+ kind: skill
3
+ version: 1.0.1
4
+ summary: "Summer as shell commands, no MCP: sign in, find and run operations, follow jobs, save files, drive the engine."
5
+ use_when:
6
+ - the session has no summer_* MCP tools, or Summer was set up with summer setup <agent> --cli
7
+ - running a Summer operation, a generation or an engine change from a shell, a script or CI
8
+ - a skill names an MCP tool or an operation and you need the summer command that runs it
9
+ do_not_use_when:
10
+ - the session lists Summer's MCP tools; call them directly (the using-summer skill)
11
+ facets:
12
+ lifecycle:
13
+ - build
14
+ domains:
15
+ - agent-workflow
16
+ - assets
17
+ - tools
18
+ modalities:
19
+ - docs
20
+ related:
21
+ tools:
22
+ - tool/search-library
23
+ - tool/read-library
24
+ skills:
25
+ - skill/using-summer
26
+ - skill/summer-assets
27
+ - skill/scene-scripting
28
+ source: official
29
+ license: MIT
30
+ status: preview
31
+ recommended: true
@@ -224,3 +224,17 @@ and revoke access in the Summer app, and watch `access_changed`.
224
224
  - `summer-world-chat`: chat inside a match
225
225
  - `multiplayer-publish`: `summer.build.json` and publishing a Build
226
226
  - `multiplayer-testing`: what Local Play can and can't test
227
+
228
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
229
+ ## From a shell
230
+
231
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
232
+
233
+ | In this skill | Command |
234
+ |---|---|
235
+ | `summer_get_diagnostics` | `summer engine get-diagnostics` |
236
+ | `summer_get_script_errors` | `summer engine get-script-errors` |
237
+ | `summer_play` | `summer engine play` |
238
+ | `summer_project_setting` | `summer engine project-setting` |
239
+ | `summer_stop` | `summer engine stop` |
240
+ <!-- /shell-commands -->
@@ -229,3 +229,19 @@ on them.
229
229
  - `summer-match-results` — concluding matches, which moves ratings
230
230
  - `summer-matchmaking` — declaring rated queues and teams
231
231
  - `summer-player-data` — saving per-player progress that isn't a ranking
232
+
233
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
234
+ ## From a shell
235
+
236
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
237
+
238
+ | In this skill | Command |
239
+ |---|---|
240
+ | `summer_get_diagnostics` | `summer engine get-diagnostics` |
241
+ | `summer_get_script_errors` | `summer engine get-script-errors` |
242
+ | `summer_play` | `summer engine play` |
243
+ | `summer_read_file` | `summer engine read-file` |
244
+ | `summer_replace_text` | `summer engine replace-text` |
245
+ | `summer_stop` | `summer engine stop` |
246
+ | `summer_write_file` | `summer engine write-file` |
247
+ <!-- /shell-commands -->
@@ -284,3 +284,20 @@ clients stay connected until they leave.
284
284
  - `summer-leaderboards` — ratings and `authority_v1` rating moves
285
285
  - `summer-world-saves` — persistent Worlds that outlive a match
286
286
  - `multiplayer-testing` — running bots through a whole match
287
+
288
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
289
+ ## From a shell
290
+
291
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
292
+
293
+ | In this skill | Command |
294
+ |---|---|
295
+ | `summer_get_diagnostics` | `summer engine get-diagnostics` |
296
+ | `summer_get_script_errors` | `summer engine get-script-errors` |
297
+ | `summer_play` | `summer engine play` |
298
+ | `summer_project_setting` | `summer engine project-setting` |
299
+ | `summer_read_file` | `summer engine read-file` |
300
+ | `summer_replace_text` | `summer engine replace-text` |
301
+ | `summer_stop` | `summer engine stop` |
302
+ | `summer_write_file` | `summer engine write-file` |
303
+ <!-- /shell-commands -->
@@ -299,3 +299,20 @@ Test the accept prompt and rating-based grouping on a hosted staging build.
299
299
  - `summer-leaderboards` — ratings and leaderboards for rated queues
300
300
  - `summer-parties` — friends entering a queue together
301
301
  - `multiplayer-testing` — Local Play options and bots
302
+
303
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
304
+ ## From a shell
305
+
306
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
307
+
308
+ | In this skill | Command |
309
+ |---|---|
310
+ | `summer_get_diagnostics` | `summer engine get-diagnostics` |
311
+ | `summer_get_script_errors` | `summer engine get-script-errors` |
312
+ | `summer_play` | `summer engine play` |
313
+ | `summer_project_setting` | `summer engine project-setting` |
314
+ | `summer_read_file` | `summer engine read-file` |
315
+ | `summer_replace_text` | `summer engine replace-text` |
316
+ | `summer_stop` | `summer engine stop` |
317
+ | `summer_write_file` | `summer engine write-file` |
318
+ <!-- /shell-commands -->
@@ -251,3 +251,17 @@ summer_stop
251
251
  - `summer-friends`: friends list, profiles and messages
252
252
  - `multiplayer-project`: the client entry scene this extends
253
253
  - `multiplayer-testing`: Local Play, and what needs staging
254
+
255
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
256
+ ## From a shell
257
+
258
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
259
+
260
+ | In this skill | Command |
261
+ |---|---|
262
+ | `summer_get_diagnostics` | `summer engine get-diagnostics` |
263
+ | `summer_get_script_errors` | `summer engine get-script-errors` |
264
+ | `summer_play` | `summer engine play` |
265
+ | `summer_project_setting` | `summer engine project-setting` |
266
+ | `summer_stop` | `summer engine stop` |
267
+ <!-- /shell-commands -->
@@ -320,3 +320,17 @@ folder to start over.
320
320
  - `summer-world-saves` — saving a whole persistent World instead of one player
321
321
  - `multiplayer-testing` — bots and repeated Local Play runs
322
322
  - `summer-leaderboards` — scores other players can see
323
+
324
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
325
+ ## From a shell
326
+
327
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
328
+
329
+ | In this skill | Command |
330
+ |---|---|
331
+ | `summer_get_diagnostics` | `summer engine get-diagnostics` |
332
+ | `summer_get_script_errors` | `summer engine get-script-errors` |
333
+ | `summer_play` | `summer engine play` |
334
+ | `summer_project_setting` | `summer engine project-setting` |
335
+ | `summer_stop` | `summer engine stop` |
336
+ <!-- /shell-commands -->
@@ -269,3 +269,18 @@ Walk through every outcome:
269
269
  - `multiplayer-testing`: Local Play fixtures and personas
270
270
  - `summer-player-data`: saving a player's loadout between matches
271
271
  - `summer-analytics`: measuring the shop
272
+
273
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
274
+ ## From a shell
275
+
276
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
277
+
278
+ | In this skill | Command |
279
+ |---|---|
280
+ | `summer_get_diagnostics` | `summer engine get-diagnostics` |
281
+ | `summer_get_script_errors` | `summer engine get-script-errors` |
282
+ | `summer_play` | `summer engine play` |
283
+ | `summer_project_setting` | `summer engine project-setting` |
284
+ | `summer_stop` | `summer engine stop` |
285
+ | `studio.open` | `summer studio open` |
286
+ <!-- /shell-commands -->
@@ -193,3 +193,17 @@ Then test real chat on Summer staging with two accounts in one match.
193
193
  - `summer-friends`: direct messages with friends
194
194
  - `summer-parties`: party chat lives in the Summer app
195
195
  - `multiplayer-testing`: what Local Play can and can't test
196
+
197
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
198
+ ## From a shell
199
+
200
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
201
+
202
+ | In this skill | Command |
203
+ |---|---|
204
+ | `summer_get_diagnostics` | `summer engine get-diagnostics` |
205
+ | `summer_get_script_errors` | `summer engine get-script-errors` |
206
+ | `summer_play` | `summer engine play` |
207
+ | `summer_project_setting` | `summer engine project-setting` |
208
+ | `summer_stop` | `summer engine stop` |
209
+ <!-- /shell-commands -->
@@ -282,3 +282,17 @@ Restoring after a real restart can only be proven hosted.
282
282
  - `multiplayer-state` — the shared document this skill saves
283
283
  - `multiplayer-project` — `world.json` and the authority scene
284
284
  - `multiplayer-testing` — Local Play runs and markers
285
+
286
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
287
+ ## From a shell
288
+
289
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
290
+
291
+ | In this skill | Command |
292
+ |---|---|
293
+ | `summer_get_diagnostics` | `summer engine get-diagnostics` |
294
+ | `summer_get_script_errors` | `summer engine get-script-errors` |
295
+ | `summer_play` | `summer engine play` |
296
+ | `summer_project_setting` | `summer engine project-setting` |
297
+ | `summer_stop` | `summer engine stop` |
298
+ <!-- /shell-commands -->
@@ -104,3 +104,18 @@ In a session without Summer Engine tools (the assets profile; the `summer-assets
104
104
  Done means the chosen clips are imported and playing on the model in the scene. For a
105
105
  playable character continue with `character-animation-wiring`; for state machines,
106
106
  `animation-tree`.
107
+
108
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
109
+ ## From a shell
110
+
111
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
112
+
113
+ | In this skill | Command |
114
+ |---|---|
115
+ | `assets.generate_3d` | `summer assets generate-3d` |
116
+ | `assets.generate_motion`, `summer_assets_generate_motion` | `summer assets generate-motion` |
117
+ | `assets.get`, `summer_assets_get` | `summer assets get` |
118
+ | `assets.search`, `summer_assets_search` | `summer assets search` |
119
+ | `summer_import_asset_by_id` | `summer engine import-asset-by-id` |
120
+ | `jobs.wait`, `summer_jobs_wait` | `summer jobs wait` |
121
+ <!-- /shell-commands -->
@@ -213,3 +213,21 @@ After the texture is wired:
213
213
  - `skybox-panorama` — sky/environment counterpart.
214
214
  - `scene-composition` — applying textures to CSG and MeshInstance3D.
215
215
  - `summer_docs_read` id `reference/mcp-tools-reference` — how to call `assets.generate_image`.
216
+
217
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
218
+ ## From a shell
219
+
220
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
221
+
222
+ | In this skill | Command |
223
+ |---|---|
224
+ | `assets.generate_image`, `summer_assets_generate_image` | `summer assets generate-image` |
225
+ | `summer_assets_search` | `summer assets search` |
226
+ | `summer_docs_read` | `summer docs read` |
227
+ | `summer_add_node` | `summer engine add-node` |
228
+ | `summer_import_from_url` | `summer engine import-from-url` |
229
+ | `summer_inspect_node` | `summer engine inspect-node` |
230
+ | `summer_save_scene` | `summer engine save-scene` |
231
+ | `summer_set_prop` | `summer engine set-prop` |
232
+ | `summer_set_resource_property` | `summer engine set-resource-property` |
233
+ <!-- /shell-commands -->
@@ -214,3 +214,21 @@ Once the shots are generated:
214
214
  - `sound-effect` — cut SFX (whooshes, impacts, stingers).
215
215
  - `concept-art` — generate the reference image axis when no asset exists yet.
216
216
  - `summer_docs_read` id `reference/mcp-tools-reference` — how to call `assets.generate_video`; `summer_search` returns its exact input.
217
+
218
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
219
+ ## From a shell
220
+
221
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
222
+
223
+ | In this skill | Command |
224
+ |---|---|
225
+ | `assets.generate_image`, `summer_assets_generate_image` | `summer assets generate-image` |
226
+ | `assets.generate_video`, `summer_assets_generate_video` | `summer assets generate-video` |
227
+ | `summer_assets_search` | `summer assets search` |
228
+ | `summer_docs_read` | `summer docs read` |
229
+ | `summer_add_node` | `summer engine add-node` |
230
+ | `summer_import_from_url` | `summer engine import-from-url` |
231
+ | `summer_set_prop` | `summer engine set-prop` |
232
+ | `jobs.wait`, `summer_jobs_wait` | `summer jobs wait` |
233
+ | `summer_search` | `summer ops search "<what you want>"` |
234
+ <!-- /shell-commands -->
@@ -236,3 +236,29 @@ No template — this is a workflow. Performance tuning is project-specific by de
236
236
  - `debug` — bug triage (related but different)
237
237
  - `diagnosing-perf-regressions` — when it *got* slow rather than always was
238
238
  - `3d-lighting` — light setup and bake decisions
239
+
240
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
241
+ ## From a shell
242
+
243
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
244
+
245
+ | In this skill | Command |
246
+ |---|---|
247
+ | `summer_docs_read` | `summer docs read` |
248
+ | `summer_add_node` | `summer engine add-node` |
249
+ | `summer_batch` | `summer engine batch` |
250
+ | `summer_clear_console` | `summer engine clear-console` |
251
+ | `summer_get_console` | `summer engine get-console` |
252
+ | `summer_get_diagnostics` | `summer engine get-diagnostics` |
253
+ | `summer_get_scene_tree` | `summer engine get-scene-tree` |
254
+ | `summer_inspect_node` | `summer engine inspect-node` |
255
+ | `summer_inspect_resource` | `summer engine inspect-resource` |
256
+ | `summer_is_running` | `summer engine is-running` |
257
+ | `summer_play` | `summer engine play` |
258
+ | `summer_project_setting` | `summer engine project-setting` |
259
+ | `summer_run_script` | `summer engine run-script` |
260
+ | `summer_save_scene` | `summer engine save-scene` |
261
+ | `summer_screenshot` | `summer engine screenshot` |
262
+ | `summer_set_prop` | `summer engine set-prop` |
263
+ | `summer_stop` | `summer engine stop` |
264
+ <!-- /shell-commands -->
@@ -172,3 +172,17 @@ text = "Start Game"
172
172
  ## Collaborative protocol
173
173
 
174
174
  This skill writes UI scene nodes and wires button signals. Always ask before applying: "May I add the MainMenu (Control + Margin + VBox + Title + Start/Quit buttons) and connect Start.pressed to `_on_start_pressed`?".
175
+
176
+ <!-- shell-commands: generated from the operation catalog by npm run generate:registry; do not edit by hand -->
177
+ ## From a shell
178
+
179
+ No Summer MCP tools in this session? Run each one as a command; when `summer --version` is missing or below 4.0, use `npx -y summer-engine@latest` in place of `summer`. Fields are flags in kebab-case (`--scene-path res://main.tscn`) or one `--input '<json>'`, and `summer ops describe <op>` prints the exact input. The `summer-cli` skill has the rest.
180
+
181
+ | In this skill | Command |
182
+ |---|---|
183
+ | `summer_add_node` | `summer engine add-node` |
184
+ | `summer_connect_signal` | `summer engine connect-signal` |
185
+ | `summer_run_script` | `summer engine run-script` |
186
+ | `summer_save_scene` | `summer engine save-scene` |
187
+ | `summer_set_prop` | `summer engine set-prop` |
188
+ <!-- /shell-commands -->