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

# Agent types

> Overview of the three agent execution architectures supported by Guild: TypeScript, Guild LLM, and Goose.

Guild supports three agent execution architectures. Your choice determines the programming model, the files scaffolded at initialization, and how the agent transitions to `READY`.

## TypeScript agents

TypeScript agents use the `@guildai/agents-sdk` to define behavior in code. After you save a version, the agent goes through a build and validation step before it transitions to `READY`.

When you initialize a TypeScript agent, the scaffold includes:

```text theme={null}
my-agent/
├── agent.ts          # Agent code
├── package.json      # Dependencies (runtime packages pre-configured)
├── tsconfig.json     # TypeScript config
├── guild.json        # Local config (managed by CLI)
└── .gitignore
```

Choose a starting template:

| Template             | Use when                                                     |
| -------------------- | ------------------------------------------------------------ |
| `LLM`                | The LLM drives the logic. You write a prompt and pick tools. |
| `AUTO_MANAGED_STATE` | You write procedural TypeScript that calls tools inline.     |
| `BLANK`              | You want full control over the agent lifecycle.              |

See the [Agent SDK](/guide/sdk-introduction) for how to write TypeScript agent code.

## Guild LLM agents

Guild LLM agents define behavior in Markdown files instead of TypeScript code. When you initialize a Guild LLM agent, the scaffold includes:

```text theme={null}
my-agent/
├── PROMPT.md         # Agent role, behavior, and instructions
├── DESCRIPTION.md    # Brief description of the agent
├── README.md
└── .gitignore
```

* **`PROMPT.md`** — defines the agent's role, behavior, and instructions.
* **`DESCRIPTION.md`** — provides a brief description of what the agent does.

Guild LLM agents skip the build validation step. After initialization, the agent immediately transitions to `READY`.

## Goose agents

Goose agents define behavior using a YAML recipe file. When you initialize a Goose agent, the scaffold includes:

```text theme={null}
my-agent/
├── recipe.yaml       # Agent parameters, instructions, and response JSON schema
├── README.md
└── .gitignore
```

* **`recipe.yaml`** — defines the agent's parameters, instructions, and response JSON schema.

Goose agents skip the build validation step. After initialization, the agent immediately transitions to `READY`.
