ECC is a toolkit that organizes and improves how coding agents work through skills, memory, security checks, research practices, and related extensions. It is for developers using agents such as Claude Code, Codex, OpenCode, and Cursor.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add commands/affaan-m/ecc/cpp-buildgit clone --depth 1 https://github.com/affaan-m/ECCWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/commands/affaan-m/ecc/cpp-build)<a href="https://agentmods.dev/commands/affaan-m/ecc/cpp-build"><img src="https://agentmods.dev/badge/commands/affaan-m/ecc/cpp-build.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00030 | $0.01056 |
| Opus 5 | $0.00015 | $0.00528 |
| Sonnet 5 | $0.00006 | $0.00211 |
| Haiku 4.5 | $0.00003 | $0.00106 |
Grade A, and why
cpp-build scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 174 lines — stays where its author put it; the contents beside it link to each section on GitHub.
C++ Build and Fix
This command invokes the cpp-build-resolver agent to incrementally fix C++ build errors with minimal changes.
What This Command Does
- Run Diagnostics: Execute
cmake --build,clang-tidy,cppcheck - Parse Errors: Group by file and sort by severity
- Fix Incrementally: One error at a time
- Verify Each Fix: Re-run build after each change
- Report Summary: Show what was fixed and what remains
When to Use
Use /cpp-build when:
cmake --build buildfails with errors- Linker errors (undefined references, multiple definitions)
- Template instantiation failures
- Include/dependency issues
- After pulling changes that break the build
Diagnostic Commands Run
# CMake configure
cmake -B build -S .
# Build
cmake --build build 2>&1 | head -100
# Static analysis (if available)
clang-tidy src/*.cpp -- -std=c++17
cppcheck --enable=all src/
Example Session
User: /cpp-build
Agent:
# C++ Build Resolution
## Initial Diagnostics
```bash
$ cmake --build build
src/service/user.cpp:25:15: error: use of undeclared identifier 'UserRepository'
src/handler/api.cpp:42:9: error: no matching function for call to 'process'
src/handler/api.cpp:58:1: error: non-void function does not return a value
Errors found: 3
Fix 1: Undeclared Identifier
File: src/service/user.cpp:25 Error: use of undeclared identifier 'UserRepository' Cause: Missing include
// Added include
#include "repository/user_repository.hpp"
$ cmake --build build
# 2 errors remaining
Fix 2: No Matching Function
File: src/handler/api.cpp:42 Error: no matching function for call to 'process'
// Changed
process(params.get("count"));
// To
process(std::stoi(params.get("count")));
$ cmake --build build
# 1 error remaining
Fix 3: Missing Return
File: src/handler/api.cpp:58 Error: non-void function does not return a value
std::optional<User> getUser(const std::string& id) {
if (id.empty()) {
return std::nullopt;
}
auto user = findUser(id);
// Added missing return
return user;
}
$ cmake --build build
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday First seen · 174 lines · 30 tokens per session scan A 0850ec6adad0
cpp-build is a command published in the GitHub repository affaan-m/ECC (246,988 stars, last pushed 2d ago), licensed MIT. It adds 30 tokens to every session and 1,056 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other commands, from other repositories
cpp-init
Initialize C/C++ project-specific harness files (.clang-format, .clang-tidy, sanitizer build, init.sh tuned per build system). Run AFTER /anchor.
awesome-chatgpt
Search awesome-ChatGPT-repositories for open-source GitHub repositories related to ChatGPT and LLMs.
test
Generate comprehensive tests.
init
Scaffold a new MindBase project (v2 layout). Usage: /mb:init [template] [-- mission ...].
commit
智能生成 Git 提交信息并提交.
pr
Handle the full workflow from current branch state to an open, CI-monitored pull request.