> ## Documentation Index
> Fetch the complete documentation index at: https://usefulai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Best LLMs for Agents in 2026

export const models = [{
  rank: 1,
  name: "Claude Fable 5",
  dev: "Anthropic",
  icon: "/images/icons/anthropic.com.png",
  url: "https://www.anthropic.com/claude/fable",
  bestFor: "Hardest long-horizon agent work",
  score: "100%",
  price: "$5.60/task",
  license: "Proprietary",
  custom: "+1.24%",
  customLabel: "Tool hallucination"
}, {
  rank: 2,
  name: "Claude Opus 4.8",
  dev: "Anthropic",
  icon: "/images/icons/anthropic.com.png",
  url: "https://platform.claude.com/docs/en/about-claude/models/overview",
  bestFor: "All-around agent default",
  score: "85%",
  price: "$3.28/task",
  license: "Proprietary",
  custom: "+0.70%",
  customLabel: "Tool hallucination"
}, {
  rank: 3,
  name: "Claude Sonnet 5",
  dev: "Anthropic",
  icon: "/images/icons/anthropic.com.png",
  url: "https://platform.claude.com/docs/en/about-claude/models/overview",
  bestFor: "Near-frontier agents at scale",
  score: "81%",
  price: "$2.89/task",
  license: "Proprietary",
  custom: "+1.11%",
  customLabel: "Tool hallucination"
}, {
  rank: 4,
  name: "GPT-5.5",
  dev: "OpenAI",
  icon: "/images/icons/openai.com.png",
  url: "https://developers.openai.com/api/docs/models/gpt-5.5",
  bestFor: "Agentic coding and tool use",
  score: "80%",
  price: "$1.75/task",
  license: "Proprietary",
  custom: "+1.24%",
  customLabel: "Tool hallucination"
}, {
  rank: 5,
  name: "GLM-5.2",
  dev: "Z.ai",
  icon: "/images/icons/z.ai.png",
  url: "https://huggingface.co/zai-org/GLM-5.2",
  bestFor: "Best open-weight agents",
  score: "73%",
  price: "$0.67/task",
  license: "Open weight",
  custom: "+1.24%",
  customLabel: "Tool hallucination"
}, {
  rank: 6,
  name: "Grok 4.5",
  dev: "xAI",
  icon: "/images/icons/x.ai.png",
  url: "https://docs.x.ai/developers/models",
  bestFor: "Low-cost coding agents",
  score: "65%",
  price: "$0.84/task",
  license: "Proprietary",
  custom: "Unavailable",
  customLabel: "Tool hallucination"
}, {
  rank: 7,
  name: "Gemini 3.5 Flash",
  dev: "Google",
  icon: "/images/icons/google.com.png",
  url: "https://deepmind.google/models/model-cards/gemini-3-5-flash/",
  bestFor: "High-speed multimodal agents",
  score: "53%",
  price: "$1.37/task",
  license: "Proprietary",
  custom: "-1.09%",
  customLabel: "Tool hallucination"
}, {
  rank: 8,
  name: "DeepSeek V4 Pro",
  dev: "DeepSeek",
  icon: "/images/icons/deepseek.com.png",
  url: "https://huggingface.co/deepseek-ai/DeepSeek-V4-Pro",
  bestFor: "Cheapest capable agent",
  score: "51%",
  price: "$0.05/task",
  license: "Open weight",
  custom: "+0.99%",
  customLabel: "Tool hallucination"
}, {
  rank: 9,
  name: "MiniMax-M3",
  dev: "MiniMax",
  icon: "/images/icons/minimax.io.png",
  url: "https://huggingface.co/MiniMaxAI/MiniMax-M3",
  bestFor: "Low-cost multimodal agents",
  score: "46%",
  price: "$0.21/task",
  license: "Open weight",
  custom: "+0.99%",
  customLabel: "Tool hallucination"
}, {
  rank: 10,
  name: "Qwen3.7 Max",
  dev: "Alibaba",
  icon: "/images/icons/qwen.ai.png",
  url: "https://qwen.ai/blog?id=qwen3.7",
  bestFor: "Long-horizon autonomous execution",
  score: "45%",
  price: "$2.70/task",
  license: "Proprietary",
  custom: "+1.02%",
  customLabel: "Tool hallucination"
}, {
  rank: 11,
  name: "Nex-N2-Pro",
  dev: "Nex AGI",
  icon: "/images/icons/nex-agi.com.png",
  url: "https://huggingface.co/nex-agi/Nex-N2-Pro",
  bestFor: "Open-weight agent specialist",
  score: "44%",
  price: "Unavailable",
  license: "Open weight",
  custom: "Unavailable",
  customLabel: "Tool hallucination"
}, {
  rank: 12,
  name: "Kimi K2.7 Code",
  dev: "Moonshot",
  icon: "/images/icons/kimi.com.png",
  url: "https://huggingface.co/moonshotai/Kimi-K2.7-Code",
  bestFor: "Open-weight coding agents",
  score: "43%",
  price: "$0.28/task",
  license: "Open weight",
  custom: "+1.24%",
  customLabel: "Tool hallucination"
}, {
  rank: 13,
  name: "Muse Spark",
  dev: "Meta",
  icon: "/images/icons/meta.ai.png",
  url: "https://ai.meta.com/blog/introducing-muse-spark-msl/",
  bestFor: "Multimodal tool-use agents",
  score: "40%",
  price: "Unavailable",
  license: "Proprietary",
  custom: "Unavailable",
  customLabel: "Tool hallucination"
}, {
  rank: 14,
  name: "Qwen3.6 27B",
  dev: "Alibaba",
  icon: "/images/icons/qwen.ai.png",
  url: "https://huggingface.co/Qwen/Qwen3.6-27B",
  bestFor: "Single-machine local agents",
  score: "38%",
  price: "$0.39/task",
  license: "Open weight",
  custom: "Unavailable",
  customLabel: "Tool hallucination"
}, {
  rank: 15,
  name: "DeepSeek V4 Flash",
  dev: "DeepSeek",
  icon: "/images/icons/deepseek.com.png",
  url: "https://huggingface.co/deepseek-ai/DeepSeek-V4-Flash",
  bestFor: "Cheapest high-volume agents",
  score: "37%",
  price: "$0.02/task",
  license: "Open weight",
  custom: "-0.60%",
  customLabel: "Tool hallucination"
}];

