For Skill Tree in general, you can extends functionalities of admin command during certain time, with cooldowns. This is happening using CustomChatCommand which works great, at least is what I use.
https://umod.org/plugins/custom-chat-commands
Once you create the custom command with a proper cooldown you can add the skill in your config file. I have it like this
"Eyes Above": {
"Permission required to show this node": null,
"Minimum prestige required to unlock this node": 0,
"Skill required to unlock node [Requires max level]": null,
"Skill that if unlocked, will prevent this node from unlocking": null,
"enabled": true,
"max_level": 1,
"tier": 3,
"value_per_buff": 1.0,
"buff_info": {
"Key": "Permission",
"Value": "Permission"
},
"icon_url": "https://www.dropbox.com/scl/fi/2141spvtijca1uctk7zho/nice_512x512.png?rlkey=urfs995d8ox2cvoc06uggqbuv&dl=1",
"skin": 3234087711,
"permissions": {
"description": "This skill lets you call in a <color=#42f105>UAV Drone</color> that marks NPC's, Enemies and Teammates. <color=#ffef00>Command:</color> /drone. <color=#ffef00>Cooldown:</color> 60m.",
"perms": {
"1": {
"perms_list": {
"customchatcommands.drone": "Type /drone"
}
}
}
}
}
}