create-bitfun-skin

Author, validate, and package sparse .bitfun-appearance skin packages against the BitFun Appearance contract.

1.9k|214|Updated Feb 2, 2026
One-click install
npx skills add https://github.com/GCWing/BitFun --skill create-bitfun-skin
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: create-bitfun-skin
Source: https://github.com/GCWing/BitFun/tree/main/src/crates/assembly/core/builtin_skills/create-bitfun-skin
Command: npx skills add https://github.com/GCWing/BitFun --skill create-bitfun-skin

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires Pillow, and includes scripts (resource) and references (resource) components.

What problem does it solve?

BitFun skins must conform to a strict Appearance contract covering registered components, parts, states, facets, renderer tokens, and media limits. This Skill discovers the exposed styling surface, authors sparse overlay packages, and validates them against the bundled registry and a live BitFun checkout so skins import without errors.

Core Features & Use Cases

  • Contract Discovery: Query registered components, scenes, renderers, Style IR properties, and CSS/Widget tokens before authoring any style rule.
  • Package Authoring and Validation: Initialize a minimal appearance.json overlay, build the .bitfun-appearance archive, and validate it against the bundled registry or a production BitFun checkout.
  • Media Pipeline: Generate compliant WebP images and VP9 WebM background videos with adaptive quality policies that respect BitFun's size, dimension, and duration limits.
  • Use Case: A designer wants a dark animated skin for BitFun. The Skill queries the registry for styleable surfaces, initializes a sparse package, encodes a 60-second VP9 background under 64 MiB, validates the archive, and verifies it against the host checkout.

Quick Start

Ask the agent to create a new dark BitFun skin package with a given id and name, then validate and build it into a .bitfun-appearance archive.

Frequently Asked Questions about create-bitfun-skin

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a custom skin for the BitFun desktop app?

Initialize a sparse package with the bitfun_appearance.py init command, edit appearance.json to declare only the values you want to change, then validate and build it into a .bitfun-appearance archive. BitFun merges the package over its built-in light or dark Appearance.

What can a BitFun appearance package actually style?

Only surfaces, parts, facets, states, renderer adapters, tokens, and Style IR properties registered in the Appearance contract registry. Query the registry with the contract list and contract show commands; never infer parts from DOM structure or other skins.

What media formats are allowed in a .bitfun-appearance package?

Packages may contain PNG, JPEG, WebP, and GIF images. MP4 or WebM video is allowed only through top-level backgroundMedia, and every video requires an image poster. CSS files, scripts, fonts, SVG, and remote URLs are unsupported.

Why does my BitFun skin fail to import?

Import failures usually come from unregistered surfaces, unsupported style properties, or invalid asset references in the manifest. Run the validate command to get issue paths and codes, then repair the sparse manifest instead of copying another package.

What are the video limits for BitFun background media?

Background videos are capped at 64 MiB, 60 seconds, 4096 pixels per side, and 9 million pixels based on browser display dimensions. The host normalizes playback to 30 FPS, converts to yuv420p, removes audio, and strips metadata.