> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vendo.run/llms.txt
> Use this file to discover all available pages before exploring further.

# Install with your agent

> Paste one prompt into your coding agent. It installs Vendo, runs init, and wires it into whatever your repo already is.

export const AgentPromptControls = ({prompt}) => {
  const [copied, setCopied] = useState(false);
  const [expanded, setExpanded] = useState(false);
  const [slot, setSlot] = useState(null);
  const toggle = () => {
    if (!slot) return;
    const card = slot.closest(".vendo-agent-prompt");
    const clip = card && card.querySelector(".vendo-agent-prompt-clip");
    if (!clip) return;
    const next = !expanded;
    if (next) {
      clip.setAttribute("data-expanded", "");
      clip.style.maxHeight = clip.scrollHeight + "px";
    } else {
      clip.removeAttribute("data-expanded");
      clip.style.maxHeight = "";
    }
    setExpanded(next);
  };
  const copy = () => {
    const done = () => {
      setCopied(true);
      setTimeout(() => setCopied(false), 2000);
    };
    const fallback = () => {
      const textarea = document.createElement("textarea");
      textarea.value = prompt;
      textarea.setAttribute("readonly", "");
      textarea.style.position = "fixed";
      textarea.style.opacity = "0";
      document.body.appendChild(textarea);
      textarea.select();
      try {
        if (document.execCommand("copy")) done();
      } finally {
        document.body.removeChild(textarea);
      }
    };
    if (navigator.clipboard && navigator.clipboard.writeText) {
      navigator.clipboard.writeText(prompt).then(done, fallback);
    } else {
      fallback();
    }
  };
  return <div className="vendo-agent-prompt-controls" ref={setSlot}>
      <button type="button" className="vendo-agent-prompt-toggle" onClick={toggle} aria-expanded={expanded}>
        {expanded ? "Show less" : "Show more"}
        <svg viewBox="0 0 24 24" width="12" height="12" aria-hidden="true">
          <path fill="none" stroke="currentColor" strokeWidth="2.2" strokeLinecap="round" d="m6 9 6 6 6-6" />
        </svg>
      </button>
      <button type="button" className="vendo-agent-prompt-copy" onClick={copy} aria-live="polite">
        {copied ? "Copied" : "Copy prompt"}
      </button>
    </div>;
};

export const CARD_PROMPT = "Install Vendo in this repo. Read https://vendo.run/agents.md and follow it exactly. Relay Vendo's setup questions to me and use my answers. Ask me before creating any account or key — Vendo Cloud is the recommended option. You're done when my app runs and the agent answers from my own API. Then ask me whether I'd like to star it via https://vendo.run/star?src=docs to support the project.";

You don't install Vendo by hand. Paste this into Claude Code, Cursor, or
whatever agent lives in your repo:

