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

> ## Agent Instructions
> Flowy is a node-based AI creative platform: you generate images, video, audio, 3D and vector on an infinite Canvas, refine on the Studio timeline, and export or publish from the same project.
> Prefer the Flowy MCP server (https://mcp.tryflowy.ai/mcp) or the REST API at https://apis.tryflowy.ai/v1 for programmatic work. Install with `flowy mcp install` from the @flowy/cli package.
> Credits are workspace-scoped. Generations reserve credits on start and only deduct on success, so failed runs refund automatically.

# Publishing a Flow

> Mark inputs and outputs on a canvas project, then publish it as a runnable flow.

Publishing happens from inside the canvas editor, in the **App Builder**: a docked sidebar that walks you through three steps: **Select**, **Edit nodes**, and **Publish**.

## 1. Select

Click nodes directly on the canvas to add them to the builder, then set each one's role in the sidebar:

* **Input**: the visitor fills this in when they run the flow.
* **Output**: shown as one of the flow's results.

Two rules keep a flow well-formed:

* Every input has to belong to **one connected flow** of nodes, and inputs can't feed each other. An input is seeded with a value, never regenerated from another input.
* An output has to sit **downstream** of at least one input. A node nothing feeds can't be a result.

A marked node that no longer satisfies these (because you changed something upstream) stays visible and clickable so you can unmark it, rather than disappearing silently.

## 2. Edit nodes

The canvas returns to normal node interaction: click a node to open its settings inspector alongside the builder panel, and attach or detach nodes with the usual drag-to-connect or cut tool. This is where you adjust the underlying prompts and parameters before locking them into the published flow.

## 3. Publish

Fill in the publish form:

* **Title**: up to 60 characters. It's also kebab-cased into the public API key visitors use to fill this flow's inputs (shown live as you type).
* **Description**: up to 200 characters.
* **Category**: pick from Flowy's curated categories (Essentials, Marketing & Ads, Video & Animation, and others), used for filtering in the flow gallery.
* **Thumbnail**: upload an image, and choose whether it's fit or filled inside its frame.
* **Listing**: **Workspace** (anyone in your workspace can find it in the Library) or **Private** (only you can find it; you can still share the direct link).
* **Submit to the Community Library**: a separate toggle from the listing tier, for making the flow discoverable to everyone in the Community tab.

Publish mints the flow's public slug and opens a confirmation with the shareable link. Copy it or open the flow directly.

## Inputs with more than one value

If an input node accepts multiple values, you can publish it as a **variadic** field with a minimum and maximum count. The public form and API then accept between that min and max values for that one input.

## Updating a published flow

If you opted in to letting the flow stay editable, reopen the App Builder on that project to change the title, description, category, thumbnail, listing, or the marked nodes themselves. Publishing again keeps the same slug and public link: visitors and any code already calling the API keep working against the same address.
