Skip to main content

Metadata quality bot for software repositories, leveraging metacheck for analysis and GitHub/GitLab APIs for issue management.

Project description

sw-metadata-bot

DOI License: MIT Version Python 3.10--3.12 CI (build) Code style: ruff coverage interrogate

An automated bot that analyzes repository metadata quality and creates issues with improvement suggestions.

Part of the CodeMetaSoft project to improve research software metadata quality.


📋 What This Bot Does

If you received an issue from this bot, it means your repository's metadata was automatically analyzed and some improvements were detected.

The issue contains:

  • Pitfalls: Critical metadata issues that should be fixed
  • Warnings: Metadata improvements that are recommended
  • Suggestions: Specific recommendations on how to fix each issue

Example Issues You Might See

  • Missing or incomplete LICENSE file
  • No CITATION.cff file (for software citation)
  • Incomplete or missing README sections
  • Missing repository metadata (topics, description, etc.)
  • Outdated dependencies
  • Missing software documentation

💬 How to Respond

If You Agree with the Suggestions

Fix the identified issues and close the issue with a comment explaining what you fixed. Your improvements help your software become more discoverable and citable!

If You Disagree or Have Questions

Feel free to comment on the issue. We're happy to discuss the suggestions and help clarify what's needed.

If You're Not Interested

Simply comment "unsubscribe" on the issue and we'll remove your repository from future analysis.


🔍 What Analysis Is Used

This bot uses RSMetaCheck, which analyzes:

  • Software metadata completeness
  • Citation and documentation quality
  • Repository structure and best practices

The bot does not:

  • Modify your code or files
  • Make pull requests
  • Have access to your repository secrets

📚 Learn More


🛠️ For Maintainers Running This Bot

See CONTRIBUTING.md for setup and usage instructions.

The pipeline is config driven: one JSON file defines the repository list, issue message, inline opt-outs, and output layout.

Supported platforms:

  • ✅ GitHub.com
  • ✅ Gitlab.com

Future:

  • Self-hosted GitLab instances

📝 License

See LICENSE file.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sw_metadata_bot-0.4.1.tar.gz (41.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sw_metadata_bot-0.4.1-py3-none-any.whl (33.7 kB view details)

Uploaded Python 3

File details

Details for the file sw_metadata_bot-0.4.1.tar.gz.

File metadata

  • Download URL: sw_metadata_bot-0.4.1.tar.gz
  • Upload date:
  • Size: 41.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for sw_metadata_bot-0.4.1.tar.gz
Algorithm Hash digest
SHA256 80150b3ef1f1407759cfb657c164089179e8f79bda27ea08842c5741b576cd0e
MD5 3ec793ede370f187e146327646f2ef7f
BLAKE2b-256 b9abb386a38198c50705f67fb8c32b087b9c877806b283c554af17fb031ac3f5

See more details on using hashes here.

Provenance

The following attestation bundles were made for sw_metadata_bot-0.4.1.tar.gz:

Publisher: ci.yml on SoftwareUnderstanding/sw-metadata-bot

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sw_metadata_bot-0.4.1-py3-none-any.whl.

File metadata

File hashes

Hashes for sw_metadata_bot-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 65f3ad19defc8b16e5419f0114aeee4e3ecc8fdcf4d18e168d6b3caaaec5f54b
MD5 df4f6b89511c66da0ec5572dd5f14052
BLAKE2b-256 5b38b92e1d14bb07abca89715d06c5a2c680289521b5c9bf890ecbeb33575152

See more details on using hashes here.

Provenance

The following attestation bundles were made for sw_metadata_bot-0.4.1-py3-none-any.whl:

Publisher: ci.yml on SoftwareUnderstanding/sw-metadata-bot

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page