Build Compiled Extensions
A-EVO-Lab/a-evolve
How to build C/C++/Cython/Fortran extensions and frameworks like Caffe, OpenCV, protobuf-dependent projects from source.
MaaEnd cpp-algo C++ 编码风格与工程规范指南。参考 MaaFramework 的优秀实践,规范命名、头文件、公共工具、错误处理、日志、CMake 等方面。在编写、修改或审查 agent/cpp-algo/ 下的 C++ 代码时使用。
$ npx skills add MaaEnd/MaaEnd --skill cpp-algo-style -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install MaaEnd/MaaEnd cpp-algo-style --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/MaaEnd/MaaEnd.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/cpp-algo-style .claude/skills/cpp-algo-style && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "cpp-algo-style" agent skill from https://github.com/MaaEnd/MaaEnd/tree/v2/.agents/skills/cpp-algo-style into .claude/skills/cpp-algo-style/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cpp-algo-style", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/MaaEnd/MaaEnd/tree/v2/.agents/skills/cpp-algo-styleType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add MaaEnd/MaaEnd --skill cpp-algo-style -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install MaaEnd/MaaEnd cpp-algo-style --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/MaaEnd/MaaEnd.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/cpp-algo-style .agents/skills/cpp-algo-style && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "cpp-algo-style" agent skill from https://github.com/MaaEnd/MaaEnd/tree/v2/.agents/skills/cpp-algo-style into .agents/skills/cpp-algo-style/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cpp-algo-style", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add MaaEnd/MaaEnd --skill cpp-algo-style -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install MaaEnd/MaaEnd cpp-algo-style --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/MaaEnd/MaaEnd.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/cpp-algo-style .cursor/skills/cpp-algo-style && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "cpp-algo-style" agent skill from https://github.com/MaaEnd/MaaEnd/tree/v2/.agents/skills/cpp-algo-style into .cursor/skills/cpp-algo-style/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cpp-algo-style", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/MaaEnd/MaaEnd.git --path .agents/skills/cpp-algo-style--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add MaaEnd/MaaEnd --skill cpp-algo-style -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install MaaEnd/MaaEnd cpp-algo-style --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/MaaEnd/MaaEnd.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/cpp-algo-style .gemini/skills/cpp-algo-style && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "cpp-algo-style" agent skill from https://github.com/MaaEnd/MaaEnd/tree/v2/.agents/skills/cpp-algo-style into .gemini/skills/cpp-algo-style/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cpp-algo-style", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install MaaEnd/MaaEnd cpp-algo-styleInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add MaaEnd/MaaEnd --skill cpp-algo-style -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/MaaEnd/MaaEnd.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/cpp-algo-style .github/skills/cpp-algo-style && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "cpp-algo-style" agent skill from https://github.com/MaaEnd/MaaEnd/tree/v2/.agents/skills/cpp-algo-style into .github/skills/cpp-algo-style/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cpp-algo-style", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add MaaEnd/MaaEnd --skill cpp-algo-style -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install MaaEnd/MaaEnd cpp-algo-style --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/MaaEnd/MaaEnd.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/cpp-algo-style .opencode/skills/cpp-algo-style && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "cpp-algo-style" agent skill from https://github.com/MaaEnd/MaaEnd/tree/v2/.agents/skills/cpp-algo-style into .opencode/skills/cpp-algo-style/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cpp-algo-style", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
cpp-algo-styleMaaEnd cpp-algo C++ 编码风格与工程规范指南。参考 MaaFramework 的优秀实践,规范命名、头文件、公共工具、错误处理、日志、CMake 等方面。在编写、修改或审查 agent/cpp-algo/ 下的 C++ 代码时使用。
Cpp Algo Style is an agent skill from MaaEnd/MaaEnd. MaaEnd cpp-algo C++ 编码风格与工程规范指南。参考 MaaFramework 的优秀实践,规范命名、头文件、公共工具、错误处理、日志、CMake 等方面。在编写、修改或审查 agent/cpp-algo/ 下的 C++ 代码时使用。
Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `reference.md`).
It sits in Mobile. It works with C++ and OpenCV. The repository describes itself as: MaaEnd 终末地小助手:基于视觉 AI 的「明日方舟:终末地」自动化工具. The licence is AGPL-3.0.
12 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 047c8bf. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are cpp and cmake).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Cpp Algo Style loads about 2.3k tokens when it runs. Until then it costs about 35 tokens; SKILL.md has 509 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from MaaEnd/MaaEnd at commit 047c8bf, republished under its AGPL-3.0 licence (© MaaEnd). 509 words, ~2,335 tokens.
.claude/skills/cpp-algo-style/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.本指南以 MaaFramework 源码为标杆,针对 cpp-algo 中已知的工程缺陷制定规范。
cpp-algo 当前最严重的问题是 命名风格不统一,同一个项目中混用了多种约定。
| 元素 | 风格 | 示例 |
|---|---|---|
| 类 / 结构体 / 枚举 | PascalCase | MapLocator, MatchFeature |
| 成员函数 | camelCase | initialize(), resetTrackingState() |
| 自由函数 | PascalCase(对外)/ snake_case(内部工具) | CreateInputBackend() |
| 成员变量 | snake*case + 尾下划线 * | locator_, current_zone_id_ |
| 局部变量 | snake_case | search_rect, fine_result |
| 常量(constexpr) | k 前缀 + PascalCase | kDefaultMinimapRoi, kMaxLostFrames |
| 宏 | ALL_CAPS | MAA_TRUE, LOG_ARGS |
| 命名空间 | lowercase | maplocator, mapnavigator |
| 模板参数 | 后缀 _t 或 PascalCase | Item_t, OutT |
| 枚举值 | PascalCase | TrackingLost, ScreenBlocked |
MapPosition 中 zoneId、sliceIndex 等用了 camelCase 成员,应改为 zone_id_、slice_index_TrackingConfig 中 maxNormalSpeed、screenBlockedThreshold 同理MatchStrategy 中 _isBase(前导下划线)应改为 is_base_MinimapROIOriginX、MaxLostTrackingCount、MinMatchScore 缺少 k 前缀统一使用 #pragma once(已做到)。
按以下分组排列,组间空行分隔:
.cpp 对应的 .h<algorithm>, <string> ...<opencv2/...>, <meojson/json.hpp>, <onnxruntime/...><MaaFramework/...>, <MaaUtils/...>"MapTypes.h", "../utils.h"必须 通过 <MaaUtils/NoWarningCV.hpp> 引入 OpenCV,禁止直接 <opencv2/opencv.hpp>。这是 MaaFramework 的统一做法,用于抑制编译器警告。
当前违规文件:MatchStrategy.h、MotionTracker.h、YoloPredictor.h 直接引入了 <opencv2/opencv.hpp>。
对外部依赖(MaaFramework、第三方库)统一使用尖括号 <>,对本项目内部头文件使用双引号 ""。
cpp-algo 中存在多处 重复实现,必须提取到公共头文件。
ScopedImageBuffer — 当前在 MapLocateAction.cpp、position_provider.cpp、adb_input_backend.cpp 三处重复定义,应提取到公共头文件(如 source/common/scoped_buffer.h):
class ScopedImageBuffer
{
public:
ScopedImageBuffer() : buffer_(MaaImageBufferCreate()) {}
~ScopedImageBuffer() { MaaImageBufferDestroy(buffer_); }
ScopedImageBuffer(const ScopedImageBuffer&) = delete;
ScopedImageBuffer& operator=(const ScopedImageBuffer&) = delete;
MaaImageBuffer* Get() const { return buffer_; }
private:
MaaImageBuffer* buffer_;
};DetectControllerType — 当前在 MapLocateAction.cpp、position_provider.cpp、backend.cpp 三处重复实现,应提取到 controller_type_utils.h。
MAA_TRUE / MAA_FALSE 宏 — 在多个 .cpp 中条件定义。应在一个公共头文件中统一处理,或直接使用 MaaBool 的 1 / 0。
source/common/ 下建立公共头文件detail 命名空间中maplocator、mapnavigatormapnavigator::backend::adbnamespace { } 在 .cpp 中)utils::SleepFor 嵌套在 mapnavigator 命名空间中(navi_math.h),而 source/utils.h 是另一个全局工具头。这造成了命名空间语义冲突。应将通用工具统一放入 source/common/。
MapLocator 已正确使用)= delete 拷贝构造和赋值(ScopedImageBuffer 已做到,但建议提取基类或用宏)IMatchStrategy + Factory 的设计是好的,保持ScopedImageBuffer 是好例子)NavigationStateMachine 持有多个裸指针(ActionWrapper* 等),生命周期依赖调用者保证——应添加注释说明所有权语义,或使用 std::shared_ptr / std::weak_ptrgetOrInitLocator() 使用 static std::shared_ptr——可接受但应注意线程安全和测试性遵循 maa-logging skill 的完整指南。此处强调 cpp-algo 特有的问题:
YOLO 推理中每帧输出完整 softmax 向量是 严重性能问题:
// 错误 — 每帧打印完整分类向量
LogInfo << "YOLO Raw All:" << yoloClassNames << std::vector<float>(...);
// 正确 — 仅输出关键结果,详细信息用 LogTrace
LogDebug << "YOLO:" << VAR(predicted_name) << VAR(max_conf);
LogTrace << "YOLO all scores:" << scores;| 场景 | 级别 |
|---|---|
| 初始化成功/失败、关键状态变更 | LogInfo |
| 定位结果、导航阶段切换 | LogInfo |
| 匹配分数、中间计算 | LogDebug |
| 完整矩阵/向量数据 | LogTrace |
| 可恢复异常(追踪丢失) | LogWarn |
| 不可恢复错误 | LogError |
bool / std::optional 表示成功/失败LogError + 早期 returntry/catch 保护(CoreMatch 中已有,应推广到其他 cv 调用密集处)项目目标 C++20,应积极使用现代特性:
| 推荐 | 示例 |
|---|---|
std::optional | 返回可能失败的结果 |
| 指定初始化器 | LocateResult { .status = ..., .position = ... } |
std::filesystem | 路径操作(转字符串必须走 MaaUtils,见下) |
std::format | 字符串格式化(替代 std::stringstream) |
std::ranges | 容器算法链(controller_type_utils.h 中已用) |
constexpr | 编译期常量 |
| 结构化绑定 | auto [x, y] = getPosition(); |
| smart pointers | std::unique_ptr / std::shared_ptr 管理资源 |
path::string())std::filesystem::path 与窄字符串之间的转换一律走 MaaUtils,头文件 <MaaUtils/Platform.h>、<MaaUtils/ImageIo.h>。
两个方向都禁止用标准库的默认转换:
path.string() 在 MSVC 上把原生宽字符路径转成系统 ANSI 码页,用户名含非 ASCII 字符(中文、俄文、emoji)时抛 std::system_error,Windows 错误码 1113 "No mapping for the Unicode character exists in the target multi-byte code page"。抛点常在错误消息拼接里,于是真实故障被这个异常盖掉。std::filesystem::path p(utf8_string) 反过来把 UTF-8 字节按 ANSI 解读,路径静默指向错误位置。窄字符串隐式转 path 的地方同样中招(dir / (name + ".png")、std::ofstream(narrow_string)、把 std::string 传给收 const path& 的函数)。| 场景 | 写法 |
|---|---|
| path → 文本(日志、错误消息、键) | MAA_NS::path_to_utf8_string(p) |
| UTF-8 文本 → path | MAA_NS::path(s) |
| 读写图片 | MAA_NS::imread(p, flags) / MAA_NS::imwrite(p, img) |
| 同名文件换后缀 | auto q = p; q += ".tmp";(后缀是 ASCII,码页无关) |
| gzip 打开 | Windows 走 gzopen_w(p.c_str()) |
std::ifstream / std::ofstream 直接收 path,别先转成字符串。#ifdef _WIN32 的 POSIX 分支里 path::string() 只是取原生字节、不做码页转换,可以保留。
同一条路径既要当 map 键又要传给下游时,留住 path 对象传下游,path_to_utf8_string 只用来生成键。
NAVI_ACTION_TYPES(X) 宏用于生成枚举和字符串映射。这种模式可以接受,但应:
#undef 清理临时宏cpp-algo 中散布大量硬编码阈值(0.43、4.5、0.85、0.55 等)。
constexpr 命名常量,带 k 前缀// 错误
if (score < 0.55) { return false; }
// 正确
constexpr double kGlobalSearchPassThreshold = 0.55; // 全局搜索及格线,容忍 UI 遮挡 + 光影
if (score < kGlobalSearchPassThreshold) { return false; }file(GLOB_RECURSE)当前 source/CMakeLists.txt 使用 file(GLOB_RECURSE) 自动收集源文件。CMake 官方文档明确不推荐此做法(新增/删除文件不会触发重新配置)。
应改为显式列出源文件:
target_sources(cpp-algo PRIVATE
main.cpp
MapLocator/MapLocator.cpp
MapLocator/MapLocateAction.cpp
# ...
)${cpp_algo_header} 从未定义却被引用,应清除。
| 元素 | 风格 | 示例 |
|---|---|---|
| 类对应的文件 | PascalCase | MapLocator.h, MapLocator.cpp |
| 工具/非类文件 | snake_case | controller_type_utils.h, navi_math.h |
| 目录 | PascalCase(模块)/ snake_case(工具) | MapLocator/, Backend/Adb/ |
当前 my_reco_1/ 是示例模板目录,如果保留应重命名为有意义的名称。
.h 中的 public 方法)建议英文注释.cpp 中)用中文注释解释"为什么"是可以的(当前做得好的部分)修改 cpp-algo 代码时,对照检查:
NoWarningCV.hpp 引入MAA_NS::path / path_to_utf8_string / imread / imwrite,有没有裸 path::string() 或窄字符串构造 pathk 前缀和注释tools/schema/custom.action.schema.json 的 enumtools/schema/custom.recognition.schema.json 的 enumtools/schema/components/,删除内容是否已清理旧规则和 $ref详细的命名对照和重构示例见 reference.md。
© MaaEnd, AGPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file in .agents/skills/cpp-algo-style of MaaEnd/MaaEnd.
Open the folder on GitHubat commit 047c8bf
Cpp Algo Style next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Cpp Algo Style this skillMaaEnd/MaaEnd | 4k | — | ~2.3k | Automated safety check: Pass | AGPL-3.0 | |
| Build Compiled ExtensionsA-EVO-Lab/a-evolve | 805 | — | ~416 | Automated safety check: Pass | None | |
| Generating Python Installeraffaan-m/ECC | 274k | 1 repos | ~6.1k | Automated safety check: Pass | MIT | |
| Opencv Bioimage Analysisjaechang-hits/SciAgent-Skills | 370 | 1 repos | ~3.9k | Automated safety check: Pass | Apache-2.0 | |
| Fory Version Bumpapache/fory | 4.6k | — | ~1.1k | Automated safety check: Pass | Apache-2.0 | |
| Fory Performance Optimizationapache/fory | 4.6k | — | ~2.2k | Automated safety check: Pass | Apache-2.0 |
A-EVO-Lab/a-evolve
How to build C/C++/Cython/Fortran extensions and frameworks like Caffe, OpenCV, protobuf-dependent projects from source.
affaan-m/ECC
Commercial-grade Python installer expert for Windows: Nuitka extreme compilation, dist slimming, DLL footprint analysis, and Inno Setup packaging to ship the smallest, fastest installers.
jaechang-hits/SciAgent-Skills
Computer vision for bio-image preprocessing, feature detection, real-time microscopy.
apache/fory
Bump Apache Fory release or post-release development versions across Java, Kotlin, Scala, Python, Rust, Go, C++, C, Dart, JavaScript, Swift, integration tests, examples, and source docs.
apache/fory
Run profile-driven bottleneck optimization across Apache Fory implementations (Java, C++, Python/Cython, Go, Rust, Swift, C, JavaScript/TypeScript, Dart, Kotlin, Scala).
crossbind/crossbind
A skill your agent uses when a user wants to call C++ or Rust from JavaScript or TypeScript; add a native library such as GDAL, SQLite, OpenSSL, GEOS or PROJ to a browser, Node.js, Cloudflare Worker…
MaaEnd/MaaEnd
MaaFramework 日志宏用法指南,适用于 MaaEnd cpp-algo。Use when writing logging code, using LogInfo/LogError/LogWarn/LogDebug/LogTrace, outputting containers or custom types to logs, or when the user asks about…
MaaEnd/MaaEnd
为 MaaEnd 添加、导入或补充节点识别测试截图,并按仓库约定脱敏图片、放入 tests/MaaEndTestset、维护 tests//test.json 和运行 pnpm check/pnpm test 验证。用户提到“添加测试图片/截图”“把截图加入 ADB 或 Win32 测试集”“给节点补正例或反例”“更新 hits/box”“UID…
MaaEnd/MaaEnd
Guide for using the meojson C++ JSON library in MaaEnd cpp-algo.
MaaEnd/MaaEnd
新增或改写 MaaEnd 的 AutoCollect 自动采集路线说明。默认包含路线文件创建、AutoCollect 主入口接线、任务选项注册和多语言文案补充。适用于“参考现有 AutoCollect 路线新建一条采集线”“给定传送点与路径点位生成 AutoCollectRouteX.json 并注册到任务中”“用户已经写好路线文件,只需要补注册接口”等场景。注意:本 skill 仅适用于参考…
MaaEnd/MaaEnd
仅分析 AutoStockStapleMain 的 MaaEnd 日志。用于还原该任务实际购买了什么、购买所对应的证据、逐步剩余账单(券/账单)数值时间线,以及在 pipeline 或 go-service 中应当加日志/埋点的位置。适用于用户询问 AutoStockStapleMain、AutoStockStaple、武陵/四号谷地的稳定需求物资购买,或该任务内账单数值变化原因等场景。
MaaEnd/MaaEnd
分析 MaaEnd CreditShoppingMain 的日志。用于还原信用购物任务中实际购买了什么商品、每件商品的折扣力度、是否触发过刷新(或刷新次数已用尽)、稳健刷新是否触发、以及信用点的消耗状况。货架槽位必须以日志中的 CreditIcon(TemplateMatcher)为锚,有无 BuyFirstOCR/Priority2OCR…
Categories
MaaEnd cpp-algo C++ 编码风格与工程规范指南。参考 MaaFramework 的优秀实践,规范命名、头文件、公共工具、错误处理、日志、CMake 等方面。在编写、修改或审查 agent/cpp-algo/ 下的 C++ 代码时使用。. Cpp Algo Style is an agent skill from MaaEnd/MaaEnd.
Cpp Algo Style fits situations like: mobile work in your project.
Run `npx skills add MaaEnd/MaaEnd --skill cpp-algo-style -a claude-code`. Or copy the skill folder (.agents/skills/cpp-algo-style in MaaEnd/MaaEnd) into .claude/skills/cpp-algo-style in your project. Claude Code loads it when a task matches its description.
Run `npx skills add MaaEnd/MaaEnd --skill cpp-algo-style -a codex`. Or copy the skill folder (.agents/skills/cpp-algo-style in MaaEnd/MaaEnd) into .agents/skills/cpp-algo-style in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add MaaEnd/MaaEnd --skill cpp-algo-style -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/cpp-algo-style, .gemini/skills/cpp-algo-style, .github/skills/cpp-algo-style and .opencode/skills/cpp-algo-style in your project.
SKILL.md names no scripts, command-line tools or credentials: Cpp Algo Style is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Cpp Algo Style is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.3k tokens (SKILL.md is roughly 9.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Cpp Algo Style: Build Compiled Extensions (A-EVO-Lab/a-evolve, 805 stars), Generating Python Installer (affaan-m/ECC, 274k stars), Opencv Bioimage Analysis (jaechang-hits/SciAgent-Skills, 370 stars) and Fory Version Bump (apache/fory, 4.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
MaaEnd (a GitHub organization) maintains it in MaaEnd/MaaEnd, which has 3,982 GitHub stars. The repository holds 14 skills in this directory. The repository was last updated on October 7, 2026.
Source: MaaEnd/MaaEnd on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.