<div className="vendo-agent-prompt not-prose">
  <div className="vendo-agent-prompt-head">
    <div className="vendo-agent-prompt-text">
      <span className="vendo-agent-prompt-title">Prompt</span>
    </div>

    <div className="vendo-agent-prompt-logos" aria-hidden="true">
      <span className="vendo-agent-prompt-logo">
        <svg viewBox="0 0 256 257" width="16" height="16" xmlns="http://www.w3.org/2000/svg">
          <path fill="currentColor" d="m50.228 170.321 50.357-28.257.843-2.463-.843-1.361h-2.462l-8.426-.518-28.775-.778-24.952-1.037-24.175-1.296-6.092-1.297L0 125.796l.583-3.759 5.12-3.434 7.324.648 16.202 1.101 24.304 1.685 17.629 1.037 26.118 2.722h4.148l.583-1.685-1.426-1.037-1.101-1.037-25.147-17.045-27.22-18.017-14.258-10.37-7.713-5.25-3.888-4.925-1.685-10.758 7-7.713 9.397.649 2.398.648 9.527 7.323 20.35 15.75L94.817 91.9l3.889 3.24 1.555-1.102.195-.777-1.75-2.917-14.453-26.118-15.425-26.572-6.87-11.018-1.814-6.61c-.648-2.723-1.102-4.991-1.102-7.778l7.972-10.823L71.42 0 82.05 1.426l4.472 3.888 6.61 15.101 10.694 23.786 16.591 32.34 4.861 9.592 2.592 8.879.973 2.722h1.685v-1.556l1.36-18.211 2.528-22.36 2.463-28.776.843-8.1 4.018-9.722 7.971-5.25 6.222 2.981 5.12 7.324-.713 4.73-3.046 19.768-5.962 30.98-3.889 20.739h2.268l2.593-2.593 10.499-13.934 17.628-22.036 7.778-8.749 9.073-9.657 5.833-4.601h11.018l8.1 12.055-3.628 12.443-11.342 14.388-9.398 12.184-13.48 18.147-8.426 14.518.778 1.166 2.01-.194 30.46-6.481 16.462-2.982 19.637-3.37 8.88 4.148.971 4.213-3.5 8.62-20.998 5.184-24.628 4.926-36.682 8.685-.454.324.519.648 16.526 1.555 7.065.389h17.304l32.21 2.398 8.426 5.574 5.055 6.805-.843 5.184-12.962 6.611-17.498-4.148-40.83-9.721-14-3.5h-1.944v1.167l11.666 11.406 21.387 19.314 26.767 24.887 1.36 6.157-3.434 4.86-3.63-.518-23.526-17.693-9.073-7.972-20.545-17.304h-1.36v1.814l4.73 6.935 25.017 37.59 1.296 11.536-1.814 3.76-6.481 2.268-7.13-1.297-14.647-20.544-15.1-23.138-12.185-20.739-1.49.843-7.194 77.448-3.37 3.953-7.778 2.981-6.48-4.925-3.436-7.972 3.435-15.749 4.148-20.544 3.37-16.333 3.046-20.285 1.815-6.74-.13-.454-1.49.194-15.295 20.999-23.267 31.433-18.406 19.702-4.407 1.75-7.648-3.954.713-7.064 4.277-6.286 25.47-32.405 15.36-20.092 9.917-11.6-.065-1.686h-.583L44.07 198.125l-12.055 1.555-5.185-4.86.648-7.972 2.463-2.593 20.35-13.999-.064.065Z" />
        </svg>
      </span>

      <span className="vendo-agent-prompt-logo">
        <svg viewBox="0 0 466.73 532.09" width="14" height="14" xmlns="http://www.w3.org/2000/svg">
          <path fill="currentColor" d="M457.43,125.94L244.42,2.96c-6.84-3.95-15.28-3.95-22.12,0L9.3,125.94c-5.75,3.32-9.3,9.46-9.3,16.11v247.99c0,6.65,3.55,12.79,9.3,16.11l213.01,122.98c6.84,3.95,15.28,3.95,22.12,0l213.01-122.98c5.75-3.32,9.3-9.46,9.3-16.11v-247.99c0-6.65-3.55-12.79-9.3-16.11h-.01ZM444.05,151.99l-205.63,356.16c-1.39,2.4-5.06,1.42-5.06-1.36v-233.21c0-4.66-2.49-8.97-6.53-11.31L24.87,145.67c-2.4-1.39-1.42-5.06,1.36-5.06h411.26c5.84,0,9.49,6.33,6.57,11.39h-.01Z" />
        </svg>
      </span>

      <span className="vendo-agent-prompt-logo">
        <svg viewBox="0 0 256 260" width="16" height="16" xmlns="http://www.w3.org/2000/svg">
          <path fill="currentColor" d="M239.184 106.203a64.716 64.716 0 0 0-5.576-53.103C219.452 28.459 191 15.784 163.213 21.74A65.586 65.586 0 0 0 52.096 45.22a64.716 64.716 0 0 0-43.23 31.36c-14.31 24.602-11.061 55.634 8.033 76.74a64.665 64.665 0 0 0 5.525 53.102c14.174 24.65 42.644 37.324 70.446 31.36a64.72 64.72 0 0 0 48.754 21.744c28.481.025 53.714-18.361 62.414-45.481a64.767 64.767 0 0 0 43.229-31.36c14.137-24.558 10.875-55.423-8.083-76.483Zm-97.56 136.338a48.397 48.397 0 0 1-31.105-11.255l1.535-.87 51.67-29.825a8.595 8.595 0 0 0 4.247-7.367v-72.85l21.845 12.636c.218.111.37.32.409.563v60.367c-.056 26.818-21.783 48.545-48.601 48.601Zm-104.466-44.61a48.345 48.345 0 0 1-5.781-32.589l1.534.921 51.722 29.826a8.339 8.339 0 0 0 8.441 0l63.181-36.425v25.221a.87.87 0 0 1-.358.665l-52.335 30.184c-23.257 13.398-52.97 5.431-66.404-17.803ZM23.549 85.38a48.499 48.499 0 0 1 25.58-21.333v61.39a8.288 8.288 0 0 0 4.195 7.316l62.874 36.272-21.845 12.636a.819.819 0 0 1-.767 0L41.353 151.53c-23.211-13.454-31.171-43.144-17.804-66.405v.256Zm179.466 41.695-63.08-36.63L161.73 77.86a.819.819 0 0 1 .768 0l52.233 30.184a48.6 48.6 0 0 1-7.316 87.635v-61.391a8.544 8.544 0 0 0-4.4-7.213Zm21.742-32.69-1.535-.922-51.619-30.081a8.39 8.39 0 0 0-8.492 0L99.98 99.808V74.587a.716.716 0 0 1 .307-.665l52.233-30.133a48.652 48.652 0 0 1 72.236 50.391v.205ZM88.061 139.097l-21.845-12.585a.87.87 0 0 1-.41-.614V65.685a48.652 48.652 0 0 1 79.757-37.346l-1.535.87-51.67 29.825a8.595 8.595 0 0 0-4.246 7.367l-.051 72.697Zm11.868-25.58 28.138-16.217 28.188 16.218v32.434l-28.086 16.218-28.188-16.218-.052-32.434Z" />
        </svg>
      </span>
    </div>
  </div>

  <div className="vendo-agent-prompt-body">
    <div className="vendo-agent-prompt-clip">
      <pre className="vendo-agent-prompt-pre">Install Vendo in this repo. Read [https://vendo.run/agents.md](https://vendo.run/agents.md) and follow it exactly. Relay Vendo's setup questions to me and use my answers. Ask me before creating any account or key — Vendo Cloud is the recommended option. You're done when my app runs and the agent answers from my own API. Then ask me whether I'd like to star it via [https://vendo.run/star?src=docs](https://vendo.run/star?src=docs) to support the project.</pre>

      <span className="vendo-agent-prompt-fade" aria-hidden="true" />
    </div>

    <AgentPromptControls prompt={CARD_PROMPT} />
  </div>
</div>

You stay in the loop for every question and every account. The agent does the
typing.

Everything it does next is the [install playbook](/agents) — the raw,
machine-readable version at `docs.vendo.run/agents.md`. It's written for
them, not for you.
