这份文档定义 Bio Studio 当前工作区的结构边界。目标不是描述每个文件,而是说明什么是核心工作面、什么是第三方引擎、什么是共享资源、什么只是遗留或保留位。
Bio Studio 是一个面向 AI agent 的生物计算工作台,而不是单一应用仓库。
它由五类东西组成:
- 行为协议:告诉 AI 怎么工作
- 本地骨架:提供项目模板、脚手架和维护脚本
- AI 接口:skills 和 MCP servers
- 项目工作区:真实分析任务与产物
- 外部引擎:Evo2、RFdiffusion、Biomni、LiteFold 等第三方能力
| 路径 | 角色 | 应该如何使用 |
|---|---|---|
README.md / CLAUDE.md |
总入口与操作规则 | 新 agent / 新协作者优先阅读 |
docs/ |
协议、环境、架构与记录 | 放工作区级知识,不放项目专属结果 |
lib/ |
本地可复用骨架 | 放通用模块、项目模板、CLI 包装层 |
scripts/ |
系统维护脚本 | 放环境检查、安装、维护类脚本 |
mcp-servers/ |
AI 工具接口层 | 放可独立配置的 MCP servers |
.claude/skills/ |
agent 技能层 | 放工作流与能力提示,不放业务结果 |
projects/ |
任务工作区 | 所有真实分析、报告、日志、结果优先落这里 |
shared_data/ |
共享参考资源 | 放跨项目可复用的数据和索引 |
repositories/active/ |
第三方引擎源码 | 放当前启用的外部仓库,不作为主开发面 |
repositories/archived/ |
归档引擎区 | 放退役或备用的外部仓库 |
下面这些目录是 Bio Studio 的主工作面:
-
docs/原因:这里定义协议、环境状态和架构边界,是 AI 的规则层。 -
projects/原因:这里是实际分析的现场。数据、脚本、日志、报告都应该优先在这里沉淀。 -
lib/、scripts/、mcp-servers/原因:这是工作台自己的基础设施层,负责把环境和外部能力编排成可调用工作流。
repositories/active/ 下的内容不属于 Bio Studio 的主产品代码,它们是挂进工作区的外部能力层。
当前主要包括:
RFdiffusionevo2Biomnilitefold/source
治理规则:
- 默认不要在这些目录里做本地架构重构
- 如果只是想“使用能力”,优先在
projects/、tools/scripts/、mcp-servers/或lib/层编排 - 如果必须修改第三方仓库,先确认这是本地 patch 还是准备长期维护的 fork
projects/ 是分析工作的首选落点。
推荐结构:
projects/<name>/
├── data/
│ ├── raw/
│ ├── processed/
│ ├── results/
│ └── references/
├── scripts/
├── logs/
├── notebooks/
└── README.md
规则:
- 原始数据放
data/raw/ - 中间结果放
data/processed/ - 最终结果放
data/results/ - 可复现逻辑优先写进
scripts/ - 根目录不要新增散落的
data/、notebooks/、test/等临时目录
并不是 projects/ 下所有目录都必须收敛成同一类模板项目。当前至少有两类“特殊项目”:
- 专项项目:例如
projects/test_rnaseq_analysis/,保留面向具体研究问题的定制流程与结果现场 - 学习项目:例如
projects/yeast_genome_learning/,保留教程式脚本与教学材料
这些项目可以补齐最小统一入口(如 validate_project.py、pipeline.py --validate/--steps),但不应为追求统一而强行重写成模板 runtime 项目。
对应到工作区 CLI:
python scripts/project.py validate <项目名>/steps <项目名>应尽量都可用python scripts/project.py run <学习项目>可以只返回教学引导,而不是直接批量执行所有 lesson 脚本python scripts/project.py run <专项项目>仍然可以转发到项目自己的定制 pipeline
shared_data/ 只放跨项目共享的数据,不放某个单独项目的临时结果。
适合放:
- 参考基因组
- 通用索引
- 可复用数据库
- 工具元数据
不适合放:
- 单个项目独有的 FASTQ / BAM / VCF
- 一次性实验结果
- 仍在频繁改写的临时文件
正式的工作区介绍页所在位置。它是文档入口的一部分,不是一次性演示文件。
这两个目录已经是已落地的 MCP 接口层。
bio-design-mcp提供 DNA 设计、mRNA 优化与靶点评估入口bio-lab-mcp提供项目发现、项目级自检和工作区级 smoke test 入口- 两者都通过
mcp-servers/render_claude_config.py进入统一配置渲染链路
旧工作区结构的保留区,用于保存历史布局痕迹。默认不要把新工作继续写回这里。
临时缓冲区。只适合短生命周期文件,不应成为长期存储目录。
为 Evo2 HuggingFace 权重转换预留的位置。当前为空时,表示该工作面尚未启用。
截至本次整理:
docs/site/index.html已成为正式介绍入口scripts/project.py已成为工作区级统一项目入口mcp-servers/bio-design-mcp/与mcp-servers/bio-lab-mcp/已可作为真实服务接入 Claude / agent 配置.gitmodules已登记RFdiffusion与litefold/source两个 gitlink 路径- 外部仓库仍可能存在本地未提交改动,这属于工作树状态,不属于本次治理变更范围
README.mdCLAUDE.mddocs/README.mddocs/WORKSPACE_ARCHITECTURE.mdprojects/test_env_validation/README.mdprojects/ai_design_playground/README.mdprojects/test_rnaseq_analysis/README.md
- AI 优先,不等于人类不可读
- 项目隔离优先于“根目录方便”
- 第三方引擎与本地骨架必须分层
- 工作区知识应沉淀到
docs/,项目知识应沉淀到projects/ - 先把边界说清,再做更深的功能扩展