# Design your own Goose rhythm

A **rhythm** is a recurring GTM meeting Goose preps for you — a pipeline review, a 1:1, an MBR —
with the right board waiting when everyone walks in. This guide gives you the schema, the rules,
and a prompt to author one with Claude. When you have the JSON, come back to Goose →
**Rhythm → Import a rhythm**.

---

## The file Goose expects

A single JSON object:

```json
{
  "_goose": "rhythm",
  "version": 1,
  "name": "Deal Desk",
  "type": "group",
  "cadence": "Weekly · Wed 15:00",
  "board": "deal-desk",
  "prefill": "at-risk deals, discount requests",
  "participants": ["u_priya", "u_sam", "u_marcus"]
}
```

### Fields

| Field | Required | What it is |
|---|---|---|
| `_goose` | yes | Must be the literal string `"rhythm"`. |
| `version` | yes | Always `1`. |
| `name` | yes | Short name of the meeting. 3–40 characters. |
| `type` | yes | One of `group` · `one_to_one` · `leadership`. |
| `cadence` | yes | When it runs. Format: `"Weekly · Mon 9:00"` or `"Monthly · 1st Tue"` or `"Quarterly"`. |
| `board` | no | The Goose board that preps it. See the list below, or leave `null`. |
| `prefill` | no | Comma-separated cues Goose gathers before the meeting (e.g. "scorecard, at-risk deals"). |
| `participants` | no | Array of user ids who attend. Northwind's are `u_priya`, `u_sam`, `u_marcus`, `u_jordan`, `u_alex`. |

### Valid `type` values
- `group` — one meeting, several people (pipeline review, forecast call, MBR).
- `one_to_one` — fans out per rep (1:1s); Goose creates one instance per participant.
- `leadership` — includes guests like a CRO or the board.

### Boards you can attach (`board`)
`pipeline-review` · `forecast-call` · `one-on-one` · `waterfall` · `mbr` · `qbr` ·
`marketing-review` · `deal-desk` · or any board key you see in Analytics → Boards. Leave `null`
if you don't want a prepped board.

---

## Prompt to paste into Claude

> I'm designing a **rhythm** for Goose, a GTM operating system. A rhythm is a recurring meeting
> Goose preps automatically, with a board ready when people arrive.
>
> Design ONE rhythm for this cadence: **[describe it — e.g. "a weekly cross-functional pipeline
> review with sales and marketing" or "a monthly customer-health review with the CS lead"]**.
>
> Output ONLY a valid JSON object, no prose, matching exactly this schema:
> `{"_goose":"rhythm","version":1,"name":"...","type":"group|one_to_one|leadership","cadence":"...","board":"...|null","prefill":"...","participants":["u_..."]}`
>
> Rules:
> - `type` is one of group / one_to_one / leadership.
> - `cadence` looks like "Weekly · Wed 15:00" or "Monthly · 1st Tue" or "Quarterly".
> - `board` is one of pipeline-review / forecast-call / one-on-one / waterfall / mbr / qbr /
>   marketing-review / deal-desk, or null.
> - `participants` are user ids from: u_priya, u_sam, u_marcus, u_jordan, u_alex.
> - Return the JSON only.

---

## Bring it back

1. Save Claude's JSON as `my-rhythm.json`.
2. In Goose: **Rhythm → Import a rhythm** → drop the file (or paste the JSON).
3. It joins your rhythm library, on its cadence, prepped from the board you named. It survives reload.

Cadences are yours to set; Goose never schedules anything on your calendar without you.
