# Improve code quality across your enterprise

Greptile gives large engineering teams a consistent way to validate code across complex repositories, tools, and workflows.

[get started](https://app.greptile.com/signup)

[contact sales](/contact)

no credit card required • 14-day free trial

## Over 9,000+ teams use Greptile

## The complete validation layer for your team

Greptile catches more bugs, because it both reads and runs your code to get the full picture.

### AI Code Reviewer

Review every new PR with full codebase context to catch real bugs before code is merged.

[Learn more](/agent.md)

### AI Runtime Validation

Runs your PR branch in a sandbox to catch runtime bugs and edge cases that code review alone can miss.

[Learn more](/trex.md)

## SECURITY

### Enterprise grade security

SOC 2, with built in security and governance controls

[Learn about security](/security.md)

#### Cloud or self hosted

Use Greptile in our cloud or deploy it in your own environment.

#### Control where your code lives

Keep code and review infrastructure aligned with your security and data residency requirements.

#### Security built for your scale

SOC 2 compliance and enterprise controls for secure deployment across teams.

## Code validation that adapts to every team

Greptile lets teams define review configurations from the org level down to the individual developer, so each team gets code review tailored to its own standards.

[Learn more](https://www.greptile.com/docs/introduction)

### Ways Greptile adapts to your team

#### .greptile/

Scope review settings, rules, and context to the directories each team owns.

#### auto indexing rules

Automatically index existing rule files like Claude.md, AGENTS.md, and Cursor Rules for richer review context.

#### Learning

Adapts to your team's feedback to personalize reviews over time.

#### Full codebase context

Complete context across your codebase, and adjacent repos.

> “We've tried more code review tools than I can count. *Greptile outperforms them all* by a mile. Honestly the only AI reviewer that doesn't annoy the s**t out of me.”

CTO @ Brex

James Reggio

[View Brex case study](/customers/brex.md)

## INDEPENDENCE

### Independent by design

Greptile stays independent from any model, IDE, or coding agent, so you aren't tied to one ecosystem.

[Learn why it matters](/independence.md)

### Ways Greptile plugs into your workflow

#### Tight agent integrations

Launch a Codex, Claude Codex, Cursor or Devin agent with one click that includes the Greptile comment, full context, and the suggested fix.

#### Greptile MCP

Access Greptile review comments, apply fixes, and manage coding patterns directly from your agent of choice.

#### Claude Code Plugin

View and resolve comments directly from Claude Code.

#### Model agnostic

Greptile uses the best set of models at any time, so your reviews are always SOTA.

## LIVE FROM OS REPOS

### See what Greptile can catch.

[See examples](/examples.md)

| 3B | 1M | 9,000+ | 500k |
| --- | --- | --- | --- |
| Lines of Code Reviewed / Month | PRs Reviewed / Month | Teams Use Greptile | Addressed Issues / Month |

- [PR #12659](https://github.com/cline/cline/pull/12659) · cline/cline · concurrency · Race condition causes tray actions to be silently dropped during startup
- [PR #29099](https://github.com/raycast/extensions/pull/29099) · raycast/extensions · concurrency · Race condition causes deleted history entries to reappear
- [PR #5294](https://github.com/assistant-ui/assistant-ui/pull/5294) · assistant-ui/assistant-ui · data_integrity · Missing file branch causes silent data loss in stream encoder
- [PR #74152](https://github.com/PostHog/posthog/pull/74152) · posthog/posthog · concurrency · Race condition between concurrent imports causes stale data exposure
- [PR #34938](https://github.com/BerriAI/litellm/pull/34938) · berriai/litellm · security · Authorization bypass via model alias rewriting after access checks
- [PR #3392](https://github.com/gptme/gptme/pull/3392) · gptme/gptme · security · Variable expansion in git command bypasses security gate
- [PR #29027](https://github.com/raycast/extensions/pull/29027) · raycast/extensions · security · Symlink traversal allows file scanner to escape user-selected folder scope
- [PR #74184](https://github.com/PostHog/posthog/pull/74184) · posthog/posthog · logic · HTML sign-in page incorrectly stored as valid attachment
- [PR #5288](https://github.com/assistant-ui/assistant-ui/pull/5288) · assistant-ui/assistant-ui · logic · Duplicate tool call chunks incorrectly close arguments prematurely
- [PR #74119](https://github.com/PostHog/posthog/pull/74119) · posthog/posthog · logic · Overly broad exception handling silently swallows SQL programming errors
- [PR #6752](https://github.com/isaac-sim/IsaacLab/pull/6752) · isaac-sim/isaaclab · runtime · Finalization guard bypass causes interpreter shutdown crash
- [PR #74095](https://github.com/PostHog/posthog/pull/74095) · posthog/posthog · security · Auth bypass allows unbilled inference requests without required scope
- [PR #5999](https://github.com/simstudioai/sim/pull/5999) · simstudioai/sim · security · Secret variables leaked in public workflow export API
- [PR #13486](https://github.com/onyx-dot-app/onyx/pull/13486) · onyx-dot-app/onyx · data_integrity · Checkpoint state mismatch causes files from wrong branch to be indexed
- [PR #5986](https://github.com/simstudioai/sim/pull/5986) · simstudioai/sim · resource_leak · Memory exhaustion from unbounded concurrent document rendering
- [PR #73946](https://github.com/PostHog/posthog/pull/73946) · posthog/posthog · data_integrity · Migration get_or_create loses highest access level on duplicates
- [PR #74036](https://github.com/PostHog/posthog/pull/74036) · posthog/posthog · concurrency · Race condition allows stale 204 response to clear active run
- [PR #12588](https://github.com/cline/cline/pull/12588) · cline/cline · security · Write-capable GitHub Action uses mutable tag instead of pinned SHA
- [PR #74032](https://github.com/PostHog/posthog/pull/74032) · posthog/posthog · concurrency · Race condition in JSON read-modify-write loses concurrent updates
- [PR #13473](https://github.com/onyx-dot-app/onyx/pull/13473) · onyx-dot-app/onyx · security · Cache invalidation race allows auth bypass across processes
- [PR #74025](https://github.com/PostHog/posthog/pull/74025) · posthog/posthog · logic · Empty freeze quorum causes partition deadlock in distributed coordination
- [PR #2633](https://github.com/synnaxlabs/synnax/pull/2633) · synnaxlabs/synnax · data_integrity · Missing default values causes symbols to render at zero scale
- [PR #2632](https://github.com/synnaxlabs/synnax/pull/2632) · synnaxlabs/synnax · data_integrity · Silent error swallowing masks export failures as success
- [PR #5250](https://github.com/assistant-ui/assistant-ui/pull/5250) · assistant-ui/assistant-ui · data_integrity · Early return on duplicate ID leaves orphaned head node
- [PR #34675](https://github.com/BerriAI/litellm/pull/34675) · berriai/litellm · data_integrity · Non-idempotent spend increments can double-count on retry
- [PR #29779](https://github.com/raycast/extensions/pull/29779) · raycast/extensions · logic · Network errors incorrectly revoke valid cached licenses
- [PR #4895](https://github.com/NVIDIA/NVFlare/pull/4895) · nvidia/nvflare · runtime · FedProx metadata access crashes client during evaluation tasks
- [PR #72738](https://github.com/PostHog/posthog/pull/72738) · posthog/posthog · security · Cloud guard bypass leaks user data to external webhook
- [PR #5973](https://github.com/simstudioai/sim/pull/5973) · simstudioai/sim · concurrency · Race condition causes mention confirmation to silently submit unresolved text
- [PR #73955](https://github.com/PostHog/posthog/pull/73955) · posthog/posthog · security · Security bypass allows blocked STL calls via ExprCall path
- [PR #73904](https://github.com/PostHog/posthog/pull/73904) · posthog/posthog · logic · SQL LIMIT applied before HAVING causes abandoned runs to starve
- [PR #7439](https://github.com/Infisical/infisical/pull/7439) · infisical/infisical · runtime · Unhandled exception in folder lookup aborts entire reminder batch
- [PR #73506](https://github.com/PostHog/posthog/pull/73506) · posthog/posthog · data_integrity · Tracking toggle update erases user category preferences
- [PR #73917](https://github.com/PostHog/posthog/pull/73917) · posthog/posthog · logic · Metrics reads blocking critical reconciliation and handoff processing
- [PR #73897](https://github.com/PostHog/posthog/pull/73897) · posthog/posthog · logic · Malformed fbclid values bypass validation causing API rejections
- [PR #73898](https://github.com/PostHog/posthog/pull/73898) · posthog/posthog · concurrency · Race condition in shared-table safety check causes data corruption
- [PR #72488](https://github.com/PostHog/posthog/pull/72488) · posthog/posthog · security · Security bypass via ambiguous integration matching allows unsigned requests
- [PR #73883](https://github.com/PostHog/posthog/pull/73883) · posthog/posthog · data_integrity · Cache normalization discards renamed series names causing UI regression
- [PR #5214](https://github.com/assistant-ui/assistant-ui/pull/5214) · assistant-ui/assistant-ui · logic · Chain-of-thought status incorrectly reports complete while still running
- [PR #5218](https://github.com/assistant-ui/assistant-ui/pull/5218) · assistant-ui/assistant-ui · runtime · Unguarded process.env access crashes non-Node environments
- [PR #29705](https://github.com/raycast/extensions/pull/29705) · raycast/extensions · performance · Infinite re-signing loop with asymmetric key profiles
- [PR #34749](https://github.com/BerriAI/litellm/pull/34749) · berriai/litellm · concurrency · Fixed drain timeout kills active database queries mid-flight
- [PR #4278](https://github.com/PostHog/posthog-js/pull/4278) · posthog/posthog-js · logic · Meta event discarded on same-timestamp paused seek causes incorrect iframe dimensions
- [PR #3382](https://github.com/gptme/gptme/pull/3382) · gptme/gptme · data_integrity · Daemon thread exits without flushing pending uploads causing data loss
- [PR #3381](https://github.com/gptme/gptme/pull/3381) · gptme/gptme · security · Sandbox preopen exposes writable system temp directory to guest code
- [PR #3377](https://github.com/gptme/gptme/pull/3377) · gptme/gptme · resource_leak · Timeout leaves Docker container running with workspace access
- [PR #29745](https://github.com/raycast/extensions/pull/29745) · raycast/extensions · security · Favicon fetch allows SSRF to external/private network endpoints
- [PR #73732](https://github.com/PostHog/posthog/pull/73732) · posthog/posthog · concurrency · Unbounded retry loop blocks graceful shutdown causing pod kills
- [PR #73712](https://github.com/PostHog/posthog/pull/73712) · posthog/posthog · concurrency · Race condition in node resume overwrites concurrent materialization state
- [PR #9841](https://github.com/ever-co/ever-gauzy/pull/9841) · ever-co/ever-gauzy · concurrency · OAuth PKCE workspace binding race allows wrong tenant configuration
- [PR #3366](https://github.com/gptme/gptme/pull/3366) · gptme/gptme · runtime · Windows timeout cleanup calls unavailable os.killpg API causing process leak
- [PR #29739](https://github.com/raycast/extensions/pull/29739) · raycast/extensions · logic · Cache writes fail when no existing entry exists
- [PR #5181](https://github.com/assistant-ui/assistant-ui/pull/5181) · assistant-ui/assistant-ui · resource_leak · MessageChannel ports never closed causing event loop hang
- [PR #3367](https://github.com/gptme/gptme/pull/3367) · gptme/gptme · security · Procfs exposes parent process credentials to sandbox escape
- [PR #12553](https://github.com/cline/cline/pull/12553) · cline/cline · logic · Webview move unconditionally clears active task state
- [PR #3358](https://github.com/gptme/gptme/pull/3358) · gptme/gptme · security · TOCTOU race condition allows execution of unvalidated script content
- [PR #73696](https://github.com/PostHog/posthog/pull/73696) · posthog/posthog · runtime · Empty request handler object breaks STS credential refresh
- [PR #5965](https://github.com/simstudioai/sim/pull/5965) · simstudioai/sim · security · Awareness state allows user impersonation in presence roster
- [PR #3263](https://github.com/NVIDIA/TransformerEngine/pull/3263) · nvidia/transformerengine · logic · FSDP2 backward pass loses QAT recipe causing incorrect quantization
- [PR #3361](https://github.com/gptme/gptme/pull/3361) · gptme/gptme · security · Authentication bypass when loading 3D models via direct URL

## Ready to transform your enterprise development?

[View Pricing](/pricing.md)

[Book Demo](/contact)

## FAQ

### Can Greptile be deployed on-prem?

Yes. Greptile can be deployed on-prem for enterprise customers with strict data privacy or compliance requirements. To learn more or request on-prem, contact our team. Greptile is also SOC 2 Type II, HIPAA and GDPR compliant.

### What SCMs do you support?

We support GitHub, GitLab, GitHub Enterprise, and self hosted GitHub/GitLab.

### How does Greptile handle large codebases?

Greptile creates a comprehensive knowledge graph of your entire codebase by intelligently indexing all functions, classes, files, and their interconnections at enterprise scale. This enables context-aware code reviews that learns your team's architectural conventions to ensure AI-generated suggestions align with your established coding standards.

### How can we begin our evaluation of Greptile?

We offer a 14-day free trial of Greptile. Need more time to evaluate Greptile or interested in our Enterprise plan? Please reach out and we can get you up and running!

### What programming languages does Greptile support?

Greptile supports all mainstream programming languages such as Python, JavaScript, TypeScript, Go, Java, Ruby, Elixir, Rust, PHP, C++, etc.

Can't find your answer here? [Contact Us](/contact).
