Thanks for your interest in contributing! Here's how to get started.
git clone https://github.com/Razee4315/NetLogo_MCP.git
cd NetLogo_MCP
pip install -e ".[dev]"
pre-commit installYou'll need Java JDK 11+ and NetLogo 7.0+ installed for integration testing. Unit tests use mocks and don't require either.
# Run tests
pytest tests/ -v
# Run tests with coverage report
pytest tests/ -v --cov=netlogo_mcp --cov-report=term-missingThis project uses Ruff for linting/formatting and mypy for type checking. Pre-commit hooks run these automatically, or run them manually:
# Lint
ruff check src/ tests/
# Format
ruff format src/ tests/
# Type check
mypy src/netlogo_mcp/- Fork the repository
- Create a feature branch (
git checkout -b feature/my-feature) - Make your changes
- Run tests and linting to make sure nothing breaks
- Commit with a clear message
- Push to your fork and open a Pull Request
Open an issue on GitHub with:
- What you expected to happen
- What actually happened
- Your Python, Java, and NetLogo versions
- Any error messages or logs
- Follow existing patterns in the codebase
- Keep functions focused and well-named
- Add type hints to new functions
- Add tests for new tools or resources
- Run
ruff formatbefore committing