playbook/.agents/cpp/index.md

2.0 KiB
Raw Blame History

C++ 代理规则集(.agents/cpp

本规则集用于存放 AI/自动化代理在仓库内工作时必须遵守的规则C++ 语言专属)。

范围与优先级

  • 作为仓库级基线规则集使用;更靠近代码目录的规则应更具体并可覆盖基线。
  • 当代理规则与 docs 发生冲突时:
    1. 安全/合规优先
    2. 其次保持仓库现有一致性

代理工作原则

  • 先理解目标与上下文,再动手改代码。
  • 修改要小而清晰;避免无关重构。
  • 不要引入新依赖或工具,除非明确要求。

子文档

  • 安全与鉴权:auth.md
  • 性能:performance.md
  • 代码质量:code_quality.md
  • 测试:testing.md

C++ 必要约定(必须遵守)

  • 语言标准C++23含 Modules
  • 格式化:统一使用 clang-formatGoogle 基线);避免手工排版对齐造成 diff 噪音。
  • 文件与命名:遵守 docs/cpp/ 下的规范(或目标项目 vendoring 的标准快照路径)。
  • Modulesmodule 名建议使用点分层级;每段用 lower_snake_casemodule interface unit 推荐 .cppm
  • Modules 工程:新增/删除/重命名 .cppm 或修改 export module 时,必须更新 CMake target 的模块 file-set/清单(否则构建容易漂移)。
  • Windows不支持原生 Windows 开发环境Windows 产物通过 Linux + Clang 交叉编译 profile 验证profile 的 [settings] os=Windows)。
  • 依赖管理(如使用 Conan必须提供统一 presetconan-release/conan-debug);优先通过 conan install + cmake --preset ... 验证;如遇 Conan 家目录权限问题可临时设置 CONAN_HOME=/tmp/conan-home

与开发规范的关系

  • 在本仓库内:docs/cpp/docs/common/
  • 在目标项目内(若按 README 推荐的 subtree prefix docs/standards/playbook
    • 代码风格:docs/standards/playbook/docs/cpp/code_style.md
    • 命名规范:docs/standards/playbook/docs/cpp/naming.md
    • 提交信息:docs/standards/playbook/docs/common/commit_message.md