⚙️ Settings

Settings tune the client experience and generation prompt. The key self-hosted addition is targetPlatform, which keeps the app platform-neutral by default while allowing a user to intentionally aim generated prompts at a named target environment.

Target platform

  • key:
    • pwiz.targetPlatform
  • type:
    • free-text string
  • default:
    • empty string
  • empty behavior:
    • generated prompts remain platform-neutral
    • admin templates receive empty target platform clause
  • set behavior:
    • value is threaded through generation options
    • prompt system receives {targetPlatform}
    • prompt system receives {targetPlatformClause} when needed
  • examples:
    • WebSim.ai
    • v0
    • Claude Code
    • Cursor
  • safety:
    • this setting changes prompt wording only
    • it does not select a provider model
    • it does not bypass omp

Generation options

  • project type:
    • game
    • app
    • tool
    • website
    • custom typed labels if UI supports them
  • complexity:
    • guides scope and implementation detail
  • visual style:
    • guides aesthetics
  • focus:
    • guides priority such as UX, performance, or architecture
  • number of steps:
    • maps to {steps} in formatter and architect prompts
  • include settings:
    • asks generated output to include settings and roadmap material where applicable
  • target audience:
    • maps to admin prompt variables
  • tech vibe:
    • maps to admin prompt variables

While generating

  • key:
    • pwiz.thoughts
  • type:
    • one of off, live, rain
  • default:
    • off
  • location:
    • Settings drawer, “While generating” row (moved there from under the prompt bar in 3.2.3)
  • values:
    • off - no thought display or real-thought request
    • live - the only mode that opts into real thought chunks using the per-tab UUID
    • rain - synthetic client-only canvas; sends no thoughtsTab and requests no real thought chunks (caller fixed in D-479b)

UI preferences

  • dark mode:
    • persisted client-side
    • should sync predictably across reloads
  • debug mode (developer tools):
    • exposes wizard tools; admin tabs (prompts, data, history, debug, timings) additionally require a signed-in admins or pwiz-admins group supplied by optional SSO (D-169)
    • toggle lives in the Settings drawer and is the only writer of the preference; opening or closing the tools drawer itself no longer resets it (3.2.3)
  • wizard debug mode:
    • exposes wizard management and editor tools
  • selected wizard:
    • visual preference for the assistant avatar

Admin sign-in and shared identity

Use Settings → Admin sign-in to open optional Authelia login. The app remains usable anonymously. Signing in alone does not confer admin rights: the admins or pwiz-admins group is required for global template/log/timing administration. Enable developer tools to open the tools drawer.

Anonymous visitors all use public, so their saved projects, prompt history, likes and owned custom wizard rows are shared. Signed-in ordinary library queries use the signed-in identity; even admin library queries are not an unrestricted view of other users’ private projects.

Wizard settings

  • source:
    • seeded static wizard PNGs
    • custom uploaded or generated images
  • display normalization:
    • circular mask
    • object-fit cover
    • solid backgrounds are acceptable because omp image generation has no transparency parameter
  • editable fields:
    • position offsets
    • size
    • prompt and name metadata where supported

Duplicate a seed before editing

Built-in/global seed wizards require admin membership to mutate. Ordinary users can select a seed in Wizard Tools, duplicate it into an owned custom row, then use the pencil/editor on that copy. The editor supports move/scale, erase/restore, undo/redo and saving an uploaded image with previous-image history. Offset and size controls also persist changes.

Ownership follows the effective identity: an anonymous copy is owned by shared public, not uniquely by a browser. Selecting a wizard changes the avatar, not the model/persona used for generation.

Prompt editing and preflight

Generated step titles, details and prompts can be edited directly, enhanced or discussed in brainstorm chat. They update the canonical project document; explicitly save to update the library copy, separate from the local draft. These controls do not edit or deploy the running app’s source.

Admins edit behavior under Admin Panel → Prompts: Save creates/updates an override; Restore Default deletes it. Matching overrides win over factory text with up to 60 seconds of client caching, subject to the shared current-library and ideas-output policies. Unknown placeholders become empty strings.

Confirm LLM prompts previews client context, not a complete provider transcript: schema/protocol text may be added later. Successful text/image AI calls are stored in llm_logs (admin-only), regardless of developer-tools or thought-display settings. See api > Logging, retention and public storage for contents and the absence of an app log TTL.

Settings SSOT cautions

  • imported archive docs describe WebSim as the default target; that is historical only
  • target platform must not be silently defaulted to WebSim
  • settings must not introduce provider keys, model selectors, or direct provider endpoints
  • if a setting affects generation, it should be visible in the admin prompt interpolation path

See admin-prompts for template placeholders and omp-integration for generation boundaries.