SpyBara
Go Premium

settings-example.md 2026-09-11 23:01 UTC to 2026-09-12 03:02 UTC

This page contains 396 additions and 0 deletions.

2026
Sat 12 03:02 Fri 18 23:58 Tue 22 23:59 Fri 25 23:58

Beispiel-Einstellungsdateien

Realistische settings.json-Dateien für einen Entwickler, ein Team und eine Organisation: Kopieren Sie eine, behalten Sie die gewünschten Schlüssel und ändern Sie die Werte.

Diese Seite enthält drei Beispiel-settings.json-Dateien, eine für jeden Ort, an dem Sie eine Einstellung speichern:

  • Die ~/.claude/settings.json eines Entwicklers
  • Die .claude/settings.json eines Teams, die im Repository committed ist
  • Die managed-settings.json einer Organisation

Jede Datei ist eine plausible Datei für diesen Leser, sodass Sie die Form sehen und die gewünschten Teile kopieren können. Keine davon ist eine empfohlene Grundlage. Jeder Wert stammt aus dem Eintrag des Schlüssels in der Einstellungsreferenz, die seinen Typ, den Standard und den Ort enthält, an dem er gesetzt werden kann.

Jedes Beispiel hat zwei Registerkarten. Kopierbare Einstellungsdatei ist die Datei, wie Sie sie speichern würden. Was jeder Schlüssel tut ist dieselbe Datei mit einem Kommentar über jedem Schlüssel; Claude Code akzeptiert keine Kommentare in einer Einstellungsdatei, daher kopieren Sie aus der ersten Registerkarte.

Ihre eigenen Einstellungen

Die persönlichen Einstellungen eines Entwicklers. Sie wählt ein Modell und eine Anstrengung aus, passt das Terminal an und genehmigt vorab einen schreibgeschützten Befehl und einen Dateilesevorgang. Alles, was nicht aufgelistet ist, behält seinen Standard. Eine Datei wie diese geht in ~/.claude/settings.json, wo sie für jedes Projekt gilt, das Sie öffnen.

Speichern Sie dies als ~/.claude/settings.json. Es ist gültiges JSON ohne Kommentare, daher können Sie es einfach einfügen und die Schlüssel löschen, die Sie nicht möchten.

{
"model": "claude-sonnet-5",
"effortLevel": "xhigh",
"editorMode": "vim",
"theme": "light-daltonized",
"statusLine": {
"type": "command",
"command": "jq -r '\"[\\(.model.display_name)] \\(.context_window.used_percentage // 0)% context\"'",
"padding": 2
},
"spinnerTipsEnabled": false,
"preferredNotifChannel": "terminal_bell",
"permissions": {
"allow": [
"Bash(git diff *)",
"Read(~/.zshrc)"
]
},
"autoUpdatesChannel": "stable",
"cleanupPeriodDays": 20
}

Gemeinsame Einstellungen eines Teams

Die gemeinsamen Einstellungen eines Teams, die im Repository festgehalten werden, damit jeder, der es klont, die gleichen Berechtigungen, Hooks, Telemetrie und das Plugin-Marketplace erhält. Speichern Sie eine Datei wie diese unter .claude/settings.json am oberen Ende des Repositories. Das sollten Sie vor dem Commit wissen:

  • Cloud-Sitzungen lesen sie auch. Eine Cloud-Sitzung auf Claude Code im Web startet von einem Klon des Repositories, daher gilt die festgesetzte Datei auch dort.
  • Allow-Regeln warten auf Vertrauen. Allow-Regeln und extraKnownMarketplaces-Einträge werden wirksam, nachdem jede Person diesem Ordner selbst vertraut, nicht nur einem übergeordneten Ordner; Deny- und Ask-Regeln gelten in jeder Sitzung, vertraut oder nicht.
  • Der Hook ist ein Skript im Repo. Der Hook dieser Datei führt .claude/hooks/block-rm.sh aus; Wie ein Hook aufgelöst wird zeigt, wie man ihn schreibt.
  • Regeln entsprechen dem Befehl und Pfad wie geschrieben. Bash(git push *) entspricht nicht git -C . push. Read(./.env) allein stoppt die Datei-Tools und Befehle, die die Datei benennen, wie cat .env, aber nicht grep -r über das Verzeichnis ausgeführt; der sandbox-Block in dieser Datei schließt diese Lücke, da die Sandbox Ihre Read-Deny-Pfade zu dem hinzufügt, was jeder Sandbox-Befehl nicht lesen kann.

Speichern Sie diese als .claude/settings.json am oberen Ende des Repositories und committen Sie sie. Es ist gültiges JSON ohne Kommentare, daher können Sie es so einfügen und die Schlüssel löschen, die Sie nicht möchten.

{
"permissions": {
"allow": [
"Bash(npm run *)"
],
"ask": [
"Bash(git push *)"
],
"deny": [
"Read(./.env)",
"Read(./.env.*)",
"Read(./secrets/**)"
]
},
"env": {
"CLAUDE_CODE_ENABLE_TELEMETRY": "1",
"OTEL_METRICS_EXPORTER": "otlp",
"OTEL_EXPORTER_OTLP_PROTOCOL": "grpc",
"OTEL_EXPORTER_OTLP_ENDPOINT": "http://collector.example.com:4317"
},
"hooks": {
"PreToolUse": [
{
"matcher": "Bash",
"hooks": [
{
"type": "command",
"command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/block-rm.sh"
}
]
}
]
},
"extraKnownMarketplaces": {
"acme-tools": {
"source": {
"source": "github",
"repo": "acme-corp/claude-plugins"
}
}
},
"enabledPlugins": {
"code-formatter@acme-tools": true
},
"sandbox": {
"enabled": true,
"filesystem": {
"allowWrite": [
"/tmp/build"
]
},
"network": {
"allowedDomains": [
"registry.npmjs.org",
"*.example.com"
]
}
},
"plansDirectory": "./plans"
}

Verwaltete Einstellungen einer Organisation

Eine managed-settings.json-Datei, die die Form der verwalteten Schlüssel zeigt, mit einem plausiblen Wert für jeden. Es ist keine empfohlene Richtlinie: Wählen Sie die Schlüssel aus, die Ihren eigenen Anforderungen entsprechen, und legen Sie Ihre eigenen Werte fest. Das Beispiel setzt diese Schlüssel:

  • forceLoginMethod und forceLoginOrgUUID fixieren die Anmeldemethode und Organisation
  • availableModels und enforceAvailableModels beschränken, welche Modelle Sitzungen verwenden können
  • permissions.deny blockiert zwei Dateilesevorgang und curl-Befehle wie Claude sie schreibt, und disableBypassPermissionsMode entfernt den Bypass-Berechtigungsmodus
  • allowManagedPermissionRulesOnly und allowManagedMcpServersOnly machen die verwaltete Berechtigung und MCP-Zulassungslisten zu den einzigen, die gelten
  • allowedMcpServers fixiert den MCP-Server nach URL
  • strictKnownMarketplaces erlaubt einen Plugin-Marketplace
  • sandbox sandboxed Befehle mit einer festen Netzwerk-Zulassungsliste und keinem unsandboxed Retry
  • requiredMinimumVersion setzt eine Mindestversion für Claude Code
  • cleanupPeriodDays verkürzt die Aufbewahrung von Sitzungstranskripten und anderen lokalen Daten auf sieben Tage
  • companyAnnouncements zeigt eine Nachricht beim Start

Administratoren stellen eine Datei wie diese als managed-settings.json bereit, oder das gleiche JSON über MDM oder servergesteuerte Einstellungen. Eine bereitgestellte Datei gilt für jeden Computer oder jedes Konto, das sie erreicht. Um einer Gruppe unterschiedliche Werte zu geben, stellen Sie eine andere Datei oder ein anderes Profil für diese Gruppe bereit, da servergesteuerte Einstellungen noch keine Pro-Gruppen-Richtlinie unterstützen.

Stellen Sie dies als managed-settings.json bereit, oder das gleiche JSON über MDM oder die claude.ai-Konsole. Es ist gültiges JSON ohne Kommentare; ersetzen Sie die Beispiel-Organisations-UUID, Server-URL und den Marketplace durch Ihre eigenen und löschen Sie die Schlüssel, die Sie nicht möchten.

{
"forceLoginMethod": "claudeai",
"forceLoginOrgUUID": [
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
],
"availableModels": [
"opus",
"sonnet"
],
"enforceAvailableModels": true,
"permissions": {
"deny": [
"Bash(curl *)",
"Read(./.env)",
"Read(./secrets/**)"
],
"disableBypassPermissionsMode": "disable"
},
"allowManagedPermissionRulesOnly": true,
"allowedMcpServers": [
{
"serverUrl": "https://api.githubcopilot.com/*"
}
],
"allowManagedMcpServersOnly": true,
"strictKnownMarketplaces": [
{
"source": "github",
"repo": "acme-corp/approved-plugins"
}
],
"sandbox": {
"enabled": true,
"failIfUnavailable": true,
"allowUnsandboxedCommands": false,
"network": {
"allowedDomains": [
"registry.npmjs.org",
"github.com"
],
"allowManagedDomainsOnly": true
}
},
"requiredMinimumVersion": "2.1.150",
"cleanupPeriodDays": 7,
"companyAnnouncements": [
"Welcome to Acme Corp! Review our code guidelines at docs.example.com"
]
}