DeepEye is currently in active development preview. Contributions are welcome, but internal APIs and module boundaries are still being stabilized.
- Read the root README.md and docs/README.md.
- Check existing issues and pull requests to avoid duplicate work.
- Keep changes focused. Avoid mixing unrelated refactors with feature or bug fixes.
- Treat sandbox, generated-code execution, authentication, and data-source handling as security-sensitive areas.
Copy the example environment file and adjust local values:
cp env.example .envStart the local stack:
docker compose up --buildFor Python development:
uv sync --all-groups
uv run pytest packages/backend/app/test packages/core/tests -qFor frontend development:
cd packages/frontend
npm install
npm run lint
npm test -- --maxWorkers=1 --no-file-parallelism
npm run buildFor the full local CI equivalent:
make checkInstall dependencies and then run all checks:
make check-installValidate Docker Compose configuration:
make compose-configpackages/corecontains reusable agent, datasource, sandbox protocol, and workflow engine primitives.packages/backendowns FastAPI, persistence, Celery, Docker/runtime integrations, concrete workflow nodes, and deployment-facing services.packages/frontendowns the React workspace.packages/coremust not importapp.*or backend modules. Runtime services should pass integrations into core through protocols, callbacks, or tool lists.
- Add or update tests for behavioral changes.
- Update docs when setup, architecture, API behavior, or security posture changes.
- Run the relevant checks locally before opening a PR.
- Use
make checkfor broad changes and mention any skipped checks. - Keep generated files and local artifacts out of commits.
- Explain user-visible behavior and migration impact in the PR description.
Use concise, imperative commit messages. Examples:
fix: handle missing workflow artifacts
docs: clarify local setup
refactor: tighten core backend boundary
Do not open public issues or PR comments containing exploitable details. Follow SECURITY.md for vulnerability reporting.