Files
GeneralJerel 2d7926f867 feat(examples): add oracle-agent-memory showcase
Runnable companion to the "Build an Agentic Travel App with Oracle Agent
Memory, Agent Spec, and CopilotKit" cookbook recipe: a portable Oracle Agent
Spec agent on LangGraph over AG-UI, long-term memory on Oracle AI Database,
and a CopilotKit V2 frontend with generative UI + human-in-the-loop.

- agent/    Python (uv) Agent Spec agent + FastAPI AG-UI server
- frontend/ Next.js CopilotKit V2 chat (flight cards, recall chip, HITL booking)
- db/       Oracle AI Database (Free image) + cookbook-user init
- docker-compose.yml for local Oracle; per-service railway.json for deploy

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-18 15:35:58 -07:00

28 lines
1.0 KiB
Docker

# Agent service image (Railway). Python 3.12 is required — oracleagentmemory
# ships a cp312-only wheel.
FROM python:3.12-slim
# git: the ag_ui_agentspec adapter installs from the ag-ui git repo (see pyproject).
RUN apt-get update \
&& apt-get install -y --no-install-recommends git ca-certificates \
&& rm -rf /var/lib/apt/lists/*
# uv — the project's package manager.
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /usr/local/bin/
# Use the image's system Python 3.12 (don't fetch a managed interpreter).
ENV UV_PYTHON_PREFERENCE=only-system UV_PYTHON_DOWNLOADS=never
WORKDIR /app
# Install dependencies from the lockfile first (cached layer). The project is not
# a package (tool.uv.package = false), so only the deps are installed.
COPY pyproject.toml uv.lock ./
RUN uv sync --frozen --no-install-project
# App code.
COPY . .
EXPOSE 8000
# Bind Railway's $PORT (8000 locally). --no-sync: deps are already installed.
CMD ["sh", "-c", "uv run --no-sync uvicorn concierge.server:app --host 0.0.0.0 --port ${PORT:-8000}"]