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

# Create a template

> Turn agents that already work into a listing other people install in one click.

<Note>
  Publishing templates is open to accounts in the [Expert Program](/templates/expert-program). Experts get a free sandbox with no agent limit, which is where templates are built.
</Note>

The rule that shapes the whole workflow: a template is captured from agents that already run. You do not describe an agent, you archive one.

## The workflow

<Steps>
  <Step title="Build the agent in your sandbox">
    Make it actually work: the prompt, the skills, the schedule, the connectors. Run it on real data until it is good.
  </Step>

  <Step title="Create a draft">
    Board toolbar, **My templates**, then **New**. The title becomes the public URL and cannot be changed afterwards, so treat it as the product name.
  </Step>

  <Step title="Write the page">
    Tagline, description, category, gallery, FAQ and search snippet. This is the page someone reads before installing.
  </Step>

  <Step title="Capture the agents">
    The capture wizard archives them into the template. Review what it will ship before you confirm.
  </Step>

  <Step title="Answer the setup question">
    Does this agent need to be configured after install? A template cannot be submitted until you have answered.
  </Step>

  <Step title="Submit">
    The Rerun team reviews it and publishes it.
  </Step>
</Steps>

## What the capture ships

Captured by default:

* the agent prompt
* its skills and their reference files
* its scheduled tasks and webhook triggers
* the connectors it declares, as declarations only
* its workspace files

Left behind by default:

* its memories
* its credential folders and `.env` values
* its private database
* the sign-ins behind its MCP servers

The wizard shows you every excluded path and lets you keep one on purpose. Do not keep a memory folder unless there is a reason: the archive ends up behind a public install button.

Read the warnings that come back. They name literal credentials the engine had to strip out of the files, which usually means something was hardcoded that should not have been.

## The install script

Every template answers one question: **does this agent need to be configured after install?**

If it does, you write the install instructions. They are addressed to the agent, not to the user: the agent reads them and walks its new owner through the setup in the chat.

A good install script tells the agent to:

1. introduce itself in one line
2. check which connectors it already has
3. suggest the ones that are missing, rather than asking for keys in the chat
4. ask for the values only the owner can give
5. write down what it learned
6. run one small test on real data
7. declare the install complete

Edit it in the agent **Install** tab. Rerun starts you from a default script that does all of this.

## Writing the page

| Field             | What works                                                                          |
| ----------------- | ----------------------------------------------------------------------------------- |
| **Title**         | The product name. It becomes the URL                                                |
| **Tagline**       | One line, the card subtitle. What it does, for whom                                 |
| **Description**   | Markdown, and it is the page. What it automates, what it needs, what it does not do |
| **Category**      | The audience it is for, not the team that built it                                  |
| **Setup minutes** | Honest. It sets the expectation for the install                                     |
| **Gallery**       | Cover first. It is the image on every card and in every social preview              |
| **FAQ**           | Four to six questions, written the way someone types them into a search box         |

## Submission

Submitting freezes the template: still private, no longer editable. It checks for a title, a tagline, a description, at least one image, at least one captured agent, and for a paid template a Stripe account that can receive payouts. It tells you what is missing rather than half-submitting.

**Withdraw** takes it back to a draft while it is in review. Once published, the page is maintained by Rerun.

## Doing it from your editor

The whole workflow is available over the [API](/api/tools/templates), from `create_template` to `submit_template`, including the capture dry run. It is the fastest way to iterate on the copy without leaving your editor.
