summer-engine 3.6.0 → 3.8.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 (83) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/.claude-plugin/plugin.json +4 -2
  3. package/.codex-plugin/plugin.json +5 -3
  4. package/.cursor-plugin/plugin.json +4 -2
  5. package/.factory-plugin/plugin.json +4 -2
  6. package/CHANGELOG.md +24 -0
  7. package/README.md +11 -5
  8. package/commands/summer.md +2 -1
  9. package/dist/cli/commands/login.d.ts +0 -10
  10. package/dist/cli/commands/login.js +2 -82
  11. package/dist/cli/index.js +0 -4
  12. package/dist/core/auth.d.ts +0 -8
  13. package/dist/core/auth.js +5 -35
  14. package/dist/core/capabilities/apps.d.ts +318 -0
  15. package/dist/core/capabilities/apps.js +340 -0
  16. package/dist/core/capabilities/enable-plugin.d.ts +27 -0
  17. package/dist/core/capabilities/enable-plugin.js +75 -0
  18. package/dist/core/capabilities/seeing/args.d.ts +2 -2
  19. package/dist/core/capabilities/seeing/seeing.d.ts +1 -1
  20. package/dist/core/capabilities/sfx-choices.d.ts +2 -15
  21. package/dist/core/capabilities/sfx-choices.js +26 -64
  22. package/dist/core/capabilities/tool-dispatch.js +51 -54
  23. package/dist/core/capability-skew.js +4 -0
  24. package/dist/core/config.d.ts +1 -7
  25. package/dist/core/config.js +5 -75
  26. package/dist/mcp/hosted-mount.js +13 -1
  27. package/dist/mcp/server.d.ts +2 -1
  28. package/dist/mcp/server.js +8 -5
  29. package/dist/mcp/tools/app-tools.d.ts +2 -0
  30. package/dist/mcp/tools/app-tools.js +64 -0
  31. package/dist/mcp/tools/creator-tools.js +0 -71
  32. package/dist/mcp/tools/generate-tools.js +6 -7
  33. package/gemini-extension.json +3 -1
  34. package/library/references/mcp-tools-reference/mcp-tools-reference.md +24 -5
  35. package/library/skills/README.md +10 -2
  36. package/library/skills/publish-your-game/SKILL.md +2 -0
  37. package/library/skills/sound-effect/SKILL.md +2 -0
  38. package/library/skills/summer-apps/SKILL.md +152 -0
  39. package/library/skills/summer-apps/manifest.md +57 -0
  40. package/library/skills/summer-apps/minimal-app.md +183 -0
  41. package/library/skills/summer-apps/resource.yaml +36 -0
  42. package/library/skills/summer-apps/sdk-reference.md +135 -0
  43. package/library/skills/summer-apps-design/SKILL.md +197 -0
  44. package/library/skills/summer-apps-design/resource.yaml +23 -0
  45. package/library/skills/using-summer/SKILL.md +1 -0
  46. package/library/tools/app-call/resource.yaml +59 -0
  47. package/library/tools/app-create/resource.yaml +67 -0
  48. package/library/tools/app-data/resource.yaml +74 -0
  49. package/library/tools/app-dock/resource.yaml +59 -0
  50. package/library/tools/app-events/resource.yaml +68 -0
  51. package/library/tools/app-get/resource.yaml +46 -0
  52. package/library/tools/app-guide/resource.yaml +55 -0
  53. package/library/tools/app-list/resource.yaml +48 -0
  54. package/library/tools/app-page/resource.yaml +74 -0
  55. package/library/tools/app-publish/resource.yaml +90 -0
  56. package/library/tools/app-report-gap/resource.yaml +58 -0
  57. package/library/tools/app-screenshot/resource.yaml +85 -0
  58. package/library/tools/app-tools/resource.yaml +46 -0
  59. package/library/tools/app-update/resource.yaml +68 -0
  60. package/library/tools/enable-plugin/resource.yaml +53 -0
  61. package/library/tools/generate-sfx-choices/resource.yaml +2 -2
  62. package/package.json +1 -1
  63. package/registry/generated/aliases.json +15 -3
  64. package/registry/generated/counts.json +3 -3
  65. package/registry/generated/gemini-extension.json +3 -1
  66. package/registry/generated/index.json +759 -209
  67. package/registry/generated/marketplace.claude.json +2 -2
  68. package/registry/generated/plugin.claude.json +4 -2
  69. package/registry/generated/plugin.codex.json +5 -3
  70. package/registry/generated/plugin.cursor.json +4 -2
  71. package/registry/generated/plugin.factory.json +4 -2
  72. package/registry/generated/skills-index.md +10 -2
  73. package/registry/generated/skills-registry.json +27 -0
  74. package/registry/schemas/allowed-hosts.json +4 -2
  75. package/dist/cli/commands/publish.d.ts +0 -2
  76. package/dist/cli/commands/publish.js +0 -21
  77. package/dist/cli/commands/releases.d.ts +0 -2
  78. package/dist/cli/commands/releases.js +0 -20
  79. package/dist/core/capabilities/creator.d.ts +0 -65
  80. package/dist/core/capabilities/creator.js +0 -374
  81. package/library/tools/creator-config/resource.yaml +0 -63
  82. package/library/tools/creator-publish/resource.yaml +0 -74
  83. package/library/tools/creator-releases/resource.yaml +0 -53
@@ -0,0 +1,85 @@
1
+ id: tool/app-screenshot
2
+ kind: tool
3
+ version: 1.0.0
4
+ summary: See a Summer App without the person - a headless, read-only render (PNG) with its console, errors, refused calls and declared page.
5
+ use_when:
6
+ - right after every summer_app_publish, to check the app renders with real data
7
+ - '"does my app look right on a phone / in dark mode"'
8
+ - finding why an app shows nothing (SDK not connected, script errors)
9
+ do_not_use_when:
10
+ - "testing writes, sends or paid calls: they are refused in screenshots; they work in Studio"
11
+ facets:
12
+ lifecycle:
13
+ - build
14
+ domains:
15
+ - tools
16
+ - ui
17
+ compatibility:
18
+ engine: ">=4.6"
19
+ related:
20
+ skills:
21
+ - skill/summer-apps
22
+ - skill/summer-apps-design
23
+ source: official
24
+ license: MIT
25
+ status: preview
26
+ aliases:
27
+ - summer_app_screenshot
28
+ implementation:
29
+ module: src/mcp/tools/app-tools.ts
30
+ export: registerAppTools
31
+ surfaces:
32
+ mcp:
33
+ tool_name: summer_app_screenshot
34
+ remote: true
35
+ input_schema:
36
+ type: object
37
+ properties:
38
+ appId:
39
+ type: string
40
+ format: uuid
41
+ description: The app id from summer_app_create or summer_app_list
42
+ version:
43
+ type: integer
44
+ exclusiveMinimum: 0
45
+ description: "A published version. Default: the current one"
46
+ width:
47
+ type: integer
48
+ minimum: 320
49
+ maximum: 1920
50
+ default: 1280
51
+ description: "Viewport width in px: 390 for a phone"
52
+ height:
53
+ type: integer
54
+ minimum: 320
55
+ maximum: 1600
56
+ default: 800
57
+ theme:
58
+ type: string
59
+ enum:
60
+ - light
61
+ - dark
62
+ default: light
63
+ fullPage:
64
+ type: boolean
65
+ default: false
66
+ description: Capture the whole scroll height (up to 4000 px)
67
+ params:
68
+ type: object
69
+ additionalProperties:
70
+ type: string
71
+ maxLength: 500
72
+ description: Launch params, as in /studio/apps/<id>?key=value
73
+ out:
74
+ type: string
75
+ minLength: 1
76
+ description: Also save the PNG to this local path
77
+ required:
78
+ - appId
79
+ additionalProperties: false
80
+ authority:
81
+ filesystem: true
82
+ editor_mutation: false
83
+ network: true
84
+ credentials: false
85
+ publish: false
@@ -0,0 +1,46 @@
1
+ id: tool/app-tools
2
+ kind: tool
3
+ version: 1.0.0
4
+ summary: List the agent tools a Summer App declares.
5
+ use_when:
6
+ - before calling app logic with summer_app_call
7
+ - '"what can our balance app do for me"'
8
+ facets:
9
+ lifecycle:
10
+ - build
11
+ domains:
12
+ - tools
13
+ - ui
14
+ compatibility:
15
+ engine: ">=4.6"
16
+ related:
17
+ skills:
18
+ - skill/summer-apps
19
+ source: official
20
+ license: MIT
21
+ status: preview
22
+ aliases:
23
+ - summer_app_tools
24
+ implementation:
25
+ module: src/mcp/tools/app-tools.ts
26
+ export: registerAppTools
27
+ surfaces:
28
+ mcp:
29
+ tool_name: summer_app_tools
30
+ remote: true
31
+ input_schema:
32
+ type: object
33
+ properties:
34
+ appId:
35
+ type: string
36
+ format: uuid
37
+ description: The app id from summer_app_create or summer_app_list
38
+ required:
39
+ - appId
40
+ additionalProperties: false
41
+ authority:
42
+ filesystem: false
43
+ editor_mutation: false
44
+ network: true
45
+ credentials: false
46
+ publish: false
@@ -0,0 +1,68 @@
1
+ id: tool/app-update
2
+ kind: tool
3
+ version: 1.0.0
4
+ summary: Rename a Summer App, move it to a folder, or keep, archive or restore it.
5
+ use_when:
6
+ - archiving a scratch app you made that the person did not keep
7
+ - '"rename the loot app to Drop tables"'
8
+ - '"keep this app" (status kept)'
9
+ facets:
10
+ lifecycle:
11
+ - build
12
+ domains:
13
+ - tools
14
+ - ui
15
+ compatibility:
16
+ engine: ">=4.6"
17
+ related:
18
+ skills:
19
+ - skill/summer-apps
20
+ source: official
21
+ license: MIT
22
+ status: preview
23
+ aliases:
24
+ - summer_app_update
25
+ implementation:
26
+ module: src/mcp/tools/app-tools.ts
27
+ export: registerAppTools
28
+ surfaces:
29
+ mcp:
30
+ tool_name: summer_app_update
31
+ remote: true
32
+ input_schema:
33
+ type: object
34
+ properties:
35
+ appId:
36
+ type: string
37
+ format: uuid
38
+ description: The app id from summer_app_create or summer_app_list
39
+ name:
40
+ type: string
41
+ minLength: 1
42
+ maxLength: 80
43
+ purpose:
44
+ type: string
45
+ maxLength: 280
46
+ status:
47
+ type: string
48
+ enum:
49
+ - scratch
50
+ - kept
51
+ - archived
52
+ description: "kept: the team keeps it. archived: hidden from the app list (restore with scratch or kept)"
53
+ folder:
54
+ type:
55
+ - string
56
+ - "null"
57
+ minLength: 1
58
+ maxLength: 80
59
+ description: null takes it out of its folder
60
+ required:
61
+ - appId
62
+ additionalProperties: false
63
+ authority:
64
+ filesystem: false
65
+ editor_mutation: false
66
+ network: true
67
+ credentials: false
68
+ publish: false
@@ -0,0 +1,53 @@
1
+ id: tool/enable-plugin
2
+ kind: tool
3
+ version: 1.0.0
4
+ summary: Enable an editor plugin (res://addons/<name>/) and report the real load result, or that an older engine only queued it.
5
+ use_when:
6
+ - an agent wrote or installed an editor plugin and needs it running
7
+ - a Summer App's paired plugin must be enabled before the app can message it
8
+ - '"turn on the quest_tools plugin"'
9
+ facets:
10
+ lifecycle:
11
+ - build
12
+ domains:
13
+ - editor
14
+ - tools
15
+ compatibility:
16
+ engine: ">=4.6"
17
+ related:
18
+ skills:
19
+ - skill/summer-apps
20
+ source: official
21
+ license: MIT
22
+ status: preview
23
+ aliases:
24
+ - summer_enable_plugin
25
+ implementation:
26
+ module: src/mcp/tools/app-tools.ts
27
+ export: registerAppTools
28
+ surfaces:
29
+ mcp:
30
+ tool_name: summer_enable_plugin
31
+ remote: false
32
+ input_schema:
33
+ type: object
34
+ properties:
35
+ plugin:
36
+ type: string
37
+ minLength: 1
38
+ maxLength: 200
39
+ description: The plugin folder under res://addons/ (e.g. 'quest_tools') or its 'res://addons/<name>/plugin.cfg'
40
+ timeoutMs:
41
+ type: integer
42
+ minimum: 1000
43
+ maximum: 120000
44
+ description: How long the engine waits for the plugin to load (default 30000)
45
+ required:
46
+ - plugin
47
+ additionalProperties: false
48
+ authority:
49
+ filesystem: false
50
+ editor_mutation: true
51
+ network: false
52
+ credentials: false
53
+ publish: false
@@ -1,6 +1,6 @@
1
1
  id: tool/generate-sfx-choices
2
2
  kind: tool
3
- version: 1.0.0
3
+ version: 1.0.1
4
4
  summary: "Make one sound effect with several models and show the versions in Summer Studio; the person approves one or more and that model becomes their default."
5
5
  use_when:
6
6
  - the first sound effect in a chat, after the person said yes to three versions to pick from
@@ -55,7 +55,7 @@ input_schema:
55
55
  description: "2-4 model ids to compare. Default: eleven_text_to_sound_v2, sonilo-sfx-1.1, stable-audio-3-sfx"
56
56
  open:
57
57
  type: boolean
58
- description: "Show the choices page to the person (their open Studio tab, else the browser). false: only return the URL"
58
+ description: "Show the choices page in the browser when no open Studio tab took it. false: no browser, only return the URL"
59
59
  required:
60
60
  - text
61
61
  additionalProperties: false
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "summer-engine",
3
- "version": "3.6.0",
3
+ "version": "3.8.0",
4
4
  "description": "Local Summer CLI and MCP server for Summer Engine. Install and run the engine, connect Claude Code, Cursor, Codex, Gemini, and other agents, and build real games with bundled skills, hooks, and plugins.",
5
5
  "keywords": [
6
6
  "summer-engine",
@@ -100,6 +100,20 @@
100
100
  "summer_add_node": "tool/add-node",
101
101
  "summer_align_distribute_3d": "tool/align-distribute-3d",
102
102
  "summer_api_docs": "tool/api-docs",
103
+ "summer_app_call": "tool/app-call",
104
+ "summer_app_create": "tool/app-create",
105
+ "summer_app_data": "tool/app-data",
106
+ "summer_app_dock": "tool/app-dock",
107
+ "summer_app_events": "tool/app-events",
108
+ "summer_app_get": "tool/app-get",
109
+ "summer_app_guide": "tool/app-guide",
110
+ "summer_app_list": "tool/app-list",
111
+ "summer_app_page": "tool/app-page",
112
+ "summer_app_publish": "tool/app-publish",
113
+ "summer_app_report_gap": "tool/app-report-gap",
114
+ "summer_app_screenshot": "tool/app-screenshot",
115
+ "summer_app_tools": "tool/app-tools",
116
+ "summer_app_update": "tool/app-update",
103
117
  "summer_attach_to_surface": "tool/attach-to-surface",
104
118
  "summer_batch": "tool/batch",
105
119
  "summer_camera_bookmark": "tool/camera-bookmark",
@@ -110,10 +124,8 @@
110
124
  "summer_connect_signal": "tool/connect-signal",
111
125
  "summer_create_debug_report": "tool/create-debug-report",
112
126
  "summer_create_scene": "tool/create-scene",
113
- "summer_creator_config": "tool/creator-config",
114
- "summer_creator_publish": "tool/creator-publish",
115
- "summer_creator_releases": "tool/creator-releases",
116
127
  "summer_debug_views": "tool/debug-views",
128
+ "summer_enable_plugin": "tool/enable-plugin",
117
129
  "summer_export_game": "tool/export-game",
118
130
  "summer_export_templates": "tool/export-templates",
119
131
  "summer_fabricate_3d": "tool/fabricate-3d",
@@ -4,9 +4,9 @@
4
4
  "collection": 0,
5
5
  "example": 0,
6
6
  "reference": 9,
7
- "skill": 123,
7
+ "skill": 125,
8
8
  "template": 19,
9
- "tool": 107
9
+ "tool": 119
10
10
  },
11
- "total": 258
11
+ "total": 272
12
12
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "_generated": "GENERATED from integrations/gemini — do not edit; npm run generate:registry",
3
3
  "name": "summer",
4
- "version": "3.6.0",
4
+ "version": "3.8.0",
5
5
  "description": "Agent tooling for Summer Engine: MCP bridge, context primer, and game-dev skills. Use with the npm CLI for skill files on disk.",
6
6
  "contextFileName": "GEMINI.md",
7
7
  "mcpServers": {
@@ -113,6 +113,8 @@
113
113
  "./library/skills/store-art/",
114
114
  "./library/skills/store-listing/",
115
115
  "./library/skills/summer-analytics/",
116
+ "./library/skills/summer-apps/",
117
+ "./library/skills/summer-apps-design/",
116
118
  "./library/skills/summer-friends/",
117
119
  "./library/skills/summer-leaderboards/",
118
120
  "./library/skills/summer-match-results/",