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

# Templates

> Pre-built world configurations — tenet init --template dating

Templates encode domain expertise so agents don't start from a blank canvas. Each template provides funnel stages, reward functions, psychology frameworks, and anti-patterns specific to a domain.

## Using Templates

```bash theme={null}
# Scaffold a dating agent world
tenet init --template dating

# Default GTM template (existing behavior)
tenet init
```

## What a Template Contains

```
templates/dating/
├── FUNNEL.md          # matched → messaging → deep → meet
├── SIGNALS.md         # reply_rate, response_time, sentiment
├── REWARDS.md         # reply +1, meet +10, skip -0.5
├── PSYCHOLOGY.md      # push-pull, vulnerability, timing
├── ANTI_PATTERNS.md   # triple-text, interrogation, generic openers
├── MODES.md           # bold, playful, chill, intellectual
└── connectors/        # platform integration stubs
```

## Template Loader

```typescript theme={null}
import { loadTemplate } from '10et'

const config = loadTemplate('dating', projectRoot)
// Returns structured config from the markdown files:
// { funnel: [...stages], rewards: [...signals], antiPatterns: [...], modes: [...] }
```

## Creating Custom Templates

Create a `templates/your-domain/` directory with the standard files. The DomainEngine reads and parses the markdown into structured configuration.

### FUNNEL.md

Define your pipeline stages:

```markdown theme={null}
## Dating-Specific Stages
- **matched** — initial match on platform
- **opened** — first message sent
- **messaging** — active conversation
- **deep** — meaningful connection
- **meet_proposed** — date suggested
- **met** — in-person meeting
```

### REWARDS.md

Define your reward function:

```markdown theme={null}
## Signal Rewards
- reply: +1
- fast_reply: +0.5 (within 1 hour)
- meet_proposed: +3
- meet_confirmed: +10
- user_sent_as_is: +0.5
- user_edited: -0.1
- user_skipped: -0.5
```
