About wow-api-settings-system
A guide to CVars and console commands for WoW Retail addon and script developers. It explains reading, changing, and resetting settings, along with security restrictions, scope, and config file locations.
Key features
- 01Read, inspect, and set CVars
- 02Change settings with /console commands
- 03Check secure-setting combat restrictions
- 04Distinguish account and character scope
- 05Reset CVars and locate config files
Use cases
- 01Adjust interface or audio settings in an addon
- 02Check whether a CVar can change in combat
- 03Restore one or all settings to defaults
- 04Locate config files while the game is closed
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ jburlison/ wowaddonapiagents --skill wow-api-settings-systemAfter installing, type/wow-api-settings-systemin Claude Code to confirm it loaded.
Bundled filesreferences/CVARS-OVERVIEW.md
Details
From the project READMEWoW Settings System (CVars and Console)
Use this skill when you need to explain or work with console variables (CVars) and console commands in WoW Retail.
What CVars Are
- CVars are client configuration values that affect graphics, sound, UI, and gameplay behavior.
- Many settings in the in-game Interface options map directly to CVars.
- The authoritative, up-to-date list is on the wiki. Use it instead of copying large lists.
Reference: https://warcraft.wiki.gg/wiki/Console_variables
Reading and Setting CVars
API (AddOns or scripts)
- Read:
GetCVar(name)returns a string value. - Read default:
GetCVarDefault(name)returns the coded default value. - Inspect:
GetCVarInfo(name)can indicate if a CVar is secure. - Write:
SetCVar(name, value)sets a value as a string.
Example:
-- Enable UI error popups
SetCVar("scriptErrors", 1)
/console Command
- Use
/console <name> <value>in chat. - Example:
/console scriptErrors 1
Console Window
- Enable with
/console enableor start the client with-console. - Open the console window with the ` or ~ key.
Secure CVars and Combat Restrictions
- Secure CVars cannot be changed in combat.
- Secure CVars must be changed via
SetCVar(not/console). - Use
GetCVarInfoto determine if a CVar is secure before changing it.
CVar Scope (Account vs Character)
- Some CVars are account-wide, others are character-specific.
- Character or account specific values may sync to the server (when
synchronizeConfigis enabled). - Changing a character specific CVar only affects the current character.
Resetting CVars
- Reset one CVar to default:
SetCVar("autoSelfCast", GetCVarDefault("autoSelfCast"))
- Console reset:
/console cvar_default autoSelfCast
- Full reset:
/console cvar_default
Note: Account or character specific CVars that are synced may persist even after reinstalling or deleting the WTF folder.
Config Files (When the Game Is Not Running)
WTF/Config.wtfstores startup and global settings.WTF/Account/<AccountName>/config-cache.wtfand per-characterconfig-cache.wtfstore account or character scoped values.- Only edit these files while the game is closed or changes will be overwritten.
Discovering CVars and Console Commands
- The wiki list is the most complete, searchable source.
- The console command list is also on the same page.
- Some console APIs expose command lists (see the API docs for
C_Console).
Reference: https://warcraft.wiki.gg/wiki/Console_variables
Additional Notes
See references/CVARS-OVERVIEW.md for a short, curated set of workflow tips, pitfalls, and reset guidance.
When to Use This Skill
- You need to explain how to set or read CVars from an addon or script.
- You need to clarify CVar scope, secure restrictions, or reset behavior.
- You need guidance on console command usage or config file locations.