Referenz
Umgebungsvariablen
Alle CREW_*-Variablen von crewd und der Installation.
Auf dem Server stehen sie in /opt/crew/crew.env (nach Änderungen: sudo crewd restart), am Mac in ~/Library/Application Support/Crew/crewd/crew.env.
crewd
| Variable | Bedeutung |
|---|---|
CREW_MODE | local (Standard) | server | node — Spec-Kandidat 20; server = Pflicht-Anmeldung, keine Loopback-Ausnahme |
CREW_VISIBILITY | open | hidden (Standard im Servermodus) | invisible (20 §10) |
CREW_SETUP_CODE | Einrichtungscode fürs erste Gerät (≥ 12 Zeichen, sonst <daten>/setup-code.json vom Installer) |
CREW_COMPUTER_IMAGE | fertiges Computer-Image aus der Registry statt lokal bauen (z. B. ghcr.io/m8rzel/crew-computer:0.20.0) |
CREW_CONTAINER_HOSTS | weitere Hostnamen, unter denen Agent-Container crewd erreichen (Komma-getrennt, z. B. crewd) |
CREW_DATA_DIR | Datenordner (Standard: ~/.crew) |
CREW_COMPUTER_USE | Mein Rechner (Spec 24) abschalten: crewd hält keine Brücke zum Crew Helfer, die App startet ihn nicht |
CREW_NODE_HELPER_PORT | Port der Helfer-Brücke im Knoten (crewd node run, Standard 4319; lokal nimmt crewd einen freien Port) |
CREW_DEV | Crew Dev (make dev): eigene Agent-Container-Instanz (Hash des Datenordners); die crewd-CLI nimmt CREW_DATA_DIR/CREW_PORT statt einer installierten Crew |
CREW_INSTANCE | Instanz-Kennung für Agent-Container (Standard: default, mit CREW_DEV=1 Hash des Datenordners) |
CREW_HOST / CREW_PORT | Bind-Adresse (Standard: 127.0.0.1:4317) — für Tailscale die 100.x-Adresse setzen |
CREW_RUNTIME | claude-cli (Standard) | mock |
CREW_CALL_STT_MODEL | Modell der gestreamten Spracherkennung im Anruf (Standard: gpt-live-transcribe) |
CREW_CALL_STT_URL | WebSocket der Realtime-Transkription (Standard: OpenAI; für eigene/kompatible Server) |
CREW_CLAUDE_BIN | Pfad zur Claude-CLI (Standard: claude) |
CREW_CLAUDE_KEEP_API_KEY | ANTHROPIC_API_KEY an die CLI durchreichen (sonst Abo-Login) |
CREW_MODEL | Standardmodell neuer Agenten (Standard: sonnet) |
CREW_CONCIERGE_MODEL | Modell für den Crew-Empfang (Standard: haiku) |
CREW_USD_EUR | Umrechnungskurs für das Kosten-Ledger (Standard: 0.86) |
CREW_WAIT_MIN | Wie lange ein Lauf auf Freigabe/Antwort wartet, bevor er pausiert (Standard: 10) |
CREW_COMPUTER | on (Standard) | off — Sandbox-Computer pro Agent (Docker/OrbStack) |
CREW_DOCKER_BIN | Pfad zur docker-CLI (Standard: docker; OrbStack: ~/.orbstack/bin/docker) |
CREW_COMPUTER_IDLE_MIN | Stopp nach so viel Leerlauf (Standard: 20) |
CREW_COMPUTER_DOCKER_ARGS | zusätzliche docker run-Argumente (Leerzeichen-getrennt) |
CREW_COMPUTER_IMAGE_DIR | anderer Ordner mit Dockerfile (Standard: ops/computer) |
CREW_CLAUDE_LOCATION | auto (Standard: im Agent-Container, sobald Docker + Login da sind) | container | host |
CREW_CONTAINER_URL | wie Container crewd erreichen (Standard: http://host.docker.internal:<Port>) |
CREW_CONTAINER_ENV | Variablen, die in jeden Container-Lauf durchgereicht werden (Komma-getrennt, z. B. HTTPS_PROXY) |
CREW_CONTAINER_HOST_GATEWAY | host.docker.internal selbst eintragen (Linux; OrbStack/Docker Desktop brauchen das nicht) |
CREW_CONTAINER_API_KEY | ANTHROPIC_API_KEY statt Abo-Token an die CLI im Container geben |
CREW_SECRETS_MASTER_KEY | Master-Key des Tresors (32 Byte base64/hex) — sonst ~/.crew/master.key (07 §1) |
CREW_SECRETS_MASTER_KEY_FILE | anderer Pfad für die Key-Datei |
CREW_CLAUDE_SKILLS_DIR | wo „Aus Claude importieren“ sucht (Standard: ~/.claude/skills) |
CREW_MCP_REGISTRY | anderes MCP-Registry (Standard: https://registry.modelcontextprotocol.io, 11 §1) |
CREW_OAUTH_BASE_URL | feste Basis für die OAuth-Redirect-URI eigener OAuth-Apps (10) |
CREW_GOOGLE_OAUTH_SECRET | Secret der mitgelieferten Google-App (Gmail, Drive, Kalender) bei Builds aus dem Quellcode — Releases bringen es mit |
CREW_OAUTH_DEFAULTS | 0 = mitgelieferte OAuth-Apps (Google, GitHub) abschalten, dann ist eine eigene App nötig |
CREW_GOOGLE_OAUTH_CLIENT_ID / CREW_GITHUB_OAUTH_CLIENT_ID | andere Client-ID für die mitgelieferten Apps (Entwicklung/Tests) |
CREW_GOOGLE_OAUTH_ISSUER | anderer Anmeldeserver für die mitgelieferte Google-App (nur Tests, Standard https://accounts.google.com) |
CREW_GOOGLE_API_BASE | andere Basis-URL für Gmail, Kalender und Drive der eingebauten Google-Apps (nur Tests, Standard https://www.googleapis.com) |
CREW_GITHUB_DEVICE_URL / CREW_GITHUB_TOKEN_URL / CREW_GITHUB_USER_URL | andere GitHub-Endpunkte für die Geräte-Anmeldung (nur Tests) |
CREW_CODEX_BIN / CREW_GROK_BIN | Codex/Grok ausnahmsweise auf dem Host starten (nur Entwicklung — sonst immer im Agent-Container) |
CREW_OLLAMA_URL | Ollama fürs Einbetten im Gedächtnis (18 §7, Standard http://127.0.0.1:11434) |
CREW_WEBHOOK_BASE_URL | öffentliche Basis für Webhook-URLs von Routinen (13), sonst CREW_OAUTH_BASE_URL bzw. Ursprung der App |
CREW_AUTH | Geräte-Kopplung abschalten (alles ohne Token wie vor v0.15 — nur zum Notfall) |
CREW_DIRECT_BASE_URL | Adresse von crewd für den QR-Code (sonst Tailscale-Name, Aufruf-Adresse, LAN-IP) |
CREW_NOSTR | Nostr-Brücke abschalten (Spec-Kandidat 19, M4) |
CREW_RELAY_URL | wohin crewd sich verbindet (Standard ws://127.0.0.1:7447 — npm run relay) |
CREW_RELAY_PUBLIC | Relay-Adresse fürs Handy, z. B. wss://mac.tailXXXX.ts.net:8443 — sonst aus tailscale funnel erkannt |
CREW_RELAY_DIR | Ordner mit settings.yaml für nostream (Standard ~/.crew/relay) |
CREW_RELAY_GUARD | Pubkey des Wächters auf einem Relay an anderer Stelle (Sichtbarkeit invisible) — bekommt die Pubkey-Liste |
CREW_PUSH | Push-Mitteilungen abschalten (19, M2) |
CREW_EXPO_TOKEN | Expo Access Token, falls „Enhanced Security for Push“ im Expo-Projekt an ist |
CREW_PUSH_URL | anderer Push-Endpunkt (Standard https://exp.host/--/api/v2/push/send) |
CREW_SPEECH_MODEL | Modell für Sprachmemos (Standard gpt-4o-transcribe) |
CREW_MEMORY_TIMEOUT_MS | Zeitlimit fürs Einbetten beim Erinnern (Standard 1500) |
CREW_SKILLS_SH | andere Adresse für skills.sh |
CREW_TAILSCALE_BIN | Pfad zur Tailscale-CLI |
CREW_ROOT | Wurzel der Installation (Standard: Repo bzw. Paket) |
CREW_SKILL_GIT_LOCAL | file://-Quellen für Skill-Importe erlauben (nur Tests) |
Installation (crew.env)
| Variable | Bedeutung |
|---|---|
CREW_DOMAIN | Domain des Servers (Caddy, Relay-Adresse wss://<domain>/relay) |
CREW_VERSION | laufende Version (Images, Paket) |
CREW_CHANNEL | Update-Kanal stable |
CREW_REGISTRY | Registry der Images (Standard ghcr.io/m8rzel) |
CREW_RELAY_SECRET | Schlüssel von nostream (vom Installer erzeugt) |
CREW_RELAY_DB_PASSWORD | Passwort von Postgres/Redis des Relays (vom Installer erzeugt) |
CREW_RELAY_EXTERNAL | externer Relay (Sichtbarkeit „invisible“) |
CREW_RELAY_PORT | lokaler Port des Relays (Standard 7447) |
CREW_OPEN_PATHS | freigeschaltete Pfade bei „hidden“, z. B. hook:<routine>,oauth |
CREW_TAILSCALE | on, wenn der Server über Tailscale erreichbar ist |
CREW_DATA_HOME | Datenheimat (derzeit server) |
CREW_AUTO_UPDATE | on = Updates nachts automatisch einspielen |
CREW_BACKUP_TARGET | restic-Repository für Backups außer Haus (z. B. sftp:u123@u123.your-storagebox.de:crew) |
CREW_BACKUP_PASSWORD | Passwort des restic-Repositorys |
COMPOSE_PROFILES | web (Caddy), memory (Ollama) |
CREW_CONFIG | andere crew.env für die CLI |
CREW_URL | andere crewd-Adresse für die CLI |
CREW_RELEASES | anderer Download-Server (Standard https://releases.crewd.team) |
CREW_ROLE | Mac/Windows: hub (hier ausführen) oder client (nur App) |
CREW_PAIRING_CONFIRM | on |
CREW_SHOW_LINK | crewd pair zeigt zusätzlich den vollständigen Einladungslink |
CREW_NODE_DIR | Knoten: Ordner für Kopplung, Spiegel und Log (Standard ~/.crew-node) |
CREW_NODE_CONFIG | Knoten: Kopplung als JSON statt node.json — setzt die Crew-App, wenn sie den Mac im Server-Betrieb selbst als Knoten anmeldet |
CREW_NODE_IMAGE | Knoten: Computer-Image auf diesem Mac (Standard wie CREW_COMPUTER_IMAGE bzw. Registry) |
CREW_NODE_MCP_PORT | Knoten: Port der Crew-MCP-Weiterleitung für Container (Standard 4318) |
CREW_CREWD_PUB | Relay-Server: Pubkey von crewd, dessen Liste der Wächter übernimmt |
CREW_GUARD_SK | Relay-Server: Schlüssel des Wächters (vom Installer erzeugt) |