17 custom Claude Code skills for TrinityCore server development. Drop them into your project's .claude/commands/ directory and use them as slash commands.
Built for TrinityCore 12.x / Midnight, but most skills work with any recent TC branch.
| Skill | Command | Description |
|---|---|---|
| Build Loop | /build-loop [debug|rel|scripts] |
Iterative compile-fix cycle — builds with ninja, parses errors, fixes them, rebuilds (max 5 rounds) |
| New Script | /new-script <name> [type] |
Scaffold a new custom C++ script (command/player/world/creature/spell) and register it in the script loader |
| New SQL Update | /new-sql-update <db> [description] |
Create a correctly-named SQL update file (YYYY_MM_DD_NN_<db>.sql) with auto-incrementing sequence number |
| Skill | Command | Description |
|---|---|---|
| Check Logs | /check-logs [db|server|debug|gm|bnet|keyword] |
Parse and categorize server logs — groups errors by type with counts |
| Parse Errors | /parse-errors <logfile> |
Deep error log analysis — categorizes worldserver errors with affected IDs and counts |
| Apply SQL | /apply-sql <db> <file> |
Apply a SQL file to a database with deadlock protection (innodb_lock_wait_timeout) |
| SOAP | /soap <command> |
Send GM commands to a running worldserver via SOAP remote console |
| Skill | Command | Description |
|---|---|---|
| Decode Pkt | /decode-pkt [path] |
Run WowPacketParser on a .pkt packet capture file, list output files |
| Parse Packet | /parse-packet <opcode|file|hex> |
Map opcodes to codebase handlers — shows packet structure, handler function, field layout |
| Skill | Command | Description |
|---|---|---|
| Lookup Spell | /lookup-spell <id|name> |
Search spells by ID or name from SpellName DB2 (~400K entries) |
| Lookup Item | /lookup-item <id|name> |
Search items with quality, inventory type, item level from ItemSparse DB2 (~171K entries) |
| Lookup Creature | /lookup-creature <id|name> |
Query creature templates from the world database (live MySQL query) |
| Lookup Area | /lookup-area <id|name> |
Search zones/areas with continent mapping from AreaTable DB2 (~10K entries) |
| Lookup Emote | /lookup-emote <id|name> |
Search emotes from both EmotesText (slash commands) and Emotes (animations) DB2 tables |
| Lookup Faction | /lookup-faction <id|name> |
Search faction templates with name resolution and faction group flags |
| Lookup Sound | /lookup-sound <id|ids|validate ids> |
Validate SoundKit IDs exist, with sound type classification |
| Skill | Command | Description |
|---|---|---|
| SmartAI Check | /smartai-check <file> |
Validate SmartAI SQL against known enums, deprecated types, link chain integrity, spell ID validation |
Copy the commands/ directory into your project's .claude/ folder:
# From your TrinityCore project root
mkdir -p .claude/commands
cp /path/to/trinitycore-claude-skills/commands/*.md .claude/commands/Or clone directly:
cd your-tc-project
git clone https://github.com/VoxCore84/trinitycore-claude-skills.git .claude/skills-repo
# Then copy or symlink:
cp .claude/skills-repo/commands/*.md .claude/commands/Most skills have hardcoded paths that you'll need to update for your environment. Search for these and replace:
| Placeholder Path | What It Is | Used By |
|---|---|---|
C:/Dev/RoleplayCore/ |
TrinityCore project root | build-loop, check-logs |
out/build/x64-Debug/ |
Debug build directory | build-loop |
out/build/x64-RelWithDebInfo/ |
Release build directory | check-logs, decode-pkt |
C:/Program Files/MySQL/MySQL Server 8.0/bin/mysql.exe |
MySQL client binary | apply-sql, lookup-creature |
root / admin |
MySQL credentials | apply-sql, lookup-creature |
C:/Tools/WowPacketParser/ |
WowPacketParser install | decode-pkt |
~/source/wago/wago_csv/major_12/12.0.1.66102/enUS/ |
Wago DB2 CSV directory | All lookup-* skills, smartai-check |
C:/Users/atayl/source/wago/tc_soap.sh |
SOAP helper script path | soap |
127.0.0.1:7878 |
SOAP endpoint | soap |
1#1 / gm |
SOAP credentials (game account) | soap |
Tip: Use find-and-replace across all .md files to update paths in bulk.
The lookup skills require Wago DB2 CSV exports. Download them using the wago-tooling scripts, or manually from wago.tools/db2:
Required CSVs for full functionality:
SpellName-enUS.csv— lookup-spell, smartai-checkItemSparse-enUS.csv— lookup-itemAreaTable-enUS.csv— lookup-areaEmotesText-enUS.csv,Emotes-enUS.csv— lookup-emoteFactionTemplate-enUS.csv,Faction-enUS.csv— lookup-factionSoundKit-enUS.csv— lookup-sound
- Claude Code CLI
- TrinityCore (any recent branch, optimized for 12.x Midnight)
- MySQL 8.0+ (for apply-sql, lookup-creature)
- Python 3.10+ (for lookup skills, parse-errors, smartai-check)
- WowPacketParser (for decode-pkt, parse-packet)
- Ninja build system (for build-loop)
- Wago DB2 CSVs (for lookup-* skills) — see wago-tooling
# Build and auto-fix errors
/build-loop debug
# Scaffold a new command script
/new-script my_teleporter command
# Check what's in the error log
/check-logs db
# Look up a spell
/lookup-spell Fireball
# Validate SmartAI before importing
/smartai-check sql/updates/world/master/2026_02_26_00_world.sql
# Send a reload command to the running server
/soap .reload smart_scripts
# Parse a packet capture
/decode-pkt
# Create a new SQL update file
/new-sql-update world fix creature factions
Claude Code skills are Markdown files in .claude/commands/ that define:
- Description: What the skill does (shown in autocomplete)
- Allowed tools: Which Claude Code tools the skill can use
- Instructions: Step-by-step procedure Claude follows when you invoke the skill
When you type /skill-name in Claude Code, it reads the corresponding .md file and follows the instructions. Skills can use bash, read/write files, search code, and interact with databases.
See Claude Code docs for more on custom skills.
- wago-tooling — Python toolkit for Wago DB2 CSV management, hotfix repair, and data enrichment
- tc-packet-tools — Server launcher wrapper that auto-runs WowPacketParser on exit
- TrinityCore — The core server this tooling is built for
- WowPacketParser — Packet sniff parser used by decode-pkt