Files
baoyu-skills/skills/baoyu-article-illustrator/references/config/preferences-schema.md
T
Jim Liu 宝玉 adb783ae6d refactor: unify image-backend resolution with preferred_image_backend preference
Replaces the stateless ask-once backend rule with a 4-step resolution
(current-request override > saved preference > auto-select > ask) and
adds a single `preferred_image_backend` field (auto | ask | <backend-id>)
to every image-consuming skill's EXTEND.md schema. Runtime-native tools
(Codex `imagegen`, Hermes `image_generate`, ...) win by default; absent
field equals `auto` so existing user EXTEND.md files stay valid with no
schema version bump.

Each image-consuming skill also gains a top-level `## Changing
Preferences` section as a first-class surface for pinning a backend and
editing common one-line preferences.

Applies across:
  - baoyu-infographic (reverts in-progress two-field image_backend_mode design)
  - baoyu-comic
  - baoyu-cover-image
  - baoyu-image-cards
  - baoyu-article-illustrator
  - baoyu-slide-deck
  - baoyu-xhs-images
  - docs/image-generation-tools.md (canonical author-side doc)
2026-04-21 16:43:58 -05:00

4.0 KiB

name, description
name description
preferences-schema EXTEND.md YAML schema for baoyu-article-illustrator user preferences

Preferences Schema

Full Schema

---
version: 1

watermark:
  enabled: false
  content: ""
  position: bottom-right  # bottom-right|bottom-left|bottom-center|top-right

preferred_style:
  name: null              # Built-in or custom style name
  description: ""         # Override/notes

preferred_palette: null   # Built-in palette name (macaron|warm|neon) or null

language: null            # zh|en|ja|ko|auto

default_output_dir: null  # same-dir|illustrations-subdir|independent

preferred_image_backend: auto  # auto|ask|<backend-id>

custom_styles:
  - name: my-style
    description: "Style description"
    color_palette:
      primary: ["#1E3A5F", "#4A90D9"]
      background: "#F5F7FA"
      accents: ["#00B4D8", "#48CAE4"]
    visual_elements: "Clean lines, geometric shapes"
    typography: "Modern sans-serif"
    best_for: "Business, education"
---

Field Reference

Field Type Default Description
version int 1 Schema version
watermark.enabled bool false Enable watermark
watermark.content string "" Watermark text (@username or custom)
watermark.position enum bottom-right Position on image
preferred_style.name string null Style name or null
preferred_style.description string "" Custom notes/override
preferred_palette string null Palette override (macaron, warm, neon, or null)
language string null Output language (null = auto-detect)
default_output_dir enum null Output directory preference (null = ask each time)
preferred_image_backend string auto Image backend selection. auto = prefer runtime-native tool, fall back to the only installed backend, ask if multiple non-native are present. ask = always confirm on every run. <backend-id> (e.g., codex-imagegen, baoyu-imagine, image_generate) = pin this backend when available; fall back to auto when it isn't. Absent = auto. Resolution logic is documented in SKILL.md's ## Image Generation Tools section.
custom_styles array [] User-defined styles

Position Options

Value Description
bottom-right Lower right corner (default, most common)
bottom-left Lower left corner
bottom-center Bottom center
top-right Upper right corner

Output Directory Options

Value Description
same-dir Same directory as article
illustrations-subdir {article-dir}/illustrations/ subdirectory
independent illustrations/{topic-slug}/ in working directory

Custom Style Fields

Field Required Description
name Yes Unique style identifier (kebab-case)
description Yes What the style conveys
color_palette.primary No Main colors (array)
color_palette.background No Background color
color_palette.accents No Accent colors (array)
visual_elements No Decorative elements
typography No Font/lettering style
best_for No Recommended content types

Example: Minimal Preferences

---
version: 1
watermark:
  enabled: true
  content: "@myusername"
preferred_style:
  name: notion
---

Example: Full Preferences

---
version: 1
watermark:
  enabled: true
  content: "@myaccount"
  position: bottom-right

preferred_style:
  name: notion
  description: "Clean illustrations for tech articles"

language: zh

preferred_image_backend: codex-imagegen

custom_styles:
  - name: corporate
    description: "Professional B2B style"
    color_palette:
      primary: ["#1E3A5F", "#4A90D9"]
      background: "#F5F7FA"
      accents: ["#00B4D8", "#48CAE4"]
    visual_elements: "Clean lines, subtle gradients, geometric shapes"
    typography: "Modern sans-serif, professional"
    best_for: "Business, SaaS, enterprise"
---