Browse docs
Permissions
How Sky detects admins
sky_mechanicjob uses two permission paths:
/workshopcreatorfalls back toSky.FW.IsAdmin(source)/admintuning,/debugwearzero, and/debugwearzeroallcallConfig.Functions.HasCommandPermission(source, commandName)
If a command is listed in Config.CommandPermissions, the player's framework groups are checked against that list. If the command is not listed there, it falls back to Sky.FW.IsAdmin(source).
Default mechanic command permissions:
Config.CommandPermissions = {
admintuning = { "god", "superadmin", "admin" },
debugwearzero = { "god", "superadmin", "admin" },
debugwearzeroall = { "god", "superadmin", "admin" },
}
Framework setup
QBox (principal prefix: group.)
Qbox relies on FiveM ACE through ox_lib's lib.addCommand({ restricted = 'group.admin' }). Use the group.<name> prefix.
Add this to server.cfg or permissions.cfg:
add_ace group.admin command allow
add_principal identifier.license:<license> group.admin
Replace <license> with the player's license.
QBCore (principal prefix: qbcore.)
QBCore uses FiveM ACE with qbcore.* principals. Prefer qbcore.admin / qbcore.god over group.admin.
add_ace qbcore.god command allow
add_principal identifier.license:<license> qbcore.god
add_principal identifier.license:<license> qbcore.admin
Or in-game:
/addpermission 1 god
ESX Legacy (users.group)
ESX Legacy stores the admin group in the users.group column.
In-game:
/setgroup 1 admin
Or via SQL:
UPDATE users SET `group` = 'admin' WHERE identifier = 'license:<license>';
vRP
Groups are defined in cfg/groups.lua and granted with:
vRP.addUserGroup(user_id, "admin")
Custom admin groups
If you use groups outside the default set, either:
- add them to
Config.AdminGroupsinsky_base/config/config.luafor fallback admin checks - or add them to the matching mechanic command in
Config.CommandPermissions
Example:
Config.CommandPermissions = {
admintuning = { "god", "superadmin", "admin", "owner" },
debugwearzero = { "god", "superadmin", "admin", "owner" },
debugwearzeroall = { "god", "superadmin", "admin", "owner" },
}
Boss menu setup with /setboss
Once your admin group is working, run /setboss to grant all boss permissions to a specific mechanic grade:
/setboss mechanic 4
Change 4 to the top grade configured for your server.
Troubleshooting
::accordion-item{label="Command says "No permission""}
The player is not in a framework group checked by Sky.FW.IsAdmin, or the command's group list in Config.CommandPermissions does not include that group.
::
/workshopcreator uses the fallback admin check from sky_jobs_base, while /admintuning uses Config.CommandPermissions. Make sure your group is recognized by both systems if you want access to both.
The player must reconnect after permission changes. On ACE changes in server.cfg, also run refresh and load permissions or restart the server.
The grade you passed to /setboss must match the grade value stored for the employee in the job member data. Use the highest configured mechanic grade.
sky_jobs_base is not running, or sky_mechanicjob did not finish registering the creator on startup.
Support
Need help? Our support team is always ready to assist
Join Discord