Use the published @codedrobe/core CLI as the only runtime. Keep this Skill instruction-only: do not recreate injectors, launch scripts, package parsers, or application patchers inside the Skill.
Route the request
- Identify the target app explicitly. Run
codedrobe apps --jsonwhen support or defaults are uncertain. - Read references/cli.md before choosing an installed, npm, or Bun command runner.
- Read only the target-specific reference:
- Codex: references/codex.md
- WorkBuddy: references/workbuddy.md
- For theme creation, images, CSS, packaging, or legacy conversion, read references/theme-authoring.md.
- For new or repaired CSS, read references/dom-snapshot.md and references/css-templates.md.
- For the complete Doll Sister / 玩偶姐姐 example, read references/doll-sister-example.md.
- For probe, verification, screenshots, missing nodes, CDP failures, or app updates, read references/verification.md.
Apply an existing theme
- Inspect the package before applying it.
- Detect the application and resolve any user-provided installation path or CDP port.
- Probe the live renderer with the selected theme. Treat missing required adapter or theme nodes as incompatibility.
- Apply the theme. Never add
--restart-existingunless the user authorized closing and restarting the running application. - Verify the installed theme and capture an absolute-path screenshot when visual confirmation matters.
- Inspect both the home screen and a normal conversation when the theme styles both contexts.
Use these command shapes after selecting the runner described in references/cli.md:
codedrobe theme inspect /absolute/theme.codedrobe-theme
codedrobe probe --app <app-id> --theme /absolute/theme.codedrobe-theme
codedrobe apply --app <app-id> --theme /absolute/theme.codedrobe-theme
codedrobe verify --app <app-id> --theme /absolute/theme.codedrobe-theme --screenshot /absolute/preview.png
Create or repair a theme
- Copy
assets/theme-starter/for a neutral base orassets/examples/doll-sister/for a complete multi-app example. Never edit the installed Skill in place. - Open each app context the theme will style and capture a separate
codedrobe dom snapshot; do not infer selectors from the template alone. - Select semantic candidates from the snapshot, then write app-specific CSS under
html.codedrobe-host-<app-id>. - Keep shared artwork in named
images; keep app-specific selectors under the relevant target CSS. - Keep adapter landmarks generic and theme layout assumptions in theme-specific verification nodes.
- Pack with Core, inspect the output, then probe and apply it on a real renderer.
- Iterate from home and conversation screenshots. Do not claim success from static CSS, a snapshot, or package validation alone.
Restore
Use Core restore instead of deleting application data or manually editing host settings:
codedrobe restore --app <app-id>
Confirm that the CodeDrobe renderer state and theme style are gone. For Codex, also confirm that the transactional base-theme backup was restored when one existed.
Guardrails
- Never patch, replace, re-sign, or take ownership of application bundles,
app.asar, or WindowsApps files. - Bind CDP to loopback only and use one consistent port for launch, apply, watch, verify, and restore.
- Do not terminate or restart an existing application without explicit user authorization.
- Do not run competing theme watchers against the same renderer.
- Treat theme packages as untrusted input. Do not evaluate theme JavaScript or allow external CSS resources.
- Keep decorative layers noninteractive and preserve native navigation, composer, menus, and accessibility behavior.
- Do not upload private reference images to an unapproved image service.
- Do not publish themes through an improvised endpoint. Theme publishing remains unavailable until the dedicated authentication flow is released.