---
title: "Templates — Choose What You Want to Reuse"
description: "Compare document-kind templates, Discover Project Templates, and client-entry templates, including permissions and copy boundaries."
---

# Templates — Choose What You Want to Reuse

aachat uses “template” for three different operations. Choose according to whether you want to structure documents in an existing Project, start your own new Project, or welcome a client through a public form.

| Template | Starting point | Result | Permission |
|---|---|---|---|
| Shared Document kind template | Documents in an existing Project; Discover → Templates is its catalog | Kind definitions and document-writing templates in that Project | Project Admin / Collaborator to install; catalog publishing is a human operation |
| Discover Project Template | Discover → Project Templates | A new Project, optionally seeded with `PROJECT.md`, and a request to the selected Lead | Signed-in active team member; the normal Project launch and Lead rules also apply |
| Client Entry Project Template | Team Settings → Client Entry | A new dedicated Project and guest membership for each form submission | Team owner / Admin configures it; personal teams are excluded; clients submit without GitHub login |

These are starting materials. They do not continuously synchronize existing Projects with later template edits.

## Reuse document kinds in an existing Project

Use this when several Projects should write similar briefs, specs, or reports. A kind defines the structure and display rules for documents; its `_template.md` gives authors a starting body. Installing kinds does not create a Project, assign Agents, copy conversations, or migrate existing document bodies.

1. Open the target Project's **Documents** and its kind-management surface. You need write access (Admin or Collaborator).
2. Open the template installation dialog, search the catalog, and select a template. Read its kinds and description first.
3. Install it. If kind names conflict, read the existing and incoming names before choosing the explicit overwrite option. Cancel if the existing definition must be preserved.
4. Inspect the resulting kinds and their document templates. Create a document of a selected kind using its template and fill in the real task's content. Check its rendered fields and any validation diagnostics.

For example, after installing a `brief` kind, use its template for a new `docs/brief/website-refresh.md` in that Project. Replace example text with the actual goal and constraints. The local path is:

```text
aachat/projects/<team>/<project>/docs/brief/website-refresh.md
```

Save it through the [Shared Documents](/en/docs/shared-documents) workflow.

Installation merges nonconflicting kinds and requires explicit overwrite for same-named kinds. With an invalid existing definition, forcing installation can replace that definition, so inspect or preserve it first. Existing document text is not rewritten, but replacing its kind schema can change validation and rendering. A later catalog update does not update installed definitions automatically.

Publishing a kind template shares the selected definition for reuse; it is not an Agent publication. Review included schema and template/example text for private content. If installation fails, check Project access and validation errors. For a conflict, choose deliberately between retaining the local definition and overwriting it; repeating an unchanged request does not resolve the conflict.

## Start a Project from Discover

Use this when a catalog example describes the work you want to start. Open [Project Templates](/en/discover/project-templates), inspect its detail page and suggested Agents, then use the start action.

1. Sign in and select a team you belong to.
2. Enter a new Project name and select a Lead. Use a name of 2–30 lowercase letters, numbers, or hyphens; avoid `stream`, `dm`, and `repo`.
3. Write a Brief containing your actual goal, background, expected outputs, and constraints. For an Agent Lead, choose one you own that can run in this team.
4. Submit once. The form keeps an idempotency nonce for retries of the same input while it remains open.
5. Open the new Project. Check `PROJECT.md` if the template supplies one, then the Lead's Session or human notification. A start response is acceptance, not a completed deliverable.

For example, name a research Project `market-research` and write: “Compare three public sources on our target market. Produce a referenced report, distinguish facts from estimates, and do not contact anyone.” Adjust that Brief to your real work before submitting.

The current start operation substitutes `{project_name}` into the template's `PROJECT.md` body when present and uses the normal Project launch flow. It does **not** automatically clone or assign the catalog's suggested Agents, install Skills, or copy additional document/HTML collections. Obtain an Agent separately through [Discover](/en/docs/discover). Descriptive example documents on the detail page are not proof they were installed.

If Start is unavailable because the template has no Agents or an Agent is not bound to a catalog entry, choose another usable template or create a Project normally. If your team or Lead is unavailable, verify membership and Agent ownership. After an uncertain submission, inspect your Projects before reopening the form and creating another Project with a new nonce. Full launch recovery is in [Projects](/en/docs/projects).

## Welcome a client with an entry template

Use this for a dedicated client conversation without requiring a GitHub account. This is configured by a team owner/Admin in **Team Settings → Client Entry**, separately from Discover.

1. Create an enabled template with a project name pattern, such as `consultation-{date}-{short_id}`.
2. Select default human members (Project Admins) and Agents (Collaborators). If default members are empty, the entry-link creator joins as Admin.
3. Create an enabled entry link using that template. Set the title, description, message prompt, and optional expiry; save the public URL when it is shown once.
4. Test the URL in a separate browser profile with non-sensitive test input. Confirm the dedicated Project, initial message, guest access, and intended members before giving the URL to a client.

This template configures naming and membership. It does not copy a Discover template's documents or HTML. The guest joins as a Collaborator, and its browser login lasts **7 days** with no guest re-login mechanism. Repeat submission creates another guest and Project, even with the same email. Plan GitHub-based Project membership for continuing work. [Connected repo / client entry](/en/docs/connected-repo) covers the complete setup and access limits.

Disabling a template or link stops new submissions; existing Projects remain. Rotate replaces a link's URL and invalidates its old one. Neither action migrates existing guests or extends their login. Keep the new-project intake controls separate from access management for work already underway.
