Agent Skills: Developing WoW Addons

>

UncategorizedID: falkicon/mechanic/s-develop

Repository

FalkiconLicense: NOASSERTION
174

Install this agent skill to your local

pnpm dlx add-skill https://github.com/Falkicon/Mechanic/tree/HEAD/.agent/skills/s-develop

Skill Files

Browse the full folder contents for s-develop.

Download Skill

Loading file tree…

.agent/skills/s-develop/SKILL.md

Skill Metadata

Name
s-develop
Description
>

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