Community研究与数据分析github.com

ma455173220/materials-project-workflow

根据研究目标规划和运行特定项目的机器学习、VASP 及 HPC 材料计算,涵盖选择、恢复、监控和可用结果。适用于计算材料项目规划或活跃计算;AiiDA 为可选组件。

materials-project-workflow 是什么?

该技能将材料科学项目管理工作流程化,从研究目标出发,指导 AI agent 执行下一合理操作或提出包含阶段、结果和决策点的简短路线。它支持在 Codex、Claude Code 等本地 agent 平台上运行,利用本地项目文件,并可选地集成 AiiDA 用于溯源。技能通过强制使用精确的力收敛标准(fmax = 0.01 eV/Å)和每结构累积步数上限(3000 步)来避免常见的机器学习优化陷阱,并通过自动恢复(如遇到作业超时)减少手动干预。对于 HPC 工作负载,它强制要求在首次提交前进行人工审查,并明确定义 DFT 阶段内的重启次数限制,以节省计算预算。该技能通过一个可选的默认文件(DEFAULT.md)实现用户偏好持久化,并在每次项目中使用 WORKFLOW.md 记录所选工作流,从而实现对跨项目经验的复用。

兼容平台✓Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/ma455173220/materials-project-workflow-skill/tree/HEAD/skills/materials-project-workflow

Installed? Explore more 研究与数据分析 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

材料项目工作流

从研究目标和项目实际的文件、结果、任务和指令开始。当下一步行动明确且处于研究者已确认的范围内时,执行它。否则,提出一个简短的路由:每个阶段要回答什么问题,哪些结果能推进项目,以及研究者必须在何处做出科学选择。询问下一步并不意味着批准未经选择的科学设置或额外的计算。使用用户的提示语言和项目约定。不要让上岗引导成为小任务的先决条件。

根据请求调整工作量。对于小修改,检查受影响的设置和当前记录,重用现有工具,并运行与更改相关的检查。仅当新证据或操作要求时,才重新阅读未更改的材料或重复已验证的备份/已接受结果的评估。为具体的重复性需求构建辅助工具,而不是为每个参数变化都构建。遵循现有项目约定;本技能不要求新的审计框架或重复的授权文档。

如果存在,则读取研究者保存的默认配置:位于 agent 配置文件夹(对于 Codex,为 $CODEX_HOME,通常是 ~/.codex;对于 Claude Code,为 ~/.claude)中的 materials-project-workflow/DEFAULT.md。这是该用户的偏好,而非项目权威;仅在本技能指明之处,它代表研究者的决定,并且项目可以覆盖它。对于研究者没有保存默认配置的第一个实质性项目,邀请他们描述其常规工作流,提出改进建议,并仅保存他们为后续项目选择的路由;对于一次性任务,无需此设置即可继续。 示例个人默认配置 展示了针对 2D 吸附体系的保存默认配置可能包含的内容;仅当研究者的默认配置或项目选择了这些设置时才应用它们。对于新项目,使用可选模板,在简短的 WORKFLOW.md 项目中记录所选阶段、候选数量、工具、有意义的输入设置、备份目的地/保留策略和审查点;仅当所选阶段需要未知能力时才询问。后续项目确认差异,而无需重复已确定的偏好。

默认情况下,将所有 ML 候选结构直接优化至 fmax = 0.01 eV/Å,然后选择结构,每结构累积优化步数为 3000,除非研究者选择其他力收敛标准或步数限制。从一开始就将实际的运行器设置为此限制,并在收敛时提前结束,不进行预先计划的短步长运行。无论使用哪个 ML 工具(从保存的默认配置或项目选择中),都遵循其手册了解如何运行,并将力收敛标准和步数限制明确写入每个复制的运行器;工具自身的默认值不能替代它们。本技能(而非工具手册)设定力收敛标准、步数上限(提高上限需要研究者同意)、候选选择、审查、监控、记录和 STATUS;使用预定的后续行动,而非手册中的会话内轮询,本地启动检查除外。工具自身的投递到 DFT 列表是一个提议;应用项目已商定的候选数量和多样性规则,并记录任何差异。自动恢复真正的中断(包括墙时间超时),在剩余配额内独立进行,不需要引入 DFT 重启-审查关卡:如果存在,则使用工具的恢复功能;如果没有,则从最后一个保存的结构继续单个结构,仅使用其剩余的步数。如果恢复拒绝,或者批处理无法携带每个结构的剩余步数,则进行诊断和报告,而不是绕过问题。不要自动添加粗 ML 遍数;可为特定项目选择其他路由。对于本地 ML,通过限制资源使用来保持桌面响应能力。根据实际硬件、当前负载以及交互式或专用使用情况选择本地资源;重用已验证的机器配置文件,考虑其他项目,并在提高吞吐量之前验证有效的工人/线程设置和内存余量。资源压力需要自动节流,而非降低科学设置。

对于新的路由和站点,将首次 HPC 输入准备作为研究者审查点。解释所提议的方法、测试/优化顺序、资源、每任务墙时间和最大重启次数,并附上简要理由;区分已商定的选择和提议。对目标(如体相优化)的同意,或 HPC 路径/脚本的提供,不被视为对未经选择的方法、额外测试、账户或预算的批准。在编排整个系列或提交任务之前,准备一份实际的代表性草稿供人工审查:结构、INCAR、KPOINTS、POTCAR 标识和生成方法、可执行文件、适配的站点脚本、资源和工作范围。可使用项目授权的读取和 POTCAR 生成来使该草稿可审查。优先使用研究者在该 HPC 站点上成功的脚本;否则,改编该站点的官方示例。保持项目一致的输入排序和格式,以便 diff 能暴露有意义的更改。一旦审查通过,相同方法下的相关结构和中间体无需逐个审查,即使它们的几何结构和 POTCAR 组成不同。对于真正新的计算类型或不相关的路由,审查一个实际示例。经过审查的首次输入不是科学结果或无限执行权限。研究者的保存默认配置可通过指定工具、站点/账户和每次筛选的成本上限来豁免 HPC ML 筛选的此审查;如果缺少这三项中的任何一项,则审查适用,项目可以收紧但不能放松这些条件(除非研究者同意)。在此类豁免下,在任何可能导致最坏情况成本(每个结构达到步数上限,包括恢复)超过限制的筛选之前进行询问。根据工具的测量吞吐量和步数统计信息设置墙时间,并保留余量;在此范围内的超时被视为可恢复的,而非预先计划的短步长运行。在运行记录中记录预估和实际成本(核心小时数或站点的单位)。

对于 DFT,在首次输入审查时确认每个阶段的每任务墙时间和每结构最大重启次数。初始任务不计入重启次数;同一阶段内的每次后续继续或纠正执行(即使在目录或优化器更改之后)都算作一次重启。在现有运行记录中记录使用情况。在这些限制内,在自动继续之前进行诊断。如果最后一次允许的重启结束而未能通过该阶段,则在 STATUS.md 中报告诊断结果,并在提交另一个任务之前获得人工审查和明确的延期。收敛的阶段正常推进;达到计数本身不会停止其他方面健康运行的任务。遵守任何已商定的额外项目预算。

在所选路由内执行常规的提交、监控、阶段移交和有界恢复,无需因每个常规变更而暂停。保持一个提交/重试所有者,并在调用调度器之前记录唯一的尝试标识符以及输入/脚本摘要。如果提交结果未知,则保持该尝试处于隔离状态:对照运行记录、队列、计费和输出进行核对;在 squeue 中不存在或 sacct 延迟并不证明没有任务被接受。在结果得到肯定解决之前,不要自动重新提交;如果结果仍然不明确,则询问。对于 VASP 几何优化(粗或精,非 CI-NEB 或 IDM),使用研究者默认配置或项目选择的优化器,否则使用原生 CG(IBRION=2)。对于标签、验证、切换和其他失败,阅读优化器和恢复指南;在进行合理纠正之前检查电子和离子趋势,而不是盲目重启。保留每次尝试的输入、输出和来源。如果某个活跃任务确认为 NaN、严重损坏或明显失控且消耗着资源,则保留证据并取消该特定任务;在任何重新提交之前进行诊断。当物理模型、科学目标、最终比较协议、站点/账户或商定的执行限制发生变化时,或者当材料歧义仍然存在时,进行询问。仅比较在项目共同的能量影响设置下获得的最终能量。

对于反应路径和过渡态,阅读 CI-NEB/IDM 指南。仅对研究者选择的路径进行独立的频率验证运行。IDM 方向寻找频率计算属于已批准的 IDM 恢复的一部分,而非对每个 CI-NEB 结果的自动验证。

对于 Wannier 紧束缚模型和 Wilson 环,阅读 Wannier 指南;对于基于对称本征值的不变量(宇称判据、不可约表示、对称性指标),阅读对称性本征值指南。

在活跃的本地 ML 或 HPC 工作期间,维护一个项目根目录下的 STATUS.md 文件,内容应在一屏内可读:待处理操作、未解决的异常、分组后的当前工作/下一个里程碑以及几个简短的最新事件。空的操作/异常部分仅包含“无”;链接详细的作业、证据和更早的历史。使用状态、监控和目录指南。首次创建或采用此页面时,告知研究者它正在使用中,提供一个可点击的文件链接,并简要说明它跟踪什么以及是否需要他们的操作。在每个有意义的 workflow 步骤结束时,检查当前证据,并在结果、所需操作、异常或下一步发生更改时更新 STATUS.md;在报告步骤完成或移交之前执行此操作。未经更改的检查无需重写文件。对于活跃工作的调度和访问,使用链接的指南;保持常规的、未更改的进度静默,并在工作协调一致后停止后续行动。确保已采用的结果立即可查找,原始证据可追溯,并且商定的备份是最新的。不要在云同步文件夹(如 OneDrive)内创建文件系统链接;在 HPC 上,允许使用带有相邻 FINAL_CHOICE.md 的 final_choice 符号链接。

当向研究者提供 POSCAR/CONTCAR 以供查看时,如果其物种行携带 POTCAR 标签或哈希值(例如 Ti_sv/0a1b2c3d4,VESTA 无法读取),则对其运行 scripts/clean_poscar_species.py,并指向 _vesta.vasp 副本;原始文件保持不变。

本技能独立运行。在适当的情况下使用经过验证的本地/项目工具;AiiDA 是一个可选的可溯源层,绝不是先决条件或可读文件的替代品。

相关技能