FROM node:22-alpine

WORKDIR /app

COPY package.json package-lock.json* ./
RUN npm ci --production=false && npm cache clean --force

COPY tsconfig.json vitest.config.ts ./
COPY src/ ./src/
COPY tests/ ./tests/
COPY personas/ ./personas/
COPY skills/ ./skills/
COPY scripts/ ./scripts/

CMD ["npx", "tsx", "src/main.ts"]
