Skip to content

v0.23.0

Choose a tag to compare

@github-actions github-actions released this 30 Aug 11:59
· 66 commits to main since this release
c90f278

Open Science v0.23.0

A release that lets the agent read what you read: link up to three PDFs to a session as reading context the agent can read, page through, and search; turn text and region selections in the upgraded PDF preview into evidence with click-to-reveal in the source; get live kernel variable suggestions in the notebook terminal with a docked Variables pane on wide previews; and connect Tencent Coding Plan and Token Plan subscriptions — alongside atomic storage relocation that preserves artifact metadata and version identity, redacted support diagnostics, and a broad set of remote-access, credential, and platform fixes.

Open Science is an open-source, local-first AI research workbench for scientists and researchers. It enables reproducible, inspectable research across models with scientific AI agents, Python and R execution, scientific data connectors, and cross-platform support for macOS, Windows, and Linux.

v0.23.0 is a feature release centered on literature work. A session reading context links up to three multi-page PDFs with explicit link and unlink actions; the agent reads the current page, batches through the full document, or searches across the linked PDFs, and the snapshot it reads stays stable across queued sends, retries, branches, and resumes. The PDF preview becomes a reading surface — selectable text, area selection, outline and thumbnails, document search, page navigation, and zoom controls — and selections become evidence annotations with click-to-reveal in the source. The notebook terminal suggests live kernel variable names as you type, and wide previews dock the live Variables pane beside cells and the terminal instead of replacing them. Tencent Coding Plan (mainland China) and Token Plan (international) join the built-in providers, each with its own curated model list alongside the pay-as-you-go TokenHub. On the reliability side, data-storage relocation is atomic with artifact metadata, upload drafts, and version identity preserved; diagnostic reports shared for support are redacted by default; notebook workload caches follow the configured storage location; and remote browser sessions, SSH targets, credential storage, uploads, and platform handling are hardened throughout.

