Files
ngzz-mc/CLAUDE.md

3.5 KiB
Raw Permalink Blame History

MC 项目规则Claude Code

本文件约束 AI 助手在本仓库中的行为。 项目:用 Go 实现的类 Minecraft 体素沙盒游戏(可扩展、可 Mod

第一原则:先查文档,再动手

  1. 任何任务开始前,先读 文档/索引.md(全部文档的唯一入口,书签式目录)。
  2. 按索引 §7「决策树」定位相关文档通读后再实现
  3. 文档与代码冲突时以文档为准;发现文档过时,先修文档再改代码。

文档速查(按任务定位)

任务类型 必读文档
Chunk 数据结构 / 异步生成 / 锁 文档/场景/区块管理.md
地形 / 噪声 / 洞穴 / 矿物 文档/场景/世界生成.md
生物群系 / 树 / 随机刻 / 液体 文档/场景/世界生态.md
渲染 / mesh / 图集 / GL 线程 / 光影包 文档/场景/渲染.md
材质包 / 光影包 / 内容包格式 / 默认回退 文档/设计.md §1.3、文档/场景/渲染.md §9
热更新 / 热重载 / 脚本引擎 / plugin 文档/场景/热更新.md、文档/设计.md §3.4
光照 / 火把 / relight 文档/场景/光照.md
物理 / 碰撞 / 移动 文档/场景/物理与碰撞.md
方块交互 / 破坏 / 耐久 / crack 文档/场景/方块交互与动画.md
红石 / 活塞 / 方块更新 文档/场景/红石与方块更新.md
实体 / AI / 寻路 / 掉落物 文档/场景/实体系统.md
物品 / 背包 / 配方 / 容器 文档/场景/物品与背包.md
工作台 / 合成表 / 配方匹配 文档/场景/工作台与合成表.md
挖矿 / 矿物 / 工具门槛 / 附魔 文档/场景/挖矿与矿物.md
动物 / 繁殖 / 驯服 文档/场景/动物体系.md
村庄 / 村民 / 建造房子 / 交易 文档/场景/村民系统.md
僵尸 / 敌对生物 / 村庄围攻 文档/场景/僵尸与敌对生物.md
UI / 拖拽 / 多语言 / 输入 文档/场景/UI与输入.md
UI 一比一还原 / 原版界面布局 文档/场景/UI还原.md
音频 / 3D 音效 文档/场景/音频.md
多人同步 / 防作弊 文档/场景/多人同步.md、文档/网络协议.md
存档 / 持久化 / diff 文档/场景/存档与持久化.md、文档/存档格式.md
性能 / GC / pprof 文档/场景/性能与内存.md
网络 / 多人 文档/网络协议.md、文档/设计.md §10
Mod 文档/Mod开发指南.md、文档/设计.md §3
测试 / CI 文档/测试与质量.md
构建 / 发布 文档/构建与发布.md
编码风格 / Git / 评审 文档/开发规范.md
规划 / 里程碑 文档/路线图.md

硬性规则

  • 协议、存档格式、Mod API、场景算法等规范类改动:先更新对应文档,再改代码,并登记到 文档/索引.md
  • 新增文档必须登记到 文档/索引.md(对应层 + 主题索引 + 阅读路径 + 决策树)。
  • 遵循 Go 编码规范(文档/开发规范.md错误带上下文、无 goroutine 泄漏、gofmt/go vet 零告警。
  • 提交信息使用 Conventional Commitsfeat(world): ...fix(chunk): ...)。
  • 禁止臆造项目不存在的目录 / 文件结构;以 文档/设计.md §1.1 为准。
  • 场景专篇引用用相对链接(光照.md),引总纲用 ../设计.md

常用命令

  • 测试:go test -race ./...
  • Lintgo vet ./...golangci-lint run
  • 基准:go test -bench=. -benchmem ./...
  • 性能:go tool pprof http://localhost:6060/debug/pprof/heap(仅 debug 构建)