Bot signals · AI crawler & agent

What is Graphite?

Graphite GitHub app

Graphite is a platform for stacked pull requests with a codebase-aware AI code review agent. These requests come from the Graphite GitHub app when it connects to a customer’s GitHub organisation.

risk.is_ai

Check an IP

Is this IP really Graphite?

Free. The same answer as risk.is_ai in the lookup API.

01 · Profile

Graphite at a glance.

What to look for in your logs, and what the lookup API returns for its addresses.

Type
AI crawler & agent
API flag
risk.is_ai

A user agent alone never sets a flag. Anyone can claim to be Graphite; the flag follows the address the request comes from.

02 · In the response

What a match looks like.

A lookup of a Graphite address sets risk.is_ai. The flags come with geolocation and network data in the same response, for API keys on every paid plan.

The response says which kind of bot an address belongs to, not which operator. A request that claims to be Graphite while risk.is_ai is false should not be trusted as Graphite.

GET /api/lookup/{ip}?key=YOUR_API_KEY
{
  // … location and network fields …
  "risk": {
    "is_ai": true,
    "is_crawler": false,
    "is_scanner": false
  }
}

03 · Control

Allow or block Graphite.

Your options

  • robots.txt works only for crawlers that choose to follow it. Check the operator’s documentation for the token it reads.
  • Firewall, WAF or CDN. Many offer bot rules you can allow or deny by category. Use them to enforce what robots.txt only asks for.
  • In your app. Look up the client address and allow or deny on risk.is_ai, alongside the user agent.
  • Never on the user agent alone. Blocking the name stops only honest clients; allowing it lets anyone in who borrows it.

04 · Questions

About Graphite.

What is Graphite?

Graphite is a platform for stacked pull requests with a codebase-aware AI code review agent. These requests come from the Graphite GitHub app when it connects to a customer’s GitHub organisation.

How do I block Graphite?

Deny it at your firewall, WAF or CDN, or look up each client address and deny requests where risk.is_ai is true. Do not rely on the user agent alone.

Can I trust a request that says it is Graphite?

Not on the user agent alone: any client can send a bot’s name in its user agent. A user agent alone never sets a flag. Check the address with the free bot checker or the lookup API.

Which risk flag does Graphite set?

Its addresses set risk.is_ai in the lookup response. The risk flags come with every paid plan.

Recognise Graphite on every request.

is_ai, is_crawler and is_scanner in every lookup, on every paid plan, from 9,00 € a month (VAT included).