"Guides OpenMM maintainer and extension-author work on C++ core
Scanned 9/8/2026
Install to Claude Code
npx -y skills add VectorSpaceLab/AREX-Skill --skill development-extensions --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Development Extensions?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/vectorspacelab-development-extensions)More formats (shields.io, HTML) on the badges page.
---
name: development-extensions
description: "Guides OpenMM maintainer and extension-author work on C++ core
APIs, Python wrappers, serialization, plugins, platform kernels, CMake builds,
and focused tests."
disable-model-invocation: true
metadata:
disco-role: operating
license: MIT, GPL, LGPL
---
# OpenMM Development Extensions
Use this sub-skill when the task is to change or extend OpenMM itself rather than to run ordinary molecular simulations. It is for maintainers and extension authors working on C++ APIs, implementation classes, kernels, plugins, serialization, Python wrapper generation, or build/test triage.
## Route by Task
- For repository layout, ownership boundaries, and the public C++ to implementation to kernel call chain, read `references/repository-architecture.md`.
- For configuring builds, selecting CMake options, wrapper builds, `ctest`, and Python test candidates, read `references/build-test-workflows.md`.
- For adding a C++ Force, Integrator, plugin, platform kernel, serialization proxy, or shared CUDA/OpenCL/HIP implementation, read `references/plugin-and-platform-development.md`.
- For symptoms such as missing platform kernels, plugin load order problems, wrapper build environment variables, serialization compatibility, CMake option mistakes, and ABI/compiler issues, read `references/troubleshooting.md`.
## Boundaries
- Stay here for maintainer workflows: C++ API and implementation edits, platform-specific kernels, plugin registration, serialization proxies, Python wrapper maintenance, CMake build/test layout, and contribution-safe test selection.
- Route normal Python simulation recipes, reporters, checkpoints, and application workflows to `../simulation-workflows/SKILL.md`.
- Route force-field XML, `ForceField`, `Modeller`, PDB/mmCIF, and modeling data workflows to `../force-fields-modeling/SKILL.md`.
- Route user-level custom expression forces and Python `CustomIntegrator` recipes to `../custom-forces-integrators/SKILL.md`; return here only when the user needs a compiled C++ API, kernel, or plugin.
- Route runtime platform choice, precision/performance tuning, and hardware-facing simulation advice to `../platforms-performance/SKILL.md`; return here for implementing or debugging platform code.
## Maintainer Defaults
- Treat C++ build, plugin, wrapper-generation, and native test commands as checkout/build-tree workflows. Do not present them as safe zero-cost verification unless the user has an existing build tree and asks to run them.
- For a new OpenMM feature, check that the API, implementation, serialization, Python exposure, documentation, and tests are all considered; OpenMM’s contribution guidance expects this breadth for nontrivial features.
- Prefer the Reference platform as the first correctness implementation, then add CPU and Common Compute/GPU implementations where the feature requires them.
- If a useful source helper is mentioned, keep it as reference-only unless it can run independent of an OpenMM checkout/build tree. The maintainer helpers for `ctest` selection and wrapper generation are intentionally not bundled as runtime scripts because they depend on generated build products and source-tree state.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!