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 .tres files 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.bundle form.