export const Fav = ({icon, size = "h-4 w-4"}) => <img src={icon} alt="" noZoom className={"relative -top-px mr-1 inline rounded-sm object-contain " + size} />;

export const LicenseBadge = ({license}) => license === "Open weight" ? <span className="inline-flex items-center rounded bg-emerald-50 px-1.5 py-[2px] text-xs font-medium leading-4 text-emerald-700 dark:bg-emerald-500/10 dark:text-emerald-400">Open weight</span> : <span className="inline-flex items-center rounded bg-zinc-100 px-1.5 py-[2px] text-xs font-medium leading-4 text-zinc-600 dark:bg-white/10 dark:text-zinc-300">Proprietary</span>;

export const BestForChip = ({children}) => <span className="inline-flex min-w-0 max-w-full items-center rounded bg-sky-50 px-1.5 py-[2px] dark:bg-sky-500/10">
    <span className="truncate text-xs font-medium leading-4 text-sky-700 dark:text-sky-400">{children}</span>
  </span>;

export const HeaderTip = ({label, tip}) => <span className="inline-flex items-center gap-1.5">
    <span>{label}</span>
    <Tooltip tip={tip}>
      <span className="relative top-0.5 inline-flex cursor-pointer text-zinc-500 transition-opacity hover:opacity-70 dark:text-zinc-400">
        <Icon icon="circle-info" size={12} color="currentColor" />
        <span className="sr-only">About {label.toLowerCase()}</span>
      </span>
    </Tooltip>
  </span>;

export const ModelCard = ({model, children}) => <section className="not-prose my-5 rounded-lg border border-zinc-200 bg-white p-5 shadow-sm dark:border-white/10 dark:bg-white/[0.03]">
    <div className="mb-3"><BestForChip>{model.bestFor}</BestForChip></div>
    <div className="flex items-center gap-3">
      <img src={model.icon} alt={model.dev + " logo"} noZoom className="h-10 w-10 shrink-0 rounded-lg object-contain" />
      <div className="min-w-0 flex-1">
        <h2 className="m-0 max-w-full text-xl font-semibold leading-7 tracking-normal">
          <a href={model.url} target="_blank" rel="noreferrer" className="group inline-flex min-w-0 max-w-full items-center gap-1.5 no-underline text-zinc-950 dark:text-white">
            <span className="min-w-0 break-words"><span className="underline-offset-4 group-hover:underline group-focus-visible:underline">{model.name}</span> <span className="font-normal text-zinc-500 dark:text-zinc-400">({model.dev})</span></span>
            <span aria-hidden="true" className="flex shrink-0 text-zinc-400 transition-colors group-hover:text-zinc-900 group-focus-visible:text-zinc-900 dark:text-zinc-500 dark:group-hover:text-white dark:group-focus-visible:text-white"><Icon icon="arrow-up-right" size={12} color="currentColor" /></span>
          </a>
        </h2>
        <div className="mt-1 flex flex-wrap items-center gap-x-2 gap-y-1 text-[13px] leading-5 uai-ink-muted">
          <LicenseBadge license={model.license} />
          <span aria-hidden="true">∙</span>
          <span>Score <span className="tabular-nums text-zinc-950 dark:text-white">{model.score}</span></span>
          <span aria-hidden="true">∙</span>
          <span>Price <span className="tabular-nums text-zinc-950 dark:text-white">{model.price}</span></span>
          {model.custom && <><span aria-hidden="true">∙</span><span>{model.customLabel} <span className="tabular-nums text-zinc-950 dark:text-white">{model.custom}</span></span></>}
        </div>
      </div>
    </div>
    {children}
  </section>;

export const Take = ({children}) => <div className="not-prose mt-4 text-sm leading-[22px] text-zinc-700 dark:text-zinc-300">{children}</div>;

export const ST = ({label, children}) => <div className="not-prose mt-4">
    <div className="text-sm font-semibold text-zinc-950 dark:text-white">{label}</div>
    <div className="mt-1 flex flex-col gap-2.5 text-sm leading-[22px] text-zinc-700 dark:text-zinc-300">{children}</div>
  </div>;

export const AccessBullets = ({rows}) => <div className="not-prose mt-4 text-sm leading-[22px] text-zinc-700 dark:text-zinc-300">
    <div className="font-semibold text-zinc-950 dark:text-white">How to access</div>
    <div className="mt-1.5 flex flex-col gap-1.5">
      {rows.map(([key, body]) => <span key={key} className="flex items-baseline gap-2.5"><span aria-hidden="true" className="relative -top-0.5 inline-block h-1.5 w-1.5 shrink-0 rounded-full bg-zinc-700 dark:bg-zinc-300" /><span><span className="font-semibold text-zinc-950 dark:text-white">{key}</span> — {body}</span></span>)}
    </div>
  </div>;

