In agent development, directly controlling a local Godot 4.x project (such as validating resources and running scripts) is a common requirement. Traditional approaches often require manually maintaining processes or writing complex scripts. This plugin set for DeepSeek Harness (DSH) provides a standard bundle package that lets agents invoke local Godot executables through native tool calls, supporting headless CLI mode and editor startup.
Plugin Scope¶
This is a DSH bundle plugin maintained by user jxb01. It does not depend on an MCP server, does not perform network communication, and does not require installing npm packages at runtime.
Core Features¶
The plugin provides the following tools for interacting with a local Godot 4.x environment:
- godot_check: Validates a Godot project in headless mode (runs import and first-frame rendering).
- godot_import: Re-imports all resources in headless mode.
- godot_run_scene: Runs the specified scene for N frames in headless mode.
- godot_run_script: Runs GDScript (based on SceneTree/MainLoop) in headless mode and can capture
print()output and exit codes. - godot_list_assets: Recursively lists
.tscn,.gd, and.tresfiles in the project. - godot_open_editor: Starts the Godot editor GUI (detached mode).
- godot_toggle: Enables or disables
godot_*tools in real time within a session, without a restart.
Installation and Activation¶
Install from a Git repository (no build script required, pure JS source code):
dsh plugin --profile web add github:jxb01/godot-tools-dsh-plugin
Or install from a local directory:
dsh plugin --profile web add /path/to/godot-tools-dsh-plugin
After installation, restart dsh web. These 7 tools will appear in the Agent’s list of available tools.
Configuration and Usage¶
Specify the Godot Executable¶
By default, the plugin uses the Godot path from system environment variables or the DSH context. To override it, edit the cordis.patch.yml file in the user Profile, locate the entry by id godot-tools, and configure it:
- id: godot-tools
config:
godotExe: 'D:/path/to/Godot_v4.7.1-stable_win64_console.exe'
In-Session Toggle¶
In a chat session, you can directly call the godot_toggle function to control the enabled state of the tools:
godot_toggle(enabled: false | true)
To disable it by default at startup, add the following to the Profile patch file:
- id: godot-tools
disabled: !!js process.env.GODOT_TOOLS === '0'
Notes¶
- Permissions and Runtime Environment: The plugin runs with the permissions of the current DSH process. Check the source code and license before installation.
- Third-Party Dependencies: MIT license. For third-party dependency licenses, see
THIRD_PARTY_NOTICES.md. - Older Version Note: The older manual installation version (out-of-tree DIY form) is in the jxb01/godot-tools-dsh repository. This repository is the standard
dsh.bundleform.