Skip to content

Add Godot + Blender + Quest VR development skill suite (5 skills) - #27388

Closed
buckster123 wants to merge 1 commit into
NousResearch:mainfrom
buckster123:add-godot-quest-vr-skills
Closed

Add Godot + Blender + Quest VR development skill suite (5 skills)#27388
buckster123 wants to merge 1 commit into
NousResearch:mainfrom
buckster123:add-godot-quest-vr-skills

Conversation

@buckster123

@buckster123 buckster123 commented May 17, 2026

Copy link
Copy Markdown

This PR adds a complete skill set for AI-assisted VR development on Meta Quest using Godot 4.5 and Blender MCP under Hermes Agent.

Skills included:

  • godot-quest-dev: Master guide for export, manifest, debugging, XR features
  • blender-godot-pipeline: Asset pipeline from Blender MCP through gltfpack to Godot
  • godot-xr-interactions: Locomotion, grabbing, hand tracking, passthrough, XR UI
  • quest-native-toolchain: Toolchain install, native validation, ADB workflows
  • mcp-server-setup: Hermes MCP config, protocol fixes, troubleshooting

All skills are:

  • Project-agnostic (no hardcoded paths or codenames)
  • Tested on Ubuntu 25.10+ with Godot 4.5-stable
  • Compatible with Meta Quest 3/3S
  • Licensed MIT

Reference files (12 total) are split out from SKILL.md to keep skills under the 15k char target while preserving deep technical content.

Notable Technical Findings

  1. Godot-MCP WebSocket protocol fix: Godot 4.5's WebSocketPeer doesn't negotiate subprotocols. The upstream client sends protocol: 'json' which breaks the handshake.

  2. Meta OpenXR Vendors plugin zip extraction: The plugin zip has an asset/ prefix. Standard unzip places addons at wrong depth.

  3. Godot headless export ignores keystore: For OpenXR presets, Godot headless ignores keystore paths. Must export unsigned (package/signed=false) then sign manually with apksigner.

  4. App Category dropdown overrides manifest: The export preset's "App Category" dropdown (defaulting to Accessibility) overrides any manual manifest patches. Must be set to Game for Quest immersive mode.

Related

This adds a complete skill set for AI-assisted VR development on Meta Quest
using Godot 4.5 and Blender MCP under Hermes Agent.

Skills:
- godot-quest-dev: export, manifest, debugging, XR features
- blender-godot-pipeline: Blender MCP → gltfpack → Godot import
- godot-xr-interactions: locomotion, grab, hand tracking, passthrough, XR UI
- quest-native-toolchain: toolchain install, native validation, ADB workflows
- mcp-server-setup: Hermes MCP config, protocol fixes, troubleshooting

All skills are project-agnostic, tested on Ubuntu 22.04+ with Godot 4.5-stable,
compatible with Meta Quest 3/3S, MIT licensed.

Reference files (12 total) split out to keep skills under 15k chars.

See also: https://github.com/buckster123/hermes-vr-devkit
@alt-glitch alt-glitch added type/feature New feature or request P3 Low — cosmetic, nice to have tool/skills Skills system (list, view, manage) labels May 17, 2026
@teknium1

Copy link
Copy Markdown
Contributor

Thanks for contributing this VR development skill suite. I found one Hermes-specific correctness issue worth fixing before maintainers salvage this.

Problems

  • skills/software-development/mcp-server-setup/SKILL.md:42 and :109 use args: [$HOME/.local/share/godot-mcp/dist/index.js]. Hermes expands ${VAR} placeholders in config (hermes_cli/config.py:4995-5006, tools/mcp_tool.py:2664-2668), but not bare $HOME, and MCP stdio args are passed as argv (tools/mcp_tool.py:1438-1448), so this example would hand Node a literal $HOME/... path.
  • The Blender setup guidance duplicates an existing skill on main: optional-skills/creative/blender-mcp/SKILL.md:2-6 already documents Blender MCP setup/control, while this PR adds another setup path in skills/software-development/mcp-server-setup/SKILL.md:123-152.

Suggested changes

  • Use ${HOME}/.local/share/godot-mcp/dist/index.js or an explicit placeholder path in MCP YAML examples.
  • Cross-link or defer general Blender MCP setup to the existing blender-mcp optional skill, keeping this suite focused on Godot/Quest-specific pipeline details.
  • If these remain bundled skills/software-development skills, consider adding the corresponding bundled docs pages under website/docs/user-guide/skills/bundled/software-development/.

This is an automated hermes-sweeper review.

@teknium1 teknium1 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the substantial VR workflow contribution. It is salvageable, but a few Hermes-specific issues need correction.

Problems

  • skills/software-development/mcp-server-setup/SKILL.md:42 and :109 use bare $HOME in MCP args. Main interpolates ${VAR} only (tools/mcp_tool.py:3693-3715) and supplies args directly to StdioServerParameters (tools/mcp_tool.py:2068-2072), so this gives Node a literal $HOME/... path.
  • mcp-server-setup/SKILL.md:98 and references/godot-mcp-protocol-fix.md:39 reference mcp-servers/godot-mcp/fix-protocol.sh, but no such file is in this PR's changed-file list.
  • The five new skills do not meet the current hardline standards in AGENTS.md:888-950: descriptions exceed 60 characters, no platforms: field is present, author fields do not credit the contributor first, and no tests/skills/test_<skill>_skill.py files are added.

