install: uv sync dev: uv run langgraph dev --no-browser --allow-blocking --no-reload gateway: uv run uvicorn src.gateway.app:app --host 0.0.0.0 --port 8001 nginx: @echo "Stopping existing nginx if any..." @-nginx -c $(PWD)/../nginx.conf -p $(PWD)/.. -s quit 2>/dev/null || true @sleep 1 @-pkill -9 nginx 2>/dev/null || true @sleep 1 @echo "Starting nginx..." nginx -c $(PWD)/../nginx.conf -p $(PWD)/.. serve: @echo "Stopping existing services if any..." @-pkill -f "langgraph dev" 2>/dev/null || true @-pkill -f "uvicorn src.gateway.app:app" 2>/dev/null || true @-nginx -c $(PWD)/../nginx.conf -p $(PWD)/.. -s quit 2>/dev/null || true @sleep 1 @-pkill -9 nginx 2>/dev/null || true @sleep 1 @echo "Starting services..." @trap 'kill 0' EXIT; \ uv run langgraph dev --no-browser --allow-blocking --no-reload & \ sleep 3 && uv run uvicorn src.gateway.app:app --host 0.0.0.0 --port 8001 & \ sleep 1 && nginx -c $(PWD)/../nginx.conf -p $(PWD)/.. & \ wait lint: uvx ruff check . format: uvx ruff check . --fix && uvx ruff format .