CS2_VibeSignatures: Skill for Claude Code

.claude/skills/find-CEntitySystem_Init-decompiles/SKILL.md

find-CEntitySystem_Init-decompiles is a skill for Claude Code from HLND2T/CS2_VibeSignatures. It costs 254 tokens per session (5,197 once invoked), scanned A, original, MIT.

A fallback procedure for examining Counter-Strike 2 server code with IDA Pro, a program for inspecting compiled software. It finds data members, virtual-function links, and helper functions set up by `CEntitySystem::Init` when an automated search fails.

In plain words
What is it for?
It is for reverse-engineering CS2's `server.dll` or `libserver.so` and producing YAML records for the symbols initialized by `CEntitySystem::Init`.
Why use it?
It handles cases where compiler changes move code into or out of helper functions, so a fixed search pattern no longer works. This helps recover the missing results from the current Windows or Linux server binary.

Skill for Claude Code

Written for Claude Code: disable-model-invocation in frontmatter.

This is HLND2T/CS2_VibeSignatures's own configuration. It tells Claude Code how to work on CS2_VibeSignatures itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything CS2_VibeSignatures configures →

Reuse

Borrowing it

Nothing to install: this file belongs to HLND2T/CS2_VibeSignatures. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/HLND2T/CS2_VibeSignatures/main/.claude/skills/find-CEntitySystem_Init-decompiles/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/HLND2T/CS2_VibeSignatures

Made for: Claude Code.

Wrote 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.

agentmods badge for find-CEntitySystem_Init-decompiles

README.md
[![agentmods](https://agentmods.dev/badge/skills/hlnd2t/cs2_vibesignatures/find-centitysystem_init-decompiles/github.svg)](https://agentmods.dev/skills/hlnd2t/cs2_vibesignatures/find-centitysystem_init-decompiles)
Your own site
<a href="https://agentmods.dev/skills/hlnd2t/cs2_vibesignatures/find-centitysystem_init-decompiles"><img src="https://agentmods.dev/badge/skills/hlnd2t/cs2_vibesignatures/find-centitysystem_init-decompiles/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for find-CEntitySystem_Init-decompiles

Your own site · 80×15
<a href="https://agentmods.dev/skills/hlnd2t/cs2_vibesignatures/find-centitysystem_init-decompiles"><img src="https://agentmods.dev/badge/skills/hlnd2t/cs2_vibesignatures/find-centitysystem_init-decompiles.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 254 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 5,197 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00254 $0.05197
Opus 5 $0.00127 $0.02599
Sonnet 5 $0.00051 $0.01039
Haiku 4.5 $0.00025 $0.00520

Measured 9d ago against content hash 41577cd11435, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-09, from the pricing page.

Security

Grade A, and why

find-CEntitySystem_Init-decompiles 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 9d ago.

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.

.claude/skills/find-CEntitySystem_Init-decompiles/SKILL.md · 347 lines

How it starts

The opening of the file, as written. The whole thing — 347 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Find CEntitySystem_Init-decompiles (final-guarantee fallback)

Recover every symbol that CEntitySystem::Init wires up, in CS2 server.dll / libserver.so, using IDA Pro MCP tools. This is the Agent fallback for the find-CEntitySystem_Init-decompiles skill: it only runs when the preprocessor script returned failure, which almost always means one target's access pattern moved — either it was inlined into CEntitySystem_Init where the reference expected a separate function, or it was de-inlined out of CEntitySystem_Init into a helper the reference does not know about.

Your job is to produce the missing output YAMLs regardless of that inline/de-inline boundary.

Realworld Function References

Read the platform-relevant real-world YAMLs before searching in IDA. They provide concrete disassembly, decompiler output, semantic anchors, and both sides of the known inline/de-inline boundary. Treat their addresses and offsets as reference-build values only; verify every result against the current binary.

  • Windows inline baseline: ida_preprocessor_scripts/references/server/CEntitySystem_Init.windows.yaml
  • Linux baseline: ida_preprocessor_scripts/references/server/CEntitySystem_Init.linux.yaml
  • Windows de-inlined CEntitySystem_Init variant: ida_preprocessor_scripts/references/server/CEntitySystem_Init-noinline.windows.yaml
  • Windows de-inlined material helper: ida_preprocessor_scripts/references/server/CEntitySystem_InitEntityMaterialAttributes.windows.yaml
  • Linux registration helper: ida_preprocessor_scripts/references/server/CEntitySystem_ProcessEntityRegistration.linux.yaml

Background — what CEntitySystem_Init does

CEntitySystem_Init(this, const char *name, int a3, int mode, char a5) is a long constructor-style routine. Along the way it:

  • copies the system name into this->m_sEntSystemName;
  • stores the serialization mode into this->m_eNetworkSerializationMode;
  • initializes this->m_ComponentUnserializerInfoAllocator (a CUtlScratchMemoryPool);
  • registers all entity/component classes;
  • calls g_pNetworkMessages->SetNetworkSerializationContextData("string_t_table", m_eNetworkSerializationMode, &m_Symbols) through the INetworkMessages vtable (an indirect virtual call);
  • when m_eNetworkSerializationMode is set, allocates a CNetworkFieldScratchData into this->m_pNetworkFieldScratchData and calls g_pFlattenedSerializers->CreateFieldChangedEventQueue(m_pNetworkFieldScratchData, m_pFieldChangeLimitSpew) through the IFlattenedSerializers vtable, storing the result into this->m_pNetworkFieldChangedEventQueue;
  • (Linux) tail-calls the de-inlined CEntitySystem_ProcessEntityRegistration;
  • (Windows) runs the entity-material-attributes registration loop that touches this->m_EntityMaterialAttributes.

Read the full file on GitHub · 347 lines

Changes

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.

  1. 9d ago First seen · 347 lines · 254 tokens per session scan A 41577cd11435

Subscribe to this mod's changes

find-CEntitySystem_Init-decompiles is a skill published in the GitHub repository HLND2T/CS2_VibeSignatures (65 stars, last pushed yesterday), licensed MIT. It adds 254 tokens to every session and 5,197 once invoked, about $0.0013 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-08-30.

Related

Other skills, from other repositories

minecraft-debug-mcp

Operate and debug the live Minecraft bot through its built-in MCP REPL server. Use when work requires starting the bot with pnpm dev, connecting to the local MCP endpoint, inspecting cognitive state/logs/history, injecting synthetic chat/events, or running targeted REPL code against the running brain during…

moeru-ai/airi · 68 tokens

graphics-api-hooking

Analyze Direct3D/DXGI, OpenGL, and Vulkan rendering, presentation, composition, and capture evidence. Use to distinguish API samples, PresentMon event metrics, Tracy instrumentation, compatibility translation, frame images, and validation diagnostics; review swap chains, overlays, resource lifetime, and…

gmh5225/awesome-game-security · 90 tokens

console-get-logs

Retrieve Unity Editor logs from the MCP plugin's LogCollector, optionally filtered by log type or time window. Useful for debugging and monitoring Editor activity.

IvanMurzak/Unity-MCP · 35 tokens

editor-application-get-state

Return the current state of UnityEditor.EditorApplication — playmode, paused state, compilation state, and related flags.

IvanMurzak/Unity-MCP · 31 tokens

profiler-start

Enable Unity's runtime profiler and open the Profiler window. Idempotent: calling when already enabled returns the current enabled state without error.

IvanMurzak/Unity-MCP · 32 tokens

console-clear-logs

Clear the MCP log cache (used by 'console-get-logs') and the Unity Editor Console window. Useful for isolating logs to a specific action by clearing the slate first.

IvanMurzak/Unity-MCP · 41 tokens