Instructions to use jpanasuk/basecamp with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- HERMES
How to use jpanasuk/basecamp with HERMES:
# No code snippets available yet for this library. # To use this model, check the repository files and the library's documentation. # Want to help? PRs adding snippets are welcome at: # https://github.com/huggingface/huggingface.js
- Notebooks
- Google Colab
- Kaggle
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| # BASECAMP CODING STARTER PACK β 10 best-of-breed AI coding tools | |
| # Every service in its own container, all on the AI network, | |
| # all wired to the stack's Ollama (http://ollama:11434) and | |
| # TabbyAPI (http://tabbyapi:5000/v1). They call each other by | |
| # container name from anywhere on the network. | |
| # | |
| # Usage: | |
| # docker compose -f docker-compose.starter.yml up -d | |
| # basecamp rediscover # basecamp finds the whole pack | |
| # basecamp wire # wiring audit for the pack | |
| # | |
| # Ports (host side): see per-service comment. All services are | |
| # reachable on the ai-network by their container name. | |
| # βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ | |
| networks: | |
| tabby-tavern_ai-network: | |
| external: true | |
| volumes: | |
| code-server-data: | |
| qdrant-data: | |
| chroma-data: | |
| n8n-data: | |
| lobe-chat-data: | |
| anythingllm-data: | |
| librechat-data: | |
| meilisearch-data: | |
| flowise-data: | |
| postgres_data: | |
| services: | |
| # ββ 1. THE IDE β VS Code in the browser ββ | |
| code-server: | |
| image: codercom/code-server:latest | |
| container_name: starter-code-server | |
| restart: unless-stopped | |
| networks: [tabby-tavern_ai-network] | |
| ports: | |
| - "8443:8080" # browser IDE at http://localhost:8443 | |
| volumes: | |
| - code-server-data:/home/coder/.local/share/code-server | |
| - ${PWD:-.}/workspace:/home/coder/workspace # your code lives here | |
| # Continue.dev config β wired to the stack's Ollama (hermes3:70b + | |
| # llama3.1:8b autocomplete). Edit ide-config/continue-config.json. | |
| - ${PWD:-.}/ide-config/continue-config.json:/home/coder/.config/Continue/config.json | |
| environment: | |
| - PASSWORD=basecamp # change me; login at the browser prompt | |
| # Continue.dev + Tabby extensions pre-installed via entrypoint | |
| # FIX 2026-08-09: the data volume is root-owned but code-server runs as | |
| # 'coder' -> EACCES on coder-logs, extensions never install. Chown the | |
| # volume to coder on boot before anything else. | |
| user: root | |
| entrypoint: > | |
| /bin/sh -c " | |
| chown -R coder:coder /home/coder 2>/dev/null; | |
| su coder -c 'code-server --install-extension Continue.continue --force' 2>/dev/null; | |
| su coder -c 'code-server --install-extension TabbyML.vscode-tabby --force' 2>/dev/null; | |
| su coder -c 'code-server --install-extension coder.coder --force' 2>/dev/null; | |
| exec su coder -c 'code-server --bind-addr 0.0.0.0:8080 --disable-telemetry' | |
| " | |
| # ββ 2. (removed) tabby β self-hosted Copilot | |
| # REMOVED 2026-08-09: tabby's bundled llama-server dlopens libcuda.so.1 at | |
| # startup even with --device cpu (binary is CUDA-compiled), and the | |
| # container has no NVIDIA libs. Verified: 'error while loading shared | |
| # libraries: libcuda.so.1' β exit 127 crash-loop on 20260330 pin too. | |
| # Would need --gpus all + CUDA libs β the 12GB card belongs to TabbyAPI. | |
| # Completions alternative: point the code-server Tabby extension at a | |
| # completion-capable model on the stack's own engines. | |
| # Re-add when the tabby image ships a true CPU-only build. | |
| # ββ 3. VECTOR DB β code RAG backbone ββ | |
| qdrant: | |
| image: qdrant/qdrant:latest | |
| container_name: starter-qdrant | |
| restart: unless-stopped | |
| networks: [tabby-tavern_ai-network] | |
| ports: | |
| - "6333:6333" # REST + gRPC | |
| - "6334:6334" | |
| volumes: | |
| - qdrant-data:/qdrant/storage | |
| # ββ 4. VECTOR DB (lightweight) ββ | |
| chroma: | |
| image: chromadb/chroma:latest | |
| container_name: starter-chroma | |
| restart: unless-stopped | |
| networks: [tabby-tavern_ai-network] | |
| ports: | |
| - "8005:8000" | |
| volumes: | |
| - chroma-data:/chroma/chroma | |
| # ββ 5. WORKFLOW AUTOMATION ββ | |
| n8n: | |
| image: n8nio/n8n:latest | |
| container_name: starter-n8n | |
| restart: unless-stopped | |
| networks: [tabby-tavern_ai-network] | |
| ports: | |
| - "5678:5678" | |
| volumes: | |
| - n8n-data:/home/node/.n8n | |
| environment: | |
| - N8N_BASIC_AUTH_ACTIVE=false | |
| - GENERIC_TIMEZONE=UTC | |
| # ββ 6. AI CHAT UI ββ | |
| lobe-chat: | |
| image: lobehub/lobe-chat:latest | |
| container_name: starter-lobe-chat | |
| restart: unless-stopped | |
| networks: [tabby-tavern_ai-network] | |
| ports: | |
| - "3210:3210" | |
| volumes: | |
| - lobe-chat-data:/app/data | |
| environment: | |
| - OPENAI_PROXY_URL=http://ollama:11434/v1 # wired to stack Ollama | |
| - OPENAI_API_KEY=ollama | |
| # ββ 7. RAG WORKSPACE ββ | |
| anythingllm: | |
| image: mintplexlabs/anythingllm:latest | |
| container_name: starter-anythingllm | |
| restart: unless-stopped | |
| networks: [tabby-tavern_ai-network] | |
| ports: | |
| - "3001:3001" | |
| volumes: | |
| - anythingllm-data:/app/server/storage | |
| environment: | |
| - STORAGE_DIR=/app/server/storage | |
| - OLLAMA_BASE_URL=http://ollama:11434 # wired to stack Ollama | |
| # ββ 8. MULTI-MODEL CHAT ββ | |
| librechat: | |
| image: ghcr.io/danny-avila/librechat:latest | |
| container_name: starter-librechat | |
| restart: unless-stopped | |
| depends_on: | |
| - mongo | |
| networks: [tabby-tavern_ai-network] | |
| ports: | |
| - "3080:3080" # chat UI at http://localhost:3080 | |
| volumes: | |
| - librechat-data:/app/librechat | |
| environment: | |
| - MONGO_URI=mongodb://mongo:27017/LibreChat | |
| - JWT_SECRET=basecamp-jwt-secret-change-me # required (JwtStrategy) | |
| - OPENAI_API_KEY=ollama | |
| - OPENAI_API_BASE=http://ollama:11434/v1 # wired to stack Ollama | |
| - ALLOW_SOCIAL_LOGIN=true | |
| # LibreChat's database (required β LibreChat is NOT self-contained) | |
| mongo: | |
| image: mongo:7 | |
| container_name: starter-mongo | |
| restart: unless-stopped | |
| networks: [tabby-tavern_ai-network] | |
| ports: | |
| - "27017:27017" | |
| volumes: | |
| - librechat-data:/data/db | |
| # ββ 9. FULL-TEXT SEARCH ββ | |
| meilisearch: | |
| image: getmeili/meilisearch:latest | |
| container_name: starter-meilisearch | |
| restart: unless-stopped | |
| networks: [tabby-tavern_ai-network] | |
| ports: | |
| - "7700:7700" | |
| volumes: | |
| - meilisearch-data:/meili_data | |
| environment: | |
| - MEILI_MASTER_KEY=basecamp-dev-key # change me | |
| - MEILI_ENV=development | |
| # ββ 10. (removed) flowise β no-code agent builder | |
| # REMOVED 2026-08-09: flowiseai/flowise is BROKEN upstream (both 'latest' | |
| # and 3.1.4 crash at boot with ERR_PACKAGE_PATH_NOT_EXPORTED β | |
| # @langchain/langgraph-checkpoint requires './utils/uuid' which | |
| # @langchain/core doesn't export). Verified on both tags. Ripped out | |
| # rather than shipping a known-broken tool. Re-add when upstream fixes | |
| # their dependency tree. | |
| # ββ 11. LONG-TERM MEMORY β Postgres + pgvector ββ | |
| # Hermes's pluggable memory backend: vector store for embeddings so the | |
| # agent remembers across sessions. Point hermes at it with: | |
| # hermes memory configure --backend postgres --dsn "postgresql://hermes:CHANGEME@starter-postgres:5432/hermes" | |
| postgres: | |
| image: pgvector/pgvector:pg16 | |
| container_name: starter-postgres | |
| restart: unless-stopped | |
| networks: [tabby-tavern_ai-network] | |
| ports: | |
| - "5432:5432" | |
| environment: | |
| POSTGRES_DB: hermes | |
| POSTGRES_USER: hermes | |
| POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-changeme_strong_password} | |
| volumes: | |
| - postgres_data:/var/lib/postgresql/data | |
| healthcheck: | |
| test: ["CMD-SHELL", "pg_isready -U hermes -d hermes"] | |
| interval: 10s | |
| timeout: 5s | |
| retries: 5 | |