Thank you for your interest in contributing to repo-wiki!
- Python 3.11+
uvpackage manager
# Clone the repository
git clone https://github.com/bingooyong/repo-wiki-agent.git
cd repo-wiki-agent
# Create virtual environment
uv venv .venv && source .venv/bin/activate
# Install in development mode
pip install -e "."
pip install -e ".[dev]"# Run all tests
pytest
# Run with coverage
pytest --cov=repo_wiki --cov-report=term-missing
# Run specific test file
pytest tests/test_cli.py -vWe use Ruff for linting and formatting Python source. Markdown files are
excluded (extend-exclude = ["*.md"]) so illustrative code fences in docs/
are not rewritten by ruff format.
# Check code style
ruff check .
# Format Python source
ruff format .We follow Conventional Commits:
<type>(<scope>): <description>
Types:
- feat: New feature
- fix: Bug fix
- docs: Documentation changes
- style: Code style changes (formatting, semicolons, etc)
- refactor: Code refactoring
- test: Adding or updating tests
- chore: Maintenance tasks
Examples:
feat(cli): add new generate command
fix(verifier): resolve strict verify false positive
docs(readme): update installation instructions
-
Fork the repository and create a branch from
main:git checkout -b feature/your-feature-name
-
Write tests for any new functionality
-
Ensure tests pass:
pytest ruff check . -
Update documentation if needed
-
Push to your fork and open a Pull Request
-
Fill in the PR template with:
- Description of changes
- Related issue (if applicable)
- Testing performed
- Use GitHub Issues for bug reports
- For security issues, see SECURITY.md
- Include version info and reproduction steps
By contributing, you agree that your contributions will be licensed under the Apache License 2.0.