🔧 chore(standards): sync cpp playbook rules
Vendor standards live under docs/standards/playbook and are synced into .agents/cpp. Add AGENTS.md entries so agents working in lsp-server follow the C++ ruleset and standards.
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
# C++ 代理规则集(.agents/cpp)
|
||||
|
||||
本规则集用于存放 **AI/自动化代理在仓库内工作时必须遵守的规则**(C++ 语言专属)。
|
||||
|
||||
## 范围与优先级
|
||||
|
||||
- 作为仓库级基线规则集使用;更靠近代码目录的规则应更具体并可覆盖基线。
|
||||
- 当代理规则与 `docs` 发生冲突时:
|
||||
1. 安全/合规优先
|
||||
2. 其次保持仓库现有一致性
|
||||
|
||||
## 代理工作原则
|
||||
|
||||
- 先理解目标与上下文,再动手改代码。
|
||||
- 修改要小而清晰;避免无关重构。
|
||||
- 不要引入新依赖或工具,除非明确要求。
|
||||
|
||||
## 子文档
|
||||
|
||||
- 安全与鉴权:`auth.md`
|
||||
- 性能:`performance.md`
|
||||
- 代码质量:`code_quality.md`
|
||||
- 测试:`testing.md`
|
||||
|
||||
## C++ 必要约定(必须遵守)
|
||||
|
||||
- 语言标准:C++23(含 Modules)。
|
||||
- 格式化:统一使用 `clang-format`(Google 基线);避免手工排版对齐造成 diff 噪音。
|
||||
- 文件与命名:遵守 `docs/cpp/` 下的规范(或目标项目 vendoring 的标准快照路径)。
|
||||
- Modules:module 名建议使用点分层级;每段用 `lower_snake_case`;module interface unit 推荐 `.cppm`。
|
||||
- Modules 工程:新增/删除/重命名 `.cppm` 或修改 `export module` 时,必须更新 CMake target 的模块 file-set/清单(否则构建容易漂移)。
|
||||
- Windows:不支持原生 Windows 开发环境;Windows 产物通过 Linux + Clang 交叉编译 profile 验证(profile 的 `[settings] os=Windows`)。
|
||||
- 依赖管理(如使用 Conan):必须提供统一 preset(`conan-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`
|
||||
Reference in New Issue
Block a user