export const Alt = ({icon, name, dev, url, children}) => <span className="flex items-baseline gap-2.5">
    <span aria-hidden="true" className="relative -top-0.5 inline-block h-1.5 w-1.5 shrink-0 rounded-full bg-zinc-300 dark:bg-zinc-600" />
    <span><Fav icon={icon} /><a href={url} target="_blank" rel="noreferrer" className="font-medium text-zinc-950 underline underline-offset-2 dark:text-white">{name}</a> <span className="uai-ink-muted">({dev})</span> — {children}</span>
  </span>;

<div className="not-prose -mt-2 mb-8 flex flex-wrap items-center gap-x-2 text-sm text-zinc-800 dark:text-zinc-200 lg:-mt-5" style={{ paddingLeft: "2px" }}>
  <span className="inline-flex items-center gap-1.5"><Icon icon="clock-rotate-left" size={10} color="currentColor" /> Updated <time dateTime="2026-07-12">July 12, 2026</time></span>
</div>

Agent LLMs don't just chat - they plan, call tools, and run multi-step tasks on their own. The catch: a high benchmark score can still hide tool hallucination, the failure that quietly derails unattended runs. We compared 15 models on agent-specific benchmarks.

## Best LLMs for Agents

<div className="uai-overview-breakout not-prose my-5">
  <input type="checkbox" id="models-more" className="fy-more-toggle sr-only" aria-label={"Show all 15 llms for agents models"} />

  <div className="fy-more-table overflow-x-auto rounded-lg border border-zinc-200 bg-white dark:border-white/10 dark:bg-white/[0.03]">
    <div className="table text-sm" style={{ width: "100%" }}>
      <div className="table-header-group bg-zinc-50/60 dark:bg-white/[0.02]">
        <div className="table-row">
          <span className="table-cell whitespace-nowrap px-4 py-2.5 text-left text-[13px] font-medium leading-5 text-zinc-500 dark:text-zinc-400">#</span>
          <span className="table-cell whitespace-nowrap px-4 py-2.5 text-left text-[13px] font-medium leading-5 text-zinc-500 dark:text-zinc-400">Model</span>
          <span className="table-cell whitespace-nowrap px-4 py-2.5 text-left text-[13px] font-medium leading-5 text-zinc-500 dark:text-zinc-400">Best for</span>

          <span className="table-cell whitespace-nowrap px-4 py-2.5 text-right text-[13px] font-medium leading-5 text-zinc-500 dark:text-zinc-400">
            <HeaderTip label="Score" tip={"UsefulAI's 0-100 agent score combines normalized Agent Arena Net Improvement and Artificial Analysis Agentic Index results. Higher is better."} />
          </span>

          <span className="table-cell whitespace-nowrap px-4 py-2.5 text-right text-[13px] font-medium leading-5 text-zinc-500 dark:text-zinc-400">
            <HeaderTip label="Price" tip={"Estimated USD per completed agentic benchmark task. Real cost changes with task length, tool use, retries, and provider pricing."} />
          </span>

          <span className="table-cell whitespace-nowrap px-4 py-2.5 text-left text-[13px] font-medium leading-5 text-zinc-500 dark:text-zinc-400">
            <HeaderTip label="License" tip="Proprietary means no public model weights. Open weight means weights are available, though exact licenses and commercial-use terms vary." />
          </span>

          <span className="table-cell whitespace-nowrap px-4 py-2.5 text-left text-[13px] font-medium leading-5 text-zinc-500 dark:text-zinc-400">
            <HeaderTip label={"Tool hallucination"} tip={"Agent Arena signal for avoiding nonexistent or malformed tool calls. Positive means better than the average model; negative means worse."} />
          </span>
        </div>
      </div>

      <div className="table-row-group">
        {models.map((model, index) => (
                        <a key={model.name} href={model.url} target="_blank" rel="noreferrer" className={"table-row no-underline transition-colors hover:bg-zinc-50/60 dark:hover:bg-white/[0.02]" + (models.length > 9 && index >= 7 ? " fy-more-row" : "")}>
                          <span className="table-cell w-8 whitespace-nowrap border-t border-zinc-100 px-4 py-3 align-middle text-[13px] tabular-nums dark:border-white/5"><span className="sr-only">Rank </span><span className="uai-ink-muted">{model.rank}</span></span>
                          <span className="table-cell whitespace-nowrap border-t border-zinc-100 px-4 py-3 align-middle dark:border-white/5"><span className="flex items-center gap-2.5"><Fav icon={model.icon} /><span className="text-sm font-semibold leading-5 text-zinc-950 dark:text-white">{model.name}</span></span></span>
                          <span className="table-cell whitespace-nowrap border-t border-zinc-100 px-4 py-3 align-middle text-[13px] leading-5 text-zinc-950 dark:border-white/5 dark:text-white"><span className="sr-only">Best for: </span>{model.bestFor}</span>
                          <span className="table-cell whitespace-nowrap border-t border-zinc-100 px-4 py-3 text-right align-middle text-[13px] leading-5 tabular-nums text-zinc-950 dark:border-white/5 dark:text-white"><span className="sr-only">Score: </span>{model.score}</span>
                          <span className="table-cell whitespace-nowrap border-t border-zinc-100 px-4 py-3 text-right align-middle text-[13px] leading-5 tabular-nums dark:border-white/5"><span className="sr-only">Price: </span><span className="uai-ink-muted">{model.price}</span></span>
                          <span className="table-cell whitespace-nowrap border-t border-zinc-100 px-4 py-3 align-middle dark:border-white/5"><span className="sr-only">License: </span><LicenseBadge license={model.license} /></span>
                          <span className="table-cell whitespace-nowrap border-t border-zinc-100 px-4 py-3 align-middle text-[13px] leading-5 text-zinc-950 dark:border-white/5 dark:text-white"><span className="sr-only">Tool hallucination: </span>{model.custom}</span>
                        </a>
                      ))}
      </div>
    </div>
  </div>

  {models.length > 9 && <div className="fy-more-pill mt-3 flex justify-center">
      <label htmlFor="models-more" className="inline-flex cursor-pointer items-center gap-1.5 rounded-full border border-zinc-200 px-4 py-1.5 text-[13px] font-medium text-zinc-600 transition-colors hover:text-zinc-900 dark:border-white/15 dark:text-zinc-300 dark:hover:text-white">
        <span className="fy-more-open inline-flex items-center gap-1.5">Show {models.length - 7} more <Icon icon="chevron-down" size={13} /></span>
        <span className="fy-more-close items-center gap-1.5">Show less <Icon icon="chevron-up" size={13} /></span>
      </label>
    </div>}
