| name | foxctl Godot Editor |
| description | Control the Godot Editor from foxctl - inspect scene trees, create nodes, set properties, attach scripts, and connect signals. |
Godot Editor Integration
Interact with a running Godot Editor via the GodotAIBridge plugin.
Prerequisites
- Godot Editor must be running with your project open
- GodotAIBridge plugin must be installed and enabled
- Plugin listens on
localhost:7777 by default
Actions
Check Connection
foxctl run editor/godot --input '{"action": "ping"}'
Inspect Scene Tree
Get the current scene structure:
foxctl run editor/godot --input '{
"action": "scene_tree",
"max_depth": 10,
"max_nodes": 500
}'
Inspect Node
Get details about a specific node:
foxctl run editor/godot --input '{
"action": "node_inspect",
"node_path": "/root/Main/Player"
}'
Create Node
Add a new node to the scene:
foxctl run editor/godot --input '{
"action": "node_create",
"parent_path": "/root/Main",
"node_type": "CharacterBody2D",
"node_name": "Enemy"
}'
Set Property
Modify a node's property:
foxctl run editor/godot --input '{
"action": "node_set_prop",
"node_path": "/root/Main/Player",
"property": "position",
"value": "Vector2(100, 200)"
}'
Attach Script
Attach a GDScript to a node:
foxctl run editor/godot --input '{
"action": "node_attach_script",
"node_path": "/root/Main/Enemy",
"script_path": "res://scripts/enemy.gd"
}'
Connect Signal
Connect a signal between nodes:
foxctl run editor/godot --input '{
"action": "signal_connect",
"node_path": "/root/Main/Button",
"signal_name": "pressed",
"target_path": "/root/Main/Player",
"method_name": "_on_button_pressed"
}'
Run Game
Start the game from editor:
foxctl run editor/godot --input '{"action": "run_game"}'
Get Errors
Retrieve editor errors:
foxctl run editor/godot --input '{
"action": "errors",
"error_limit": 50
}'
Connection Options
Override default connection settings:
foxctl run editor/godot --input '{
"action": "ping",
"host": "192.168.1.100",
"port": 7777,
"timeout_ms": 5000
}'
Common Workflows
Scene Setup
- Create node structure
- Set properties (position, scale, etc.)
- Attach scripts
- Connect signals
Debugging
- Check connection with
ping
- Get scene tree to understand structure
- Inspect specific nodes for property values
- Check
errors for issues