> ## 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.

# FAQ

> Short, honest answers about platforms, languages, cost and what CodeWarden will not do.

<AccordionGroup>
  <Accordion title="Which platforms does it support?">
    GitHub.com only. GitHub Enterprise Server, GitLab and Bitbucket are not supported, and neither are SSO or an audit log.
  </Accordion>

  <Accordion title="Which languages does it review?">
    It reviews any text source file that is not on the [skip list](/how-a-review-works#which-files-are-read). It is tested and measured on Elixir, Ruby and Rails, TypeScript and React, Python, and Go: known defects are planted in code in those languages and we check how many CodeWarden finds. Other languages are reviewed by the same model, without that measurement behind them.

    The comments themselves can be written in any language you set with [`language`](/configure/codewarden-yml#language).
  </Accordion>

  <Accordion title="Does it clone or run my code?">
    No. It reads the diff, the changed files and a few related files through the GitHub API. Nothing is cloned, and nothing from your repository is ever executed: no build, no tests, no linters.
  </Accordion>

  <Accordion title="Does it build an AST or a dependency graph of my repository?">
    No. A dependency graph needs the whole repository, which means a clone. Instead, CodeWarden finds the files that use the code a pull request changed with GitHub's code search, inside your repository, and shows up to three of them to the model, read from the base branch. Rules that no graph could find belong in [`.codewarden.yml`](/configure/codewarden-yml#instructions).
  </Accordion>

  <Accordion title="Can it approve or block a pull request?">
    No. Every review is posted as a comment review. It never approves and never requests changes, so it cannot block a merge.
  </Accordion>

  <Accordion title="Why did it post nothing on my push?">
    Usually because the push added nothing new to review, or the follow-up review found nothing: a later review with nothing to say posts nothing. Other reasons: the pull request is a draft (skipped by default, and not listed in the console), the repository is switched off, `.codewarden.yml` skips it, the allowance is used up, or there is no subscription. The repository's page in the console shows each review with its status.
  </Accordion>

  <Accordion title="Why did it comment on so little?">
    By design. A review publishes only findings with a confidence of at least 0.7, at most 8 comments by default, and never style remarks. The console lists every finding it dropped and why.
  </Accordion>

  <Accordion title="Can I use my own model or API key?">
    No. Which model reviews a pull request is CodeWarden's responsibility, and a model we have not measured would give a review we cannot vouch for.
  </Accordion>

  <Accordion title="Does a push with nothing new cost anything?">
    No. A push that touches nothing new calls no model and uses no AI turn.
  </Accordion>

  <Accordion title="Does it review drafts?">
    Not by default. A draft is reviewed when it is marked ready for review. To review drafts too, set `skip.drafts: false` in `.codewarden.yml` on the base branch.
  </Accordion>

  <Accordion title="Can I change its rules from the console?">
    No. Review rules live in `.codewarden.yml` in your repository, read from the base branch. The console decides which repositories are on, who can see them, and what is paid for.
  </Accordion>

  <Accordion title="Can someone outside my team make it spend AI turns?">
    No. Only people with write access to the repository, and the pull request's author, can get an answer to a mention. Anyone else is ignored at no cost.
  </Accordion>

  <Accordion title="Can a pull request switch the review off?">
    No. `.codewarden.yml` is read from the base branch, so editing it in a pull request does not affect that pull request's review. Text in the pull request that tells the reviewer to approve or stay quiet is treated as data, not as instructions.
  </Accordion>

  <Accordion title="Is my code used to train models?">
    The [privacy policy](https://codewarden.co/legal/privacy/) answers this in its section "Who else sees it": every request to OpenRouter asks it to use only providers with a zero-data-retention policy that do not store or train on what they receive.
  </Accordion>
</AccordionGroup>


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