Skip to content

How Gemini CLI’s scores are calculated

The full audit trail, recomputed from the verdict data at build time through the same code that produced the leaderboard: verdict × quality × story weight per cell, cells sum to dimension scores, dimensions blend into the PA Score. Every number on the product page is reproducible from this page alone; for why the formula looks like this, see the methodology.

verdict factors: full ×1.0 · partial ×0.6 · disputed ×0.3 · none ×0.0 · n/a excluded from both sides · cell points = weight × quality × factor · cell max = weight × 10

PA Score21/100

Agent-ready 38.3 × 0.30 = 11.49

API quality 0.0 × 0.20 = 0.00

Openness 12.0 × 0.20 = 2.40

Built-in AI 19.7 × 0.15 = 2.95

Automation 29.3 × 0.15 = 4.39

(11.49 + 0.00 + 2.40 + 2.95 + 4.39) ÷ (0.30 + 0.20 + 0.20 + 0.15 + 0.15) = 21.24 ÷ 1.00 = 21.2

Scores are stored to 1 decimal; the product page’s pills round to whole numbers for display. Each dimension below shows the stories, verdicts, and cited evidence behind its number.

Agent-ready38.3/100×0.30 of the PA blend

Outside-in: can YOUR agent reach and drive this product — API, MCP, CLI, headless runs, agent docs.

Point an agent at llms.txt or agent-oriented docsweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [probe] https://developers.google.com/llms.txtPROBE llms.txt: HTTP 404 at https://developers.google.com/llms.txt
  • [github] https://github.com/google-gemini/gemini-cliCustom context files (GEMINI.md) to tailor behavior for your projects

Run the product headlessly / in CI for automationweight 2

2 (weight) × 9 (quality) × 1.0 (full) = 18.0 of 20 max

  • [github] https://github.com/google-gemini/gemini-cliRun non-interactively in scripts for workflow automation
  • [github] https://github.com/google-gemini/gemini-cliuse the `--output-format json` flag to get structured output
  • [github] https://github.com/google-gemini/gemini-cliuse `--output-format stream-json` to get newline-delimited JSON events
  • [github] https://github.com/google-gemini/gemini-cliPull Request Reviews: Automated code review with contextual feedback and suggestions
  • [github] https://github.com/google-gemini/gemini-cliIssue Triage: Automated labeling and prioritization of GitHub issues based on content analysis
  • [github] https://github.com/google-gemini/gemini-cliOn-demand Assistance: Mention @gemini-cli in issues and pull requests for help with debugging, explanations, or task delegation

Plug MCP servers into this product so it can use their toolsweight 3

3 (weight) × 8 (quality) × 1.0 (full) = 24.0 of 30 max

  • [github] https://github.com/google-gemini/gemini-cliConfigure MCP servers in ~/.gemini/settings.json to extend Gemini CLI with custom tools
  • [github] https://github.com/google-gemini/gemini-cliUse MCP servers to connect new capabilities, including media generation with Imagen, Veo or Lyria
  • [claimed-docs] https://developers.google.com/gemini-code-assist/docs/gemini-cliComandos de Gemini CLI: /memory, /stats, /tools y /mcp

Connect an agent via an official MCP serverweight 3

n/a — not applicable to this product: excluded from numerator and denominator

no evidence cited — the verdict rests on absence of evidence, re-checked on refresh

Use an official CLIweight 2

2 (weight) × 9 (quality) × 1.0 (full) = 18.0 of 20 max

  • [github] https://github.com/google-gemini/gemini-cliRun non-interactively in scripts for workflow automation
  • [github] https://github.com/google-gemini/gemini-cligemini --include-directories ../lib,../docs
  • [github] https://github.com/google-gemini/gemini-cliuse the `--output-format json` flag to get structured output
  • [github] https://github.com/google-gemini/gemini-cliuse `--output-format stream-json` to get newline-delimited JSON events
  • [github] https://github.com/google-gemini/gemini-cliConfigure MCP servers in ~/.gemini/settings.json to extend Gemini CLI with custom tools
  • [claimed-docs] https://developers.google.com/gemini-code-assist/docs/gemini-cliThe Gemini CLI is available without additional setup in Cloud Shell
  • [community] https://news.ycombinator.com/item?id=44376919I have been using this for about a month and it's a beast, mostly thanks to 2.5pro being SOTA and how it leverages that huge 1M context window. I have thrown very large codebases at this and it has been able to navigate and learn them effortlessly.
  • [probe] https://developers.google.com/gemini-code-assist/docs/gemini-cliofficial CLI documented at https://developers.google.com/gemini-code-assist/docs/gemini-cli

Drive the product through a documented public APIweight 3

3 (weight) × 5 (quality) × 0.6 (partial) = 9.0 of 30 max

  • [github] https://github.com/google-gemini/gemini-cliRun non-interactively in scripts for workflow automation
  • [github] https://github.com/google-gemini/gemini-cliuse the `--output-format json` flag to get structured output
  • [github] https://github.com/google-gemini/gemini-cliuse `--output-format stream-json` to get newline-delimited JSON events
  • [github] https://github.com/google-gemini/gemini-cliConfigure MCP servers in ~/.gemini/settings.json to extend Gemini CLI with custom tools
  • [probe] https://developers.google.com/llms.txtPROBE llms.txt: HTTP 404 at https://developers.google.com/llms.txt
  • [probe] https://developers.google.com/openapi.jsonPROBE openapi: all candidate paths 404 (https://developers.google.com/openapi.json, https://developers.google.com/swagger.json, https://developers.google.com/api/openapi.json, https://developers.google.com/.well-known/openapi.json)

Issue scoped/least-privilege API credentials for an agentweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [github] https://github.com/google-gemini/gemini-cliNo API key management - just sign in with your Google account

Build against official SDKsweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [github] https://github.com/google-gemini/gemini-cliConfigure MCP servers in ~/.gemini/settings.json to extend Gemini CLI with custom tools
  • [github] https://github.com/google-gemini/gemini-cliuse the `--output-format json` flag to get structured output
  • [github] https://github.com/google-gemini/gemini-cliuse `--output-format stream-json` to get newline-delimited JSON events
  • [probe] https://developers.google.com/llms.txtPROBE llms.txt: HTTP 404 at https://developers.google.com/llms.txt
  • [probe] https://developers.google.com/openapi.jsonPROBE openapi: all candidate paths 404 (https://developers.google.com/openapi.json, https://developers.google.com/swagger.json, https://developers.google.com/api/openapi.json, https://developers.google.com/.well-known/openapi.json)

Subscribe to events via webhooksweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [github] https://github.com/google-gemini/gemini-cliRun non-interactively in scripts for workflow automation
  • [github] https://github.com/google-gemini/gemini-cliuse the `--output-format json` flag to get structured output
  • [github] https://github.com/google-gemini/gemini-cliuse `--output-format stream-json` to get newline-delimited JSON events
  • [github] https://github.com/google-gemini/gemini-cliConfigure MCP servers in ~/.gemini/settings.json to extend Gemini CLI with custom tools

Agent-ready = 69.0 ÷ 180 × 100 = 38.3

API quality0.0/100×0.20 of the PA blend

The programmable surface once an agent is there — machine-readable spec, interactive docs, sandbox, versioning discipline.

Explore an interactive API reference with runnable examplesweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [probe] https://developers.google.com/llms.txtPROBE llms.txt: HTTP 404 at https://developers.google.com/llms.txt
  • [probe] https://developers.google.com/openapi.jsonPROBE openapi: all candidate paths 404 (https://developers.google.com/openapi.json, https://developers.google.com/swagger.json, https://developers.google.com/api/openapi.json, https://developers.google.com/.well-known/openapi.json)

Download a machine-readable API spec (OpenAPI or equivalent)weight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [probe] https://developers.google.com/llms.txtPROBE llms.txt: HTTP 404 at https://developers.google.com/llms.txt
  • [probe] https://developers.google.com/openapi.jsonPROBE openapi: all candidate paths 404 (https://developers.google.com/openapi.json, https://developers.google.com/swagger.json, https://developers.google.com/api/openapi.json, https://developers.google.com/.well-known/openapi.json)

Test against a sandbox environment without touching production dataweight 1

1 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 10 max

no evidence cited — the verdict rests on absence of evidence, re-checked on refresh

Rely on versioned APIs with a documented deprecation policyweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [probe] https://developers.google.com/llms.txtPROBE llms.txt: HTTP 404 at https://developers.google.com/llms.txt
  • [probe] https://developers.google.com/openapi.jsonPROBE openapi: all candidate paths 404 (https://developers.google.com/openapi.json, https://developers.google.com/swagger.json, https://developers.google.com/api/openapi.json, https://developers.google.com/.well-known/openapi.json)
  • [community] https://news.ycombinator.com/item?id=48196867Welcome to the Google graveyard, Gemini CLI. Not that it will be missed much. Using it was the worst experience out of any harness.
  • [community] https://news.ycombinator.com/item?id=48196867Google really can't help themselves but to have some internal re-org kill off a public thing people are actively using. It's honestly impressive how consistent they are.

API quality = 0.0 ÷ 70 × 100 = 0.0

Openness12.0/100×0.20 of the PA blend

Can you leave, inspect, or self-host — data export, open source, portability.

Do everything through the API that I can do in the UIweight 2

2 (weight) × 5 (quality) × 0.6 (partial) = 6.0 of 20 max

  • [github] https://github.com/google-gemini/gemini-cliRun non-interactively in scripts for workflow automation
  • [github] https://github.com/google-gemini/gemini-cliuse the `--output-format json` flag to get structured output
  • [github] https://github.com/google-gemini/gemini-cliuse `--output-format stream-json` to get newline-delimited JSON events
  • [probe] https://developers.google.com/llms.txtPROBE llms.txt: HTTP 404 at https://developers.google.com/llms.txt
  • [probe] https://developers.google.com/openapi.jsonPROBE openapi: all candidate paths 404 (https://developers.google.com/openapi.json, https://developers.google.com/swagger.json, https://developers.google.com/api/openapi.json, https://developers.google.com/.well-known/openapi.json)

Export all of my data in open formats and leaveweight 3

3 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 30 max

  • [probe] https://developers.google.com/llms.txtPROBE llms.txt: HTTP 404 at https://developers.google.com/llms.txt
  • [probe] https://developers.google.com/openapi.jsonPROBE openapi: all candidate paths 404 (https://developers.google.com/openapi.json, https://developers.google.com/swagger.json, https://developers.google.com/api/openapi.json, https://developers.google.com/.well-known/openapi.json)

Read the product's source under an open licenseweight 2

2 (weight) × 5 (quality) × 0.6 (partial) = 6.0 of 20 max

  • [github] https://github.com/google-gemini/gemini-cliQuery and edit large codebases
  • [github] https://github.com/google-gemini/gemini-cliUse `/bug` command to report issues directly from the CLI.
  • [probe] https://developers.google.com/gemini-code-assist/docs/gemini-cliofficial CLI documented at https://developers.google.com/gemini-code-assist/docs/gemini-cli

Self-host the core productweight 3

3 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 30 max

  • [github] https://github.com/google-gemini/gemini-cliNo API key management - just sign in with your Google account
  • [claimed-docs] https://developers.google.com/gemini-code-assist/docs/gemini-cliThe Gemini CLI is available without additional setup in Cloud Shell

Openness = 12.0 ÷ 100 × 100 = 12.0

Built-in AI19.7/100×0.15 of the PA blend

Inside-out: how agentic the product itself is for its users — built-in assistants, autonomous features.

Get AI-generated insights and suggestions from my data inside the productweight 2

2 (weight) × 5 (quality) × 0.3 (disputed) = 3.0 of 20 max

  • [github] https://github.com/google-gemini/gemini-cliQuery and edit large codebases
  • [github] https://github.com/google-gemini/gemini-cliDebug issues and troubleshoot with natural language
  • [github] https://github.com/google-gemini/gemini-cliPull Request Reviews: Automated code review with contextual feedback and suggestions
  • [github] https://github.com/google-gemini/gemini-cliIssue Triage: Automated labeling and prioritization of GitHub issues based on content analysis
  • [community] https://news.ycombinator.com/item?id=44822389We have tried out Gemini code review vs Copilot code review and Gemini is consistently offering better code review tips. It has officially caught multiple potential bugs, even a few that reviewers might have missed.
  • [community] https://news.ycombinator.com/item?id=46060508A lot of times Gemini models will get stuck in a loop of errors, and a lot of times it fails to edit/read or other simple function calling - it's really really terrible at agentic stuff.
  • [community] https://news.ycombinator.com/item?id=46060508The problem is that Gemini CLI simply doesn't work. Beside simplest tasks like creating a new release it is useless as a coding assistant. Doesn't have a plan mode, jumps right into coding and gets stuck in spaghetti code.
  • [community] https://news.ycombinator.com/item?id=46060508I love the model, hate the tool. Anthropic has the killer app with Claude Code. I tried Gemini cli for about 5 seconds and was so frustrated, it's so stupid at navigation in the codebase it takes 10x as long to do anything.

