通过 OpenClaw Godot 插件控制 Godot 编辑器。用于 Godot 游戏开发任务,包括场景管理、节点操作、输入模拟、调试等。
Godot 插件 技能是一项面向实际任务的技能,主要用于Control Godot 4. x 编辑器, 通过 30 个内建工具.;支持 80+ 节点 类型..;
For Telegram, Discord, 和其他 OpenClaw channe。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。
执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。结果生成后应检查内容的完整性、准确性、一致性和可用性,必要时抽样复核并根据反馈调整配置;涉及外部服务、账号凭据、个人信息或敏感数据时,还需遵守相应的权限、安全与合规要求。
通过 30 个内置工具控制 Godot 4.x 编辑器,支持 80+ 种节点类型。
适用于 Telegram、Discord 及其他 OpenClaw 渠道:
适用于 Claude Code、Cursor 及本地 AI 工具:
claude mcp add godot -- node /MCP~/index.js 若 godot_execute 工具不可用,请安装网关扩展:
# 从技能目录执行 ./scripts/install-extension.sh # 重启网关 openclaw gateway restart
扩展文件位于 extension/ 目录中。
| 类别 | 关键工具 |
|---|---|
| 场景 | scene.create、scene.getCurrent、scene.open、scene.save |
| 节点 | node.find、node.create、node.delete、node.getData |
| 变换 | transform.setPosition、transform.setRotation、transform.setScale |
| 调试 | debug.tree、debug.screenshot、console.getLogs |
| 输入 | input.keyPress、input.mouseClick、input.actionPress |
| 编辑器 | editor.play、editor.stop、editor.getState |
使用 godot_execute 工具:
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")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})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")godot_execute(tool="console.getLogs", parameters={limit: 50})godot_execute(tool="console.getLogs", parameters={type: "error", limit: 20})console.getLogs — 从 Godot 日志文件获取日志 {limit: 100, type: "error"|"warning"|""}console.clear — 占位符(日志无法通过编程方式清除)scene.getCurrent — 获取当前场景信息scene.list — 列出所有 .tscn/.scn 文件scene.open — 按路径打开场景scene.save — 保存当前场景scene.create — 创建新场景 {rootType: "Node2D"|"Node3D"|"Control", name: "SceneName"}node.find — 按名称、类型或分组查找node.create — 创建节点(支持 80+ 类型:CSGBox3D、MeshInstance3D、ColorRect 等)node.delete — 按路径删除节点node.getData — 获取节点信息、子节点及变换数据node.getProperty — 获取属性值node.setProperty — 设置属性值(Vector2/Vector3 自动转换)transform.setPosition — 设置位置 {x, y} 或 {x, y, z}transform.setRotation — 设置旋转(单位:度)transform.setScale — 设置缩放editor.play — 运行当前场景或指定场景editor.stop — 停止运行editor.pause — 切换暂停状态editor.getState — 获取运行状态、引擎版本、项目名称debug.screenshot — 截取视口画面debug.tree — 以文本形式获取场景树debug.log — 打印消息input.keyPress — 按下并释放按键 {key: "W"}input.keyDown — 持续按下按键input.keyUp — 释放按键input.mouseClick — 在指定位置点击 {x, y, button: "left"|"right"|"middle"}input.mouseMove — 将鼠标移动到指定位置 {x, y}input.actionPress — 触发输入动作 {action: "jump"}input.actionRelease — 释放输入动作script.list — 列出所有 .gd 文件script.read — 读取脚本内容resource.list — 按扩展名列出文件A-Z, 0-9, SPACE, ENTER, ESCAPE, TAB, BACKSPACE, DELETE UP, DOWN, LEFT, RIGHT SHIFT, CTRL, ALT F1-F12
| 类型 | 说明 |
|---|---|
Node2D |
2D 空间节点 |
Node3D |
3D 空间节点 |
Sprite2D |
2D 精灵节点 |
CharacterBody2D |
2D 角色节点 |
CharacterBody3D |
3D 角色节点 |
RigidBody2D/3D |
物理刚体 |
Area2D/3D |
触发区域 |
Camera2D/3D |
相机节点 |
Label、Button |
UI 元素 |
input.actionPressinput.keyPressnode.find {name: "Player"} # 按名称子串匹配
node.find {type: "Sprite2D"} # 按精确类型匹配
node.find {group: "enemies"} # 按分组匹配
node.setProperty 自动将字典转换为 Vector2 / Vector3:
{path: "Cam", property: "zoom", value: {x: 2, y: 2}} # → Vector2(2, 2)
console.getLogs {limit: 50} # 最近 50 行
console.getLogs {type: "error"} # 仅错误日志
console.getLogs {type: "warning"} # 仅警告日志
发布至 ClawHub 时,可配置 disableModelInvocation:
| 设置 | AI 自动调用 | 用户显式请求 |
|---|---|---|
false(默认) |
✅ 允许 | ✅ 允许 |
true |
❌ 阻止 | ✅ 允许 |
true原因:在 Godot 开发过程中,允许 AI 自主执行辅助任务(如检查场景树、截图、检视节点等)非常有用。
何时应设为 true:针对敏感操作(如支付、删除、发送消息等)。
自 v1.2.10 起,该技能默认启用 disableModelInvocation: true —— 仅响应用户的显式请求。
本技能驱动一个实时运行的 Godot 编辑器。以下为能力与当前限制的完整披露:
Apache-2.0 — 详见 LICENSE.md
相关专题
热门下载
相关下载
精品课程
共1课时 | 166人学习
共0课时 | 0人学习
共1课时 | 210人学习
最新文章