✨ Highlights

  • Read papers with the agent. Link up to three PDFs to a session as reading context — the agent can read the current page, page through the whole document, and search across them. Select text or a region in the upgraded PDF preview to send it as evidence, with click-to-reveal in the source. (#1791)
  • Notebook variables at hand. The shared terminal suggests live kernel variable names as you type, and on wide previews the live Variables pane docks beside cells and the terminal instead of replacing them. (#1919, #1918)
  • Tencent subscription plans. Tencent Coding Plan (China mainland) and Token Plan (international) join the built-in providers alongside the pay-as-you-go TokenHub. (#1901)
  • Safer local data. Moving the data-storage location is atomic and preserves artifact metadata, upload drafts, and artifact version identity, and diagnostic reports shared for support are redacted by default. (#1882, #1904, #1905, #1907)

🚀 New Features

  • PDF reading context and evidence — link up to three multi-page PDFs to a session with explicit link and unlink actions; the agent reads the current page, batches through the full document, or searches across the linked PDFs, and what it reads stays stable across queued sends, retries, branches, and resumes. The upgraded PDF preview adds selectable text, area selection, outline and thumbnails, document search, page navigation, and zoom controls, and selections become evidence annotations with click-to-reveal in the source document. (#1791)
  • Live kernel variable suggestions — the notebook terminal suggests matching variable names from the running Python or R kernel together with their types, navigable by keyboard and safe with input-method editors. (#1919)
  • Docked Variables pane in wide previews — when the notebook preview is wide enough, live Variables dock in a side column while cells and the terminal stay visible; narrow previews keep the focused Variables view, and the dock returns automatically when space allows. (#1918)
  • Tencent Coding Plan and Token Plan — dedicated subscription-plan providers for mainland China and international endpoints, each with its own curated model list, alongside the existing pay-as-you-go Tencent TokenHub. (#1901)

🔧 Improvements

  • Notebook workload caches move under the configured data-storage location, so relocating storage takes package and workload caches along instead of leaving them on the system drive. (#1710)
  • Diagnostic reports shared for support are redacted by default, and local diagnostics stay bounded so long research sessions do not grow them without limit. (#1907, #1909)
  • Quitting during active work is explained instead of silently blocked — including a warning before interrupting a running reviewer — and notifications are localized, respect your system's privacy setting for previews, and ignore stale clicks. (#1910, #1912, #1913, #1914)

🐛 Bug Fixes

  • Storage and migration — relocating the data-storage location no longer leaves partially copied data behind, and artifact metadata, upload drafts, and artifact version identity survive it (#1882, #1885, #1893, #1904, #1905); damaged session files are surfaced instead of silently skipped, and deletion recovery stays scoped to what was deleted (#1899); projects report cleanup that is still pending after deletion (#1896); and linked system paths are rejected during migration (#1894).
  • Remote access — authorized browser sessions are isolated from each other, the authorization lifecycle is enforced end to end, and remote requests follow their contracts. (#1915, #1917, #1897)
  • Credentials and providers — credential recovery reaches you in the composer (#1883); credentials that cannot be decrypted are no longer reported as healthy (#1886); insecure Linux secret storage is rejected instead of silently used (#1887); secure-storage status refreshes on its own (#1888); and the provider catalog no longer picks up stale writes (#1890).
  • Compute, notebook, and uploads — automatic analysis outcomes persist across restarts (#1916); SSH host aliases and scratch paths are validated (#1920); the R kernel survives repeated cancellation (#1892); and session finalization requests are validated (#1908).
  • Service and platform — the local service rejects malformed URL encoding (#1889); update and CLI platform handling is corrected (#1895) and the installer lifecycle is hardened (#1898); Specialist tool permissions are enforced for connectors (#1926); and document isolation between app surfaces is enforced. (#1924)

📦 Install

Requirements: macOS 12+ (Apple Silicon or Intel), Linux x64, or Windows 10/11 x64. On first run, the onboarding wizard checks the environment and can install and configure an app-managed agent runtime. Once installed, the app can update itself in place.

Download the appropriate package from the Assets section below:

Platform Package
macOS (Apple Silicon) DMG for ARM64
macOS (Intel) DMG for x64
Linux AppImage or Debian package for x64
Windows Installer for x64

macOS — first launch. Official release builds are Developer ID signed and notarized by Apple, so they open like other trusted applications. A locally built copy is not notarized and may require approval through macOS Privacy & Security.

Windows — first launch (unsigned build). No Authenticode certificate yet, so SmartScreen shows a bypassable "unrecognized app" prompt (More info → Run anyway). Verify that the package came from the official release page before continuing.

Build from source instead:

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

🧭 What's in this release (maturity)

  • Implemented: a local-first desktop, localhost-web, headless, CLI, and task-SDK surface over persistent projects and sessions with selectable message branches, branching into a new session from user messages or completed agent messages with persisted source lineage, composer session references (#) with turn-scoped read access, reversible archiving with keyboard undo, project pinning, collapsed long user messages, persistent side conversations with advisories injected into running main turns, generated and editable session details, session hover previews in the sidebar, and SQLite-indexed summary-first session startup; in-app sandboxed previews for source links in agent responses; selectable Claude Code, OpenCode, Codex, and CodeBuddy agent frameworks (CodeBuddy app-managed and login-free) behind a shared provider turn-adapter interface; text, image, and PDF annotations that send selected context into conversations with click-to-reveal evidence in the source document, a session reading context that links up to three PDFs the agent can read, page through, and search, with agent configuration change markers in the timeline; opt-in persistent agent memory with project-scoped categories recalled across sessions and managed from Settings; production subagent delegation with durable messaging, restart recovery, structured output, artifact and review evidence, and camelCase delegation APIs; review-gated session plans with CLI plan controls; a unified composer lane with a session-scoped message queue, unified draft undo and redo history, active-specialist emphasis, and mid-turn Send now through native follow-up steering; hot-switching of compatible models and providers; multi-provider model configuration including Tencent Coding Plan and Token Plan subscription providers, an xAI OAuth subscription, a dedicated Vision model selector with persistent evidence relay, custom token limits, and a consolidated Scenario models card; per-model-call usage details with a per-call context-window chart; a token usage dashboard with persisted per-run attribution that includes auxiliary model calls outside the main conversation; centralized credential management for GitHub tokens, connector keys, and connector sign-ins with guided recovery; a configurable reviewer model policy with an isolated review runtime, durable assessment snapshots, and empty initial checks; context-window composition insights with compaction boundaries; persistent Python/R/REPL kernels with bounded run-history payloads, a read-only live variable browser for running kernels, live variable-name suggestions in the shared terminal, a docked Variables pane in wide notebook previews, separated approval and execution state, cross-run dependency tracking, package-installation progress, progressive history loading, terminated read-only previews, session-scoped remote SSH execution with key or password authentication (including Windows), harvest ceasing, and remote file-staging cleanup; a user terminal shared with the agent; app-managed and bring-your-own environments for Python and R with notebook workload caches under the configured data-storage location; immutable, session-scoped artifact versions with checksummed content, producer code, execution history, exact input references, environment inventory, producing message-branch context, version-scoped reviewer evidence, and on-demand LLM-driven code reconstruction; rich in-app previews for scientific data, documents, images, source code, molecular structures, and notebook history with right-click tab actions and full-screen mode; file attachments up to 10 GB with streaming upload; skills with conversational creation, import, marketplace browsing, and explicit / selection, plus provenance-aware figure workflows for styling, composition, and paper narratives; 24 built-in research connectors plus custom MCP servers with import/export of standard MCP client configurations; durable scoped permissions with allow grants; remote-access pairing; interface localization in Spanish, French, Chinese (Simplified and Traditional), Japanese, Korean, and Russian; and auto-update with prominent update reminders and localized release notes.
  • 🚧 Partial: R remains managed-only; provider choice remains constrained by the active framework's endpoint compatibility; remote compute is SSH-only; skills remain local (no hosted public discovery commons); and review is opt-in and record-scoped.
  • 🗺️ Roadmap: a unified model gateway, a hosted public skills and specialist discovery commons, Slurm/cloud-GPU execution, stronger sandboxing and credential isolation, and collaborative research workflows.

🐢 Known Limitations

  • PDF reading is session-scoped. Up to three linked documents per session, and evidence lives on the message that cites it — there is no cross-session literature library yet, and OCR and citation-style conversion are not built.
  • R is managed-only. A bring-your-own R interpreter path is not built yet.
  • Remote compute is SSH-only. Slurm and cloud GPU submission are not built yet.
  • Provider choice is per framework, not one unified gateway. The available protocol depends on the selected agent backend.
  • Hot-switching applies only to registered compatible targets. Framework, auth-lane, wire-route, or unsafe capability changes still require a reconnect.
  • Code reconstruction is LLM-generated. It does not replace deterministic reproduction; portable environment locks and full-fidelity session replay remain open.
  • No hosted public specialist discovery commons. Specialist packages are portable across machines via import/export and the signed marketplace; what is not built yet is a hosted public discovery and forking hub.
  • The task SDK is a first-generation surface. Task creation, polling, artifact retrieval, run progress, and cancellation work; broader orchestration remains open.
  • Switching agent backends cannot transfer in-flight tool state. Existing conversation history can replay, but a running action is not migrated.
  • Skills are local only. There is no shared public commons, cross-machine forking, or user-facing version pinning yet.
  • The reviewer is opt-in and record-scoped. It does not replace domain-specific validation of citations, units, statistics, or methods.
  • Scoped permissions cover allow-grants only. Network sandboxing and directory-level file access control are not built yet.
  • Windows builds are unsigned. SmartScreen may warn on first launch; official macOS builds are notarized.
  • No local GPU compute backend.
  • No multi-user real-time collaboration.

🙏 Acknowledgements

Thanks to @ewen-poch, @wen2zhou, @daanveer-tech, @justemu, and everyone in Discord, X, and Discussions.


Full Changelog: https://github.com/aipoch/open-science/commits/v0.23.0