agentsclimarketplace

Static code analysis

Skill HolobiomicsLab/asb-skill-collections/collections/metabolomics/v2/skills/static-code-analysis

Use when when preparing to submit a pull request to a collaborative Python project (like BiG-SCAPE) that mandates PEP8 compliance, or when establishing quality gates for a codebase that has adopted linters as part of its contribution guidelines.From its SKILL.md

Install
npx -y skills add HolobiomicsLab/asb-skill-collections --skill static-code-analysis

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

  • 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

5.1 KB, 785 tokens by cl100k_base, as published. Nobody here has run it

static-code-analysis

Summary

Apply automated linting tools to enforce code style standards (PEP8 compliance) across a Python source tree without executing the code. This skill ensures consistent code quality and catches style violations early in development workflows.

When to use

When preparing to submit a pull request to a collaborative Python project (like BiG-SCAPE) that mandates PEP8 compliance, or when establishing quality gates for a codebase that has adopted linters as part of its contribution guidelines. Use this skill before committing work to ensure your changes pass the project's linting checks.

When NOT to use

  • Input is already formatted and linting checks have already passed upstream (e.g., in CI/CD).
  • Project does not enforce linting standards or uses a different linting tool (e.g., pylint, ruff).
  • You need to enforce runtime behavior or logic errors—flake8 is a style checker, not a type checker or behavioral validator.

Inputs

  • Python source tree (directory of .py files)
  • flake8 configuration file (optional, e.g., .flake8 or setup.cfg)

Outputs

  • Structured lint report (file location, line number, violation code, description)
  • Exit code indicating pass/fail status

How to apply

Obtain the Python source tree from the target repository (e.g., medema-group/BiG-SCAPE). Run flake8 across all Python source files to detect PEP8 violations—flake8 will parse the code statically without execution and report violations by file location and line number. Review the structured lint report to identify style violations, then correct them (or use complementary auto-formatting tools like black to remediate issues automatically). Re-run flake8 to verify violations are resolved before submitting changes.

Related tools

  • flake8 (Static linter that detects PEP8 style violations across Python source files)
  • black (Complementary auto-formatter to remediate PEP8 violations identified by flake8)

Examples

flake8 .

Evaluation signals

  • flake8 exits with code 0 (no violations detected) after running across the full source tree
  • Lint report contains zero violations, or all reported violations have been addressed and lint report is empty on re-run
  • All flagged violations match known PEP8 error codes (e.g., E501 for line too long, F401 for unused import)
  • File locations and line numbers in the report are accurate and correspond to actual violations in the source code

Limitations

  • flake8 checks style compliance only; it does not detect logical errors, type mismatches, or runtime exceptions.
  • Project configuration (setup.cfg, .flake8, pyproject.toml) may override default PEP8 rules, so violations reported depend on the repository's specific linting policy.
  • Some PEP8 violations may be intentional or contextually acceptable; developers must review and judge violations before auto-formatting.

Evidence

  • [other] The BiG-SCAPE project uses flake8 for linting to enforce PEP8 standards across the source tree.: "The BiG-SCAPE project uses flake8 for linting to enforce PEP8 standards across the source tree."
  • [other] Run flake8 linter across all Python source files in the repository to detect PEP8 violations.: "Run flake8 linter across all Python source files in the repository to detect PEP8 violations."
  • [other] Generate and save a structured lint report documenting all identified violations, their file locations, and line numbers.: "Generate and save a structured lint report documenting all identified violations, their file locations, and line numbers."
  • [readme] We use black for auto formatting: "We use black for auto formatting"

What ships with it

Read from the repository

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

Keep looking

Skills are one crate of 326,861. 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.