aboutsummaryrefslogtreecommitdiff
path: root/docker/compose.yml
blob: a87efddfbf64106e48dbb9428b9459669cbf4ac5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
services:
  senia:
    build:
      context: .
      dockerfile: Dockerfile
      args:
        USER_UID: 750
        USER_GID: 750
    image: senia/claude:latest
    container_name: senia
    stdin_open: true
    tty: true
    volumes:
      # workspace — read/write, this is where senia does its work
      - ../workspace:/workspace

      # claude config and auth — read/write so /login persists
      - ../claude/auth:/home/senia/.claude
      - ../claude/.claude.json:/home/senia/.claude.json

      # CLAUDE.md mounted at root, found via hierarchical lookup from any workspace
      - ../claude/CLAUDE.md:/home/senia/.claude/CLAUDE.md:ro

      # dockerfile read-only — senia can read it, suggest edits in conversation, can't modify
      - ./Dockerfile:/etc/senia/Dockerfile:ro

      # mcp servers source, read-only
      - ../mcp:/etc/senia/mcp:ro

      - ../scripts:/etc/senia/scripts
      # data dir — read-write, where mcp servers store sqlite dbs and other state
      - ../data:/etc/senia/data

    working_dir: /workspace
    command: tail -f /dev/null