The one-stop AI research workspace, built for scientists.
Literature review, hypothesis, code, experiments and tuning — in one environment, with every step on the record.
Download · Quick start · Documentation · Contributing · 中文
ScienceDiscovery is a locally run research workspace: an agent reads the literature, writes and runs code inside a sandbox, and records the origin of every result. Everything executes on your own machine, against your own files, with your own model keys.
Download the build for your architecture from release 0.2.0:
curl -LO https://github.com/openJiuwen-ai/sciencediscovery/releases/download/0.2.0/ScienceDiscovery-0.2.0-linux-x86_64
chmod +x ScienceDiscovery-0.2.0-linux-x86_64
./ScienceDiscovery-0.2.0-linux-x86_64 serveOpen the Open to sign in URL that serve prints. The browser stores the local service access token automatically, so there is nothing to copy. That token is distinct from a model API key, and the URL grants access to this machine's workspace — keep it private. The web interface is served at http://127.0.0.1:4310; the terminal window only runs the service.
For arm64, use ScienceDiscovery-0.2.0-linux-aarch64. Bubblewrap is the only host dependency. Source mode (Linux and macOS) and Docker are covered in the deployment guide.
ScienceDiscovery does not bundle a model; you connect your own API. Open System configuration at the bottom of the left sidebar and complete two sections:
- Model registry — select a preset provider or enter a Base URL manually, provide the API key, then add the model you intend to use.
- Global defaults — set the model added in the previous step as the task model.
Field definitions, and which of them an environment variable can set instead, are in the configuration reference.
Create a Project and a Session, drop a CSV or a PDF into the workspace, and describe the analysis you want. A permission card appears before the first code execution; once approved, tool calls and artifacts are shown in the timeline. For a step-by-step walkthrough, see the Quick Start tutorial.
| Capability | Description | Reference |
|---|---|---|
| Literature and data access | Built-in connectors reach paper and data repositories; PDFs are parsed into citable evidence | Literature research case · Custom MCP servers |
| Sandboxed code execution | The agent writes, debugs and runs Python, R and shell inside a fail-closed sandbox | Sandbox execution |
| Task decomposition | Planning and multi-agent orchestration distribute a task across sub-agents and a cross-domain skill library | Subagent orchestration · Skills |
| End-to-end provenance | Code, environment, logs and cited evidence are recorded per deliverable; the optional memory graph makes the chain navigable | Review and provenance · ScienceMemory |
A running serve can also be driven from the terminal:
./ScienceDiscovery run "Summarize these results" > answer.md
cat prompt.txt | ./ScienceDiscovery run --stdin --auto-approve | jq .run connects to the same control plane as the browser and reads the access token from the data directory, so sharing a --data-dir with serve requires no further configuration. Run directly in a terminal, it writes the answer to stdout and progress to stderr; in a pipe it emits JSONL, and a non-interactive run must pass --auto-approve, since it cannot answer permission prompts. For the full option list, run ./ScienceDiscovery run --help.
| Path | Host requirements |
|---|---|
| Prepackaged binary | Linux x86_64/aarch64, Bubblewrap |
| Local source mode | Linux x86_64/aarch64 or macOS x64/arm64; Node.js 22.19+, pnpm 11.1.2, Python 3, uv 0.9+, Git; Bubblewrap on Linux, built-in Seatbelt on macOS |
| Docker | Linux x86_64/aarch64, Docker Engine 24+, Compose v2, unprivileged user namespaces |
Managed scientific environments run on a pinned micromamba, so no system Python, R or conda is required.
A browser UI communicates with a Node control API. Each agent run is driven by a Python Gateway, while workspace tools, sandbox execution, scientific connectors, PDF extraction, permissions, provenance and review checks are enforced by the Node control plane.
Warning
ScienceDiscovery is not a multi-user production service. The API, runner, and gateway listen on loopback by default; the API uses one bearer token and does not terminate TLS. Exposing the API on another interface must be an explicit deployment choice on a trusted, secured network. Python, R, and shell commands run in a fail-closed platform sandbox (Bubblewrap on Linux and Seatbelt in macOS source mode); the control API, gateway, PDF worker, and outbound model/provider calls run outside that sandbox as trusted control-plane operations.
| Section | Guides |
|---|---|
| Tutorial | Quick start |
| How-to | Deployment · Custom MCP · Network proxy · ScienceMemory |
| Reference | Configuration · REST API · Built-in tools · Runtime behavior |
| Explanation | Architecture and the full index |
The complete English and Chinese indexes are in docs/README.md; development setup and test commands are in CONTRIBUTING.md.
This product serves solely as a workflow orchestration tool and does not embed any AI model capabilities. When users integrate AI models for specific business scenarios, they shall bear full responsibility for compliance obligations under the EU AI Act and other relevant regulatory frameworks.