Skip to main content
See your product’s agent before you install anything. Two venues, same surface:
  • npx vendo try in your app’s repo: the real extraction against your code, served locally.
  • vendo.run/playground: paste your product’s domain, no terminal needed.

Run it locally

Run it from your app’s repo. A deterministic read-only pass extracts your tools and brand theme, and the demo opens in the browser in seconds: your product’s agent, on your data shapes, in your brand. Host-authored .vendo/ files (theme.json, brief.md, design-rules.md) are carried over and win over anything try derives itself. The page stages the agent over a brand-tinted skeleton of your product — one of five app archetypes (dashboard, finance, commerce, content, docs) picked deterministically from your extracted tool domains — with the overlay already open: a product-named greeting, a capability line, and your use-case chips inside the panel. The first paint never waits on AI. After the server is up, the AI pass deepens the profile in the background through the same engine ladder vendo init uses: product brief, risk polish, use-case chips, and synthetic fixtures, streamed into the surface as each stage lands.

Zero commitment

Nothing is written to your repo, byte for byte. Every artifact lands in a temp profile, and Ctrl+C sweeps it. No key is required, no account, no sign-up.

With a key and without

Chat is live when a model credential resolves at startup: a provider env key (ANTHROPIC_API_KEY, OPENAI_API_KEY, or GOOGLE_GENERATIVE_AI_API_KEY) or VENDO_API_KEY through the Vendo Cloud model gateway, the same dev-mode credential ladder the runtime uses. An Anthropic or Vendo Cloud key works alone (Vendo ships @ai-sdk/anthropic); a non-Anthropic key needs its matching @ai-sdk/* provider installed in your app. With zero keys the surfaces still serve against scripted data, so there is always something to click.

Refine in the surface

With a model resolved, in a repo where extraction found tools, the surface takes corrections in conversation: “call these workspaces, not projects”, “the accent is wrong”. Proposals arrive as reviewable diffs and apply to the temp profile only, never to your repo. To make corrections permanent, install with vendo init — from then on vendo sync owns .vendo/ curation, and your own edits to .vendo/overrides.json are respected forever.

Flags

  • --port <port>: listen on a fixed port (default: any free port).
  • --no-open: print the URL without opening the browser.
  • --engine <claude|codex|npx>: pin the deepening engine family instead of first-available. An unavailable pin skips deepening; it never falls back to a different provider.
  • --no-ai: skip background deepening; the demo stays on the deterministic profile.

The hosted venue

No repo handy? Paste your product’s domain at vendo.run/playground. Your brand is fetched, use-case chips and synthetic data are generated from what your product does, and chat runs live through Vendo Cloud. Share the result with ?d=<domain> links. The hosted venue works from a domain alone, so it stays shallower than the local command: npx vendo try reads your actual API and theme tokens.

Install for keeps

When you like what you see, the real install is one command:
Init writes the wiring try only simulated: the handler route, the component registry, the extracted .vendo/ contract, and the visible surface in your layout. Start at the quickstart.