Skip to content

v0.2.2

Choose a tag to compare

@github-actions github-actions released this 15 Jul 10:30
d2c762a

Open Science v0.2.2

The built-in life-science connectors grow up: 23 connectors, now aligned to their upstream MCP servers into 200+ callable tools — plus a guided first-run onboarding that provisions the environment for you, @-mentions for artifacts in the composer, and a sturdier session/notebook path. All self-hosted, on your own machine.

Open Science is an open-source, model-agnostic AI workbench for scientific discovery — a self-hosted desktop app pairing a plan-and-execute agent with a persistent, sandboxed compute kernel and durable project/session storage.

This release builds on v0.2.0/v0.2.1: it turns the data-connector layer from a first pass into deep, upstream-aligned coverage, makes first launch install-and-check itself, and hardens the composer, session-resume, and notebook paths. The public skills commons and the model-agnostic gateway remain ahead on the Roadmap.

✨ Highlights

  • Connectors, deepened and upstream-aligned. The 23 built-in life-science connectors were expanded and aligned to their upstream MCP servers, growing to 200+ callable tools across literature, genes/proteins, genomes, variants, structures & interactions, clinical, chemistry, drug regulatory, expression, and more. Each tool ships with a copy-runnable host.mcp(...) example and a documented return shape so the agent can use it without a probe cell. (#95#122)
  • First run installs and checks itself. A guided onboarding wizard now checks and provisions the runtime environment automatically — including an app-managed Claude install that needs no pre-existing Node/npm — with background health checks and a recovery path when something drifts. (#88, #90, #94, #113, #124, #125)
  • @-mention your artifacts in the composer. Reference an artifact inline with @ to get clickable, styled message bubbles that link straight back to the file. (#86)
  • Unified file previews. File-preview capabilities were unified so every renderer behaves consistently across the app. (#96)
  • Sturdier sessions & notebook. Interrupted sessions get a Resume button, session-resume recovers from a generic Internal error, and the notebook's Python bridge pins UTF-8 on stdin so non-ASCII output no longer corrupts. (#87, #89, #123)

🚀 New Features

  • Connector toolset expansion (upstream-aligned) — 23 built-in connectors grown to 200+ tools aligned with their upstream MCP servers: BioMart (#95), Literature (#97), Cancer Models (#98), CellGuide (#99), Chemistry — ChEBI/Rhea/BindingDB (#100), Genes/Genomes/Human Genetics (#101), Drug Regulatory (#102), Expression (#103), Clinical Genomics (#104), Omics Archives — GEO/MetaboLights/MGnify/PRIDE (#106), Protein Annotation — InterPro/Pfam/HPA (#107), Research Resources (#109), RNA (#110), Regulation (#112), Structures & Interactions (#114), Clinical Trials (#116), bioRxiv (#117), PubMed (#118), ChEMBL (#119), Variants (#121), and ZINC (#122).
  • Guided first-run onboarding + environment automation — automatic environment checks, an app-managed Claude install (no Node/npm required), background health checks, sudo-free npm install with a region-block fallback, and a recovery mode. (#88, #90, #94, #113, #124, #125)
  • Composer @ artifact mentions — inline artifact references rendered as clickable, styled message bubbles. (#86)
  • Diagnostics panel with a reveal action — the settings Diagnostics panel was reworked to open/reveal underlying files. (#91)

🔧 Improvements

  • Interrupted-session banner gains a Resume button. (#87)
  • Unified file-preview capabilities for consistent rendering across the app. (#96)
  • The built-in WebSearch tool is disabled for the ACP agent so it doesn't shadow connector-backed search. (#105)
  • Onboarding layout metrics documented to match the shipped code. (#124)

🐛 Bug Fixes

  • Session resume recovers from a generic Internal error instead of dropping the session. (#89)
  • The notebook Python bridge pins UTF-8 on stdin, fixing corrupted non-ASCII output. (#123)
  • Settings surfaces the underlying provider error on a failed connection test. (#93)
  • npm-based Claude install no longer requires sudo and falls back when a region blocks the registry. (#90)
  • Progress bar now advances during the app-managed Claude install. (#113)

📦 Install

Requirements: macOS 12+ (Apple Silicon or Intel), Linux x64, or Windows 10/11 x64. On first run the app's onboarding wizard checks your environment and can install and configure a Claude-compatible model backend for you.

Download the build for your platform from the Assets below:

Platform File
macOS (Apple Silicon) open-science-0.2.2-mac-arm64.dmg
macOS (Intel) open-science-0.2.2-mac-x64.dmg
Linux open-science-0.2.2-linux-x86_64.AppImage / .deb
Windows open-science-0.2.2-win-x64-setup.exe

macOS — first launch (unsigned build). Builds are deep ad-hoc signed (build/adhoc-sign.cjs), not notarized, so Gatekeeper warns on first open. Either right-click → Open, or clear the quarantine flag:

xattr -dr com.apple.quarantine "/Applications/Open Science.app"

Windows — first launch (unsigned build). No Authenticode certificate yet, so SmartScreen shows a bypassable "unrecognized app" prompt (More info → Run anyway).

Build from source instead:

npm install
npm run build:mac   # or: build:linux / build:win

See README → Building From Source.

🧭 What's in this release (maturity)

Aligned with the PRD and Roadmap:

  • Implemented: desktop shell (Electron + React + TS); ACP single-agent runtime with typed tool-activity rows and a permission gate; one persistent Python kernel with replayable run history; project + session persistence; artifacts MCP server; file renderers + notebook preview; multi-provider config and macOS/Linux/Windows packaging; file-based agent skills with a / selector; 23 built-in life-science data connectors expanded to 200+ upstream-aligned tools, plus custom MCP servers; a guided first-run onboarding wizard with automatic environment provisioning; in-app update checks; and per-conversation approval profiles.
  • 🚧 Partial: skills are local and file-based (no shared/public commons, cross-machine forking, or version pinning yet); the runtime is still a single Anthropic-compatible backend family rather than a fully model-agnostic gateway.
  • 🗺️ Roadmap (not in this build): public skills commons and savable specialist roles (rest of Phase 3); model-agnostic gateway and a CLI/SDK entry point (rest of Phase 1); artifact versioning + provenance chain, additional kernels (R), and specialist sub-agents (Phase 2); remote compute and the full security stack — network sandbox, credential vault, scoped permission tiers (Phase 4).

🐢 Known Limitations

  • Skills are local only. You can create, edit, and import them on one machine, but there is no shared/public commons, no cross-machine forking, and no user-facing version pinning yet.
  • Single model backend family. Providers are Anthropic-compatible (Claude / gateways); the fully model-agnostic gateway is open Phase 1 work.
  • Unsigned builds. macOS is ad-hoc signed (not notarized) and Windows has no Authenticode cert — both show a bypassable OS prompt on first launch.
  • No provenance chain / artifact versioning yet. Lands in Phase 2.
  • No local compute backend. The bundled biomodel skills (AlphaFold2, ESMFold2, DiffDock, …) ship as reference/instruction docs; this build can't execute their GPU/model tooling locally.
  • No multi-user / real-time collaboration. Sharing is via export/import.

🙏 Acknowledgements

Thanks to @ewen-poch, @roxi3906, and @GiaoLee, and to everyone in Discord, X, and Discussions.


What's Changed

  • style(acp): fix prettier formatting in permission-broker by @ewen-poch in #84
  • feat(composer): @ artifact mentions with clickable, styled message bubbles by @ewen-poch in #86
  • fix(workspace): add Resume button to interrupted-session banner by @ewen-poch in #87
  • feat(onboarding): app-managed Claude install (no Node/npm required) by @ewen-poch in #88
  • fix(acp): recover session resume from a generic Internal error by @ewen-poch in #89
  • fix(onboarding): sudo-free npm install and region-block fallback by @ewen-poch in #90
  • feat(settings): rework Diagnostics panel with reveal action by @ewen-poch in #91
  • test(settings): update Diagnostics render test for Open/Reveal by @ewen-poch in #92
  • fix(settings): surface provider error on failed connection test by @ewen-poch in #93
  • feat: refine onboarding setup experience by @roxi3906 in #94
  • feat(connectors): expand the BioMart connector capabilities by @ewen-poch in #95
  • fix: unify file preview capabilities by @roxi3906 in #96
  • feat(connectors): expand the Literature connector capabilities by @ewen-poch in #97
  • feat(connectors): expand Cancer Models with mutation, CNA & clinical tools by @ewen-poch in #98
  • feat(connectors): expand CellGuide with search, markers, tissues & sources by @ewen-poch in #99
  • feat(connectors): expand Chemistry with ChEBI, Rhea & BindingDB tools by @ewen-poch in #100
  • feat(connectors): expand the Genes, Genomes, and Human Genetics connectors by @ewen-poch in #101
  • feat(connectors): expand the Drug Regulatory connector capabilities by @ewen-poch in #102
  • feat(connectors): expand the Expression connector capabilities by @ewen-poch in #103
  • feat(connectors): expand the Clinical Genomics connector capabilities by @ewen-poch in #104
  • fix(settings): disable built-in WebSearch tool for the ACP agent by @ewen-poch in #105
  • feat(connectors): expand Omics Archives with GEO, MetaboLights, MGnify & PRIDE by @ewen-poch in #106
  • feat(connectors): expand Protein Annotation with InterPro, Pfam & HPA by @ewen-poch in #107
  • feat(connectors): expand the Research Resources connector capabilities by @ewen-poch in #109
  • feat(connectors): expand the RNA connector capabilities by @ewen-poch in #110
  • feat(connectors): expand the Regulation connector capabilities by @ewen-poch in #112
  • fix(onboarding): progress bar for app-managed Claude install by @ewen-poch in #113
  • feat(connectors): expand the Structures & Interactions connector by @ewen-poch in #114
  • feat(connectors): expand the Clinical Trials connector capabilities by @ewen-poch in #116
  • feat(connectors): expand the bioRxiv connector capabilities by @ewen-poch in #117
  • feat(connectors): expand the PubMed connector capabilities by @ewen-poch in #118
  • feat(connectors): expand the ChEMBL connector capabilities by @ewen-poch in #119
  • feat(connectors): expand the Variants connector by @ewen-poch in #121
  • feat(connectors): expand the ZINC connector by @ewen-poch in #122
  • fix(notebook): pin UTF-8 for the Python bridge stdin by @ewen-poch in #123
  • docs: align onboarding layout metrics with shipped code by @ewen-poch in #124
  • feat: automate environment setup and background health checks by @GiaoLee in #125
  • chore: bump version to 0.2.2 by @ewen-poch in #126

Full Changelog: v0.2.1...v0.2.2