Files
Cortex-Inara/docker-compose.yml
Scott Idem 2f675ee4bf Initial commit — Cortex API + Inara identity
Cortex: FastAPI backend serving Inara via Claude/Gemini CLI backends.
Includes SSE streaming chat, session persistence, Google Chat webhook
handler, and Docker support.

Inara: Identity files (persona, soul, protocols, memory, context tiers)
mounted read-only into the container at runtime.

Features in initial cut:
- /chat endpoint with SSE keepalive + LLM fallback
- Session store with rolling history window
- Markdown rendering, copy-to-clipboard, links open in new tab
- Stacked right-column input controls (height selector, enter toggle,
  note mode with public/private) — semi-hidden until textarea grows
- /note endpoint for injecting public context into session history
- Docker Compose config (local dev runs natively; Docker for server)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-06 03:41:00 -05:00

31 lines
882 B
YAML

services:
cortex:
build:
context: ./cortex
dockerfile: Dockerfile
container_name: cortex
restart: unless-stopped
ports:
- "8000:8000"
volumes:
# Inara identity files (read-only in container)
- ./inara:/app/../inara:ro
# Session persistence (read-write)
- cortex_sessions:/app/data/sessions
# Claude CLI — needs both the config file and the directory
- ${HOME}/.claude.json:/root/.claude.json:ro
- ${HOME}/.claude:/root/.claude:ro
# Gemini CLI credentials
- ${HOME}/.gemini:/root/.gemini:ro
# Gemini CLI config (extensions, etc.)
- ${HOME}/.config/gemini:/root/.config/gemini:ro
env_file:
- ./cortex/.env
environment:
# Override paths for container layout
INARA_DIR: /app/../inara
SESSIONS_DIR: /app/data/sessions
volumes:
cortex_sessions: