| name | studio-margin-codex-theme |
|---|---|
| description | Apply, verify, refine, or remove the Studio Margin custom theme for the macOS Codex desktop app. Use when the user asks for the warm editorial private-studio Codex skin, wants Codex to look like an art magazine workspace, asks to restore the native interface, or wants to iterate on the Studio Margin palette, generated hero artwork, typography, or layout. |
Apply a reversible editorial skin to the official macOS Codex app through a loopback-only Chromium DevTools Protocol connection. Never patch, replace, or re-sign ChatGPT.app or app.asar.
-
Tell the user that applying the theme briefly restarts Codex.
-
Run:
scripts/start-studio-margin.sh --restart-existing
-
Verify and capture a screenshot:
scripts/verify-studio-margin.sh --screenshot /absolute/path/studio-margin.png
-
Inspect the screenshot. Treat missing artwork, sidebar, composer, theme marker, or horizontal overflow as failure. Fix the CSS and repeat until the interface is visually coherent.
The apply script installs a per-user LaunchAgent. It does not force Codex to remain open: after the user quits, it waits; when Codex is opened normally again, it relaunches that instance once with a loopback-only debugging port and reapplies the theme.
- Read references/design-system.md before changing the visual direction.
- Edit
themes/studio-margin.cssonly for layout, typography, color tokens, readability, and interaction states. - Create every artistic or decorative visual with an image-generation model. Never draw illustrations, textures, collages, decorative motifs, or substitute artwork with CSS, Canvas, SVG generation, Python, or other code.
- Replace
assets/studio-margin-hero.pngonly with artwork intentionally produced by an image-generation model or explicitly supplied by the user. - Increment
versioninthemes/studio-margin.jsonafter every visible change so stale injection is detectable. - Keep native navigation, project selection, composer, task content, and review controls interactive.
- Keep decorative layers
pointer-events: none. - Use local assets only. Do not add remote CSS, tracking pixels, remote fonts, scripts, or user data.
Run:
scripts/restore-studio-margin.shThis stops the Studio Margin watcher and removes the live injected DOM and CSS. It does not delete threads, authentication, projects, or Codex configuration.
- Bind CDP only to
127.0.0.1. - Stop if the selected port belongs to another process.
- Stop a saved watcher PID only when its current command line identifies this Skill's injector.
- Treat Codex DOM selectors as version-sensitive. Re-run screenshot verification after Codex updates.
- Do not claim success from static CSS or a successful injection call alone.