Contributing¶
Setup¶
git clone https://github.com/neuralis/shepherd-cli
cd shepherd-cli
python -m venv venv
source venv/bin/activate
pip install -e ".[dev]"
pytest
Project Structure¶
shepherd-cli/
├── src/shepherd/
│ ├── cli/ # CLI commands
│ ├── models/ # Pydantic models
│ ├── providers/ # API clients
│ └── config.py # Configuration
├── tests/ # Test suite
└── docs/ # Documentation
Making Changes¶
Create a branch:
git checkout -b feature/my-feature
Make changes with type hints and docstrings
Add tests:
pytest
Format code:
ruff check --fix . ruff format .
Submit a PR
Adding a Provider¶
Create
src/shepherd/providers/newprovider.pyImplement
list_sessions()andget_session()Add config support
Add tests
Update docs