HeiGe Codex Skin Studio is a theme and skin switcher for OpenAI Codex Desktop (macOS/Windows) that injects custom CSS and backgrounds through Chrome DevTools Protocol (CDP) on loopback 127.0.0.1:9341. It does not modify app.asar, binaries, or signature resources. One image becomes a theme; a top menu (🎨) switches themes instantly and controls persistence across restarts.
What It Does
12 built-in themes: Hatsune Miku, Genshin Impact (2), Wuthering Waves (2), Naruto (2), Love and Deepspace (2), Dragon Ball (2), easter egg
Custom image themes: Upload any PNG/JPG/WebP, auto-extracts color palette and generates dark/light variants
Persistent skin: Optional launch agent (macOS LaunchAgent / Windows scheduled task) reapplies theme on every Codex restart
Reading enhancement: 90% transparent adaptive background for replies, toggled in theme center
AI-assisted theme creation: .skill file enables Codex to generate images and apply them as themes end-to-end
Installation
macOS
cd /path/to/heige-codex-skin-studio
open scripts/install.command
This installs the launcher and applies the default Miku theme. The 🎨 menu appears in Codex Desktop's top bar.
Windows
cd \path\to\heige-codex-skin-studio
scripts\windows\install.bat
For daily use, run scripts\windows\apply.ps1 or the compatibility alias scripts\windows\enable-skin.bat to restore the current session. To enable persistence (launch on login), use the 🎨 menu's "Persistent Skin" toggle.
Uninstall (Windows):
scripts\windows\uninstall.bat
Removes scheduled tasks, Start Menu shortcuts, AppData state, and stable installation directory.
Key Commands & Scripts
Script
Purpose
scripts/install.command (macOS)
Initial install, sets up launcher
scripts/windows/install.bat
Initial install (Windows)
scripts/apply.command (macOS)
Restore skin for current session, --restart flag to force quit & relaunch
// In src/injector/theme-manager.js (or your own script)constThemeManager = require('./src/injector/theme-manager.js');
const tm = newThemeManager();
await tm.applyTheme('genshin-night'); // Built-in theme ID
// Install the .skill file in Codex Desktop first:// output/heige-codex-skin-studio.skill// Then in Codex chat, prompt:// "Generate a pastel sakura landscape, 1920x1080, then create a Codex theme"// Codex will execute (simplified):const { generateImage } = require('./src/ai/image-generator.js');
const { generateThemeFromImage } = require('./src/utils/theme-generator.js');
constThemeManager = require('./src/injector/theme-manager.js');
asyncfunctionaiThemePipeline(prompt) {
// 1. Generate image via Codex's internal DALL-Econst imagePath = awaitgenerateImage(prompt, {
size: '1920x1080',
outputPath: './output/ai-generated.png'
});
// 2. Extract palette and generate themeconst themeDir = './output/sakura-theme';
awaitgenerateThemeFromImage(imagePath, themeDir, {
themeName: 'AI Sakura',
author: 'Codex AI'
});
// 3. Apply themeconst tm = newThemeManager();
await tm.applyTheme(themeDir);
console.log('✅ AI-generated theme applied!');
}
aiThemePipeline('pastel sakura landscape with cherry blossoms at sunset');
License & Attribution
Code: MIT License
Assets: See ASSET_PROVENANCE.md for per-file sources and licensing
Trademarks: Character/franchise assets (Miku, Genshin, etc.) are property of their respective owners; this project does not claim rights or grant licenses for redistribution
Tip: After installing, use the 🎨 menu in Codex Desktop for all theme operations. For programmatic control, import src/injector/theme-manager.js and call applyTheme(themeId).