Repository Notes¶
This repository uses GitHub as the primary repository and GitCode as a mirror.
- Primary repository: https://github.com/MS33834/autoship-cli
- GitCode mirror: https://gitcode.com/badhope/autoship-cli
Please submit Issues and Pull Requests directly to the GitHub primary repository. GitCode is only used for code mirroring and does not handle Issues/PRs.
Contributing Guide¶
Thank you for your interest in AutoShip-CLI! We welcome and encourage community contributions.
Code of Conduct¶
By participating in this project, you agree to abide by our Code of Conduct.
How to Contribute¶
- Report bugs: Please use GitHub Issues and include reproduction steps, environment information, and a minimal reproduction example.
- Make suggestions: Share your ideas via GitHub Discussions.
- Submit code: Fork the repository, create a feature branch, and submit a Pull Request.
Development Environment¶
This project uses uv to manage dependencies.
Code Standards¶
- Use ruff for formatting and linting.
- Use pyright for strict type checking.
- Commit messages should be in English and follow the Conventional Commits specification.
- New features must include tests, keeping coverage no lower than 85%.
Submitting a Pull Request¶
- Make sure all checks pass:
uv run ruff check src tests,uv run pyright,uv run pytest. - Run the security scan:
uv run bandit -r src -ll. - Explain the reason for the change, its impact scope, and how it was tested in the PR description.
- Wait for maintainer review and make changes if necessary.
Submitting Plugins to the Registry¶
We welcome third-party plugins! Please follow this process to submit:
- Create a plugin project using
autoship-sdkand publish it to PyPI. - Create an issue on GitHub using the Plugin Submission template.
- Maintainers will review based on the following checklist:
- The plugin follows the AutoShip hook spec and does not perform unauthorized operations.
- It includes a README, an open-source license, and basic tests.
- The name does not conflict with existing plugins and follows the
autoship-*naming convention. - When requesting
verified, a SHA256 checksum or GPG signature must be provided. - After approval, the plugin is added to
src/autoship/registry/plugins.jsonand automatically appears in the Plugin Registry Web UI.
License¶
By contributing code, you agree that your contributions will be licensed under the same MIT license as the project.