一键导入
asco-includes
为 ASCO 仓库清理头文件依赖与 include 顺序。用于删除多余 include、补齐缺失的直接依赖,并按项目既有顺序规范整理 include 块;未指定范围时默认处理用户当前打开的 C++ 源文件,默认只做局部诊断,不主动构建或跑测试。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
为 ASCO 仓库清理头文件依赖与 include 顺序。用于删除多余 include、补齐缺失的直接依赖,并按项目既有顺序规范整理 include 块;未指定范围时默认处理用户当前打开的 C++ 源文件,默认只做局部诊断,不主动构建或跑测试。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
为 ASCO 模块编写单元测试与中文文档。用于新增模块、补齐测试覆盖、补写 API/模块说明、整理行为语义说明。重点产出 tests 下的用例与 docs/zh-cn/src 下的专业文档,文档只描述语义、约束和可观察行为,不描述实现细节。
为 ASCO 仓库做代码审查。用于三种模式:全量 review、排除当前未提交修改的全量 review、review 当前未提交修改(包含未追踪文件)。如果用户没有明确指出模式,则默认 review 当前未提交修改。重点输出 bug、风险、行为回归和缺失测试。
为 ASCO 项目进行配置、构建和测试。用于本仓库的本地开发构建流程、测试执行、构建失败排查、以及新增测试后的接入检查。优先使用 VS Code 的 CMake Tools 扩展;只有用户明确说明不使用该扩展时,才回退到终端命令。
基于 SOC 职业分类
| name | asco-includes |
| description | 为 ASCO 仓库清理头文件依赖与 include 顺序。用于删除多余 include、补齐缺失的直接依赖,并按项目既有顺序规范整理 include 块;未指定范围时默认处理用户当前打开的 C++ 源文件,默认只做局部诊断,不主动构建或跑测试。 |
| argument-hint | 说明要清理的范围(默认是用户当前打开的 C++ 源文件),是否只清理头文件,还是同时清理对应实现文件的 include,是否只分析不改动 |
开始前先确认这些信息;如果它们会影响当前任务但缺失,再向用户确认:
.cpp / 平台实现文件。如果用户没有明确指定范围,默认把“用户当前打开的 C++ 源文件”当作起点,而不是默认扩大到整个目录或整个模块。
如果用户明确点名了某个文件,默认只清理那个文件本身;除非用户明确要求,或该文件的局部验证必须借助最近消费者/对应实现文件做消歧,否则不要自动扩到相邻文件。
asco/ 下,运行时内部实现主要位于 asco/core/。asco/core/ 下的改动属于运行时语义附近的改动;即使只是 include hygiene,也不要让修改越过当前问题范围。.clang-format 目前配置了 IncludeBlocks: Preserve 和 SortIncludes: true。.h 文件通常先放标准库头;如果存在第三方库头,则放在标准库头和系统头之后、项目内头之前;最后再放项目内头。.cpp 文件通常先放对应的主头,再空一行,再放标准库头;如果存在系统头,则放在标准库头之后;如果存在第三方库头,则放在标准库头和系统头之后、项目内头之前;最后再放项目内头。build/ 下的生成文件。.h 里优先关注对外暴露的成员类型、返回值、参数、基类、模板约束、内联实现和标准库成员。.cpp 里优先关注实现体直接调用的函数、异常类型、std::move / std::forward / placement new 之类常见漏项。.cpp:对应主头优先放第一位。windows.h、pthread.h、sched.h、ncurses.h 这类头,则单独作为一组,放在标准库头之后。.h:标准库头在前;若有系统头和第三方库头,则第三方库头位于标准库头和系统头之后、项目头之前;项目内头仍在最后。pthread.h、sched.h 之类问题时,视为平台噪音,不把它误判成这次 include 改动引入的问题。满足以下条件才算完成:
.cpp 对应头优先、标准库其次、系统头位于标准库头之后、第三方库头位于标准库头和系统头之后且项目头之前、项目头最后;.h 先放标准库头,再按需要放系统头和第三方库头,项目头仍在最后。asco/core、并发、取消、生命周期和资源释放路径附近的改动。.cpp、对应头文件、同目录文件或相邻模块。.h 文件。.cpp 正在依赖传递包含时,才补对应 .cpp 的 direct include。asco/core、调度、取消、生命周期、并发和资源释放路径附近的修改也必须由用户自行核对语义、边界条件和失败路径。asco/core/task,每次只做一小批并先做局部诊断。.cpp 的 include 顺序整理成项目现有规范,并补齐 std::move、异常类型、placement new 之类的直接依赖。