onescience-primitives
OneScience 原语资源召回技能。根据自然语言需求检索相关原语资源(模型、组件、数据管线、应用、工作流规划、契约等),通过范围判定、快速过滤和语义匹配召回,按内容需求返回相应知识;不做科研规划与代码实现。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
OneScience 原语资源召回技能。根据自然语言需求检索相关原语资源(模型、组件、数据管线、应用、工作流规划、契约等),通过范围判定、快速过滤和语义匹配召回,按内容需求返回相应知识;不做科研规划与代码实现。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
OneScience ModelScope 模型发布技能。将论文复现模型产物重组为 ModelScope 标准目录结构,检查核心目录内容完整性,生成平台必需的配置模板和审计工具,并输出 modelscope upload 命令引导用户推送到魔搭平台。作为 onescience-orchestrator 的执行技能使用。
OneScience / OneSkills 的通用任务编排主控,也是体系默认执行入口。它负责根据统一资源契约的资源摘要识别用户意图,召回并融合 type=expert 规划技能的 proposal,维护 Task State,绑定资源,并按执行技能能力边界拆分和调度 type=executor 的 coder/paper-repro/runtime/installer/evaluator 等执行技能,把复杂目标组织成可追踪、可回退、可闭环的任务流。用户提示词中出现“使用onescience”“使用onescience技能”“使用oneskills”“使用oneskills技能”等表达时默认先进入本技能;仅当用户已明确指定要直接使用的具体技能(如“使用onescience-runtime技能执行运行”)时,才可跳过本技能并直接调用目标技能。它不承载具体领域专家知识;新增任务类型应通过新增资源包、专家规划技能或执行技能扩展。注意:本技能负责编排调度但不直接执行任务,规划和执行不能在同一调用步骤中完成。
OneScience 科学模型训练执行技能。用于用户希望基于文本说明、网页说明、本地项目路径、已有 checkpoint 或项目原生训练入口来规划、生成并执行模型训练工作流,覆盖气象/地球系统、生信、材料、流体和通用科研模型等领域,包括训练信息获取、数据与切分规划、训练策略整理、完整训练脚本内容生成、训练执行组织以及结果验证。接收格式与 onescience-orchestrator 调用执行技能时的 step_handoff 保持一致,返回 execution_result。需要时协调交接给 onescience-coder、onescience-runtime 以及数据工作流技能。
OneScience 环境安装技能。用于根据 onescience.json 安装或验证 OneScience、创建或复用 conda 环境、检测已有 onescience 包、在记录的 conda 环境或当前环境中安装 Python 包;缺少 run_site 或远程 SSH 配置时先调用 onescience-runsite 补齐运行站点配置。
解析、校验、保存和复用 OneScience 运行站点配置。用于任意技能在继续执行任务前补齐运行站点配置,完成配置发现、缺失字段补问、已有配置复用、remote 连接验证、运行平台 DCU/GPU 类型确认、modules 写入和结构化回传。不做安装、不提交作业、不执行运行、不做远端环境诊断。
【统一运行与基础诊断技能】按 discover、preflight、execute、diagnose 固定闭环执行测试任务,依据 onescience.json 的 execution_profile 三元组路由执行通道;SCnet 提交任务时必须读取根级 onescience.json.scnet 并把 region、partition/queue、work_dir 和资源参数交给 scnet-chat;配置问题自动委托 onescience-runsite 补齐后回到 runtime 继续原测试任务,环境问题自动委托 onescience-installer 安装或修复并 verify 成功后回到 runtime 继续原测试任务;当 execution_mode 为 slurm 且提交或运行反馈表明 partition、gpus_per_node、memory 等资源不可用时,探测可用 SLURM 资源并受控调整后重试。
| name | onescience-primitives |
| description | OneScience 原语资源召回技能。根据自然语言需求检索相关原语资源(模型、组件、数据管线、应用、工作流规划、契约等),通过范围判定、快速过滤和语义匹配召回,按内容需求返回相应知识;不做科研规划与代码实现。 |
| type | resource |
你负责从 skills/onescience-primitives/assets/ 中找到最相关的 OneScience 原语,通过范围判定、快速过滤和语义匹配进行召回。不生成实现方案、不改代码、不执行脚本。
本技能的 assets/ 目录仅供本技能内部使用。调用方(orchestrator / coder / 其他技能)不得:
assets/ 下的文件来获取原语信息resource_retrieval_request 直接消费原语的 metadata.json、spec.md、usage.md 等文件内容resource_retrieval_request 之前,阅读或引用 assets/ 下的任何文件调用方必须通过 resource_retrieval_request → resource_retrieval_result 的完整闭环获取资源。
assets/
<domain>/
<category>/
<resource_name>/
metadata.json ← 基础信息(name, type, domain, description, tags, version)
spec.md ← 规格知识(架构、参数、依赖)
usage.md ← 使用知识(启动示例、接口、限制)
workflow_planning.md ← 规划决策知识(时机、流程、约束)
当前 assets/ 顶层按 domain 组织,实际目录以仓库中的现状为准;当前可见的顶层 domain 包括:
biocfdclimatematchem每个 domain 下的 category 目录可能不同,按实际存在的目录检索,不要求所有 domain 都具有同一套子目录。当前常见 category 包括:
componentsmodelsdatapipesapplicationworkflow-planningcontracts本技能没有统一索引文件,原语信息以各资源目录下的
metadata.json为主。因此必须先确定检索范围,再枚举该范围内的资源目录并逐个读取metadata.json,不要凭目录名猜测。
filters.domain 显式提供 domain。
filters.domain 明确给出,则直接使用调用方提供的 domain,只检索对应的 assets/<domain>/,且不要再读取 skills/onescience-primitives/references/domain_profile.md 做二次判断filters.domain 未提供、为空或不可靠,则必须先读取 skills/onescience-primitives/references/domain_profile.md,再结合 user_request 与 task_state_summary 按其中定义的领域信号进行回退判定climate | cfd | matchem | bio,则只检索对应的 assets/<domain>/unknown,说明无法稳定路由到单一领域;此时允许检索 assets/ 下全部 domain 目录,但输出中的 detected_domain 必须保持为 unknownskills/onescience-primitives/references/bio_profile.md文档作为召回提示;该文件只辅助候选排序和边界解释,不能替代 metadata.json 证据user_request、content_request、task_state_summary 判断是否明确指定资源类别。
filters.keyword 提供了关键词时执行;结合目录名、metadata.json 的 name、domain、description 与 tags 排除明显不相关的资源。未提供关键词时跳过本步。metadata.json,对比 user_request 与 description 字段的语义相关性。task_state_summary 进一步筛选和排序,但不能用上下文替代资源本身的证据。content_request 分别读取并填充该资源的 content 字段:
"摘要":优先只读取 metadata.json,生成简短摘要,description 字段的关键信息不进行过度压缩"使用说明":读取 usage.md(若存在)"规格说明":读取 spec.md(若存在)"工作流规划知识":读取 workflow_planning.md(若存在)"完整内容":读取该资源目录下实际存在的相关文件并组织为结构化内容(见下方 content 完整格式)models category 下的资源)且需要获取规格知识和使用知识时,必须执行以下步骤:
spec.md 文件,定位 # key_dependencies 部分components category 下检索对应的组件资源目录spec.md(若存在)和 usage.md(若存在)dependent_components 字段附加到该模型资源的输出中components 中不存在,在 limitations 中说明缺失的组件content_request 为 "摘要",也必须检索依赖组件并至少返回其基本信息(name、description)detected_domain、task_intent、每个资源的 type,并按「质量要求」生成 why_matched、摘要形式的 content、limitations。resource_retrieval_request:
user_request: <用户需求描述>
task_state_summary: <当前任务状态摘要,可选>
content_request: <内容需求,可选>
filters:
domain: <领域过滤,可选>
keyword: <关键词过滤,可选>
与统一资源契约保持一致:
resource_retrieval_result:
status: success | partial | failed
query_summary: <需求摘要>
detected_domain: <climate | cfd | matchem | bio | unknown>
task_intent: <model | component | datapipe | application | workflow >
matched_resources:
- type: model_primitive | component_primitive | datapipe_primitive | application_primitive
path: assets/<domain>/<category>/<primitive_name>/
name: <原语名称>
why_matched: <匹配理由,1句话>
limitations: <使用限制,1-2句话>
content: <根据 content_request 组织的内容>
content 完整格式(仅当 content_request 为 "完整内容" 时):
content:
metadata: <metadata.json 内容>
spec: <spec.md 内容>
usage: <usage.md 内容>
workflow_planning: <workflow_planning.md 内容>
输出中的枚举字段不能凭空填写,按以下规则从数据推导:
domain scope 判定:先判断请求是否路由到单个 domain。
filters.domain 明确时优先使用,且一旦使用就不要再读取 domain_profile.md 进行二次判定filters.domain 缺失时,必须读取 skills/onescience-primitives/references/domain_profile.md,按其中标准化规则将请求映射到 bio | cfd | climate | matchem | unknownbio | cfd | climate | matchemunknown,则不路由到单个目录,而是检索全部 domain 目录并保持 detected_domain: unknowncategory scope 判定:按自然语言语义映射到 category 目录。
model → modelsmodule / block / encoder / decoder → componentsdatapipe / dataset / loader / preprocessing → datapipesapp / toolkit / template → applicationplanning / route / decision → workflow-planningdetected_domain:按标准化 domain 枚举输出 climate | cfd | matchem | bio | unknown。
filters.domain 已明确提供,则优先使用该值作为检索路由依据;输出时仍需与命中资源的 metadata.json.domain 保持一致性filters.domain 缺失,则以 domain_profile.md 回退判定结果作为领域判断基线unknown、或资源证据不足以支撑单一领域,则填 unknownmatched_resources[].type:优先由资源所在 category 与 metadata.json.type 共同推导。
models 下的 model → model_primitivecomponents 下的 component 或普通 module → component_primitivedatapipes 下的 datapipe → datapipe_primitiveapplication 下的 application → application_primitivemetadata.json.type 与目录语义冲突,优先采用更能反映资源用途的目录语义,并在 limitations 中说明task_intent:根据 user_request 的主要意图判断。
modelcomponentdatapipeapplicationcontractworkflowmixedfilters.domain 时,必须直接使用该值路由,且不得再读取 domain_profile.md 做二次领域判断。filters.domain 时,必须先读取 skills/onescience-primitives/references/domain_profile.md 做回退判定。climate、cfd、matchem 或 bio 时,只能搜索对应 domain 目录。unknown 时,才允许搜索全部 domain 目录。metadata.json 的 description 字段召回,不依赖额外索引文件。why_matched 说明 query 与 description 的对应关系(1句话)。content 从 description 字段提取核心能力一段话。limitations 优先从 spec.md 或 workflow_planning.md 的约束部分提炼;若相关文件缺失,可根据 metadata.json 已知边界简要说明。usage.md、spec.md 或 workflow_planning.md;若请求内容部分存在、部分缺失,可返回 status: partial,并在 limitations 中说明缺失项。matched_resources: [],不编造资源。