</div>

***

<ModelCard model={models[0]}>
  <Take>The most capable agent model in this comparison, built for the longest autonomous runs where weaker models lose the thread - and priced to match.</Take>

  <ST label="Strengths:">
    <div>It holds a plan together across long, multi-step tasks better than anything else here, staying coherent over runs that last hours and checking its own work.</div>
    <div>It's near the top at avoiding calls to tools that don't exist. If the task is genuinely hard, this is the ceiling.</div>
  </ST>

  <ST label="Tradeoffs:">
    <div>You pay the highest price on this list, so it's overkill for the routine tool loops that Opus 4.8 or Sonnet 5 handle for far less.</div>
    <div>Reach for it only when a task genuinely needs the extra ceiling.</div>
  </ST>

  <AccessBullets
    rows={[
["App", <span>Available in <a href="https://claude.ai/" target="_blank" rel="noreferrer" className="underline underline-offset-2">Claude</a>.</span>],
["API", <span>Accessible via <a href="https://docs.anthropic.com/en/docs/about-claude/models" target="_blank" rel="noreferrer" className="underline underline-offset-2">Anthropic API</a>.</span>],
]}
  />
</ModelCard>

<ModelCard model={models[1]}>
  <Take>The default pick for serious agent work: it makes efficient tool decisions, recovers when a tool fails, and flags its mistakes rather than hiding them.</Take>

  <ST label="Strengths:">
    <div>The best all-around agent here for browser and computer-use work, and unusually good at knowing when not to reach for a tool at all.</div>
    <div>It recovers when a tool fails mid-task and, unlike earlier Claude models, flags its own flawed output rather than shipping it quietly.</div>
  </ST>

  <ST label="Tradeoffs:">
    <div>It costs Opus-tier money, so high-volume, simple tool loops are cheaper to run elsewhere.</div>
    <div>On pure terminal-style coding, GPT-5.5 has a slight edge, and for the absolute ceiling on the hardest runs, Fable 5 sits clearly above it.</div>
  </ST>

  <AccessBullets
    rows={[
["App", <span>Available in <a href="https://claude.ai/" target="_blank" rel="noreferrer" className="underline underline-offset-2">Claude</a>.</span>],
["API", <span>Accessible via <a href="https://docs.anthropic.com/en/docs/about-claude/models" target="_blank" rel="noreferrer" className="underline underline-offset-2">Anthropic API</a>.</span>],
]}
  />
</ModelCard>

<ModelCard model={models[2]}>
  <Take>Most of Opus 4.8's agent reliability at a lower price - the one to run when volume matters more than peak capability.</Take>

  <ST label="Strengths:">
    <div>It plans multi-step work, drives browsers and terminals, and stays on convention through clean, sequential changes.</div>
    <div>It's strong on brownfield code, tracing a failure to its root cause instead of patching symptoms, and it behaves well in long agent loops while keeping tool hallucination low.</div>
  </ST>

  <ST label="Tradeoffs:">
    <div>Tool use is reliable on common APIs but slips when it must infer what an unusual tool does, and it recovers from mid-task failures less gracefully than Opus 4.8.</div>
    <div>For the hardest reasoning or exotic tool surfaces, step up to Opus 4.8 or GPT-5.5.</div>
  </ST>

  <AccessBullets
    rows={[
["App", <span>Available in <a href="https://claude.ai/" target="_blank" rel="noreferrer" className="underline underline-offset-2">Claude</a>.</span>],
["API", <span>Accessible via <a href="https://docs.anthropic.com/en/docs/about-claude/models" target="_blank" rel="noreferrer" className="underline underline-offset-2">Anthropic API</a>.</span>],
]}
  />
</ModelCard>

