Skip to content

vibe scene build: multi-provider T2I routing (Gemini + Grok) + fix help text #202

@kiyeonjeon21

Description

@kiyeonjeon21

Why

ROADMAP Phase 4 lists "Multi-provider T2I in scene build" — currently the help text claims OpenAI-only but the code already supports Gemini, and Grok routing is missing entirely.

State of code (2026-04-29)

  • packages/cli/src/commands/scene.ts:1256vibe scene build --image-provider <name> help reads "openai (only one supported in v0.60)". This is misleading — the underlying executor at line 894 reads (opts.imageProvider ?? "gemini").toLowerCase() and the validator at line 896 already accepts both gemini and openai.
  • packages/cli/src/commands/scene.ts:519vibe scene add --image-provider <name> correctly advertises "Image provider: gemini, openai".
  • No Grok / xAI image provider routing in either subcommand.

So today: scene build --image-provider gemini actually works, the user just isn't told. And Grok is unreachable.

Scope

  • Update scene build help text (scene.ts:1256) to match actual support: "Image provider: gemini, openai, grok" (or whatever ships)
  • Add Grok image provider branch in the asset-generation block at scene.ts:889-920 (mirror the OpenAI branch — XAI_API_KEY env, GrokImageProvider from @vibeframe/ai-providers)
  • Make --image-provider an enum (commander .choices() or zod) so invalid values fail at parse time instead of asset-gen time
  • Tests: _shared/scene-render.test.ts style — dry-run snapshot for each provider
  • --describe envelope (CLI UX audit: --json schema, --describe coverage, exit codes #33) should expose the new enum values

Out of scope

  • I2V (motion-video backdrops) — tracked separately

Reference

  • ROADMAP.md Phase 4 "Open items in Phase 4 (v0.61+ candidates)"
  • Asset-gen block: packages/cli/src/commands/scene.ts:889-920

Metadata

Metadata

Assignees

No one assigned

    Labels

    featureNew feature or enhancement

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions