一、项目定位
OpenScience 是由 Synthetic Sciences 推出的一款开源、模型无关的 AI 研究代理系统,专为机器学习工程与科学研究场景设计。系统基于 Bun 和 TypeScript 构建,提供从文献综述、假设生成、实验运行到结果撰写的全流程自动化研究闭环。
其核心定位是本地优先的科研助手工具,支持超过 75 家主流大模型服务商,通过命令行启动本地服务并在浏览器中打开工作区界面,让研究人员在本地环境中即可获得端到端的 AI 辅助科研能力。
二、核心功能与能力
2.1 自主研究闭环
系统具备完整的端到端研究流程处理能力,覆盖文献综述、代码编写、实验执行与结果分析四大核心环节,能够自主推进研究任务,减少人工介入成本。
2.2 领域专家代理
内置默认的通用研究代理(research),并配备生物学(biology)、物理学(physics)、机器学习(ml)三大领域的专业化代理,可针对不同学科场景提供精准的领域知识支持。
2.3 丰富技能集
系统预装超过 250 项技能,涵盖 DeepSpeed 分布式训练、分子生物学、化学信息学、云端计算等多个专业方向,能够直接执行复杂的科研计算与分析任务。
2.4 科学数据库连接器
原生集成 UniProt、PDB、Ensembl、ChEMBL、arXiv 等主流学术数据库查询工具,可直接检索蛋白质结构、基因序列、化学分子、学术论文等专业数据。
2.5 集成化工作区
提供基于 SolidJS 构建的浏览器端交互界面,包含文件树、代码编辑器、终端模拟器,以及分子结构、基因组数据等专业数据的专属渲染器,实现科研工作一站式操作。
三、系统架构
3.1 整体交互流程
系统采用本地服务 + 浏览器前端的双层架构:
本地主机层(Bun 运行时):包含 CLI 入口、Hono 服务端、代理运行时、工具集与模型路由模块,负责核心逻辑执行与外部 API 调用。
客户端空间(浏览器):基于 SolidJS 的工作区前端,通过 HTTP/SSE 协议与本地服务进行消息循环交互,向用户呈现可视化操作界面。
3.2 核心模块流转
用户通过浏览器工作区提交研究任务
前端通过 HTTP/SSE 将请求发送至本地 Hono 服务器
会话层(Session)管理消息循环,调度代理运行时
代理调用工具层与科学工具集执行具体任务
模型路由层统一对接外部 AI 服务商,完成大模型请求
执行结果沿链路反向回传至前端界面展示
3.3 代码架构映射
入口层:index.ts 作为 CLI 程序入口
服务层:server/ 目录承载 Hono 应用服务
会话层:session/ 目录实现消息循环机制
代理层:agent/ 目录管理代理注册与调度
模型层:provider/ 目录封装多模型接入逻辑
前端层:workspace/ 为工作区应用,ui/ 为共享组件库
四、技术栈
层级 | 技术选型 | 说明 |
运行时 | Bun 1.3+ | 高性能 JavaScript/TypeScript 运行时 |
后端框架 | Hono | 轻量级 Web 服务框架 |
前端框架 | SolidJS | 响应式前端框架,用于构建工作区 UI |
开发语言 | TypeScript | 全栈 TypeScript 类型安全开发 |
包管理 | npm | 标准 npm 包分发,支持 npx 直接运行 |
模型接入 | 75+ 服务商 | 兼容 Anthropic、OpenAI、Google 等主流模型 |
发布形态 | npm 包 + 原生二进制 | 支持 Linux、macOS、Windows 三平台 |
五、仓库组织结构
项目采用 Monorepo 架构,按运行边界划分目录职责:
backend/cli:CLI 入口、Hono 服务器、代理运行时、工具与技能集的核心实现
frontend/workspace:浏览器端研究工作区 UI 应用
frontend/ui:共享组件库、主题系统与设计令牌
tooling/sdk/js:基于 OpenAPI 契约生成的 TypeScript SDK
tooling/plugin:@synsci/plugin 插件运行时,提供系统扩展能力
六、安装与部署方式
6.1 环境要求
开发环境需安装 Bun 1.3 及以上版本
运行环境支持 Linux、macOS、Windows 三大操作系统
6.2 快速安装
通过 npm 全局安装:
bash npm install -g @synsci/openscience |
安装完成后,可执行二进制命令为 openscience。
6.3 直接运行
无需安装,通过 npx 直接启动:
bash npx synsci |
6.4 原生二进制
项目同时提供各平台专属的原生二进制文件,可直接下载运行,无需依赖 Node.js 或 Bun 环境。
6.5 首次运行
启动后,CLI 会自动拉起本地服务器并在默认浏览器中打开工作区界面,用户按引导完成 API 密钥配置与环境初始化即可开始使用。
七、配置系统
OpenScience 采用分层配置机制,支持全局配置与项目级配置叠加:
全局配置:存放于用户主目录 ~/.config/openscience/openscience.json,适用于所有项目
项目配置:在仓库根目录放置 openscience.json 文件或 .openscience/ 目录,可覆盖全局设置
配置内容涵盖模型服务商密钥、代理参数、自定义代理定义等,支持 JSON 格式声明式配置。
八、托管集成(Atlas)
OpenScience 支持完全独立运行(自带 API 密钥模式,BYOK),同时提供可选的 Atlas 托管平台集成:
托管模型访问:通过预付费钱包直接调用前沿大模型
研究图谱存储:提供研究产物的持久化存储与管理
客户端实现位于代码库 src/openscience 目录
九、总结
OpenScience 是一款面向科研人员的本地化 AI 研究代理平台,以模型无关、本地优先、领域专业化为核心特色,通过全栈 TypeScript 技术栈构建,覆盖从文献调研到实验产出的完整科研链路,尤其适合生命科学、物理学、机器学习等领域的研究工作者使用。
* 官方开源代码仓库:https://github.com/synthetic-sciences/openscience
夜雨聆风