FROM node:22-bookworm-slim ENV PYTHONUNBUFFERED=1 ENV PORT=7860 ENV AGENT_PORT=8787 ENV AGENT_MODEL_PROVIDER=auto ENV NVIDIA_MODEL=nvidia/nemotron-3-nano-omni-30b-a3b-reasoning ENV SEARCH_PROVIDER=disabled ENV MCP_WEB_SEARCH_ENABLED=0 ENV MCP_WEB_SEARCH_TIMEOUT_MS=6000 ENV RESEARCH_ENABLED=1 ENV RESEARCH_DEPTH=standard ENV RESEARCH_MAX_QUERIES=6 ENV RESEARCH_RESULTS_PER_QUERY=3 ENV RESEARCH_MAX_SOURCES=24 ENV RESEARCH_TOTAL_TIMEOUT_MS=45000 ENV OFFICIAL_DATA_ENABLED=1 # Keep the full agentic workflow on the Space: the model discovers neighbourhoods # (nothing hardcoded) and each City Agent reasons via the configured agentic model. ENV AGENT_DISCOVER=1 ENV AGENT_FANOUT=1 WORKDIR /app RUN apt-get update \ && apt-get install -y --no-install-recommends python3 python3-pip python3-venv \ && rm -rf /var/lib/apt/lists/* COPY package.json package-lock.json requirements.txt ./ RUN npm ci RUN python3 -m venv /opt/venv ENV PATH="/opt/venv/bin:${PATH}" RUN pip install --no-cache-dir -r requirements.txt COPY . . RUN npm run build EXPOSE 7860 CMD ["python", "app.py"]