Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Fix Cppheaders

ASecurity

Use when hl2sdk_cs2 C++ headers must be repaired to match the latest vtable or record-layout YAML references. Runs run_cpp_tests.py to obtain layout diffs, maps failing cpp_tests entries to their configured headers, edits only those headers, and repeats validation until the differences are resolved. Triggers: fix cpp headers, fix-cppheaders, repair vtable layout, repair record layout, header layout differences.

3 stars
0 votes
0 copies
0 views
Added 9/27/2026
testingc++shell

Security Analysis

A100/100

Scanned 9/27/2026

Install to Claude Code

$npx -y skills add mrc4tt/CS2_VibeSignatures --skill fix-cppheaders --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Fix Cppheaders?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Fix Cppheaders
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/mrc4tt-fix-cppheaders/badge)](https://www.skillsdirectory.com/skills/mrc4tt-fix-cppheaders)

More formats (shields.io, HTML) on the badges page.

Download with Pro
Files
SKILL.md
---
name: fix-cppheaders
description: |
  Use when hl2sdk_cs2 C++ headers must be repaired to match the latest vtable or record-layout YAML references.
  Runs run_cpp_tests.py to obtain layout diffs, maps failing cpp_tests entries to their configured headers, edits only
  those headers, and repeats validation until the differences are resolved. Triggers: fix cpp headers, fix-cppheaders,
  repair vtable layout, repair record layout, header layout differences.
disable-model-invocation: true
---

# Fix C++ Headers

## Overview

Repair `hl2sdk_cs2` declarations from compiler-versus-YAML layout differences. Treat
`run_cpp_tests.py` as the source of truth for both the initial diff and final verification.

Resolve `GAMEVER` from the user's explicit request or `CS2VIBE_GAMEVER`; use only
`configs/$GAMEVER.yaml` for test definitions and fail if it is missing.

## Constraints

- Edit only header paths listed in the failing `configs/<GAMEVER>.yaml` `cpp_tests` entry.
- Require every edited header to be under `hl2sdk_cs2/`.
- Preserve existing names and style when the reference exposes only a slot or offset.
- Keep compiler declarations for gaps in incomplete reference YAMLs unless surrounding index shifts prove removal.
- Name unknown virtual slots consistently with nearby declarations, such as `unk_001`; when only a known function name is
  available, use `virtual void FunctionName() = 0;` until a reliable prototype is known.
- Interpret `Class_dtor` and `Class_vdtor` reference entries as virtual destructors for `Class`.
- Do not edit reference YAMLs, tracked `bin_artifacts`, cpp test sources, or comparison code to hide a difference.
- Do not invoke an external agent runner. This SKILL owns the repair loop directly.
- Stop and report a blocker when the diff is ambiguous, the configured header is missing, or a required edit is outside
  `hl2sdk_cs2/`.

## Workflow

1. Determine the game version from the user's request. If omitted, read `CS2VIBE_GAMEVER` from `.env`.
2. Resolve a release-local immutable symbol candidate. Use a caller-provided actual candidate when available; otherwise
   build one from tracked `bin_artifacts/<gamever>/` with `gamesymbol_candidate.py build` and explicit temporary output/
   session paths. Never use a tracked `gamesymbols/` fallback or read per-symbol truth from `bin/`.
3. Run the complete comparison with debug details:

   ```powershell
   uv run run_cpp_tests.py -gamever <gamever> -configyaml configs/<gamever>.yaml -snapshot <snapshot> -debug
   ```

4. For each test reporting layout differences, find its `cpp_tests` entry in `configs/<GAMEVER>.yaml` and read its `symbol`,
   `headers`, target, aliases, and reference modules.
5. Read the configured headers and the complete diff sections:
   - `Current vtable entries` versus `YAML reference vtable entries`
   - `Current record members` versus `YAML reference struct members`
6. Make the smallest declaration-only edit that aligns the header with the reference. Typical edits are reordering,
   adding, or removing virtual declarations; correcting inheritance; and adjusting record members or padding.
7. Re-run the same command with the same snapshot. If differences remain, use the new output rather than the previous
   diff and repeat.
8. Finish only when the command exits successfully with zero compile failures, invalid items, and layout differences.

## Failure Handling

- If compilation fails after an edit, inspect the compiler error, repair the edited declaration, and rerun.
- If unrelated pre-existing failures prevent a clean full run, verify the affected test output as far as the runner permits
  and report the unrelated failures verbatim.
- If `headers` is absent or empty, do not guess an edit target. Report the test name and request a config correction.
- If multiple headers are configured, trace the declared symbol before choosing the file; do not edit every header blindly.

## Completion Report

Report the headers changed, the layout mismatches corrected, and the exact final verification command and result.

Attribution

mrc4ttmrc4tt
View sourceMore from mrc4tt →
SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Related Skills

Screen Reader Testing

Practical guide to testing web applications with screen readers for comprehensive accessibility validation.

400051 votes

Tdd Workflow

在编写新功能、修复错误或重构代码时使用此技能。强制执行测试驱动开发,包含单元测试、集成测试和端到端测试,覆盖率超过80%。

2456590 votes

Eval Harness

克劳德代码会话的正式评估框架,实施评估驱动开发(EDD)原则

2456590 votes

Python Testing

使用pytest、TDD方法、夹具、模拟、参数化和覆盖率要求的Python测试策略。

2456590 votes

Golang Testing

Go测试模式包括表格驱动测试、子测试、基准测试、模糊测试和测试覆盖率。遵循TDD方法论,采用地道的Go实践。

2456590 votes
View all in testing →