> ## Documentation Index
> Fetch the complete documentation index at: https://factory-docs-cli-sandbox-mcp-whole-process.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Agent Arena

> AI コーディングエージェント向けの Agent Arena の結果と方法論。

export const EloChart = ({data, valueKey = "elo", labelKey = "name", baseline = 1200}) => {
  const values = data.map(d => d[valueKey]);
  const maxDelta = Math.max(...values.map(v => Math.abs(v - baseline)));
  return <div className="space-y-3 my-6 not-prose">
      {data.map((item, idx) => {
    const value = item[valueKey];
    const delta = value - baseline;
    const barWidth = Math.abs(delta) / maxDelta * 40;
    const isAbove = delta >= 0;
    const isDroid = item[labelKey].toLowerCase().includes('droid') || item[labelKey].toLowerCase().includes('factory');
    return <div key={idx}>
            <div className="flex items-center gap-2 mb-1.5">
              <span className="w-6 text-sm font-mono text-zinc-400 dark:text-zinc-500 text-right">
                {idx + 1}
              </span>
              <span className="text-sm font-medium text-zinc-900 dark:text-zinc-100">
                {item[labelKey]}
              </span>
            </div>
            <div className="flex items-center gap-3">
              <div className="w-6" />
              <div className="flex-1 h-7 relative flex items-center">
                <div className="absolute left-1/2 top-0 bottom-0 w-px border-l border-dashed border-zinc-400 dark:border-zinc-500" />
                <div className="absolute top-0 bottom-0 rounded-sm transition-all duration-500" style={{
      width: `${barWidth}%`,
      left: isAbove ? '50%' : `${50 - barWidth}%`,
      background: isDroid ? 'linear-gradient(to right, #f97316, #fb923c)' : isAbove ? 'linear-gradient(to right, #a1a1aa, #d4d4d8)' : 'linear-gradient(to right, #d4d4d8, #a1a1aa)'
    }} />
                <span className="absolute text-xs font-mono text-zinc-600 dark:text-zinc-400" style={{
      left: isAbove ? `${50 + barWidth + 1}%` : `${50 - barWidth - 1}%`,
      transform: isAbove ? 'none' : 'translateX(-100%)'
    }}>
                  {value}
                </span>
              </div>
            </div>
          </div>;
  })}
      <div className="flex items-center gap-3 mt-1">
        <div className="w-6" />
        <div className="flex-1 relative h-4">
          <div className="absolute left-1/2 -translate-x-1/2 text-xs font-mono text-zinc-400 dark:text-zinc-500">
            {baseline}
          </div>
        </div>
      </div>
    </div>;
};

export const agentArenaData = [{
  name: "Factory Droid",
  elo: 1330
}, {
  name: "OpenAI Codex",
  elo: 1301
}, {
  name: "Devin",
  elo: 1263
}, {
  name: "Claude Code",
  elo: 1242
}, {
  name: "Cursor",
  elo: 1120
}, {
  name: "Gemini CLI",
  elo: 937
}];

AI エージェントが複雑なタスクに取り組み、現実世界の問題を自律的に解決する能力を競う、[Design Arena](https://designarena.ai) のクラウドソーシング型ベンチマークです。順位は、実際のユーザーによる 1 対 1 の比較投票から算出された Elo レーティングによって決まります。

### Elo レーティング

<EloChart data={agentArenaData} baseline={1200} />

*最終更新: 2025年12月*

### 方法論

1. **タスク割り当て** - 両方のエージェントに同一の複雑なタスク仕様を与えます
2. **自律実行** - 各エージェントが独立してタスクの完了に取り組みます
3. **並列比較** - 出力結果が人間の投票者に並べて提示されます
4. **Elo スコアリング** - 結果が Bradley-Terry に基づく Elo レーティングに反映されます

| 項目        | 説明                  |
| --------- | ------------------- |
| **タスク完了** | 割り当てられた目標を正常に達成できるか |
| **出力品質**  | 最終成果物の正確さと仕上がり      |
| **効率性**   | リソース使用量と実行速度        |
| **堅牢性**   | エッジケースや予期しない状況への対応  |

<Card title="Agent Arena ランキング" icon="trophy" href="https://www.designarena.ai/leaderboard/agents">
  ライブランキングを確認し、エージェント比較に投票する
</Card>
