summer-engine 1.2.1 → 1.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 (31) hide show
  1. package/LICENSE +21 -0
  2. package/dist/commands/skills.js +9 -3
  3. package/dist/lib/skills-registry.d.ts +17 -11
  4. package/dist/lib/skills-registry.js +36 -11
  5. package/package.json +1 -1
  6. package/skills/README.md +96 -0
  7. package/skills/_meta/skill-create/SKILL.md +143 -0
  8. package/skills/_meta/skill-improve/SKILL.md +89 -0
  9. package/skills/_meta/skill-test/SKILL.md +86 -0
  10. package/skills/_shared/collaborative-protocol.md +50 -0
  11. package/skills/_shared/gd-style.md +121 -0
  12. package/skills/_shared/godot-version.md +32 -0
  13. package/skills/_shared/mcp-tools-reference.md +133 -0
  14. package/skills/_shared/template-registry.md +40 -0
  15. package/skills/_tests/runner.md +90 -0
  16. package/skills/_tests/specs/3d-lighting.md +19 -0
  17. package/skills/_tests/specs/asset-strategy.md +19 -0
  18. package/skills/_tests/specs/fps-controller.md +100 -0
  19. package/skills/_tests/specs/gdscript-patterns.md +19 -0
  20. package/skills/_tests/specs/make-game.md +19 -0
  21. package/skills/_tests/specs/scene-composition.md +19 -0
  22. package/skills/_tests/specs/ui-basics.md +19 -0
  23. package/skills/{asset-strategy → asset-pipeline/asset-strategy}/SKILL.md +4 -5
  24. package/skills/catalog.yaml +636 -0
  25. package/skills/{fps-controller → character-controllers/fps-controller}/SKILL.md +6 -5
  26. package/skills/{3d-lighting → rendering-and-lighting/3d-lighting}/SKILL.md +5 -5
  27. package/skills/{make-game → scene-and-project/make-game}/SKILL.md +5 -5
  28. package/skills/{scene-composition → scene-and-project/scene-composition}/SKILL.md +5 -5
  29. package/skills/{gdscript-patterns → scripting-patterns/gdscript-patterns}/SKILL.md +5 -5
  30. package/skills/{ui-basics → ui-and-ux/ui-basics}/SKILL.md +5 -5
  31. /package/skills/{gdscript-patterns → scripting-patterns/gdscript-patterns}/reference.md +0 -0
@@ -0,0 +1,19 @@
1
+ # Skill Spec: /ui-basics
2
+
3
+ > Stub spec. Expand with Happy / Failure / Edge cases. See `fps-controller.md` for the canonical format.
4
+
5
+ ## Fixture
6
+
7
+ - TBD
8
+
9
+ ## Case 1: Happy Path
10
+
11
+ **Input:** "<typical user prompt>"
12
+
13
+ **Expected MCP tool sequence (in order):**
14
+
15
+ 1. TBD
16
+
17
+ **Assertions:**
18
+
19
+ - [ ] TBD
@@ -1,11 +1,10 @@
1
1
  ---
2
2
  name: asset-strategy
3
- description: Decision guide for how to create different game asset types. Use when deciding whether to generate 3D models, textures, or use primitives. Includes prompt templates for AI image-to-3D pipeline.
3
+ description: Decision guide for how to create different game asset types — generated 3D, library search, AI textures, or primitives. Use when planning asset creation, picking an asset pipeline, or writing image-to-3D prompts. Trigger on "assets", "3D models", "textures", "art pipeline".
4
4
  license: MIT
5
- compatibility:
6
- - Cursor
7
- - Claude Code
8
- - Windsurf
5
+ compatibility: [Cursor, Claude Code, Windsurf, Codex]
6
+ category: asset-pipeline
7
+ allowed-tools: Read Grep summer_search_assets summer_import_asset summer_generate_image summer_generate_3d summer_generate_audio summer_import_from_url
9
8
  ---
10
9
 
11
10
  # Asset Strategy for Summer Engine
