Agent SkillsIvanWng97/pixtuoid › add-theme

add-theme

GitHub

用于为pixtuoid项目添加新颜色主题。涵盖创建包含110个角色的完整主题文件、注册模块、确保RGB唯一性,以及关键的manifest同步和媒体再生步骤,最后通过测试与视觉验证。

.claude/skills/add-theme/SKILL.md IvanWng97/pixtuoid

Trigger Scenarios

用户要求添加特定名称的主题 用户提出新建配色方案 用户请求将现有调色板移植到pixtuoid

Install

npx skills add IvanWng97/pixtuoid --skill add-theme -g -y
More Options

Non-standard path

npx skills add https://github.com/IvanWng97/pixtuoid/tree/main/.claude/skills/add-theme -g -y

Use without installing

npx skills use IvanWng97/pixtuoid@add-theme

指定 Agent (Claude Code)

npx skills add IvanWng97/pixtuoid --skill add-theme -a claude-code -g -y

安装 repo 全部 skill

npx skills add IvanWng97/pixtuoid --all -g -y

预览 repo 内 skill

npx skills add IvanWng97/pixtuoid --list

SKILL.md

Frontmatter
{
    "name": "add-theme",
    "version": "1.0.0",
    "metadata": {
        "scope": "pixtuoid repo only"
    },
    "description": "Add a new color theme to pixtuoid (a full ~110-role palette across 9 groups, rendered into the office). Use when the user says 'add a <name> theme', 'new color scheme', or 'port <palette> to pixtuoid'. Orchestrates the Rust registration PLUS the two steps agents miss — the site manifest bridge test and the committed-media regen."
}

add-theme (v1)

A theme is a pub static Theme with ~110 color roles across 9 groups (surface, office, lighting, furniture, effects, ui, tool_glow, ApplianceColors for corridor appliances, and SourceColors for per-CLI dashboard badge hues). Every field must be supplied — corridor appliances render wrong until each theme provides its own set.

When to use

  • "Add a <name> theme" / "new color scheme" / "port <palette>".

The checklist

Full current steps: .github/prompts/add-theme.prompt.md

  1. Create crates/pixtuoid-scene/src/theme/<name>.rs — fill EVERY field; never fall back to the normal palette.
  2. Register: mod in theme/mod.rs, append &<NAME> to ALL_THEMES, theme_by_name() resolves the kebab-case name.
  3. Each palette key must map to a UNIQUE RGB — the renderer recolors by RGB equality (recolor_frame); duplicate keys collide silently.

The two steps agents miss (both have teeth)

  • site/src/themes.json row (id = the kebab-case name) — theme_gallery_manifest_matches_all_themes (theme/mod.rs) asserts the manifest ids == ALL_THEMES names, so the theme fails just test until the row exists. The site never runs the binary, so this bridge test is the only guard that the switcher stays in sync.
  • just gen-mediathemes.json drives the committed theme stills; a new theme drifts them, so regenerate and commit them or the smoke gen-check reds the PR (the same error the bridge test's message points at).

(Full step list + field details: add-theme.prompt.md + the tui CLAUDE.md theme notes — this skill headlines the two teeth steps agents miss.)

Finish

  • just testappliance_palette_is_legible_for_every_theme + the snapshot tests must pass; update insta snapshots if the theme list changed.
  • Visually verify — render the snapshot example and eyeball the office (see the beautify-decoration skill); a palette that passes the legibility guard can still read badly.
  • just preflight, then the two-lens-review skill (a theme is public-facing — add the editorial/film-critic lens for the rendered stills).

Version History

  • 0620ccd Current 2026-07-05 20:27

Same Skill Collection

.claude/skills/add-source/SKILL.md
.claude/skills/beautify-decoration/SKILL.md
.claude/skills/two-lens-review/SKILL.md

Metadata

Files
0
Version
0620ccd
Hash
a214a08f
Indexed
2026-07-05 20:27

trang chủ - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-07-09 04:40
浙ICP备14020137号-1 $bản đồ khách truy cập$