<ModelCard model={models[3]}>
  <Take>OpenAI's strongest agentic coder, notably precise at picking the right tool and argument across large tool surfaces and long-running loops.</Take>

  <ST label="Strengths:">
    <div>It plans well across messy, multi-part tasks and is precise about tool selection when the tool list is long - the setting where weaker models call the wrong function or invent arguments.</div>
    <div>It's also strong at avoiding nonexistent tool calls, which keeps long autonomous runs on track.</div>
  </ST>

  <ST label="Tradeoffs:">
    <div>At high reasoning effort it runs slower, so it's not the pick for cheap, high-volume loops.</div>
    <div>It's coder-first, too, so for the hardest long-horizon or computer-use work, Opus 4.8 and Fable 5 stay more reliable.</div>
  </ST>

  <AccessBullets
    rows={[
["App", <span>Available in <a href="https://chatgpt.com/" target="_blank" rel="noreferrer" className="underline underline-offset-2">ChatGPT</a>.</span>],
["API", <span>Accessible via <a href="https://developers.openai.com/api/docs/models" target="_blank" rel="noreferrer" className="underline underline-offset-2">OpenAI API</a>.</span>],
]}
  />
</ModelCard>

<ModelCard model={models[4]}>
  <Take>The strongest open-weight agent model here by a clear margin, built coding-first with a long context and top-tier tool-call discipline.</Take>

  <ST label="Strengths:">
    <div>The highest-scoring open-weight model here, priced well below the proprietary frontier, with a context long enough for repository-scale work. It's tuned for tool-augmented, multi-step engineering and among the best here at avoiding nonexistent tool calls.</div>
    <div>Open weights let you host it wherever cost or compliance dictates.</div>
  </ST>

  <ST label="Tradeoffs:">
    <div>It's text-only, so it won't drive screenshot or GUI agents that need to see the screen - Gemini 3.5 Flash or Qwen3.6 27B fit there.</div>
    <div>And despite open weights, it's far too large for a local machine, so in practice you're calling a hosted API.</div>
  </ST>

  <AccessBullets
    rows={[
["App", <span>Available in <a href="https://z.ai/" target="_blank" rel="noreferrer" className="underline underline-offset-2">Z.ai</a>.</span>],
["API", <span>Accessible via <a href="https://docs.z.ai/guides/llm/glm-5.2" target="_blank" rel="noreferrer" className="underline underline-offset-2">Z.ai API</a>.</span>],
["Run locally", <span>Open weights are available from <a href="https://docs.z.ai/guides/llm/glm-5.2" target="_blank" rel="noreferrer" className="underline underline-offset-2">Z.ai</a>, but in practice this needs self-hosting infrastructure, not a local machine.</span>],
]}
  />
</ModelCard>

<ModelCard model={models[5]}>
  <Take>xAI's first model built ground-up for coding and agent work, aggressively priced and marketed as Opus-class - though results land mid-pack, not at the top.</Take>

  <ST label="Strengths:">
    <div>Built from the ground up for coding and tool-driven tasks, learning from real coding-session data, and priced well below the proprietary frontier.</div>
    <div>It's notably token-efficient, and function calling, live web search, and code execution are built in, so it slots into agent loops with little scaffolding.</div>
  </ST>

  <ST label="Tradeoffs:">
    <div>The Opus-class billing outruns the evidence - it sits below the top Claude models and GPT-5.5 overall, and its tool-hallucination reliability isn't measured yet.</div>
    <div>For higher-scoring open weights at a similar price, GLM-5.2 is the stronger buy.</div>
  </ST>

  <AccessBullets
    rows={[
["App", <span>Available in <a href="https://grok.com/" target="_blank" rel="noreferrer" className="underline underline-offset-2">Grok</a>.</span>],
["API", <span>Accessible via <a href="https://docs.x.ai/" target="_blank" rel="noreferrer" className="underline underline-offset-2">xAI API</a>.</span>],
]}
  />
</ModelCard>

<ModelCard model={models[6]}>
  <Take>The fastest capable agent here and the most multimodal, though a Flash-tier ceiling and a real tool-hallucination weakness hold it back from heavy autonomy.</Take>

  <ST label="Strengths:">
    <div>The speed pick: it returns tokens far faster than anything else here, and it takes text, images, video, audio, and PDFs, so it's the natural choice for high-throughput, multimodal, and screen-driven agents.</div>
    <div>Tool orchestration is a genuine strength at this tier.</div>
  </ST>

  <ST label="Tradeoffs:">
    <div>It's a Flash-tier model, so it trails the top picks on the hardest reasoning and longest runs. It's also more prone than average to calling tools that don't exist, so supervise it on high-stakes automation.</div>
    <div>For deep autonomy, reach for Opus 4.8 or GPT-5.5.</div>
  </ST>

  <AccessBullets
    rows={[
["App", <span>Available in <a href="https://gemini.google/" target="_blank" rel="noreferrer" className="underline underline-offset-2">Gemini</a>.</span>],
["API", <span>Accessible via <a href="https://ai.google.dev/gemini-api/docs/models" target="_blank" rel="noreferrer" className="underline underline-offset-2">Gemini API</a>.</span>],
]}
  />
</ModelCard>

<ModelCard model={models[7]}>
  <Take>Frontier-adjacent agentic coding at a rounding-error price, and the best capability-per-dollar on this entire list.</Take>

  <ST label="Strengths:">
    <div>You get open-weight agentic coding that holds up against far pricier models, with a long context and solid discipline about not inventing tool calls, all at a tiny fraction of frontier cost.</div>
    <div>For cost-sensitive, high-volume agent work where you still want real capability, nothing here matches its value.</div>
  </ST>

  <ST label="Tradeoffs:">
    <div>It's a mid-pack scorer, so it won't match Opus 4.8 or GPT-5.5 on the hardest long-horizon reasoning. And despite open weights, the full model is a server-cluster deployment, not a local one.</div>
    <div>If you want cheaper still, DeepSeek V4 Flash undercuts it.</div>
  </ST>

  <AccessBullets
    rows={[
["App", <span>Available in <a href="https://chat.deepseek.com/" target="_blank" rel="noreferrer" className="underline underline-offset-2">DeepSeek</a>.</span>],
["API", <span>Accessible via <a href="https://api-docs.deepseek.com/" target="_blank" rel="noreferrer" className="underline underline-offset-2">DeepSeek API</a>.</span>],
]}
  />
