CLAUDE.md · git:20260723.5c23533 · 2026-07-23 · sha256 ba1e1833c905f51e
CLAUDE.md git:20260723.5c23533A
Immutable. This exact content is served forever at /api/v1/blob/ba1e1833c905f51e.
# CLAUDE.md 本项目是 YOLO-Master —— 基于 Ultralytics 构建、深度集成 MoE 的 YOLO 实时目标检测框架。 ## 首先阅读 完整的 agent 任务路由、目录职责、高风险区域和验证命令映射见 [`AGENTS.md`](AGENTS.md)。本文件仅补充 Claude 专属注意事项。 ## 关键约定 - **代码风格**:Ruff(line-length=120、Google docstring),变更后务必运行 `ruff check` 和 `ruff format --check` - **测试选择**:按变更区域选择测试,不要每次跑全量。参见 AGENTS.md 的"任务路由"表 - **Doctest**:`pytest --doctest-modules` 默认启用,新增公共函数需附带可运行 doctest - **配置驱动**:模型架构通过 YAML 定义(`ultralytics/cfg/models/`),不硬编码架构参数 - **MoE 路由安全**:修改 `ultralytics/nn/modules/moe/routers.py` 前必须理解 4-D NCHW 约束和通道校验逻辑 - **PEFT 零修改**:LoRA 微调纯配置驱动,不改架构代码;通过 V-PEFT 编译器注入 ## 变更前必做 1. 确认变更区域,在 AGENTS.md "任务路由"表找到对应验证命令 2. 先跑 `ruff check <变更路径>` 确认无 lint 违规 3. 跑对应区域的聚焦测试(非全量) 4. 如修改了 `ultralytics/cfg/`,额外跑 `tests/test_default_config_integrity.py` ## 变更后必做 1. `ruff check` + `ruff format --check` 覆盖所有变更文件 2. 聚焦测试通过 3. 如涉及公共 API,跑 `pytest --doctest-modules ultralytics/<变更模块>/` 4. 如涉及 Agent Skill,跑 `python agent/scripts/validate_yolo_master_skill.py --suite quick` ## 避免 - 不要在 `ultralytics/cfg/default.yaml` 中添加未文档化的参数 - 不要绕过 `ultralytics/nn/modules/moe/` 的路由边界检查 - 不要直接修改 `ultralytics/utils/callbacks/`(coverage omit 区域,变更需手动验证) - 不要在全量测试中使用 `--slow` 标记(仅供显式调用) - 不要在 `agent/SKILL.md` 之外硬编码 YOLO CLI 命令字符串 ## YOLO 操作 需要执行 YOLO 训练/验证/推理/导出等操作时,阅读 [`agent/SKILL.md`](agent/SKILL.md) 获取 CLI 命令、分发器用法和 MPS/CUDA 设备选择规则。