% Competitive landscape: Openness vs Performance
% Requires: \usepackage{pgfplots}
% Requires: \pgfplotsset{compat=1.18}
\begin{tikzpicture}
\begin{axis}[
    width=11cm,
    height=8cm,
    xlabel={Openness},
    ylabel={Performance (\%)},
    xlabel style={font=\small},
    ylabel style={font=\small},
    xticklabel style={font=\small},
    yticklabel style={font=\small},
    xmin=-0.05,
    xmax=1.15,
    ymin=15,
    ymax=95,
    xtick={0, 0.5, 1.0},
    xticklabels={Closed, , Open-Source},
    ytick={20, 30, 40, 50, 60, 70, 80, 90},
    grid=major,
    grid style={gray!20},
    axis lines*=left,
    clip=false,
    % Quadrant shading
    axis background/.style={fill=white},
]

% Light quadrant shading for open+high-perf region
\fill[green!5] (axis cs:0.5,50) rectangle (axis cs:1.15,95);

% --- Agents as labeled points ---

% Claude Code: closed, high performance
\addplot[
    only marks,
    mark=*,
    mark size=4pt,
    gray!70,
] coordinates {(0.1, 80.9)};
\node[font=\footnotesize, anchor=south west, text=gray!70!black]
    at (axis cs:0.14, 81.5) {Claude Code};

% Cursor: closed, estimated
\addplot[
    only marks,
    mark=*,
    mark size=4pt,
    gray!50,
] coordinates {(0.1, 65)};
\node[font=\footnotesize, anchor=north west, text=gray!60!black]
    at (axis cs:0.14, 64) {Cursor};

% OpenHands: open, good performance
\addplot[
    only marks,
    mark=*,
    mark size=4pt,
    blue!60,
] coordinates {(0.9, 60.6)};
\node[font=\footnotesize, anchor=south east, text=blue!60!black]
    at (axis cs:0.87, 61.2) {OpenHands};

% smolagents: open, lower
\addplot[
    only marks,
    mark=*,
    mark size=4pt,
    blue!40,
] coordinates {(0.9, 42)};
\node[font=\footnotesize, anchor=north east, text=blue!50!black]
    at (axis cs:0.87, 41) {smolagents};

% Aider: open, lower performance
\addplot[
    only marks,
    mark=*,
    mark size=4pt,
    blue!40,
] coordinates {(0.9, 26.3)};
\node[font=\footnotesize, anchor=north east, text=blue!50!black]
    at (axis cs:0.87, 25.3) {Aider};

% === Harness (ours): STAR marker, prominent ===
\addplot[
    only marks,
    mark=star,
    mark size=7pt,
    mark options={
        fill=red!70!orange,
        draw=red!80!black,
        line width=0.8pt,
    },
] coordinates {(0.9, 78)};
\node[
    font=\small\bfseries,
    anchor=south west,
    text=red!70!black,
    fill=yellow!15,
    draw=red!40,
    rounded corners=2pt,
    inner sep=2pt,
] at (axis cs:0.93, 78.5) {Harness (ours)};

% Annotation: Harness-Bench 100% with GPT-5.2
\node[
    font=\tiny,
    text=red!60!black,
    anchor=north west,
] at (axis cs:0.93, 77.5) {100\% Harness-Bench (GPT-5.2)};

% Dashed line separating open vs closed
\draw[gray!40, dashed, thin] (axis cs:0.5, 15) -- (axis cs:0.5, 95);

% Region labels
\node[font=\tiny, text=gray!50, rotate=90] at (axis cs:0.25, 55) {Proprietary};
\node[font=\tiny, text=gray!50, rotate=90] at (axis cs:0.75, 55) {Open Source};

\end{axis}
\end{tikzpicture}