</ModelCard>

<ModelCard model={models[8]}>
  <Take>A cheap, open-weight generalist that pairs multimodal input with a long context, aimed at cost-sensitive agent and coding loops.</Take>

  <ST label="Strengths:">
    <div>One of the few open-weight models here that takes images and video as well as text, with a long context and low per-task cost.</div>
    <div>It's built for autonomous task decomposition and multi-step tool use, and it's solid at avoiding nonexistent tool calls - a reasonable low-cost base for multimodal agents.</div>
  </ST>

  <ST label="Tradeoffs:">
    <div>It lands mid-pack, so it's not the model for the hardest reasoning or longest autonomous runs.</div>
    <div>Open weights don't buy you local use - it's a datacenter-class deployment - and cheaper open models like DeepSeek V4 Pro score higher, so its main draw is native multimodality.</div>
  </ST>

  <AccessBullets
    rows={[
["App", <span>Available in <a href="https://www.minimax.io/" target="_blank" rel="noreferrer" className="underline underline-offset-2">MiniMax</a>.</span>],
["API", <span>Accessible via <a href="https://platform.minimax.io/" target="_blank" rel="noreferrer" className="underline underline-offset-2">MiniMax API</a>.</span>],
["Run locally", <span>Open weights are available from <a href="https://huggingface.co/MiniMaxAI/MiniMax-M3" target="_blank" rel="noreferrer" className="underline underline-offset-2">Hugging Face</a>, but in practice this needs self-hosting infrastructure, not a local machine.</span>],
]}
  />
</ModelCard>

<ModelCard model={models[9]}>
  <Take>An agent-first proprietary model built for very long autonomous runs, with strong tool discipline but a price that's hard to justify against cheaper open weights.</Take>

  <ST label="Strengths:">
    <div>Purpose-built for long-horizon autonomy - it sustains very long chains of sequential tool calls with state management and dead-end recovery, and it's strong at not inventing tools along the way.</div>
    <div>A long context and native tool support round it out for extended, unattended runs.</div>
  </ST>

  <ST label="Tradeoffs:">
    <div>For its score it's expensive, and it's closed, so there's no self-hosting or fine-tuning. Open-weight GLM-5.2 scores higher for less, and DeepSeek V4 Pro delivers similar-tier capability at a fraction of the price.</div>
    <div>Long-autonomy is its main reason to choose it.</div>
  </ST>

  <AccessBullets
    rows={[
["App", <span>Available in <a href="https://chat.qwen.ai/" target="_blank" rel="noreferrer" className="underline underline-offset-2">Qwen Chat</a>.</span>],
["API", <span>Accessible via <a href="https://www.alibabacloud.com/help/en/model-studio/models" target="_blank" rel="noreferrer" className="underline underline-offset-2">Alibaba Cloud Model Studio</a>.</span>],
]}
  />
</ModelCard>

<ModelCard model={models[10]}>
  <Take>A purpose-built open-weight agent model with respectable coding numbers, but from an obscure vendor with thin, API-only access.</Take>

  <ST label="Strengths:">
    <div>Built specifically for agent work - planning, coding, tool use, and iterating on environment feedback - rather than general chat, and it's competitive on coding for an open-weight model.</div>
    <div>It also takes image input, and permissive licensing gives you full freedom to host and adapt it.</div>
  </ST>

  <ST label="Tradeoffs:">
    <div>There's no first-party app and no published task price, so your only real route is a third-party host.</div>
    <div>It's heavy to self-host, and better-known open weights like GLM-5.2 and DeepSeek V4 Pro score higher with far more support behind them.</div>
  </ST>

  <AccessBullets
    rows={[
["API", <span>Accessible via <a href="https://openrouter.ai/nex-agi/nex-n2-pro" target="_blank" rel="noreferrer" className="underline underline-offset-2">OpenRouter</a>.</span>],
["Run locally", <span>Open weights are available from <a href="https://huggingface.co/nex-agi/Nex-N2-Pro" target="_blank" rel="noreferrer" className="underline underline-offset-2">Hugging Face</a>, but in practice this needs self-hosting infrastructure, not a local machine.</span>],
]}
  />
</ModelCard>

<ModelCard model={models[11]}>
  <Take>A code-specialized open-weight model tuned for long, end-to-end programming agents, with best-in-class discipline about calling only tools that exist.</Take>

  <ST label="Strengths:">
    <div>Purpose-tuned for code and agentic tool use, and among the very best here at not hallucinating tool calls - exactly what you want in an unattended coding loop.</div>
    <div>It's notably token-efficient across multi-turn runs and priced well below the proprietary options.</div>
  </ST>

  <ST label="Tradeoffs:">
    <div>It's narrow - strong on code and tool use, weaker on broad reasoning - and its context is shorter than the frontier models here.</div>
    <div>The full model is far too large to run locally, so you're on a host. GLM-5.2 is the stronger all-round open-weight agent.</div>
  </ST>

  <AccessBullets
    rows={[
["App", <span>Available in <a href="https://www.kimi.com/" target="_blank" rel="noreferrer" className="underline underline-offset-2">Kimi</a>.</span>],
["API", <span>Accessible via <a href="https://platform.kimi.ai/" target="_blank" rel="noreferrer" className="underline underline-offset-2">Kimi API</a>.</span>],
["Run locally", <span>Open weights are available from <a href="https://huggingface.co/moonshotai/Kimi-K2.7-Code" target="_blank" rel="noreferrer" className="underline underline-offset-2">Hugging Face</a>, but in practice this needs self-hosting infrastructure, not a local machine.</span>],
]}
  />
</ModelCard>

<ModelCard model={models[12]}>
  <Take>Meta's first Superintelligence Labs model leans hard into tool use, but it's a limited-access preview and weak at coding.</Take>

  <ST label="Strengths:">
    <div>Tool use is where it looks strongest - it handles native tools, MCP servers, and custom skills it hasn't seen before, and tops scaled tool-use benchmarks.</div>
    <div>It's natively multimodal across text, images, video, and documents, and it manages its own context and delegates to subagents on longer tasks.</div>
  </ST>

  <ST label="Tradeoffs:">
    <div>Access is the dealbreaker: the API has been a limited preview, so you can't reliably build on it yet. Coding trails the field, and closed weights rule out self-hosting.</div>
    <div>For dependable tool-use agents you can deploy today, Opus 4.8 or GPT-5.5 are safer.</div>
  </ST>

  <AccessBullets
    rows={[
["App", <span>Available in <a href="https://www.meta.ai/" target="_blank" rel="noreferrer" className="underline underline-offset-2">Meta AI</a>.</span>],
["API", <span>Private API preview for select users via <a href="https://ai.meta.com/blog/introducing-muse-spark-msl/" target="_blank" rel="noreferrer" className="underline underline-offset-2">Meta</a>.</span>],
]}
  />
</ModelCard>

<ModelCard model={models[13]}>
  <Take>The rare capable agent model you can actually run on one high-end machine, with vision on board - the pick when local control beats peak score.</Take>

  <ST label="Strengths:">
    <div>The most self-host-friendly model here: a dense 27B that fits on a single high-end GPU or a top-spec Apple-silicon Mac, so you get offline use, privacy, and no per-token cost.</div>
    <div>It's also one of the few open-weight picks that can see images, useful for local GUI or screenshot agents.</div>
  </ST>

  <ST label="Tradeoffs:">
    <div>It's the smallest model here, so its ceiling sits below the frontier - expect it to handle scoped tool tasks, not long-horizon runs.</div>
    <div>If you don't need local control, cloud open weights like GLM-5.2 or DeepSeek V4 Pro are far more capable for the money.</div>
  </ST>

  <AccessBullets
    rows={[
["App", <span>Available in <a href="https://chat.qwen.ai/" target="_blank" rel="noreferrer" className="underline underline-offset-2">Qwen Chat</a>.</span>],
["API", <span>Accessible via <a href="https://github.com/QwenLM/Qwen3.6" target="_blank" rel="noreferrer" className="underline underline-offset-2">Alibaba Cloud Model Studio</a>.</span>],
["Run locally", <span>If you have a high-end machine, you can run it with <a href="https://huggingface.co/docs/transformers/index" target="_blank" rel="noreferrer" className="underline underline-offset-2">Transformers</a> after downloading weights from <a href="https://huggingface.co/Qwen/Qwen3.6-27B" target="_blank" rel="noreferrer" className="underline underline-offset-2">Hugging Face</a>.</span>],
]}
  />
</ModelCard>

<ModelCard model={models[14]}>
  <Take>The cheapest model here by far, built for fast, high-volume tool loops where per-task cost matters more than peak capability.</Take>

  <ST label="Strengths:">
    <div>Effectively free per task, with a long context and a smaller active footprint that keeps tool loops fast and cheap.</div>
    <div>If your agent runs a lot of simple, well-scoped calls at high volume, this is the most economical way to do it.</div>
  </ST>

  <ST label="Tradeoffs:">
    <div>It has the lowest capability score here and a negative tool-hallucination signal, a touch more prone than average to calling nonexistent tools - so keep it to simple, scoped work.</div>
    <div>It's a server deployment, not a laptop. Step up to DeepSeek V4 Pro for real capability.</div>
  </ST>

  <AccessBullets
    rows={[
["App", <span>Available in <a href="https://chat.deepseek.com/" target="_blank" rel="noreferrer" className="underline underline-offset-2">DeepSeek</a>.</span>],
["API", <span>Accessible via <a href="https://api-docs.deepseek.com/" target="_blank" rel="noreferrer" className="underline underline-offset-2">DeepSeek API</a>.</span>],
]}
  />
</ModelCard>

***

## How to Choose

When choosing between these models, consider:

* **Access:** First decide whether you want the model in an app, called through an API, or running locally, because those paths change cost, privacy, latency, and setup work. Only Qwen3.6 27B here is a realistic single-machine option; the other open-weight picks need hosted or server-grade infrastructure, and the proprietary models rely on hosted apps or APIs.
* **Quality:** We use a combined Agent Arena and Artificial Analysis score as the main number, blending Agent Arena's Net Improvement signal with Artificial Analysis's Agentic Index into one normalized figure where higher is better.
* **Price:** We use cost per agentic task, drawn from Artificial Analysis where published, for the cleanest cross-model comparison. Some models don't publish a comparable task cost, so we mark those unavailable.
* **Tool Hallucination:** A causal signal from Agent Arena for whether a model avoids calling tools that don't exist. Positive means fewer hallucinated tool calls than the average model, negative means more. It's not a raw error rate, so weigh it alongside recovery behavior and your own tests for anything you won't be watching.

***

## Other Models We Considered

<div className="not-prose my-4 flex flex-col gap-1.5 text-sm text-zinc-700 dark:text-zinc-300">
  <Alt icon={"/images/icons/openai.com.png"} name={"GPT-5.4 mini"} dev={"OpenAI"} url={"https://developers.openai.com/api/docs/models/gpt-5.4-mini"}>A cheaper OpenAI option, but GPT-5.5 is the stronger pick.</Alt>
  <Alt icon={"/images/icons/mimo.xiaomi.com.png"} name={"MiMo-V2.5-Pro"} dev={"Xiaomi"} url={"https://mimo.xiaomi.com/mimo-v2-5-pro"}>Low-cost open weights, but the top budget picks beat it.</Alt>
  <Alt icon={"/images/icons/google.com.png"} name={"Gemini 3.1 Pro"} dev={"Google"} url={"https://ai.google.dev/gemini-api/docs/models/gemini-3.1-pro-preview"}>A familiar Gemini baseline, now behind Gemini 3.5 Flash.</Alt>
  <Alt icon={"/images/icons/qwen.ai.png"} name={"Qwen3.7 Plus"} dev={"Alibaba"} url={"https://qwen.ai/blog?id=qwen3.7-plus"}>A cheaper Qwen tier, but weaker than Qwen3.7 Max.</Alt>
  <Alt icon={"/images/icons/stepfun.ai.png"} name={"Step 3.7 Flash"} dev={"StepFun"} url={"https://github.com/stepfun-ai/Step-3.7-Flash"}>A capable open-weight option, but only a secondary agent pick.</Alt>
  <Alt icon={"/images/icons/nvidia.com.png"} name={"Nemotron 3 Ultra"} dev={"NVIDIA"} url={"https://build.nvidia.com/nvidia/nemotron-3-ultra-550b-a55b/modelcard"}>Self-hostable, but weaker agent results hold it back.</Alt>
  <Alt icon={"/images/icons/mistral.ai.png"} name={"Mistral Medium 3.5"} dev={"Mistral"} url={"https://docs.mistral.ai/models/model-cards/mistral-medium-3-5-26-04"}>Recognizable, but less convincing for agent work here.</Alt>
  <Alt icon={"/images/icons/huggingface.co.png"} name={"Ring-2.6-1T"} dev={"InclusionAI"} url={"https://huggingface.co/inclusionAI/Ring-2.6-1T"}>A huge open model, but low score and thin access.</Alt>
  <Alt icon={"/images/icons/google.com.png"} name={"Gemma 4 31B"} dev={"Google"} url={"https://huggingface.co/google/gemma-4-31B"}>Runs locally, but much weaker for agents.</Alt>
  <Alt icon={"/images/icons/meta.ai.png"} name={"Llama 4 Maverick"} dev={"Meta"} url={"https://ai.meta.com/blog/llama-4-multimodal-intelligence/"}>A familiar open model, but not a serious agent pick.</Alt>
</div>

***

## Frequently Asked Questions

<AccordionGroup>
  <Accordion title={"What is the best LLM for agents right now?"}>
    Claude Fable 5 has the highest ceiling for the hardest, longest autonomous runs. But Opus 4.8 is the better default for most work - nearly as capable, cheaper, and unusually disciplined about tool calls and flagging its own mistakes.
  </Accordion>

  <Accordion title={"What is the best LLM for agents for most people?"}>
    Opus 4.8. It's the most reliable all-rounder for tool use, computer use, and long tasks. If you run agents at high volume and want to spend less, Sonnet 5 gives you most of that reliability at a lower per-task cost.
  </Accordion>

  <Accordion title={"What is the best open-weight LLM for agents?"}>
    GLM-5.2 is the strongest open-weight agent model here and the clearest value against the proprietary frontier. If cost is the priority, DeepSeek V4 Pro delivers similar-tier capability for far less. Both need server-grade infrastructure to self-host.
  </Accordion>

  <Accordion title={"What is the cheapest LLM for agents?"}>
    DeepSeek V4 Flash is effectively free per task and fine for simple, high-volume tool loops. DeepSeek V4 Pro costs a little more and is far more capable, so it's usually the smarter cheap pick.
  </Accordion>

  <Accordion title={"What is the best LLM for agents you can run locally?"}>
    Qwen3.6 27B. It's a dense 27B model that runs on a single high-end GPU or a top-spec Apple-silicon Mac, and it can read images too. Everything more capable here is either proprietary or too large to run outside a server cluster.
  </Accordion>

  <Accordion title={"Is GPT-5.5 better than Claude Opus 4.8 for agents?"}>
    They're close. GPT-5.5 has a slight edge on terminal-style coding and precise tool selection across large tool lists. Opus 4.8 is stronger on computer use, error recovery, and catching its own mistakes, which makes it the safer choice for unsupervised runs.
  </Accordion>

  <Accordion title={"Do agent benchmarks match real-world use?"}>
    Roughly, for capability. But a high score doesn't guarantee reliable tool use - some strong models still invent tool calls, which quietly derails unattended agents. That's why we track tool hallucination separately; weight it heavily for anything you won't be watching.
  </Accordion>

  <Accordion title={"What matters most when choosing a model for agents?"}>
    Reliability under autonomy, not just raw score. Decide your access route first, then weigh tool-call discipline and error recovery for unsupervised work, and match cost to your task volume. Peak capability matters least if the model drifts the moment you look away.
  </Accordion>
</AccordionGroup>