@@ -0,0 +1,636 @@
1
+ # Summer Skill Library Catalog
2
+ # Canonical registry of every skill. Source of truth for `summer skills list` and `summer skills install`.
3
+ # Status: HAVE = ships today, NEXT = next wave, LATER = roadmap.
4
+ # When adding/changing a skill, update this file in the same commit.
5
+
6
+ version: 1
7
+ generated: 2026-05-05
8
+
9
+ skills:
10
+ # ── character-controllers ──
11
+ - name: fps-controller
12
+ category: character-controllers
13
+ status: HAVE
14
+ template-id: template-3d-fps
15
+ public: true
16
+ recommended: true
17
+ last-tested: 2026-05-05
18
+ - name: tps-controller
19
+ category: character-controllers
20
+ status: NEXT
21
+ template-id: template-3d-tps
22
+ public: true
23
+ recommended: false
24
+ - name: platformer-2d
25
+ category: character-controllers
26
+ status: NEXT
27
+ template-id: template-2d-platformer
28
+ public: true
29
+ recommended: false
30
+ - name: platformer-3d
31
+ category: character-controllers
32
+ status: NEXT
33
+ template-id: template-3d-platformer
34
+ public: true
35
+ recommended: false
36
+ - name: top-down-2d
37
+ category: character-controllers
38
+ status: NEXT
39
+ public: true
40
+ recommended: false
41
+ - name: vehicle-arcade
42
+ category: character-controllers
43
+ status: LATER
44
+ public: true
45
+ - name: flying-and-swimming
46
+ category: character-controllers
47
+ status: LATER
48
+ public: true
49
+
50
+ # ── gameplay-mechanics ──
51
+ - name: melee-combat
52
+ category: gameplay-mechanics
53
+ status: NEXT
54
+ public: true
55
+ - name: ranged-projectile-combat
56
+ category: gameplay-mechanics
57
+ status: NEXT
58
+ public: true
59
+ - name: hitboxes-and-hurtboxes
60
+ category: gameplay-mechanics
61
+ status: NEXT
62
+ public: true
63
+ - name: damage-numbers
64
+ category: gameplay-mechanics
65
+ status: NEXT
66
+ public: true
67
+ - name: inventory-system
68
+ category: gameplay-mechanics
69
+ status: NEXT
70
+ public: true
71
+ - name: dialogue-system
72
+ category: gameplay-mechanics
73
+ status: NEXT
74
+ public: true
75
+ - name: save-load
76
+ category: gameplay-mechanics
77
+ status: NEXT
78
+ public: true
79
+ - name: interaction-prompts
80
+ category: gameplay-mechanics
81
+ status: NEXT
82
+ public: true
83
+ - name: crafting-system
84
+ category: gameplay-mechanics
85
+ status: LATER
86
+ public: true
87
+ - name: quest-system
88
+ category: gameplay-mechanics
89
+ status: LATER
90
+ public: true
91
+ - name: progression-and-skill-trees
92
+ category: gameplay-mechanics
93
+ status: LATER
94
+ public: true
95
+ - name: economy-currency
96
+ category: gameplay-mechanics
97
+ status: LATER
98
+ public: true
99
+
100
+ # ── scripting-patterns ──
101
+ - name: gdscript-patterns
102
+ category: scripting-patterns
103
+ status: HAVE
104
+ public: true
105
+ recommended: true
106
+ last-tested: 2026-05-05
107
+ - name: signal-patterns
108
+ category: scripting-patterns
109
+ status: NEXT
110
+ public: true
111
+ recommended: false
112
+ - name: state-machine-patterns
113
+ category: scripting-patterns
114
+ status: NEXT
115
+ public: true
116
+ recommended: false
117
+ - name: autoloads-and-singletons
118
+ category: scripting-patterns
119
+ status: NEXT
120
+ public: true
121
+ - name: error-recovery
122
+ category: scripting-patterns
123
+ status: NEXT
124
+ public: true
125
+ - name: gdextension-cpp-bindings
126
+ category: scripting-patterns
127
+ status: LATER
128
+ public: true
129
+ - name: godot-csharp-interop
130
+ category: scripting-patterns
131
+ status: LATER
132
+ public: true
133
+
134
+ # ── scene-and-project ──
135
+ - name: scene-composition
136
+ category: scene-and-project
137
+ status: HAVE
138
+ public: true
139
+ recommended: true
140
+ last-tested: 2026-05-05
141
+ - name: make-game
142
+ category: scene-and-project
143
+ status: HAVE
144
+ public: true
145
+ recommended: false
146
+ last-tested: 2026-05-05
147
+ - name: godot-project-conventions
148
+ category: scene-and-project
149
+ status: NEXT
150
+ public: true
151
+ - name: summer-mcp-bootstrap
152
+ category: scene-and-project
153
+ status: NEXT
154
+ public: true
155
+ - name: git-lfs-for-games
156
+ category: scene-and-project
157
+ status: NEXT
158
+ public: true
159
+ - name: scene-instancing-patterns
160
+ category: scene-and-project
161
+ status: NEXT
162
+ public: true
163
+ - name: level-streaming
164
+ category: scene-and-project
165
+ status: LATER
166
+ public: true
167
+ - name: nested-scenes
168
+ category: scene-and-project
169
+ status: LATER
170
+ public: true
171
+
172
+ # ── rendering-and-lighting ──
173
+ - name: 3d-lighting
174
+ category: rendering-and-lighting
175
+ status: HAVE
176
+ public: true
177
+ recommended: true
178
+ last-tested: 2026-05-05
179
+ - name: pbr-materials
180
+ category: rendering-and-lighting
181
+ status: NEXT
182
+ public: true
183
+ - name: world-environment-and-sky
184
+ category: rendering-and-lighting
185
+ status: NEXT
186
+ public: true
187
+ - name: baked-vs-realtime-lighting
188
+ category: rendering-and-lighting
189
+ status: NEXT
190
+ public: true
191
+ - name: volumetric-fog
192
+ category: rendering-and-lighting
193
+ status: LATER
194
+ public: true
195
+ - name: ssr-glass-water
196
+ category: rendering-and-lighting
197
+ status: LATER
198
+ public: true
199
+ - name: light-probes
200
+ category: rendering-and-lighting
201
+ status: LATER
202
+ public: true
203
+ - name: gi-sdfgi
204
+ category: rendering-and-lighting
205
+ status: LATER
206
+ public: true
207
+
208
+ # ── shaders ──
209
+ - name: shader-basics
210
+ category: shaders
211
+ status: NEXT
212
+ public: true
213
+ - name: surface-shaders
214
+ category: shaders
215
+ status: NEXT
216
+ public: true
217
+ - name: screen-space-effects
218
+ category: shaders
219
+ status: NEXT
220
+ public: true
221
+ - name: fresnel-and-rim-light
222
+ category: shaders
223
+ status: NEXT
224
+ public: true
225
+ - name: dissolve-effect
226
+ category: shaders
227
+ status: NEXT
228
+ public: true
229
+ - name: water-shader
230
+ category: shaders
231
+ status: NEXT
232
+ public: true
233
+ - name: outline-shader
234
+ category: shaders
235
+ status: NEXT
236
+ public: true
237
+ - name: hologram-shader
238
+ category: shaders
239
+ status: LATER
240
+ public: true
241
+ - name: toon-shading
242
+ category: shaders
243
+ status: LATER
244
+ public: true
245
+ - name: compute-shaders
246
+ category: shaders
247
+ status: LATER
248
+ public: true
249
+
250
+ # ── visual-effects ──
251
+ - name: gpuparticles-3d-basics
252
+ category: visual-effects
253
+ status: NEXT
254
+ public: true
255
+ - name: hit-impact-flashes
256
+ category: visual-effects
257
+ status: NEXT
258
+ public: true
259
+ - name: trail-renderers
260
+ category: visual-effects
261
+ status: NEXT
262
+ public: true
263
+ - name: muzzle-flashes
264
+ category: visual-effects
265
+ status: NEXT
266
+ public: true
267
+ - name: explosion-recipes
268
+ category: visual-effects
269
+ status: NEXT
270
+ public: true
271
+ - name: magic-spell-effects
272
+ category: visual-effects
273
+ status: LATER
274
+ public: true
275
+ - name: weather-fx
276
+ category: visual-effects
277
+ status: LATER
278
+ public: true
279
+ - name: decals
280
+ category: visual-effects
281
+ status: LATER
282
+ public: true
283
+
284
+ # ── post-processing ──
285
+ - name: bloom-and-glow
286
+ category: post-processing
287
+ status: NEXT
288
+ public: true
289
+ - name: color-grading
290
+ category: post-processing
291
+ status: NEXT
292
+ public: true
293
+ - name: screen-shake
294
+ category: post-processing
295
+ status: NEXT
296
+ public: true
297
+ - name: camera-effects
298
+ category: post-processing
299
+ status: NEXT
300
+ public: true
301
+
302
+ # ── animation ──
303
+ - name: animation-tree-basics
304
+ category: animation
305
+ status: NEXT
306
+ public: true
307
+ - name: state-machine-anim
308
+ category: animation
309
+ status: NEXT
310
+ public: true
311
+ - name: retargeting
312
+ category: animation
313
+ status: NEXT
314
+ public: true
315
+ - name: procedural-animation-ik
316
+ category: animation
317
+ status: LATER
318
+ public: true
319
+ - name: root-motion
320
+ category: animation
321
+ status: LATER
322
+ public: true
323
+ - name: lip-sync
324
+ category: animation
325
+ status: LATER
326
+ public: true
327
+
328
+ # ── audio ──
329
+ - name: audio-bus-setup
330
+ category: audio
331
+ status: NEXT
332
+ public: true
333
+ - name: 3d-spatial-audio
334
+ category: audio
335
+ status: NEXT
336
+ public: true
337
+ - name: sfx-pipeline
338
+ category: audio
339
+ status: NEXT
340
+ public: true
341
+ - name: footstep-systems
342
+ category: audio
343
+ status: NEXT
344
+ public: true
345
+ - name: dynamic-music-stingers
346
+ category: audio
347
+ status: LATER
348
+ public: true
349
+ - name: audio-occlusion
350
+ category: audio
351
+ status: LATER
352
+ public: true
353
+
354
+ # ── physics ──
355
+ - name: rigid-bodies
356
+ category: physics
357
+ status: NEXT
358
+ public: true
359
+ - name: character-physics
360
+ category: physics
361
+ status: NEXT
362
+ public: true
363
+ - name: area-triggers
364
+ category: physics
365
+ status: NEXT
366
+ public: true
367
+ - name: raycasting-patterns
368
+ category: physics
369
+ status: NEXT
370
+ public: true
371
+ - name: shapecasting
372
+ category: physics
373
+ status: NEXT
374
+ public: true
375
+ - name: joints-and-constraints
376
+ category: physics
377
+ status: LATER
378
+ public: true
379
+ - name: buoyancy
380
+ category: physics
381
+ status: LATER
382
+ public: true
383
+ - name: destructible-objects
384
+ category: physics
385
+ status: LATER
386
+ public: true
387
+
388
+ # ── multiplayer-and-networking ──
389
+ - name: multiplayerapi-basics
390
+ category: multiplayer-and-networking
391
+ status: NEXT
392
+ public: true
393
+ - name: client-server-pattern
394
+ category: multiplayer-and-networking
395
+ status: NEXT
396
+ public: true
397
+ - name: enet-vs-websocket
398
+ category: multiplayer-and-networking
399
+ status: NEXT
400
+ public: true
401
+ - name: peer-replication
402
+ category: multiplayer-and-networking
403
+ status: NEXT
404
+ public: true
405
+ - name: state-sync
406
+ category: multiplayer-and-networking
407
+ status: LATER
408
+ public: true
409
+ - name: lag-compensation
410
+ category: multiplayer-and-networking
411
+ status: LATER
412
+ public: true
413
+ - name: lobby-and-matchmaking
414
+ category: multiplayer-and-networking
415
+ status: LATER
416
+ public: true
417
+
418
+ # ── ai-and-npcs ──
419
+ - name: navmesh-pathfinding
420
+ category: ai-and-npcs
421
+ status: NEXT
422
+ public: true
423
+ - name: behavior-trees
424
+ category: ai-and-npcs
425
+ status: NEXT
426
+ public: true
427
+ - name: state-machine-npc
428
+ category: ai-and-npcs
429
+ status: NEXT
430
+ public: true
431
+ - name: llm-driven-dialogue
432
+ category: ai-and-npcs
433
+ status: NEXT
434
+ public: true
435
+ - name: perception-sight-and-hearing
436
+ category: ai-and-npcs
437
+ status: NEXT
438
+ public: true
439
+ - name: group-tactics
440
+ category: ai-and-npcs
441
+ status: LATER
442
+ public: true
443
+ - name: boss-patterns
444
+ category: ai-and-npcs
445
+ status: LATER
446
+ public: true
447
+
448
+ # ── level-design ──
449
+ - name: gridmap-building
450
+ category: level-design
451
+ status: NEXT
452
+ public: true
453
+ - name: grid-snapping
454
+ category: level-design
455
+ status: NEXT
456
+ public: true
457
+ - name: modular-environments
458
+ category: level-design
459
+ status: LATER
460
+ public: true
461
+ - name: procedural-rooms
462
+ category: level-design
463
+ status: LATER
464
+ public: true
465
+ - name: occlusion-culling-zones
466
+ category: level-design
467
+ status: LATER
468
+ public: true
469
+ - name: open-world-streaming
470
+ category: level-design
471
+ status: LATER
472
+ public: true
473
+
474
+ # ── performance ──
475
+ - name: profiling-godot
476
+ category: performance
477
+ status: NEXT
478
+ public: true
479
+ - name: draw-call-batching
480
+ category: performance
481
+ status: NEXT
482
+ public: true
483
+ - name: gdscript-hotpaths
484
+ category: performance
485
+ status: LATER
486
+ public: true
487
+ - name: texture-streaming
488
+ category: performance
489
+ status: LATER
490
+ public: true
491
+ - name: lod-and-culling
492
+ category: performance
493
+ status: LATER
494
+ public: true
495
+ - name: mobile-optimization
496
+ category: performance
497
+ status: LATER
498
+ public: true
499
+
500
+ # ── ui-and-ux ──
501
+ - name: ui-basics
502
+ category: ui-and-ux
503
+ status: HAVE
504
+ public: true
505
+ recommended: true
506
+ last-tested: 2026-05-05
507
+ - name: control-anchors-and-containers
508
+ category: ui-and-ux
509
+ status: NEXT
510
+ public: true
511
+ - name: theme-resources
512
+ category: ui-and-ux
513
+ status: NEXT
514
+ public: true
515
+ - name: main-menu
516
+ category: ui-and-ux
517
+ status: NEXT
518
+ public: true
519
+ - name: pause-menu
520
+ category: ui-and-ux
521
+ status: NEXT
522
+ public: true
523
+ - name: hud-patterns
524
+ category: ui-and-ux
525
+ status: NEXT
526
+ public: true
527
+ - name: inventory-ui
528
+ category: ui-and-ux
529
+ status: LATER
530
+ public: true
531
+ - name: responsive-ui
532
+ category: ui-and-ux
533
+ status: LATER
534
+ public: true
535
+ - name: localization-ui
536
+ category: ui-and-ux
537
+ status: LATER
538
+ public: true
539
+ - name: controller-navigation
540
+ category: ui-and-ux
541
+ status: LATER
542
+ public: true
543
+
544
+ # ── asset-pipeline ──
545
+ - name: asset-strategy
546
+ category: asset-pipeline
547
+ status: HAVE
548
+ public: true
549
+ recommended: true
550
+ last-tested: 2026-05-05
551
+ - name: import-from-url
552
+ category: asset-pipeline
553
+ status: NEXT
554
+ public: true
555
+ - name: texture-import-pipeline
556
+ category: asset-pipeline
557
+ status: NEXT
558
+ public: true
559
+ - name: normal-bump-roughness
560
+ category: asset-pipeline
561
+ status: NEXT
562
+ public: true
563
+ - name: attribution-and-licensing
564
+ category: asset-pipeline
565
+ status: NEXT
566
+ public: true
567
+ - name: 3d-mesh-cleanup
568
+ category: asset-pipeline
569
+ status: LATER
570
+ public: true
571
+ - name: trim-sheets
572
+ category: asset-pipeline
573
+ status: LATER
574
+ public: true
575
+ - name: rigging-from-markers
576
+ category: asset-pipeline
577
+ status: LATER
578
+ public: true
579
+
580
+ # ── input-and-controls ──
581
+ - name: input-map-fundamentals
582
+ category: input-and-controls
583
+ status: NEXT
584
+ public: true
585
+ - name: gamepad-support
586
+ category: input-and-controls
587
+ status: NEXT
588
+ public: true
589
+ - name: action-buffering
590
+ category: input-and-controls
591
+ status: LATER
592
+ public: true
593
+ - name: rebindable-controls
594
+ category: input-and-controls
595
+ status: LATER
596
+ public: true
597
+ - name: accessibility-input
598
+ category: input-and-controls
599
+ status: LATER
600
+ public: true
601
+
602
+ # ── debugging ──
603
+ - name: debugger-basics
604
+ category: debugging
605
+ status: NEXT
606
+ public: true
607
+ - name: error-triage-via-summer-mcp
608
+ category: debugging
609
+ status: NEXT
610
+ public: true
611
+ - name: perf-investigation
612
+ category: debugging
613
+ status: LATER
614
+ public: true
615
+
616
+ # ── deployment ──
617
+ - name: export-presets
618
+ category: deployment
619
+ status: NEXT
620
+ public: true
621
+ - name: web-html5-export
622
+ category: deployment
623
+ status: NEXT
624
+ public: true
625
+ - name: steam-uploader
626
+ category: deployment
627
+ status: LATER
628
+ public: true
629
+ - name: itch-uploader
630
+ category: deployment
631
+ status: LATER
632
+ public: true
633
+ - name: mobile-export
634
+ category: deployment
635
+ status: LATER
636
+ public: true
@@ -1,11 +1,12 @@
1
1
  ---
