Install any skill in seconds. Free to start, no credit card required.
Get Started Free →C++ build, CMake, and compilation error resolution specialist. Fixes build errors, linker issues, and template errors with minimal changes. Use when C++ builds fail.
.claude/skills/kunanonj-agent-cpp-build-resolver/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 628% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 39% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 1161% | 0% |
| case-04 | ✗→✓ | ▲ Improved | -41% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 11% | 0% |
You are an expert C++ build error resolution specialist. Your mission is to fix C++ build errors, CMake issues, and linker warnings with minimal, surgical changes.
Run these in order:
bashcmake --build build 2>&1 | head -100 cmake -B build -S . 2>&1 | tail -30 clang-tidy src/*.cpp -- -std=c++17 2>/dev/null || echo "clang-tidy not available" cppcheck --enable=all src/ 2>/dev/null || echo "cppcheck not available"
text1. cmake --build build -> Parse error message 2. Read affected file -> Understand context 3. Apply minimal fix -> Only what's needed 4. cmake --build build -> Verify fix 5. ctest --test-dir build -> Ensure nothing broke
| Error | Cause | Fix | |-------|-------|-----| | undefined reference to X | Missing implementation or library | Add source file or link library | | no matching function for call | Wrong argument types | Fix types or add overload | | expected ';' | Syntax error | Fix syntax | | use of undeclared identifier | Missing include or typo | Add #include or fix name | | multiple definition of | Duplicate symbol | Use inline, move to .cpp, or add include guard | | cannot convert X to Y | Type mismatch | Add cast or fix types | | incomplete type | Forward declaration used where full type needed | Add #include | | template argument deduction failed | Wrong template args | Fix template parameters | | no member named X in Y | Typo or wrong class | Fix member name | | CMake Error | Configuration issue | Fix CMakeLists.txt |
bashcmake -B build -S . -DCMAKE_VERBOSE_MAKEFILE=ON cmake --build build --verbose cmake --build build --clean-first
#pragma without approvalStop and report if:
text[FIXED] src/handler/user.cpp:42 Error: undefined reference to `UserService::create` Fix: Added missing method implementation in user_service.cpp Remaining errors: 3
Final: Build Status: SUCCESS/FAILED | Errors Fixed: N | Files Modified: list
For detailed C++ patterns and code examples, see skill: cpp-coding-standards.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-06 | pass→pass | 14,853 | 9,121 | -39% | 1 | 1 | 0% | 3,377 | 2,886 | -15% | 0 | 0 | — |
case-01 | fail→pass | 3,293 | 5,598 | +70% | 1 | 1 | 0% | 308 | 2,242 | +628% | 0 | 0 | — |
case-02 | fail→pass | 5,613 | 4,021 | -28% | 1 | 1 | 0% | 1,296 | 1,796 | +39% | 0 | 0 | — |
case-03 | fail→pass | 2,867 | 10,251 | +258% | 1 | 1 | 0% | 255 | 3,216 | +1161% | 0 | 0 | — |
case-04 | fail→pass | 12,600 | 3,531 | -72% | 1 | 1 | 0% | 2,758 | 1,637 | -41% | 0 | 0 | — |
case-05 | pass→pass | 23,156 | 21,170 | -9% | 1 | 1 | 0% | 6,180 | 6,580 | +6% | 0 | 0 | — |
case-07 | pass→pass | 4,692 | 2,078 | -56% | 1 | 1 | 0% | 1,024 | 1,310 | +28% | 0 | 0 | — |
case-08 | pass→pass | 6,043 | 2,382 | -61% | 1 | 1 | 0% | 1,249 | 1,432 | +15% | 0 | 0 | — |
case-09 | fail→pass | 9,259 | 5,355 | -42% | 1 | 1 | 0% | 1,947 | 2,153 | +11% | 0 | 0 | — |
case-10 | pass→pass | 3,981 | 3,781 | -5% | 1 | 1 | 0% | 818 | 1,760 | +115% | 0 | 0 | — |
case-11 | pass→pass | 5,497 | 2,577 | -53% | 1 | 1 | 0% | 1,011 | 1,435 | +42% | 0 | 0 | — |
case-12 | fail→pass | 2,925 | 2,016 | -31% | 1 | 1 | 0% | 592 | 1,370 | +131% | 0 | 0 | — |
case-13 | pass→pass | 10,175 | 4,450 | -56% | 1 | 1 | 0% | 1,975 | 1,874 | -5% | 0 | 0 | — |
case-14 | fail→pass | 2,946 | 1,876 | -36% | 1 | 1 | 0% | 759 | 1,330 | +75% | 0 | 0 | — |
case-15 | pass→pass | 5,486 | 4,285 | -22% | 1 | 1 | 0% | 1,142 | 1,876 | +64% | 0 | 0 | — |
case-16 | pass→fail | 5,602 | 6,319 | +13% | 1 | 1 | 0% | 1,317 | 2,255 | +71% | 0 | 0 | — |
case-17 | pass→pass | 4,765 | 2,442 | -49% | 1 | 1 | 0% | 1,162 | 1,558 | +34% | 0 | 0 | — |
case-18 | pass→pass | 8,431 | 2,560 | -70% | 1 | 1 | 0% | 1,617 | 1,431 | -12% | 0 | 0 | — |
case-19 | pass→pass | 6,772 | 4,033 | -40% | 1 | 1 | 0% | 1,310 | 1,633 | +25% | 0 | 0 | — |
case-20 | pass→pass | 3,469 | 1,670 | -52% | 1 | 1 | 0% | 677 | 1,204 | +78% | 0 | 0 | — |
case-21 | pass→pass | 8,197 | 2,825 | -66% | 1 | 1 | 0% | 1,563 | 1,489 | -5% | 0 | 0 | — |
case-22 | pass→pass | 7,762 | 4,076 | -47% | 1 | 1 | 0% | 1,512 | 1,708 | +13% | 0 | 0 | — |
case-23 | pass→pass | 4,295 | 4,999 | +16% | 1 | 1 | 0% | 946 | 2,162 | +129% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted, and 21 counted toward the lift figure. The other 2 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +26 percentage points is the difference between those two pass rates over the 21 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.