一句话结论:游戏开发技能包一条命令就能同时装进 Claude Code 和 Codex,用时约 3 秒。实测 Codex 会自己按任务读取 Godot 技能(二段跳读了 2 个,背包读了 2 个),两步共 322 秒;Claude Code 不点名时不会调用技能,输入 /router 后它先认出项目是 Godot 4.5,再加载 godot-2d-movement 和 platformer 两个技能,82 秒做完二段跳并自己跑了 headless 测试。五份代码在 Godot 4.5.1 headless 下运行都没有报错,也都没有写出 Godot 3 的旧写法。
创建 API Key,Claude Code 和 Codex 都能用 →
游戏开发技能包是什么
awesome-gamedev-agent-skills 是一套给 AI 编程工具用的游戏开发技能,格式就是 Claude Skills 用的 SKILL.md。仓库说明里写的是 74 个技能,外加一个路由技能 router,覆盖 Godot、Unity、Unreal、Phaser、PixiJS、three.js、Bevy、pygame、LÖVE、Roblox。
据报道,这个技能包 10 月 19 日在 X 上被分享后获得了 1850 个赞、3639 次收藏(来源:项目仓库)。
我们实际装完数了一下,技能目录一共 75 个,其中和 Godot 有关的有 16 个:godot-2d-movement、godot-gdscript、godot-nodes-scenes、godot-physics、godot-resources、godot-ui-control、godot-tilemap、godot-signals-groups、godot-gdscript-headless-testing 等。另外还有 platformer(平台跳跃)、rpg、roguelike 这类按游戏类型分的技能。
router 的作用是:先看项目文件判断用的是哪个引擎,再按任务挑出最少的几个技能让 AI 读。它自己不教具体 API,只负责分派。适合谁
- 想用 AI 写 Godot 代码、做独立小游戏或 Game Jam 原型的人。
- 已经在用 Claude Code 或 Codex,想让它写出的 GDScript 更贴近 Godot 4 规范。
- 之前看过我们 Claude Code Blender 做游戏 3D 模型 的读者,可以接着把模型放进 Godot 里做玩法。
第一步:把 Claude Code 和 Codex 接到本站
Claude Code 的接入见 Claude Code 中转接入。全局配置写在 ~/.claude/settings.json,地址不带 /v1:
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.aicodewith.ai",
"ANTHROPIC_AUTH_TOKEN": "sk-你的Key"
}
}
Codex 的接入见 Codex 中转接入。全局配置写在 ~/.codex/config.toml:
model_provider = "aicodewith"
model = "gpt-5.6-sol"
[model_providers.aicodewith]
name = "aicodewith"
base_url = "https://api.aicodewith.ai/chatgpt/v1"
wire_api = "responses"
experimental_bearer_token = "sk-你的Key"
两端用同一个 Key 就行。实测时 Claude Code 跑的是 claude-opus-5-5,Codex 跑的是 gpt-5.6-sol。
第二步:一条命令安装技能包
需要先装好 Node.js。下面这条命令会把技能包装到全局,同时给 Claude Code 和 Codex 用:
npx skills add gamedev-skills/awesome-gamedev-agent-skills -g -a claude-code -a codex
实测约 3 秒装完。技能实际放在 ~/.agents/skills/ 下,Codex 直接读这个目录,Claude Code 通过软链接读取。装完后 Claude Code 启动时能在技能列表里看到 router、godot-2d-movement 等名字。
技能目录和 Skill 的基本用法,见 Claude Code Skill 怎么用。安装器最后也会提醒:技能会以 AI 的完整权限运行,装之前先看一眼内容。
第三步:在 Linux 上装 Godot 4
我们用的是 Godot 4.5.1 官方 Linux 版,解压后是一个可执行文件:
curl -LO https://github.com/godotengine/godot/releases/download/4.5.1-stable/Godot_v4.5.1-stable_linux.x86_64.zip
unzip Godot_v4.5.1-stable_linux.x86_64.zip
sudo mv Godot_v4.5.1-stable_linux.x86_64 /usr/local/bin/godot
godot --version
放到 /usr/local/bin 这类系统路径下很重要,原因见后面的常见报错。没有图形界面的服务器上,用 headless 方式运行项目:
godot --headless --path . --quit-after 120
--quit-after 120 表示跑 120 帧后自动退出,用来检查脚本和场景有没有运行时报错。
第四步:准备一个 2D 平台跳跃小项目
项目只有三个文件:project.godot、主场景 main.tscn(一个 CharacterBody2D 角色加一块地面)和角色脚本 player.gd。角色脚本是 Godot 4 默认的移动模板,只会左右走和单次跳跃:
extends CharacterBody2D
const SPEED = 200.0
const JUMP_VELOCITY = -400.0
func _physics_process(delta: float) -> void:
if not is_on_floor():
velocity += get_gravity() * delta
if Input.is_action_just_pressed("ui_accept") and is_on_floor():
velocity.y = JUMP_VELOCITY
var direction := Input.get_axis("ui_left", "ui_right")
velocity.x = direction * SPEED if direction else move_toward(velocity.x, 0, SPEED)
move_and_slide()
然后在项目目录里分别启动 Claude Code 和 Codex,依次说两句话:「给角色加二段跳」「加一个背包」。
实测结果:Codex
Codex 收到「给角色加二段跳」后,回复里直接说「这是 Godot 2D 角色移动改动,我会遵循项目适用的 Godot 移动与 GDScript 规范」,然后读取了 godot-2d-movement 和 godot-gdscript 两个技能。它没有先走 router,而是根据技能描述自己挑。
- 二段跳:用时 173 秒。新增可在 Inspector 里调整的
@export var max_air_jumps,落地重置次数。 - 背包:用时 149 秒,读取了
godot-resources和godot-ui-control。做了 20 格背包、同名物品堆叠到 99、add_item()接口和inventory_changed信号,按 I 键开关界面,启动时放了几样示例物品。
Codex 写的二段跳核心逻辑:
@export var max_air_jumps: int = 1
var air_jumps_remaining: int = 0
# _physics_process 里:
if is_on_floor():
air_jumps_remaining = max_air_jumps
...
elif air_jumps_remaining > 0:
velocity.y = JUMP_VELOCITY
air_jumps_remaining -= 1
Codex 想自己跑 Godot 检查时报了 godot: command not found,所以它是写完就交付的。我们事后用 Godot 4.5.1 headless 跑了它的项目,没有任何报错。实测结果:Claude Code
直接说「给角色加二段跳」「加一个背包」时,Claude Code 两次都没有调用任何技能,分别用了 20 秒和 65 秒,靠自己的知识写完,并主动用 godot --headless 检查了脚本。背包做得很完整:Item 资源类、两种示例物品(.tres)、能捡起的拾取物 pickup.gd、20 格背包和 I 键开关的界面。
想让它用上技能包,要在提示词前面加 /router:
/router 给角色加二段跳
这次 Claude Code 先读项目文件,回复「I found Godot 4.5 (project.godot), so I'm loading godot-2d-movement and platformer」,然后调用了这两个技能。整个过程 82 秒,最后它还写了一个临时 headless 测试:等角色落地后连按三次跳跃,前两次触发、第三次被挡住,测完自己删掉了测试文件。
const AIR_JUMPS = 1 # 1 = 二段跳;改成 2 就是三段跳
var air_jumps_left := AIR_JUMPS
func _physics_process(delta: float) -> void:
if is_on_floor():
air_jumps_left = AIR_JUMPS
else:
velocity += get_gravity() * delta
if Input.is_action_just_pressed("ui_accept"):
if is_on_floor():
velocity.y = JUMP_VELOCITY
elif air_jumps_left > 0:
velocity.y = JUMP_VELOCITY
air_jumps_left -= 1
它还主动问了一句:从平台边缘走下去时要不要算用掉第一跳、要不要加土狼时间(离开平台后的短暂可跳窗口)。这正是 platformer 技能里讲的手感细节。
装和不装技能包有什么区别
我们另开两个没装技能包的环境,做同样的两句任务对照:
| 环境 | 二段跳耗时 | 背包耗时 | 读取的技能 | headless 运行 |
|---|---|---|---|---|
| Codex + 技能包 | 173 秒 | 149 秒 | godot-2d-movement、godot-gdscript、godot-resources、godot-ui-control | 无报错 |
| Codex 不装 | 22 秒 | 83 秒 | 无 | 无报错 |
| Claude Code + 技能包(不点名) | 20 秒 | 65 秒 | 无 | 无报错 |
| Claude Code + 技能包(/router) | 82 秒 | — | router 选了 godot-2d-movement、platformer | 无报错 |
| Claude Code 不装 | 53 秒 | 72 秒 | 无 | 无报错 |
几个结论:
- Godot 3 旧写法:五份代码里都没有出现
KinematicBody2D、move_and_slide(velocity)、不带@的export/onready、yield这类 Godot 3 写法,全部是CharacterBody2D、get_gravity()、@export、signal.emit()这种 Godot 4 API。在这两个简单任务上,装不装技能包在 API 版本上没有差别。 - Codex 差别最明显:不装技能包时,背包只做了 8 个空格子的界面,按 B 开关,物品逻辑留给以后;装了之后做出了堆叠、接口、信号和示例物品。代价是更慢,因为它要先读技能文档。
- Claude Code 要点名:技能装上了,但简单任务它不会自己去调用。想用就加
/router,或者直接写技能名,比如「用 godot-2d-movement 技能加二段跳」。
复杂一些的任务(多人联机、Shader、导出打包)技能包里都有对应技能,差别可能更大。想看引擎直连的玩法,可以参考 Claude Code 控制 Unreal Engine。
常见报错
Codex 提示 godot: command not found
实测原文:
/bin/bash: line 1: godot: command not found
Codex 执行命令用的是 bash -lc(登录 shell),会重新加载 PATH。如果 Godot 只放在当前终端临时加的路径里,Codex 就找不到。把 Godot 放到 /usr/local/bin/godot,或者在 ~/.profile 里加上它所在目录,再重开 Codex。
Claude Code 装了技能却没用上
这不是报错,但很容易误会成没装好。先确认技能在:
ls ~/.agents/skills | grep godot
能列出 godot-2d-movement 等目录就说明装好了。然后在提示词前加 /router,或直接点名技能。
常见问题
游戏开发技能包支持哪些工具?
仓库说明里列了 Claude Code、Cursor、Kiro、Codex、Copilot、Gemini CLI 等。我们实测了 Claude Code 和 Codex,用 -a claude-code -a codex 一次装给两端。
必须用 Godot 4 吗?
我们测的是 Godot 4.5.1。技能包里的 Godot 技能按 Godot 4 写,比如 godot-gdscript 讲的是 Godot 4 的 GDScript。
没有显示器的 Linux 服务器能测 Godot 吗?
能。用 godot --headless --path . --quit-after 120 跑项目,有脚本错误会直接打印出来。Claude Code 还会自己写 headless 测试脚本模拟按键。
装技能包会让 AI 变慢吗?
Codex 会,因为它每次都会先读相关技能。本次二段跳从 22 秒变成 173 秒,背包从 83 秒变成 149 秒,但背包功能明显更完整。Claude Code 不点名时不读技能,耗时和不装差不多。
想做 3D 模型再放进 Godot,怎么弄?
可以先看 Claude Code Blender 实测,导出的 .glb 能直接拖进 Godot 4。



