Open Science v0.10.0
Open Science v0.10.0 is a feature release on top of v0.9.2. It brings a project-scoped command palette, code syntax highlighting in previews and notebook cells, read-only installed-package inventories per runtime environment, conversational skill imports from public GitHub URLs, direct file preview beside the session, and Bailian (Alibaba Cloud) as a built-in model provider.
Open Science v0.10.0: Search across your whole project from a command palette, read source code with syntax highlighting, inspect installed packages per runtime environment, import skills from GitHub in a conversation, and connect Bailian (Alibaba Cloud) as a built-in provider — while session persistence, Windows update feedback, and cross-platform path handling get harder, and agent context overhead and concurrent-session event delivery shrink.
Open Science v0.10.0 is a feature release on top of v0.9.2. It brings a project-scoped command palette, code syntax highlighting in previews and notebook cells, read-only installed-package inventories per runtime environment, conversational skill imports from public GitHub URLs, direct file preview beside the session, and Bailian (Alibaba Cloud) as a built-in model provider. Under the hood it hardens session persistence against backpressured writes, adds an applying state before Windows updates so users know the app is preparing, accepts Windows drive and UNC absolute paths in local-path validation, persists context usage during graceful shutdown, preserves the specialist prefix after session adoption, and aligns Bailian reasoning capabilities with documented model profiles — while a broad ownership refactor continues to extract narrower, independently testable modules from the ACP runtime, notebook runtime, and renderer transport surface, backed by a renderer contract catalog, release-provenance enforcement, and pinned workflow dependencies.
Open Science v0.10.0 Highlights
Project-scoped command palette
A Cmd/Ctrl+K palette now searches across sessions, files, settings, and navigation targets within the active project, so jumping to a session or opening a file no longer requires leaving the keyboard. The composer placeholder advertises the platform-specific shortcut.
Code syntax highlighting
Source files and notebook code cells now render with GitHub-style syntax highlighting through Shiki, with light/dark theme support, line numbers, and a consistent read-only line renderer shared between file previews and notebook runs.
Installed-package inventories.
Each runtime environment card in Settings gets a Packages button with a lazily fetched count badge and a dialog showing the full name/version/build/channel table, filterable by name, with loading, error-retry, and empty states.
Conversational skill imports from GitHub.
The agent can now request a skill import from a public GitHub URL — not just a session attachment — routed through the existing app-owned preview and confirmation modal before anything is written.
Bailian (Alibaba Cloud) provider
Bailian is available as a built-in provider with China and Global DashScope regions, Anthropic Messages, OpenAI Chat Completions, and Responses support, plus a curated Qwen 3.8/3.7/3.6 and DeepSeek V4 catalog. A dedicated Bailian for Plan subscription endpoint is also included.
Direct file preview beside the session
Uploaded and generated files can now be opened directly in the split-view preview panel from the project file library, without going through the modal.
Open Science v0.10.0 New Features
Project-scoped command palette
A Cmd/Ctrl+K palette that searches sessions, files, settings, and navigation targets within the active project, with keyboard navigation and fuzzy matching. The composer placeholder shows the platform-specific shortcut (⌘K on macOS, Ctrl+K elsewhere).
Code syntax highlighting
Python, R, JavaScript, TypeScript, CSS, and shell source files now render with Shiki-based syntax highlighting in both the file preview panel and notebook code cells, with GitHub light/dark themes, line numbers, selected-error-line styling, and a shared read-only line renderer. Large files and unsupported formats fall back to the existing plain-text path.
Installed-package inventories per runtime environment
Each runnable environment card in Settings shows a Packages button with a lazily fetched count badge, opening a dialog with env metadata, a filterable name/version table (with build/channel columns when present), and a conda/pip breakdown for conda environments. Listing dispatches on the env's language and ownership, with no renderer-supplied path probing.
Bailian (Alibaba Cloud) provider
two provider entries: Bailian with China and Global DashScope regions, Anthropic Messages / OpenAI Chat Completions / Responses endpoints, and a curated Qwen 3.8/3.7/3.6 and DeepSeek V4 catalog with 1M context metadata; and Bailian for Plan with its Token Plan Anthropic/OpenAI endpoints and curated Qwen/GLM/DeepSeek catalog. Reasoning presets are aligned per model: Qwen 3.8 Max/Preview gets a low/medium/xhigh preset, GLM 5.2 and DeepSeek V4 Chat expose high/max, and Responses routing is model-level for standard Bailian's documented Qwen subset.
Conversational skill imports from GitHub
The request_skill_import MCP tool now accepts a github_url alongside the existing attachment source, with exactly-one-source validation. The agent can resolve a skill name or keywords through its provider-native web search, then call the tool with the resolved GitHub URL. The existing Settings repository scanner runs before approval, and every discovered skill appears in the application modal with the existing preview, preselect, and confirmation flow.
Direct file preview beside the session
Uploaded and generated files can be opened directly in the split-view preview panel from the project file library, with matching two-action treatment (download plus split-view preview) in both grid and list modes, and a focus-ring fix so the file container no longer shows a green ring after a modal close.
Diagnostic coverage for failure boundaries
Per-process run IDs and a privacy-safe diagnostic operation vocabulary cover startup lifecycle, storage migration failures, session persistence recovery, updater lifecycle, renderer top-level failures, and orderly shutdown handoffs, without logging content, URLs, command lines, or paths.
Improvements
- Agent context overhead is reduced by trimming skill and notebook payloads sent to the model, lowering token consumption without changing tool or response fidelity.
- Runtime events are now processed through independent per-session ordered lanes, so a slow event in one active session no longer blocks model output from another concurrent session. Same-session events stay sequential, and an explicit drain barrier lets quit and resume wait for the right scope.
- Release workflow now validates the pushed tag's application version and
origin/mainancestry before platform builds, preventing an unverified or off-main tag from publishing. Manual dispatch remains build-only. - All 27 remaining mutable external GitHub Action references are pinned to verified commit SHAs, and the GitHub Actions Dependabot limit is raised from 0 to 2 so pinned references can receive bounded update PRs.
Bug Fixes
- Specialist prefix preservation — a session adopted by a specialist no longer loses the specialist's name prefix after the adoption completes, so the conversation title and sidebar reflect the correct identity.
- Context-usage persistence on graceful shutdown — the last known context-usage snapshot is now flushed during orderly shutdown, so the indicator survives a deliberate quit-and-relaunch instead of only an unexpected restart.
- Backpressured session write coalescing — high-frequency session mutations that arrive faster than disk writes can complete are now coalesced instead of queuing unbounded writes, preventing memory growth and write storms during fast interactive sessions.
- Compute hover submenu restoration — the composer's agent-controls menu restores the Compute hover submenu (flattened by an earlier mobile-access change), and the expand chevron is aligned with its siblings in size, position, and color.
- Windows update preparation feedback — the updater now publishes an applying state before backend teardown and locks duplicate update actions, so the user sees that the app is preparing an update instead of a silent quit. The native assisted NSIS UI is shown during file replacement, followed by a force-relaunch.
- Windows absolute path support — the local-path validator now accepts Windows drive-letter (
C:\…) and UNC (\\server\share\…) absolute paths, while still rejecting drive-relative, root-relative, and incomplete UNC forms. - Optional renderer argument shapes — two observable optional-argument shapes (missing/explicit-undefined forwarding for ACP connect/createSession and notebook-env cancel) are characterized in the renderer contract catalog so they are reviewable without silently changing Electron or Web behavior.
