FROM node:22-bookworm-slim AS codex-cli ARG CODEX_CLI_VERSION=0.150.0-alpha.8 RUN npm install --global "@openai/codex@${CODEX_CLI_VERSION}" \ && codex --version FROM python:3.12-slim-bookworm ENV PYTHONDONTWRITEBYTECODE=1 \ PYTHONUNBUFFERED=1 \ PIP_DISABLE_PIP_VERSION_CHECK=1 \ PYTHONPATH=/app/src:/app/domains/seat/src \ HOME=/home/cognitive-agent \ CODEX_HOME=/var/lib/codex WORKDIR /app RUN apt-get update \ && apt-get install --yes --no-install-recommends ca-certificates \ && rm -rf /var/lib/apt/lists/* COPY --from=codex-cli /usr/local/bin/node /usr/local/bin/node COPY --from=codex-cli /usr/local/lib/node_modules /usr/local/lib/node_modules RUN ln -s ../lib/node_modules/@openai/codex/bin/codex.js /usr/local/bin/codex COPY pyproject.toml ./ COPY src ./src COPY apps ./apps COPY config ./config COPY contracts ./contracts COPY domains ./domains COPY platforms ./platforms RUN node --version \ && codex --version \ && python -m pip install --no-cache-dir ".[llm,speech]" \ && groupadd --gid 10001 cognitive-agent \ && useradd --uid 10001 --gid 10001 --create-home cognitive-agent \ && mkdir -p /var/lib/codex \ /app/artifacts/runs \ /app/artifacts/user-presets \ /app/artifacts/server \ /app/artifacts/tmp \ /app/artifacts/self-repair \ /app/artifacts/mode-profiles \ && chown -R 10001:10001 /var/lib/codex /app/artifacts /home/cognitive-agent USER 10001:10001 EXPOSE 8000 CMD ["python", "-m", "cognitive_agent.server", "--host", "0.0.0.0", "--port", "8000"]