← 返回
开发者工具 中文

Godot Skill

Control Godot Editor via OpenClaw Godot Plugin. Use for Godot game development tasks including scene management, node manipulation, input simulation, debugging, and editor control. Triggers on Godot-related requests like inspecting scenes, creating nodes, taking screenshots, testing gameplay, or controlling the editor.
通过OpenClaw Godot插件控制Godot编辑器。用于场景管理、节点操作、输入模拟、调试和编辑器控制等游戏开发任务。响应检查场景、创建节点、截图、测试玩法或控制编辑器等Godot相关请求。
tomleelive
开发者工具 clawhub v1.2.7 1 版本 99501.4 Key: 无需
★ 2
Stars
📥 3,153
下载
💾 459
安装
1
版本
#latest

概述

Godot Plugin Skill

Control Godot 4.x Editor through 30 built-in tools. Supports 80+ node types.

First-Time Setup

If godot_execute tool is not available, install the gateway extension:

# From skill directory
./scripts/install-extension.sh

# Restart gateway
openclaw gateway restart

The extension files are in extension/ directory.

Quick Reference

Core Tools

CategoryKey Tools
---------------------
Scenescene.create, scene.getCurrent, scene.open, scene.save
Nodenode.find, node.create, node.delete, node.getData
Transformtransform.setPosition, transform.setRotation, transform.setScale
Debugdebug.tree, debug.screenshot, console.getLogs
Inputinput.keyPress, input.mouseClick, input.actionPress
Editoreditor.play, editor.stop, editor.getState

Common Workflows

1. Scene Creation

Use godot_execute tool:

  • godot_execute(tool="scene.create", parameters={rootType: "Node2D", name: "Level1"})
  • godot_execute(tool="node.create", parameters={type: "CharacterBody2D", name: "Player"})
  • godot_execute(tool="scene.save")

2. Find & Modify Nodes

  • godot_execute(tool="node.find", parameters={name: "Player"})
  • godot_execute(tool="node.getData", parameters={path: "Player"})
  • godot_execute(tool="transform.setPosition", parameters={path: "Player", x: 100, y: 200})

3. Game Testing with Input

  • godot_execute(tool="editor.play")
  • godot_execute(tool="input.keyPress", parameters={key: "W"})
  • godot_execute(tool="input.actionPress", parameters={action: "jump"})
  • godot_execute(tool="debug.screenshot")
  • godot_execute(tool="editor.stop")

4. Check Logs

  • godot_execute(tool="console.getLogs", parameters={limit: 50})
  • godot_execute(tool="console.getLogs", parameters={type: "error", limit: 20})

Tool Categories

Console (2 tools)

  • console.getLogs - Get logs from Godot log file {limit: 100, type: "error"|"warning"|""}
  • console.clear - Placeholder (logs can't be cleared programmatically)

Scene (5 tools)

  • scene.getCurrent - Get current scene info
  • scene.list - List all .tscn/.scn files
  • scene.open - Open scene by path
  • scene.save - Save current scene
  • scene.create - Create new scene {rootType: "Node2D"|"Node3D"|"Control", name: "SceneName"}

Node (6 tools)

  • node.find - Find by name, type, or group
  • node.create - Create node (80+ types: CSGBox3D, MeshInstance3D, ColorRect, etc.)
  • node.delete - Delete node by path
  • node.getData - Get node info, children, transform
  • node.getProperty - Get property value
  • node.setProperty - Set property value (Vector2/3 auto-converted)

Transform (3 tools)

  • transform.setPosition - Set position {x, y} or {x, y, z}
  • transform.setRotation - Set rotation (degrees)
  • transform.setScale - Set scale

Editor (4 tools)

  • editor.play - Play current or custom scene
  • editor.stop - Stop playing
  • editor.pause - Toggle pause
  • editor.getState - Get playing state, version, project name

Debug (3 tools)

  • debug.screenshot - Capture viewport
  • debug.tree - Get scene tree as text
  • debug.log - Print message

Input (7 tools) - For Game Testing

  • input.keyPress - Press and release key {key: "W"}
  • input.keyDown - Hold key down
  • input.keyUp - Release key
  • input.mouseClick - Click at position {x, y, button: "left"|"right"|"middle"}
  • input.mouseMove - Move mouse to position {x, y}
  • input.actionPress - Press input action {action: "jump"}
  • input.actionRelease - Release input action

Script (2 tools)

  • script.list - List .gd files
  • script.read - Read script content

Resource (1 tool)

  • resource.list - List files by extension

Supported Keys for Input

A-Z, 0-9, SPACE, ENTER, ESCAPE, TAB, BACKSPACE, DELETE
UP, DOWN, LEFT, RIGHT
SHIFT, CTRL, ALT
F1-F12

Node Types for Creation

TypeDescription
-------------------
Node2D2D spatial
Node3D3D spatial
Sprite2D2D sprite
CharacterBody2D2D character
CharacterBody3D3D character
RigidBody2D/3DPhysics body
Area2D/3DTrigger area
Camera2D/3DCamera
Label, ButtonUI elements

Tips

Input Simulation

  • Only works during Play mode
  • Use input.actionPress for mapped actions (from Input Map)
  • Use input.keyPress for direct key simulation

Finding Nodes

node.find {name: "Player"}      # By name substring
node.find {type: "Sprite2D"}    # By exact type
node.find {group: "enemies"}    # By group

Vector Properties

node.setProperty auto-converts dictionaries to Vector2/Vector3:

{path: "Cam", property: "zoom", value: {x: 2, y: 2}}  # → Vector2(2, 2)

Console Logs

console.getLogs {limit: 50}           # Last 50 lines
console.getLogs {type: "error"}       # Errors only
console.getLogs {type: "warning"}     # Warnings only

🔐 Security: Model Invocation Setting

When publishing to ClawHub, you can configure disableModelInvocation:

SettingAI Auto-InvokeUser Explicit Request
----------------------------------------------
false (default)✅ Allowed✅ Allowed
true❌ Blocked✅ Allowed

Recommendation: true

Reason: During Godot development, it's useful for AI to autonomously perform supporting tasks like checking scene tree, taking screenshots, and inspecting nodes.

When to use true: For sensitive tools (payments, deletions, message sending, etc.)

版本历史

共 1 个版本

  • v1.2.7 当前
    2026-03-28 16:01 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

developer-tools

CodeConductor.ai

larsonreever
AI驱动平台,提供快速全栈开发、智能体、工作流自动化及低代码AI集成的可扩展产品创建。
★ 66 📥 179,854
developer-tools

Github

steipete
使用 `gh` CLI 与 GitHub 交互,通过 `gh issue`、`gh pr`、`gh run` 和 `gh api` 管理议题、PR、CI 运行及高级查询。
★ 667 📥 323,813
developer-tools

Gog

steipete
Google Workspace 命令行工具,支持 Gmail、日历、云端硬盘、通讯录、表格和文档。
★ 921 📥 185,731