Skip to content

MoonClicker v0.5.0

Choose a tag to compare

@github-actions github-actions released this 16 Oct 15:51
· 15 commits to master since this release
5e3aa08

0.5 Highlights

REPL

  • A persistent Lua session separate from scripts, with the same API. Globals persist until reset or close, and Ctrl+C interrupts only the current chunk.
  • Up to four REPLs can run at once on a device. Each has its own id and its own globals. VS Code and MCP share them, and you can attach to a REPL that is already open.
  • VS Code: use the REPL from the terminal. Shift+Enter sends the selection or the current line, and Ctrl+D on an empty line closes only that REPL.

MCP server

  • The Workbench now has a built-in MCP server (POST /mcp, Streamable HTTP, stateless) that uses the same Workbench token.
  • Tools: list_displays, screenshot, view_tree, tap, swipe, repl_eval, repl_reset, list_scripts, start_script, stop_script, script_logs.
  • New VS Code command: "Copy MCP Server Config". See docs/mcp.md for setup.

ui module: view tree access

  • New ui.dump, ui.find, ui.find_all, ui.wait and selectors. Scripts can find elements by text, id or class without templates or OCR (Android 11+).
  • The service registers UiAutomation as shell only when needed and releases it after about 30 seconds of inactivity.

Input from the VS Code mirror

  • On the Workbench panel's debug view, a click sends a tap, press-and-hold sends a long press, and a drag sends a swipe. Input is sent when you release.

Compatibility

  • Workbench protocol version is now 3. You need the VS Code extension 0.5.x.
  • The VS Code extension moved to kuomartin/moonclicker-vscode. Download .vsix files from that repo's Releases. Installing from Open VSX works the same as before.

Other

  • MCP returns an error when coordinates are outside the display or the script is unknown.
  • The CI Lua stub check now compares function names, so PRs that don't change the API are no longer blocked.

Full Changelog: v0.4.0...v0.5.0