s-develop

SKILL.md

Developing WoW Addons

Expert guidance for building World of Warcraft addons with a focus on testability and maintenance.

Related Commands

  • c-develop - Build or extend addon features workflow

CLI Commands (Use These First)

MANDATORY: Always use CLI commands before manual exploration.

Task Command
Create Addon mech call addon.create -i '{"name": "MyAddon"}'
Sync Junctions mech call addon.sync -i '{"addon": "MyAddon"}'
Validate TOC mech call addon.validate -i '{"addon": "MyAddon"}'
Check Libraries mech call libs.check -i '{"addon": "MyAddon"}'
Sync Libraries mech call libs.sync -i '{"addon": "MyAddon"}'

Capabilities

  1. Event-Driven Design — Register events, handle callbacks, bucket patterns
  2. Frame Architecture — Three-layer design (Core/Bridge/View), layouts, templates
  3. SavedVariables — Database design, AceDB, versioning, defaults
  4. Combat Lockdown — Protected functions, taint avoidance, secure handlers
  5. API Resilience — Defensive programming, C_ namespaces, secret values

Routing Logic

Request type Load reference
Addon architecture, layers ../../docs/addon-architecture.md
Event registration, callbacks references/event-patterns.md
Frame creation, UI engineering references/frame-engineering.md
SavedVariables, AceDB references/saved-variables.md
Combat lockdown, secure code references/combat-lockdown.md
Blizzard API, C_ namespaces references/api-patterns.md
MechanicLib integration ../../docs/integration/mechaniclib.md
Performance profiling ../../docs/integration/performance.md

Quick Reference

Create New Addon

mech call addon.create -i '{"name": "MyAddon", "author": "Name"}'
mech call addon.sync -i '{"addon": "MyAddon"}'

Core Principles

  1. Headless Core: Keep logic in pure Lua functions (Layer 1)
  2. Event-Driven: Avoid OnUpdate polling; use events (Layer 2)
  3. Defensive API: Always check for nil and use pcall for uncertain APIs
  4. Combat Aware: Never modify protected frames in combat
Weekly Installs
3
GitHub Stars
10
First Seen
Jan 28, 2026
Installed on
github-copilot3
openclaw2
gemini-cli2
codex2
kimi-cli2
cursor2