- Add Wildcard Prompt Composer and Wildcard Character Composer builder nodes (core/builder, web/prompt_builder.js, builders/, vp wildcard lists) - Add browser-based wildcard review tool (tools/wildcard_review) with manifest-based undo - Add wildcard catalog/curation, surreal compiler/lint/scene, profile token budget - README: document all 18 nodes, bump to v2.2.0, fix stale node/platform lists; CHANGELOG 2.2.0 - Rewrite NODE_COMPARISON for 18 nodes; fix QUICKSTART (dead test_setup.py ref, menu path) and QUICK_REFERENCE node list - gitignore review manifests and CLAUDE.md Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
32 lines
1.6 KiB
Python
32 lines
1.6 KiB
Python
"""
|
|
Builder nodes: click slot buttons to drop wildcards into a phrase you write, see the lists behind
|
|
them, and fix, subset or exclude entries. Each builder fills one or more prompt sections and hands
|
|
them on (PROMPT_SECTIONS) to the next builder, or as text to a Platform Prompt Rewriter.
|
|
|
|
Wildcard Prompt Composer every section in one node: subject, action, setting, lighting, style, camera
|
|
Wildcard Character Composer the Subject section only: age, occupation, hair, eyes, outfit, pose...
|
|
|
|
The slot buttons and their lists are defined in builders/<id>.yaml; the panel is drawn by
|
|
web/prompt_builder.js. See docs/PROMPT_BUILDER_GUIDE.md.
|
|
|
|
Author: Eric Hiss (GitHub: EricRollei)
|
|
License: Dual License (Non-Commercial and Commercial Use). See LICENSE.
|
|
"""
|
|
|
|
from .prompt_builder_support import PromptBuilderNode
|
|
|
|
|
|
class PromptBuilder(PromptBuilderNode):
|
|
"""A whole prompt, section by section: click a section, type between wildcard pills, move on."""
|
|
BUILDER_ID = "prompt"
|
|
DESCRIPTION = ("Build every section of a prompt in one node: Subject, Action, Setting, Lighting, Style, Camera, "
|
|
"in the platform's order. Lock a section to keep it while re-rolling the rest; mark empty "
|
|
"sections for the LLM rewriter to write.")
|
|
|
|
|
|
class CharacterBuilder(PromptBuilderNode):
|
|
"""One character's look as a phrase: text you type between wildcard pills."""
|
|
BUILDER_ID = "character"
|
|
DESCRIPTION = ("Write the Subject section: type text between wildcard pills (Age, Occupation, Hair color...). "
|
|
"Click a pill to see its list and fix, subset or exclude entries.")
|