Contributing¶
Zentinelle is MIT-licensed and we welcome contributions.
Areas where help is needed¶
High priority¶
- Data pipeline -- token counting, cost estimation, latency measurement from real agent activity (#68, #70-#76)
- Dynamic model catalog -- fetch model lists from providers instead of hardcoding (#66)
- Integration tests -- real end-to-end tests per agent SDK (#77)
Medium priority¶
- Accessibility -- keyboard navigation, focus visibility, WCAG AA compliance (#59-#65)
- Agent integrations -- hooks/proxy for more coding agents
- Knowledge graph -- auto-update on commits, codebase navigation (#67)
Always welcome¶
- Bug reports with reproduction steps
- Documentation improvements
- UI/UX feedback
Development setup¶
git clone https://github.com/calliopeai/zentinelle
cd zentinelle
docker compose up -d
# Backend (Django)
cd backend
pipenv install
pipenv run python manage.py migrate --database=zentinelle
pipenv run python manage.py migrate
pipenv run pytest
# Frontend (Next.js)
cd frontend
npm install
npm run dev
Pre-commit checklist¶
Run before every backend commit:
cd backend
# 1. Django startup check
pipenv run python -c "import django, os; os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'config.settings'); django.setup()"
# 2. Migration check
pipenv run python manage.py makemigrations --check --dry-run
# 3. Tests
pipenv run pytest
# 4. Lint
pipenv run ruff check
Git practices¶
- Commit directly to
main - No rebasing, no force-push
- No co-authorship messages
- Imperative mood commit messages
Project structure¶
See Knowledge Graph for the full codebase map and data flows.
See Tech Stack for technology choices.
See Methodology Primer for how we work.