Overview

ClibDT (CommonLib Developers Toolkit) is a PyQt6 application designed to streamline SKSE plugin development for Skyrim Special Edition. It provides:

ClibDT significantly lowers the barrier to entry for SKSE plugin development. Setting up a CommonLib development environment traditionally requires navigating scattered documentation, manually configuring build systems, and troubleshooting cryptic errors. ClibDT consolidates this process into a guided workflow, though you'll still need to learn C++ and understand how SKSE plugins work.

Version: This documentation covers ClibDT v5.2

Requirements

System Requirements

Tools (Installed via ClibDT)

ToolPurposeNotes
Visual Studio Build ToolsC++ compiler (MSVC)Required for building plugins
xmakeBuild systemModern, fast build automation
GitVersion controlRequired for cloning templates
GitHub DesktopGit GUI (optional)Easier repository management

Initial Setup

Step 1: Choose a Development Root

  1. Open ClibDT
  2. Go to Set Paths in the left panel
  3. Click Choose Folder under "Development Root Folder"
  4. Select or create a folder (e.g., C:\Dev\Skyrim)

ClibDT will automatically create the following structure:

Dev Root/
├── builds/       # Compiled plugin outputs (DLL files)
├── projects/     # Your SKSE plugin source code
├── tools/        # Development tools (xmake, Build Tools)
├── resources/    # Headers, libraries, CommonLibSSE
├── plugins/      # SKSE plugin dependencies
└── backups/      # Automatic project backups

Step 2: Install Development Tools

  1. Go to Install Toolchain in the left panel
  2. Click Install next to each tool:
    • VS Build Tools - The C++ compiler
    • xmake - Build system
    • Git - Version control
  3. Wait for each installation to complete
  4. Green status indicators show installed tools
VS Build Tools requires a large download (~2-4 GB). Ensure you have a stable internet connection.

Step 3: Configure Game Path (Optional)

If you want compiled plugins to be automatically copied to your mods folder:

  1. Go to Set Paths
  2. Set Game Path to your Skyrim SE installation folder
  3. Set Mods Path to your mod organizer's mods directory

Creating Your First Project

Step 1: Open Create Project

  1. Go to Create Project in the left panel
  2. Enter a Project Name (e.g., MyFirstPlugin)
  3. The Location will default to your projects folder

Step 2: Configure Project Metadata

FieldDescriptionExample
VersionInitial version number1.0.0
AuthorYour name or usernameYourName
DescriptionBrief plugin descriptionMy awesome SKSE plugin
Init GitInitialize a Git repositoryRecommended: checked

Step 3: Create the Project

  1. Click Create
  2. ClibDT will:
    • Clone the CommonLibSSE-NG template
    • Install ClibUtil and xbyak dependencies
    • Generate xmake.lua build configuration
    • Initialize Git repository (if selected)
  3. Your project is ready at projects/MyFirstPlugin
Template: Projects use the CommonLibSSE-NG-VR-Template which supports SE, AE, and VR builds.

Building Your Project

Step 1: Select Your Project

  1. Go to Compile Project in the left panel
  2. Select your project from the Project dropdown

Step 2: Configure Build Options

OptionDescription
ConfigurationDebug (with symbols), Release (optimized), or RelWithDebInfo
RuntimeSE only, AE only, SE + AE (dual), or VR only
CleanRemove previous build artifacts before building

Step 3: Compile

  1. Click Compile
  2. Build output appears in the terminal panel at the bottom
  3. On success, your DLL is in the project's build folder
Build Commands: ClibDT uses xmake under the hood:
xmake f -m release --skse_runtime=ae
xmake

Folder Structure Reference

FolderPurpose
builds/Compiled plugin outputs (DLL files)
projects/Your SKSE plugin source code projects
tools/Downloaded tools and utilities
tools/BuildTools/Visual Studio Build Tools workspace
tools/xmake/xmake build system
resources/Headers, libraries, CommonLibSSE
plugins/SKSE plugin dependencies
backups/Automatic project backups

Environment Variables

ClibDT manages these environment variables:

VariablePurpose
XSE_CLIBDT_DEVROOTDevelopment root folder
XSE_MSVCTOOLS_ROOTVisual Studio Build Tools path
XSE_XMAKE_ROOTxmake installation path
XSE_GIT_ROOTGit installation path
XSE_TES5_GAME_PATHSkyrim SE game folder
XSE_TES5_MODS_PATHMods output folder
XSE_PROJECTS_ROOTProjects folder override

Development Workflow

Typical workflow:
  1. Create - Use Create Project to scaffold a new plugin
  2. Edit - Open the project in your IDE (VS Code, Visual Studio)
  3. Build - Use Compile Project to build your DLL
  4. Test - Copy DLL to your game's SKSE plugins folder
  5. Iterate - Make changes and rebuild
  6. Backup - Use Custom Backup to save your work