Install¶
gdcli is one Rust binary. The editor side is a GDScript plugin that the binary installs into
your project — there is nothing to compile and nothing to download separately.
The CLI¶
The installers verify the download against the release's SHA256SUMS and accept:
| Variable | Meaning |
|---|---|
GDCLI_VERSION |
pin a release, e.g. 0.10.1 or v0.10.1 |
GDCLI_INSTALL_DIR |
where the binary goes; default ~/.local/bin on unix, %LOCALAPPDATA%\gdcli\bin on Windows |
GDCLI_BASE_URL |
mirror or self-hosted release directory (install.sh only) |
Releases ship x86_64 builds for Linux (glibc and static musl), macOS (Intel and Apple
silicon) and Windows.
The editor plugin¶
This writes addons/gdcli/ and adds one [editor_plugins] line to project.godot. Then
restart the editor once — a plugin is only loaded at startup.
$ gdcli editor status
project : /home/you/game/
godot : 4.7.2-stable (official)
edited_scene : res://main.tscn
open_scenes : res://main.tscn
playing : false
Keeping the bridge out of the repository
gdcli plugin install --private also adds addons/gdcli/ to .gitignore. The
[editor_plugins] line in project.godot is still written and still tracked, so a
teammate without the addon sees a missing-plugin warning — either everyone runs
gdcli plugin install, or the addon is committed.
gdcli plugin status reports whether the files, the endpoint and the live plugin agree.
gdcli plugin upgrade rewrites the installed files after you upgrade the CLI; a running
editor keeps the old plugin until you restart it.
The agent skill¶
gdcli ships a companion skill for coding agents at skills/gdcli.
gdcli plugin install offers to install it when it runs in a terminal; in scripts use
or pass --with-skill / --no-skill to gdcli plugin install. The -a list is
what the CLI installs for by default; add -a <agent> for anything else (Gemini CLI, Windsurf, ...). The skill is listed on
skills.sh and lives in the repository, so it
travels with the CLI.
Requirements¶
- Godot 4.4+ (developed against 4.7.2), any edition; the plugin is plain GDScript.
- Linux, macOS or Windows.
- Python 3 only if you want to run the end-to-end suite.
Troubleshooting¶
no endpoint for <project>
The editor is not running with the plugin enabled, or it was started before
plugin install. Start (or restart) the editor. A stale endpoint from a killed editor is
harmless: the CLI reports Connection refused and exits 2.
NO_API: the game has no rendering surface to capture
Screenshots need a real renderer. --headless has none — run a normal editor, or under
xvfb: