From the experiment

Do coding agents recommend Keycloak?

Keycloak was chosen in 3% of 520 judged authentication sessions, ranking sixth. Measured with Claude Code, Codex, Cursor, Grok Build CLI and Muse Code.

Published September 23, 2026 Read as Markdown

Keycloak was chosen in 3% of 520 judged authentication sessions, ranking sixth. It was also raised as a candidate in 156 further sessions without being chosen.

This page reports what happened when Claude Code, Codex, Cursor, Grok Build CLI and Muse Code had to solve a problem in authentication inside a realistic codebase. Not what a chat assistant says about Keycloak. What an agent actually installed.

The numbers

CategoryAuthentication
Sessions in the category520
Sessions where Keycloak was chosen13
Install share3%
Rank in category6 of 26
Codebases it won in4
Raised as a candidate, not chosen156
Chosen when considered8%
Sitekeycloak.org

By agent

With 13 wins spread across 5 agents, the rates below are small numbers and a difference between them is not yet a finding. They are here because the direction is worth knowing, not because the gap is established.

AgentSessionsChose KeycloakShare
Claude Code13343%
Codex13675%
Cursor13311%
Grok Build CLI5000%
Muse Code6811%

By who was asking

Keycloak performs similarly across the four kinds of buyer, from 0% to 7%. That is unusual: the category leader changed with the persona in 23 of the 29 categories we measured.

Who is askingSessionsChose KeycloakShare
Vibe coder7100%
Junior developer16011%
Senior engineer174127%
Enterprise team11500%

What Keycloak was up against

The full ranking in authentication, from the same sessions:

#ProductRuns wonShare
1Auth011723%
2WorkOS AuthKit11723%
3Clerk6112%
4Microsoft Entra ID5511%
5Built in-house (no product adopted)489%
6Better Auth214%
7Keycloak (this page)133%
8Arctic92%

What this means

This is an integration problem, not a presence problem. Agents raised Keycloak in 156 sessions and chose it in 13, so it reaches the shortlist and then loses. Something at the last step is costing the session, and in our data that is usually a quickstart that does not run when pasted, documentation describing an interface that changed, or a package name that does not match the product name.

That is the cheaper of the two problems to have. The reason is written down in each losing transcript.

Where these numbers come from

The 520 sessions in authentication are part of a published set of 11,878, run with real coding agents inside realistic codebases and judged blind. The full method is on one page: how we measured this.

Every authentication run can be replayed on the board.

If you work on Keycloak: the judge recorded a reason for every session where it was raised and passed over. Those reasons are in the transcripts.

<!-- generated by scripts/write-data-pages.mjs -->

Common questions

Do coding agents recommend Keycloak?

Yes. Keycloak was chosen in 13 of the 520 judged sessions in authentication, a 3% install share, ranking sixth in its category.

Does Claude Code recommend Keycloak?

In 4 of the 133 sessions in authentication run with Claude Code, which is 3%.

Do different coding agents treat Keycloak differently?

Not much. Claude Code, Codex, Cursor, Grok Build CLI and Muse Code chose it at similar rates, between 0% and 5% of their runs.

How was this measured?

Real coding agents at pinned versions were run in sandboxes inside 91 realistic codebases and asked to solve real tasks. A simulated project owner approved or questioned each recommendation before any code was written, and a judge from a model family that builds none of the agents read every session blind.

How often is Keycloak considered but not chosen?

It was raised as a candidate in 156 sessions without being chosen, and chosen in 13. That is a 8% conversion from considered to chosen.

Where this comes from

Armature ran 11,878 judged sessions with Claude Code, Codex, Cursor, Grok Build CLI and Muse Code inside 91 realistic codebases, and published every run. The numbers on this page come from that work.

Read next

All library pages