| FROM python:3.11-slim | |
| RUN apt-get update && apt-get install -y --no-install-recommends git && rm -rf /var/lib/apt/lists/* | |
| RUN useradd -m -u 1000 user | |
| WORKDIR /home/user/app | |
| COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv | |
| COPY pyproject.toml uv.lock README.md ./ | |
| COPY src/ src/ | |
| COPY prompts/ prompts/ | |
| ARG CACHEBUST=3 | |
| RUN --mount=type=secret,id=GITHUB_TOKEN,mode=0444,required=true \ | |
| GITHUB_TOKEN=$(cat /run/secrets/GITHUB_TOKEN) && \ | |
| git config --global url."https://${GITHUB_TOKEN}@github.com/".insteadOf "https://github.com/" && \ | |
| uv sync --no-dev --no-install-project | |
| USER user | |
| ENV PATH="/home/user/app/.venv/bin:$PATH" | |
| ENV PYTHONPATH="/home/user/app/src" | |
| ENV FIREACTION_LLM_MODEL="fireworks_ai/accounts/pyroworks/deployments/crk1fuz8" | |
| ENV FIREACTION_EMBEDDING_MODEL="fireworks_ai/nomic-ai/nomic-embed-text-v1.5" | |
| EXPOSE 7860 | |
| CMD /home/user/app/.venv/bin/python -m fireaction_a2a.cli serve ${PROVIDERS:-resend discord github plaid square} --port 7860 | |