Myslot
Myslot
Copy your whole UI setup to any character — action bars, macros and keybinds — with one text string.
Setting up a new alt, moving to a new account, or rebuilding after a UI reset? Myslot exports your setup as a short, copy‑paste friendly text. Paste it on any character — even a different class — and click Import.
Browse and share profiles at <https://myslot.net>.
Features
- Action bars — every bar, including the main action bar pages, stance bars and the Skyriding bar
- Macros — both account‑wide and character‑specific
- Key bindings
- Click Cast Bindings (Retail)
- Cooldown Manager layouts (Retail)
- Talents (Retail) — see the profile's talent loadout string, get warned when it differs from yours, and load it into the talent window with one click
- Cross‑class & cross‑account — spells, items, mounts and pets you don't have are skipped with a clear message; unowned mounts can fall back to a random mount
- Saved profiles — keep up to 100 exports in game, sort by name / date / class and filter to your class
- Automatic backup — your current setup is saved before every import, so you can always roll back
- Choose what to import or clear — pick exactly which bars, macros and bindings to apply
- Fast & safe — asynchronous import with a progress bar, blocked during combat, CRC‑checked text
- Minimap button and
/myslotslash command
Supported game versions
Retail (The War Within / Midnight), Classic Era & Anniversary, Burning Crusade, Wrath, Cataclysm, Mists of Pandaria, Titan and WoW Forever. Options that a game version doesn't support are hidden automatically.
Usage
Export
- Type
/myslot(or click the minimap button) to open Myslot - Click Export
- Copy the text and save it anywhere — a text file, Discord, email, or myslot.net
Import
- Type
/myslotto open Myslot - Paste the exported text into the text box (or pick a saved profile)
- Choose what to import, then click Import
Importing a profile exported with talents other than the ones you are using asks for confirmation first — a profile's action bars rarely fit another build.
Talents (Retail)
Myslot doesn't import talents with the rest of a profile, but helps you switch to them:
- The profile's talent loadout string is shown in the Talents box under the text box — click it to select the string and copy it with Ctrl+C, e.g. for the talent window's Import.
- When the profile's talents differ from yours, click Apply talents: they are saved as the talent loadout
Myslot(replacing the previous one) and the talent window opens with it selected. Review it there and click Apply Changes to switch to it. - A profile saved before a talent tree change (a patch or hotfix) shows Talents out of date; it can still be loaded, but check it carefully since talents may have moved.
- The profile must be for your current specialization, and talents can't be changed in combat.
Talent loadout strings only exist since Dragonflight, so none of this is shown on Classic versions.
Slash commands
| Command | Description |
|---|---|
/myslot |
Toggle the Myslot window |
/myslot load <ProfileName> |
Import a saved profile by name — put it in a macro to swap setups with one click |
/myslot clear action |
Clear every action bar slot |
/myslot clear macro |
Delete all macros |
/myslot clear binding |
Clear all key bindings (Blizzard defaults included) |
/myslot clear talents |
Delete the Myslot talent loadouts made by Apply talents, in every specialization (Retail; your talents in use are kept) |
/myslot trim [N] |
Keep only the newest N saved profiles (default 100) and reload the UI |
Get Myslot
- CurseForge — <https://www.curseforge.com/wow/addons/myslot>
- Wago — <https://addons.wago.io/addons/myslot>
Contributing
Source code lives on GitHub: <https://github.com/tg123/myslot>. Bug reports and pull requests are welcome.
Localization
Translations are welcome! Please submit them at <https://www.wowace.com/projects/myslot/localization>.
Build your own Myslot
- Clone the source code into
Interface\AddOns\Myslot
$ git clone https://github.com/tg123/myslot.git Myslot
- Run the tests (Lua 5.1 + luabitop)
$ lua5.1 ci/run.lua
- Run the tests in game — a git checkout loads the test suite (it is stripped from CurseForge/Wago packages), then type:
/myslottest -- run all tests
/myslottest <filter> -- run only tests whose name matches <filter>
The results are shown in a pop-up you can copy with Ctrl+A / Ctrl+C. Tests cannot run in combat.
Changing Protobuf
Myslot use a modified version of lua-pb to serialize/deserialize the data. You may want to change the data structure sometimes if you want add some new things to export.
Please check lua-pb about how to generate protobuf stub files.
Copyright and License
- Copyright (C) 2009-2026 by Boshi Lian <[email protected]>
- Use of this software for profit purposes are NOT allowed except by prior arrangement and written consent of the author.
- This software is licensed under the Apache License, Version 2.0
- All rights of Exported text are owned by end-users.
-
View User Profile
-
Send Message
Posted Nov 6, 2024In reply to jamesbearclaw:
could you please paste export text here https://github.com/tg123/myslot/issues or drop me an email, i will fix if it is a bug
-
View User Profile
-
Send Message
Posted Nov 3, 2024Any chance to add some type of profile support or filter by class function? When I click on the saved list dropdown, everything I've saved is there, including those that are not of the current toon's class and thus not applicable. It's a little overwhelming if you play many classes. It would be nice to only see saves that can be used. Thank you!
-
View User Profile
-
Send Message
Posted Nov 5, 2024In reply to eiy711:
working on redesigning of profile UI, will take this into consideration
-
View User Profile
-
Send Message
Posted Oct 16, 2024When using addons like Bartender or Dominos in SoD, bar 3 is bar 5 and 5 is 3.
Also, would it be possible to ignore settings that were not exported when Importing by default, instead of emptying them ?
-
View User Profile
-
Send Message
Posted Oct 17, 2024In reply to Llamatron2112:
myslot follows the setting in blz bar naming, let me know if myslot is not doing correctly
do you mean the slot was originally empty and you want to do nothing when importing?
-
View User Profile
-
Send Message
Posted Oct 18, 2024In reply to oishii1992:
I don't know how blizzard assigns numbers to their action bars, but looks like dominos and bartender use these numbers, so I assume they got them from Blizzard's. But maybe it depends on the game's version.
Currently, if you ignore some bars when exporting, but don't ignore them when importing, the bars that were ignored at export are emptied. I think it would be better if they weren't cleaned.
-
View User Profile
-
Send Message
Posted Oct 18, 2024In reply to Llamatron2112:
i see, will add an option to choose behavior of empty
-
View User Profile
-
Send Message
Posted Oct 3, 2024Hi,
Could you update it to the latest Classic Era Game Version of 1.15.4?
Would be awesome, thanks a lot in advance!
-
View User Profile
-
Send Message
Posted Oct 5, 2024In reply to maximus210793:
fixed
-
View User Profile
-
Send Message
Posted Sep 28, 2024从选项中点击打开Mysolt报错,虽然看起来貌似没什么影响.报错内容如下:
Message: Interface/AddOns/Myslot/options.lua:35: attempt to call global 'InterfaceOptionsFrame_Show' (a nil value)
Time: Sat Sep 28 17:31:12 2024
Count: 3
Stack: Interface/AddOns/Myslot/options.lua:35: attempt to call global 'InterfaceOptionsFrame_Show' (a nil value)
[string "@Interface/AddOns/Myslot/options.lua"]:35: in function <Interface/AddOns/Myslot/options.lua:33>
-
View User Profile
-
Send Message
Posted Sep 28, 2024In reply to icnate:
thanks for reporting, fixed in latest version
-
View User Profile
-
Send Message
Posted Sep 15, 2024Hello, can you add Character Specific Key Bindings shortcut option?
-
View User Profile
-
Send Message
Posted Sep 28, 2024In reply to 哦哦及:
that is a wow native settings, you can set is in key binding page
myslot will keep the settings as is
-
View User Profile
-
Send Message
Posted Sep 3, 2024sometimes my general macro seem to duplicate a few of them how do i properly not do that?
-
View User Profile
-
Send Message
Posted Sep 3, 2024In reply to cankyy:
i believe all duplicates macro bugs were fixed
could you please check you myslot version
also you can share me your exported string and tell me how can i repro your issue
-
View User Profile
-
Send Message
Posted Aug 22, 2024there appear to be differences between some of this addon, and blizzard's bars.
blizzard bar 2 is myslot bar 5
blizzard bar 3 is myslot bar 4
blizzard bar 4 is myslot bar 2
blizzard bar 5 is myslot bar 3
bar 1, 6, 7, 8 and dragonriding appear to be working fine.
-
View User Profile
-
Send Message
Posted Aug 22, 2024In reply to rotexor:
blz did not define the index :(
here is the internal mapping
blz def
RIGHT_ACTIONBAR_PAGE <-> myslot 2
LEFT_ACTIONBAR_PAGE <-> myslot 3
BOTTOMRIGHT_ACTIONBAR_PAGE <-> myslot 4
OPTION_SHOW_ACTION_BAR <-> myslot 5
btw how did you find your index
-
View User Profile
-
Send Message
Posted Aug 22, 2024In reply to oishii1992: I just tested by ignoring all but one bar from myslot then export/importing. and then I disabled and reenabled bars in options menu to figure out which was which.
-
View User Profile
-
Send Message
Posted Aug 24, 2024In reply to rotexor:
will update name to what blz use
-
View User Profile
-
Send Message
Posted Aug 21, 2024Suggestion to bump up your compatibility version number to 11.0.2 for TWW. Using on latest client does not raise any LUA errors.