Set up automations that run autonomously in the backgroundweight 2

2 (weight) × 6 (quality) × 0.6 (partial) = 7.2 of 20 max

  • [github] https://github.com/google-gemini/gemini-cliRun non-interactively in scripts for workflow automation
  • [github] https://github.com/google-gemini/gemini-cliPull Request Reviews: Automated code review with contextual feedback and suggestions
  • [github] https://github.com/google-gemini/gemini-cliIssue Triage: Automated labeling and prioritization of GitHub issues based on content analysis
  • [github] https://github.com/google-gemini/gemini-cliOn-demand Assistance: Mention @gemini-cli in issues and pull requests for help with debugging, explanations, or task delegation
  • [github] https://github.com/google-gemini/gemini-cliOn-demand Assistance: Mention `@gemini-cli` in issues and pull requests for help with debugging, explanations, or task delegation
  • [github] https://github.com/google-gemini/gemini-cli@github List my open pull requests
  • [community] https://news.ycombinator.com/item?id=46060508A lot of times Gemini models will get stuck in a loop of errors, and a lot of times it fails to edit/read or other simple function calling - it's really really terrible at agentic stuff.
  • [community] https://news.ycombinator.com/item?id=46060508I really tried to get gemini to work properly in Agent mode. Tho it way too often went crazy, started rewriting files empty, and ran into permanent printing loops... for like 1 hour.
  • [community] https://news.ycombinator.com/item?id=46060508Tip 1, it consistently ignores my GEMINI.md file, both global and local, even though it always says '1 GEMINI.md file is being used.'

Delegate tasks to a built-in AI assistant inside the productweight 3

3 (weight) × 5 (quality) × 0.3 (disputed) = 4.5 of 30 max

  • [github] https://github.com/google-gemini/gemini-cliDebug issues and troubleshoot with natural language
  • [github] https://github.com/google-gemini/gemini-cliAutomate operational tasks like querying pull requests or handling complex rebases
  • [github] https://github.com/google-gemini/gemini-cliPull Request Reviews: Automated code review with contextual feedback and suggestions
  • [github] https://github.com/google-gemini/gemini-cliIssue Triage: Automated labeling and prioritization of GitHub issues based on content analysis
  • [github] https://github.com/google-gemini/gemini-cliOn-demand Assistance: Mention @gemini-cli in issues and pull requests for help with debugging, explanations, or task delegation
  • [community] https://news.ycombinator.com/item?id=46060508A lot of times Gemini models will get stuck in a loop of errors, and a lot of times it fails to edit/read or other simple function calling - it's really really terrible at agentic stuff.
  • [community] https://news.ycombinator.com/item?id=46060508I really tried to get gemini to work properly in Agent mode. Tho it way too often went crazy, started rewriting files empty, and ran into permanent printing loops... for like 1 hour.
  • [community] https://news.ycombinator.com/item?id=46060508Tip 1, it consistently ignores my GEMINI.md file, both global and local, even though it always says '1 GEMINI.md file is being used.'
  • [community] https://news.ycombinator.com/item?id=46060508The problem is that Gemini CLI simply doesn't work. Beside simplest tasks like creating a new release it is useless as a coding assistant. Doesn't have a plan mode, jumps right into coding and gets stuck in spaghetti code.
  • [community] https://news.ycombinator.com/item?id=44651485Gemini told the user: 'I have failed you completely and catastrophically... I have lost your data. This is an unacceptable, irreversible failure.' after botched mkdir/move commands deleted the user's files.

Operate the product with natural-language commandsweight 2

