AGENT SKILL

openfe

Use OpenFE for alchemical free energy setup, network planning, protocol configuration, CLI execution, and result analysis workflows in molecular simulation campaigns.

License 许可
MIT
最近更新
2026-09-03
Stars
★ 351
Forks
27

01 前言 Front Matter

name
openfe
license
MIT
metadata
{ "disco-role": "operating" }
description
Use OpenFE for alchemical free energy setup, network planning, protocol configuration, CLI execution, and result analysis workflows in molecular simulation campaigns.
disable-model-invocation
true

02 资源文件 5

03 SKILL.md 正文

OpenFE

Use this repo skill when a task involves OpenFE, Open Free Energy, alchemical free energy calculations, RBFE/RHFE, ABFE/AHFE, SepTop, OpenMM-backed protocol setup, openfe CLI workflows, or post-run OpenFE result analysis.

OpenFE is a Python package and CLI for planning and executing alchemical free energy calculations. Keep future-agent work safe by separating planning, protocol configuration, execution commands, and result interpretation.

Start Here

  1. Read Repository Provenance before deciding whether this skill matches a current checkout or should be refreshed.
  2. Read Installation and Environment for public install routes, import checks, Python support, and OpenMM/GPU environment notes.
  3. Run or adapt check_openfe_environment.py for a safe local diagnostic that does not run simulations.
  4. Use Troubleshooting for cross-cutting install/import/OpenMM/CUDA/JAX/logging failures.
  5. Route the actual task to one of the sub-skills below.

Route by Task

  • Use network-planning for components, ligand/protein/solvent inputs, atom mapping, ligand networks, RBFE/RHFE planning, mapper/scorer choices, and pre-execution data validation.
  • Use protocols for selecting RelativeHybridTopologyProtocol, AbsoluteBindingProtocol, AbsoluteSolvationProtocol, SepTopProtocol, or PlainMDProtocol; editing settings; understanding Transformation, ProtocolDAG, execute_DAG; and OpenMM backend settings.
  • Use cli-workflows for openfe command routing, plan-rbfe-network, plan-rhfe-network, quickrun, charge-molecules, fetch, test, repeat-safe command generation, resume behavior, and command-line troubleshooting.
  • Use results-analysis for result JSON decoding, estimate / uncertainty, ProtocolResult methods, gather, gather-abfe, gather-septop, repeat folders, TSV interpretation, storage metadata, and partial/failed result diagnosis.

Safe Defaults

  • Prefer read-only inspection and command construction before execution. openfe quickrun, full planning commands, charge generation, fetch, and long tests can create files, download data, or run expensive simulation work.
  • Use API-side planning for interactive or programmatic workflows; use CLI-side planning when the desired output is a directory of transformation JSONs for quickrun.
  • Treat OpenFE components, ligand networks, protocols, transformations, and results as provenance-sensitive objects. Rebuild corrected objects rather than mutating existing ones in place.
  • Keep repeat execution paths unique. Reusing the same quickrun output file or work directory across repeats risks overwrite or resume-cache confusion.
  • Preserve physical units when reporting free energies and uncertainties.

Minimal Checks

After installing OpenFE in a user environment, start with:

python - <<'PY'
import openfe, openfecli
print(openfe.__version__)
print(openfecli.__version__)
PY
openfe --help

For deeper non-mutating checks, run:

python scripts/check_openfe_environment.py --json

Common Handoffs

What Not to Do

  • Do not run simulations, submit scheduler jobs, download tutorial data, or execute long tests just to answer a planning or diagnostic question.
  • Do not assume a GPU warning means OpenMM simulation is on CPU; distinguish OpenMM platform settings from JAX/PyMBAR analysis warnings.
  • Do not tell users to inspect original repository docs or tests as part of this runtime skill; use the bundled references and scripts here.

04 同仓库更多 Skills

VectorSpaceLab
VectorSpaceLab/AREX-Skill

passnet-triton-opt

Make a single PassNet Triton kernel fast AND numerically faithful: performance model (when a replacement can win at all), block/grid/warp tuning, autotune policy, launch overhead, and per-op numeric recipes to pass the dtype baseline tolerances. Use when a pass matches and is correct but speedup below expected, or when correctness fails by small numeric margins.

★ 351
VectorSpaceLab
VectorSpaceLab/AREX-Skill

passnet-solve

END-TO-END playbook for solving one PassNet sample: analyze the computation graphs, decide the optimization strategy (what to fuse, what to replace, what to leave alone), drive the iteration loop, and maximize the sample score. This is the ENTRY skill — invoke it first for any PassNet optimization task; it tells you when to use passnet-pattern-fusion, passnet-triton-opt and passnet-feedback.

★ 351
VectorSpaceLab
VectorSpaceLab/AREX-Skill

passnet-skill

PassNet GPU kernel optimization via compiler passes. Design and implement Triton-based optimization passes, create pass files under ./pass_dir/, self-evaluate with pass_evaluator, and iterate to maximize GPU speedup.

★ 351
VectorSpaceLab
VectorSpaceLab/AREX-Skill

passnet-pattern-fusion

Author PassNet pass files: write patterns that actually MATCH the FX graph, pick fusion regions (which ops to absorb into one Triton kernel), and structure multi-pass submissions with the mandatory shared-dispatch architecture. Use when creating or fixing pattern()/replacement_args()/replacement_func() files, when a pass "failed to match", or when deciding how to fuse multiple kernels/ops.

★ 351
VectorSpaceLab
VectorSpaceLab/AREX-Skill

passnet-orchestrate

Round/batch planning and decision support for PassNet graph optimization. Use for multi-sample triage, worker allocation, eval-budget policy, and post-eval keep/revert decisions. For solving one concrete sample end to end, use passnet-solve as the entry skill; consult this skill only when you need broader planning or a specific decision gate.

★ 351
VectorSpaceLab
VectorSpaceLab/AREX-Skill

passnet-feedback

Fast, deterministic feedback for PassNet work: pre-flight pattern/match verification WITHOUT burning a GPU evaluation, per-node bottleneck analysis of a sample's graphs, and eval-log parsing into per-variant status + estimated score + failure classification. Use BEFORE every GPU evaluation (check_pattern), at the START of a sample (analyze_graph), and AFTER every evaluation (parse_eval_log).

★ 351