Suggested changes

  • Use ${HOME} or an explicit absolute-path placeholder in MCP YAML examples; add or remove the claimed helper script.
  • Modernize each skill's metadata, platform gating, author credit, structure, and tests.
  • Cross-link the existing optional-skills/creative/blender-mcp/SKILL.md:13-32 rather than duplicating general Blender MCP setup.

This is an automated hermes-sweeper review.

mcp_servers:
godot:
command: node
args: [$HOME/.local/share/godot-mcp/dist/index.js]

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hermes expands ${VAR} placeholders, not bare $HOME; stdio args are passed directly to the MCP launcher. Use ${HOME}/.local/share/godot-mcp/dist/index.js or an explicit absolute-path placeholder so Node does not receive a literal $HOME/... argument.


Or use the provided script:
```bash
./mcp-servers/godot-mcp/fix-protocol.sh

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR does not add mcp-servers/godot-mcp/fix-protocol.sh (the changed-file list contains only skill Markdown and references), so this command fails. Add the helper at the documented path or remove this invocation and retain the inline patch.

@@ -0,0 +1,194 @@
---
name: mcp-server-setup
description: Configure Hermes Agent MCP servers for Godot and Blender automation. Use when setting up, troubleshooting, or reconfiguring MCP connections for VR development workflows.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Current skill standards require a single-sentence description of at most 60 characters ending in a period. This description is 169 characters; the other four new skills have the same issue and should be modernized together.

@teknium1 teknium1 added sweeper:risk-compatibility Sweeper risk: may break existing users, config, migrations, defaults, or upgrades sweeper:risk-platform-windows Sweeper risk: may break or behave differently on native Windows sweeper:blast-contained Sweeper blast radius: contained — one narrow path / opt-in / few users labels Jul 13, 2026
@teknium1

Copy link
Copy Markdown
Contributor

Thanks Andre — this is a substantive suite and the Godot/Quest content (export manifests, GLB pipeline, XR interactions, ADB toolchain) is knowledge that doesn't exist anywhere else in the repo. Closing is about packaging shape, not quality.

The problem: this ships as a 5-skill bundle whose parts reference each other, and Hermes currently has no skills dependency system — nothing enforces that installing one part brings the others, so a partial install gives broken cross-references. The alternatives don't work well either: collapsing it into one mega-skill would overlap the existing blender-mcp optional skill (which was just reworked around the curated Blender MCP catalog entry, #65066), and merging it as five independent bundled skills puts heavyweight niche content in every user's skill list.

Please reopen this (or a rebased version) if/when a skills dependency system lands — a suite like this is exactly the use case that would justify one, and your PR is a good forcing function for that design discussion.

If you want part of it in sooner, the strongest standalone candidate is the Godot/Quest core (godot-quest-dev + quest-native-toolchain) as a single self-contained optional skill under optional-skills/, with:

  • Blender setup deferring to the blender-mcp skill + hermes mcp install blender (catalog entry with pinned version) instead of a parallel setup path
  • ${HOME} instead of bare $HOME in MCP config examples (Hermes only expands ${VAR} — see the earlier sweeper note)
  • author: crediting you by name per skill authoring standards

Appreciate the work that went into this.

@teknium1 teknium1 closed this Jul 15, 2026
buckster123 added a commit to buckster123/hermes-agent that referenced this pull request Jul 22, 2026
Replaces the closed 5-skill suite (NousResearch#27388) with one self-contained
optional skill under optional-skills/software-development/, per
maintainer packaging guidance:

- Merge godot-quest-dev + quest-native-toolchain gold into one skill
- Defer Blender setup to official blender-mcp + hermes mcp install blender
- Use ${HOME} in MCP YAML examples (Hermes does not expand bare $HOME)
- Ship scripts/fix-godot-mcp-protocol.sh (was referenced but missing)
- Hardline metadata: description ≤60 chars, platforms, author credit
- Hermetic tests at tests/skills/test_godot_quest_vr_skill.py
- Portable paths only — no machine-specific localisms

Install after merge:
  hermes skills install official/software-development/godot-quest-vr
@buckster123

Copy link
Copy Markdown
Author

Follow-up addressing the packaging guidance from the close note:

#69589 — single optional skill godot-quest-vr under optional-skills/software-development/.

What changed vs this PR:

  • One self-contained optional skill (godot-quest-dev + quest-native-toolchain gold), not a 5-skill bundle
  • Blender setup deferred to blender-mcp + hermes mcp install blender
  • ${HOME} in MCP YAML examples (not bare $HOME)
  • Ships scripts/fix-godot-mcp-protocol.sh (was referenced but missing here)
  • Hardline metadata (≤60-char description, platforms:, author credit) + hermetic tests
  • Portable paths only — no machine-specific localisms

Install after merge:

hermes skills install official/software-development/godot-quest-vr

Thanks again for the clear packaging direction — this is the sooner path you sketched.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

P3 Low — cosmetic, nice to have sweeper:blast-contained Sweeper blast radius: contained — one narrow path / opt-in / few users sweeper:risk-compatibility Sweeper risk: may break existing users, config, migrations, defaults, or upgrades sweeper:risk-platform-windows Sweeper risk: may break or behave differently on native Windows tool/skills Skills system (list, view, manage) type/feature New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants