agentsclimarketplace

Pip requirements file creation

Skill HolobiomicsLab/asb-skill-collections/collections/metabolomics/v2/skills/pip-requirements-file-creation

Use when you have identified all pinned software dependencies for a Python project (typically from README, setup.py, or environment documentation) and need to create a machine-readable artifact that can reliably reconstruct that exact environment.From its SKILL.md

Install
npx -y skills add HolobiomicsLab/asb-skill-collections --skill pip-requirements-file-creation

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 15 stars15 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its file declares

Copied from the file, not written here

The file declares its own license as CC-BY-4.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

7.4 KB, ~1.4k tokens by cl100k_base, as published. Nobody here has run it

pip-requirements-file-creation

License: restricted — no clear open-source license detected for the underlying tool; verify licensing before commercial use or redistribution. <!-- asb-license-banner -->

Summary

Generate a pinned requirements.txt file that captures exact software dependency versions for a Python project, enabling reproducible environment reconstruction across platforms. This skill is essential when documenting machine learning implementations that depend on specific, incompatible library versions.

When to use

Apply this skill when you have identified all pinned software dependencies for a Python project (typically from README, setup.py, or environment documentation) and need to create a machine-readable artifact that can reliably reconstruct that exact environment. Specifically useful for deep learning or scientific computing projects where minor version mismatches cause incompatibility (e.g., Keras 2.2.0 with TensorFlow 1.8.0 backend).

When NOT to use

  • When dependency versions are intentionally flexible or use version ranges (e.g., >=2.0,<3.0) rather than pinned versions — use a different versioning strategy.
  • When the project uses non-Python dependencies or C/C++ extensions that require system-level package managers — supplement with additional environment specification formats.
  • When the target environment is already containerized (e.g., Docker) — consider whether requirements.txt addition provides value beyond the container specification.

Inputs

  • Project README or documentation containing pinned software versions
  • Python version specification (e.g., Python 3.6.12)
  • List of dependency packages with explicit version numbers

Outputs

  • requirements.txt file with format 'package==version' for each dependency
  • environment.yml file (Conda format) for cross-platform reproducibility
  • Validation report confirming version compatibility

How to apply

Parse the project's documentation (README, setup.py, or supplementary materials) to extract all pinned package names and their exact version numbers. For each dependency, create a single line in requirements.txt using the format 'package==version', listing all eight packages with pinned versions. Validate the requirements.txt syntax and confirm compatibility with the target Python version (e.g., Python 3.6.12) using a dependency resolver tool such as pip-compile or pipdeptree. Finally, generate both requirements.txt (pip) and environment.yml (Conda) formats to maximize reproducibility across different package managers and operating systems.

Related tools

  • Python (Runtime environment; version 3.6.12 specified as requirement)
  • Keras (Deep learning library dependency; version 2.2.0 pinned)
  • TensorFlow (Backend for Keras; version 1.8.0 pinned)
  • numpy (Numerical computing dependency; version 1.15.4 pinned)
  • scikit-learn (Machine learning library dependency; version 0.23.2 pinned)
  • scipy (Scientific computing dependency; version 1.0.0 pinned)
  • seaborn (Visualization library dependency; version 0.9.0 pinned)
  • Pandas (Data manipulation dependency; version 1.1.1 pinned)
  • h5py (HDF5 file format handling dependency; version 2.7.1 pinned)
  • pip-compile or pipdeptree (Dependency resolver tool for validating version compatibility)

Evaluation signals

  • requirements.txt file exists and contains all nine dependencies (Python 3.6.12 plus eight packages) with format 'package==version'
  • Syntax validation passes: no malformed lines, all version specifiers are recognized by pip
  • Dependency resolver confirms no version conflicts when installing against Python 3.6.12 target
  • environment.yml (Conda format) successfully parses and lists equivalent pinned versions
  • Freshly installed environment from requirements.txt produces identical package versions to documented specification

Limitations

  • Python 3.6.12 is deprecated and no longer receives security updates; users may encounter platform incompatibility or security vulnerabilities when using this old environment.
  • Some pinned versions (e.g., TensorFlow 1.8.0) are incompatible with modern CUDA versions, limiting reproducibility on newer hardware.
  • Windows and macOS may have different binary availability for old package versions; platform-specific dependency resolution may fail silently.

Evidence

  • [other] The massNet implementation requires Python 3.6.12, Keras 2.2.0 with Tensorflow 1.8.0 backend, and eight pinned dependency packages: numpy 1.15.4, sklearn 0.23.2, scipy 1.0.0, seaborn 0.9.0, Pandas 1.1.1, and h5py 2.7.1.: "Python 3.6.12, Keras 2.2.0 with Tensorflow 1.8.0 backend, and eight pinned dependency packages: numpy 1.15.4, sklearn 0.23.2, scipy 1.0.0, seaborn 0.9.0, Pandas 1.1.1, and h5py 2.7.1"
  • [other] Generate a requirements.txt file listing each dependency with its pinned version in the format 'package==version'.: "Generate a requirements.txt file listing each dependency with its pinned version in the format 'package==version'"
  • [readme] We have implemented our machine learning model using the following software items: 1- Python(3.6.12) 2- Keras (2.2.0) with a Tensorflow(1.8.0) backend. 3- Packages: numpy(1.15.4), sklearn(0.23.2), scipy(1.0.0), seaborn (0.9.0), Pandas(1.1.1.), and h5py(2.7.1): "Python(3.6.12) 2- Keras (2.2.0) with a Tensorflow(1.8.0) backend. 3- Packages: numpy(1.15.4), sklearn(0.23.2), scipy(1.0.0), seaborn (0.9.0), Pandas(1.1.1.), and h5py(2.7.1)"
  • [other] Validate the requirements.txt syntax and confirm all listed versions are compatible with Python 3.6.12 using dependency resolver tools.: "Validate the requirements.txt syntax and confirm all listed versions are compatible with Python 3.6.12 using dependency resolver tools"
  • [other] Export environment specification in both requirements.txt and environment.yml (Conda) formats for reproducibility across platforms.: "Export environment specification in both requirements.txt and environment.yml (Conda) formats for reproducibility across platforms"

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.