Source code analysis for algorithm extraction
Use when when you need to reverse-engineer or formally document the computational steps within a closed or under-documented scientific software module—particularly when the software performs in silico generation, enumeration, or filtering of candidate molecular structures and the published paper or.From its SKILL.md
npx -y skills add HolobiomicsLab/asb-skill-collections --skill source-code-analysis-for-algorithm-extractionAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 14 stars14 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.9 KB, ~1.2k tokens by cl100k_base, as published. Nobody here has run it
source-code-analysis-for-algorithm-extraction
Summary
Apply static code analysis to scientific software repositories to extract algorithmic workflows, function call chains, and transformation rules governing in silico computation. This skill deconstructs complex chemo-informatics pipelines by tracing source code structure and reconstructing the computational logic as flowcharts or directed acyclic graphs suitable for documentation and validation.
When to use
When you need to reverse-engineer or formally document the computational steps within a closed or under-documented scientific software module—particularly when the software performs in silico generation, enumeration, or filtering of candidate molecular structures and the published paper or README lacks sufficient algorithmic detail. Apply this skill when you have direct access to source code and need to extract fragmentation logic, enumeration rules, or property-based filtering steps that control intermediate computations.
When NOT to use
- Source code is unavailable or proprietary and cannot be accessed for analysis.
- The algorithm is already fully documented in peer-reviewed publications or official method papers with sufficient detail for reproducibility.
- Your goal is to run or execute the pipeline operationally rather than to understand or document its internal logic.
Inputs
- GitHub repository URL or local clone (e.g., https://github.com/NLeSC/MAGMa)
- Target subproject or module name (e.g., 'job')
- Research question defining the algorithm scope (e.g., metabolite generation rules)
Outputs
- Directed acyclic graph (DAG) or flowchart JSON representation showing inputs, intermediate computations, and outputs
- Annotated function call chains with algorithm identifiers and computational step descriptions
- Extracted parameter definitions, conditional branches, and transformation rules controlling candidate generation
- Static code analysis report mapping source code locations to algorithmic logic
How to apply
Begin by cloning or fetching the target GitHub repository and identifying the subproject or module containing the algorithm of interest (e.g., the job subproject within NLeSC/MAGMa). Perform static code analysis by tracing function definitions, call chains, and data transformations in the metabolite generation modules—examine fragmentation logic, molecular property computation, and isomer enumeration routines. Extract parameter definitions, conditional branches, and transformation rules that control candidate generation. Map these findings into a directed acyclic graph or flowchart JSON representation annotated with function names, algorithm identifiers, and key computational steps. Cross-validate extracted logic against any available unit tests, comments, or configuration files. The rationale is that in silico generation pipelines are deterministic and rule-based; documenting their structure enables reproducibility, validation, and informed reuse.
Related tools
- MAGMa (Target software system for source code analysis to extract in silico metabolite generation and annotation logic) — https://github.com/NLeSC/MAGMa
- NLeSC/MAGMa GitHub repository (Source code repository containing job, pubchem, web, and joblauncher subprojects to be statically analyzed) — https://github.com/NLeSC/MAGMa
Evaluation signals
- Extracted function call chain is acyclic and traces completely from input (parent structure, generation rules) to output (candidate metabolite sets) without unresolved references.
- Flowchart or DAG JSON is valid, machine-readable, and includes ≥80% of distinct functions and decision points identified during manual code inspection of the target module.
- Parameter definitions extracted from source code (fragmentation thresholds, isomer enumeration limits, property filters) are consistent with GitHub documentation, README examples, or unit test fixtures.
- Reconstructed transformation logic can be validated by executing a simple test case (e.g., a small parent molecule) through the identified pipeline and confirming outputs match the original software.
- All annotated function names correspond to actual definitions in the source repository at the cited line numbers or file paths.
Limitations
- Static analysis alone cannot capture runtime behavior, dynamic dispatch, or plugin-based rule loading; integration testing may be necessary to fully validate reconstructed logic.
- No changelog documentation was found in the repository, making it difficult to track algorithmic changes across versions—extracted logic may be version-specific.
- Obfuscated, auto-generated, or heavily templated code may yield incomplete or misleading function call chains; manual inspection and validation remain necessary.
- In silico metabolite generation is computationally intensive and rule-dependent; extracted parameters may require domain expertise (chemoinformatics, mass spectrometry) to interpret correctly.
Evidence
- [other] Clone the NLeSC/MAGMa GitHub repository and locate the job subproject source files.: "1. Clone the NLeSC/MAGMa GitHub repository and locate the job subproject source files."
- [other] Perform static code analysis on the metabolite generation modules to identify algorithm entry points, function call chains, and data transformations.: "2. Perform static code analysis on the metabolite generation modules to identify algorithm entry points, function call chains, and data transformations."
- [readme] The project develops chemo-informatics based methods for metabolite identification and biochemical network reconstruction in an integrative metabolomics data analysis workflow.: "The project develops chemo-informatics based methods for metabolite identification and biochemical network reconstruction in an integrative metabolomics data analysis workflow."
- [other] Construct a directed acyclic graph or flowchart JSON representation showing inputs (parent structures, generation rules), intermediate computations (fragmentation, isomer enumeration, property filters), and outputs (candidate metabolite sets).: "5. Construct a directed acyclic graph or flowchart JSON representation showing inputs (parent structures, generation rules), intermediate computations (fragmentation, isomer enumeration, property"
- [readme] MAGMa is a abbreviation for 'Ms Annotation based on in silico Generated Metabolites'.: "MAGMa is a abbreviation for 'Ms Annotation based on in silico Generated Metabolites'."
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.