2 (weight) × 5 (quality) × 0.3 (disputed) = 3.0 of 20 max

  • [github] https://github.com/google-gemini/gemini-cliQuery and edit large codebases
  • [github] https://github.com/google-gemini/gemini-cliDebug issues and troubleshoot with natural language
  • [github] https://github.com/google-gemini/gemini-cliAutomate operational tasks like querying pull requests or handling complex rebases
  • [github] https://github.com/google-gemini/gemini-cliCustom context files (GEMINI.md) to tailor behavior for your projects
  • [community] https://news.ycombinator.com/item?id=46060508A lot of times Gemini models will get stuck in a loop of errors, and a lot of times it fails to edit/read or other simple function calling - it's really really terrible at agentic stuff.
  • [community] https://news.ycombinator.com/item?id=46060508I really tried to get gemini to work properly in Agent mode. Tho it way too often went crazy, started rewriting files empty, and ran into permanent printing loops... for like 1 hour.
  • [community] https://news.ycombinator.com/item?id=46060508Tip 1, it consistently ignores my GEMINI.md file, both global and local, even though it always says '1 GEMINI.md file is being used.'
  • [community] https://news.ycombinator.com/item?id=46060508The problem is that Gemini CLI simply doesn't work. Beside simplest tasks like creating a new release it is useless as a coding assistant. Doesn't have a plan mode, jumps right into coding and gets stuck in spaghetti code.
  • [community] https://news.ycombinator.com/item?id=44651485Gemini told the user: 'I have failed you completely and catastrophically... I have lost your data. This is an unacceptable, irreversible failure.' after botched mkdir/move commands deleted the user's files.

Built-in AI = 17.7 ÷ 90 × 100 = 19.7

Automation29.3/100×0.15 of the PA blend

Depth of automation primitives — rules, scheduling, bulk operations, webhooks.

Perform bulk operations across many items at onceweight 2

2 (weight) × 6 (quality) × 0.6 (partial) = 7.2 of 20 max

  • [github] https://github.com/google-gemini/gemini-cliAutomate operational tasks like querying pull requests or handling complex rebases
  • [github] https://github.com/google-gemini/gemini-cliRun non-interactively in scripts for workflow automation
  • [github] https://github.com/google-gemini/gemini-cliIssue Triage: Automated labeling and prioritization of GitHub issues based on content analysis
  • [github] https://github.com/google-gemini/gemini-cligemini --include-directories ../lib,../docs
  • [github] https://github.com/google-gemini/gemini-cliuse the `--output-format json` flag to get structured output
  • [github] https://github.com/google-gemini/gemini-cliuse `--output-format stream-json` to get newline-delimited JSON events
  • [community] https://news.ycombinator.com/item?id=46060508A lot of times Gemini models will get stuck in a loop of errors, and a lot of times it fails to edit/read or other simple function calling - it's really really terrible at agentic stuff.
  • [community] https://news.ycombinator.com/item?id=46060508I really tried to get gemini to work properly in Agent mode. Tho it way too often went crazy, started rewriting files empty, and ran into permanent printing loops... for like 1 hour.

Define rules that trigger actions automatically on eventsweight 3

3 (weight) × 5 (quality) × 0.6 (partial) = 9.0 of 30 max

  • [github] https://github.com/google-gemini/gemini-cliPull Request Reviews: Automated code review with contextual feedback and suggestions
  • [github] https://github.com/google-gemini/gemini-cliIssue Triage: Automated labeling and prioritization of GitHub issues based on content analysis
  • [github] https://github.com/google-gemini/gemini-cliOn-demand Assistance: Mention @gemini-cli in issues and pull requests for help with debugging, explanations, or task delegation
  • [github] https://github.com/google-gemini/gemini-cliOn-demand Assistance: Mention `@gemini-cli` in issues and pull requests for help with debugging, explanations, or task delegation
  • [github] https://github.com/google-gemini/gemini-cliRun non-interactively in scripts for workflow automation

Schedule recurring jobs or workflowsweight 2

2 (weight) × 4 (quality) × 0.6 (partial) = 4.8 of 20 max

  • [github] https://github.com/google-gemini/gemini-cliRun non-interactively in scripts for workflow automation
  • [github] https://github.com/google-gemini/gemini-cliuse the `--output-format json` flag to get structured output
  • [github] https://github.com/google-gemini/gemini-cliPull Request Reviews: Automated code review with contextual feedback and suggestions
  • [github] https://github.com/google-gemini/gemini-cliIssue Triage: Automated labeling and prioritization of GitHub issues based on content analysis

Version, review, and roll back my automationsweight 1

1 (weight) × 4 (quality) × 0.6 (partial) = 2.4 of 10 max

  • [github] https://github.com/google-gemini/gemini-cliConversation checkpointing to save and resume complex sessions

Automation = 23.4 ÷ 80 × 100 = 29.3