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

# Create playbook

> Create a playbook — a reusable set of review checks.

<Info>
  **Tool** `create_playbook` · **Behavior** Additive
</Info>

Create a playbook — a reusable set of review checks. You own it and it is private to you. Pass `checks` to author them inline, or add them later with `update_playbook`. Returns the playbook and its checks.

## Input parameters

<ParamField body="title" type="string" required>
  Playbook title (required, non-empty).
</ParamField>

<ParamField body="description" type="string | null">
  Optional human-facing description.
</ParamField>

<ParamField body="guide" type="string | null">
  Optional free-text guidance applied across the whole playbook.
</ParamField>

<ParamField body="checks" type="object[]">
  Optional checks to create with the playbook (max 100). Each runs as one review criterion. You can also add checks later with `update_playbook`.

  <Expandable title="properties">
    <ParamField body="title" type="string" required>
      Check title (required).
    </ParamField>

    <ParamField body="description" type="string | null">
      Optional internal description.
    </ParamField>

    <ParamField body="importance" type="'low' | 'medium' | 'high' | null">
      Optional priority within the playbook.
    </ParamField>

    <ParamField body="positions" type="object[]" required>
      The check's positions: exactly one `standard` plus any `fallback`s.

      <Expandable title="properties">
        <ParamField body="type" type="'standard' | 'fallback'" required>
          `standard` for the primary stance, `fallback` for an alternative.
        </ParamField>

        <ParamField body="guidance" type="string" required>
          What to require, accept, or flag for this position.
        </ParamField>
      </Expandable>
    </ParamField>
  </Expandable>
</ParamField>

## Response

<ResponseField name="playbook" type="object">
  <Expandable title="properties">
    <ResponseField name="id" type="string (uuid)" />

    <ResponseField name="title" type="string" />

    <ResponseField name="description" type="string | null" />

    <ResponseField name="guide" type="string | null" />

    <ResponseField name="is_official" type="boolean" />

    <ResponseField name="status" type="'draft' | 'processing' | 'completed' | 'failed'" />

    <ResponseField name="created_at" type="string | null" />

    <ResponseField name="updated_at" type="string | null" />
  </Expandable>
</ResponseField>

<ResponseField name="checks" type="object[]">
  <Expandable title="properties">
    <ResponseField name="id" type="string (uuid)" />

    <ResponseField name="title" type="string" />

    <ResponseField name="description" type="string | null" />

    <ResponseField name="importance" type="'low' | 'medium' | 'high' | null" />

    <ResponseField name="positions" type="object[]">
      <Expandable title="properties">
        <ResponseField name="type" type="'standard' | 'fallback'" />

        <ResponseField name="guidance" type="string | null" />
      </Expandable>
    </ResponseField>

    <ResponseField name="created_at" type="string | null" />

    <ResponseField name="updated_at" type="string | null" />
  </Expandable>
</ResponseField>
