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

# Quickstart

> Install the GitHub App, start the trial, open a pull request, and read your first review.

You need admin rights on a GitHub.com account or organization to install a GitHub App there. Everything else takes a few minutes.

<Steps>
  <Step title="Install the GitHub App">
    Open [github.com/apps/codewardenapp/installations/new](https://github.com/apps/codewardenapp/installations/new), pick the account or organization, and choose **All repositories** or only the ones you select.

    CodeWarden asks GitHub for three permissions: **Contents: read**, **Pull requests: read and write** (to post reviews and reply in its own threads), and **Metadata: read**.

    The person who installs the App becomes the first [owner](/console/organizations-and-roles) of that organization in the console.
  </Step>

  <Step title="Create a console account and connect GitHub">
    Go to [app.codewarden.co](https://app.codewarden.co), sign up with your email, and open the link CodeWarden emails you.

    Then open **Settings** and click **Connect GitHub**. The console asks GitHub which installations of the App your account can see, and lists those. Use the same GitHub account that installed the App, so the console recognizes you as the owner.
  </Step>

  <Step title="Start the trial">
    Open your organization's page and, under **Plan**, choose **Starter** or **Pro**. The checkout opens at Polar, our payment provider. The trial lasts 14 days and includes 50 AI turns; a card is required, and nothing is charged until the trial ends. See [Trial](/account/trial).

    <Note>
      Without a subscription, CodeWarden does not review the organization's pull requests. The console shows each skipped review with the status `unsubscribed`; nothing is posted on the pull request.
    </Note>
  </Step>

  <Step title="Open a pull request">
    Open a pull request on one of the repositories you selected, or mark a draft as ready for review. CodeWarden reviews when a pull request is opened, reopened, marked ready for review, or pushed to. Drafts are not reviewed unless `.codewarden.yml` sets `skip.drafts: false`.

    A review usually arrives within a minute. A large pull request can take a few minutes.
  </Step>

  <Step title="Read the review">
    The review starts with **Automated review** and a short summary of the change, followed by inline comments on the lines the pull request added. Each comment shows a category, a severity, the finding, and a folded **Prompt for LLM** block you can paste into a coding assistant.

    The last line of the summary says how many comments were published and how many were filtered out. The filtered ones are listed in the console, with the reason each was dropped.
  </Step>

  <Step title="Reply if you disagree">
    Reply in the comment's thread and mention `@codewardenapp`. CodeWarden answers in the same thread. If you give a reason that holds, it concedes and does not raise that finding again on this pull request. See [Talking to CodeWarden](/bot/mentions).
  </Step>
</Steps>

## A sample comment

This is what an inline comment looks like on a pull request:

> **CodeWarden review** · **Bug** · **severity: high**
>
> `charge/2` runs inside a job that Oban retries on failure. If the HTTP call to the payment provider succeeds and the `Repo.update` after it fails, the retry charges the customer a second time. Record the charge before calling the provider, or pass an idempotency key.
>
> ▸ Prompt for LLM
>
> <sub>Talk to CodeWarden by mentioning @codewardenapp in a reply. Was this suggestion helpful? React with 👍 or 👎 to help improve CodeWarden.</sub>

## Next steps

<CardGroup cols={2}>
  <Card title="Add .codewarden.yml" icon="file-code" href="/configure/codewarden-yml">
    Tell the reviewer your repository's own rules.
  </Card>

  <Card title="How a review works" icon="gears" href="/how-a-review-works">
    What is read, what is skipped, and what gets posted.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.