2
2
  name: fps-controller
3
- description: First-person character controller with movement, camera, and physics. Use when building an FPS game, first-person movement, or a 3D character that moves with WASD and looks with mouse.
3
+ description: First-person character controller with WASD movement, mouse look, jumping, and physics. Use when building an FPS, first-person movement, or a 3D character that walks/jumps. Trigger on "FPS", "first-person", "WASD", "character controller", "mouse look".
4
4
  license: MIT
5
- compatibility:
6
- - Cursor
7
- - Claude Code
8
- - Windsurf
5
+ compatibility: [Cursor, Claude Code, Windsurf, Codex]
6
+ category: character-controllers
7
+ template-id: template-3d-fps
8
+ allowed-tools: Read Grep summer_add_node summer_set_prop summer_set_resource_property summer_input_map_bind summer_save_scene summer_get_script_errors
9
+ paths: ["**/*.gd", "**/*.tscn"]
9
10
  ---
10
11
 
11
12
  # FPS Controller for Summer Engine
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  name: 3d-lighting
3
- description: Lighting setup, environment, sky, and shadows for 3D scenes. Use when setting up a 3D scene, adding lights, configuring WorldEnvironment, or adjusting shadows.
3
+ description: Lighting setup, WorldEnvironment, sky, and shadows for 3D scenes. Use when setting up a 3D scene, adding lights, configuring environment, or adjusting shadows. Trigger on "lighting", "shadows", "WorldEnvironment", "sun", "ambient".
4
4
  license: MIT
5
- compatibility:
6
- - Cursor
7
- - Claude Code
8
- - Windsurf
5
+ compatibility: [Cursor, Claude Code, Windsurf, Codex]
6
+ category: rendering-and-lighting
7
+ allowed-tools: Read Grep summer_add_node summer_set_prop summer_set_resource_property summer_save_scene
8
+ paths: ["**/*.tscn", "**/*.tres"]
9
9
  ---
10
10
 
11
11
  # 3D Lighting for Summer Engine