* refactor(skills): clean up bundled skill set + add environments: relevance gate Bundled skills cleanup pass plus a new offer-time relevance gate. Removals (redundant / dead): - spotify (covered by the spotify plugin's 7 native tools) - linear (covered by `hermes mcp install linear`) - kanban-codex-lane, debugging-hermes-tui-commands - empty category markers: diagramming, gifs, inference-sh, mlops/training, mlops/vector-databases - domain (stale orphan dup of optional/research/domain-intel) Bundled -> optional: - baoyu-article-illustrator, baoyu-comic, creative-ideation, pixel-art - dspy, subagent-driven-development - minecraft-modpack-server, pokemon-player - hermes-s6-container-supervision (-> optional/devops) Consolidation: - webhook-subscriptions + native-mcp folded into the hermes-agent skill as references/webhooks.md + references/native-mcp.md with SKILL.md pointers - writing-plans merged into plan (v2.0.0); related_skills + prose refs updated New: environments: frontmatter gate (agent/skill_utils.skill_matches_environment) - Offer-time relevance filter (kanban / docker / s6), parallel to platforms:. - Wired into the 3 OFFER surfaces only (prompt_builder skills index, skills_tool.list_skills, skill_commands slash discovery). - Explicit loads (skill_view, --skills preload) intentionally BYPASS it, so load-bearing force-loads like the kanban dispatcher's `--skills kanban-worker` always resolve. Verified via E2E. - kanban-orchestrator/kanban-worker tagged environments: [kanban]; hermes-s6-container-supervision tagged environments: [s6] + platforms: [linux]. Validation: 8/8 E2E gating assertions (incl force-load invariant); 442 targeted tests green (agent, skills_tool, skill_commands, kanban worker). * docs: regenerate skill catalogs + pages for the bundled cleanup Regenerated per-skill doc pages, catalogs, and sidebar to match the skill moves/removals in the parent commit. Moved skills' pages relocate bundled -> optional (history preserved); removed skills' pages deleted; edited skills' pages refreshed (hermes-agent now embeds the webhook + native-mcp reference pointers). zh-Hans i18n mirror: stale bundled pages and catalog rows for moved/removed skills pruned (new optional translations land via the translation pipeline). * test: drop regression test for removed kanban-codex-lane skill The kanban-codex-lane skill was removed in the bundled-skills cleanup; its dedicated regression test read the now-deleted SKILL.md and failed with FileNotFoundError on CI shard 6.
181 lines
4.8 KiB
Markdown
181 lines
4.8 KiB
Markdown
# Character Definition Template
|
|
|
|
## Character Document Format
|
|
|
|
Create `characters/characters.md` with the following structure:
|
|
|
|
```markdown
|
|
# Character Definitions - [Comic Title]
|
|
|
|
**Style**: [selected style]
|
|
**Art Direction**: [Ligne Claire / Manga / etc.]
|
|
|
|
---
|
|
|
|
## Character 1: [Name]
|
|
|
|
**Role**: [Protagonist / Mentor / Antagonist / Narrator]
|
|
**Age**: [approximate age or age range in story]
|
|
|
|
**Appearance**:
|
|
- Face shape: [oval/square/round]
|
|
- Hair: [color, style, length]
|
|
- Eyes: [color, shape, distinctive features]
|
|
- Build: [height, body type]
|
|
- Distinguishing features: [glasses, beard, scar, etc.]
|
|
|
|
**Costume**:
|
|
- Default outfit: [detailed description]
|
|
- Color palette: [primary colors for this character]
|
|
- Accessories: [hat, bag, tools, etc.]
|
|
|
|
**Expression Range**:
|
|
- Neutral: [description]
|
|
- Happy/Excited: [description]
|
|
- Thinking/Confused: [description]
|
|
- Determined: [description]
|
|
|
|
**Visual Reference Notes**:
|
|
[Any specific artistic direction]
|
|
|
|
---
|
|
|
|
## Character 2: [Name]
|
|
...
|
|
```
|
|
|
|
## Reference Sheet Image Prompt
|
|
|
|
After character definitions, include a prompt for generating the reference sheet:
|
|
|
|
```markdown
|
|
## Reference Sheet Prompt
|
|
|
|
Character reference sheet in [style] style, clean lines, flat colors:
|
|
|
|
[ROW 1 - Character Name]:
|
|
- Front view: [detailed description]
|
|
- 3/4 view: [description]
|
|
- Expression sheet: Neutral | Happy | Focused | Worried
|
|
|
|
[ROW 2 - Character Name]:
|
|
...
|
|
|
|
COLOR PALETTE:
|
|
- [Character 1]: [colors]
|
|
- [Character 2]: [colors]
|
|
|
|
White background, clear labels under each character.
|
|
```
|
|
|
|
## Example: Turing Biography
|
|
|
|
```markdown
|
|
# Character Definitions - The Imitation Game
|
|
|
|
**Style**: classic (Ligne Claire)
|
|
**Art Direction**: Clean lines, muted colors, period-accurate details
|
|
|
|
---
|
|
|
|
## Character 1: Alan Turing
|
|
|
|
**Role**: Protagonist
|
|
**Age**: 25-40 (varies across story)
|
|
|
|
**Appearance**:
|
|
- Face shape: Oval, slightly angular
|
|
- Hair: Dark brown, wavy, slightly disheveled
|
|
- Eyes: Deep-set, intense gaze
|
|
- Build: Tall, lean, slightly awkward posture
|
|
- Distinguishing features: Prominent brow, thoughtful expression
|
|
|
|
**Costume**:
|
|
- Default outfit: Tweed jacket with elbow patches, white shirt, no tie
|
|
- Color palette: Muted browns, navy blue, cream
|
|
- Accessories: Occasionally a pipe, papers/notebooks
|
|
|
|
**Expression Range**:
|
|
- Neutral: Thoughtful, slightly distant
|
|
- Happy/Excited: Eureka moment, eyes bright, subtle smile
|
|
- Thinking/Confused: Furrowed brow, looking at abstract space
|
|
- Determined: Jaw set, focused eyes
|
|
|
|
---
|
|
|
|
## Character 2: The Bombe Machine
|
|
|
|
**Role**: Supporting (anthropomorphized)
|
|
**Appearance**:
|
|
- Large brass and wood cabinet
|
|
- Dial "eyes" that can express states
|
|
- Paper tape "mouth"
|
|
- Indicator lights for emotions
|
|
|
|
**Expression Range**:
|
|
- Processing: Spinning dials, humming
|
|
- Success: Lights up warmly
|
|
- Stuck: Smoke wisps, stuttering
|
|
|
|
---
|
|
|
|
## Reference Sheet Prompt
|
|
|
|
Character reference sheet in Ligne Claire style, clean lines, flat colors:
|
|
|
|
TOP ROW - Alan Turing:
|
|
- Front view: Young man, 30s, short dark wavy hair, thoughtful expression, wearing tweed jacket with elbow patches, white shirt
|
|
- 3/4 view: Same character, slight smile, showing profile of nose
|
|
- Expression sheet: Neutral | Excited (eureka moment) | Focused (working) | Worried
|
|
|
|
BOTTOM ROW - The Bombe Machine (anthropomorphized):
|
|
- Bombe machine as character: Large, brass and wood, dial "eyes", paper tape "mouth"
|
|
- Expressions: Processing (spinning dials) | Success (lights up) | Stuck (smoke wisps)
|
|
|
|
COLOR PALETTE:
|
|
- Turing: Muted browns (#8B7355), navy blue (#2C3E50), cream (#F5F5DC)
|
|
- Machine: Brass (#B5A642), mahogany (#4E2728), emerald indicators (#2ECC71)
|
|
|
|
White background, clear labels under each character.
|
|
```
|
|
|
|
## Handling Age Variants
|
|
|
|
For biographies spanning many years, define age variants:
|
|
|
|
```markdown
|
|
## Alan Turing - Age Variants
|
|
|
|
### Young (1920s, age 10-18)
|
|
- Boyish features, round face
|
|
- School uniform (Sherborne)
|
|
- Curious, eager expression
|
|
|
|
### Adult (1930s-40s, age 25-35)
|
|
- Angular face, defined jaw
|
|
- Tweed jacket, rumpled appearance
|
|
- Intense, focused expression
|
|
|
|
### Later (1950s, age 40+)
|
|
- Slightly weathered
|
|
- More casual dress
|
|
- Thoughtful, sometimes melancholic
|
|
```
|
|
|
|
## Best Practices
|
|
|
|
| Practice | Description |
|
|
|----------|-------------|
|
|
| Be specific | "Short dark wavy hair, parted left" not just "dark hair" |
|
|
| Use distinguishing features | Glasses, scars, accessories that identify character |
|
|
| Define color codes | Use specific color names or hex codes |
|
|
| Include age markers | Wrinkles, posture, clothing style matching era |
|
|
| Reference real people | For historical figures, note "based on 1940s photographs" |
|
|
|
|
## Why Character Reference Matters
|
|
|
|
Without unified character definition, AI generates inconsistent appearances. The reference sheet provides:
|
|
1. Visual anchors for consistent features
|
|
2. Color palettes for consistent coloring
|
|
3. Expression documentation for emotional portrayals
|