Skip to content

Run Builders on a Mac (#7) - #13

Merged
oddessentials merged 2 commits into
mainfrom
feat/mac-support
Nov 10, 2026
Merged

oddessentials merged 2 commits into
mainfrom
feat/mac-support

Conversation

@oddessentials

Copy link
Copy Markdown
Owner

Refs #7. This adds a native macOS build alongside the Windows one, plus two fixes that testing on a real Mac turned up.

Fixes found on a Mac

  • Agents got no replies. Release builds buffer piped stdout on macOS, so the MCP server's replies only arrived when the agent disconnected. Godot's run/flush_stdout_on_print is now on.
  • Exporting without replacing ran folder names through a shell. OS.execute runs its command through a shell on macOS, so a destination folder named like $(touch x) ran that command. ln is now started directly with OS.execute_with_pipe, keeping the atomic no-overwrite behaviour. New tests cover hostile folder names and eight racing publishes: exactly one wins and nothing is left behind. Windows is unchanged.

Mac support

  • Cmd shortcuts on a Mac (undo, redo, save), with Mac tooltips. Ctrl is unchanged elsewhere.
  • Mac wording: Trash, Show in Finder, Terminal. The connect dialog's commands are quoted for zsh.
  • A macOS export preset: universal, with the ETC2/ASTC texture import Apple Silicon needs.
  • tools/package.ps1 (was package_windows.ps1) takes -Platform macOS. The kits and licence go in Contents/Resources, the app is ad-hoc signed again and verified, and it's zipped with ditto.
  • CI adds a build-macos job that tests, packages, checks the signature and smoke-tests the app. Releases now attach AgentGuildBuilders-macos.zip too.
  • The README and the agent page cover installing on a Mac and opening an unsigned app the first time.
  • A second commit tracks tests/site_commands.gd.uid, which was missed in Agent-ready docs page on GitHub Pages: download, install and run Builders #10/Agent-ready setup page on GitHub Pages #11.

Tested on an M4 Mac mini (macOS 27)

  • All five suites pass:

    Suite Result
    run 1,190 passed
    hardening 130 passed
    clearance_hardening 58 passed
    package_hardening 164 passed
    site_commands 9 of 9 match
  • The packaged ZIP passes codesign --verify --deep --strict and launches with its kits. The MCP smoke test passes 10 of 10 both headless and in a window.

  • The agent page's Mac install block works for both installing and updating.

Not yet verified

  • Hands-on input: Cmd+Z, Cmd+Shift+Z and Cmd+S, the Trash menu and the native file panels haven't been tried by hand. Shortcuts are covered by tests, and synthetic input was blocked by macOS permissions.
  • Retina scaling: untested. The test display is 1080p, and scaling is left unchanged.
  • Windows: this PR's CI is the first time the Windows build runs these changes. Locally, package.ps1 still produces the same Windows ZIP layout.
  • Export time: a final-quality export took about 14 minutes on the Mac, and an MCP client with a 10-minute limit gave up waiting. Export speed is unchanged here.

🤖 Generated with Claude Code

oddessentials and others added 2 commits November 9, 2026 19:01
A native macOS build alongside the Windows one, plus two fixes the Mac
testing turned up.

- MCP replies are flushed as they're printed. Release builds buffer piped
  stdout on macOS, so an agent never heard back until it disconnected.
- Exporting without replacing no longer goes through a shell. OS.execute
  runs its command through one on macOS, so a folder name containing
  $(...) ran as a command. ln is now started directly, and hostile names
  and eight racing publishes are tested.
- Cmd shortcuts on a Mac (undo, redo, save), and Mac wording: Trash,
  Show in Finder, Terminal, and connect commands quoted for zsh.
- A macOS export preset (universal, ETC2/ASTC textures for Apple Silicon).
  tools/package.ps1 (was package_windows.ps1) takes -Platform macOS: kits
  go in Contents/Resources, the app is ad-hoc signed again and zipped
  with ditto.
- CI builds, tests, packages and smoke-tests the Mac app on macos-latest,
  and releases attach AgentGuildBuilders-macos.zip.
- The README and the agent page cover installing on a Mac and opening an
  unsigned app the first time.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Every other test script's uid is tracked; this one was missed in #10/#11.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@oddessentials
oddessentials merged commit 12bcd02 into main Nov 10, 2026
5 checks passed
@oddessentials
oddessentials deleted the feat/mac-support branch November 10, 2026 02:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant