OpenScience

OpenScience

The #1 scientific agent, open source

Synthetic Sciences September 2026

75.7%
Terminal-Bench Science
+7.6 over Codex 68.1
82.2
BiomniBench-DA
+1.2 over AIPOCH 81.04
71.4%
Terminal-Bench 4.0 science
+11.4 over Claude Code 60
47.3%
OpenScience Bench
+6.7 over Claude Science 40.6

Benchmarks for agentic scientific research

OpenScience leads every public benchmark for agentic scientific research that we have run. Each benchmark runs in its native environment, with its own verifiers or judge, through Harbor on Modal, and we report each in its own metric. Every other entry shown is from the benchmark's public leaderboard or a published comparison on the same tasks and grader.2

Terminal-Bench Science

Terminal-Bench Science is 70 long-horizon research tasks, each with its own verifier and an 8-hour limit, in fields from cosmological inference and spatial transcriptomics to formal proof and hydrology. OpenScience solves 75.7%. The strongest public entry, Codex with the same lead model (GPT-6 Astra), solves 68.1%; the strongest Claude Code entry (Opus 5.5) solves 63.3%.

Terminal-Bench Scienceresolution rate, % of 70 tasks, every public entryother agentsClaude CodeCodexOpenScience0255075100OpenScience · GPT-6 Astra75.7Codex · GPT-6 Astra68.1Claude Code · Opus 5.563.3Claude Code · Fable 5.140.0Claude Code · Opus 530.0Codex · GPT-5.6 Sol22.4Claude Code · Fable 521.4Codex · DeepSeek V4.1 Flash15.7Grok Build · Grok 4.714.3mini-SWE-agent · Gemini 3.8 Flash12.4Claude Code · Opus 4.810.5Codex · GPT-5.6 Terra8.6Claude Code · GLM 5.38.1Claude Code · Kimi K37.1Grok Build · Grok 4.67.1mini-SWE-agent · Gemini 3.7 Flash5.7Codex · DeepSeek V4 Pro3.8Codex · GPT-5.6 Luna3.3
Figure 1.OpenScience and all 17 entries on the public Terminal-Bench Science leaderboard.

The margin is largest in the life sciences, 73.7% against 59.6% for Codex. Engineering, with nine tasks, is the one domain where Codex is ahead (70.4% against 55.6%).

OpenScienceCodex · GPT-6 AstraClaude Code · Opus 5.50255075100All 70 tasks68.1%63.3%75.7%75.7Life sciences (19)59.6%54.4%73.7%73.7Physical sciences (17)58.8%60.8%76.5%76.5Earth sciences (8)79.2%62.5%87.5%87.5Mathematics (17)80.4%76.5%82.4%82.4Engineering (9)70.4%63.0%55.6%55.6
Figure 2.Resolution rate by scientific domain for OpenScience and the strongest Codex and Claude Code entries. Numbers above the rows are OpenScience's.

OpenScience also solved 2 tasks, cmb-cross-inference and variable-star-vetting, that no leaderboard entry solved in any of its 51 attempts.

Lifeambient-rna-correction · OpenScience: 1/1ambient-rna-correction · Codex · GPT-6 Astra: 3/3ambient-rna-correction · Claude Code · Opus 5.5: 3/3clinical-metadata-recovery · OpenScience: 1/1clinical-metadata-recovery · Codex · GPT-6 Astra: 3/3clinical-metadata-recovery · Claude Code · Opus 5.5: 3/3dapi-he-alignment · OpenScience: 1/1dapi-he-alignment · Codex · GPT-6 Astra: 3/3dapi-he-alignment · Claude Code · Opus 5.5: 3/3animal-reid · OpenScience: 1/1animal-reid · Codex · GPT-6 Astra: 2/3animal-reid · Claude Code · Opus 5.5: 3/3betalactam-multimodal-transfer · OpenScience: 1/1betalactam-multimodal-transfer · Codex · GPT-6 Astra: 2/3betalactam-multimodal-transfer · Claude Code · Opus 5.5: 3/3foraging-cognitive-model · OpenScience: 1/1foraging-cognitive-model · Codex · GPT-6 Astra: 2/3foraging-cognitive-model · Claude Code · Opus 5.5: 3/3ont-tn-qc · OpenScience: 1/1ont-tn-qc · Codex · GPT-6 Astra: 3/3ont-tn-qc · Claude Code · Opus 5.5: 2/3eeg-erp-recovery · OpenScience: 1/1eeg-erp-recovery · Codex · GPT-6 Astra: 3/3eeg-erp-recovery · Claude Code · Opus 5.5: 1/3genomic-model-ranking · OpenScience: 1/1genomic-model-ranking · Codex · GPT-6 Astra: 3/3genomic-model-ranking · Claude Code · Opus 5.5: 1/3qsm-reconstruction · OpenScience: 1/1qsm-reconstruction · Codex · GPT-6 Astra: 3/3qsm-reconstruction · Claude Code · Opus 5.5: 1/3ankle-mri-findings · OpenScience: 1/1ankle-mri-findings · Codex · GPT-6 Astra: 1/3ankle-mri-findings · Claude Code · Opus 5.5: 2/3cilia-segmentation · OpenScience: 1/1cilia-segmentation · Codex · GPT-6 Astra: 0/3cilia-segmentation · Claude Code · Opus 5.5: 3/3diag-chipseq · OpenScience: 1/1diag-chipseq · Codex · GPT-6 Astra: 2/3diag-chipseq · Claude Code · Opus 5.5: 0/3spatial-cell-annotation · OpenScience: 1/1spatial-cell-annotation · Codex · GPT-6 Astra: 0/3spatial-cell-annotation · Claude Code · Opus 5.5: 2/3cell-lineage-reconstruction · OpenScience: 0/1cell-lineage-reconstruction · Codex · GPT-6 Astra: 2/3cell-lineage-reconstruction · Claude Code · Opus 5.5: 1/3protein-active-learning · OpenScience: 0/1protein-active-learning · Codex · GPT-6 Astra: 2/3protein-active-learning · Claude Code · Opus 5.5: 0/3longitudinal-clinical-agent · OpenScience: 0/1longitudinal-clinical-agent · Codex · GPT-6 Astra: 0/3longitudinal-clinical-agent · Claude Code · Opus 5.5: 0/3mri-harmonization · OpenScience: 0/1mri-harmonization · Codex · GPT-6 Astra: 0/3mri-harmonization · Claude Code · Opus 5.5: 0/3tumor-immune-interface · OpenScience: 0/1tumor-immune-interface · Codex · GPT-6 Astra: 0/3tumor-immune-interface · Claude Code · Opus 5.5: 0/3Physicalfrustrated-heisenberg-nqs · OpenScience: 1/1frustrated-heisenberg-nqs · Codex · GPT-6 Astra: 3/3frustrated-heisenberg-nqs · Claude Code · Opus 5.5: 3/3geometric-pharmacophore-alignment · OpenScience: 1/1geometric-pharmacophore-alignment · Codex · GPT-6 Astra: 3/3geometric-pharmacophore-alignment · Claude Code · Opus 5.5: 3/3inverse-lithography · OpenScience: 1/1inverse-lithography · Codex · GPT-6 Astra: 3/3inverse-lithography · Claude Code · Opus 5.5: 3/3leaky-bloch-meep · OpenScience: 1/1leaky-bloch-meep · Codex · GPT-6 Astra: 3/3leaky-bloch-meep · Claude Code · Opus 5.5: 3/3neo-orbit-determination · OpenScience: 1/1neo-orbit-determination · Codex · GPT-6 Astra: 3/3neo-orbit-determination · Claude Code · Opus 5.5: 3/3spin-glass-groundstate · OpenScience: 1/1spin-glass-groundstate · Codex · GPT-6 Astra: 3/3spin-glass-groundstate · Claude Code · Opus 5.5: 3/3stacking-disorder-diffraction · OpenScience: 1/1stacking-disorder-diffraction · Codex · GPT-6 Astra: 3/3stacking-disorder-diffraction · Claude Code · Opus 5.5: 3/3xrd-multiphase-qpa · OpenScience: 1/1xrd-multiphase-qpa · Codex · GPT-6 Astra: 3/3xrd-multiphase-qpa · Claude Code · Opus 5.5: 2/3inverse-waveguide-shape · OpenScience: 1/1inverse-waveguide-shape · Codex · GPT-6 Astra: 3/3inverse-waveguide-shape · Claude Code · Opus 5.5: 1/3rv-astrometry-fitting · OpenScience: 1/1rv-astrometry-fitting · Codex · GPT-6 Astra: 2/3rv-astrometry-fitting · Claude Code · Opus 5.5: 2/3rdkit-ic-constraints · OpenScience: 1/1rdkit-ic-constraints · Codex · GPT-6 Astra: 0/3rdkit-ic-constraints · Claude Code · Opus 5.5: 3/3cmb-cross-inference: solved only by OpenSciencecmb-cross-inference · OpenScience: 1/1cmb-cross-inference · Codex · GPT-6 Astra: 0/3cmb-cross-inference · Claude Code · Opus 5.5: 0/3variable-star-vetting: solved only by OpenSciencevariable-star-vetting · OpenScience: 1/1variable-star-vetting · Codex · GPT-6 Astra: 0/3variable-star-vetting · Claude Code · Opus 5.5: 0/3nanoindentation-property-extraction · OpenScience: 0/1nanoindentation-property-extraction · Codex · GPT-6 Astra: 1/3nanoindentation-property-extraction · Claude Code · Opus 5.5: 1/3tess-transit-vetting · OpenScience: 0/1tess-transit-vetting · Codex · GPT-6 Astra: 0/3tess-transit-vetting · Claude Code · Opus 5.5: 1/33x2pt-inference · OpenScience: 0/13x2pt-inference · Codex · GPT-6 Astra: 0/33x2pt-inference · Claude Code · Opus 5.5: 0/3si-fracture-fbc · OpenScience: 0/1si-fracture-fbc · Codex · GPT-6 Astra: 0/3si-fracture-fbc · Claude Code · Opus 5.5: 0/3Earthduan-thesis · OpenScience: 1/1duan-thesis · Codex · GPT-6 Astra: 3/3duan-thesis · Claude Code · Opus 5.5: 3/3hysteretic-aquifer-control · OpenScience: 1/1hysteretic-aquifer-control · Codex · GPT-6 Astra: 3/3hysteretic-aquifer-control · Claude Code · Opus 5.5: 3/3sparse-network-assimilation · OpenScience: 1/1sparse-network-assimilation · Codex · GPT-6 Astra: 3/3sparse-network-assimilation · Claude Code · Opus 5.5: 3/3mendota-ice-phenology · OpenScience: 1/1mendota-ice-phenology · Codex · GPT-6 Astra: 3/3mendota-ice-phenology · Claude Code · Opus 5.5: 2/3masked-spherical-remap · OpenScience: 1/1masked-spherical-remap · Codex · GPT-6 Astra: 3/3masked-spherical-remap · Claude Code · Opus 5.5: 1/3stereo-dem-icesat2 · OpenScience: 1/1stereo-dem-icesat2 · Codex · GPT-6 Astra: 2/3stereo-dem-icesat2 · Claude Code · Opus 5.5: 2/3hbv-calibration-1 · OpenScience: 1/1hbv-calibration-1 · Codex · GPT-6 Astra: 2/3hbv-calibration-1 · Claude Code · Opus 5.5: 0/3supraglacial-lake-classification · OpenScience: 0/1supraglacial-lake-classification · Codex · GPT-6 Astra: 0/3supraglacial-lake-classification · Claude Code · Opus 5.5: 1/3Mathematicsamr-poisson-optimize · OpenScience: 1/1amr-poisson-optimize · Codex · GPT-6 Astra: 3/3amr-poisson-optimize · Claude Code · Opus 5.5: 3/3certified-sparse-regression · OpenScience: 1/1certified-sparse-regression · Codex · GPT-6 Astra: 3/3certified-sparse-regression · Claude Code · Opus 5.5: 3/3dna-storage-codec · OpenScience: 1/1dna-storage-codec · Codex · GPT-6 Astra: 3/3dna-storage-codec · Claude Code · Opus 5.5: 3/3energy-routing · OpenScience: 1/1energy-routing · Codex · GPT-6 Astra: 3/3energy-routing · Claude Code · Opus 5.5: 3/3finite-free-stam · OpenScience: 1/1finite-free-stam · Codex · GPT-6 Astra: 3/3finite-free-stam · Claude Code · Opus 5.5: 3/3koopman-mfg-id · OpenScience: 1/1koopman-mfg-id · Codex · GPT-6 Astra: 3/3koopman-mfg-id · Claude Code · Opus 5.5: 3/3ode-law-discovery · OpenScience: 1/1ode-law-discovery · Codex · GPT-6 Astra: 3/3ode-law-discovery · Claude Code · Opus 5.5: 3/3regularized-game-proof · OpenScience: 1/1regularized-game-proof · Codex · GPT-6 Astra: 3/3regularized-game-proof · Claude Code · Opus 5.5: 3/3gen-turan-paths · OpenScience: 1/1gen-turan-paths · Codex · GPT-6 Astra: 3/3gen-turan-paths · Claude Code · Opus 5.5: 2/3noisy-blackbox-optimization · OpenScience: 1/1noisy-blackbox-optimization · Codex · GPT-6 Astra: 2/3noisy-blackbox-optimization · Claude Code · Opus 5.5: 3/3onsager-ising-lean · OpenScience: 1/1onsager-ising-lean · Codex · GPT-6 Astra: 2/3onsager-ising-lean · Claude Code · Opus 5.5: 3/3linked-cell-suppression · OpenScience: 1/1linked-cell-suppression · Codex · GPT-6 Astra: 3/3linked-cell-suppression · Claude Code · Opus 5.5: 0/3small-area-equivalence · OpenScience: 1/1small-area-equivalence · Codex · GPT-6 Astra: 3/3small-area-equivalence · Claude Code · Opus 5.5: 0/3symbolic-regression · OpenScience: 1/1symbolic-regression · Codex · GPT-6 Astra: 1/3symbolic-regression · Claude Code · Opus 5.5: 2/3localized-sspd-solver · OpenScience: 0/1localized-sspd-solver · Codex · GPT-6 Astra: 2/3localized-sspd-solver · Claude Code · Opus 5.5: 3/3traffic-flux-inversion · OpenScience: 0/1traffic-flux-inversion · Codex · GPT-6 Astra: 0/3traffic-flux-inversion · Claude Code · Opus 5.5: 2/3highdim-mediation-debiasing · OpenScience: 0/1highdim-mediation-debiasing · Codex · GPT-6 Astra: 1/3highdim-mediation-debiasing · Claude Code · Opus 5.5: 0/3Engineeringmicroarch-modeling · OpenScience: 1/1microarch-modeling · Codex · GPT-6 Astra: 3/3microarch-modeling · Claude Code · Opus 5.5: 3/3navigation-sensor-calibration · OpenScience: 1/1navigation-sensor-calibration · Codex · GPT-6 Astra: 3/3navigation-sensor-calibration · Claude Code · Opus 5.5: 3/3rolling-shutter-oma · OpenScience: 1/1rolling-shutter-oma · Codex · GPT-6 Astra: 3/3rolling-shutter-oma · Claude Code · Opus 5.5: 3/3inelastic-constitutive-discovery · OpenScience: 1/1inelastic-constitutive-discovery · Codex · GPT-6 Astra: 3/3inelastic-constitutive-discovery · Claude Code · Opus 5.5: 2/3reactor-safety-control · OpenScience: 0/1reactor-safety-control · Codex · GPT-6 Astra: 3/3reactor-safety-control · Claude Code · Opus 5.5: 3/3baseline-free-localization · OpenScience: 1/1baseline-free-localization · Codex · GPT-6 Astra: 1/3baseline-free-localization · Claude Code · Opus 5.5: 0/3tamp-skill-planning · OpenScience: 0/1tamp-skill-planning · Codex · GPT-6 Astra: 1/3tamp-skill-planning · Claude Code · Opus 5.5: 3/3guided-wave-localization · OpenScience: 0/1guided-wave-localization · Codex · GPT-6 Astra: 1/3guided-wave-localization · Claude Code · Opus 5.5: 0/3virtual-baseline-localization · OpenScience: 0/1virtual-baseline-localization · Codex · GPT-6 Astra: 1/3virtual-baseline-localization · Claude Code · Opus 5.5: 0/3OpenScience76%Codex · GPT-6 Astra68%Claude Code · Opus 5.563%
Figure 3.Every Terminal-Bench Science task, grouped by domain. Cell shade is the fraction of attempts that passed (OpenScience one, leaderboard entries three); open cells never passed. Triangles mark tasks that only OpenScience solved.
6 min30 min2 h8 h limitspatial-cell-annotation: solved, 0.17 hspatial-cell-annotationtumor-immune-interface: not solved, 0.25 htumor-immune-interfaceregularized-game-proof: solved, 0.30 hregularized-game-proofdiag-chipseq: solved, 0.35 hdiag-chipseqankle-mri-findings: solved, 0.37 hankle-mri-findingseeg-erp-recovery: solved, 0.37 heeg-erp-recoveryvariable-star-vetting: solved, 0.40 hvariable-star-vettingkoopman-mfg-id: solved, 0.42 hkoopman-mfg-idrdkit-ic-constraints: solved, 0.44 hrdkit-ic-constraintsont-tn-qc: solved, 0.53 hont-tn-qcgenomic-model-ranking: solved, 0.54 hgenomic-model-rankingsupraglacial-lake-classification: not solved, 0.55 hsupraglacial-lake-classificationsmall-area-equivalence: solved, 0.56 hsmall-area-equivalencenanoindentation-property-extraction: not solved, 0.58 hnanoindentation-property-extractionclinical-metadata-recovery: solved, 0.59 hclinical-metadata-recoverymendota-ice-phenology: solved, 0.62 hmendota-ice-phenologylongitudinal-clinical-agent: not solved, 0.64 hlongitudinal-clinical-agentforaging-cognitive-model: solved, 0.66 hforaging-cognitive-modelbetalactam-multimodal-transfer: solved, 0.68 hbetalactam-multimodal-transfermasked-spherical-remap: solved, 0.72 hmasked-spherical-remapsymbolic-regression: solved, 0.73 hsymbolic-regressionneo-orbit-determination: solved, 0.74 hneo-orbit-determinationlinked-cell-suppression: solved, 0.80 hlinked-cell-suppressionduan-thesis: solved, 0.84 hduan-thesisxrd-multiphase-qpa: solved, 0.85 hxrd-multiphase-qpaenergy-routing: solved, 0.86 henergy-routingdapi-he-alignment: solved, 0.87 hdapi-he-alignmentspin-glass-groundstate: solved, 0.89 hspin-glass-groundstateleaky-bloch-meep: solved, 0.92 hleaky-bloch-meephbv-calibration-1: solved, 0.93 hhbv-calibration-1ambient-rna-correction: solved, 0.94 hambient-rna-correctioninverse-lithography: solved, 0.96 hinverse-lithographycilia-segmentation: solved, 0.96 hcilia-segmentationode-law-discovery: solved, 0.97 hode-law-discoverygen-turan-paths: solved, 1.01 hgen-turan-pathslocalized-sspd-solver: not solved, 1.08 hlocalized-sspd-solvergeometric-pharmacophore-alignment: solved, 1.11 hgeometric-pharmacophore-alignmentbaseline-free-localization: solved, 1.15 hbaseline-free-localizationtamp-skill-planning: not solved, 1.16 htamp-skill-planningmri-harmonization: not solved, 1.17 hmri-harmonizationfinite-free-stam: solved, 1.20 hfinite-free-stamsparse-network-assimilation: solved, 1.24 hsparse-network-assimilationprotein-active-learning: not solved, 1.52 hprotein-active-learningvirtual-baseline-localization: not solved, 1.72 hvirtual-baseline-localizationhighdim-mediation-debiasing: not solved, 1.73 hhighdim-mediation-debiasingmicroarch-modeling: solved, 1.79 hmicroarch-modelingrolling-shutter-oma: solved, 1.86 hrolling-shutter-omaamr-poisson-optimize: solved, 1.86 hamr-poisson-optimizeguided-wave-localization: not solved, 2.00 hguided-wave-localizationcmb-cross-inference: solved, 2.09 hcmb-cross-inferenceonsager-ising-lean: solved, 2.38 honsager-ising-leanqsm-reconstruction: solved, 2.48 hqsm-reconstructioninverse-waveguide-shape: solved, 2.54 hinverse-waveguide-shape3x2pt-inference: not solved, 2.60 h3x2pt-inferencetraffic-flux-inversion: not solved, 2.61 htraffic-flux-inversionrv-astrometry-fitting: solved, 2.62 hrv-astrometry-fittingstacking-disorder-diffraction: solved, 2.77 hstacking-disorder-diffractionnoisy-blackbox-optimization: solved, 2.93 hnoisy-blackbox-optimizationhysteretic-aquifer-control: solved, 3.09 hhysteretic-aquifer-controlnavigation-sensor-calibration: solved, 3.21 hnavigation-sensor-calibrationdna-storage-codec: solved, 4.41 hdna-storage-codectess-transit-vetting: not solved, 5.81 htess-transit-vettingcell-lineage-reconstruction: not solved, 5.92 hcell-lineage-reconstructionreactor-safety-control: not solved, 6.27 hreactor-safety-controlcertified-sparse-regression: solved, 6.34 hcertified-sparse-regressionanimal-reid: solved, 6.60 hanimal-reidsi-fracture-fbc: not solved, 7.01 hsi-fracture-fbcfrustrated-heisenberg-nqs: solved, 8.00 hfrustrated-heisenberg-nqsinelastic-constitutive-discovery: solved, regraded, time not recordedinelastic-constitutive-discovery *stereo-dem-icesat2: solved, regraded, time not recordedstereo-dem-icesat2 *53/70solved
Figure 4.OpenScience's wall-clock time per task (spoke length, log scale; the dashed ring is the 8-hour limit), ordered by time. Filled dots passed. The two tasks marked * were regraded after the run and have no recorded time.

Terminal-Bench 4.0

On the 14 science tasks of Terminal-Bench 4.0 OpenScience solves 71.4%. We scored all 27 public entries on the same tasks from their published per-trial results: the best is Claude Code with Fable 5.1 (high) at 60%, and the best Codex entry reaches 45.7%.

Terminal-Bench 4.0, science tasksresolution rate, % of 14 tasks, every public entryother agentsClaude CodeCodexOpenScience0255075100OpenScience · GPT-6 Astra (high)71.4Claude Code · Fable 5.1 (high)60.0Claude Code · Fable 5.1 (max)52.9Claude Code · Fable 5.1 (medium)52.9Claude Code · Fable 5.1 (xhigh)50.0Claude Code · Opus 5 (xhigh)50.0Claude Code · Opus 5 (max)47.1Codex · GPT-6 Astra (high)45.7Codex · GPT-6 Astra (xhigh)44.3Claude Code · GLM-5.3 (max)44.3Codex · GPT-6 Astra (max)42.9Claude Code · Opus 5 (high)42.9Claude Code · Fable 5.1 (low)42.9Codex · GPT-6 Astra (medium)40.0Claude Code · Opus 5 (medium)38.6Claude Code · Fable 5 (max)38.6Codex · GPT-5.6 Sol (max)38.6Codex · GPT-6 Astra (low)34.3Claude Code · Opus 5 (low)34.3Claude Code · Opus 4.8 (max)31.4Grok Build · Grok 4.7 (xhigh)30.0Codex · GPT-5.6 Luna (max)21.4Codex · GPT-5.6 Terra (max)20.0Grok Build · Grok 4.6 (high)20.0mini-SWE-agent · Gemini 3.7 Flash (high)15.7mini-SWE-agent · Gemini 3.8 Flash (high)14.3Claude Code · Sonnet 5 (max)11.4Grok Build · Grok 4.5 (high)10.0
Figure 5.OpenScience and every public Terminal-Bench 4.0 entry on the 14 science tasks. Reasoning effort in parentheses.

BiomniBench-DA

BiomniBench-DA asks for open-ended analyses of published biomedical datasets. The agent may not read the source paper, and a Gemini 3.1 Pro judge grades the full trace against a rubric written with the paper's authors. Over the 50 public tasks OpenScience averages 82.2, with 20 perfect scores. AIPOCH Open Science reports 81.04 under the same judge, and OmicOS 76.6.

BiomniBench-DAmean rubric score, 50 tasks, Gemini 3.1 Pro judgeother agentsClaude CodeOpenScience0255075100OpenScience · GPT-6 Sol82.2AIPOCH Open Science · GPT-5.6 Sol81.04OmicOS · DeepSeek V4 Pro76.6Claude Code (CSSwitch) · DeepSeek V4 Pro68.6EvoScientist · DeepSeek V4 Pro65.3ai4s-research/open-science · DeepSeek V4 Pro63.1Biomni · DeepSeek V4 Pro62.6OpenScience · DeepSeek V4 Pro *62.2Wisp Science · DeepSeek V4 Pro61.8
Figure 6.OpenScience and the published BiomniBench-DA results on the same 50 tasks and judge. The row marked * is OpenScience run by the BiomniBench-AI4S authors with DeepSeek V4 Pro, the model every entry below AIPOCH uses.
0102030405060708090100OpenScience mean 82.2AIPOCH Open Science 81.04da-20-4da-20-4: 23da-6-2: 35da-26-2: 43da-19-4: 45da-25-1: 46da-20-1: 48da-26-4: 56da-18-7: 57da-18-5: 59da-13-5: 60da-4-6: 65da-19-6: 67da-8-2: 72da-8-3: 73da-4-7: 76da-9-1: 76da-15-8: 80da-19-1: 80da-24-3: 80da-10-1: 84da-17-1: 84da-14-3: 85da-15-2: 85da-14-8: 86da-12-2: 87da-20-3: 88da-13-6: 90da-17-3: 91da-1-4: 92da-1-3: 95da-10-3: 100da-11-1: 100da-12-4: 100da-13-1: 100da-13-3: 100da-14-1: 100da-15-1: 100da-15-7: 100da-16-1: 100da-17-5: 100da-18-1: 100da-19-3: 100da-3-4: 100da-3-5: 100da-4-1: 100da-5-1: 100da-5-3: 100da-6-5: 100da-8-1: 100da-9-7: 100
Figure 7.OpenScience's score on each of the 50 BiomniBench-DA tasks.

OpenScience Bench

The public benchmarks each test part of the work. OpenScience Bench, our internal benchmark, measures end-to-end scientific research, and every entry is scored pass@3. OpenScience with GPT-6 Astra scores 47.3%, ahead of Claude Science with Fable 5.1 (40.6%), K-Dense (BYOK) with GPT-6 Astra (40.3%) and Codex with GPT-6 Astra (38.1%); Grok Build with Grok 4.7 scores 12.2%. Three of those entries run the same model, so their gap is the harness: 7.0 points over K-Dense and 9.2 over Codex.

OpenScience Benchend-to-end scientific research, pass@3 for every entry0204060OpenScience · GPT-6 Astra47.3Claude Science · Fable 5.140.6K-Dense (BYOK) · GPT-6 Astra40.3Codex · GPT-6 Astra38.1Grok Build · Grok 4.712.2
Figure 8.OpenScience Bench, pass@3 for every entry. The model each harness ran is after the dot.

How OpenScience works

At the centre is a small, general agent loop. The science lives around it: in skills, in the agent definitions, and in a prompt header for each model family. A few optional harness units add checks at the end of a turn: one re-reads a written report against the original request in a fresh context, another enforces the budget. A unit stays only if it improves measured outcomes.

Because the loop is model-agnostic, the product is too. The science instructions are identical across model families, no built-in agent is tied to a model, and each lab can run the model it trusts.

skills371 in 18 categories, loaded on demandyour goalresearch agentlead: plans, delegates, synthesisestoolsshellPython and R kernelsfilesliterature, 42 databasescomputelocal machineSSH, Slurm, PBSModalResultswith provenancebriefreport andverificationexploregeneralmlbiologyphysicschemistrydataworkers
Figure 9.How a request moves through OpenScience. The lead agent loads skills as a task needs them, sends briefs to workers and gets back reports with a verification, calls tools and compute, and returns Results with their provenance.

An agent built for scientific work

Scientific work follows procedures, and OpenScience carries 371 of them as skills in 18 categories: how a field runs a single-cell analysis, a docking screen, a DESeq2 contrast or a Lean proof. The agent always sees an index and loads a skill's full text when a task needs it. Much of the library comes from other groups: 180 skills from K-Dense, 79 from Orchestra Research, and more from Hugging Face, Anthropic and NVIDIA BioNeMo.

Natural sciencesMachine learningData & infrastructureResearch craftbiologyanndata (biology)benchling-integration (biology)bids (biology)bioimage-analysis (biology)bionemo-nims (biology)biopython (biology)bioservices (biology)bulk-rnaseq (biology)cancer-genomics-analysis (biology)clinical-decision-support (biology)clinical-imaging (biology)clinical-reports (biology)cobrapy (biology)curated-bio-datasets (biology)deepspot-m (biology)deeptools (biology)dnanexus-integration (biology)esm (biology)etetoolkit (biology)flow-cytometry-analysis (biology)flowio (biology)folklore-variant-evidence (biology)genomic-coordinates (biology)genomic-intelligence (biology)gget (biology)ginkgo-cloud-lab (biology)glycobiology (biology)glycoengineering (biology)histolab (biology)immunology-assays (biology)lamindb (biology)latchbio-integration (biology)marker-panel-annotation (biology)microbial-dynamics (biology)molecular-cloning (biology)neurokit2 (biology)neuropixels-analysis (biology)nextflow (biology)omero-integration (biology)opentrons-integration (biology)pacsomatic (biology)pathml (biology)pathogen-variant-surveillance (biology)pathway-enrichment (biology)pharmacology-wetlab (biology)phylogenetics (biology)polars-bio (biology)protein-binder-design (biology)protocolsio-integration (biology)pydeseq2 (biology)pydicom (biology)pyhealth (biology)pylabrobot (biology)pysam (biology)relsa-severity-assessment (biology)scanpy (biology)scikit-bio (biology)scikit-survival (biology)scvelo (biology)scvi-tools (biology)structure-analysis (biology)synthetic-biology (biology)tamarind (biology)tiledbvcf (biology)treatment-plans (biology)waypoint-bio (biology)66chemistryadmet-prediction (chemistry)admet-reasoning (chemistry)analytical-method-validation (chemistry)atomistic-workflows (chemistry)binding-affinity (chemistry)cheminformatics-definitions (chemistry)datamol (chemistry)deepchem (chemistry)denovo-design (chemistry)diffdock (chemistry)drug-design (chemistry)framework-topology (chemistry)hypogenic (chemistry)matchms (chemistry)medchem (chemistry)molecular-docking (chemistry)molecular-dynamics (chemistry)molecular-optimization (chemistry)molecular-rag (chemistry)molecule-visualization (chemistry)molfeat (chemistry)pkpd-modeling (chemistry)pocket-detection (chemistry)pyopenms (chemistry)pytdc (chemistry)rdkit (chemistry)smiles-validation (chemistry)structure-prediction (chemistry)torchdrug (chemistry)29physicsastronomy-inference (physics)astropy (physics)autoregressive-neural-pde-solver (physics)bayesian-inference (physics)conservation-law-discovery (physics)dimensional-analysis (physics)dynamical-systems (physics)energy-systems (physics)fluid-dynamics (physics)fluidsim (physics)geoscience-data (physics)hamiltonian-mechanics (physics)neural-operator (physics)ode-solver (physics)openpiv (physics)pde-solver (physics)physics-databases (physics)physics-fitting (physics)physics-visualization (physics)pinn-training (physics)pymatgen (physics)shock-capturing-neural-operators (physics)sindy-identification (physics)spectral-analysis (physics)statistical-mechanics (physics)symbolic-regression (physics)uncertainty-and-units (physics)wave-propagation (physics)28quantumcirq (quantum)pennylane (quantum)qiskit (quantum)qutip (quantum)4ml-trainingadaptyv (ml-training)awq-quantization (ml-training)axolotl (ml-training)colab-finetuning (ml-training)deepspeed (ml-training)distributed-llm-pretraining-torchtitan (ml-training)evaluating-code-models (ml-training)evaluating-llms-harness (ml-training)fine-tuning-with-trl (ml-training)geniml (ml-training)gptq (ml-training)grpo-rl-training (ml-training)hqq-quantization (ml-training)hugging-face-evaluation (ml-training)hugging-face-model-trainer (ml-training)huggingface-accelerate (ml-training)implementing-llms-litgpt (ml-training)knowledge-distillation (ml-training)llama-factory (ml-training)mamba-architecture (ml-training)ml-benchmark-evaluation (ml-training)mlflow (ml-training)model-economics (ml-training)model-merging (ml-training)model-pruning (ml-training)moe-training (ml-training)nanogpt (ml-training)nemo-curator (ml-training)nemo-evaluator-sdk (ml-training)nnsight-remote-interpretability (ml-training)openrlhf-training (ml-training)optimizing-attention-flash (ml-training)peft-fine-tuning (ml-training)prime-intellect (ml-training)pufferlib (ml-training)pytorch-fsdp (ml-training)pytorch-lightning (ml-training)pyvene-interventions (ml-training)quantizing-models-bitsandbytes (ml-training)ray-train (ml-training)rwkv-architecture (ml-training)simpo-training (ml-training)sparse-autoencoder-training (ml-training)stable-baselines3 (ml-training)tensorboard (ml-training)torchforge-rl-training (ml-training)training-data-pipeline (ml-training)training-llms-megatron (ml-training)transformer-lens-interpretability (ml-training)unsloth-fine-tuning (ml-training)verl-rl-training (ml-training)weights-and-biases (ml-training)52llm-toolsautogpt-agents (llm-tools)blip-2-vision-language (llm-tools)chroma (llm-tools)clip (llm-tools)constitutional-ai (llm-tools)crewai-multi-agent (llm-tools)dspy (llm-tools)faiss (llm-tools)guidance (llm-tools)hugging-face-cli (llm-tools)hugging-face-tool-builder (llm-tools)huggingface-tokenizers (llm-tools)instructor (llm-tools)langchain (llm-tools)langsmith-observability (llm-tools)llamaguard (llm-tools)llamaindex (llm-tools)llava (llm-tools)llm-as-judge-evaluation (llm-tools)long-context (llm-tools)nemo-guardrails (llm-tools)outlines (llm-tools)pinecone (llm-tools)qdrant-vector-search (llm-tools)segment-anything-model (llm-tools)sentence-transformers (llm-tools)sentencepiece (llm-tools)stable-diffusion-image-generation (llm-tools)transformers (llm-tools)whisper (llm-tools)30ml-inferencegguf-quantization (ml-inference)groq-inference (ml-inference)llama-cpp (ml-inference)miles-rl-training (ml-inference)phoenix-observability (ml-inference)serving-llms-vllm (ml-inference)sglang (ml-inference)speculative-decoding (ml-inference)tensorrt-llm (ml-inference)9databasesalphafold-database (databases)biorxiv-database (databases)brenda-database (databases)cellxgene-census (databases)chembl-database (databases)clinicaltrials-database (databases)clinpgx-database (databases)clinvar-database (databases)cosmic-database (databases)database-lookup (databases)datacommons-client (databases)depmap (databases)drugbank-database (databases)ena-database (databases)ensembl-database (databases)fda-database (databases)fred-economic-data (databases)gene-database (databases)geo-database (databases)gwas-database (databases)hmdb-database (databases)imaging-data-commons (databases)kegg-database (databases)metabolomics-workbench-database (databases)ncats-arax (databases)onekgpd (databases)ontology-term-resolution (databases)openalex-database (databases)opentargets-database (databases)pdb-database (databases)primekg (databases)pubchem-database (databases)pubmed-database (databases)reactome-database (databases)string-database (databases)uniprot-database (databases)usfiscaldata (databases)uspto-database (databases)zinc-database (databases)39codingarboreto (coding)audiocraft-audio-generation (coding)denario (coding)exploratory-data-analysis (coding)gtars (coding)matlab (coding)multi-objective-optimization (coding)networkx (coding)optimize-for-gpu (coding)pymc-bayesian-modeling (coding)pymoo (coding)rowan (coding)scikit-learn (coding)shap (coding)simpy (coding)slime-rl-training (coding)statistical-analysis (coding)statsmodels (coding)sympy (coding)timesfm-forecasting (coding)torch-geometric (coding)umap-learn (coding)22data-engineeringaeon (data-engineering)dask (data-engineering)datalad (data-engineering)geomaster (data-engineering)geopandas (data-engineering)hdf5-pde-data-loading (data-engineering)hugging-face-datasets (data-engineering)markitdown (data-engineering)polars (data-engineering)ray-data (data-engineering)vaex (data-engineering)zarr-python (data-engineering)12cloud-computefireworks-ai-inference (cloud-compute)givemeanode-agent-compute (cloud-compute)lambda-gpu-cloud (cloud-compute)modal-serverless-gpu (cloud-compute)runpod-gpu-cloud (cloud-compute)skypilot-multi-cloud-orchestration (cloud-compute)tensorpool-gpu-cloud (cloud-compute)tinker-fine-tuning (cloud-compute)tinker-training-cost (cloud-compute)together-ai-inference (cloud-compute)vast-ai-gpu-cloud (cloud-compute)11coreacceptance-checks (core)analysis-report (core)autoresearch (core)brainstorming (core)citations (core)compute (core)delegation (core)execution-hygiene (core)figures (core)generate-image (core)hypotheses (core)literature-review (core)ml-paper-writing (core)paper-writing (core)peer-review (core)reproduce (core)research-lookup (core)schematics (core)scientific-visualization (core)sources (core)statistical-conventions (core)submitted-code (core)22othercheckpoint (other)compact (other)coq (other)get-available-resources (other)goal (other)handoff (other)hugging-face-jobs (other)hugging-face-trackio (other)init (other)iso-13485-certification (other)iso-standards-readiness (other)lab-hardware-cad (other)labarchive-integration (other)lean4-mathlib (other)plan (other)skill-installer (other)stop (other)17researchcompare (research)experimental-design (research)export (research)market-research-reports (research)paper-lookup (research)patent-mining (research)research-grants (research)research-workflows (research)review (research)statistical-power (research)10writinghugging-face-paper-publisher (writing)latex-posters (writing)markdown-mermaid-writing (writing)paper-2-web (writing)pptx-posters (writing)pyzotero (writing)scientific-slides (writing)zotero-local (writing)8visualizationdna-visualization (visualization)infographics (visualization)matplotlib (visualization)plotly (visualization)protein-diagram (visualization)seaborn (visualization)6document-parsingdocx (document-parsing)liteparse (document-parsing)pdf (document-parsing)pptx (document-parsing)xlsx (document-parsing)5scholar-evaluationscholar-evaluation (scholar-evaluation)1
Figure 10.The skill library, one square per skill, grouped by category and coloured by field.

It reaches data through 42 connectors to scientific databases in 6 domains, and literature through a tool that searches OpenAlex and arXiv and then reads the full text of the paper. It runs code in long-lived Python and R kernels and a shell, and sends heavier jobs to an SSH host, a Slurm or PBS cluster, or Modal as durable jobs that outlive the conversation. Each remote dispatch needs your approval.

literature 7proteins 7genomics 8omics 7pathways 7chemistry 6PubMedEurope PMCbioRxiv / medRxivCrossrefOpenAlexSemantic ScholararXivUniProtRCSB PDBPDBeAlphaFold DBInterProPfamSIFTSEnsemblNCBI GeneNCBI dbSNPClinVargnomADUCSC Genome BrowserMyGene.infoMyVariant.infoNCBI GEOArrayExpress / BioStudiesGTExHuman Protein AtlasExpression AtlasSingle Cell Expression AtlasDepMapReactomeKEGGSTRINGBioGRIDIntActWikiPathwaysOpen TargetsChEMBLPubChemBindingDBGuide to PHARMACOLOGYSureChEMBLChEBI
Figure 11.The 42 database connectors, grouped by domain.

A lab of specialists

The lead agent can hand bounded tasks to seven workers in parallel: explore, a scout for literature, data and code; five domain specialists (ml, biology, physics, chemistry, data); and general. Workers cannot start other workers or publish anything. A worker's report without a verification section counts as a claim, and when two workers compute the same quantity independently and disagree, the disagreement is reported as a finding.

Figure 12 shows one Terminal-Bench Science run, hysteretic-aquifer-control: calibrate a four-state aquifer model, identify miscalibrated devices, forecast all four states and design a pump-and-treat intervention. The lead brought in ml, data and physics workers. The run took 3.1 hours and passed the task's verifier.

shellfilesPython / Rcomputeskillsplanlead dispatches or resumes a worker0 h0.5 h1 h1.5 h2 h2.5 h3 h3.5 hresearch · lead159ml · workerAdd exact-state acceptance178data · workerAccelerated solver15physics · workerOccupancy-constrained kinetics122
Figure 12.Tool calls over time in one run, one row per session, labelled with the brief the lead wrote.
Logistic map xn+1 = r xn(1 − xn), 2.85 ≤ r ≤ 4

Availability

OpenScience is released under Apache 2.0. It works with your own API keys (22 provider SDKs are bundled), with local models through Ollama or LM Studio, or with Ace, the pay-as-you-go service we run. Usage through your own keys or a local model is never billed through Ace.

Install the desktop app, or use the terminal:

$ npm install -g @synsci/openscience
$ openscience ~/research/my-project

# connect a model: your own key, or a local endpoint
$ openscience keys add
$ openscience local add

Then describe the task as you would to a colleague:

Inspect data/samples.csv for missing values and inconsistent labels. Keep the original data unchanged. Save a quality report and a plot in results/, with the code needed to reproduce them.

The source is on GitHub, the documentation at docs, and contributions are welcome.

Notes

  1. Figures and counts are computed by the launch post's scripts from OpenScience (commit 132dfdf), benchmarks-openscience (commit 61328d9) and snapshots of the public leaderboards taken 2026-09-26. The build checks the recomputed scores against the benchmarks repository's README.
  2. OpenScience runs: Terminal-Bench Science with a GPT-6 Astra lead, GPT-6 Sol workers and 8 hours per task; BiomniBench-DA with GPT-6 Sol and 1 hour per task; Terminal-Bench 4.0 with a GPT-6 Astra lead and GPT-5.6 Sol workers. OpenScience rows report one counted trial per task. Leaderboard entries average 3 trials per task on Terminal-Bench Science and 5 on Terminal-Bench 4.0. Other entries come from the Terminal-Bench Science and Terminal-Bench 4.0 leaderboards, the BiomniBench-AI4S comparison (Gemini 3.1 Pro judge column) and AIPOCH's published result.

Citation

@misc{gangwani2026openscience,
  title        = {OpenScience: The #1 Scientific Agent, Open Source},
  author       = {Gangwani, Ishaan and Bansal, Aayam},
  year         = {2026},
  month        = sep,
  organization = {Synthetic Sciences},
  howpublished = {\url{https://github.com/synthetic-sciences/OpenScience}}
}