תיעוד 130
כל ההגדרות
מדריך מלא לכל מפתח ב-
settings.jsonשל Claude Code: איפה כל אחד נמצא, הסוג והברירת מחדל שלו, ודוגמה מוכנה להדבקה, עם אינדקס של כל מפתח.
עמוד העזר הזה מפרט כל מפתח ש-Claude Code קורא מקובץ הגדרות, וגם את הקבוצה הקצרה של מפתחות שהוא שומר ב-~/.claude.json. כדי לבחור קובץ, או לבדוק קדימות, התחילו ב-קבצי הגדרות וקדימות.
#אינדקס ההגדרות
כל מפתח למטה מקשר לרשומה שלו. היקף מפרט את הקבצים שאפשר לשים אותו בהם: User הוא ~/.claude/settings.json, Project הוא .claude/settings.json, Local הוא .claude/settings.local.json, ו-Managed הוא מה שהארגון שלכם פורס. Any file פירושו כל הארבעה, ו-Global config פירושו ~/.claude.json.
| מפתח | תיאור | נושא | היקף |
|---|---|---|---|
advisorModel | בחירה איזה מודל עונה כש-Claude שואל את כלי היועץ | מודל ותשובות | כל קובץ |
agent | התחלת כל סשן כ-סוכן משנה בעל שם, עם הפרומפט, הכלים והמודל שלו | סוכנים, סשנים ו-worktrees | כל קובץ |
agentPushNotifEnabled | לאפשר ל-Claude לשלוח התראת דחיפה לטלפון כשהוא מחליט לעשות זאת | שליטה מרחוק, שולחן עבודה והתראות | כל קובץ |
allowAllClaudeAiMcps | טעינת מחברי claude.ai ש-Claude Code מביא בעצמו, לצד managed-mcp.json שנפרס | MCP | מנוהל |
allowClaudeInChromeWithManagedMcp | לאפשר לשרת המובנה Claude in Chrome לרוץ לצד managed-mcp.json שנפרס | MCP | מנוהל |
allowedChannelPlugins | החלפת רשימת ההיתרים ברירת המחדל של תוספי ערוצים שיכולים לדחוף הודעות | תוספים ומיומנויות | מנוהל |
allowedHttpHookUrls | הגבלת כתובות ה-URL ש-HTTP hooks יכולים לפנות אליהן | hooks ואוטומציה | כל קובץ |
allowedMcpServers | רשימת היתרים של שרתי MCP שמשתמשים יכולים להוסיף | MCP | כל קובץ |
allowedProviders | הגבלת ספקי API שמכונה רשאית להשתמש בהם | אימות וספקים | מנוהל |
allowManagedHooksOnly | הרצה רק של hooks שהארגון פורס | hooks ואוטומציה | מנוהל |
allowManagedMcpServersOnly | הפיכת רשימת ההיתרים המנוהלת של MCP לרשימה היחידה שחלה | MCP | מנוהל |
allowManagedPermissionRulesOnly | הפיכת הגדרות מנוהלות למקור ההגדרות היחיד של כללי הרשאה | הגדרות הרשאות | מנוהל |
alwaysThinkingEnabled | כיבוי חשיבה מורחבת לכל סשן | מודל ותשובות | כל קובץ |
apiKeyHelper | יצירת אישור ה-API באמצעות פקודה משלך | אימות וספקים | כל קובץ |
askUserQuestionTimeout | לאפשר לשאלה שלא נענתה להמשיך אוטומטית אחרי זמן חוסר פעילות | ממשק ומסוף | משתמש או מנוהל |
appendPlugins | הרצת ה-mods של הארגון אחרי כל mod שמשתמש מתקין | תוספים ומיומנויות | משתמש או מנוהל |
attribution | התאמה אישית של הייחוס ש-Claude Code מוסיף ל-commits ול-pull requests | Git וייחוס | כל קובץ |
attribution.commit | שינוי או הסתרה של ה-trailer ש-Claude Code מוסיף ל-commits | Git וייחוס | כל קובץ |
attribution.pr | שינוי או הסתרה של שורת הייחוס בתיאורי pull request | Git וייחוס | כל קובץ |
attribution.sessionUrl | השמטת קישור הסשן של claude.ai מ-commits של ענן ושל Remote Control | Git וייחוס | כל קובץ |
autoCompactEnabled | כיבוי או הפעלה של דחיסה אוטומטית | זיכרון והקשר | כל קובץ |
autoCompactWindow | הגדרה עד כמה ההקשר מתמלא לפני ש-Claude Code דוחס | זיכרון והקשר | כל קובץ |
autoConnectIde | חיבור אוטומטי ל-IDE פעיל של VS Code או JetBrains ממסוף חיצוני | הגדרות תצורה גלובליות | תצורה גלובלית |
autoContinueAtUsageLimit | המתנה בסשן הפתוח והמשך המשימה אוטומטית אחרי איפוס מגבלת שימוש של claude.ai | ממשק ומסוף | משתמש או מנוהל |
autoInstallIdeExtension | לאפשר ל-/ide להתקין את תוסף ה-IDE ממסוף חיצוני | הגדרות תצורה גלובליות | תצורה גלובלית |
autoMemoryDirectory | שמירת זיכרון אוטומטי בתיקייה שתבחרו | זיכרון והקשר | כל קובץ |
autoMemoryEnabled | כיבוי או הפעלה של זיכרון אוטומטי | זיכרון והקשר | כל קובץ |
autoMode | הוספת כללי allow ו-deny משלכם למסווג של מצב אוטומטי | הגדרות הרשאות | משתמש או מנוהל |
autoMode.classifyAllShell | שליחת כל פקודת shell דרך מסווג המצב האוטומטי, גם כאלה שכלל allow צר תואם להן | הגדרות הרשאות | משתמש או מנוהל |
autoScrollEnabled | מעקב אחרי פלט חדש עד לתחתית בעיבוד מסך מלא | ממשק ומסוף | כל קובץ |
autoUpdatesChannel | מעקב אחרי ערוץ הגרסאות היציב במקום latest | עדכונים וגרסאות | כל קובץ |
availableModels | הגבלה אילו מודלים אנשים יכולים לבחור | מודל ותשובות | כל קובץ |
availableModelsMatch | גרימה שכל רשומת מזהה מודל ב-availableModels תתיר רק את הגרסה שהיא מציינת | מודל ותשובות | מנוהל |
awaySummaryEnabled | כיבוי סיכום הסשן שמוצג כשחוזרים למסוף | שליטה מרחוק, שולחן עבודה והתראות | כל קובץ |
awsAuthRefresh | רענון אישורי Bedrock שפג תוקפם ב-.aws באמצעות פקודה משלך | אימות וספקים | כל קובץ |
awsCredentialExport | אספקת אישורי Bedrock כ-JSON מפקודה משלך | אימות וספקים | כל קובץ |
axScreenReader | עיבוד פלט נוח לקורא מסך | ממשק ומסוף | משתמש או מנוהל |
bashEditDiffEnabled | תיעוד הקבצים שהשתנו בזמן שפקודת Bash רצה בכל מצב הרשאה | ממשק ומסוף | משתמש או מנוהל |
bashOutputMaxChars | הגדרה כמה מהפלט של פקודה שהצליחה Claude מקבל בתוך השורה | זיכרון והקשר | כל קובץ |
blockedMarketplaces | חסימת מקורות שוק תוספים עבור הארגון | תוספים ומיומנויות | מנוהל |
browserExternalPageTools | השארת הכלים של Claude מחוץ לדפים חיצוניים בחלונית הדפדפן של שולחן העבודה | כלים | מנוהל |
channelsEnabled | התרת ערוצים עבור הארגון | תוספים ומיומנויות | מנוהל |
claudeInChromeDefaultEnabled | הפעלת שילוב Chrome כשסשן מתחיל, ב-CLI האינטראקטיבי ובתוסף VS Code | הגדרות תצורה גלובליות | תצורה גלובלית |
claudeMd | הזרקת הנחיות CLAUDE.md לכל הארגון מהגדרות מנוהלות | זיכרון והקשר | מנוהל |
claudeMdExcludes | דילוג על קבצי CLAUDE.md מסוימים כשהזיכרון נטען | זיכרון והקשר | כל קובץ |
cleanupPeriodDays | בחירה כמה ימים Claude Code שומר תמלילים לפני שהוא מוחק אותם | פרטיות וטלמטריה | כל קובץ |
companyAnnouncements | הצגת הודעות הארגון בהפעלה | ממשק ומסוף | כל קובץ |
copyFullResponse | גרימה ל-/copy להעתיק את התשובה המלאה בלי להציג את הבורר | הגדרות תצורה גלובליות | תצורה גלובלית |
copyOnSelect | כיבוי העתקה אוטומטית של טקסט שבוחרים בעכבר בעיבוד מסך מלא ובתצוגת הסוכן | הגדרות תצורה גלובליות | תצורה גלובלית |
crossSessionInbound | בחירה אם Claude Code מוסר הודעות מהסשנים האחרים שלך, מציג הודעה בלי למסור אותן, או דוחה אותן | סוכנים, סשנים ו-worktrees | כל קובץ |
defaultShell | בחירה אם Bash או PowerShell מריצים את פקודות ה-shell שמקלידים עם הקידומת ! | ממשק ומסוף | כל קובץ |
defaultToAgentsView | פתיחת תצוגת הסוכן במקום שיחה חדשה כשמריצים claude בלי ארגומנטים | הגדרות תצורה גלובליות | תצורה גלובלית |
deniedMcpServers | חסימת שרתי MCP מסוימים לפי URL, פקודה או שם | MCP | כל קובץ |
deniedModels | חסימת מודלים מסוימים, גם כאלה ש-availableModels מתיר | מודל ותשובות | מנוהל |
desktopSessionCleanupPeriodDays | הגדרת מגבלת גיל בימים לתמלילי Claude Desktop ו-Cowork | פרטיות וטלמטריה | משתמש או מנוהל |
dialogExpiry | הגדרה כמה זמן Claude Code ממתין ש-Remote Control או מארח SDK יענו לתיבת דו-שיח שהועברה, לפני שהוא מבטל את תיבת הדו-שיח | ממשק ומסוף | משתמש או מנוהל |
diffTool | בחירה אם שינויי קבצים ש-Claude מציע נפתחים במציג ההבדלים של VS Code או JetBrains, או נשארים במסוף | הגדרות תצורה גלובליות | תצורה גלובלית |
disableAgentView | כיבוי סוכנים ברקע ותצוגת הסוכן | סוכנים, סשנים ו-worktrees | כל קובץ |
disableAllHooks | כיבוי hooks, שורת סטטוס מותאמת אישית, ופקודת הצעת קובץ @ מותאמת אישית בבת אחת | hooks ואוטומציה | כל קובץ |
disableArtifact | מיושן. השתמשו ב-enableArtifact כדי לכבות את כלי Artifact | שליטה מרחוק, שולחן עבודה והתראות | כל קובץ |
disableAutoMode | הסרת מצב אוטומטי ממחזור מצבי ההרשאה | הגדרות הרשאות | כל קובץ |
disableBrowserExternalNavigation | הגבלת חלונית הדפדפן של שולחן העבודה ל-localhost עבור אנשים ועבור Claude | כלים | מנוהל |
disableBundledSkills | כיבוי המיומנויות ותהליכי העבודה הכלולים עם Claude Code | תוספים ומיומנויות | כל קובץ |
disableClaudeAiConnectors | כיבוי מחברי claude.ai כדי ש-Claude Code לא יביא אותם | MCP | כל קובץ |
disableCommandPluginSources | חסימת תוספים שמותקנים על ידי הרצת פקודה שהשוק הכריז עליה | תוספים ומיומנויות | מנוהל |
disableDeepLinkRegistration | עצירת הרישום של Claude Code למטפל claude-cli:// | שליטה מרחוק, שולחן עבודה והתראות | כל קובץ |
disableDesktopLocalSessions | כיבוי סשני Desktop Code שרצים על המכשיר, והשארת SSH למארחים אחרים ולענן | שליטה מרחוק, שולחן עבודה והתראות | מנוהל |
disabledMcpjsonServers | דחיית שרתים מסוימים מ-.mcp.json של פרויקט | MCP | כל קובץ |
disableMobileSimulatorTools | חסימת הכלים של Claude בחלונית סימולטור iOS של שולחן העבודה | כלים | מנוהל |
disableRemoteControl | כיבוי Remote Control בכל מקום שבו הוא יכול להתחיל | שליטה מרחוק, שולחן עבודה והתראות | כל קובץ |
disableSideloadFlags | דחיית דגלי CLI שטוענים מהצד תוספים, סוכני משנה ושרתי MCP | ארגון והגדרות מנוהלות | מנוהל |
disableSkillShellExecution | עצירת מיומנויות ופקודות מותאמות אישית מהרצת shell בתוך השורה | תוספים ומיומנויות | כל קובץ |
disableWorkflows | כיבוי תהליכי עבודה דינמיים עבור כולם. השתמשו ב-enableWorkflows עבור עצמכם | hooks ואוטומציה | כל קובץ |
editorMode | שימוש בקיצורי מקשים של vim בשורת הקלט | ממשק ומסוף | כל קובץ |
effortLevel | הגדרת רמת מאמץ ברירת מחדל למודלים בלי רמה שמורה משלהם | מודל ותשובות | כל קובץ |
emojiCompletionEnabled | כיבוי הצעות והחלפה של אימוג'י :shortcode: בקלט הפרומפט | ממשק ומסוף | כל קובץ |
enableAllProjectMcpServers | אישור כל שרת בקבצי .mcp.json של פרויקט בלי בקשה | MCP | כל קובץ |
enableArtifact | כיבוי כלי Artifact עם false בכל קובץ. אף קובץ לא יכול להפעיל אותו מחדש | שליטה מרחוק, שולחן עבודה והתראות | כל קובץ |
enabledMcpjsonServers | אישור שרתים מסוימים מ-.mcp.json של פרויקט | MCP | כל קובץ |
enabledPlugins | הפעלה או כיבוי של תוספים בודדים לפי היקף | תוספים ומיומנויות | כל קובץ |
enableWorkflows | הפעלה או כיבוי של תהליכי עבודה דינמיים מול ברירת המחדל של התוכנית | hooks ואוטומציה | כל קובץ |
| מפתח | תיאור | נושא | היקף |
|---|---|---|---|
enforceAvailableModels | שמור את בחירת ברירת המחדל של /model בתוך רשימת ההיתר availableModels | מודל ותשובות | כל קובץ |
env | הגדר משתני סביבה לכל סשן ולתהליכי המשנה שלו | זיכרון והקשר | כל קובץ |
externalEditorContext | הצג את התשובה האחרונה של Claude כהערות כשלוחצים על Ctrl+G כדי לערוך | הגדרות תצורה גלובליות | תצורה גלובלית |
extraKnownMarketplaces | רשום marketplaces למאגר או לארגון | תוספים ומיומנויות | כל קובץ |
fallbackModel | ציין מודלים לגיבוי למקרה שהמודל הראשי עמוס | מודל ותשובות | כל קובץ |
fastMode | הפעל מצב מהיר בסשנים שבהם הוא זמין | מודל ותשובות | כל קובץ |
fastModePerSessionOptIn | דרוש מאנשים להפעיל מצב מהיר בכל סשן | מודל ותשובות | כל קובץ |
feedbackDrafts | שלוט אם Claude מכניס לתור טיוטות משוב לבדיקה שלך | פרטיות וטלמטריה | משתמש או מנוהל |
feedbackSurveyRate | שנה באיזו תדירות מופיע סקר איכות הסשן | פרטיות וטלמטריה | כל קובץ |
fileCheckpointingEnabled | כבה או הפעל את צילומי הקבצים ש-/rewind משחזר | זיכרון והקשר | כל קובץ |
fileSuggestion | ספק השלמה אוטומטית של קבצים עם @ מהפקודה שלך | ממשק וטרמינל | כל קובץ |
footerLinksRegexes | הפוך מזהי issue או review בפלט לקישורים לחיצים מתחת לתיבת הקלט | ממשק וטרמינל | משתמש או מנוהל |
forceLoginGatewayUrl | הגדר את כתובת ה-gateway שאליה מסך ההתחברות מתחבר | אימות וספקים | משתמש או מנוהל |
forceLoginMethod | הגבל התחברות ל-claude.ai, ל-Claude Console, או ל-gateway בענן | אימות וספקים | כל קובץ |
forceLoginOrgUUID | נעץ התחברויות claude.ai לארגון שלך: רק מקור מנוהל אוכף את זה | אימות וספקים | כל קובץ |
forceRemoteSettingsRefresh | חסום את ההפעלה עד שהגדרות מנוהלות בשרת נשלפות מחדש | ארגון והגדרות מנוהלות | מנוהל |
gatewayInternalNetworks | אפשר ל-/login להגיע ל-gateway בענן במרחב IPv4 ציבורי שהארגון שלך משתמש בו באופן פנימי | אימות וספקים | מנוהל |
gcpAuthRefresh | רענן אישורי Google Cloud באמצעות פקודה משלך | אימות וספקים | כל קובץ |
hooks | הרץ פקודות משלך כ-hooks בנקודות במחזור החיים של Claude Code | hooks ואוטומציה | כל קובץ |
httpHookAllowedEnvVars | הגבל אילו משתני סביבה hooks של HTTP יכולים לשים בכותרות | hooks ואוטומציה | כל קובץ |
idleCompaction | מנע מ-Claude Code לדחוס שיחה ארוכה שהתרחקת ממנה | זיכרון והקשר | כל קובץ |
includeCoAuthoredBy | מיושן: השתמש ב-attribution כדי להסתיר או לשנות ייחוס של commit ו-PR | Git וייחוס | כל קובץ |
includeGitInstructions | הסר את הוראות ה-commit וה-PR המובנות מההקשר של Claude | Git וייחוס | כל קובץ |
inputNeededNotifEnabled | קבל התראת דחיפה כש-Claude ממתין לך | שליטה מרחוק, שולחן עבודה והתראות | כל קובץ |
isolatePeerMachines | שאל אותך לפני ש-Claude שולח הודעה לאחד הסשנים שלך במכונה אחרת | סוכנים, סשנים ו-worktrees | כל קובץ |
keybindingFlavor | מיושן ואין לו השפעה: קיצורי עריכת המילים תמיד עוקבים אחרי מוסכמות readline | ממשק וטרמינל | כל קובץ |
language | גרום ל-Claude להשיב בשפה שאינה אנגלית | מודל ותשובות | כל קובץ |
leftArrowOpensAgents | כבה את קיצור ← שמעביר את הסשן לרקע ופותח את תצוגת הסוכנים | הגדרות תצורה גלובליות | תצורה גלובלית |
managedMcpServers | ספק שרתי MCP מרוחקים לכל משתמש לצד אלה שהם מוסיפים | MCP | מנוהל |
managedSourcesBehavior | הרכב כל מקור מנוהל שאתה פורס במקום להשתמש רק בזה עם העדיפות הגבוהה ביותר | ארגון והגדרות מנוהלות | מנוהל |
maxEffortLevel | הגבל את רמת המאמץ לכל מודל או לפי מודל, בכל ספק | מודל ותשובות | כל קובץ |
maxProseWidth | הגבל את רוחב הפרוזה בתשובות של Claude בטרמינל רחב | ממשק וטרמינל | כל קובץ |
minimumVersion | מנע מעדכונים אוטומטיים להתקין משהו מתחת לגרסה | עדכונים וגרסאות | כל קובץ |
model | שנה את המודל ש-Claude Code מתחיל איתו | מודל ותשובות | כל קובץ |
modelOverrides | מפה מזהי מודלים למזהים של הספק שלך, למשל ARN של Bedrock | מודל ותשובות | כל קובץ |
modelPicker | בחר אילו מודלים בורר /model מציג, בסדר שלך ועם התוויות שלך | מודל ותשובות | משתמש או מנוהל |
modelPricing | דווח על הוצאה לפי התעריפים החוזיים של הארגון שלך במקום מחיר המחירון | מודל ותשובות | מנוהל |
modelSettings | שמור רמת מאמץ או חלון דחיסה אוטומטית שנשמרו לפי מודל, או הגבל את המאמץ של מודל אחד | מודל ותשובות | כל קובץ |
otelHeadersHelper | צור כותרות OpenTelemetry מתחלפות באמצעות פקודה משלך | אימות וספקים | כל קובץ |
outputStyle | שנה את התפקיד, הטון ופורמט הפלט של Claude באמצעות סגנון פלט | מודל ותשובות | כל קובץ |
parentSettingsBehavior | החל או בטל הגבלות שמארח SDK או IDE מעביר כשאתה פורס הגדרות מנוהלות | ארגון והגדרות מנוהלות | מנוהל |
permissionExplainerEnabled | הוסר ב-v2.1.257, יחד עם הסבר הפקודה Ctrl+E בהנחיות הרשאת shell | הגדרות תצורה גלובליות | תצורה גלובלית |
permissions | הגדר כללי allow, ask ו-deny ואת מצב ההרשאה כברירת מחדל | הגדרות הרשאות | כל קובץ |
permissions.additionalDirectories | תן ל-Claude גישת קבצים לתיקיות מחוץ לתיקייה הנוכחית | הגדרות הרשאות | כל קובץ |
permissions.allow | אשר שימושי כלים מהרשימה בלי הנחיה | הגדרות הרשאות | כל קובץ |
permissions.ask | הצג תמיד הנחיה לפני שימושי כלים מהרשימה | הגדרות הרשאות | כל קובץ |
permissions.blockReadsOutsideWorkingDirectories | גרום לכלי הקבצים לסרב לקריאות מחוץ לתיקיות העבודה בכל מצב הרשאה | הגדרות הרשאות | כל קובץ |
permissions.blockWritesOutsideWorkingDirectories | גרום לכלים Write, Edit ו-NotebookEdit לסרב לנתיבים מחוץ לתיקיות העבודה בכל מצב הרשאה, חוץ מחלק מהקבצים של Claude Code עצמו | הגדרות הרשאות | כל קובץ |
permissions.defaultMode | הגדר את מצב ההרשאה כברירת מחדל לסשנים חדשים | הגדרות הרשאות | כל קובץ |
permissions.deny | חסום שימושי כלים מהרשימה, כולל קריאות של קבצים שמכילים סודות | הגדרות הרשאות | כל קובץ |
permissions.disableBypassPermissionsMode | מנע מכל אחד להיכנס למצב bypassPermissions | הגדרות הרשאות | כל קובץ |
plansDirectory | בחר לאן מצב תוכנית כותב קבצי תוכנית | זיכרון והקשר | כל קובץ |
pluginConfigs | אחסן את התשובות שנתת לתיבת הדו-שיח של הגדרת תוסף | תוספים ומיומנויות | משתמש או מנוהל |
pluginSuggestionMarketplaces | בחר אילו marketplaces יכולים להציג הצעות להתקנת תוספים ב-/plugin | תוספים ומיומנויות | מנוהל |
pluginTrustMessage | הוסף טקסט משלך לאזהרת האמון של התוסף | תוספים ומיומנויות | מנוהל |
policyHelper | הרץ קובץ הפעלה שמחשב הגדרות מנוהלות בהפעלה | ארגון והגדרות מנוהלות | מנוהל |
policyHelper.path | ציין את קובץ ההפעלה של ה-helper ש-Claude Code מריץ | ארגון והגדרות מנוהלות | מנוהל |
policyHelper.refreshIntervalMs | הרץ מחדש את ה-helper ברקע במרווח זמן | ארגון והגדרות מנוהלות | מנוהל |
policyHelper.timeoutMs | הגדר כמה זמן Claude Code ממתין ל-helper | ארגון והגדרות מנוהלות | מנוהל |
preferredNotifChannel | בחר צלצול טרמינל או התראת שולחן עבודה להשלמת משימה | שליטה מרחוק, שולחן עבודה והתראות | כל קובץ |
prefersReducedMotion | הפחת או כבה אנימציות spinner, shimmer ו-flash | ממשק וטרמינל | כל קובץ |
prependPlugins | הרץ את ה-mods של הארגון שלך לפני כל mod שמשתמש מתקין | תוספים ומיומנויות | משתמש או מנוהל |
processWrapper | הרץ את תהליכי הרקע של Claude Code דרך מפעיל ארגוני ב-macOS וב-Linux | סוכנים, סשנים ו-worktrees | משתמש או מנוהל |
promptCacheTtl | בחר את משך חיי מטמון ה-prompt לשיחה הראשית | מודל ותשובות | כל קובץ |
promptSuggestionEnabled | הסתר את הצעות ה-prompt האפורות בתיבת הקלט | ממשק וטרמינל | כל קובץ |
prStatusFooterEnabled | כבה את תג סטטוס סקירת ה-PR בכותרת התחתונה של ה-prompt ואת בדיקת ה-pull request שמאחוריו | הגדרות תצורה גלובליות | תצורה גלובלית |
prUrlTemplate | כוון קישורי PR לכלי סקירת קוד פנימי במקום github.com | Git וייחוס | כל קובץ |
remote.defaultEnvironmentId | בחר את סביבת הענן כברירת מחדל עבור claude --cloud: מזהה ccpool_ באירוח עצמי נקרא רק מהגדרות משתמש ומנוהלות ומ---settings | שליטה מרחוק, שולחן עבודה והתראות | כל קובץ |
remoteControlAtStartup | חבר Remote Control אוטומטית כשסשן מתחיל | שליטה מרחוק, שולחן עבודה והתראות | כל קובץ |
requiredMaximumVersion | סרב להתחיל בגרסה חדשה יותר ממה שהארגון שלך מתיר | עדכונים וגרסאות | מנוהל |
requiredMinimumVersion | סרב להתחיל בגרסה ישנה יותר ממה שהארגון שלך דורש | עדכונים וגרסאות | מנוהל |
respectGitignore | השאר קבצים ב-gitignore מחוץ לבורר הקבצים של @ | ממשק וטרמינל | כל קובץ |
respondToBashCommands | מנע מ-Claude להגיב אחרי שפקודת shell עם ! רצה | ממשק וטרמינל | כל קובץ |
sandbox | בודד פקודות Bash ממערכת הקבצים ומהרשת שלך ב-macOS, ב-Linux וב-WSL2 | הגדרות sandbox | כל קובץ |
sandbox.allowAppleEvents | אפשר לפקודות ב-sandbox לשלוח Apple Events ב-macOS | הגדרות sandbox | משתמש או מנוהל |
sandbox.allowNestedUserNamespaces | אפשר לפקודות ב-sandbox ליצור user namespaces ב-Linux וב-WSL2 | הגדרות sandbox | משתמש או מנוהל |
sandbox.allowUnsandboxedCommands | אפשר ל-Claude לנסות שוב פקודה חסומה מחוץ ל-sandbox, או לאסור את זה | הגדרות sandbox | כל קובץ |
sandbox.autoAllowBashIfSandboxed | הרץ פקודות ב-sandbox בלי הנחיית הרשאה | הגדרות sandbox | כל קובץ |
sandbox.bwrapPath | כוון את ה-sandbox לקובץ בינארי של bubblewrap מחוץ ל-PATH | הגדרות sandbox | מנוהל |
| מפתח | תיאור | נושא | היקף |
|---|---|---|---|
sandbox.credentials | הסתר או מסוך קבצי אישורים ומשתנים בתוך ארגז החול | הגדרות ארגז חול | כל קובץ |
sandbox.credentials.allowPlaintextInject | אפשר לאישורים ממוסכים להגיע לשירותי HTTP לא מוצפנים ברשתות בדיקה מהימנות | הגדרות ארגז חול | משתמש או מנוהל |
sandbox.credentials.awsPairs | קשר משתני מפתח AWS עם שמות מותאמים לאישור אחד לצורך חתימה מחדש | הגדרות ארגז חול | משתמש או מנוהל |
sandbox.credentials.envVars | בטל הגדרה או מסוך משתנה סביבה בתוך ארגז החול | הגדרות ארגז חול | כל קובץ |
sandbox.credentials.files | חסום או מסוך קריאות של קובץ אישורים בתוך ארגז החול | הגדרות ארגז חול | כל קובץ |
sandbox.credentials.sigv4 | בחר אם בקשות AWS מסוג streaming, presigned או SigV4A נכשלות או עוברות | הגדרות ארגז חול | משתמש או מנוהל |
sandbox.enabled | הפעל ארגז חול של Bash ב-macOS, ב-Linux וב-WSL2 | הגדרות ארגז חול | כל קובץ |
sandbox.enableWeakerNestedSandbox | הרץ את ארגז החול של Linux בתוך קונטיינר בלי הרשאות | הגדרות ארגז חול | כל קובץ |
sandbox.enableWeakerNetworkIsolation | אפשר ל-gh, ל-gcloud ול-terraform לאמת TLS מאחורי פרוקסי MITM בתוך ארגז החול ב-macOS | הגדרות ארגז חול | כל קובץ |
sandbox.excludedCommands | ציין פקודות ש-Claude Code יכול להריץ מחוץ לארגז החול | הגדרות ארגז חול | כל קובץ |
sandbox.failIfUnavailable | סרב להתחיל כשארגז החול לא יכול, והרצה בלי ארגז חול לא תתבצע | הגדרות ארגז חול | כל קובץ |
sandbox.filesystem | שלוט באילו נתיבים פקודות בארגז חול יכולות לקרוא ולכתוב | הגדרות ארגז חול | כל קובץ |
sandbox.filesystem.allowManagedReadPathsOnly | מנע ממפתחים לפתוח מחדש נתיבי קריאה שהארגון חסם | הגדרות ארגז חול | מנוהל |
sandbox.filesystem.allowRead | פתח מחדש קריאה בתוך אזור ש-denyRead חוסם | הגדרות ארגז חול | כל קובץ |
sandbox.filesystem.allowWrite | הוסף נתיבים שפקודות בארגז חול יכולות לכתוב אליהם | הגדרות ארגז חול | כל קובץ |
sandbox.filesystem.denyRead | חסום פקודות בארגז חול מקריאה של נתיבים מסוימים | הגדרות ארגז חול | כל קובץ |
sandbox.filesystem.denyWrite | חסום פקודות בארגז חול מכתיבה לנתיבים מסוימים | הגדרות ארגז חול | כל קובץ |
sandbox.filesystem.disabled | כבה בידוד מערכת קבצים תוך שמירה על בידוד הרשת | הגדרות ארגז חול | משתמש או מנוהל |
sandbox.ignoreViolations | השתק דיווחי הפרה עבור נתיבים שפקודה צפויה לבדוק | הגדרות ארגז חול | כל קובץ |
sandbox.network | שלוט באילו מארחים, פורטים ושקעים פקודות בארגז חול מגיעות | הגדרות ארגז חול | כל קובץ |
sandbox.network.allowAllUnixSockets | אפשר לפקודות בארגז חול להתחבר לכל שקע Unix | הגדרות ארגז חול | כל קובץ |
sandbox.network.allowedDomains | אשר מראש דומיינים כדי שפקודות בארגז חול לא יבקשו אישור עבורם | הגדרות ארגז חול | כל קובץ |
sandbox.network.allowLocalBinding | אפשר לפקודות בארגז חול להאזין על פורטי רשת ולהתחבר אל localhost ב-macOS | הגדרות ארגז חול | כל קובץ |
sandbox.network.allowMachLookup | אפשר לכלי macOS בארגז חול, כמו iOS Simulator או Playwright, להגיע לשירותי XPC שלהם | הגדרות ארגז חול | כל קובץ |
sandbox.network.allowManagedDomainsOnly | נעל את רשימת ההיתר של הרשת להגדרות מנוהלות | הגדרות ארגז חול | מנוהל |
sandbox.network.allowUnixSockets | פרט נתיבי שקעי Unix שפקודות בארגז חול יכולות להשתמש בהם ב-macOS | הגדרות ארגז חול | כל קובץ |
sandbox.network.deniedDomains | חסום דומיינים עבור פקודות בארגז חול, גם בתוך תו כללי מותר | הגדרות ארגז חול | כל קובץ |
sandbox.network.httpProxyPort | נתב תעבורת HTTP של ארגז החול דרך פרוקסי משלך | הגדרות ארגז חול | כל קובץ |
sandbox.network.socksProxyPort | נתב תעבורת SOCKS של ארגז החול דרך פרוקסי משלך | הגדרות ארגז חול | כל קובץ |
sandbox.network.strictAllowlist | דחה מארחים שמחוץ לרשימת ההיתר בלי בקשת אישור | הגדרות ארגז חול | משתמש או מנוהל |
sandbox.network.tlsTerminate | גרום לפרוקסי של ארגז החול לסיים TLS כדי שיוכל לקרוא בקשות HTTPS | הגדרות ארגז חול | משתמש או מנוהל |
sandbox.ripgrep | השתמש בקובץ הבינארי שלך של ripgrep בתוך ארגז החול | הגדרות ארגז חול | משתמש או מנוהל |
sandbox.socatPath | כוון את פרוקסי ארגז החול אל קובץ בינארי של socat מחוץ ל-PATH | הגדרות ארגז חול | מנוהל |
showClearContextOnPlanAccept | הצג אפשרות "clear context" במסך קבלת התוכנית | ממשק ומסוף | כל קובץ |
showThinkingSummaries | ראה סיכומים של החשיבה של Claude במקום קטע מכווץ | מודל ותשובות | כל קובץ |
showTurnDuration | הסתר את משך "Cooked for" אחרי כל תשובה | ממשק ומסוף | כל קובץ |
skillListingBudgetFraction | שמור יותר או פחות הקשר עבור רשימת המיומנויות | זיכרון והקשר | כל קובץ |
skillListingMaxDescChars | הגבל את אורך התיאור של כל מיומנות ברשימת המיומנויות | זיכרון והקשר | כל קובץ |
skillOverrides | הסתר או כווץ מיומנות בלי לערוך את SKILL.md שלה | תוספים ומיומנויות | כל קובץ |
skipAutoPermissionPrompt | דלג על ההודעה החד פעמית ש-Claude Code מציג בכניסה הראשונה שלך למצב auto בעצמך, דרך שאינה ברירת המחדל המובנית | הגדרות הרשאות | משתמש או מנוהל |
skipDangerousModePermissionPrompt | דלג על תיבת האישור לפני מצב bypassPermissions | הגדרות הרשאות | משתמש, מקומי או מנוהל |
skipWebFetchPreflight | דלג על בדיקת שם המארח של WebFetch כשאי אפשר להגיע אל Anthropic | פרטיות וטלמטריה | כל קובץ |
spellcheck | סמן בקו תחתון מילים עם שגיאות כתיב בקלט ההנחיה באמצעות בודק איות שאתה מתקין | ממשק ומסוף | משתמש או מנוהל |
spinnerTipsEnabled | הסתר טיפים בספינר בזמן ש-Claude עובד | ממשק ומסוף | כל קובץ |
spinnerTipsOverride | הוסף טיפים משלך לסבב הספינר, או החלף את הטיפים המובנים | ממשק ומסוף | כל קובץ |
spinnerVerbs | הוסף או החלף את הפעלים שמוצגים בזמן שתור רץ | ממשק ומסוף | כל קובץ |
sshConfigs | הוסף חיבורי SSH לבורר הסביבה של Desktop | מרוחק, שולחן עבודה והתראות | משתמש או מנוהל |
sshHostAllowlist | הגבל לאילו מארחים הפעלות SSH של Desktop יכולות להגיע | מרוחק, שולחן עבודה והתראות | מנוהל |
sshHostCommands | הוסף חיבורי SSH שהמארח שלהם מגיע מפקודה לבורר הסביבה של Desktop | מרוחק, שולחן עבודה והתראות | משתמש או מנוהל |
statusLine | הרץ פקודה משלך כדי להציג שורת מצב מתחת להנחיה | ממשק ומסוף | כל קובץ |
strictKnownMarketplaces | הגדר רשימת היתר למקורות marketplace שמשתמשים יכולים להוסיף ולהתקין מהם | תוספים ומיומנויות | מנוהל |
strictPluginOnlyCustomization | חסום מיומנויות, סוכנים, הוקים ושרתי MCP ממקורות משתמש ופרויקט | תוספים ומיומנויות | מנוהל |
strictPluginOnlyCustomization.agents | נעל סוכנים למקורות תוסף ומקורות מנוהלים | תוספים ומיומנויות | מנוהל |
strictPluginOnlyCustomization.hooks | נעל הוקים למקורות תוסף ומקורות מנוהלים | תוספים ומיומנויות | מנוהל |
strictPluginOnlyCustomization.mcp | נעל שרתי MCP למקורות תוסף ומקורות מנוהלים | תוספים ומיומנויות | מנוהל |
strictPluginOnlyCustomization.skills | נעל מיומנויות למקורות תוסף ומקורות מנוהלים | תוספים ומיומנויות | מנוהל |
subagentPromptCacheTtl | בחר את משך החיים של מטמון ההנחיה עבור תת סוכנים ובקשות אחרות מחוץ לשיחה הראשית | מודל ותשובות | כל קובץ |
subagentStatusLine | כתוב מחדש שורות בתצוגת המשימות של תת סוכן באמצעות פקודה משלך | ממשק ומסוף | כל קובץ |
switchModelsOnFlag | החלף מודלים אוטומטית או השהה כשמסווג בטיחות מסמן בקשה | מודל ותשובות | כל קובץ |
syncClaudeAiPlugins | הפסק לטעון את התוספים המופעלים בחשבון claude.ai שלך והפסק להוריד חדשים | תוספים ומיומנויות | משתמש, מקומי או מנוהל |
syncClaudeAiSkills | הפסק לטעון את המיומנויות המופעלות בחשבון claude.ai שלך והפסק להוריד חדשות | תוספים ומיומנויות | משתמש, מקומי או מנוהל |
syntaxHighlightingDisabled | כבה הדגשת תחביר ב-diffs ובבלוקי קוד | ממשק ומסוף | כל קובץ |
taskOutputMaxChars | הוסר ב-v2.1.277, יחד עם כלי TaskOutput שההגדרה קבעה את גודלו | זיכרון והקשר | כל קובץ |
teammateDefaultModel | הוסר ב-v2.1.234. ראה ציון חברי צוות ומודלים לאופן שבו Claude Code בוחר מודל של חבר צוות | הגדרות תצורה גלובליות | תצורה גלובלית |
teammateMode | בחר איך מוצגים חברי צוות בצוות סוכנים | סוכנים, הפעלות ו-worktrees | כל קובץ |
terminalProgressBarEnabled | הסתר את סרגל ההתקדמות של המסוף במסופים שתומכים בו | ממשק ומסוף | כל קובץ |
terminalTitleFromRename | מנע מ-/rename ומ---name לשנות את כותרת לשונית המסוף | ממשק ומסוף | כל קובץ |
theme | בחר את ערכת הצבעים של הממשק, מובנית או מותאמת | ממשק ומסוף | כל קובץ |
timeFormat | הצג את השעות בממשק בשעון של 12 שעות או 24 שעות, ב-UTC, או עם תבנית strftime | ממשק ומסוף | כל קובץ |
timeZone | הצג את השעות בממשק באזור זמן שונה מאזור הזמן של המערכת | ממשק ומסוף | כל קובץ |
tui | בחר את מעבד התצוגה של המסוף במסך מלא או את המעבד הקלאסי | ממשק ומסוף | כל קובץ |
ultracode | גרום ל-Claude לתכנן תהליך עבודה לכל משימה מהותית בלי שיתבקש | מודל ותשובות | כל קובץ |
useAutoModeDuringPlan | אפשר למסווג של מצב auto לבדוק פקודות מעטפת במצב plan. הגדר false כדי לקבל בקשות אישור | הגדרות הרשאות | משתמש, מקומי או מנוהל |
verbose | הצג פלט כלים מלא במקום סיכומים חתוכים. כששניהם מוגדרים, viewMode מקבל עדיפות | ממשק ומסוף | כל קובץ |
viewMode | התחל כל הפעלה בתצוגת default, verbose או focus | ממשק ומסוף | כל קובץ |
vimInsertModeRemaps | מפה רצף של שני מקשים במצב INSERT, כמו jj, אל Escape | ממשק ומסוף | משתמש או מנוהל |
voice | הפעל הכתבה קולית ובחר מצב החזקה או הקשה | ממשק ומסוף | כל קובץ |
voiceEnabled | הפעל הכתבה קולית בצורה הישנה של מקש אחד | ממשק ומסוף | כל קובץ |
wheelScrollAccelerationEnabled | כבה האצת גלגל עכבר בעיבוד מסך מלא | ממשק ומסוף | כל קובץ |
workflowKeywordTriggerEnabled | אפשר למילה ultracode בהנחיה להתחיל תהליך עבודה. הגדר false כדי להקליד אותה בלי להתחיל תהליך | הוקים ואוטומציה | כל קובץ |
workflowSizeGuideline | הגדר את מספר הסוכנים ש-Claude מכוון אליו בתהליכי עבודה דינמיים | הוקים ואוטומציה | כל קובץ |
worktree | הגדר איך Claude Code יוצר worktrees של git | סוכנים, הפעלות ו-worktrees | כל קובץ |
| מפתח | תיאור | נושא | היקף |
|---|---|---|---|
worktree.baseRef | צור worktrees חדשים מענף ברירת המחדל המרוחק או מ-HEAD המקומי שלך | סוכנים, סשנים ו-worktrees | כל קובץ |
worktree.bgIsolation | אפשר לסשנים ברקע לערוך את עותק העבודה בלי worktree | סוכנים, סשנים ו-worktrees | כל קובץ |
worktree.location | בחר היכן סשני SSH של Desktop יוצרים את ה-worktrees שלהם במכונה מרוחקת | סוכנים, סשנים ו-worktrees | משתמש |
worktree.sparsePaths | בצע checkout רק לתיקיות שאתה צריך בכל worktree | סוכנים, סשנים ו-worktrees | כל קובץ |
worktree.symlinkDirectories | צור symlink לתיקיות גדולות לתוך כל worktree במקום לשכפל אותן | סוכנים, סשנים ו-worktrees | כל קובץ |
wslInheritsWindowsSettings | הגדר ש-WSL יקרא הגדרות מנוהלות משרשרת המדיניות של Windows | ארגון והגדרות מנוהלות | מנוהל |
#מודל ותשובות
בחר אילו מודלים Claude Code משתמש בהם ואיך הוא מגיב. לאופן שבו ההגדרות האלה פועלות יחד עם הפקודה /model ומשתני סביבה, ראה הגדרת מודל.
#advisorModel
בחר איזה מודל עונה כש-Claude קורא לכלי advisor בצד השרת. השאר אותו לא מוגדר כדי לכבות את ה-advisor. ה-advisor חייב להיות לפחות באותה יכולת כמו המודל הראשי שלך. ראה בחירת מודל advisor לצירופים המקובלים ולמה שקורה כשבוחרים צירוף שלא מקובל.
בדרך כלל לא עורכים את המפתח הזה ידנית. הרץ /advisor כדי לפתוח בורר שמציג את הבחירה הנוכחית, את המודלים שיכולים לייעץ, ואת No advisor. Claude Code שומר את הבחירה שלך למפתח הזה ב-~/.claude/settings.json. אם בוחרים מלקוח Remote Control או בסשן שמחובר ל-worker מרוחק, הבחירה חלה על הסשן הזה בלבד ולא משנה את המפתח.
אם החשבון שלך דורש את הסכמת usage-credits, אשר אותה קודם על ידי הרצת /model fable. עד שתעשה זאת, בחירת Fable ב-/advisor לא שומרת כלום ו-Claude Code אומר להריץ /model fable קודם.
- היקף:
כל קובץ - סוג: מחרוזת, אחד מהכינויים
"fable","opus", או"sonnet", שנפתרים לגרסת ברירת המחדל הנוכחית של Claude Code למשפחת המודל הזו, או מזהה מודל מלא כמו"claude-opus-5-5" - ברירת מחדל: לא מוגדר, כך שה-advisor כבוי
- עקיפות לכל סשן:
--advisorגובר על המפתח הזה לסשן אחד.CLAUDE_CODE_DISABLE_ADVISOR_TOOLמכבה את ה-advisor, והמפתח הזה לא יכול להדליק אותו בחזרה
{
"advisorModel": "opus"
}למפתח אין השפעה אצל ספקים שבהם ה-advisor לא זמין, כמו Amazon Bedrock ו-Claude Platform on AWS. "fable" דורש גישת Fable.
#alwaysThinkingEnabled
כבה חשיבה מורחבת לכל סשן על ידי הגדרת זה ל-false. החשיבה דולקת כברירת מחדל, כך ש-true לא משנה כלום. רוב האנשים מגדירים זאת דרך /config במקום לערוך את הקובץ.
במודלים שתמיד חושבים, כמו Opus 5.5, Sonnet 5.5, Haiku 5.5, ומודלי Fable, ל-false אין השפעה. אצל ספקי צד שלישי Claude Code משמיט את הפרמטר thinking במקום לכבות חשיבה, כך שמודלי adaptive-reasoning עשויים עדיין לחשוב. כשחשיבה כבויה ב-Anthropic API, Claude Code שולח effort high במקום רמה גבוהה יותר למודלים שהוא יודע שלא מקבלים את הצירוף הזה, כמו Opus 5.
- היקף:
כל קובץ - סוג: בוליאני
true: אין השפעה. החשיבה כבר דולקתfalse: Claude Code מכבה חשיבה מורחבת לכל סשן
- ברירת מחדל: לא מוגדר, כך שחשיבה דולקת למודלים שתומכים בה
- עקיפות לכל סשן:
MAX_THINKING_TOKENSגובר על המפתח הזה לסשן אחד:0מכבה חשיבה, תחת אותן מגבלות מודל וספק כמוfalse, וערך חיובי מדליק חשיבה גם כשהמפתח הזה הואfalse. במודלי adaptive-reasoning המספר עצמו מתעלמים ממנו
{
"alwaysThinkingEnabled": false
}#availableModels
הגבל אילו מודלים אנשים יכולים לבחור לסשן הראשי, ל-subagents, ל-skills, ול-advisor. רשימה מנוהלת מגבילה את /model, את --model, ואת המפתח model בקבצים של המפתח עצמו. מודל שמחוץ לה אי אפשר לבחור. עם התאמת prefix כברירת מחדל, זה לבדו לא נוגע באפשרות Default. שלב אותו עם enforceAvailableModels לשם כך.
- היקף:
כל קובץ. פרוס אותו בהגדרות מנוהלות כדי לאכוף אותו לארגון. - סוג: מערך של כינויי מודל או מזהים
- ברירת מחדל: לא מוגדר, כך שכל מודל זמין
הדוגמה הזו מאפשרת לאנשים לבחור רק מודלי Sonnet ו-Haiku:
{
"availableModels": ["sonnet", "haiku"]
}רשומת מזהה מודל כמו "claude-opus-5" מתירה גם גרסאות מאוחרות יותר שמרחיבות אותו, כמו Opus 5.5. כדי לחסום אחת מהגרסאות האלה, השתמש ב-deniedModels. כדי שכל רשומת מזהה מודל תתיר רק את הגרסה שהיא מציינת, השתמש ב-availableModelsMatch. ראה הגבלת בחירת מודל. למזהים של ספקי צד שלישי, ראה נעיצת מודלים לפריסות צד שלישי.
#availableModelsMatch
בחר איך רשומות availableModels מתאימות למזהי מודל. כברירת מחדל רשומת מזהה מודל מתירה גם גרסאות מאוחרות יותר שמרחיבות אותו, כך ש-"claude-opus-5" מתיר את Opus 5.5. עם "exact", כל רשומת מזהה מודל מתירה רק את הגרסה שהיא מציינת, כך שגרסה חדשה יותר של המודל נשארת חסומה עד שתרשום אותה. דורש Claude Code v2.1.283 או מאוחר יותר.
- היקף:
מנוהל. Claude Code מתעלם מהמפתח בהגדרות user, project ו-local וב---settings, עם אזהרה - סוג: מחרוזת, אחת מאלה:
"prefix": רשומת מזהה מודל מתירה את הגרסה שלה וכל מזהה מודל שמרחיב אותה במקטע נוסף"exact": רשומת מזהה מודל מתירה רק את הגרסה שהיא מציינת, כך ש-"claude-opus-5"מתיר את Opus 5 אבל לא אתclaude-opus-5-5. רשומה כמו"claude-opus-4-5"מתירה גם את מזהה המודל המתוארך של Anthropicclaude-opus-4-5-20251101. כינוי משפחה כמו"opus"עדיין מתיר את כל המשפחה, ומרשומותbest,opusplanו-defaultמתעלמים
- ברירת מחדל:
"prefix"
הדוגמה הזו מתירה את Opus 5 ואת Sonnet 5 ושום גרסה מאוחרת יותר של אף אחד מהם:
{
"availableModels": ["claude-opus-5", "claude-sonnet-5"],
"availableModelsMatch": "exact"
}עם "exact", גם אפשרות Default מוגבלת למודלים שברשימה בכל פעם שהרשימה מציינת לפחות מודל אחד או משפחה. ראה חסימת מודלים או גרסאות ספציפיים.
#deniedModels
חסום מודלים ספציפיים, עם או בלי רשימת היתר availableModels וגם כשהרשימה הזו מתירה אותם. Claude Code מסתיר מודל חסום מבורר /model, ואי אפשר לבחור את המודל בכל מקום שבו availableModels נאכף. גם סשן על אפשרות Default לא מריץ מודל חסום, כפי ש-חסימת מודלים או גרסאות ספציפיים מתאר. דורש Claude Code v2.1.283 או מאוחר יותר.
- היקף:
מנוהל. Claude Code מתעלם מהמפתח בהגדרות user, project ו-local וב---settings, עם אזהרה - סוג: מערך של כינויי מודל או מזהים
- כינוי משפחה כמו
"opus"חוסם כל מודל במשפחה הזו - מזהה מודל כמו
"claude-opus-5-5"חוסם את הגרסה הזו בכל איות, כולל מזהים מתוארכים ומזהים ייחודיים לספק - מזהה מודל בלי גרסת minor, כמו
"claude-opus-5", חוסם גם גרסאות minor מאוחרות יותר כמו Opus 5.5. כתוב"claude-opus-5-0"כדי לחסום את Opus 5 לבדו - מרשומות
best,opusplanו-defaultמתעלמים
- כינוי משפחה כמו
- ברירת מחדל: לא מוגדר, כך שאף מודל לא חסום
הדוגמה הזו מתירה מודלי Opus ו-Sonnet וחוסמת את Opus 5.5:
{
"availableModels": ["opus", "sonnet"],
"deniedModels": ["claude-opus-5-5"]
}ראה חסימת מודלים או גרסאות ספציפיים.
#effortLevel
הגדר רמת effort כברירת מחדל למודלים שעדיין לא שמרת להם רמה. רמות נמוכות יותר מהירות וזולות יותר במשימות פשוטות, ורמות גבוהות יותר מנמקות לעומק יותר בבעיות מורכבות.
כשמריצים /effort low, medium, high, או xhigh בסשן אינטראקטיבי במכונה שלך, Claude Code שומר את הרמה למודל הפעיל תחת modelSettings במקום לכתוב את המפתח הזה. לפני v2.1.251, /effort כתב את המפתח הזה.
בתוך אותו קובץ הגדרות, Claude Code משתמש ברמה השמורה של המודל במקום במפתח הזה. modelSettings מציין את סדר העדיפות בין קבצים.
בסשן שמחובר ל-worker מרוחק, בהרצה עם -p, וב-Agent SDK, /effort חל על הסשן הזה בלבד. התאמת רמת effort מפרטת את הבחירות האינטראקטיביות שגם הן חלות על הסשן הזה בלבד. ההודעה ש-/effort מדפיס אומרת מה קרה.
- היקף:
כל קובץ - סוג: מחרוזת, אחת מאלה:
"low": ההנמקה המעטה ביותר, למשימות קצרות, תחומות ורגישות להשהיה שאינן רגישות לאינטליגנציה"medium": מפחית שימוש בטוקנים לעבודה רגישת עלות שיכולה לוותר על חלק מהאינטליגנציה"high": מאזן שימוש בטוקנים ואינטליגנציה"xhigh": הנמקה עמוקה יותר בהוצאת טוקנים גבוהה יותר
- ברירת מחדל: לא מוגדר
- עקיפות לכל סשן:
--effortגובר על המפתח הזה לסשן אחד, ו-CLAUDE_CODE_EFFORT_LEVELגובר על שניהם
{
"effortLevel": "xhigh"
}בקובץ הגדרות המשתמש שלך, ~/.claude/settings.json, המפתח הזה הוא הצורה הישנה ש-/effort כתב לפני ששמר רמות לכל מודל, והוא ממשיך לחול איפה שחל קודם, על Opus 5, Fable 5.1, ומודלים מוקדמים יותר. Opus 5.5 ומודלים שיצאו אחריו מתעלמים ממנו ומתחילים בברירת המחדל שלהם עד שתשמור להם רמה, ש-/effort כותב תחת modelSettings. בהגדרות project, local ומנוהלות, ועם --settings, המפתח הזה חל על כל מודל.
#enforceAvailableModels
לבורר /model יש אפשרות Default, ו-הגדרת מודל ברירת מחדל מתארת את המודל שאליו היא נפתרת. רשימת היתר availableModels מגבילה את המודלים שאפשר לציין בשם, אבל עם התאמת prefix כברירת מחדל היא לא ממפה מחדש את ברירת המחדל של סוג החשבון שלך, כך ש-Default עדיין יכול להיפתר למודל שמחוץ לרשימה. המפתח הזה סוגר את הפער הזה. דורש Claude Code v2.1.175 או מאוחר יותר.
כשהארגון שלך פורס הגדרות מנוהלות כלשהן, Claude Code קורא את המפתח הזה מהמקור המנוהל בלבד ומתעלם ממנו בקבצים האחרים שלך.
לאופן שבו המפתח הזה חל על בדיקות המודל בהפעלה, ראה Amazon Bedrock ו-Agent Platform של Google Cloud.
- היקף:
כל קובץ - סוג: בוליאני
true: כש-Default היה נפתר למודל שמחוץ ל-availableModels, Claude Code פותר אותו למודל הזמין הראשון ברשימהfalse: המפתח הזה לא משנה איך Default נפתר
- ברירת מחדל:
false
הדוגמה הזו מגבילה בחירות בשם למודלי Sonnet ו-Haiku וגורמת ל-Default להיפתר לראשון מביניהם שזמין:
{
"availableModels": ["sonnet", "haiku"],
"enforceAvailableModels": true
}למפתח הזה אין השפעה כש-availableModels לא מוגדר או ריק. ראה אכיפת רשימת ההיתר למודל Default. דורש Claude Code v2.1.175 או מאוחר יותר.
#fallbackModel
ציין מודלי גיבוי ש-Claude Code ינסה, לפי הסדר, כשהמודל הראשי שלך עמוס או לא זמין. Claude Code עובר למודל הזמין הבא בשרשרת לשאר התור ומציג הודעה. בלי שרשרת, Claude Code מנסה שוב את אותו מודל ואז מציג את שגיאת השרת, ואתה מנסה שוב או מחליף מודל בעצמך.
מעבר אומר תור אחד עם מטמון prompt קר על מודל הגיבוי. ההודעה הבאה שלך מנסה שוב קודם את המודל הראשי.
- היקף:
כל קובץ - סוג: מערך של כינויי מודל או מזהים.
"default"מתרחב למודל ברירת המחדל - ברירת מחדל: לא מוגדר, כך שבקשה שנכשלה לא מנוסה שוב על מודל אחר
- עקיפות לכל סשן:
--fallback-modelגובר על המפתח הזה לסשן אחד
הדוגמה הזו מנסה קודם את Sonnet 5, ואז את Haiku 4.5, כשהמודל הראשי שלך נכשל:
{
"fallbackModel": ["claude-sonnet-5", "claude-haiku-4-5"]
}בשונה מרוב הגדרות המערך, המפתח הזה לא מתמזג בין קבצי הגדרות: הקובץ בעל העדיפות הגבוהה ביותר שמגדיר אותו מספק את כל השרשרת. אם קובץ הפרויקט שלך מגדיר ["claude-sonnet-5"] וקובץ המשתמש שלך מגדיר ["claude-haiku-4-5"], השרשרת היא ["claude-sonnet-5"] בלבד. Claude Code שומר לכל היותר שלושה מודלים מותרים נפרדים מהרשימה ומתעלם מהשאר. ראה שרשראות מודל גיבוי.
#fastMode
הפעל fast mode לסשנים שבהם הוא זמין, לעבודה אינטראקטיבית כמו איטרציה מהירה או ניפוי שגיאות חי שבו רוצים מהירות בעלות גבוהה יותר לכל טוקן. בדרך כלל לא עורכים את המפתח הזה ידנית: הרצת /fast כותבת fastMode: true ל-~/.claude/settings.json, והרצה נוספת כדי לכבות את fast mode מסירה את המפתח. fast mode רץ רק על Opus 5.5, Opus 5, ו-Opus 4.8: הפעלה ממודל אחר מעבירה אותך ל-Opus, ומעבר למודל לא נתמך מכבה אותו. ראה החלפת מודלים בזמן ש-fast mode דולק.
- היקף:
כל קובץ - סוג: בוליאני
true: Claude Code מדליק את fast mode לסשנים שבהם הוא זמיןfalse: fast mode נשאר כבוי
- ברירת מחדל: לא מוגדר, כך ש-fast mode כבוי
- עקיפות לכל סשן:
CLAUDE_CODE_DISABLE_FAST_MODEמכבה את fast mode לסשן אחד, והמפתח הזה לא יכול להדליק אותו בחזרה
{
"fastMode": true
}#fastModePerSessionOptIn
בדרך כלל, הרצת /fast שומרת את fastMode להגדרות המשתמש של אדם, כך ש-fast mode דולק בתחילת כל סשן מאוחר יותר. הגדר את המפתח הזה ל-true כדי לעצור את זה: fastMode: true שמור כבר לא מדליק את fast mode בתחילת סשן, וכל אדם צריך להריץ /fast בכל סשן שבו הוא רוצה אותו. Claude Code משאיר את מפתח fastMode בקובץ שלהם, כך שכיבוי המפתח הזה מחזיר את ההתנהגות הישנה.
בעלים בתוכניות Team או Enterprise יכולים לפרוס אותו לכל הארגון דרך הגדרות מנוהלות בשרת. כשהגדרות מנוהלות מגדירות את המפתח, /fast on נדחה מחוץ לסשני טרמינל אינטראקטיביים ומדווח שהארגון שלך השבית את fast mode. זה מכסה מצב לא אינטראקטיבי, את הרחבת VS Code, וסשני ענן.
- היקף:
כל קובץ - סוג: בוליאני
true:fastMode: trueשמור כבר לא מדליק את fast mode בתחילת סשן, כך שכל אדם מריץ/fastבכל סשן שבו הוא רוצה אותו.fastMode: trueשהועבר עם--settingsעדיין נספר לסשן הזה, אלא אם הגדרות מנוהלות הגדירו את המפתח הזהfalse:fastMode: trueשמור מדליק את fast mode בתחילת כל סשן מאוחר יותר
- ברירת מחדל:
false
{
"fastModePerSessionOptIn": true
}#language
בקש מקלוד להשיב בשפה שאינה אנגלית כברירת מחדל. אין רשימה קבועה לתשובות: Claude Code מעביר את הערך כלשונו לקלוד כהוראה להשיב תמיד באותה שפה, ולכן כל שם שפה שקלוד יכול לקרוא עובד. Claude Code לא בודק את הערך, ולכן שם עם שגיאת כתיב מגיע לקלוד כפי שנכתב במקום לייצר שגיאה. אותו ערך קובע את השפה עבור הכתבה קולית, שלה כן יש רשימה קבועה של שפות הכתבה נתמכות, ועבור כותרות סשן שנוצרות אוטומטית.
- היקף:
כל קובץ - סוג: מחרוזת, כל שם שפה, כגון
"japanese","spanish", או"french"; Claude Code לא מאמת אותו - ברירת מחדל: לא מוגדר; כותרות הסשן תואמות אז את שפת השיחה
{
"language": "japanese"
}#maxEffortLevel
הגבל את רמת המאמץ שסשן יכול להשתמש בה, והשאר רמות נמוכות יותר זמינות. כל רמה גבוהה יותר רצה במגבלה במקום זאת, כולל רמה מ-/effort, מבורר /model, מ---effort, מ-CLAUDE_CODE_EFFORT_LEVEL, מ-frontmatter של effort של skill או subagent, או מברירת המחדל של המודל עצמו. Claude Code מחיל את המגבלה בעצמו לפני כל בקשה, ולכן היא נשמרת בכל ספק, כולל Amazon Bedrock, Agent Platform של Google Cloud, ו-Microsoft Foundry. נדרש Claude Code v2.1.267 או מאוחר יותר.
- היקף:
כל קובץ. פרוס אותו בהגדרות מנוהלות כדי לאכוף אותו עבור ארגון. כשכמה היקפים קובעים מגבלה, הנמוכה ביותר חלה, ולכן מגבלה שנקבעה בהיקף אחד לא ניתנת להעלאה מהיקף אחר - סוג: מחרוזת, אחת מ-
"low","medium","high","xhigh", או"max". ערך"max"לא קובע מגבלה - ברירת מחדל: לא מוגדר, ולכן לא חלה מגבלה
- מגבלות לכל מודל: הוסף
maxEffortLevelלרשומתmodelSettingsשל מודל. הרשומה הזו מחליפה את המפתח הזה עבור המודל רק בתוך מקור ההגדרות שמגדיר את שניהם, כגון הגדרות המשתמש שלך או מקור מנוהל אחד. קבע שם"max"כדי לפטור את המודל מהמגבלה של אותו מקור; Claude Code עדיין מחיל מגבלות ממקורות אחרים
דוגמה זו מגבילה כל מודל ל-medium ופוטרת את Sonnet 4.6:
{
"maxEffortLevel": "medium",
"modelSettings": {
"claude-sonnet-4-6": {
"maxEffortLevel": "max"
}
}
}כשהארגון שלך גם קובע מגבלת מאמץ למודל, הנמוכה מבין שתי המגבלות חלה.
#model
קבע את המודל שכל סשן חדש משתמש בו, כדי שלא תצטרך לבחור אחד עם /model בכל פעם. הגדרה כאן לא מונעת ממך להחליף באמצע הסשן. אם מנהל המערכת שלך קבע מודל ברירת מחדל של הארגון כדי לעקוף את בחירת המשתמש, אתה מקבל את המודל הזה גם כשאתה מגדיר את המפתח הזה בהגדרות משתמש, פרויקט או מקומיות.
- היקף:
כל קובץ - סוג: מחרוזת, כינוי מודל או מזהה מודל מלא
- ברירת מחדל: לא מוגדר, ולכן Claude Code משתמש במודל ברירת המחדל של החשבון שלך
- עקיפות לכל סשן:
--modelמקבל קדימות על פניANTHROPIC_MODEL, ושניהם מקבלים קדימות על פני המפתח הזה לסשן אחד, כולל על פניmodelמנוהל; רשימתavailableModelsעדיין חלה על הבחירה
{
"model": "claude-sonnet-5"
}ערך כאן גובר על ANTHROPIC_DEFAULT_MODEL, ש-Claude Code משתמש בו רק כששום דבר אחר לא בוחר מודל.
#modelOverrides
מפה מזהי מודל של Anthropic למזהי מודל ספציפיים לספק, כגון ARN של פרופיל הסקה של Amazon Bedrock. כל רשומה בבורר המודלים משתמשת אז בערך הממופה שלה בקריאה ל-API של הספק. מנהלי מערכת משתמשים בזה ב-Amazon Bedrock, Agent Platform של Google Cloud, ו-Microsoft Foundry כדי לנתב כל גרסת מודל לפרופיל הסקה, שם גרסה או פריסה ספציפיים, לצורך ממשל, הקצאת עלויות או ניתוב אזורי.
- היקף:
כל קובץ - סוג: אובייקט שממפה מזהה מודל למזהה מודל של ספק
- ברירת מחדל: לא מוגדר
דוגמה זו מנתבת כל קריאה עבור Opus 4.6 לפרופיל ההסקה הנקוב של Bedrock:
{
"modelOverrides": {
"claude-opus-4-6": "arn:aws:bedrock:us-east-1:123456789012:inference-profile/example"
}
}#modelPicker
פרט את המודלים שבורר /model מציע, בסדר שבו אתה כותב אותם ותחת תוויות שאתה בוחר, כדי שהבורר יציג את המודלים שהארגון שלך מריץ, אחרי המערך המובנה או במקומו. ה-model של כל שורה נלקח כלשונו, ולכן הוא מקבל כל מה ש---model מקבל: כינוי כגון opus, מזהה מודל של Anthropic, או מזהה בפורמט ספק עבור Amazon Bedrock, Agent Platform של Google Cloud, Microsoft Foundry, או שער LLM. נדרש Claude Code v2.1.242 או מאוחר יותר.
- היקף:
משתמש או מנוהל. Claude Code קורא את המפתח מהגדרות מנוהלות, מ---settingsומהגדרות משתמש, ומתעלם ממנו בהגדרות פרויקט ומקומיות כדי שמאגר שאתה משכפל לא יוכל לתייג מחדש את הבורר. הגבוה מבין שלושת אלה שמגדיר את המפתח מספק את כל המערך, ו-Claude Code לעולם לא משלב מערכים משני מקורות. - סוג: אובייקט עם מערך
optionsשל שורות וערך בוליאני אופציונליreplaceBuiltInOptions - ברירת מחדל: לא מוגדר, ולכן הבורר מציג את המערך המובנה
דוגמה זו מוסיפה שתי פריסות Bedrock אחרי המערך המובנה, תחת שמות שהצוות שלך מזהה:
{
"modelPicker": {
"options": [
{ "model": "us.anthropic.claude-opus-4-8", "label": "Opus (production)" },
{
"model": "us.anthropic.claude-sonnet-4-6",
"label": "Sonnet (production)",
"description": "Day-to-day work"
}
]
}
}#שדות עבור modelPicker
המפתח מקבל שני שדות, אחד עבור השורות עצמן ואחד עבור האם הן מחליפות את המערך המובנה או מתווספות אליו.
| שדה | סוג | מה הוא עושה |
|---|---|---|
options | מערך של שורות, לכל אחת model נדרש ו-label, description ו-behavesAs אופציונליים | השורות שהבורר מציג, בסדר הזה, פרט לכך ששורה מאפירה עוברת לתחתית. בלי label, Claude Code נותן לשורה כותרת עם השם המובנה של מודל שהוא מכיר, או מזהה המודל אחרת, ובלי description הוא כותב שורה שנייה כללית |
replaceBuiltInOptions | בוליאני, ברירת מחדל false | קבע אותו ל-true כדי להציג רק את השורות האלה, Default, ושורה עבור המודל שהסשן כבר משתמש בו. השאר אותו לא מוגדר כדי להוסיף את השורות האלה אחרי המערך המובנה |
רשומה ב-options יכולה גם לשאת מחרוזת behavesAs אופציונלית לצד ה-model שלה, מה שדורש v2.1.257 או מאוחר יותר. קבע אותה למזהה של מודל שגרסת Claude Code שלך כבר מכירה, כגון claude-opus-4-8, ברשומה שה-model שלה חדש יותר מהגרסה שלך. Claude Code מחיל אז את היכולות וברירות המחדל של המאמץ של המודל המוכר הזה על הרשומה במקום להתייחס למודל שלה כלא מוכר. התווית של הרשומה ומזהה המודל ש-Claude Code שולח בבקשות לא משתנים.
כש-replaceBuiltInOptions פועל, Claude Code מסתיר כל שורה אחרת: המערך המובנה, השורות שהוא מוסיף עבור רשומות availableModels, המודלים ש-גילוי שער מצא, ו-ANTHROPIC_CUSTOM_MODEL_OPTION. כשהוא כבוי, Claude Code מדלג על מודל ברשימה שהמערך המובנה כבר מכסה. תווית משנה את מה שהבורר מציג, לא איזה מודל Claude Code מריץ.
רשימת היתר availableModels עדיין חלה על השורות האלה. לפני שאתה מוסיף מודל מהרשימה לרשימת ההיתר, קרא התנהגות מיזוג: מזהה מודל ספציפי מצמצם את רשומת התו הכללי של המשפחה שלו. Claude Code גם בודק כל שורה מול הסשן לפני שהוא מציג את הבורר:
- נשמטת: שורה ש-Claude Code לא יכול לשרת, כגון מודל שיצא משימוש או מודל שלארגון שלך אין גישה אליו
- מאפירה: שורה שעדיין אי אפשר לבחור, מוצגת עם הסיבה
- אף שורה לא שורדת: Claude Code שומר את המערך המובנה, מסונן לפי רשימת ההיתר כרגיל
Claude Code משמיט שורה שהוא לא יכול לנתח ושומר את השאר. ראה תיקון קובץ הגדרות שבור.
#modelPricing
דווח על הוצאה לפי התעריפים שהארגון שלך משלם במקום מחיר המחירון. קבע אותו כשלארגון שלך יש תעריפים חוזיים, כדי שנתוני הדולרים שמפתחים רואים יתאימו לחשבון שלך. Claude Code מחיל את התעריפים ב-/usage, ב-שורת הסטטוס, ב-total_cost_usd של Agent SDK, במגבלת --max-budget-usd, ובמדד ובעצם העלות של OpenTelemetry. אתה מספק את התעריפים: Claude Code לא קורא אותם מהחוזה שלך או מ-Claude Console. נדרש Claude Code v2.1.242 או מאוחר יותר.
- היקף:
מנוהל. פרוס את המפתח דרך הגדרות מנוהלות שרת, מדיניות MDM, קובץmanaged-settings.json, או עוזר מדיניות. Claude Code מתעלם ממנו בהגדרות משתמש, פרויקט ומקומיות, ב---settings, וב-Windows ב-רישום HKCU שניתן לכתיבה על ידי המשתמש. עם הגדרות מנוהלות שרת, כל סשן מדווח על עלויות במחיר מחירון עד ש-שליפת ההגדרות של אותו סשן אישרה את ההגדרה. יישום מארח שמשבץ את Claude Code ומגדירCLAUDE_CODE_PROVIDER_MANAGED_BY_HOSTיכול לספק טבלה משלו דרך אפשרות ה-SDKmanagedSettings, ש-Claude Code משתמש בה רק כשאף מקור מנוהל לא מגדיר את המפתח ורק ב-Claude Code v2.1.246 או מאוחר יותר. - סוג: אובייקט עם
multiplierאופציונלי ומפתoverridesאופציונלית - ברירת מחדל: לא מוגדר, ולכן Claude Code מדווח על מחיר מחירון אלא אם יישום מארח מספק טבלה
קבע multiplier לבד להנחה או לתוספת מחיר אחידה, overrides לבד לתעריפים לכל מודל, או את שניהם.
דוגמה זו קובעת תעריפים חוזיים עבור Sonnet 4.6 ואז מפחיתה כל נתון, כולל שורת Sonnet, ב-15%:
{
"modelPricing": {
"multiplier": 0.85,
"overrides": {
"claude-sonnet-4-6": {
"input": 2.4,
"output": 12,
"cacheRead": 0.24,
"cacheWrite": 3
}
}
}
}קבע multiplier מעל 1, עד 10, כדי לייקר כל נתון. תוספת מחיר דורשת Claude Code v2.1.271 או מאוחר יותר. גרסאות מוקדמות יותר מתעלמות מ-multiplier מעל 1 עם אזהרה ושומרות את שאר ההגדרה.
לשלבים, כולל איך לאשר שהתעריפים בתוקף, ראה דיווח הוצאה לפי התעריפים החוזיים שלך.
#שדות עבור modelPricing
| שדה | סוג | מה הוא עושה |
|---|---|---|
multiplier | מספר גדול מ-0 ולכל היותר 10 | מכפיל כל עלות ש-Claude Code מחשב, בין אם שורת overrides מכסה אותה ובין אם לא. מתחת ל-1 זו הנחה, מעל 1 זו תוספת מחיר |
overrides | מפה ממזהה מודל לאובייקט תעריף עם input, output, cacheRead ו-cacheWrite, כל אחד מ-0 עד 10000 | תעריפי דולר למיליון טוקנים עבור המודל הזה, כל הארבעה נדרשים. cacheWrite מכסה גם כתיבות מטמון של חמש דקות וגם של שעה. ראה לאילו מודלים שורה חלה |
Claude Code משתמש בתעריפי שורה בדיוק כפי שכתבת אותם, בלי להוסיף את תוספת מצב המהיר או את תעריף ההסקה ל-US בלבד. אם אתה גם קובע multiplier, Claude Code מחיל אותו מעל תעריפי השורה. Claude Code משמיט שורה עם תעריף שהוא לא יכול לנתח, או multiplier שהוא לא יכול לנתח, ושומר את השאר; ראה תיקון קובץ הגדרות שבור.
#לאילו מודלים שורת modelPricing חלה
Claude Code מחליט לאילו מודלים שורה חלה לפי המפתח של השורה:
- מזהה של מודל מובנה: מפתח ש-Claude Code עצמו משתמש בו עבור מודל מובנה, בין אם המפתח הוא המזהה של המודל עצמו, כגון
claude-sonnet-4-6, ובין אם מזהה Bedrock, Agent Platform או Foundry שלו. Claude Code מחיל את השורה על כל מזהה snapshot מתוארך ועל כל מזהה ספציפי לספק של המודל הזה. - כל מפתח אחר: מפתח שאינו מזהה של מודל מובנה, כגון כינוי מודל של שער. Claude Code מחיל את השורה על המזהה האחד הזה בלבד. כשמזהה מודל תואם בדיוק לאחד מהמפתחות שלך וגם נופל תחת שורה שהמפתח שלה הוא מזהה של מודל מובנה, Claude Code משתמש בהתאמה המדויקת.
- פרופיל הסקה של יישום Bedrock: אחרי ש-Claude Code פתר את הפרופיל למודל שהוא מנתב אליו, דרך מפת
modelOverridesשלך או חיפושbedrock:GetInferenceProfile, Claude Code מחיל את השורה של המודל הזה על הפרופיל.
#modelSettings
שמור רמת מאמץ עבור כל מודל שאתה משתמש בו. נדרש Claude Code v2.1.251 או מאוחר יותר.
בסשן אינטראקטיבי במכונה שלך, כשאתה שומר low, medium, high או xhigh כברירת המחדל שלך עם /effort או עם מחוון המאמץ של בורר /model, Claude Code כותב את הרמה הזו כאן תחת המודל שאתה משתמש בו, ולכן לעתים רחוקות אתה עורך את המפתח הזה בעצמך. כשאתה בוחר אחת מהרמות האלה ב-בורר המודלים של הרחבת VS Code, Claude Code שומר אותה כאן באותו אופן. רשומת effortLevel מפרטת את הסשנים שבהם /effort חל על הסשן הזה בלבד.
ערוך את המפתח ידנית כדי לשנות או להסיר רמה ששמרת.
ה-effortLevel של מודל כאן מקבל קדימות על פני effortLevel ברמה העליונה באותו קובץ הגדרות. בין קבצים, Claude Code פותר כל מודל בנפרד: קובץ ההגדרות בעל הקדימות הגבוהה ביותר שמגדיר או effortLevel עבור המודל הזה או effortLevel ברמה העליונה ש-חל על המודל הזה הוא שמחליט, ולכן effortLevel בהגדרות מנוהלות גובר על רמה ששמרת בהגדרות משתמש. התאמת רמת מאמץ מפרט מה עוד יכול לעקוף רמה שמורה, כגון --effort בהפעלה.
כדי להגביל את המאמץ של מודל אחד במקום לקבוע את הרמה שלו, הוסף שדה maxEffortLevel לרשומה של המודל הזה. השדה דורש Claude Code v2.1.267 או מאוחר יותר.
- היקף:
כל קובץ - סוג: אובייקט שממפה שם מודל לאובייקט עם כל אחד מהשדות האלה:
effortLevel: אחד מ-"low","medium","high"או"xhigh"maxEffortLevel: רמת המאמץ הגבוהה ביותר שהמודל רשאי לרוץ בהautoCompactWindow: מספר טוקנים מ-100000עד1000000, או"auto"עבור החלון שכוונן עבור המודל./autocompactשומר כאן. עבור המודל הזה, הערך מקבל קדימות על פניautoCompactWindowברמה העליונה באותו קובץ הגדרות. נדרש Claude Code v2.1.288 או מאוחר יותר
- ברירת מחדל: לא מוגדר
Claude Code כותב כל רשומה תחת השם הקנוני של המודל, כגון claude-opus-5-5, ומתאים את הכינוי של המודל הזה, מזהים עם סיומת תאריך, [1m], ומזהים ספציפיים לספק מוכרים לאותה רשומה.
דוגמה זו שומרת את Opus 5.5 ב-high בעוד מודלים אחרים משתמשים ברמות השמורות או ברירות המחדל שלהם:
{
"modelSettings": {
"claude-opus-5-5": {
"effortLevel": "high"
}
}
}הרץ /effort auto כדי לנקות את הרמה השמורה שלך עבור המודל שאתה משתמש בו. Claude Code משאיר את שאר הרשומות וכל effortLevel ברמה העליונה במקומם.
#outputStyle
בחר סגנון פלט לפי שם. סגנון פלט הוא קבוצת הוראות שמורה שמשנה את התפקיד, הטון ופורמט הפלט של קלוד, כגון סגנונות Explanatory ו-Learning המובנים או אחד שכתבת בעצמך.
אם אתה משנה את המפתח הזה במהלך סשן, קלוד משתמש בסגנון החדש החל מההודעה הבאה שלך. לגבי מה שההודעה הזו עולה בשמירת מטמון של הפרומפט, ראה שינוי סגנון פלט. לפני v2.1.251, העריכה חלה רק אחרי שהרצת /clear או התחלת סשן חדש.
- היקף:
כל קובץ - סוג: מחרוזת, השם של סגנון פלט מובנה או מותאם
- ברירת מחדל: לא מוגדר, ולכן Claude Code משתמש בסגנון ברירת המחדל
דוגמה זו בוחרת את סגנון Explanatory המובנה, שמוסיף תובנות לימודיות בין משימות:
{
"outputStyle": "Explanatory"
}#promptCacheTtl
בחרו כמה זמן מטמון ההנחיות מחזיק את השיחה הראשית. המפתח הזה חל על התורות האינטראקטיביות שלכם, על -p ועל תורות Agent SDK, יחד עם העוזרים ש-Claude Code מריץ בתוך השורה איתם. משך החיים של שעה שומר את המטמון חם לאורך הפסקות ארוכות יותר, וה-API מחייב כל כתיבה למטמון בתעריף גבוה יותר מאשר במשך החיים של חמש דקות. נדרש Claude Code בגרסה v2.1.242 או חדשה יותר.
- היקף:
Any file - סוג: מחרוזת, אחת מאלה:
"5m": המטמון נשמר לחמש דקות"1h": המטמון נשמר לשעה
- ברירת מחדל: לא מוגדר, כך שכל בקשה של השיחה הראשית מקבלת את משך החיים המוגדר לה כברירת מחדל
- עקיפות לכל סשן:
FORCE_PROMPT_CACHING_5Mגובר על כל השאר, אחר כךCLAUDE_CODE_PROMPT_CACHE_TTL, אחר כך המפתח הזה, ואחרוןENABLE_PROMPT_CACHING_1H
הדוגמה הזו משאירה את השיחה הראשית על משך החיים של שעה ומשאירה סוכני משנה על חמש דקות:
{
"promptCacheTtl": "1h",
"subagentPromptCacheTtl": "5m"
}לעלות של כל משך חיים, ראו Cache lifetime.
#showThinkingSummaries
ראו סיכומים של חשיבה מורחבת של Claude בסשנים אינטראקטיביים. הגדירו אותו אם אתם רוצים את הסיכומים המלאים כשאתם מרחיבים חשיבה עם Ctrl+O. כשהוא לא מוגדר או false, ה-API של Anthropic מעמעם בלוקי חשיבה ו-Claude Code מציג תצוגה מקופלת.
- היקף:
Any file - סוג: Boolean
true: אתם רואים סיכומי חשיבה מלאים כשאתם מרחיבים חשיבה עםCtrl+Ofalse: ה-API של Anthropic מעמעם בלוקי חשיבה ו-Claude Code מציג תצוגה מקופלת
- ברירת מחדל:
false
{
"showThinkingSummaries": true
}העמעום משנה רק את מה שאתם רואים, לא את מה שהמודל מייצר. כדי להפחית הוצאה על חשיבה, הנמיכו את התקציב או כבו חשיבה במקום זאת.
#subagentPromptCacheTtl
בחרו כמה זמן מטמון ההנחיות מחזיק את הבקשות ש-Claude Code מבצע מחוץ לשיחה הראשית. המפתח הזה חל על סוכני משנה, זרימות עבודה, ועל בקשות הרקע והעזר של Claude Code עצמו, כמו דחיסה וכותרות סשן. משך החיים של שעה שומר את המטמון חם לאורך הפסקות ארוכות יותר, וה-API מחייב כל כתיבה למטמון בתעריף גבוה יותר מאשר במשך החיים של חמש דקות. נדרש Claude Code בגרסה v2.1.242 או חדשה יותר.
- היקף:
Any file - סוג: מחרוזת, אחת מאלה:
"5m": המטמון נשמר לחמש דקות"1h": המטמון נשמר לשעה
- ברירת מחדל: לא מוגדר, כך שכל אחת מהבקשות האלה מקבלת את משך החיים המוגדר לה כברירת מחדל
- עקיפות לכל סשן:
FORCE_PROMPT_CACHING_5Mגובר על כל השאר, אחר כךCLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL, אחר כך המפתח הזה, ואחר כךENABLE_PROMPT_CACHING_1H, שמבקש את משך החיים של שעה בכל בקשה. לגבי המיקום של ערך frontmatter של סוכן משנה עצמו, ראו Choose the TTL yourself
הדוגמה הזו נותנת לסוכני משנה ולשאר הבקשות מחוץ לשיחה הראשית את משך החיים של שעה:
{
"subagentPromptCacheTtl": "1h"
}המפתח הזה מכסה את הבקשות ש-promptCacheTtl לא מכסה, אז הגדירו את שניהם כדי לבחור משך חיים לכל בקשה ש-Claude Code מבצע. להבדל בין מטמון של סוכן משנה למטמון של השיחה הראשית, ראו Subagents and the cache.
#switchModelsOnFlag
בחרו מה קורה כשמסווג בטיחות מסמן בקשה: לעבור למודל הגיבוי ולהמשיך, או לעצור כדי שתוכלו לבחור בין מעבר לעריכת ההנחיה.
- היקף:
Any file. מופיע ב-/configבתור Switch models when a message is flagged, עם האפשרויות Switch automatically ו-Ask each time. - סוג: Boolean
true: Claude Code עובר למודל הגיבוי וממשיךfalse: בסשן אינטראקטיבי Claude Code עוצר כדי שתוכלו לבחור בין מעבר לעריכת ההנחיה. במקום שבו אי אפשר להציג תיבת דו שיח, כמו הרצה עם-p, הבקשה המסומנת מסתיימת כשגיאה
- ברירת מחדל: לא מוגדר. Claude Code עובר אוטומטית, אם כי הוא עשוי לשאול קודם בסשן אינטראקטיבי
{
"switchModelsOnFlag": false
}ראו Ask before switching.
#ultracode
התחילו סשנים עם ultracode מופעל. כשהוא מופעל, Claude מתכנן זרימת עבודה לכל משימה מהותית במקום לחכות שתבקשו. Claude מתכנן זרימות עבודה רק כשזרימות עבודה דינמיות מופעלות עבורכם והמודל שלכם תומך במאמץ xhigh. המפתח לא משנה את רמת המאמץ של הסשן: ultracode רץ בכל רמה שהסשן משתמש בה. Claude Code קורא את המפתח הזה אבל אף פעם לא כותב אותו: /effort ultracode מפעיל את ultracode לסשן הנוכחי בלבד.
- היקף:
Any file - סוג: Boolean
true: סשנים מתחילים עם ultracode מופעל כשזרימות עבודה דינמיות מופעלות עבורכם והמודל שלכם תומך ב-xhighfalse: סשנים מתחילים עם ultracode כבוי
- ברירת מחדל: לא מוגדר, כך ש-ultracode כבוי
- עקיפות לכל סשן:
/effort ultracodeמפעיל את ultracode לסשן אחד בלי המפתח הזה, ו-/effort ultracode offמכבה אותו לסשן אחד כשהמפתח הזה הואtrue. הדגל--effort ultracodeגם מפעיל אותו לסשן אחד, במאמץxhigh
{
"ultracode": true
}רמת המאמץ של הסשן מגיעה מ-effortLevel, מ-modelSettings וממקורות המאמץ האחרים, ותקרת מאמץ כמו maxEffortLevel מנמיכה את הרמה הזו בלי לכבות את ultracode. זה והצורה /effort ultracode off דורשים Claude Code בגרסה v2.1.284 או חדשה יותר. לפני v2.1.284, ultracode: true הריץ את הסשן במאמץ xhigh, ותקרת מאמץ מתחת ל-xhigh השאירה את ultracode כבוי. בקשת בקרה apply_flag_settings של Agent SDK גם מקבלת את המפתח.
#הגדרות הרשאות
החליטו מה Claude יכול לעשות בלי לשאול, את מצב ההרשאה המוגדר כברירת מחדל לסשנים חדשים, ומה המסווג של מצב אוטומטי מאפשר. לתחביר כללים ולמודל ההרשאות, ראו Configure permissions.
#allowManagedPermissionRulesOnly
הפכו את ההגדרות המנוהלות למקור ההגדרות היחיד של כללי הרשאה. Claude Code אז מתעלם מכללי allow, ask ו-deny בקבצי משתמש, פרויקט, מקומי ו---settings, מתעלם מ---allowedTools, מסתיר את אפשרויות האפשר-תמיד בהנחיות הרשאה, ומפסיק לשמור כללים חדשים.
כשהגדרות הורה ממארח מטמיע חלות, Claude Code מתייחס אליהן כחלק מהשכבה המנוהלת. הוא משמיט את כללי ה-allow ואת additionalDirectories שלהן, ושומר את כללי ה-deny וה-ask שלהן חוץ מכללי Read ו-Edit שהתבנית שלהם מתחילה ב-!. מארח לא יכול לחלץ נתיבים מתוך הכללים המנוהלים עם כלל !, בין שהגדרתם את המפתח הזה ובין שלא.
כללי --disallowedTools וכללי ה-deny וה-ask של הסשן הנוכחי עדיין חלים, כולל אחרי ש-Claude Code טוען מחדש הגדרות באמצע הסשן. הם רק מגבילים, כך שהם לא יכולים להרחיב את מה שהכללים המנוהלים מעניקים. לפני v2.1.257, Claude Code השמיט את כללי שורת הפקודה והסשן האלה בטעינה מחדש הראשונה של ההגדרות.
לגבי מה שתבנית ! בכלל --disallowedTools או בכלל סשן יכולה לחלץ, ראו Read and Edit rules.
כשאתם מגדירים את המפתח הזה, Claude Code בגרסה v2.1.282 או חדשה יותר גם מתעלם מ-frontmatter של allowed-tools במיומנויות ובקבצי .claude/commands/ מהמקורות האלה:
- ספריית
.claude/של מאגר - ספריות
~/.claude/skills/ו-~/.claude/commands/שלכם, כולל מיומנויות שמסונכרנות מ-claude.ai - ספריית
--add-dir - תוספים שמוצהרים עם מניפסט
.claude-pluginבתוך~/.claude/skills/או.claude/skills/של הפרויקט - תוספים שנטענים לסשן אחד בלבד, שהמזהים שלהם מסתיימים ב-
@inline, כשכל אלה מתקיימים:- הסשן הוא סשן Code או סשן Cowork, שאינו סשן ענן, שעבורו אפליקציית Claude Desktop עצמה מפעילה את Claude Code
- ההגדרות המנוהלות שלכם מגדירות את המפתח, לא רק הגדרות הורה של מארח מטמיע
- הסשן מריץ Claude Code בגרסה v2.1.305 או חדשה יותר
מיומנויות מהגדרות מנוהלות ומיומנויות ארוזות שומרות את ה-allowed-tools שלהן. תוספי @inline מחוץ לסשני Desktop האלה שומרים את שלהם גם, חוץ מאחד בשם anthropic-skills. ה-disallowed-tools של מיומנות עדיין חל. למה שמפתח רואה כש-Claude Code מתעלם מהשדה, ראו When only managed permission rules apply.
- היקף:
Managed - סוג: Boolean
true: ההגדרות המנוהלות הופכות למקור ההגדרות היחיד של כללי הרשאהfalse: Claude Code מחיל כללי הרשאה מקבצי משתמש, פרויקט, מקומי ו---settingsבנוסף למנוהלים
- ברירת מחדל: לא מוגדר, כך ש-Claude Code מחיל כללי הרשאה מהגדרות משתמש, פרויקט ומקומי ומ-
--settings, בנוסף למנוהלים
{
"allowManagedPermissionRulesOnly": true
}המפתח הזה לא נועל את רשימת ההיתר של שרתי MCP. לשם כך, הגדירו allowManagedMcpServersOnly. ראו Managed-only settings.
#autoMode
הוסיפו כללים משלכם למה שהמסווג של מצב אוטומטי חוסם ומאפשר. השתמשו בו כדי לומר למסווג אילו מאגרים, דליים ודומיינים הארגון שלכם סומך עליהם, כך שהוא מפסיק לחסום פעולות פנימיות שגרתיות. המסווג מגיע עם כללי allow ו-deny מובנים. כללו את המחרוזת המילולית "$defaults" במערך כדי לשמור את הכללים המובנים האלה במיקום הזה ולהוסיף את שלכם סביבם. השמיטו אותה כדי להחליף אותם בשלכם.
- היקף:
User or managed - סוג: אובייקט עם מערכי
environment,allow,soft_denyו-hard_denyשל כללי פרוזה, ועוד ה-BooleanclassifyAllShell - ברירת מחדל: לא מוגדר, כך שהמסווג משתמש רק בכללים המובנים שלו
הדוגמה הזו שומרת את כללי ה-soft_deny המובנים, דרך "$defaults", ומוסיפה עוד אחד שחוסם את terraform apply:
{
"autoMode": {
"soft_deny": ["$defaults", "Never run terraform apply"]
}
}כשיותר מאחד מהקבצים האלה מגדיר את אותו מערך, Claude Code משרשר את הרשומות. לפורמט הכללים ולאופן שבו כל מערך מוחל, ראו Configure auto mode.
#autoMode.classifyAllShell
שלחו כל פקודת Bash ו-PowerShell דרך מסווג המצב האוטומטי בזמן שמצב אוטומטי פעיל. כברירת מחדל, מצב אוטומטי משעה רק כללי allow שיכולים להריץ קוד שרירותי: כללים לכל הכלי וכללי תו כללי כמו Bash(*), וקידומות של מפרש או מעטפת מעטפת כמו Bash(python *). פקודה שכל כלל allow אחר תואם לה, כמו Bash(npm test), מדלגת על המסווג אלא אם היא נושאת דומיינים מותרים לכל פקודה. כשהיא מדלגת, ארגומנט הרסני שהקידומת של הכלל לא צפתה יכול לעבור בלי להיראות. הגדרת המפתח הזה משעה כל כלל allow של מעטפת לסשן כדי שהמסווג יראה כל פקודה. נדרש Claude Code בגרסה v2.1.193 או חדשה יותר.
- היקף:
User or managed. נקרא בכל מקום שבוautoModeנקרא. - סוג: Boolean
true: בזמן שמצב אוטומטי פעיל, Claude Code שולח כל פקודת Bash ו-PowerShell דרך המסווג ומשעה את כללי ה-allow של המעטפת שלכם. מחוץ למצב אוטומטי הכללים עדיין חליםfalse: מצב אוטומטי משעה רק כללי allow שיכולים להריץ קוד שרירותי, כמוBash(*)ו-Bash(python *). פקודה שכל כלל allow אחר תואם לה מדלגת על המסווג אלא אם היא נושאת דומיינים מותרים לכל פקודה, וכל פקודת מעטפת אחרת עוברת דרכו
- ברירת מחדל:
false
{
"autoMode": {
"classifyAllShell": true
}
}ראו Route all shell commands through the classifier.
#disableAutoMode
הסירו את מצב אוטומטי ממחזור Shift+Tab. כל סשן שהיה מתחיל במצב אוטומטי אחרת, בין מ---permission-mode auto, מקובץ הגדרות, או מברירת המחדל המובנית, מתחיל ב-default במקום. מנהלים מגדירים אותו בהגדרות מנוהלות כדי למנוע ממפתחים בארגון שלהם להשתמש במצב אוטומטי.
- היקף:
Any file. הכי שימושי בהגדרות מנוהלות, שבהן משתמשים לא יכולים לעקוף אותו. מתקבל גם תחתpermissionsבתורpermissions.disableAutoMode. - סוג: המחרוזת
"disable" - ברירת מחדל: לא מוגדר
{
"disableAutoMode": "disable"
}#permissions
שלוט באילו כלים Claude יכול להשתמש בלי לשאול, אילו מהם מבקשים אישור, ואילו חסומים. הגדירו גם את מצב ההרשאה המוגדר כברירת מחדל לסשנים חדשים. כל מפתח permissions.* למטה מקונן תחת האובייקט הזה.
- היקף:
Any file - סוג: אובייקט עם
allow,ask,deny,additionalDirectories,blockReadsOutsideWorkingDirectories,blockWritesOutsideWorkingDirectories,defaultMode,disableBypassPermissionsModeו-disableAutoMode - ברירת מחדל: לא מוגדר
הדוגמה הזו מאשרת פקודות npm run בלי לשאול, מבקשת אישור לפני git push, חוסמת קריאות של .env, ומתחילה סשנים ב-acceptEdits:
{
"permissions": {
"allow": ["Bash(npm run *)"],
"ask": ["Bash(git push *)"],
"deny": ["Read(./.env)"],
"defaultMode": "acceptEdits"
}
}שלושת מערכי הכללים חולקים תחביר אחד. ראו Permission rule syntax תחת permissions.allow. לאופן שבו כללי הרשאה מקבצים שונים משתלבים, ראו how permission rules merge across scopes. לאופן שבו מפתחות הגדרות בכלל משתלבים, ראו Settings precedence במדריך ההגדרות.
#useAutoModeDuringPlan
בחרו אם Claude Code משתמש במסווג של מצב אוטומטי כדי לבדוק פקודות מעטפת במצב תכנון. עם ברירת המחדל true, המסווג בודק כל פקודה במהלך התכנון כשמצב אוטומטי זמין ואתם לא רואים בקשה, מלבד הסרות בנתיב קריטי. הגדירו false כדי לקבל בקשת הרשאה לכל פקודה מחוץ לקבוצת הקריאה בלבד המובנית. מופיע ב-/config בתור Use auto mode during plan.
- היקף:
משתמש, מקומי או מנוהל. מאגר לא יכול לכבות את זה בשבילכם.- ערך
falseבכל אחד מהקבצים האלה או ב---settingsמכבה את זה, אלא אם אתם משאירים את קובץ המשתמש או את הקובץ המקומי בחוץ עם אפשרות כמו--setting-sources. התעלמות מקובץ שהושאר בחוץ דורשת Claude Code v2.1.314 או מאוחר יותר
- ערך
- סוג: Boolean
true: כמו ערך לא מוגדר. כשמצב אוטומטי זמין, המסווג בודק פקודות מעטפת במהלך התכנוןfalse: אתם מקבלים בקשת הרשאה לכל פקודה מחוץ לקבוצת הקריאה בלבד המובנית
- ברירת מחדל:
true
settings.json
{
"useAutoModeDuringPlan": false
}#permissions.allow
רשמו את שימושי הכלים ש-Claude Code מאשר בלי לשאול אתכם. בכלל MCP, * יכול להופיע רק בשם הכלי אחרי הקידומת mcp__<server>__, כמו mcp__github__get_*. הוא לא יכול להופיע בשם השרת.
- היקף:
כל קובץ - סוג: מערך של מחרוזות כללי הרשאה
- ברירת מחדל: לא מוגדר
- עקיפות לכל סשן:
--allowedToolsמוסיף כללי allow לסשן אחד, וכלל deny מכל קובץ הגדרות עדיין חוסם כלי שהוא מציין
הדוגמה הזו מאשרת את git diff ומאפשרת ל-Claude Code לקרוא את .zshrc שלכם בלי לשאול:
settings.json
{
"permissions": {
"allow": ["Bash(git diff *)", "Read(~/.zshrc)"]
}
}Claude Code מחיל כללי allow מ-.claude/settings.json של פרויקט רק אחרי שאתם מקבלים את תיבת הדו שיח של אמון בסביבת העבודה עבור התיקייה הזו.
#תחביר כללי הרשאה
כללי הרשאה עוקבים אחרי התבנית Tool או Tool(specifier). Claude Code מעריך קודם כללי deny, אחר כך ask, ואחר כך allow, וההתאמה הראשונה מחליטה בלי קשר לכמה כל כלל ספציפי. ראו את סדר הערכת כללי ההרשאה.
כל שורה מציגה צורת כלל אחת ומה היא מתאימה.
| כלל | מה הוא מתאים |
|---|---|
Bash | כל פקודת Bash |
Bash(npm run *) | פקודות שמתחילות ב-npm run |
Read(./.env) | קריאות של הקובץ .env |
WebFetch(domain:example.com) | בקשות אחזור אל example.com |
לתחביר הכללים המלא, כולל התנהגות של תווי wildcard, תבניות ייעודיות לכלים Read, Edit, WebFetch, MCP ו-Agent, ומגבלות האבטחה של תבניות Bash, ראו תחביר כללי הרשאה.
#permissions.ask
רשמו את שימושי הכלים שמבקשים מכם אישור גם במצב הרשאה שהיה מאשר אותם אחרת, כמו acceptEdits או bypassPermissions. במצב dontAsk Claude Code דוחה שימוש תואם בכלי במקום להציג בקשה.
- היקף:
כל קובץ - סוג: מערך של מחרוזות כללי הרשאה
- ברירת מחדל: לא מוגדר
settings.json
{
"permissions": {
"ask": ["Bash(git push *)"]
}
}#permissions.deny
רשמו את שימושי הכלים ש-Claude Code חוסם. השתמשו בזה לקבצים שמחזיקים מפתחות API, סודות או ערכי סביבה: Claude Code מוציא קבצים תואמים מגילוי קבצים ומתוצאות חיפוש, דוחה קריאות שלהם, וחוסם את הכלים Edit ו-Write בנתיבים התואמים.
כללי deny של Read ושל Edit חלים על כלי הקבצים המובנים של Claude, על פקודות קבצים ש-Claude Code מזהה ב-Bash, כמו cat, head, tail, sed ו-tee, ועל היעדים של הפניות ב-Bash כמו > file ו-< file. הם לא חלים על פקודה שקוראת קבצים בלי לנקוב בשמם, כמו grep -r pattern ., או על תהליכי משנה שרירותיים, ולכן לאכיפה ברמת מערכת ההפעלה הפעילו את ארגז החול.
- היקף:
כל קובץ - סוג: מערך של מחרוזות כללי הרשאה
- ברירת מחדל: לא מוגדר
- עקיפות לכל סשן:
--disallowedToolsמוסיף כללי deny לסשן אחד לצד המפתח הזה
הדוגמה הזו דוחה קריאות של קובצי .env, תיקיית secrets וקובץ אישורים, וחוסמת פקודות curl:
settings.json
{
"permissions": {
"deny": [
"Read(./.env)",
"Read(./.env.*)",
"Read(./secrets/**)",
"Read(./config/credentials.json)",
"Bash(curl *)"
]
}
}שמות כלים מקבלים תבניות glob, כך ש-"*" דוחה כל כלי ו-"mcp__*" דוחה כל כלי MCP. Claude Code מתעלם מכלל deny עבור הכלי EndConversation כל עוד כלי אחר עדיין זמין ל-Claude. כלל deny של Bash מתאים לפקודה כפי ש-Claude כותב אותה, כך ש-Bash(curl *) לא עוצר את /usr/bin/curl או את sh -c 'curl …'. ראו מה כלל Bash לא מתאים. המפתח הזה מחליף את הגדרת ignorePatterns שיצאה משימוש.
#permissions.additionalDirectories
תנו ל-Claude גישת קבצים לתיקיות מחוץ לזו שהתחלתם בה, כתיקיות עבודה נוספות. רוב ההגדרות של .claude/ לא מתגלות מהתיקיות האלה.
- היקף:
כל קובץ, עם מגבלות על גישת הכתיבה של ארגז החול שרשומות פרויקט ומקומיות נותנות - סוג: מערך של נתיבי תיקיות
- ברירת מחדל: לא מוגדר
- עקיפות לכל סשן:
--add-dirו-/add-dirמוסיפים תיקיות לסשן אחד לצד המפתח הזה
settings.json
{
"permissions": {
"additionalDirectories": ["../docs/"]
}
}כמו כללי allow, רשומות ב-.claude/settings.json של פרויקט נכנסות לתוקף רק אחרי שאתם מקבלים את תיבת הדו שיח של אמון בסביבת העבודה עבור התיקייה הזו.
#permissions.blockReadsOutsideWorkingDirectories
גרמו לכלי הקבצים של Claude לסרב לקריאות מחוץ לתיקיות העבודה שלכם בכל מצב הרשאה, כולל bypassPermissions. Claude Code דוחה קריאות Read, Grep, Glob ו-LSP בנתיבים האלה ואומר ל-Claude לבקש מכם להוסיף את התיקייה עם /add-dir. קבצים ש-Claude Code עצמו צריך נשארים קריאים, כמו ה-skills, ה-plugins, ה-rules, ה-agents וה-commands שלכם, וקובץ הזיכרון CLAUDE.md תחת ~/.claude/. נדרש Claude Code v2.1.257 או מאוחר יותר.
Claude Code לא מסרב לפקודות מעטפת באותו אופן:
- פעולות שאף מצב לא מאשר אוטומטית מכסה מתי פקודת מעטפת שקוראת נתיב כזה מבקשת מכם אישור
- פקודות בארגז חול תחת החסימה מכסה מה פקודה בארגז חול יכולה לקרוא
פקודת Bash שמנתח המעטפת לא יכול לעקוב אחריה, כמו פקודה שמחליפה תיקייה יותר מפעם אחת או מריצה תת מעטפת, מבקשת מכם אישור גם במצב אוטומטי ובמצב bypassPermissions. הבקשה מופיעה גם כשהפקודה לא מציינת נתיב מחוץ לתיקיות העבודה. הבקשה הזו לא חלה כשהפקודה רצה בארגז החול וארגז החול אוכף את החסימה.
Claude Code גם כותב כאן true כשאתם בוחרים לחסום קריאות כאלה בבקשה של מצב אוטומטי לפני הקריאה הראשונה מחוץ לתיקיות העבודה.
- היקף:
כל קובץ. ערךtrueבכל קובץ חל, כך שמאגר יכול להפעיל את החסימה עבור עצמו אבל לא יכול לבטל את שלכם. - סוג: Boolean
true: כלי הקבצים של Claude מסרבים לקריאות מחוץ לתיקיות העבודהfalse: כמו ערך לא מוגדר. החסימה עדיין חלה אם קובץ אחר מגדירtrue
- ברירת מחדל: לא מוגדר, כך שקריאות מחוץ לתיקיות העבודה עוקבות אחרי מצב ההרשאה שלכם
settings.json
{
"permissions": {
"blockReadsOutsideWorkingDirectories": true
}
}כדי לבטל את החסימה, הסירו את המפתח מכל קובץ הגדרות שמגדיר אותו, ואז הפעילו מחדש כל סשן שרץ.
תיקיות שאתם מוסיפים עם --add-dir, /add-dir, או additionalDirectories בהגדרות המשתמש או המנוהלות נחשבות לתיקיות עבודה לצורך החסימה. תיקיות שנוספו רק בהגדרות המאגר לא נחשבות: אלה ב-.claude/settings.json, ואלה ב-.claude/settings.local.json אלא אם git מדווח שהקובץ לא במעקב. בתיקייה שאינה מאגר git, או כש-git עוקב אחרי הקובץ, Claude Code מתייחס ל-.claude/settings.local.json כהגדרות מאגר, אז שימו תיקיות שאתם רוצים שיישארו קריאות בהגדרות המשתמש שלכם.
כש-autoMemoryDirectory מגיע מ-.claude/settings.json של הפרויקט, או מ-.claude/settings.local.json שמטופל כמסופק על ידי המאגר, Claude Code לא טוען זיכרון אוטומטי מהתיקייה הזו ולא שומר אליה.
#פקודות בארגז חול תחת החסימה
כשארגז החול פועל, החסימה מכסה גם פקודות בארגז חול. Claude Code שולל מהן גישת קריאה לתיקיית הבית שלכם ולשורשים האחרים שמחזיקים קבצי משתמש: /Users, /home, /root, /Volumes, /mnt, /media, /run/media ו-/srv. אחר כך הוא פותח מחדש את תיקיות העבודה, עצי עבודה ש-Claude Code יוצר בסשן, את תיקיית הקבצים הזמניים של הסשן, ואת החלקים של ~/.claude שפקודות צריכות, כמו skills ו-plugins. כל עוד החסימה בתוקף, רשומות allowRead ו-allowWrite מהגדרות המאגר לא נחשבות.
כשתיקיית העבודה של הסשן היא עץ עבודה מקושר של git, כולל אחד ש-Claude Code נכנס אליו באמצע הסשן, תיקיית .git המשותפת של המאגר נשארת קריאה וניתנת לכתיבה לפקודות בארגז חול, כך ש-git ממשיך לעבוד שם.
במקרים האלה החסימה לא מגיעה לפקודות בארגז חול, בעוד כלי הקבצים של Claude ממשיכים לאכוף אותה:
- בידוד מערכת הקבצים כבוי דרך
sandbox.filesystem.disabled allowManagedReadPathsOnlyמוגדר- הנתיב של התיקייה שבה התחלתם את Claude Code מכיל תו glob כמו
*,?או[
תחת החסימה, Claude Code פותח מחדש את קובצי הגדרות git הגלובליים שלכם לפקודות בארגז חול כדי ש-git ישמור על הזהות וההגדרות שלכם:
~/.gitconfig- הקבצים
config,ignoreו-attributesתחת$XDG_CONFIG_HOME/git, שברירת המחדל שלו היא~/.config/git - קבצים שהגדרות git הגלובליות שלכם מציינות דרך
[include],[includeIf],core.excludesFileאוcore.attributesFile
Claude Code שופט כל קובץ בנפרד. כשקובץ נמצא במקום שבו פקודה בארגז חול יכולה לכתוב, ישירות או דרך symlink, Claude Code לא פותח מחדש את הקבצים שהוא מציין.
ב-Linux וב-WSL2, קובץ הגדרות שהוא symlink יכול להישאר לא קריא בנתיב שלו עצמו, ואז git רץ בלעדיו. ~/.git-credentials ו-$XDG_CONFIG_HOME/git/credentials נשארים חסומים.
אם קובץ שנפתח מחדש מחזיק סוד, כמו אסימון http.extraHeader, הוסיפו את הנתיב שלו ל-sandbox.filesystem.denyRead. רשומת denyRead שמכסה קובץ תמיד גוברת על הפתיחה מחדש הזו.
#permissions.blockWritesOutsideWorkingDirectories
גרמו לכלים Write, Edit ו-NotebookEdit לסרב לנתיבים מחוץ לתיקיות העבודה שלכם בכל מצב הרשאה, כולל bypassPermissions, מלבד חלק מהקבצים של Claude Code עצמו. המפתח לא מגביל פקודות מעטפת, כלי MCP, או את התוכניות ש-hooks מריצים. כדי להגביל לאן פקודות מעטפת כותבות, הפעילו ארגז חול. נדרש Claude Code v2.1.314 או מאוחר יותר.
אחרי שהמפתח פועל, Claude Code גם מסיר את הכלים EnterWorktree ו-ExitWorktree או מסרב לקריאות אליהם. כדי להמשיך לעבוד בעצי עבודה, עקבו אחרי ל-Claude אין כלי EnterWorktree.
- היקף:
כל קובץ. ערךtrueבכל קובץ שהסשן טוען חל, כך שמאגר יכול להפעיל את החסימה עבור עצמו אבל לא יכול לבטל את שלכם. בסשן ענן, ייתכן ש-Claude Code לא יחיל את המפתח, כי כלי הקבצים רצים במכולה שהיא עצמה הגבול. - סוג: Boolean
true: מפעיל את החסימהfalse: כמו ערך לא מוגדר. החסימה עדיין חלה אם קובץ אחר מגדירtrue
- ברירת מחדל: לא מוגדר, כך שכתיבות מחוץ לתיקיות העבודה עוקבות אחרי מצב ההרשאה שלכם. החסימה גם פועלת כל עוד Claude Code לא יכול לקרוא את אובייקט
permissionsבהגדרות המנוהלות שלכם.
settings.json
{
"permissions": {
"blockWritesOutsideWorkingDirectories": true
}
}כדי לבדוק את החסימה, בקשו מ-Claude להשתמש בכלי Write כדי ליצור קובץ מחוץ לתיקיות העבודה שלכם, כמו ~/block-test.txt אם תיקיית הבית שלכם אינה אחת מהן. Claude Code מסרב לקריאה, והסירוב אומר שההגדרה חוסמת כתיבות מחוץ לתיקיות העבודה.
כדי לבטל את החסימה, הסירו את המפתח מכל קובץ הגדרות שמגדיר אותו, ואז הפעילו מחדש את Claude Code.
#למה חסימת הכתיבה מסרבת ומה נשאר ניתן לכתיבה
חלק מהקבצים של Claude Code עצמו נשארים ניתנים לכתיבה, כמו קובצי תכנון, הלוח הטיוטה, תיקיית tmp של סשן רקע, וקבצי .md בזיכרון האוטומטי של הפרויקט הזה.
יחד עם הקבצים שלכם מחוץ לתיקיות העבודה, החסימה מסרבת לכתיבות אל:
- קובצי הגדרות של Claude Code: Claude Code מסרב לכתיבות האלה גם בתוך תיקיות העבודה, כי קובץ הגדרות יכול לבטל את החסימה. ערכו קובצי הגדרות בעצמכם.
- תיקייה שרק הגדרות המאגר מוסיפות: תיקייה ש-
additionalDirectoriesמציינת רק ב-.claude/settings.json, או ב-.claude/settings.local.jsonאלא אם git מדווח שהקובץ לא במעקב - עץ עבודה של תת סוכן: עריכות קבצים של תת סוכן עם
isolation: worktreeנדחות כשעץ העבודה שלו נמצא מחוץ לתיקיות העבודה - זיכרון אוטומטי בתיקייה שהמאגר בחר: תיקייה ש-
autoMemoryDirectoryמציינת בהגדרות המאגר
קובצי הגדרות נשארים בסירוב, בכל מה שתוסיפו. כדי לאפשר כתיבה בכל אחד מהמקרים האחרים, הוסיפו תיקיית עבודה. /add-dir צריך תיקייה שקיימת, אז ציינו את התיקייה .claude/worktrees בשורש המאגר עבור עצי עבודה של תתי סוכנים.
#לאפשר לתיקייה אחת לעבור את חסימת הקריאה או הכתיבה
כדי לאפשר ל-Claude להגיע לתיקייה אחת מחוץ לפרויקט בזמן ש-blockReadsOutsideWorkingDirectories או blockWritesOutsideWorkingDirectories הוא true, הוסיפו אותה כתיקיית עבודה. הריצו /add-dir <directory> בסשן, העבירו --add-dir <directory> כשאתם מתחילים את Claude Code, או ציינו אותה תחת additionalDirectories בהגדרות המשתמש או המנוהלות שלכם. אף כלל allow לא מעביר את כלי הקבצים של Claude דרך אף אחת משתי החסימות.
#permissions.defaultMode
מגדיר את מצב ההרשאות כברירת מחדל להפעלות חדשות. כשמשאירים אותו לא מוגדר, חלה ברירת המחדל המובנית של המשטח שלך.
- Scope:
Any file.autoו-bypassPermissionsלא נכנסים לתוקף מהגדרות פרויקט או מקומיות, ולכן יש להגדיר אותם ב-~/.claude/settings.json. לפני v2.1.257,bypassPermissionsנכנס לתוקף מכל קובץ. לשיחות שהרחבת VS Code מתחילה, Claude Code קורא רק ערכי user, managed ו---settings. - Type: מחרוזת, אחת מאלה:
"default": Claude Code מריץ רק קריאות בלי לשאול"acceptEdits": Claude Code מריץ גם עריכות קבצים ופקודות מערכת קבצים נפוצות כמוmkdirו-mvבלי לשאול"plan": Claude Code קורא ומתכנן אבל חוסם עריכות עד שאתה מאשר תוכנית"auto": Claude Code רץ בלי בקשות שגרתיות. לפני פעולות כמו פקודות מעטפת ובקשות רשת, מסווג ברקע בודק שהן תואמות לבקשה שלך"dontAsk": Claude Code דוחה אוטומטית כל קריאה שבלעדיו הייתה מבקשת אישור, אם כי mod שהתקנת עדיין יכול לאשר חלק מהקריאות האלה. קריאות קבצים בתוך ספריות העבודה שלך, פעולות אחרות שלא צריכות אישור, וכלים שאושרו מראש עדיין רצים, חוץ מקריאות מנתיבי רשת"bypassPermissions": Claude Code מריץ הכול בלי לשאול"manual": כינוי ל-"default"
- Default: לא מוגדר
- Per-session overrides:
--permission-mode, והמקבילה שלו--dangerously-skip-permissionsעבורbypassPermissions, גוברים על המפתח הזה להפעלה אחת
{
"permissions": {
"defaultMode": "acceptEdits"
}
}כללי הרשאות נערמים מעל כל מצב: כללי deny חוסמים בכל מצב, כולל bypassPermissions. ראה Permission modes. בהפעלות ענן, Claude Code מכבד מהמפתח הזה רק את acceptEdits, plan, default ו-auto. לשיחות שהרחבת VS Code מתחילה, ראה איזו הגדרה ההרחבה קוראת עבור מצב ההרשאות ההתחלתי.
#permissions.disableBypassPermissionsMode
מונע מכל אחד להיכנס למצב bypassPermissions. Claude Code דוחה אז את הדגל --dangerously-skip-permissions, ומתעלם מ-permissionMode: bypassPermissions של הגדרת סוכן, כך שהסוכן המשנה רץ עם מצב ההרשאות של הפעלת האב.
- Scope:
Any file. בדרך כלל מוגדר בהגדרות מנוהלות כדי לאכוף מדיניות ארגונית. - Type: המחרוזת
"disable" - Default: לא מוגדר
- Per-session overrides: המפתח הזה גובר על
--dangerously-skip-permissions, ש-Claude Code דוחה כל עוד המפתח מוגדר
{
"permissions": {
"disableBypassPermissionsMode": "disable"
}
}לפני v2.1.223, Claude Code החיל את מצב ההרשאות מה-frontmatter גם כש-bypass היה מושבת.
#skipAutoPermissionPrompt
מדלג על ההודעה החד-פעמית שמתארת מצב auto, ש-Claude Code מציג כשאתה נכנס בעצמך למצב auto בפעם הראשונה, למשל דרך ההגדרות שלך או בורר המצב, ולא כשברירת המחדל המובנית מתחילה הפעלה בו. Claude Code מציג את ההודעה פעם אחת ואז רושם שהיא הוצגה, ולכן המפתח הזה חשוב רק במקום שבו ההודעה עוד לא הופיעה.
- Scope:
User or managed. מאגר לא יכול להגדיר אותו עבורך. - Type: Boolean
true: Claude Code מדלג על ההודעהfalse: כמו לא מוגדר. ההודעה מופיעה פעם אחת אלא אם קובץ אחר מאלה מגדירtrue
- Default: לא מוגדר, ולכן ההודעה מופיעה פעם אחת
{
"skipAutoPermissionPrompt": true
}#skipDangerousModePermissionPrompt
מדלג על תיבת האישור ש-Claude Code מציג לפני שהפעלה נכנסת למצב bypassPermissions, בין אם מ---dangerously-skip-permissions ובין אם מ-defaultMode: "bypassPermissions". Claude Code כותב כאן true בהגדרות המשתמש שלך כשאתה מקבל את התיבה פעם אחת.
- Scope:
User, local, or managed. מאגר לא מהימן לא יכול לדלג על התיבה עבורך. - Type: Boolean
true: Claude Code מדלג על תיבת האישור לפני שהפעלה נכנסת למצבbypassPermissionsfalse: כמו לא מוגדר. התיבה מופיעה אלא אם קובץ אחר מאלה מגדירtrue
- Default: לא מוגדר, ולכן התיבה מופיעה
{
"skipDangerousModePermissionPrompt": true
}#הגדרות Sandbox
מבודד את הפקודות ש-Claude מריץ ממערכת הקבצים שלך, מהרשת שלך ומהאישורים שלך. לאופן פעולת ה-sandbox ולדרישות הפלטפורמה, ראה Sandboxing.
#sandbox
מבודד את פקודות Bash ש-Claude מריץ ממערכת הקבצים ומהרשת באמצעות sandboxing. מפעילים את ה-sandbox עם enabled, ואז מצמצמים או מרחיבים את מה שפקודות בתוך ה-sandbox יכולות לגעת בו באמצעות אובייקטי המשנה filesystem, network ו-credentials. ה-sandbox רץ ב-macOS, ב-Linux וב-WSL2.
- Scope:
Any file - Type: אובייקט עם
enabled,failIfUnavailable,autoAllowBashIfSandboxed,excludedCommands,allowUnsandboxedCommands,enableWeakerNestedSandbox,enableWeakerNetworkIsolation,allowAppleEvents,allowNestedUserNamespaces,bwrapPath,socatPath,ignoreViolationsו-ripgrep, ובנוסף האובייקטיםfilesystem,networkו-credentials - Default: לא מוגדר, ולכן Claude Code מריץ פקודות בלי sandbox
זה מפעיל את ה-sandbox, מדלג על בקשות הרשאה לפקודות בתוך ה-sandbox, מריץ את docker מחוץ ל-sandbox, פותח שני נתיבי כתיבה נוספים, מסתיר את קובץ האישורים של AWS, ומאשר מראש את GitHub ואת npm:
{
"sandbox": {
"enabled": true,
"autoAllowBashIfSandboxed": true,
"excludedCommands": ["docker *"],
"filesystem": {
"allowWrite": ["/tmp/build", "~/.kube"],
"denyRead": ["~/.aws/credentials"]
},
"network": {
"allowedDomains": ["github.com", "*.npmjs.org"]
}
}
}כשהגדרות מנוהלות מגדירות מפתח Boolean כמו enabled או failIfUnavailable, הערך הזה גובר על כל מה שמפתח מגדיר. Claude Code ממזג מפתחות מערך על פני היקפי ההגדרות שההפעלה טוענת, כך שמפתח יכול להוסיף רשומות. ראה Keep developers from widening the policy לנעילות שמיועדות רק להגדרות מנוהלות. כדי לחייב sandbox לארגון, ראה Enforce sandboxing with managed settings.
#sandbox.enabled
מפעיל sandboxing לפקודות Bash. כשבוחרים מצב בלוח /sandbox, Claude Code כותב את המפתח הזה ל-.claude/settings.local.json של הפרויקט הנוכחי. הגדר אותו ב-~/.claude/settings.json כדי להחיל sandbox על כל פרויקט.
- Scope:
Any file, עם מגבלות על הגדרות פרויקט ומקומיות - Type: Boolean
true: Claude Code מריץ פקודות Bash בתוך sandboxfalse: פקודות Bash רצות בלי sandbox
- Default:
false
{
"sandbox": {
"enabled": true
}
}ב-Linux וב-WSL2 ה-sandbox צריך את bubblewrap ואת socat. ראה Set up Linux and WSL2. כשה-sandbox לא יכול להתחיל, Claude Code מריץ פקודות בלי sandbox אלא אם מגדירים גם את failIfUnavailable.
#sandbox.failIfUnavailable
גורם ל-Claude Code לצאת עם שגיאה בהפעלה כש-sandbox.enabled הוא true אבל ה-sandbox לא יכול להתחיל כי הפלטפורמה לא תומכת בו או כי בדיקת התלות נכשלת. בלי המפתח הזה, Claude Code מריץ פקודות בלי sandbox. פריסות מנוהלות שדורשות sandbox כשער אבטחה יכולות להשתמש בהגדרה הזאת.
בפלטפורמה שה-sandbox לא תומך בה, Claude Code לא מתחיל כשהמפתח הזה דלוק. ראה Enforce sandboxing with managed settings.
- Scope:
Any file, עם מגבלות על הגדרות פרויקט ומקומיות - Type: Boolean
true: Claude Code יוצא עם שגיאה בהפעלה כש-sandbox.enabledהואtrueאבל ה-sandbox לא יכול להתחיל. אם ה-sandbox עובר את הבדיקה הזאת ואחר כך נכשל באתחול, ההפעלה ממשיכה לרוץ ו-Claude Code מסרב לכל פקודה בתוך sandboxfalse: Claude Code מריץ פקודות בלי sandbox כשה-sandbox לא יכול להתחיל
- Default:
false
זה מפעיל את ה-sandbox למכונות מנוהלות ומגדיר את failIfUnavailable ל-true:
{
"sandbox": {
"enabled": true,
"failIfUnavailable": true
}
}ראה Enforce sandboxing with managed settings.
#sandbox.autoAllowBashIfSandboxed
מאפשר ל-Claude Code להריץ פקודות Bash בתוך sandbox בלי בקשת הרשאה. פקודות שלא יכולות לרוץ בתוך ה-sandbox עדיין עוברות את זרימת ההרשאות הרגילה, וכללי deny וכללי ask שמוגבלים לתוכן כמו Bash(git push *) עדיין חלים. כלל ask שהוא רק Bash מדולג לפקודות בתוך sandbox. הגדר אותו ל-false כדי לשלוח גם פקודות בתוך sandbox דרך זרימת ההרשאות הרגילה, מה שלשונית Mode של /sandbox קוראת לו מצב הרשאות רגיל.
- Scope:
Any file - Type: Boolean
true: Claude Code מריץ פקודות Bash בתוך sandbox בלי בקשת הרשאה, חוץ מהמקרים שמצב Auto-allow מתאר.CLAUDE_CODE_SUBPROCESS_ENV_SCRUBמכבה את auto-allowfalse: פקודות בתוך sandbox עוברות את זרימת ההרשאות הרגילה, כך שכללי ה-allow ומצב ההרשאות שלך מחליטים. לשונית Mode של/sandboxקוראת לזה מצב הרשאות רגיל
- Default:
true
זה משאיר את ה-sandbox דלוק ושולח פקודות בתוך sandbox דרך זרימת ההרשאות הרגילה:
{
"sandbox": {
"enabled": true,
"autoAllowBashIfSandboxed": false
}
}ראה Auto-allow mode על מה שמצב auto-allow עדיין מבקש עליו ועל ההתנהגות שלו במצב plan.
#sandbox.excludedCommands
מציין פקודות ש-Claude Code מריץ מחוץ ל-sandbox, כמו כלים שלא עובדים תחתיו. כל רשומה משתמשת באותו תחביר כמו התוכן של כלל הרשאה מסוג Bash(...): פקודה מדויקת, קידומת כמו docker *, או תבנית תו כללי. תבנית בלי תו כללי היא התאמה מדויקת, ולכן docker תואם רק ל-docker בלי ארגומנטים.
הרשומות שלך מוציאות קריאת Bash מה-sandbox רק כשהן מכסות כל פקודה בתוכה, וצורות קריאה מסוימות נשארות בתוך sandbox גם אז. רשומת docker * לבדה לא מוציאה את npm ci && docker build . מה-sandbox.
- Scope:
Any file, עם מגבלות על הגדרות פרויקט ומקומיות - Type: מערך של תבניות פקודה
- Default: לא מוגדר, ולכן אף פקודה לא מוחרגת
{
"sandbox": {
"excludedCommands": ["docker *"]
}
}Claude Code משאיר קריאת Bash בתוך sandbox כשיש לה אחת מהצורות האלה, בין היתר:
- פקודה שמתחילה ב-
sudo, ב-evalאו ב-xargs cd,pushdאוpopd, בכל מקום שהם מופיעים בקריאה- החלפת פקודה, subshell, או בלוק זרימת בקרה כמו
ifאוfor - הפניה, כמו
docker build . > build.logאו heredoc מסוג<<EOF, חוץ מהפניה שרק משכפלת מתאר קובץ, כמו ש-2>&1עושה - שם פקודה שמגיע ממשתנה
git clone,git init,git worktree add,git worktree moveאוgit bundle createעם ארגומנט נתיב שהוא מוחלט, מתחיל ב-~, או מכיל מקטע..
לדוגמה, cd build && docker compose up נשאר בתוך sandbox תחת רשומת docker *, והוספת רשומת cd לא משנה את זה. תחת רשומת git *, git clone <url> vendor/lib רץ מחוץ ל-sandbox, אבל git clone <url> ~/tools נשאר בתוך sandbox. clone כותב עץ שלם של קבצים, אולי גם קבצים ברי הרצה, בכל מקום שנתיב היעד שלו מצביע אליו.
פקודות מוחרגות עדיין עוברות את זרימת ההרשאות הרגילה. החרגה היא נוחות, לא גבול אבטחה: כשכלי צריך רק לכתוב למקום מסוים, filesystem.allowWrite משאיר אותו בתוך sandbox.
רשומות מהיקפי ההגדרות שההפעלה טוענת מתאחדות לרשימה אחת, אלא אם ה-sandbox הוא admin-required. כל עוד הוא כזה, Claude Code מתעלם מרשומות ב-.claude/settings.json וב-.claude/settings.local.json, כך שמאגר ששוכפל לא יכול להוציא פקודות מה-sandbox. רשומות בהגדרות מנוהלות, ב---settings וב-~/.claude/settings.json שלך עדיין חלות, ואין נעילה שמיועדת רק להגדרות מנוהלות שמכסה את הרשימה הזאת.
#sandbox.allowUnsandboxedCommands
מאפשר ל-Claude לנסות שוב פקודה מחוץ ל-sandbox עם הפרמטר dangerouslyDisableSandbox אחרי שה-sandbox חוסם אותה. כשהערך הוא false, Claude Code מתעלם מהפרמטר הזה. כל עוד ה-sandbox רץ, הפקודות ש-Claude מריץ נשארות אז בתוך sandbox אלא אם הן תואמות לרשומת excludedCommands. לשונית Overrides של /sandbox מציגה את המצב הזה כ-Strict sandbox mode. ערך false בהגדרות מנוהלות מפעיל מצב sandbox קפדני למפתחים שהוא מכסה.
- Scope:
Any file, עם מגבלה על הגדרות פרויקט ומקומיות - Type: Boolean
true: Claude יכול לנסות שוב פקודה מחוץ ל-sandbox עם הפרמטרdangerouslyDisableSandboxאחרי שה-sandbox חוסם אותהfalse: Claude Code מתעלם מהפרמטר הזה, ולכן כל עוד ה-sandbox רץ, הפקודות ש-Claude מריץ נשארות בתוך sandbox אלא אם הן תואמות לרשומתexcludedCommands
- Default:
true
זה אוכף מצב sandbox קפדני לכל מי שההגדרות המנוהלות מכסות:
{
"sandbox": {
"enabled": true,
"allowUnsandboxedCommands": false
}
}ערך false מהגדרות מנוהלות או מ---settings גם הופך את ה-sandbox ל-admin-required. ערך false בהגדרות המשתמש שלך עומד מול true של פרויקט אבל לא הופך את ה-sandbox ל-admin-required. עמידה מול ערך של פרויקט דורשת Claude Code בגרסה v2.1.285 או חדשה יותר.
מי מאשר ניסיון חוזר מחוץ ל-sandbox תלוי במצב ההרשאות ובכללי ה-allow שלך. ראה The unsandboxed retry escape hatch.
כדי לראות מתי פקודות שאתה מקליד בעצמך בשורת מצב המעטפת עם הקידומת ! רצות בתוך sandbox, ראה strict sandbox mode.
#sandbox.filesystem
שולט בנתיבים שפקודות בארגז החול יכולות לקרוא ולכתוב. כברירת מחדל הן יכולות לכתוב לספריית העבודה, לספריית הזמני של המשתמש, ולספריות שמוסיפים עם --add-dir, /add-dir, או permissions.additionalDirectories, ויכולות לקרוא את שאר מערכת הקבצים, כולל קבצי אישורים. מרחיבים או מצמצמים את זה עם ארבע רשימות הנתיבים, או מכבים את שכבת מערכת הקבצים עם disabled. ראו בידוד מערכת קבצים לגבולות ברירת המחדל.
- היקף:
כל קובץ - סוג: אובייקט עם המערכים
allowWrite,denyWrite,denyReadו-allowRead, ועם ערכי Boolean בשםallowManagedReadPathsOnlyו-disabled - ברירת מחדל: לא מוגדר, ולכן חלים גבולות הקריאה והכתיבה של ברירת המחדל
זה מאפשר לפקודות בארגז החול לכתוב לספריית בנייה ול-kubeconfig שלכם, ומסתיר את קובץ האישורים של AWS:
{
"sandbox": {
"filesystem": {
"allowWrite": ["/tmp/build", "~/.kube"],
"denyRead": ["~/.aws/credentials"]
}
}
}Claude Code אוכף את הרשימות האלה בגבול ארגז החול של מערכת ההפעלה, ולכן הן חלות על כל תהליך משנה שפקודה בארגז החול מפעילה, כגון kubectl, terraform, או npm. Claude Code מוסיף את כללי ההרשאה שלכם לאותן רשימות: כללי allow ו-deny של Edit אל allowWrite ו-denyWrite, כללי deny של Read אל denyRead, וכללי allow ו-deny של WebFetch(domain:...) אל רשימות הדומיינים של network.
אלא אם חלה נעילה, Claude Code ממזג את הרשימות האלה על פני קובצי ההגדרות שהסשן טוען. allowManagedReadPathsOnly מגביל את allowRead לרשומות מהגדרות מנוהלות, ו-allowManagedDomainsOnly עושה את אותו הדבר לדומיינים מותרים. נעילות מאגר משמיטות רשומות מקובצי ההגדרות של מאגר.
הגדרת ארגז חול מכסה מקורות שמוציאים עם --setting-sources. כשעורכים רשימה במהלך סשן, Claude Code מחיל את השינוי על הסשן הרץ.
#קידומות נתיב בארגז החול
נתיבים ב-allowWrite, denyWrite, denyRead, allowRead, ו-credentials.files נפתרים לפי הקידומת שלהם:
| קידומת | משמעות | דוגמה |
|---|---|---|
/ | נתיב מוחלט משורש מערכת הקבצים | /tmp/build נשאר /tmp/build |
~/ | יחסי לספריית הבית | ~/.kube הופך ל-$HOME/.kube |
./ או בלי קידומת | יחסי לשורש הפרויקט בהגדרות פרויקט, או ל-~/.claude בהגדרות משתמש | ./output ב-.claude/settings.json נפתר אל <project-root>/output |
קידומת //path לנתיבים מוחלטים גם עובדת. אם משתמשים בלוכסן יחיד /path ומצפים לרזולוציה יחסית לפרויקט, עוברים ל-./path. התחביר הזה שונה מכללי הרשאה של Read ו-Edit, שמשתמשים ב-//path למוחלט וב-/path ליחסי לפרויקט: נתיבי מערכת הקבצים של ארגז החול משתמשים במוסכמות רגילות, ולכן /tmp/build הוא נתיב מוחלט.
Claude Code מסיר לוכסן סופי מנתיב ספרייה, כך ש-~/.aws ו-~/.aws/ תואמים לאותה ספרייה. לפני v2.1.224, Claude Code העביר את הלוכסן הסופי לארגז החול, ו-Claude עדיין יכול היה לקרוא או לכתוב נתיבים מתחת לרשומת denyRead או denyWrite שנכתבה עם לוכסן כזה.
#איפה תווי הכללה עובדים בנתיבי ארגז החול
תווי ההכללה *, ?, ו-** עובדים בכל ארבע רשימות הנתיבים של sandbox.filesystem ב-macOS, ובפחות מקומות ב-Linux וב-WSL2:
רשימת sandbox.filesystem | מה עובד ב-Linux וב-WSL2 | דוגמה שלא עובדת ב-Linux וב-WSL2 | מה לכתוב במקום |
|---|---|---|---|
denyRead, allowRead | /** סופי עובד, ולכן ~/build/** מכסה את אותה ספרייה כמו ~/build. כל תו הכללה אחר עובד רק אחרי שם הספרייה הראשונה של הנתיב המלא של הרשומה. | /**/*.pem ב-denyRead לא מכסה כלום, ולכן הוא לא חוסם קריאות | /srv/**/*.pem, עם רשומה אחת לכל ספרייה ברמה העליונה |
allowWrite, denyWrite | רק /** סופי עובד, ולכן ~/build/** מכסה את אותה ספרייה כמו ~/build | ./src/* מכסה רק קובץ או ספרייה בתוך src ששמם עצמו הוא *, וכלום כשאין כזה | ./src, שמכסה את הכל מתחת ל-src, או רשומה אחת לכל נתיב |
ב-~/keys/*.pem, תו ההכללה בא אחרי שם הספרייה הראשונה, שהוא home עבור ספריית בית /home/alice:
~/keys/*.pem הרשומה
/home/alice/keys/*.pem הנתיב המלא שלה
^^^^ שם הספרייה הראשונה, homeב-Linux וב-WSL2, לשונית Config של /sandbox בסשן מזהירה על כללי הרשאת Edit שמכילים תו הכללה שאינו /** סופי. תווי ההכללה האלה לא עובדים לפקודות בארגז החול. הוסיפו כל נתיב שהכלל אמור לכסות, או את הספרייה שמחזיקה אותם, אל allowWrite עבור כלל allow או אל denyWrite עבור כלל deny.
#שמות ספריות עם סוגריים מרובעים, מסולסלים או עגולים
כדי לאפשר או לחסום ספרייה ששמה מכיל סוגריים מרובעים, כתבו את השם כפי שהוא, כגון ./app/[slug]. ברשומה הזו, [slug] הוא השם האמיתי של הספרייה, כולל הסוגריים:
app/
└── [slug]/
└── page.tsxהרשומה הזו מכסה את הכל מתחת לספרייה, ולכן השמיטו /** סופי. ב-macOS וב-Linux וב-WSL2, הספרייה app/[slug] חייבת להתקיים כשהפקודה בארגז החול מתחילה.
- סוגריים מרובעים כגון
[slug]: בכל רשימה ב-macOS, וב-denyReadוב-allowReadב-Linux וב-WSL2, הסוגריים ב-./app/[slug]הם גם תבנית. הרשומה אז תואמת גם כל נתיב מתחת ל-appששמו תו אחד מתוךslug, כגוןapp/sאוapp/g. עם הרשומה הזו ב-allowRead, או ב-allowWriteב-macOS, פקודות בארגז החול יכולות להגיע גם לנתיבים האלה. שנו את השם של כל נתיב שהן לא אמורות להגיע אליו. - סוגריים מרובעים כגון
[user-id]או[post-id], שבהם התו משמאל למקף ממוין אחרי התו מימינו:./app/[user-id]מכסה רק את הספרייה עם בדיוק השם הזה, בכל רשימה בכל פלטפורמה. לפני v2.1.304, פקודות בארגז החול ב-Linux וב-WSL2 נכשלו בהפעלה בזמן ש-denyReadאוallowReadהחזיקו רשומה כזו. - סוגריים מסולסלים וסוגריים עגולים: אלה תווים רגילים, ולכן
~/data/{keys,tokens}מכסה ספרייה אחת בשם{keys,tokens}, לא שתי חלופות. כדי לכסות את~/data/keysואת~/data/tokens, הוסיפו כל אחת כרשומה משלה.
#sandbox.filesystem.allowWrite
מוסיף נתיבים שפקודות בארגז החול יכולות לכתוב אליהם, מעבר לספריית העבודה, לספריית הזמני של המשתמש, ולספריות שהוספתם עם --add-dir, /add-dir, או permissions.additionalDirectories. השתמשו בזה כשתהליך משנה כגון kubectl או כלי בנייה צריך לכתוב מחוץ לפרויקט.
- היקף:
כל קובץ, עם מגבלות על הגדרות פרויקט ומקומיות - סוג: מערך של מחרוזות נתיב, לפי קידומות הנתיב של ארגז החול
- ברירת מחדל: לא מוגדר, ולכן פקודות בארגז החול יכולות לכתוב לספריית העבודה, לספריית הזמני של המשתמש, לספריות שהוספתם עם
--add-dirאו/add-dir, ולספריות ב-permissions.additionalDirectories
זה מאפשר לבנייה לכתוב מתחת ל-/tmp/build ומאפשר ל-kubectl לעדכן את ה-kubeconfig שלכם:
{
"sandbox": {
"filesystem": {
"allowWrite": ["/tmp/build", "~/.kube"]
}
}
}Claude Code ממזג רשומות allowWrite ואת הנתיבים מכללי הרשאת allow של Edit(...) על פני היקפי ההגדרות שהסשן טוען, ומשמיט את אלה מהגדרות המאגר בזמן ש-permissions.blockReadsOutsideWorkingDirectories פועל. נעילות מאגר יכולות להשמיט גם את רשומות המאגר. רשומת allowWrite לא יכולה להסיר נתיב מוגן.
#sandbox.filesystem.denyWrite
חוסם פקודות בארגז החול מכתיבה לנתיבים מסוימים, כולל נתיבים בתוך ספרייה שאחרת ניתנת לכתיבה.
- היקף:
כל קובץ - סוג: מערך של מחרוזות נתיב, לפי קידומות הנתיב של ארגז החול
- ברירת מחדל: לא מוגדר
זה מונע מפקודות בארגז החול לשנות תצורת מערכת או להתקין קבצים בינריים:
{
"sandbox": {
"filesystem": {
"denyWrite": ["/etc", "/usr/local/bin"]
}
}
}Claude Code ממזג רשומות על פני כל היקף הגדרות שהסשן טוען, ומוסיף את הנתיבים מכללי הרשאת deny של Edit(...).
#sandbox.filesystem.denyRead
חוסם פקודות בארגז החול מקריאה של נתיבים מסוימים, כגון קבצי אישורים שמדיניות הקריאה של ברירת המחדל הייתה חושפת אחרת. כדי להגן על קובץ אישורים ולהשאיר אותו שמיש דרך פרוקסי ארגז החול, ראו sandbox.credentials במקום.
- היקף:
כל קובץ - סוג: מערך של מחרוזות נתיב, לפי קידומות הנתיב של ארגז החול
- ברירת מחדל: לא מוגדר, ולכן פקודות בארגז החול שומרות על גישת הקריאה של ברירת המחדל, שכוללת קבצי אישורים כגון
~/.aws/credentials
{
"sandbox": {
"filesystem": {
"denyRead": ["~/.aws/credentials"]
}
}
}Claude Code ממזג רשומות על פני כל היקף הגדרות שהסשן טוען, ומוסיף את הנתיבים מכללי הרשאת deny של Read(...). כש-filesystem.disabled הוא true, Claude Code לא אוכף את הרשומות האלה.
#sandbox.filesystem.allowRead
פותח מחדש קריאה לנתיבים מסוימים בתוך אזור ש-denyRead חוסם, כדי לבנות גישת קריאה רק לסביבת העבודה. רשומת denyRead מדויקת או עם תו הכללה נשארת חסומה בתוך allowRead רחב יותר, כפי שטבלת החפיפה מראה. כשרשומת denyRead עם תו הכללה כגון ~/**/.env תואמת ספרייה, Claude Code חוסם גם קריאה של התוכן שלה. לפני v2.1.236 ב-macOS, Claude Code פתח מחדש את הנתיבים שרשומת denyRead עם תו הכללה תאמה בכל מקום שרשומת allowRead רחבה יותר כיסתה אותם, והשאיר את תוכן הספרייה התואמת קריא.
- היקף:
כל קובץ, עם מגבלות על הגדרות פרויקט ומקומיות - סוג: מערך של מחרוזות נתיב, לפי קידומות הנתיב של ארגז החול
- ברירת מחדל: לא מוגדר
זה חוסם קריאה של ספריית הבית מלבד הפרויקט עצמו:
{
"sandbox": {
"filesystem": {
"denyRead": ["~/"],
"allowRead": ["."]
}
}
}Claude Code פותר רשומת . אל שורש הפרויקט בהגדרות פרויקט ואל ~/.claude בהגדרות משתמש. Claude Code ממזג רשומות על פני קובצי ההגדרות שהסשן טוען אלא אם allowManagedReadPathsOnly מוגדר, ומשמיט רשומות מהגדרות המאגר בזמן ש-permissions.blockReadsOutsideWorkingDirectories פועל. נעילות מאגר יכולות להשמיט גם את רשומות המאגר.
#sandbox.filesystem.allowManagedReadPathsOnly
מכבד רק את רשומות allowRead שמגיעות מהגדרות מנוהלות, כדי שמפתחים לא יוכלו לפתוח מחדש גישת קריאה לנתיבים שהארגון חסם. Claude Code עדיין ממזג רשומות denyRead מכל היקף הגדרות שהסשן טוען.
- היקף:
מנוהל - סוג: Boolean
true: Claude Code מכבד רק את רשומותallowReadמהגדרות מנוהלותfalse: רשומותallowReadמקובצי הגדרות אחרים יכולות להתמזג
- ברירת מחדל:
false
זה חוסם קריאה של ספריית הבית, פותח מחדש את ~/work, ועוצר מפתחים מפתיחה מחדש של כל דבר אחר:
{
"sandbox": {
"filesystem": {
"denyRead": ["~/"],
"allowRead": ["~/work"],
"allowManagedReadPathsOnly": true
}
}
}ראו מניעת הרחבת המדיניות על ידי מפתחים.
#sandbox.filesystem.disabled
מדלג על בידוד מערכת הקבצים ושומר על בידוד הרשת. פקודות בארגז החול מקבלות גישת קריאה וכתיבה בלי הגבלה למערכת הקבצים של המארח, ויציאת הרשת שלהן נשארת מוגבלת אל network.allowedDomains. השתמשו בזה כשארגז החול נועד לשלוט ביעד החיבור של פקודות, במקום במה שהן כותבות.
- היקף:
משתמש או מנוהל. כשהגדרות מנוהלות מגדירות אתsandbox.filesystemבכלל, או מפרטות רשומתsandbox.credentials.filesעם"mode": "deny", רק הגדרות מנוהלות יכולות להגדיר אותו. - סוג: Boolean
true: Claude Code מדלג על בידוד מערכת הקבצים ושומר על בידוד הרשתfalse: בידוד מערכת הקבצים נשאר פעיל
- ברירת מחדל:
false, ולכן בידוד מערכת הקבצים נשאר פעיל
זה משאיר את מערכת הקבצים פתוחה ומגביל את יציאת הרשת אל GitHub ו-npm:
{
"sandbox": {
"enabled": true,
"filesystem": {
"disabled": true
},
"network": {
"allowedDomains": ["github.com", "*.npmjs.org"]
}
}
}כשהשכבה כבויה, Claude Code לא אוכף רשומות denyRead או רשומות deny של credentials.files, בעוד שרשומות credentials.envVars ורשומות mask שהוחלו ממשיכות לעבוד. autoAllowBashIfSandboxed עדיין ברירת המחדל שלו היא true, ולכן הגדירו אותו ל-false כדי להמשיך לבקש אישור. ראו כיבוי בידוד מערכת הקבצים לרשימה המלאה של המקורות שיכולים להגדיר אותו ולמה שמשתנה כשהבידוד כבוי.
#sandbox.ignoreViolations
משתיק דיווחי הפרה של ארגז החול עבור נתיבים שאתם מצפים שפקודה תבדוק ותסורב, כגון כלי שבודק את /etc/hosts בהפעלה, כדי שהסירובים האלה לא יופיעו כהפרות או במה ש-Claude רואה. ארגז החול עדיין חוסם את הגישה. רק הדיווח מדוכא. המפתחות הם תת מחרוזות להתאמה מול הפקודה, כאשר * מתאים לכל פקודה, והערכים הם תת מחרוזות של ההפרה שיש להתעלם מהן עבור אותה פקודה, כגון נתיב במערכת הקבצים.
- היקף:
כל קובץ, עם מגבלות על הגדרות פרויקט ומקומיות - סוג: אובייקט שממפה תת מחרוזת של פקודה למערך של תת מחרוזות של הפרה, בדרך כלל נתיבים
- ברירת מחדל: לא מוגדר, ולכן כל הפרה מדווחת
{
"sandbox": {
"ignoreViolations": {
"*": ["/etc/hosts"]
}
}
}#sandbox.enableWeakerNestedSandbox
מריץ את ארגז החול של Linux בתוך מכולת Docker unprivileged, שבה bubblewrap לא יכול לעגן /proc חדש. במקום זה ארגז החול הפנימי מבצע bind-mount ל-/proc הקיים של המכולה, וזה חושף מידע על תהליכים שעיגון חדש היה מסתיר. זה מפחית את האבטחה. השתמשו בזה רק כשהמכולה החיצונית כבר מספקת את הבידוד שאתם צריכים.
- היקף:
כל קובץ, עם מגבלות על הגדרות פרויקט ומקומיות - סוג: Boolean
true: ארגז החול הפנימי מבצע bind-mount ל-/procהקיים של המכולה במקום לעגן אחד חדשfalse: ארגז החול מעגן/procחדש, וזה לא עובד במכולת Docker unprivileged
- ברירת מחדל:
false
{
"sandbox": {
"enabled": true,
"enableWeakerNestedSandbox": true
}
}רק Linux ו-WSL2. ראו Bubblewrap נכשל בהפעלה בתוך מכולה.
#sandbox.enableWeakerNetworkIsolation
מאפשר לפקודות בארגז החול ב-macOS להגיע לשירות האמון של TLS במערכת, com.apple.trustd.agent. כלים מבוססי Go כגון gh, gcloud, ו-terraform צריכים אותו כדי לאמת אישורי TLS כשמשתמשים ב-network.httpProxyPort עם פרוקסי MITM ו-CA מותאם. זה מפחית את האבטחה בכך שנפתח נתיב אפשרי להוצאת נתונים דרך שירות האמון.
- היקף:
כל קובץ, עם מגבלות על הגדרות פרויקט ומקומיות - סוג: Boolean
true: פקודות בארגז החול ב-macOS יכולות להגיע אלcom.apple.trustd.agentfalse: פקודות בארגז החול ב-macOS לא יכולות להגיע לשירות האמון של TLS במערכת
- ברירת מחדל:
false
{
"sandbox": {
"enabled": true,
"enableWeakerNetworkIsolation": true
}
}אם לא משתמשים בפרוקסי MITM, פרטו את הכלים שנכשלים ב-excludedCommands. ראו כלי CLI מבוססי Go נכשלים באימות TLS ב-macOS.
#sandbox.allowAppleEvents
מאפשר לפקודות בארגז חול ב-macOS לשלוח Apple Events, ש-open, osascript וכלים שפותחים כתובות URL בדפדפן זקוקים להם. בלעדיו הם נכשלים עם שגיאה -600. זה מסיר את בידוד הרצת הקוד: פקודות בארגז חול יכולות להפעיל יישומים אחרים מחוץ לארגז החול בלי בקשת אישור מהמשתמש, ויכולות לשלוח פקודות AppleScript ליישומים שרצים, כמו Terminal, בכפוף לבקשת ההסכמה לאוטומציה של macOS לכל יישום (TCC).
- היקף:
משתמש או מנוהל - סוג: בוליאני
true: פקודות בארגז חול ב-macOS יכולות לשלוח Apple Eventsfalse: פקודות בארגז חול ב-macOS לא יכולות לשלוח Apple Events, ולכןopenו-osascriptנכשלים עם שגיאה-600
- ברירת מחדל:
false
{
"sandbox": {
"enabled": true,
"allowAppleEvents": true
}
}כדי לשמור על הבידוד ועדיין להריץ כלי אחד כזה, הוסף אותו ל-excludedCommands במקום. ראה Apple Events ב-macOS.
#sandbox.allowNestedUserNamespaces
מאפשר לפקודות בארגז חול ב-Linux וב-WSL2 ליצור מרחבי שמות משתמש (user namespaces), שארגז החול של Chromium ושל Electron, bubblewrap מקונן, ו-unshare זקוקים להם. אם מגדירים את המפתח הזה ל-true, מכבים גבול אבטחה: קוד מפקודה בארגז חול יכול בסופו של דבר לרוץ מחוץ לארגז החול. עבור Podman או Buildah בלי root, השתמש ב-excludedCommands במקום, כי ארגז החול עוצר אותם גם בדרכים אחרות. דורש Claude Code בגרסה v2.1.305 או חדשה יותר.
- היקף:
משתמש או מנוהל. ערךtrueנלקח בחשבון מ-~/.claude/settings.json, מ-JSON שמועבר עם--settings, או מהגדרות מנוהלות. Claude Code מתעלם מ-trueבקובץ.claude/settings.jsonאו.claude/settings.local.jsonשל פרויקט. בסשן שבוCLAUDE_CODE_SUBPROCESS_ENV_SCRUBמוגדר ל-1, Claude Code מתעלם מ-trueמכל מקור. ערךfalseנלקח בחשבון מכל קובץ, לפי קדימות הגדרות. - סוג: בוליאני
true: פקודות בארגז חול יכולות ליצור user namespacesfalse: המפתח הזה לא מאפשר שום דבר נוסף, וברירת המחדל של ארגז החול חלה
- ברירת מחדל:
false
{
"sandbox": {
"enabled": true,
"allowNestedUserNamespaces": true
}
}כשהמפתח הזה פועל, אל תסתמך על אף אחת מההגבלות של ארגז החול, כולל נתיבים מוגנים ורשומות credentials.files, כדי לעצור פקודה זדונית. במצב אישור אוטומטי, הפקודה הזו יכולה לרוץ בלי בקשת הרשאה. אם לארגון שלך יש צוות אבטחה, בדוק איתם לפני שמדליקים את המפתח.
כדי למצוא את התיקון לכלי שלך, ראה Chromium או Podman בלי root נכשלים בתוך ארגז החול ב-Linux.
#sandbox.ripgrep
מכוון את ארגז החול אל קובץ בינארי של ripgrep משלך במקום זה ש-Claude Code משתמש בו, למשל כשהפלטפורמה שלך צריכה rg שנבנה אחרת.
- היקף:
משתמש או מנוהל - סוג: אובייקט עם
command, הנתיב אל קובץ ה-ripgrep הבינארי, ו-argsאופציונלי, מערך של ארגומנטים להוספה בהתחלה - ברירת מחדל: לא מוגדר, כך שארגז החול משתמש באותו קובץ ripgrep בינארי כמו Claude Code. זה הקובץ המצורף, אלא אם מגדירים את
USE_BUILTIN_RIPGREPל-0
{
"sandbox": {
"ripgrep": {
"command": "/usr/local/bin/rg"
}
}
}#sandbox.bwrapPath
מכוון את ארגז החול אל קובץ bubblewrap בינארי שמותקן מחוץ ל-PATH, כמו עותק שסופק מראש במארח מנותק רשת. Claude Code משתמש בנתיב גם לבדיקת התלות בהפעלה וגם כשהוא עוטף כל פקודה בארגז חול.
- היקף:
מנוהל. Claude Code קורא אותו רק מהגדרות מנוהלות, כדי שקובץ של משתמש, פרויקט או קובץ מקומי לא יוכל לכוון את ארגז החול אל קובץ בינארי אחר. - סוג: מחרוזת, נתיב מוחלט. Claude Code משמיט נתיב יחסי ונופל חזרה לחיפוש ב-
PATH - ברירת מחדל: לא מוגדר, כך ש-Claude Code מוצא את
bwrapב-PATH
{
"sandbox": {
"enabled": true,
"bwrapPath": "/opt/admin/bwrap"
}
}Linux ו-WSL2 בלבד.
#sandbox.socatPath
מכוון את פרוקסי הרשת של ארגז החול אל קובץ socat בינארי שמותקן מחוץ ל-PATH.
- היקף:
מנוהל - סוג: מחרוזת, נתיב מוחלט. Claude Code משמיט נתיב יחסי ונופל חזרה לחיפוש ב-
PATH - ברירת מחדל: לא מוגדר, כך ש-Claude Code מוצא את
socatב-PATH
{
"sandbox": {
"enabled": true,
"socatPath": "/opt/admin/socat"
}
}Linux ו-WSL2 בלבד.
#sandbox.credentials
מצהיר על קובצי אישורים ומשתני סביבה שיש להגן עליהם מפני פקודות בארגז חול. כל רשומה מציינת path של קובץ או name של משתנה ו-mode: deny מסתיר את האישור בתוך ארגז החול, ו-mask מציג לפקודות בארגז החול מציין מקום בזמן שפרוקסי ארגז החול מחליף בערך האמיתי בבקשות יוצאות. Claude Code מגן רק על הרשומות שאתה מציין. אין רשימת דחיית אישורים מובנית.
- היקף:
כל קובץ. Claude Code מכבד רשומותmask, וגםallowPlaintextInject,awsPairsו-sigv4, רק מהגדרות משתמש, הגדרות מנוהלות ודגל--settings. - סוג: אובייקט עם
files,envVars,allowPlaintextInject,awsPairsו-sigv4 - ברירת מחדל: לא מוגדר, כך שאף אישור אינו מוגן
זה מסתיר את קובץ אישורי ה-AWS שלך ומסיר את GITHUB_TOKEN מפקודות בארגז חול:
{
"sandbox": {
"credentials": {
"files": [{ "path": "~/.aws/credentials", "mode": "deny" }],
"envVars": [{ "name": "GITHUB_TOKEN", "mode": "deny" }]
}
}
}הגנת הקובץ במצב deny היא חלק משכבת מערכת הקבצים, ולכן היא לא חלה כשמכבים את בידוד מערכת הקבצים. הגנת משתנה הסביבה עדיין חלה.
#רשומות אישורים לא תקינות בהגדרות מנוהלות
כשרשומת sandbox.credentials מנוהלת נכשלת באימות, Claude Code ממשיך להגן על האישור במקום שבו הוא יכול:
- רשומה ב-
filesאו ב-envVarsשעדיין יש להpathאוnameתקין ו-modeשלmaskאוdeny, כמו רשומה שתבנית ה-extractשלה בלי קבוצה לוכדת, מונמכת ל-mode: "deny"עם אזהרה, כך שהאישור נשאר חסום, לא ממסוך, עד שמתקנים את הרשומה. רשומתfilesשהונמכה מקבעת אתfilesystem.disabledכמו רשומתdenyמפורשת, והאזהרה מציינת שחסימת הקריאה שלה לא נאכפת אם הגדרות מנוהלות מכבות את בידוד מערכת הקבצים. - רשומה עם
modeלא מוכר או עםpathאוnameלא תקין מוסרת. - כל מקרה מזהיר. בין אם רשומה הונמכה ובין אם הוסרה, הרשומות התקינות שנותרו עדיין נאכפות.
חל ב-v2.1.191 ואילך. לפני v2.1.221, כל רשומה לא תקינה הוסרה. למפתחות המנוהלים האחרים עם טיפול לפי שדה, ראה רשומות לא תקינות בהגדרות מנוהלות.
#sandbox.credentials.files
מגן על קובצי אישורים או ספריות מפני פקודות בארגז חול. עם "mode": "deny", Claude Code חוסם קריאות של הנתיב בתוך ארגז החול, אותה חסימת קריאה כמו sandbox.filesystem.denyRead. עם "mode": "mask", פקודות בארגז חול ב-Linux וב-WSL2 קוראות עותק sentinel של הקובץ, ופרוקסי ארגז החול מחליף בערך האמיתי בבקשות יוצאות אל injectHosts של אותה רשומה. ב-macOS הקובץ אינו קריא בתוך ארגז החול במקום זאת. "mode": "mask" דורש Claude Code בגרסה v2.1.221 או חדשה יותר.
- היקף:
כל קובץ. Claude Code משמיט רשומותmaskמקובץ הפרויקט.claude/settings.jsonומהקובץ המקומי.claude/settings.local.json. - סוג: מערך של אובייקטים, כל אחד עם
pathו-modeשל"deny"או"mask", ועם שדות המסכה לקבצים האופציונליים - ברירת מחדל: לא מוגדר, כך שאף קובץ אישורים אינו מוגן
זה מסתיר את קובץ אישורי ה-AWS שלך וממסך את קובץ המארחים של gh, ומחליף בערך האמיתי רק בבקשות אל api.github.com:
{
"sandbox": {
"credentials": {
"files": [
{ "path": "~/.aws/credentials", "mode": "deny" },
{ "path": "~/.config/gh/hosts.yml", "mode": "mask", "injectHosts": ["api.github.com"] }
]
}
}
}נתיבים משתמשים באותן קידומות כמו הגדרות sandbox.filesystem.*, ו-Claude Code ממזג את המערכים מכל היקף הגדרות שהסשן טוען. הגנה על אישורים מכסה מה עדיין חל ממקורות שמוציאים עם --setting-sources. רשומות mask דורשות Claude Code בגרסה v2.1.221 או חדשה יותר.
החלפת mask רצה רק דרך פרוקסי ארגז החול, אז הגדר sandbox.network.tlsTerminate, או allowPlaintextInject לרשתות בדיקה ב-HTTP רגיל. mask חל על קובץ יחיד, אז ציין כל קובץ אישורים בנפרד. Claude Code מקבל אבל מתעלם משדות ה-mask ברשומת deny. מיסוך אישורים מכסה אילו מקורות הגדרות מכובדים, ומיסוך קובצי אישורים מכסה מתי רשומה נופלת חזרה ל-deny.
#שדות מסכה לקבצים
רשומת mask מקבלת את השדות האופציונליים האלה. בלי extract או decode, Claude Code מחליף את כל תוכן הקובץ ב-sentinel אחד. ב-macOS כשבידוד מערכת הקבצים פועל, Claude Code מחיל רשומת mask כ-deny לפני ש-extract או decode רצים. ראה מיסוך קובצי אישורים.
| שדה | סוג | מה הוא עושה |
|---|---|---|
extract | מחרוזת, ביטוי רגולרי עם לפחות קבוצה לוכדת אחת | ממסך רק את הטקסט שנלכד בקבוצה 1 של כל התאמה, כך ששאר הקובץ נשאר ניתן לניתוח. כשגם decode מוגדר, Claude Code בודק כל לכידה כ-JWT אפשרי במקום להחליף אותה מיד. דורש v2.1.221 או חדשה יותר |
onExtractNoMatch | "warn", "deny" או "error". ברירת מחדל "warn" | מה קורה כש-extract או decode לא מוצאים דבר למסך. warn משאיר את הקובץ קריא כפי שהוא בתוך ארגז החול, deny הופך אותו ללא קריא, ו-error עוצר את הקמת ארגז החול עד שמתקנים את התצורה. Claude Code מתייחס ל-deny כ-error כשחסימת הקריאה לא תיאכף, כי מכבים את בידוד מערכת הקבצים או שרשומת sandbox.filesystem.allowRead פותחת מחדש את הנתיב. דורש v2.1.221 או חדשה יותר. המקרה של decode דורש v2.1.224 או חדשה יותר |
decode | המחרוזת "jwt" | מוצא JSON Web Tokens (JWTs) בקובץ, עם תבנית מובנית או עם extract כשהוא מוגדר, מאמת כל מועמד, ומחליף אותו באסימון מזויף תקין מבנית, כך שקוד בתוך ארגז החול שמפענח את האסימון ממשיך לעבוד. כשאף מועמד לא מאומת, onExtractNoMatch קובע את התוצאה. דורש v2.1.224 או חדשה יותר |
maskClaims | מערך של מחרוזות, לפחות שם claim אחד. דורש decode | ממסך רק את ה-claims של המטען ברמה העליונה שצוינו בשם, בתוך כל JWT מאומת, ובונה מחדש את האסימון סביב המטען שהשתנה, כך שה-claims האחרים נשארים קריאים. כשאף claim בשם שצוין לא תואם, onExtractNoMatch קובע את התוצאה. דורש v2.1.224 או חדשה יותר |
maskDuplicates | בוליאני, ברירת מחדל false | גם מחליף עותקים מילוליים של כל ערך ממסוך במקומות אחרים בקובץ, כמו סוד שהודבק בהערה. Claude Code מתאים תת-מחרוזות גולמיות, אז שמור אותו לסודות ארוכים עם אנטרופיה גבוהה. נלקח בחשבון רק כש-extract או decode מוגדר. דורש v2.1.221 או חדשה יותר |
injectHosts | מערך של מחרוזות, כל אחת מארח שגם sandbox.network.allowedDomains מתיר | מצמצם את המארחים שבהם פרוקסי ארגז החול מחליף בערך האמיתי. כשלא מוגדר, הפרוקסי מחליף אותו בבקשות אל כל מארח ב-sandbox.network.allowedDomains. דורש v2.1.221 או חדשה יותר |
זה ממסך רק את ערך oauth_token בקובץ המארחים של gh, מחליף כל עותק אחר שלו בקובץ, הופך את הקובץ ללא קריא אם התבנית לא תואמת דבר, ומחליף באסימון האמיתי רק בבקשות אל api.github.com:
{
"sandbox": {
"credentials": {
"files": [
{
"path": "~/.config/gh/hosts.yml",
"mode": "mask",
"extract": "oauth_token:\\s*(\\S+)",
"maskDuplicates": true,
"onExtractNoMatch": "deny",
"injectHosts": ["api.github.com"]
}
]
}
}
}#sandbox.credentials.envVars
הגנה על משתני סביבה מפני פקודות בתוך ארגז החול. עם "mode": "deny", Claude Code מסיר את המשתנה מסביבת הפקודות שבתוך ארגז החול. עם "mode": "mask", פקודות בתוך ארגז החול רואות ערך זקיף לכל הפעלה, ופרוקסי ארגז החול מחליף אותו בערך האמיתי בבקשות יוצאות אל injectHosts של הרשומה, כך שכלים כמו gh ו-npm ממשיכים לאמת בלי להחזיק את האישור האמיתי.
- היקף:
Any file. Claude Code משמיט רשומותmaskמקובץ הפרויקט.claude/settings.jsonומהקובץ המקומי.claude/settings.local.json. - סוג: מערך של אובייקטים, כל אחד עם
nameועםmodeשל"deny"או"mask", ועם שדות המסכה האופציונליים למשתני סביבה - ברירת מחדל: לא מוגדר, כך שאף משתנה סביבה אינו מוגן
זה מסיר את NPM_TOKEN מפקודות בתוך ארגז החול וממסך את GITHUB_TOKEN, ומחליף בערך האמיתי רק בבקשות אל api.github.com:
{
"sandbox": {
"credentials": {
"envVars": [
{ "name": "NPM_TOKEN", "mode": "deny" },
{ "name": "GITHUB_TOKEN", "mode": "mask", "injectHosts": ["api.github.com"] }
]
}
}
}ה-name חייב להתחיל באות או בקו תחתון ולהכיל רק אותיות, ספרות וקווים תחתונים. Claude Code ממזג את המערכים מכל היקף הגדרות שההפעלה טוענת, ומחיל deny כשאותו משתנה מופיע עם שני המצבים. הגנה על אישורים מכסה מה עדיין חל ממקורות שאתם מחריגים עם --setting-sources.
החלפת mask רצה רק דרך פרוקסי ארגז החול, לכן הגדירו את sandbox.network.tlsTerminate, או את allowPlaintextInject לרשתות בדיקה ב-HTTP רגיל. ראו מיסוך אישורים. Claude Code מקבל אך מתעלם משדות mask ברשומת deny.
#שדות מסכה למשתני סביבה
רשומת mask מקבלת את השדות האופציונליים האלה. בלי extract או decode, Claude Code מחליף את כל הערך בזקיף אחד. אי אפשר לשלב extract ו-decode באותה רשומה.
| שדה | סוג | מה הוא עושה |
|---|---|---|
extract | מחרוזת, ביטוי רגולרי עם לפחות קבוצת לכידה אחת | ממסך רק את הטקסט שנתפס בקבוצה 1 של כל התאמה, למשל הסיסמה בתוך מחרוזת חיבור DATABASE_URL, כך ששאר הערך נשאר ניתן לניתוח. דורש v2.1.224 או חדש יותר |
onExtractNoMatch | "warn", "deny", או "error". ברירת המחדל "warn". ברשומה עם decode מתקבל רק "warn" | מה קורה כש-extract לא מתאים לכלום. warn מעביר את המשתנה בלי מסכה, deny מבטל את הגדרתו בתוך ארגז החול, ו-error עוצר את הקמת ארגז החול עד שתתקנו את התצורה. דורש v2.1.224 או חדש יותר |
decode | המחרוזת "jwt" | מאמת שכל הערך הוא JWT ומחליף אותו באסימון מזויף תקין מבנית, כך שקוד בתוך ארגז החול שמפענח את האסימון ממשיך לעבוד. הפרוקסי מחליף את כל האסימון האמיתי ביציאה. ערך שלא עובר אימות עובר בלי מסכה עם אזהרה. דורש v2.1.224 או חדש יותר |
maskClaims | מערך של מחרוזות, לפחות שם claim אחד. דורש decode | ממסך רק את ה-claims ברמת העליונה של המטען בתוך ה-JWT המפוענח ששמותיהם צוינו, ובונה מחדש את האסימון סביב המטען ששונה, כך ששאר ה-claims נשארים קריאים. כשאף claim בשם שצוין לא מתאים, המשתנה עובר בלי מסכה עם אזהרה. דורש v2.1.224 או חדש יותר |
injectHosts | מערך של מחרוזות, כל אחת מארח שגם sandbox.network.allowedDomains מתיר | מצמצם את המארחים שבהם פרוקסי ארגז החול מחליף בערך האמיתי. כשלא מוגדר, הפרוקסי מחליף אותו בבקשות לכל מארח ב-sandbox.network.allowedDomains. כתבו יעד IPv6 ככתובת דחוסה חשופה, למשל "::1", ולא בצורה עם סוגריים מרובעים. ראו יעדי IPv6 ב-injectHosts |
זה ממסך רק את הסיסמה בתוך DATABASE_URL, מבטל את הגדרת המשתנה אם התבנית לא מתאימה לכלום, וממסך JWT ב-SERVICE_JWT תוך השארת כל claim קריא חוץ מ-api_key:
{
"sandbox": {
"credentials": {
"envVars": [
{
"name": "DATABASE_URL",
"mode": "mask",
"extract": "://[^:]+:([^@]+)@",
"onExtractNoMatch": "deny"
},
{
"name": "SERVICE_JWT",
"mode": "mask",
"decode": "jwt",
"maskClaims": ["api_key"]
}
]
}
}
}#sandbox.credentials.allowPlaintextInject
מתיר החלפת mask גם בבקשות HTTP רגיל וגם ב-HTTPS עם סיום TLS. ב-HTTP רגיל זהות השרת במעלה הזרם אינה מאומתת והאישור עובר בטקסט גלוי, לכן השאירו את זה כבוי מחוץ לרשתות בדיקה מהימנות.
- היקף:
User or managed - סוג: בוליאני
true: Claude Code מתיר החלפתmaskגם בבקשות HTTP רגיל וגם ב-HTTPS עם סיום TLSfalse: Claude Code מתיר החלפתmaskרק ב-HTTPS עם סיום TLS
- ברירת מחדל:
false
{
"sandbox": {
"credentials": {
"allowPlaintextInject": true
}
}
}#sandbox.credentials.awsPairs
קיבוץ משתני סביבה ממסוכים שיוצרים אישור AWS אחד לחתימה מחדש ב-SigV4, כשהאישור שלכם נמצא במשתנים עם שמות לא סטנדרטיים. Claude Code מקשר אוטומטית את השלשה המקובלת AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY ו-AWS_SESSION_TOKEN כשאתם ממסכים את כל הערכים שלהם, ולכן אתם צריכים את המפתח הזה רק לשמות אחרים. דורש Claude Code v2.1.224 או חדש יותר.
- היקף:
User or managed - סוג: מערך של אובייקטים, כל אחד עם
accessKeyIdVar,secretAccessKeyVar, ובאופן אופציונליsessionTokenVar, שמציינים רשומות שלsandbox.credentials.envVars - ברירת מחדל: לא מוגדר, כך שרק השלשה המקובלת מזווגת
זה מקשר שלושה משתנים עם שמות מותאמים לאישור AWS אחד לחתימה מחדש:
{
"sandbox": {
"credentials": {
"awsPairs": [
{
"accessKeyIdVar": "MY_KEY_ID",
"secretAccessKeyVar": "MY_SECRET_KEY",
"sessionTokenVar": "MY_SESSION_TOKEN"
}
]
}
}
}כל משתנה ששמו צוין חייב להיות רשומת mask של כל הערך ב-sandbox.credentials.envVars, בלי extract או decode, ויכול למלא רק משבצת אחת בכל הזוגות. הכללים האלה חלים גם:
- הפרוקסי חותם מחדש בקשות במארחים שרשומים ב-
injectHostsשל רשומת מזהה מפתח הגישה - כש-
sessionTokenVarמוגדר, הפרוקסי שולח את האסימון האמיתי כ-x-amz-security-tokenבבקשות שנחתמו מחדש - ציון של אחד מהמשתנים המקובלים בזוג מחליף את הזיווג האוטומטי
#sandbox.credentials.sigv4
בחירה במה שפרוקסי ארגז החול עושה עם צורות בקשת AWS שאי אפשר לחתום מחדש: streaming להעלאות זורמות aws-chunked, presigned לכתובות URL חתומות מראש, ו-sigv4a לחתימות אסימטריות SigV4A. זה חל רק על בקשות שנחתמו עם מזהה מפתח גישה של מציין מיקום מזוג ממסוך. דורש Claude Code v2.1.224 או חדש יותר.
- היקף:
User or managed - סוג: אובייקט עם
streaming,presignedו-sigv4a, כל אחד מהם אחד מאלה:"deny": הפרוקסי נכשל בבקשה"passthrough": הפרוקסי מעביר את הבקשה חתומה עם מציין המיקום הממסוך, כך שהכלי מקבל את הדחייה של AWS עצמה
- ברירת מחדל: לא מוגדר, כך שכל צורה היא
"deny"
זה מעביר העלאות זורמות במקום להכשיל אותן בפרוקסי:
{
"sandbox": {
"credentials": {
"sigv4": {
"streaming": "passthrough"
}
}
}
}עם deny, הפרוקסי נכשל בבקשה. עם passthrough, הפרוקסי מעביר את הבקשה עם חתימה שחושבה ממציין המיקום הממסוך, כך ש-AWS דוחה אותה והכלי הקורא מקבל את התגובה של AWS עצמה במקום שגיאת פרוקסי.
#sandbox.network
שליטה במארחים, ביציאות ובשקעים שפקודות בתוך ארגז החול יכולות להגיע אליהם. ארגז החול מנתב תעבורה יוצאת דרך פרוקסי שאוכף את הרשימות האלה. ראו בידוד רשת לאופן שבו הפרוקסי מחליט ומתי הוא מבקש אישור.
- היקף:
Any file.strictAllowlist,allowManagedDomainsOnlyו-tlsTerminateנקראים ממקורות מעטים יותר, כפי שהרשומות שלהם אומרות. - סוג: אובייקט עם מפתחות המשנה שלמטה
- ברירת מחדל: לא מוגדר, כך שאף דומיין אינו מותר מראש ומצב ההרשאה שלכם מחליט מה קורה לכל מארח חדש
זה מתיר מראש את GitHub ואת npm, חוסם את uploads.github.com, ומאפשר לפקודות להיקשר ל-localhost:
{
"sandbox": {
"network": {
"allowedDomains": ["github.com", "*.npmjs.org"],
"deniedDomains": ["uploads.github.com"],
"allowLocalBinding": true
}
}
}Claude Code ממזג את מפתחות המשנה מסוג מערך בין היקפי הגדרות, כך שפרויקט יכול להוסיף דומיינים לרשימת המשתמש שלכם אלא אם חל נעילת מאגר. כללי הרשאה של התרה וחסימה ב-WebFetch(domain:...) מזינים את אותן רשימות התרה וחסימה. ראו כללי הרשאה.
#sandbox.network.allowUnixSockets
רשימת נתיבי שקעי Unix שפקודות בתוך ארגז החול יכולות להתחבר אליהם ב-macOS. Claude Code מתעלם מהרשימה הזו ב-Linux וב-WSL2, שם מסנן seccomp לא יכול לבדוק נתיבי שקע. השתמשו שם ב-allowAllUnixSockets במקום זאת.
- היקף:
Any file, עם מגבלות על הגדרות פרויקט ומקומיות - סוג: מערך של מחרוזות, כל אחת נתיב שקע
- ברירת מחדל: לא מוגדר, כך שארגז החול של macOS חוסם כל שקע Unix
{
"sandbox": {
"network": {
"allowUnixSockets": ["~/.ssh/agent-socket"]
}
}
}נתיב שקע יכול להעניק גישה רחבה: התרת /var/run/docker.sock, למשל, מאפשרת לפקודה בתוך ארגז החול לשלוט בדמון Docker. ראו מגבלות אבטחה.
#sandbox.network.allowAllUnixSockets
מאפשר לפקודות בתוך ארגז החול להתחבר לכל שקע Unix. ב-Linux וב-WSL2, מסנן seccomp של ארגז החול חוסם קריאות socket(AF_UNIX, ...), ולכן זו הדרך היחידה להתיר שם שקעי Unix. כשהמסנן חסר, וזה מה ש-/sandbox מדווח בלשונית Dependencies, ארגז החול לא חוסם קריאות לשקעי Unix. ראו הגדרת Linux ו-WSL2 למקור המסנן.
- היקף:
Any file, עם מגבלות על הגדרות פרויקט ומקומיות - סוג: בוליאני
true: פקודות בתוך ארגז החול יכולות להתחבר לכל שקע Unix. ב-Linux וב-WSL2 הן יכולות גם להתחבר לשקעי VM, משפחת הכתובותAF_VSOCKfalse: ארגז החול חוסם חיבורי שקע Unix: ב-macOS חוץ מהנתיבים ב-allowUnixSockets, וב-Linux וב-WSL2 דרך מסנן seccomp כשהוא קיים
- ברירת מחדל:
false
{
"sandbox": {
"network": {
"allowAllUnixSockets": true
}
}
}ב-WSL2, true גם פותח מחדש את שקע ה-interop שמפעיל קבצי בינארי של Windows כמו cmd.exe ו-powershell.exe.
#sandbox.network.allowLocalBinding
מאפשר לפקודות בתוך ארגז החול ב-macOS להאזין ביציאות רשת, למשל כדי להפעיל שרת פיתוח, ולהתחבר לכל יציאה ב-localhost. פקודה שמאזינה בכתובת שאינה loopback מקבלת חיבורים ממכונות אחרות. למפתח אין השפעה ב-Linux וב-WSL2, שם לכל פקודה בתוך ארגז החול יש ממשק loopback משלה. כדי להגיע לשרת במארח מ-Linux או מ-WSL2, ראו פקודה נכשלת בהגעה לשרת ב-localhost.
- היקף:
Any file, עם מגבלות על הגדרות פרויקט ומקומיות - סוג: בוליאני
true: פקודות בתוך ארגז החול ב-macOS יכולות להאזין בכל כתובת מקומית ולהתחבר לכל יציאה ב-localhostfalse: פקודות בתוך ארגז החול ב-macOS לא יכולות להאזין ביציאה או להתחבר ישירות לשרתים ב-localhost
- ברירת מחדל:
false
{
"sandbox": {
"network": {
"allowLocalBinding": true
}
}
}#sandbox.network.allowMachLookup
רשימת שמות שירותי XPC ו-Mach נוספים שארגז החול של macOS רשאי לחפש. כלים שמתקשרים דרך XPC, כמו iOS Simulator או Playwright, צריכים ששירותיהם יופיעו כאן. פקודות בתוך ארגז החול יכולות להגיע מחוץ לארגז החול לכל שירות שאתם רושמים, וארגז החול לא מגביל את מה שהשירותים האלה עושים עבור הפקודות האלה.
- היקף:
Any file, עם מגבלות על הגדרות פרויקט ומקומיות - סוג: מערך של מחרוזות, כל אחת שם שירות.
*יחיד בסוף מתאים לקידומת, ו-"*"לבדו מתאים לכל שירות - ברירת מחדל: לא מוגדר
זה מתיר כל שירות תחת הקידומת com.apple.CoreSimulator.:
{
"sandbox": {
"network": {
"allowMachLookup": ["com.apple.CoreSimulator.*"]
}
}
}#sandbox.network.allowedDomains
התרה מראש של דומיינים לתעבורה יוצאת מפקודות בתוך ארגז החול, כך שארגז החול לא מבקש אישור עבורם. תווים כלליים כמו *.example.com מתאימים לתת-דומיינים, וסיומת :port אופציונלית מגבילה רשומה ליציאה אחת. רשומה בלי יציאה מתאימה לכל יציאה.
- היקף:
Any file, עם מגבלות על הגדרות פרויקט ומקומיות. רק הגדרות מנוהלות כש-allowManagedDomainsOnlyמוגדר. - סוג: מערך של מחרוזות, כל אחת דומיין, תבנית תו כללי, או ליטרל IP, עם סיומת
:portאופציונלית - ברירת מחדל: לא מוגדר, כך שמצב ההרשאה שלכם מחליט מה קורה לכל מארח חדש
זה מתיר מראש את GitHub בכל יציאה, כל תת-דומיין של npm, ומארח API אחד ביציאה 443 בלבד:
{
"sandbox": {
"network": {
"allowedDomains": ["github.com", "*.npmjs.org", "api.example.com:443"]
}
}
}כתבו ליטרלים של IPv6 בסוגריים מרובעים, עם יציאה אופציונלית: "[::1]" מתיר כל יציאה ו-"[::1]:443" יציאה אחת. הצורה עם סוגריים מרובעים דורשת Claude Code v2.1.229 או חדש יותר. ראו כתובות IPv6 ברשימות דומיינים.
#sandbox.network.deniedDomains
חסימת דומיינים לתעבורה יוצאת מפקודות בתוך ארגז החול, באותו תחביר של תו כללי, יציאה ו-IPv6 כמו ב-allowedDomains. דומיין חסום נשאר חסום גם כשרשומת allowedDomains מתאימה לו גם כן.
- היקף:
Any file - סוג: מערך של מחרוזות, כל אחת דומיין, תבנית תו כללי, או ליטרל IP, עם סיומת
:portאופציונלית - ברירת מחדל: לא מוגדר
{
"sandbox": {
"network": {
"deniedDomains": ["sensitive.cloud.example.com"]
}
}
}Claude Code ממזג את הרשימה הזו מכל מקור הגדרות שההפעלה טוענת גם כש-allowManagedDomainsOnly מוגדר, כך שמפתח תמיד יכול להחמיר את רשימת החסימה. לליטרלים של IPv6, ראו כתובות IPv6 ברשימות דומיינים.
רשומה שנכתבה עם הנקודה הסופית שמסמנת שם דומיין מלא, כמו example.com., חוסמת את אותם חיבורים כמו example.com.
#sandbox.network.strictAllowlist
מונע מפקודות בארגז חול גישה למארחים שמחוץ לרשימת ההיתר, במקום לבקש אישור. רשימת ההיתר היא allowedDomains בתוספת דומיינים מכללי allow של WebFetch(domain:...), או רק הרשומות מהגדרות מנוהלות כאשר allowManagedDomainsOnly מוגדר. נעילות שחלות בלי ארגז חול שנדרש לו מנהל מכסות את הרשומות של מאגר. דורש את Claude Code בגרסה v2.1.219 או מאוחרת יותר.
- היקף:
משתמש או מנוהל. מאגר לא יכול להפעיל או לכבות את זה. - סוג: בוליאני
true: Claude Code מונע מפקודות בארגז חול גישה למארחים שמחוץ לרשימת ההיתרfalse: אלא אם קובץ הגדרות מהימן אחר מגדירtrue, Claude Code מחליט על מארח שמחוץ לרשימת ההיתר לפי מצב הרשאה במקום לדחות אותו מיד: במצב auto הוא בודק את המארח מול הדומיינים המותרים לפי פקודה של הפקודה, במצבdontAskהוא דוחה, במצבbypassPermissionsובסשנים אינטראקטיביים של מסוף במצב plan שבהם bypass זמין הוא מתיר, ובשאר המקרים הוא שואל אותך
- ברירת מחדל:
false
{
"sandbox": {
"network": {
"strictAllowlist": true
}
}
}Claude Code אוכף את זה רק לפקודות בארגז חול. כלים בתוך התהליך, כמו WebFetch, עדיין פועלים לפי כללי ההרשאה שלהם. כשאחד מהמקורות שמכובדים מגדיר את זה ל true, זה נשאר מופעל. ראה בידוד רשת. דורש את Claude Code בגרסה v2.1.219 או מאוחרת יותר.
#sandbox.network.allowManagedDomainsOnly
נועל את רשימת ההיתר של הרשת למה שהגדרות מנוהלות מגדירות. Claude Code מכבד אז רק את allowedDomains וכללי allow של WebFetch(domain:...) מהגדרות מנוהלות, מתעלם מדומיינים מהגדרות משתמש, פרויקט, מקומיות ו --settings, וחוסם דומיין שאינו מותר באופן אוטומטי במקום לבקש אישור.
- היקף:
מנוהל - סוג: בוליאני
true: Claude Code מכבד רק אתallowedDomainsוכללי allow שלWebFetch(domain:...)מהגדרות מנוהלות, וחוסם דומיין שאינו מותר במקום לבקש אישורfalse: דומיינים מקובצי הגדרות אחרים יכולים להתמזג לתוך רשימת ההיתר
- ברירת מחדל:
false
זה נועל את רשימת ההיתר ל GitHub ול npm, ומתעלם מכל דומיין שמפתחים מוסיפים:
{
"sandbox": {
"network": {
"allowManagedDomainsOnly": true,
"allowedDomains": ["github.com", "*.npmjs.org"]
}
}
}כל עוד המפתח הוא true, ארגז החול הוא כזה שנדרש לו מנהל, ורק הגדרות מנוהלות יכולות להגדיר פורט פרוקסי.
דומיינים שנדחו עדיין מתמזגים מכל מקור שהסשן טוען. ראה מניעת הרחבת המדיניות על ידי מפתחים.
#sandbox.network.httpProxyPort
מפנה את ארגז החול אל פרוקסי HTTP משלך במקום זה ש Claude Code מריץ. ארגונים עושים זאת כדי לבדוק תעבורת HTTPS, להחיל כללי סינון משלהם, או לרשום בקשות. הפרוקסי שלך נוטל את הסינון, ו Claude Code מפסיק להחיל את רשימות הדומיינים שלו ואת בקשות הרשת על תעבורה שנשלחת לשם. כשלא מוגדר, Claude Code מפעיל פרוקסי משלו לתעבורת HTTP.
- היקף:
כל קובץ, אלא אם הגדרות ארגז חול אחרות מגבילות אילו קבצים יכולים להגדיר פורט - סוג: מספר, פורט TCP מקומי
- ברירת מחדל: לא מוגדר, כך ש Claude Code מריץ פרוקסי משלו
{
"sandbox": {
"network": {
"httpProxyPort": 8080
}
}
}הגדר גם את socksProxyPort אם הפרוקסי שלך צריך לשאת גם תעבורת SOCKS. כשרק אחד משניהם מוגדר, Claude Code עדיין מריץ פרוקסי משלו לפרוטוקול השני. ראה הגדרת פרוקסי מותאמת.
#sandbox.network.socksProxyPort
מפנה את ארגז החול אל פרוקסי SOCKS5 משלך במקום זה ש Claude Code מריץ. הפרוקסי שלך נוטל את הסינון, ו Claude Code מפסיק להחיל את רשימות הדומיינים שלו ואת בקשות הרשת על תעבורה שנשלחת לשם. כשלא מוגדר, Claude Code מפעיל פרוקסי משלו לתעבורת SOCKS.
- היקף:
כל קובץ, אלא אם הגדרות ארגז חול אחרות מגבילות אילו קבצים יכולים להגדיר פורט - סוג: מספר, פורט TCP מקומי
- ברירת מחדל: לא מוגדר, כך ש Claude Code מריץ פרוקסי משלו
{
"sandbox": {
"network": {
"socksProxyPort": 8081
}
}
}ראה הגדרת פרוקסי מותאמת.
#sandbox.network.tlsTerminate
גורם לפרוקסי של ארגז החול לסיים TLS כדי שיוכל לקרוא את תוכן בקשות HTTPS. זה ניסיוני, והחלפת אישורים מסוג mask דורשת את זה. הגדר {} כדי ליצור רשות אישורים זמנית לסשן, או הגדר את caCertPath ואת caKeyPath כדי להשתמש ברשות משלך.
- היקף:
משתמש או מנוהל. מאגר לא יכול להפעיל את זה או לספק רשות אישורים. - סוג: אובייקט עם מחרוזות אופציונליות
caCertPathוcaKeyPath, כל אחת נתיב קובץ - ברירת מחדל: לא מוגדר, כך שהפרוקסי לא מסיים TLS ולא בודק אותו
{
"sandbox": {
"network": {
"tlsTerminate": {}
}
}
}כשיותר ממקור אחד שמכובד מגדיר את זה, Claude Code משתמש בערך מהמקור בעל הקדימות הגבוהה ביותר: הגדרות מנוהלות, אחר כך דגל --settings, ואחר כך הגדרות משתמש.
#זיכרון והקשר
שולט במה ש Claude Code טוען להקשר, איך הוא דוחס, ואיפה הוא שומר זיכרון ותוכניות. ראה ניהול הקשר וזיכרון.
#autoCompactEnabled
גורם ל Claude Code לדחוס את השיחה אוטומטית כשההקשר מתקרב למגבלה. מופיע ב /config בתור Auto-compact, והחלפת המצב שם כותבת את המפתח הזה להגדרות המשתמש שלך.
- היקף:
כל קובץ - סוג: בוליאני
true: Claude Code דוחס את השיחה אוטומטית כשההקשר מתקרב למגבלהfalse: Claude Code לא דוחס אוטומטית
- ברירת מחדל:
true - עקיפות לסשן:
DISABLE_AUTO_COMPACTמכבה דחיסה אוטומטית לסשן אחד. מי משניהם שמכבה את זה, השני לא יכול להפעיל את זה מחדש
{
"autoCompactEnabled": false
}פקודת /compact הידנית ממשיכה לעבוד כשדחיסה אוטומטית כבויה. אם מכבים דחיסה אוטומטית, גם דחיסה בחוסר פעילות נכבית.
#autoCompactWindow
מגדיר כמה חלון ההקשר מתמלא לפני ש Claude Code דוחס אוטומטית.
- היקף:
כל קובץ - סוג: מספר טוקנים, מ
100000עד1000000. Claude Code מגביל את הערך לחלון ההקשר של המודל שלך. סקירת המודלים מפרטת את החלון של כל מודל - ברירת מחדל: לא מוגדר, כך ש Claude Code בוחר חלון שמותאם למודל שלך
- עקיפות לסשן:
--autocompactגובר על המפתח הזה לסשן אחד, וCLAUDE_CODE_AUTO_COMPACT_WINDOWגובר על שניהם אלא אם Claude Code מתעלם מערך המשתנה
{
"autoCompactWindow": 500000
}פקודת /autocompact שומרת חלון למודל הנוכחי תחת modelSettings, וזה גובר על המפתח הזה באותו קובץ עבור המודל הזה. הגדרת חלון הדחיסה האוטומטית מתארת איך הפקודה, הדגל, המשתנה וההגדרה פועלים יחד.
#autoMemoryDirectory
שומר זיכרון אוטומטי בתיקייה שאתה בוחר במקום ברירת המחדל לפי פרויקט.
- היקף:
כל קובץ - סוג: מחרוזת, נתיב תיקייה מוחלט או עם קידומת
~/ - ברירת מחדל: לא מוגדר, כך ש Claude Code משתמש ב
~/.claude/projects/<project>/memory/
{
"autoMemoryDirectory": "~/my-memory-dir"
}מהגדרות פרויקט או מקומיות, Claude Code מכבד את המפתח הזה לפי אותו כלל אמון של סביבת העבודה כמו ל hooks, כי מאגר משוכפל יכול לספק את הקבצים האלה.
#autoMemoryEnabled
מפעיל או מכבה זיכרון אוטומטי. כש false, Claude לא קורא מתיקיית הזיכרון האוטומטי ולא כותב אליה. אפשר גם להחליף את המצב עם /memory במהלך סשן, וזה כותב את המפתח הזה להגדרות המשתמש שלך.
- היקף:
כל קובץ - סוג: בוליאני
true: זהה למצב לא מוגדר. הזיכרון האוטומטי נשאר מופעל אלא אם משהו שגובר על המפתח הזה מכבה אותו לסשן, כמו--bare, מצב בטוח, אוCLAUDE_CODE_DISABLE_AUTO_MEMORYfalse: Claude לא קורא מתיקיית הזיכרון האוטומטי ולא כותב אליה
- ברירת מחדל:
true - עקיפות לסשן:
CLAUDE_CODE_DISABLE_AUTO_MEMORYגובר על המפתח הזה לסשן אחד, בכל אחד מהכיוונים
{
"autoMemoryEnabled": false
}#bashOutputMaxChars
מגדיר כמה תווים מהפלט ש Claude מקבל ישירות של פקודת Bash או PowerShell שהצליחה. כשהפלט עובר את המגבלה, Claude Code שומר אותו לקובץ ו Claude מקבל תצוגה מקדימה קצרה בתוספת נתיב הקובץ. העלה את המגבלה כשפלט פקודה, כמו בנייה מפורטת או יומן של חבילת בדיקות מלאה, חורג באופן קבוע מברירת המחדל ואתה רוצה ש Claude יקרא אותו בלי לפתוח את הקובץ. דורש את Claude Code בגרסה v2.1.261 או מאוחרת יותר.
- היקף:
כל קובץ - סוג: מספר תווים, מספר שלם חיובי. Claude Code מצמצם את הערך לטווח
4000עד128000 - ברירת מחדל: לא מוגדר, כך ש Claude מקבל עד 30,000 תווים ישירות
{
"bashOutputMaxChars": 100000
}כשמגדירים את המפתח הזה, Claude Code מתעלם ממשתנה הסביבה BASH_MAX_OUTPUT_LENGTH.
#claudeMd
מזריק הוראות בסגנון CLAUDE.md כזיכרון שמנוהל על ידי הארגון בלי לפרוס קובץ נפרד. Claude Code טוען את הטקסט כרשומת זיכרון מנוהלת לפני קבצי CLAUDE.md של משתמש ושל פרויקט.
- היקף:
מנוהל - סוג: מחרוזת, הטקסט של קובץ CLAUDE.md. כתוב אותו כמו שהיית כותב את הקובץ, כולל Markdown, עם מעברי שורה כ
\n - ברירת מחדל: לא מוגדר
הדוגמה הזו פורסת שני כללים כרשימת Markdown קצרה:
{
"claudeMd": "# Engineering rules\n\n- Always run make lint before committing.\n- Never push directly to main."
}ראה פריסת CLAUDE.md לכל הארגון.
#claudeMdExcludes
מדלג על קבצי CLAUDE.md מסוימים כש Claude Code טוען זיכרון. במונורפו גדול, השתמש בזה כדי לדלג על קבצי CLAUDE.md של צוותים אחרים שאינם רלוונטיים לעבודה שלך. החרגת קבצי CLAUDE.md לא רלוונטיים במדריך לבסיסי קוד גדולים עוברת על המקרה הזה. התבניות נבדקות מול נתיבי קבצים מוחלטים.
- היקף:
כל קובץ - סוג: מערך של מחרוזות, כל אחת תבנית glob או נתיב מוחלט
- ברירת מחדל: לא מוגדר, כך ש Claude Code טוען כל CLAUDE.md שהוא מוצא
{
"claudeMdExcludes": ["**/vendor/**/CLAUDE.md"]
}ההחרגות חלות רק על קבצי זיכרון של משתמש, פרויקט ומקומיים. אי אפשר להחריג קבצי CLAUDE.md של מדיניות מנוהלת.
#env
מגדיר משתני סביבה לכל סשן ולתהליכי המשנה שקלוד קוד מפעיל ממנו. רוב המשתנים בהפניה למשתני סביבה יכולים להופיע כאן, וכך מיישמים משתנה על כל סשן או מפיצים אותו לצוות. הגדרות פרויקט והגדרות מקומיות לא יכולות להגדיר חלק מהם.
- Scope:
Any file - Type: אובייקט שממפה שמות משתנים לערכי מחרוזת
- Default: לא מוגדר
הדוגמה הזו מכבה דחיסה אוטומטית ומנתבת בקשות API דרך פרוקסי:
{
"env": {
"DISABLE_AUTO_COMPACT": "1",
"ANTHROPIC_BASE_URL": "https://proxy.example.com"
}
}#איך ערכי env מתנהגים מול המעטפת
- ערך כאן דורס את אותו משתנה שיוצא במעטפת, וכשיותר מקובץ הגדרות אחד מגדיר משתנה, חל זה עם הקדימות הגבוהה ביותר. משתנים שקלוד קוד מתעלם מהם ב-
envמפרט את החריגים להגדרות פרויקט ולהגדרות מקומיות. - כשאפליקציית Claude Desktop או רץ של סביבה מתארחת עצמית מפעילים את הסשן, סביבת ההפעלה שהוא בונה מקבלת קדימות במקום: קלוד קוד מתעלם מערך
envמכל קובץ הגדרות למשתנה שסביבת ההפעלה כבר מגדירה. יומן הדיבוג מציין כל משתנה שהתעלמו ממנו. - כדי לבטל ייצוא של המעטפת, מגדירים את המשתנה ל-
"". קלוד קוד מתייחס לערך ריק כלא מוגדר לבחירת ספק, ותהליכי משנה יורשים את הערך הריק. NO_COLORו-FORCE_COLORשמוגדרים כאן מגיעים רק לתהליכי משנה. כדי לשנות את צבעי הממשק של קלוד קוד עצמו, מגדירים אותם במעטפת לפני שמפעילים אתclaude.- הערכים כאן הם טקסט רגיל בקובץ ההגדרות ומגיעים לכל תהליך משנה שקלוד קוד מפעיל. עבור אסימון bearer של OTLP שמתחלף, משתמשים ב-
otelHeadersHelper. עבור אישורי API, משתמשים ב-apiKeyHelper.
#מתי קלוד קוד מיישם ערכי env
- מהגדרות משתמש,
--settingsוהגדרות מנוהלות: בהפעלה, ושוב בסשן הפעיל כששינוי שנשמר משנה אתenvהממוזג. - מהגדרות פרויקט והגדרות מקומיות: אחרי שסומכים על סביבת העבודה, או בהפעלה במצב
-p, שלעולם לא מציג את דו שיח האמון, ושוב כששינוי שנשמר משנה אתenvהממוזג. - משתנים שקלוד קוד מסווג כבטוחים, כמו בחירת מודל, פסקי זמן ומגבלות, ומתגי תכונות: בהפעלה מכל קובץ הגדרות, מלבד המשתנים שהגדרות פרויקט והגדרות מקומיות לא יכולות להגדיר.
- אחרי העברת הסשן עם
/cdבגרסה v2.1.246 או מאוחרת יותר: ערכיenvשל הפרויקט ושל ההגדרות המקומיות בתיקייה החדשה, מעל אלה של התיקייה הקודמת.
#משתנים שקלוד קוד מתעלם מהם ב-env
הגדרות פרויקט והגדרות מקומיות לא יכולות להגדיר משתנים שמאגר שנמשך לא אמור לשלוט בהם. מגדירים אותם במעטפת, בהגדרות משתמש או בהגדרות מנוהלות. קלוד קוד משמיט כל אחד מהם, מלבד כמה ערכים שמכבים טלמטריה, ורושם אזהרה שאפשר לראות עם
claude --debug. הם כוללים:משתנים שבוחרים איפה קלוד קוד מאחסן או כותב את הקבצים שלו:
CLAUDE_CONFIG_DIR,CLAUDE_CODE_TMPDIR, ומשתני תיקיות של מערכת ההפעלה כמוHOME,TMPDIR,TMP,TEMPומשפחתXDG_*.משתני Windows שבוחרים את התוכניות ואת התצורה ברמת המכונה לתהליכים שקלוד קוד מפעיל, כמו
SystemRoot,ComSpec,ProgramData,LOCALAPPDATA,PATHEXT,PSModulePathומשפחתProgramFiles.משתנים שמייצאים תוכן סשן:
OTEL_LOG_RAW_API_BODIESוצמד המעקב המפורט של הבטאENABLE_BETA_TRACING_DETAILEDו-BETA_TRACING_ENDPOINT.משתני מייצא OpenTelemetry שמפעילים טלמטריה, בוחרים לאן היא הולכת, או בוחרים איזה תוכן היא לוכדת:
CLAUDE_CODE_ENABLE_TELEMETRY, ועוד צמד הבטא של הטלמטריה המורחבתCLAUDE_CODE_ENHANCED_TELEMETRY_BETAו-ENABLE_ENHANCED_TELEMETRY_BETA- בוררי המייצא
OTEL_LOGS_EXPORTER,OTEL_METRICS_EXPORTERו-OTEL_TRACES_EXPORTER - משתני התוכן
OTEL_LOG_USER_PROMPTS,OTEL_LOG_ASSISTANT_RESPONSES,OTEL_LOG_TOOL_CONTENTו-OTEL_LOG_TOOL_DETAILS - משתני
OTEL_EXPORTER_OTLP_*ששמם מסתיים ב-_ENDPOINT,_HEADERS,_PROTOCOL,_CERTIFICATE,_CLIENT_KEYאו_INSECURE, בצורה הכללית ובצורה לפי אות, כמוOTEL_EXPORTER_OTLP_ENDPOINTו-OTEL_EXPORTER_OTLP_METRICS_HEADERS OTEL_EXPORTER_PROMETHEUS_HOSTו-OTEL_EXPORTER_PROMETHEUS_PORT
רק הערכים האלה עדיין חלים מהגדרות פרויקט ומהגדרות מקומיות, כי הם מכבים משהו:
noneלשלושת בוררי המייצא, וערך כיבוי כמו0עבורOTEL_LOG_USER_PROMPTS,OTEL_LOG_TOOL_CONTENTו-OTEL_LOG_TOOL_DETAILS. ערך כזה דורס את אותו משתנה בהגדרות המשתמש, אבל לא ערך שסביבת ההפעלה של קלוד קוד, קובץ--settingsאו הגדרות מנוהלות מגדירים.כשקובץ הגדרות פרויקט או הגדרות מקומיות מגדיר משתנה בקבוצה הזו, סשן אינטראקטיבי מקומי מציג הודעה בהפעלה. מריצים
/statusאוclaude doctorכדי לראות מאילו קלוד קוד התעלם ואילו כיבו טלמטריה. שניהם מציגים שמות, אף פעם לא ערכים. הרצה לא אינטראקטיבית עם-pאו סשן Agent SDK לא מציגה הודעה, לכן בודקים שהאוסף עדיין מקבל נתונים אחרי שדרוג. אם לא, מגדירים את המשתנים בהגדרות המשתמש, בהגדרות מנוהלות, בסביבת המשימה, או בקובץ שמעבירים עם--settings.התעלמות מהקבוצה הזו בהגדרות פרויקט ובהגדרות מקומיות דורשת קלוד קוד v2.1.282 או מאוחר יותר.
משתנים שמשנים איך קלוד קוד מופעל או מסתנכרן, כמו
CLAUDE_CODE_PROCESS_WRAPPER,CLAUDE_CODE_SYNC_SKILLS,CLAUDE_CODE_SYNC_PLUGINS,CLAUDE_CODE_PLUGIN_CACHE_DIRו-CLAUDE_CODE_PLUGIN_SEED_DIR.משתנים שמגדירים את הכניסה ל-claude.ai, כמו
CLAUDE_CODE_OAUTH_TOKEN,CLAUDE_CODE_OAUTH_REFRESH_TOKENו-CLAUDE_CODE_OAUTH_SCOPES.משתנה מצב קורא מסך
CLAUDE_AX_SCREEN_READERוהמשתנים האחרים ששמם מתחיל ב-CLAUDE_AX_, כמוCLAUDE_AX_STARTUP_QUIET_MS.CLAUDE_CODE_USER_DIALOG_TIMEOUT_MS, שמגדיר את הטיימר על דו שיח שלא נענה.CLAUDE_CODE_DISABLE_ATTACHMENTS, שמכבה עיבוד קבצים מצורפים.CLAUDE_CODE_DISABLE_FILE_MENTIONS, שעוצר את קלוד קוד מהרחבת אזכורי@של קבצים ותיקיות.
לפני v2.1.251, הגדרות פרויקט והגדרות מקומיות יכלו גם להגדיר את המשתנים ברשימה הזו שבוחרים איפה קלוד קוד כותב את הקבצים שלו או שמייצאים תוכן סשן, מלבד
HOMEו-XDG_CONFIG_HOME. לפני v2.1.290, הן יכלו גם להגדיר את משתני טיימר הדו שיח ואתCLAUDE_CODE_DISABLE_ATTACHMENTS.משתני זהות שסביבות האירוח של קלוד קוד מחזיקות, כמו
CLAUDE_CODE_REMOTEו-CLAUDE_CODE_ACCOUNT_UUID, מתעלמים מהם מכל קובץ.CLAUDE_CODE_MESSAGING_SOCKETו-CLAUDE_CODE_MESSAGING_TOKEN, שקלוד קוד מייצא בעצמו, מתעלמים מהם מכל קובץ. התעלמות ממשתנה הסוקט דורשת קלוד קוד v2.1.224 או מאוחר יותר, והתעלמות מהאסימון דורשת v2.1.228 או מאוחר יותר.CLAUDE_CODE_PROJECT_DIR_NAME, שקלוד קוד קורא רק מסביבת ההפעלה, מתעלמים ממנו מכל קובץ. דורש v2.1.234 או מאוחר יותר.CLAUDE_CODE_RESTRICTED, שקלוד קוד קורא רק מסביבת ההפעלה, מתעלמים ממנו מכל קובץ.CLAUDE_CODE_DISABLE_POWERSHELL_CMD_RM_DENY, שקלוד קוד קורא רק מסביבת ההפעלה, מתעלמים ממנו מכל קובץ. המשתנה דורש קלוד קוד v2.1.283 או מאוחר יותר.CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT,CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT,CLAUDE_CODE_DISABLE_INLINE_SHELL_RM_PROMPTו-CLAUDE_CODE_DISABLE_MOUNTED_DRIVE_RM_PROMPT, שקלוד קוד קורא רק מסביבת ההפעלה, מתעלמים מהם מכל קובץ.CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS, שקלוד קוד קורא רק מסביבת ההפעלה, מתעלמים ממנו מכל קובץ.CLAUDE_CODE_WARN_DISK_FREE_GIBו-CLAUDE_CODE_WARN_MEMORY_FREE_GIB, שקלוד קוד קורא רק מסביבת ההפעלה, מתעלמים מהם מכל קובץ. המשתנים דורשים קלוד קוד v2.1.304 או מאוחר יותר.
#fileCheckpointingEnabled
גורם לקלוד קוד לצלם קבצים לפני כל עריכה כדי ש-/rewind יוכל לשחזר אותם. מופיע ב-/config כ-Rewind code (checkpoints), והחלפת המצב שם כותבת את המפתח הזה להגדרות המשתמש.
- Scope:
Any file - Type: בוליאני
true: קלוד קוד מצלם קבצים לפני כל עריכה כדי ש-/rewindיוכל לשחזר אותםfalse: קלוד קוד לא מצלם קבצים, ולכן/rewindלא יכול לשחזר אותם
- Default:
true - Per-session overrides:
CLAUDE_CODE_DISABLE_FILE_CHECKPOINTINGמכבה צילום נקודות ביקורת לסשן אחד. מי משניהם שמכבה אותו, השני לא יכול להפעיל אותו בחזרה
{
"fileCheckpointingEnabled": false
}בהרצת -p או בסשן Agent SDK, קלוד קוד מתעלם מהמפתח הזה. ה-SDK מפעיל צילום נקודות ביקורת עם האפשרות enableFileCheckpointing, והרצת -p בלי תוספות צריכה CLAUDE_CODE_ENABLE_SDK_FILE_CHECKPOINTING=true. ראו File checkpointing in the Agent SDK.
#idleCompaction
דחיסת סרק דוחסת שיחה ארוכה שהתרחקת ממנה. ההודעה הבאה שולחת אז סיכום במקום את כל השיחה. אחרי הדחיסה, השיחה מציגה הודעה:
- Terminal: שורה שמתחילה ב-
Compacted while idle, before the prompt cache expired - לוח הצ'אט של VS Code: הודעה שכוללת
a summary written while you were away - אפליקציית שולחן העבודה: אותה הודעה, בתוך שורה שהתווית שלה כוללת
Claude Code notice. אם לא רואים את השורה או את הטקסט שלה, עוברים ל-מצב תצוגה Verbose.
דחיסת סרק פועלת כברירת מחדל לשיחות שעומדות בכל התנאים האלה:
- Session: אתם בסשן טרמינל אינטראקטיבי, בלוח הצ'אט של תוסף VS Code, או בלשונית Code של אפליקציית שולחן העבודה כשהסשן רץ על המחשב או דרך SSH
- Auto-compaction:
autoCompactEnabledפועל - Prompt cache: השיחה נמצאת על TTL של מטמון הפרומפט לשעה
- Size: ההקשר של השיחה הגיע לסף האסימונים, שאפשר לשנות מברירת המחדל של 200,000
- Idle time: עברה בערך שעה מאז הבקשה האחרונה, והמחשב נשאר ער עד אז
כדי לכבות דחיסת סרק, מגדירים את המפתח הזה ל-false.
- Scope:
Any file - Type: בוליאני
true: קלוד קוד דוחס שיחות סרק שעומדות בתנאיםfalse: קלוד קוד לא דוחס בזמן שהסשן בסרק
- Default:
true - Per-session overrides:
DISABLE_AUTO_COMPACTמכבה דחיסת סרק יחד עם דחיסה אוטומטית
{
"idleCompaction": false
}כדי לכבות או להפעיל דחיסת סרק מתוך סשן טרמינל, מריצים /config ומשנים את השורה Idle compaction. הבחירה נשמרת בהגדרות המשתמש וחלה מיד. השורה דורשת קלוד קוד v2.1.302 או מאוחר יותר. אם מריצים אחת מהגרסאות האלה ו-/config לא מציג את השורה, בודקים את הסיבות האלה:
- Another settings source sets the key: ערך בהגדרות מנוהלות, בדגל
--settings, או בקובץ הגדרות פרויקט או הגדרות מקומיות דורס את הגדרות המשתמש. משנים את המפתח במקור הזה - Feature flags are unavailable on a version before v2.1.314: כשקלוד קוד לא יכול למשוך דגלי תכונות מ-Anthropic, דחיסת סרק לא רצה, ולכן אין מה לכבות
המפתח דורש קלוד קוד v2.1.290 או מאוחר יותר. בגרסה מוקדמת יותר, שמתעלמת מהמפתח הזה, מכבים את autoCompactEnabled כדי לעצור דחיסת סרק.
#שינוי סף דחיסת הסרק
מגדירים את CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS למספר האסימונים שההקשר של שיחה חייב להגיע אליו לפני שדחיסת סרק חלה עליה. משתמשים במספר שלם חיובי. ערכים מתחת ל-100000 מועלים ל-100000, הסף הנמוך ביותר.
כברירת מחדל, שיחה על חלון הקשר של 200K נדחסת אוטומטית לפני שהיא מגיעה ל-200,000 אסימונים. הדוגמה הזו מורידה את הסף ל-150,000 כדי שהשיחות האלה יתאימו:
{
"env": {
"CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS": "150000"
}
}#דחיסת סרק ב-VS Code ובאפליקציית שולחן העבודה
הודעה כמו זו אומרת שקלוד קוד החליף את השיחה הקודמת בסיכום שקלוד עובד ממנו עכשיו:
Compacted using a summary written while you were away · turn off with "idleCompaction": false in settings.jsonלא צריך לעשות כלום. כדי לכבות דחיסת סרק, מגדירים את idleCompaction ל-false ב-~/.claude/settings.json במכונה או בהפצת WSL שבה הסשן רץ, או בקובץ הגדרות אחר.
#plansDirectory
בוחר איפה קלוד קוד מאחסן את קבצי התוכנית שהוא כותב במצב תוכנית. קלוד קוד פותר את הנתיב ביחס לשורש הפרויקט.
- Scope:
Any file - Type: מחרוזת, נתיב יחסי לשורש הפרויקט
- Default: לא מוגדר, ולכן קלוד קוד משתמש ב-
~/.claude/plans
{
"plansDirectory": "./plans"
}קלוד קוד מאחסן תוכניות ב-~/.claude/plans במקום בתיקייה שהוגדרה במקרים כמו אלה:
- Outside the project root: הנתיב נפתר מחוץ לשורש הפרויקט, כמו ש-
"../plans"עושה. - Backslash on macOS, Linux, and WSL: הנתיב שנפתר מכיל לוכסן הפוך, כמו ש-
"docs\\plans"בסגנון Windows עושה. כותבים"docs/plans", שפועל גם ב-Windows.
#skillListingBudgetFraction
בכל תור, קלוד רואה רשימה של הכישורים עם התיאורים שלהם, וקלוד קוד מגביל את הרשימה הזו לחלק מחלון ההקשר. כשהרשימה עוברת את התקרה, קלוד קוד שומר את השם של כל כישור אבל משמיט את התיאורים של הכישורים בשימוש הנמוך ביותר, כך שקלוד עדיין יכול להפעיל את הכישורים האלה אבל פחות סביר שיבחר אחד בעצמו. מעלים את המפתח הזה כדי לשמור יותר תיאורים גלויים במחיר של יותר הקשר בכל תור.
- Scope:
Any file - Type: מספר, שבר גדול מ-
0ולכל היותר1 - Default:
0.01, ששומר 1% מחלון ההקשר
{
"skillListingBudgetFraction": 0.02
}כדי לראות כמה הקשר הרשימה משתמשת ואילו כישורים תורמים הכי הרבה, מריצים /doctor.
#skillListingMaxDescChars
בכל תור, קלוד רואה רשימה של הכישורים שמציגה את הטקסט description ו-when_to_use של כל כישור. המפתח הזה מגביל כמה תווים מהטקסט הזה קלוד קוד מציג לכל כישור. טקסט ארוך יותר נחתך בתקרה.
- Scope:
Any file - Type: מספר תווים, מספר שלם חיובי
- Default:
1536
{
"skillListingMaxDescChars": 2048
}מעלים אותו כדי לשמור תיאורים ארוכים שלמים במחיר של יותר הקשר בכל תור. מורידים אותו כדי להתאים יותר כישורים תחת skillListingBudgetFraction.
#taskOutputMaxChars
[!WARNING]
הוסר ב-v2.1.277, יחד עם כלי
TaskOutputשאותו הוא קבע בגודל. הגדרה שלו לא משפיעה על הגרסאות הנוכחיות. קלוד קורא את קובץ הפלט של משימת רקע עםReadבמקום.
עד v2.1.276, מגדירים את המפתח הזה למספר התווים מפלט של משימת רקע שקלוד קיבל בשורה כשקרא את המשימה עם הכלי TaskOutput.
#ממשק וטרמינל
שנו את האופן שבו Claude Code נראה ומתנהג בטרמינל: ערכת נושא, מצב עורך, שורת סטטוס, ספינר, התראות בתוך הסשן, ונגישות. ראו הגדרת טרמינל.
#askUserQuestionTimeout
אפשרו לדיאלוג AskUserQuestion שלא נענה להמשיך אוטומטית אחרי פרק זמן של חוסר פעילות, ולשלוח את האפשרויות שכבר בחרתם. הגדירו אותו כשאתם מתרחקים ורוצים ש-Claude ימשיך בלעדיכם. בברירת המחדל, שאלות ממתינות עד שתענו עליהן. למקרים שבהם הטיימר מושהה או לא מתחיל כלל, ראו זמן קצוב להמשך אוטומטי של שאלה.
- היקף:
משתמש או מנוהל - סוג: מחרוזת, אחת מבין
"60s","5m","10m", או"never" - ברירת מחדל:
"never"
{
"askUserQuestionTimeout": "5m"
}מופיע ב-/config בשם Question auto-continue timeout, שכותב את המפתח הזה להגדרות המשתמש. Claude Code מסתיר את השורה כל עוד הגדרות מנוהלות או הדגל --settings מגדירים את המפתח.
#autoContinueAtUsageLimit
אחרי שמגבלת שימוש של claude.ai עוצרת את הסשן, המתינו בסשן הפתוח והמשיכו את המשימה אוטומטית אחרי האיפוס. ראו כיבוי המשך האוטומטי. נדרש Claude Code בגרסה v2.1.234 או חדשה יותר.
- היקף:
משתמש או מנוהל. נקרא מהגדרות משתמש, מ---settingsומהגדרות מנוהלות בלבד. כשאף אחד מאלה לא מגדיר את המפתח, קובץ הגדרות של פרויקט או קובץ הגדרות מקומי שמגדיר אותו מכבה את היכולת, במקום שהערך יתעלם. - סוג: בוליאני
true: אחרי שמגבלת שימוש של claude.ai עוצרת את הסשן, Claude Code ממתין בסשן הפתוח וממשיך את המשימה אוטומטית אחרי האיפוסfalse: Claude Code לא מתחיל את ההמתנה בעצמו. עדיין אפשר להתחיל המתנה בעצמכם מתפריט האפשרויות של מגבלת השימוש
- ברירת מחדל:
true
{
"autoContinueAtUsageLimit": false
}מופיע ב-/config בשם Continue automatically at usage limit, שכותב את המפתח הזה להגדרות המשתמש. Claude Code מסתיר את השורה כל עוד הגדרות מנוהלות או הדגל --settings מגדירים את המפתח.
#autoScrollEnabled
עקבו אחרי פלט חדש עד לתחתית השיחה ברינדור במסך מלא. כבו את זה כדי להישאר במקום שאליו גללתם בזמן ש-Claude ממשיך לעבוד. בקשות הרשאה עדיין נגללות לתצוגה.
- היקף:
כל קובץ - סוג: בוליאני
true: השיחה עוקבת אחרי פלט חדש עד לתחתיתfalse: נשארים במקום שאליו גללתם בזמן ש-Claude ממשיך לעבוד. בקשות הרשאה עדיין מופיעות מתחת לתמליל
- ברירת מחדל:
true
{
"autoScrollEnabled": false
}מופיע ב-/config בשם Auto-scroll כשרינדור במסך מלא פעיל, שכותב את המפתח הזה להגדרות המשתמש.
#axScreenReader
הציגו פלט ידידותי לקורא מסך: טקסט שטוח בלי מסגרות דקורטיביות או אנימציות. מצב קורא מסך משתמש במרנדר הקלאסי, ולכן להגדרת tui אין השפעה כל עוד הוא פעיל. סשנים ברקע שמחוברים עדיין מוצגים במסך מלא.
- היקף:
משתמש או מנוהל. אפשר גם להגדיר את המפתח בקובץ שמועבר עם--settings. Claude Code מתעלם מהמפתח בהגדרות פרויקט ובהגדרות מקומיות, כך שמאגר לא יכול, וגם הקובץ.claude/settings.local.jsonשלכם לא יכול, להפעיל או לכבות מצב קורא מסך. - סוג: בוליאני
true: Claude Code מציג טקסט שטוח בלי מסגרות דקורטיביות או אנימציות, באמצעות המרנדר הקלאסיfalse: Claude Code מציג כרגיל
- ברירת מחדל: לא מוגדר, ולכן מצב קורא מסך כבוי
- עקיפות לכל סשן:
--ax-screen-readerגובר עלCLAUDE_AX_SCREEN_READER, ושניהם גוברים על המפתח הזה לסשן אחד
{
"axScreenReader": true
}#bashEditDiffEnabled
בחרו אם Claude Code מתעד אילו קבצים השתנו במאגר Git בזמן שפקודת Bash רצה. כשהוא מתעד אותם, רואים את ה-diff שלהם בטרמינל אחרי הפקודה, והוקים של PostToolUse ל-Bash מקבלים את רשימת הקבצים שהשתנו.
קובץ שמופיע ברשימה הוא לא תמיד קובץ שהפקודה שינתה. שינוי שתוכנית אחרת או קריאת Bash אחרת עשו בזמן שהפקודה רצה יכול להופיע שם גם כן.
הגדירו את המפתח ל-true כדי לתעד אותם בכל מצב הרשאה. נדרש Claude Code בגרסה v2.1.269 או חדשה יותר.
- היקף:
משתמש או מנוהל. ערךtrueנספר רק כשהוא מגיע מהגדרות המשתמש שלכם, מ-JSON שמועבר עם--settings, או מהגדרות מנוהלות, כך ש-trueבקובץ.claude/settings.jsonאו.claude/settings.local.jsonשל מאגר לא יכול להפעיל את התיעוד. ערךfalseבכל אחד מקבצי המאגר עדיין מכבה את התיעוד, אלא אם קובץ בקדימות גבוהה יותר מגדירtrue. - סוג: בוליאני
- ברירת מחדל: לא מוגדר, ולכן Claude Code מתעד שינויים במצב auto ובמצב
bypassPermissionsכשהוא מכוון את Claude לערוך קבצים דרך Bash - עקיפות לכל סשן:
CLAUDE_CODE_BASH_EDIT_DIFFגובר על המפתח הזה לסשן אחד
{
"bashEditDiffEnabled": true
}#companyAnnouncements
הציגו את ההודעות של הארגון למשתמשים בהפעלה. כשמציינים יותר מאחת, Claude Code בוחר אחת באקראי לכל סשן. בהפעלה הראשונה של אדם מוצגת הרשומה הראשונה.
- היקף:
כל קובץ - סוג: מערך של מחרוזות
- ברירת מחדל: לא מוגדר, ולכן לא מוצגת הודעה
{
"companyAnnouncements": [
"Welcome to Acme Corp! Review our code guidelines at docs.example.com"
]
}#defaultShell
בחרו אם Bash או PowerShell מריצים את פקודות המעטפת שאתם מקלידים עם הקידומת ! בתיבת הקלט, אלה ש-Claude Code מריץ ישירות ומוסיף לסשן.
"powershell" פועל רק כשכלי PowerShell פעיל. הכלי פעיל כברירת מחדל ב-Windows בלי Git Bash, וב-Windows עם Git Bash עבור חשבונות claude.ai ו-Console. בסשנים של Amazon Bedrock, Google Cloud's Agent Platform ו-Microsoft Foundry, וב-macOS, Linux ו-WSL, הגדירו CLAUDE_CODE_USE_POWERSHELL_TOOL=1 כדי להפעיל את הכלי. הגדירו את המשתנה ל-0 כדי לכבות את הכלי.
- היקף:
כל קובץ - סוג: מחרוזת, אחת מבין:
"bash": Claude Code מריץ את פקודות!שלכם ב-Bash"powershell": Claude Code מריץ את פקודות!שלכם ב-PowerShell
- ברירת מחדל:
"bash", או"powershell"ב-Windows כש-Bash לא זמין
{
"defaultShell": "powershell"
}אם המעטפת שציינתם לא זמינה, Claude Code משתמש באחרת: "powershell" עובר ל-Bash כשכלי PowerShell כבוי, ו-"bash" עובר ל-PowerShell כש-Bash לא מותקן.
#dialogExpiry
הגדירו את המועד האחרון לדיאלוגים ש-Claude Code מעביר ללקוח מרוחק, כגון מארח Remote Control או SDK, ולדיאלוג האישור של הודעה בין סשנים שמוחזקת. ב-Claude Code v2.1.236 או חדש יותר, אותו מועד אחרון תוחם את בקשת ההסכמה לקרדיטי השימוש של Fable באמצע הסשן, בסשן שאולי אין בו אף אחד ליד הטרמינל. כשלא מגיעה תשובה לפני המועד האחרון, Claude Code מבטל את הדיאלוג וממשיך עם ברירת המחדל של חוסר פעולה. נדרש Claude Code בגרסה v2.1.224 או חדשה יותר.
- היקף:
משתמש או מנוהל - סוג: מחרוזת, אחת מבין
"60s","5m","10m", או"never", שמבטל את המועד האחרון - ברירת מחדל:
"5m" - עקיפות לכל סשן:
CLAUDE_CODE_USER_DIALOG_TIMEOUT_MSגובר על המפתח הזה לסשן אחד
{
"dialogExpiry": "10m"
}בקשות הרשאה ושאלות AskUserQuestion משתמשות בתהליכים משלהן, והמועד האחרון הזה לא חל עליהן. מופיע ב-/config בשם Dialog expiry, שכותב את המפתח הזה להגדרות המשתמש. השורה דורשת Claude Code בגרסה v2.1.232 או חדשה יותר, ו-Claude Code מסתיר אותה כל עוד הגדרות מנוהלות או הדגל --settings מגדירים את המפתח.
#editorMode
בחרו את מצב קיצורי המקשים לשורת הקלט.
- היקף:
כל קובץ - סוג: מחרוזת, אחת מבין:
"normal": קיצורי מקשים סטנדרטיים בקלט השורה"vim": עריכה בסגנון vim עם המצבים NORMAL, INSERT ו-VISUAL
- ברירת מחדל:
"normal"
{
"editorMode": "vim"
}מופיע ב-/config בשם Editor mode, שכותב את המפתח הזה להגדרות המשתמש.
#emojiCompletionEnabled
הציגו הצעות אימוג'י כשמקלידים : ואחריו shortcode בקלט השורה, והחליפו shortcode שהושלם כגון :heart: באימוג'י שלו. הגדירו ל-false כדי לכבות את שניהם.
- היקף:
כל קובץ - סוג: בוליאני
true: Claude Code מציג הצעות אימוג'י אחרי:ומחליף shortcode שהושלם באימוג'י שלוfalse: Claude Code לא מציע אימוג'י ולא מחליף shortcodes
- ברירת מחדל:
true
{
"emojiCompletionEnabled": false
}ראו קודי קיצור לאימוג'י.
#fileSuggestion
הריצו פקודה משלכם כדי לספק השלמה אוטומטית של נתיב קובץ עם @, במקום הצעת הקבצים המובנית. ההצעה המובנית משתמשת במעבר מהיר על מערכת הקבצים. מונורפו גדול עשוי להסתדר טוב יותר עם אינדוקס ייעודי לפרויקט, כגון אינדקס קבצים שנבנה מראש.
- היקף:
כל קובץ. תחת השערים של שורת הסטטוס והצעת קבצים, Claude Code מכבה את הפקודה או מריץ רק ערך מנוהל, ומדלג על הערך שלכם בלי אזהרה. - סוג: אובייקט עם
type, תמיד"command", ו-command, פקודת המעטפת להרצה - ברירת מחדל: לא מוגדר, ולכן Claude Code משתמש בהצעת הקבצים המובנית
{
"fileSuggestion": {
"type": "command",
"command": "~/.claude/file-suggestion.sh"
}
}אחרי השמירה, הקלידו @ ואחריו חלק מנתיב בשורה: ההצעות מגיעות מפלט הפקודה שלכם.
#קלט ופלט של הפקודה
Claude Code מריץ את הפקודה עם אותם משתני סביבה כמו הוקים, כולל CLAUDE_PROJECT_DIR, ומפסיק להמתין אחרי חמש שניות. הפקודה מקבלת JSON ב-stdin עם שדה query שמכיל את מה שהקלדתם עד כה:
{"query": "src/comp"}הדפיסו נתיבי קבצים מופרדים בשורות חדשות ל-stdout. Claude Code מציג לכל היותר 15:
src/components/Button.tsx
src/components/Modal.tsx
src/components/Form.tsxהסקריפט הבא קורא את השאילתה ומעביר אותה לאינדקס קבצים של המאגר:
#!/bin/bash
query=$(cat | jq -r '.query')
# Replace your-repo-file-index with your own file search command
your-repo-file-index --query "$query" | head -20#footerLinksRegexes
הציגו תגים לחיצים נוספים בכותרת התחתונה שמתחת לתיבת הקלט, כשביטוי רגולרי תואם לפלט של תור: תוצאות כלים, כולל תוכן קבצים ודפים שנשלפו, והתשובות של Claude עצמו. השתמשו בזה כדי להפוך מזהים שמדפיסים כלי CLI של הפרויקט, כגון כלי סקירה וכלי מעקב תקלות, לקישורים בסשן.
- היקף:
משתמש או מנוהל - סוג: מערך של אובייקטים, כל אחד עם
typeשמוגדר ל-"regex", ביטויpattern, תבניתurl, ו-labelאופציונלי. מצייני מקום{name}ב-urlוב-labelמתמלאים מקבוצות לכידה בעלות שם ב-pattern - ברירת מחדל: לא מוגדר, ולכן לא מוצגים תגים
הדוגמה הזו מתאימה למפתחות תקלה כגון PROJ-1234 ובונה כל קישור מהמפתח שנלכד:
{
"footerLinksRegexes": [
{
"type": "regex",
"pattern": "\\b(?<key>PROJ-\\d+)\\b",
"url": "https://issues.example.com/browse/{key}",
"label": "{key}"
}
]
}עם ההגדרה הזו, כש-PROJ-1234 מופיע בתוצאת כלי או בתשובה של Claude, תג PROJ-1234 מופיע בכותרת התחתונה ומקשר אל https://issues.example.com/browse/PROJ-1234.
#מגבלות תג
ה-URL, התווית ומספר התגים של כל רשומה מוגבלים כך:
| מגבלה | התנהגות |
|---|---|
| origin של ה-URL | ערכים שנלכדו מקודדים ל-URL, וה-URL שנבנה חייב לחלוק את ה-origin המילולי של התבנית. לכידה יכולה למלא מקטע נתיב או ערך שאילתה, אבל לא יכולה לשנות את היעד שאליו הקישור מצביע |
| אורך ה-URL | כתובות URL שנבנו וארוכות מ-2048 תווים מושמטות |
| סכמת ה-URL | חייבת להיות https, http, או סכמת deep link מוכרת של עורך או סביבת עבודה: vscode, vscode-insiders, cursor, windsurf, zed, jetbrains, idea, slack, linear, notion, figma |
| תווית | ברירת המחדל היא הטקסט שתאם, והיא נחתכת ל-28 עמודות תצוגה |
| מספר תגים | מוצגים לכל היותר 5 תגים. הישן ביותר מוזז על ידי התאמות חדשות יותר, ו-/clear מסיר אותם |
כשתור מסתיים, Claude Code מתאים את ביטוי ה-pattern של כל רשומה מול פלט התור בשרשור הראשי, ולכן ביטוי רגולרי איטי חוסם את ממשק המשתמש עד שהוא מסתיים. מכמתים מקוננים כגון (a+)+$ יכולים לקחת זמן מעריכי מול קלטים מסוימים ולהקפיא את הסשן, לכן שמרו על כל pattern לינארי והימנעו מקינון של + או *.
תגי הכותרת התחתונה מוצגים לצד שורת סטטוס מותאמת כשאחת מוגדרת. אף אחד מהם לא מחליף את השני. השתמשו בשורת סטטוס לשורה מונעת סקריפט שמחשבת את התוכן שלה מנתוני הסשן, ובתגי הכותרת התחתונה כדי להפוך מזהים מהשיחה לקישורים בלי סקריפט.
#keybindingFlavor
[!WARNING]
הוצא משימוש מאז v2.1.261 ואין לו השפעה. מקשי עריכת המילים של השורה תמיד עוקבים אחרי מוסכמות readline, כמו ב-Bash. Claude Code עדיין מקבל את
keybindingFlavor, כך שקובץ הגדרות שמגדיר אותו נשאר תקין.
בגרסאות v2.1.238 עד v2.1.260, הגדרה ל-"readline" גרמה ל-Ctrl+W למחוק אחורה עד לרווח הלבן הקודם, במקום רק את המילה הקודמת.
- היקף:
כל קובץ - סוג: מחרוזת,
"classic"או"readline" - ברירת מחדל: לא מוגדר
#maxProseWidth
הגבילו את רוחב הפרוזה בתשובות של Claude כדי שהשורות יישארו קריאות בטרמינל רחב. פסקאות, כותרות, רשימות וציטוטים נשברים בתוך מספר העמודות הזה, בעוד שטבלאות ובלוקי קוד שומרים על מלוא רוחב הטרמינל. נדרש Claude Code בגרסה v2.1.282 או חדשה יותר.
- היקף:
כל קובץ - סוג: מספר עמודות טרמינל, מספר שלם, מינימום
40. Claude Code מתעלם מכל ערך אחר - ברירת מחדל: לא מוגדר, ולכן הפרוזה נשברת בקצה הטרמינל
{
"maxProseWidth": 80
}#prefersReducedMotion
צמצמו או כבו אנימציות ממשק כגון הספינר, אפקט ה-shimmer ואפקטי הבזק. מופיע ב-/config בשם Reduce motion.
- היקף:
כל קובץ - סוג: בוליאני
true: Claude Code מצמצם או מכבה אנימציות ממשק כגון הספינר, אפקט ה-shimmer ואפקטי הבזקfalse: זהה למצב לא מוגדר. Claude Code מציג את האנימציות שלו
- ברירת מחדל:
false
{
"prefersReducedMotion": true
}#promptSuggestionEnabled
הציגו או הסתירו הצעות פרומפט, התחזיות באפור שמופיעות בקלט הפרומפט שלכם. הגדירו ל-false, או כבו את Prompt suggestions ב-/config, כדי להסתיר אותן.
- היקף:
כל קובץ - סוג: בוליאני
true: רואים הצעות פרומפט בקלט הפרומפטfalse: Claude Code מסתיר הצעות פרומפט
- ברירת מחדל:
true - עקיפות לכל סשן:
CLAUDE_CODE_ENABLE_PROMPT_SUGGESTIONגובר על המפתח הזה לסשן אחד
{
"promptSuggestionEnabled": false
}הצעות פרומפט דורשות חשבון claude.ai או Console עם טלמטריה מופעלת. ב-Amazon Bedrock, ב-Google Cloud's Agent Platform וב-Microsoft Foundry, או כשהטלמטריה כבויה, למשל באמצעות DISABLE_TELEMETRY, למפתח הזה אין השפעה ורק CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION=1 מפעיל אותן.
#respectGitignore
קבעו אם בורר הקבצים של @ משמיט קבצים שתואמים לדפוסי .gitignore. מופיע ב-/config בשם Respect .gitignore in file picker.
- היקף:
כל קובץ. כשאף קובץ הגדרות לא מגדיר אותו, Claude Code חוזר ל-respectGitignoreב-~/.claude.json, שהמתג ב-/configכותב. - סוג: בוליאני
true: בורר הקבצים של@משמיט קבצים שתואמים לדפוסי.gitignorefalse: בורר הקבצים של@כולל קבצים שתואמים לדפוסי.gitignore
- ברירת מחדל:
true
{
"respectGitignore": false
}#respondToBashCommands
בחרו אם Claude מגיב אחרי שאתם מריצים פקודת מעטפת עם הקידומת ! בתיבת הקלט. כברירת מחדל, Claude Code מוסיף את פלט הפקודה לשיחה ו-Claude עונה עליו. הגדירו את המפתח הזה ל-false כדי להוסיף את הפלט להקשר בלי תשובה, כך שתוכלו להריץ כמה פקודות ולשאול עליהן יחד.
- היקף:
כל קובץ - סוג: בוליאני
true: Claude Code מוסיף את פלט הפקודה לשיחה ו-Claude עונה עליוfalse: Claude Code מוסיף את הפלט להקשר בלי תשובה
- ברירת מחדל:
true
{
"respondToBashCommands": false
}#showClearContextOnPlanAccept
כאשר Claude מסיים תוכנית במצב תוכנית, הוא מציג תפריט אישור. תכנון יכול לצרוך הרבה הקשר, ולכן המפתח הזה מוסיף אפשרות ראשונה לתפריט הזה, Yes, clear context and …, שמאשרת את התוכנית, מנקה את הקשר השיחה, ומתחילה ליישם מתוך התוכנית בלבד. שאר התווית מציין את מצב ההרשאה שבו הסשן ממשיך, ומראה כמה מההקשר שלכם התכנון ניצל.
- היקף:
כל קובץ - סוג: בוליאני
true: תפריט אישור התוכנית מקבל אפשרות ראשונה, Yes, clear context and …, שמאשרת את התוכנית ומנקה את הקשר השיחהfalse: תפריט אישור התוכנית לא מציג אפשרות לניקוי הקשר
- ברירת מחדל:
false
{
"showClearContextOnPlanAccept": true
}#showTurnDuration
הציגו או הסתירו את הודעת משך התור אחרי כל תשובה, כמו "Cooked for 1m 6s · done 6:05 PM". השעון אחרי "done" מראה מתי התור הסתיים. timeFormat ו-timeZone שולטים בפורמט שלו ובאזור הזמן שלו. מופיע ב-/config בתור Show turn duration.
- היקף:
כל קובץ. ערך ב-~/.claude.jsonמגרסה ישנה יותר חל כאשר אף קובץ הגדרות לא מגדיר אותו. - סוג: בוליאני
true: אתם רואים את הודעת משך התור אחרי כל תשובהfalse: Claude Code מסתיר את הודעת משך התור
- ברירת מחדל:
true
{
"showTurnDuration": false
}#spellcheck
סמנו בקו תחתון מילים עם שגיאות כתיב בקלט ההנחיה בזמן ההקלדה, באמצעות בודק איות שאתם מתקינים. Claude Code בודק רק את הטקסט בתיבת הקלט. בדיקת איות בזמן ההקלדה מכסה התקנה של aspell, hunspell או ispell, ומה הבודק מכסה. נדרש Claude Code בגרסה v2.1.235 או חדשה יותר.
- היקף:
משתמש או מנוהל. הבלוק מהרמה הגבוהה ביותר שמגדירה אותו חל כמכלול. - סוג: אובייקט עם
enabled(בוליאני),checker("aspell","hunspell","ispell"או"auto"),language(מחרוזת, שמועברת לבודק כשם המילון שלו), ו-color(מחרוזת, שם צבע של מסוף,#rrggbb,rgb(r,g,b),ansi256(n)אוansi:<name>) - ברירת מחדל: לא מוגדר, ולכן בדיקת האיות כבויה.
checkerברירת המחדל שלו היא"auto", הראשון מבין השלושה שנמצא ב-PATH.languageברירת המחדל שלו היא המילון של הבודק עצמו.colorברירת המחדל שלו היא צבע השגיאה של ערכת הנושא
{
"spellcheck": { "enabled": true, "language": "en_GB" }
}#spinnerTipsEnabled
בזמן ש-Claude עובד, שורת הספינר עוברת בין טיפים קצרים על יכולות של Claude Code, כמו "Use Plan Mode to prepare for a complex request before making changes. Press Shift+Tab twice to enable." הגדירו את המפתח הזה ל-false כדי להסתיר אותם. מופיע ב-/config בתור Show tips.
- היקף:
כל קובץ - סוג: בוליאני
true: אתם רואים טיפים בספינר בזמן ש-Claude עובדfalse: Claude Code מסתיר טיפי ספינר
- ברירת מחדל:
true
{
"spinnerTipsEnabled": false
}#spinnerTipsOverride
הוסיפו טיפים משלכם לטיפי הספינר ש-Claude Code מציג בזמן ש-Claude עובד, או החליפו את הטיפים המובנים בשלכם. Claude Code שם את הטיפים שלכם באותו סבב כמו הטיפים המובנים.
אם תגדירו את spinnerTipsEnabled ל-false, Claude Code מסתיר את כל הטיפים, כולל שלכם.
- היקף:
כל קובץ. Claude Code מכבד אובייקטי טיפ,tipsFile,labelו-excludeDefaultמהגדרות המשתמש, מדגל--settingsומההגדרות המנוהלות. מהגדרות הפרויקט ומההגדרות המקומיות הוא קורא רק טיפים שהם מחרוזות פשוטות. - סוג: אובייקט עם השדות
tips,tipsFile,labelו-excludeDefault, וכל אחד מהם אופציונלי - ברירת מחדל: לא מוגדר, ולכן Claude Code מציג רק את הטיפים המובנים
אובייקטי טיפ, tipsFile, label, והכלל בשורת ההיקף שלפיו הגדרות פרויקט והגדרות מקומיות תורמות רק מחרוזות פשוטות, דורשים Claude Code בגרסה v2.1.247 או חדשה יותר.
כל ערך ב-tips הוא מחרוזת פשוטה או אובייקט עם השדות האלה:
| שדה | חובה | תיאור |
|---|---|---|
id | כן | עד 64 אותיות, ספרות, ., _ או -. Claude Code משתמש בו כמפתח להיסטוריית ההצגה של הטיפ, כך שזמן הצינון של הטיפ נשמר גם כשמסדרים מחדש את הרשימה. מבין שני ערכים עם אותו id, Claude Code משתמש בראשון |
text | כן | הטיפ, שורה אחת של עד 500 תווים. Claude Code מסיר תווי מילוט של ANSI ותווי בקרה ומכווץ רווחים |
cooldownSessions | לא | סשנים ש-Claude Code ממתין לפני שהוא מציג את הטיפ שוב, מ-0 עד 1000, ברירת מחדל 0 |
priority | לא | סדר בין טיפים שלא הוצגו במשך זמן שווה, הגבוה קודם, מ--10 עד 10, ברירת מחדל 0 |
Claude Code קורא מחרוזת פשוטה כטיפ עם ברירות המחדל האלה ועם מזהה לפי מיקום, ולכן היסטוריית ההצגה שלו מתאפסת כשמסדרים מחדש את הרשימה. תנו לטיפ id כדי לשמור את ההיסטוריה שלו בין עריכות.
Claude Code קורא לכל היותר 200 טיפים מתוך tips ו-tipsFile יחד, ומשמיט ערך לא תקין עם אזהרת דיבוג במקום לדחות את קובץ ההגדרות.
השתמשו בשדות הנותרים כדי לציין קובץ טיפים, להגדיר את הקידומת, ולהסתיר את הטיפים המובנים:
tipsFile: נתיב מוחלט או נתיב~/לקובץ JSON מקומי שמכיל מערך של אותם ערכים, או אובייקט עם מערךtips, עד 256 KB. Claude Code קורא את הקובץ פעם אחת לכל תהליך, ולכן הוא טוען את העריכות שלכם בהפעלה הבאה. אי אפשר להגדיר אותו דרך הגדרות שמנוהלות בשרת. הטמיעו שם אתtipsישירות, או הטמיעו את הנתיב ב-managed-settings.jsonשעל הדיסק.label: הקידומת ש-Claude Code מציג לפני טיפים מהגדרות המשתמש, מ---settingsומההגדרות המנוהלות, עד 40 תווים. ברירת המחדל היאTip, אותה קידומת כמו הטיפים המובנים, וטיפים מהגדרות הפרויקט ומההגדרות המקומיות תמיד משתמשים בה.excludeDefault: הגדירו אותו ל-trueכדי להסתיר את הטיפים המובנים ולהציג רק את שלכם. כאשר Claude Code לא מצליח לטעון אף אחד מהטיפים שלכם, למשל כיtipsFileלא קיים או שכל ערך לא תקין, הוא שומר את הסבב המובנה במקום ספינר ריק.
כאשר יותר מקובץ הגדרות אחד מגדיר את המפתח, Claude Code מציג טיפים מכולם, ולוקח את tipsFile, label ו-excludeDefault מזה שבין ההגדרות המנוהלות, דגל --settings והגדרות המשתמש שהוא בעל הקדימות הגבוהה ביותר שמגדיר כל אחד מהם.
הדוגמה הזו, בהגדרות המשתמש שלכם, מוסיפה טיפ במחרוזת פשוטה וטיפ באובייקט לסבב, תחת הקידומת Acme tip:
{
"spinnerTipsOverride": {
"label": "Acme tip",
"tips": [
"Run /review before opening a PR",
{
"id": "gateway-errors",
"text": "Seeing 5xx errors? Check the gateway status page first",
"cooldownSessions": 5,
"priority": 2
}
]
}
}כל שדה בדוגמה משנה דבר אחד באופן שבו Claude Code מציג את הטיפים:
label: Claude Code מציג את שני הטיפים כ-Acme tip: ...במקוםTip: ....- המחרוזת הפשוטה: Claude Code נותן לה את ברירות המחדל, ולכן היא יכולה להופיע שוב כבר בסשן הבא.
id: Claude Code משתמש ב-gateway-errorsכמפתח להיסטוריית ההצגה של הטיפ השני, ולכן זמן הצינון שלו עדיין חל אחרי שמוסיפים טיפים או מסדרים אותם מחדש.cooldownSessions: אחרי ש-Claude Code מציג את הטיפgateway-errors, הוא לא מציג את הטיפ הזה שוב עד חמישה סשנים לאחר מכן.priority: כאשר הטיפgateway-errorsוטיפ אחר לא הוצגו במשך אותו מספר סשנים, למשל כאשר אף אחד מהם עדיין לא הוצג, Claude Code מציג אתgateway-errorsקודם. למחרוזת הפשוטה יש עדיפות ברירת המחדל,0.
בזמן ש-Claude עובד, Claude Code מציג את הטיפים שלכם בספינר עם הקידומת שלכם, למשל Acme tip: Run /review before opening a PR.
#spinnerVerbs
בזמן שתור מתבצע, הספינר מציג פועל מתחלף כמו "Accomplishing", "Architecting" או "Baking". השתמשו במפתח הזה כדי להוסיף פעלים משלכם לסבב הזה או להחליף את הרשימה המובנית בשלכם.
- היקף:
כל קובץ - סוג: אובייקט עם מערך מחרוזות
verbsועםmode, אחד מאלה:"append": Claude Code מוסיף את הפעלים שלכם לקבוצה המובנית"replace": Claude Code מציג רק את הפעלים שלכם
- ברירת מחדל: לא מוגדר, ולכן Claude Code משתמש בפעלים המובנים
הדוגמה הזו מוסיפה שני פעלים לקבוצה המובנית:
{
"spinnerVerbs": {
"mode": "append",
"verbs": ["Pondering", "Crafting"]
}
}במצב "replace" עם מערך verbs ריק, Claude Code שומר את הפעלים המובנים.
#statusLine
הריצו פקודה משלכם כדי לרנדר שורת סטטוס מתחת להנחיה, עם הקשר כמו המודל, העלות או ענף git. שדות אופציונליים מכוונים את הריווח, מוסיפים הרצות מחדש תקופתיות, ומסתירים את מחוון מצב vim המובנה כאשר הסקריפט שלכם מרנדר את vim.mode בעצמו.
- היקף:
כל קובץ. כאשרallowManagedHooksOnlyמופעל, או כאשרdisableAllHooksמוגדר מחוץ להגדרות המנוהלות, רץ רק הערך מההגדרות המנוהלות. - סוג: אובייקט עם
typeשמוגדר ל-"command"ומחרוזתcommand, ובנוסףpaddingאופציונלי כמספר תווים,refreshIntervalכמספר שניות, מינימום1, ו-hideVimModeIndicatorכבוליאני - ברירת מחדל: לא מוגדר, ולכן אין שורת סטטוס
הדוגמה הזו מדפיסה את שם המודל ואת שימוש ההקשר, ומוסיפה שני תווים של ריווח אופקי:
{
"statusLine": {
"type": "command",
"command": "jq -r '\"[\\(.model.display_name)] \\(.context_window.used_percentage // 0)% context\"'",
"padding": 2
}
}הדוגמה צריכה ש-jq יהיה מותקן, והיא רצה במעטפת. למקבילות ב-PowerShell וב-Git Bash, ראו הגדרת Windows. להגדרה המלאה, ראו הגדרה ידנית של שורת סטטוס.
#subagentStatusLine
כאשר Claude מריץ סוכני משנה, Claude Code מציג אותם בתצוגת משימות מתחת להנחיה, שורה אחת לכל סוכן משנה שמציגה name · description · token count. המפתח הזה מאפשר להריץ פקודה משלכם כדי לכתוב מחדש את השורות האלה, למשל כדי להציג את שימוש ההקשר של כל סוכן משנה כאחוז. בכל רענון, Claude Code שולח את השורות הגלויות כאובייקט JSON אחד ב-stdin, עם מערך tasks שנושא את id, name, status, model, tokenCount ועוד של כל סוכן משנה, ומחליף את השורה של כל id שאתם כותבים בחזרה כשורת {"id", "content"}. שורות שלא כותבים בחזרה נשארות עם הרינדור המוגדר כברירת מחדל.
- היקף:
כל קובץ. כאשרallowManagedHooksOnlyמופעל, או כאשרdisableAllHooksמוגדר מחוץ להגדרות המנוהלות, רץ רק הערך מההגדרות המנוהלות. - סוג: אובייקט עם
typeשמוגדר ל-"command"ומחרוזתcommand - ברירת מחדל: לא מוגדר, ולכן Claude Code מרנדר את שורות ברירת המחדל
{
"subagentStatusLine": {
"type": "command",
"command": "jq -c '.tasks[] | {id, content: \"\\(.name): \\(.tokenCount) tokens\"}'"
}
}ראו שורות סטטוס של סוכני משנה.
#syntaxHighlightingDisabled
Claude Code צובע קוד לפי שפה בהפרשים, בבלוקי הקוד ובתצוגות המקדימות של קבצים שהוא מציג במסוף, באמצעות המדגיש המובנה שלו. אין תוסף או שרת שפה מעורבים. הגדירו את המפתח הזה ל-true כדי להציג אותם כטקסט פשוט, למשל אם הצבעים מתנגשים עם ערכת הנושא של המסוף או מאטים קורא מסך.
- היקף:
כל קובץ - סוג: בוליאני
true: Claude Code מכבה את הדגשת התחביר בהפרשים, בבלוקי קוד ובתצוגות מקדימות של קבציםfalse: Claude Code מדגיש תחביר
- ברירת מחדל:
false
{
"syntaxHighlightingDisabled": true
}#terminalProgressBarEnabled
חלק מהמסופים יכולים להציג מחוון התקדמות בלשונית או בשורת המשימות עבור התוכנית שרצה בהם. בזמן ש-Claude עובד, Claude Code מדווח למסוף על מצב של עבודה בתהליך, כך שאפשר לראות מלשונית או מחלון אחר אם הסשן עדיין עסוק. המחוון נשאר גלוי אחרי שהתור מסתיים כל עוד סוכני משנה ברקע או תהליכי עבודה דינמיים עדיין רצים, ומתנקה ברגע שהסשן לא פעיל.
Claude Code מדווח עליו רק במסופים שתומכים במחוון: ConEmu, Ghostty 1.2.0 או חדש יותר, ו-iTerm2 3.6.6 או חדש יותר. הגדירו את המפתח הזה ל-false כדי ש-Claude Code יפסיק לדווח עליו. מופיע ב-/config בתור Terminal progress bar.
- היקף:
כל קובץ. ערך ב-~/.claude.jsonמגרסה ישנה יותר חל כאשר אף קובץ הגדרות לא מגדיר אותו. - סוג: בוליאני
true: אתם רואים את סרגל ההתקדמות של המסוף במסופים שתומכים בוfalse: Claude Code מסתיר את סרגל ההתקדמות של המסוף
- ברירת מחדל:
true
{
"terminalProgressBarEnabled": false
}#terminalTitleFromRename
Claude Code מגדיר את כותרת לשונית המסוף. כברירת מחדל הוא משתמש בכותרת שהוא יוצר מהשיחה, ואחרי שאתם נותנים לסשן שם עם /rename או --name, הלשונית מציגה את השם הזה. הגדירו את המפתח הזה ל-false כדי להשאיר בלשונית את הכותרת שנוצרה גם אחרי שאתם נותנים שם לסשן. השם עצמו עדיין חל, ולכן /resume <name> ובורר הסשנים מוצאים אותו.
- היקף:
כל קובץ - סוג: בוליאני
true: כותרת לשונית המסוף מציגה את שם הסשן שהגדרתםfalse: הלשונית שומרת את הכותרת ש-Claude Code יוצר מהשיחה שלכם
- ברירת מחדל:
true
{
"terminalTitleFromRename": false
}כדי ש-Claude Code יפסיק לעדכן את כותרת המסוף לגמרי, הגדירו את CLAUDE_CODE_DISABLE_TERMINAL_TITLE ל-1 במקום זאת.
#theme
בחרו את ערכת הצבעים של הממשק. מופיע ב-/config בתור Theme.
- היקף:
כל קובץ. ערך ב-~/.claude.jsonמגרסה ישנה יותר חל כאשר אף קובץ הגדרות לא מגדיר אותו. - סוג: מחרוזת, אחת מאלה:
"auto": תואם לרקע הבהיר או הכהה של המסוף"dark": ערכת הנושא הכהה"light": ערכת הנושא הבהירה"dark-daltonized": ערכת הנושא הכהה עם צבעים שנוחים לעיוורון צבעים"light-daltonized": ערכת הנושא הבהירה עם צבעים שנוחים לעיוורון צבעים"dark-ansi": ערכת הנושא הכהה שמשתמשת רק בלוח צבעי ANSI של המסוף"light-ansi": ערכת הנושא הבהירה שמשתמשת רק בלוח צבעי ANSI של המסוף"custom:<slug>"או"custom:<plugin-name>:<slug>": ערכת נושא מותאמת מ-~/.claude/themes/או מתוסף
- ברירת מחדל:
"dark"
{
"theme": "light-daltonized"
}#timeFormat
בחרו איך Claude Code כותב את הזמנים שהוא מציג בממשק, כמו done 6:05 PM בסוף כל הודעת משך תור וחותמות הזמן במציג התמליל. כדי לבחור ערכה מוכנה, הריצו את /config והגדירו את Time format. נדרש Claude Code בגרסה v2.1.257 או חדשה יותר.
- היקף:
כל קובץ - סוג: מחרוזת, אחת מאלה:
"auto": זהה למצב לא מוגדר. כל זמן שומר על הפורמט המובנה שלו, שעוקב אחרי ה-locale שלכם בהודעת משך התור"12-hour": שעון של 12 שעות"24-hour": שעון של 24 שעות"24-hour-utc": שעון של 24 שעות ב-UTC עםZאחרי הדקות, כמו18:05Z. Claude Code מתעלם מ-timeZoneבערכה המוכנה הזו- תבנית strftime כמו
"%H:%M": Claude Code כותב כל זמן עם התבנית. כל ערך שמכיל%הוא תבנית, וכל ערך אחר מחוץ לערכות המוכנות נחשב כ-"auto"
- ברירת מחדל:
"auto"
{
"timeFormat": "24-hour"
}/config מציע רק את הערכות המוכנות, ולכן כדי להשתמש בתבנית strftime, הוסיפו את המפתח לקובץ הגדרות. הדוגמה הזו מציגה כל זמן כשעון של 24 שעות בשתי ספרות:
{
"timeFormat": "%H:%M"
}הודעת משך התור ומציג התמליל מציגים אז זמנים כמו 18:05. במציג התמליל, התבנית היא חותמת הזמן כולה, ולכן הוסיפו הנחיות תאריך כאשר אתם רוצים את התאריך שם. הדוגמה הזו שמה את התאריך לפני השעון:
{
"timeFormat": "%Y-%m-%d %H:%M"
}אותם מקומות בממשק מציגים אז זמנים כמו 2026-09-01 18:05.
#timeZone
הצגת השעות בממשק באזור זמן שאינו אזור הזמן של המערכת. הגדר אותו לשם אזור זמן של IANA, למשל "UTC" או "Europe/Dublin". השעות ש-timeFormat שולט בהן מוצגות אז באזור הזה. אם timeFormat הוא "24-hour-utc", השעות נשארות ב-UTC וקלוד קוד מתעלם מהמפתח הזה. ל-/config אין שורה למפתח הזה, ולכן מגדירים אותו בקובץ הגדרות. נדרש Claude Code בגרסה v2.1.257 או חדשה יותר.
- היקף:
כל קובץ - סוג: מחרוזת, שם אזור זמן של IANA. כשקלוד קוד לא מזהה את השם, הוא משתמש באזור הזמן של המערכת
- ברירת מחדל: לא מוגדר, ולכן השעות מוצגות באזור הזמן של המערכת
{
"timeZone": "Europe/Dublin"
}#tui
בחירת מציג ממשק המסוף. השתמש ב-"fullscreen" עבור מציג מסך החלופי בלי הבהוב, עם גלילה לאחור וירטואלית, או ב-"default" עבור מציג המסך הראשי הקלאסי. הרצת /tui fullscreen או /tui default כותבת את המפתח הזה עבורך.
- היקף:
כל קובץ - סוג: מחרוזת, אחת מהאפשרויות:
"default": מציג המסך הראשי הקלאסי"fullscreen": מציג המסך החלופי בלי הבהוב, עם גלילה לאחור וירטואלית
- ברירת מחדל: לא מוגדר, ולכן קלוד קוד בוחר את המציג עבורך
- עקיפות לכל סשן:
CLAUDE_CODE_NO_FLICKERו-CLAUDE_CODE_DISABLE_ALTERNATE_SCREENגוברים על המפתח הזה לסשן אחד:CLAUDE_CODE_NO_FLICKER=1מפעיל fullscreen, ו-CLAUDE_CODE_NO_FLICKER=0אוCLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1מכבים אותו. כששניהם מוגדרים, קלוד קוד מכבה אותו
{
"tui": "fullscreen"
}תחת tmux -CC או דרך SSH ל-Windows, קלוד קוד שומר על המציג הקלאסי אלא אם מגדירים CLAUDE_CODE_NO_FLICKER=1. סשנים ברקע שנפתחים מ-תצוגת סוכן תמיד משתמשים במציג fullscreen, בלי קשר להגדרה הזאת.
#verbose
כברירת מחדל, התמליל מקפל כל קריאת כלי לסיכום קצר, למשל הפקודה שקלוד הריץ וספירת שורות של הפלט שלה, ולוחצים על Ctrl+O כדי להעביר את כל התמליל לתצוגה המורחבת כשרוצים את הפרטים. הגדר את המפתח הזה ל-true כדי להציג את הקלט והפלט המלאים של כל קריאת כלי בתוך השורה בזמן שהם מתרחשים, וזה שימושי כשמנפים באג ב-hook, בשרת MCP, או בפקודת מעטפת ארוכה. מופיע ב-/config כ-Verbose output.
- היקף:
כל קובץ. ערך ב-~/.claude.jsonמגרסה ישנה חל כשאף קובץ הגדרות לא מגדיר אותו. - סוג: בוליאני
true: רואים את פלט הכלי המלאfalse: רואים סיכומים מקוצרים של פלט הכלי
- ברירת מחדל:
false - עקיפות לכל סשן:
--verboseגובר על המפתח הזה לסשן אחד
{
"verbose": true
}ערך viewMode או בחירת /focus דביקה עוקפים את המפתח הזה בכל סשן.
#viewMode
הגדרת תצוגת התמליל שבה קלוד קוד מתחיל: "default", "verbose", או "focus". כשהוא מוגדר, הוא עוקף גם את בחירת /focus הדביקה וגם את הגדרת verbose.
- היקף:
כל קובץ - סוג: מחרוזת, אחת מהאפשרויות:
"default": התמליל הרגיל עם פלט כלי מקוצר"verbose": התמליל עם פלט כלי מלא"focus": רק ההנחיה האחרונה שלך, סיכום של שורה אחת של קריאות כלי עם diffstats של עריכות, והתשובה הסופית. תצוגת focus דורשת את מציג fullscreen
- ברירת מחדל: לא מוגדר, ולכן הגדרת
verboseובחירת/focusהאחרונה שלך חלות - עקיפות לכל סשן:
--verboseגובר על המפתח הזה לסשן אחד
{
"viewMode": "focus"
}#vimInsertModeRemaps
מיפוי רצפי מקשים של שני תווים במצב INSERT ל-Escape ב-מצב עורך vim. כל מפתח הוא בדיוק שני תווים ניתנים להדפסה שמוקלדים ברצף, ו-"<Esc>" הוא היעד הנתמך היחיד. קלוד קוד מתעלם מרשומות אחרות.
- היקף:
משתמש או מנוהל. מאגר לא יכול למפות מחדש את הקשות המקשים שלך. - סוג: אובייקט שממפה רצף של שני תווים ל-
"<Esc>" - ברירת מחדל: לא מוגדר
{
"vimInsertModeRemaps": {
"jj": "<Esc>"
}
}אין השפעה אלא אם editorMode הוא "vim". ראה מיפוי מחדש של רצפי מקשים במצב INSERT.
#voice
הפעלת הכתבה קולית ובחירת אופן ההתנהגות של מקש ההכתבה. קלוד קוד כותב את האובייקט הזה עבורך כשמריצים /voice.
- היקף:
כל קובץ - סוג: אובייקט עם
enabledכבוליאני,autoSubmitכבוליאני שחל רק במצב hold, ו-mode, אחת מהאפשרויות:"hold": מחזיקים את מקש ההכתבה בזמן הדיבור ומשחררים אותו כדי לעצור"tap": מקישים על המקש פעם אחת כדי להתחיל הקלטה ושוב כדי לשלוח
- ברירת מחדל: לא מוגדר, ולכן ההכתבה כבויה. כש-
enabledהואtrueו-modeלא מוגדר, קלוד קוד משתמש ב-"hold"
הדוגמה הזאת מפעילה הכתבה וגורמת למקש להיקש פעם אחת כדי להתחיל הקלטה ושוב כדי לשלוח:
{
"voice": {
"enabled": true,
"mode": "tap"
}
}autoSubmit שולח את ההנחיה כשמשחררים את המקש במצב hold. הכתבה קולית דורשת חשבון claude.ai.
#voiceEnabled
[!WARNING]
הוצא משימוש מאז v2.1.92, כשאובייקט
voiceהחליף אותו. קלוד קוד עדיין קורא אותו כדי שקבצי הגדרות ישנים ימשיכו לעבוד, אבל תצורות חדשות צריכות להגדירvoice.enabled.
הפעלת הכתבה קולית בצורת הבוליאני היחיד שקדם לאובייקט voice. כששניהם מוגדרים, voice.enabled חל.
- היקף:
כל קובץ - סוג: בוליאני
true: הכתבה קולית פועלת כשאתה מחובר עם חשבון claude.ai ומדיניות הארגון שלך מתירה קול, אלא אםvoice.enabledמוגדרfalse: הכתבה קולית כבויה, אלא אםvoice.enabledמוגדר
- ברירת מחדל: לא מוגדר
{
"voiceEnabled": true
}#wheelScrollAccelerationEnabled
האצת מהירות גלילת גלגל העכבר במהלך גלילות מהירות ב-עיבוד fullscreen. הגדר אותו ל-false לקצב גלילה קבוע לכל שנת גלגל.
- היקף:
כל קובץ - סוג: בוליאני
true: קלוד קוד מאיץ את מהירות גלילת גלגל העכבר במהלך גלילות מהירותfalse: קלוד קוד גולל בקצב קבוע לכל שנת גלגל
- ברירת מחדל:
true
{
"wheelScrollAccelerationEnabled": false
}#Git וייחוס
שליטה בייחוס שקלוד קוד מוסיף לקומיטים ולבקשות משיכה, ובאופן העבודה שלו עם git.
#attribution
התאמה אישית של הייחוס שקלוד קוד מוסיף לקומיטי git ולבקשות משיכה. קומיטים מקבלים git trailer כגון Co-Authored-By כברירת מחדל. תיאורי בקשות משיכה מקבלים טקסט רגיל. הגדר כל חלק בנפרד עם מפתחי המשנה שלמטה.
- היקף:
כל קובץ - סוג: אובייקט עם מחרוזות
commitו-prובוליאניsessionUrl, אוfalseכדי להסתיר את כל הייחוס. הערךfalseדורש Claude Code בגרסה v2.1.281 או חדשה יותר. גרסאות קודמות דוחות אותו ומדלגות על כל קובץ ההגדרות של המשתמש, הפרויקט או המקומי שמכיל אותו - ברירת מחדל: לא מוגדר, ולכן קלוד קוד משתמש בייחוס הסטנדרטי שמוצג תחת כל מפתח משנה
כדי להסתיר את כל הייחוס, הגדר את attribution ל-false. בקובץ הגדרות שגם גרסאות קודמות קוראות, הגדר את commit ואת pr למחרוזות ריקות ואת sessionUrl ל-false במקום זאת.
הדוגמה הזאת מחליפה את ייחוס הקומיט, מסירה את ייחוס בקשת המשיכה, ומסירה את קישור הסשן:
{
"attribution": {
"commit": "Generated with AI\n\nCo-Authored-By: AI <[email protected]>",
"pr": "",
"sessionUrl": false
}
}אחרי שמגדירים commit או pr, קלוד קוד מתעלם מההגדרה שיצאה משימוש includeCoAuthoredBy ומשתמש בטקסט ברירת המחדל שלו עבור זה משניהם שהשארת לא מוגדר.
קלוד קוד אומר לקלוד שההנחיות שלך עצמך לגבי ייחוס, למשל כלל ב-CLAUDE.md או ב-זיכרון, גוברות על שורות הקומיט ו-PR האלה, אלא אם השורה מוגדרת ב-הגדרות מנוהלות.
#includeCoAuthoredBy
[!WARNING]
הוצא משימוש מאז v2.0.62, כש-
attributionהחליף אותו. קלוד קוד עדיין קורא אותו, אבל תצורות חדשות צריכות להגדירattribution.
השתמש ב-attribution במקום זאת, שמחליף את המפתח הזה ומאפשר לשנות או להסתיר בנפרד את ה-trailer של הקומיט, את טקסט בקשת המשיכה, ואת קישור הסשן. קלוד קוד עדיין מכבד includeCoAuthoredBy: false מקבצי הגדרות שקדמו ל-attribution, אבל מתעלם ממנו אחרי שמגדירים attribution.commit או attribution.pr.
- היקף:
כל קובץ - סוג: בוליאני
true: אותו דבר כמו לא מוגדר. קלוד קוד מוסיף את ה-trailer של הקומיט ואת טקסט ייחוס בקשת המשיכהfalse: קלוד קוד משמיט גם את ה-trailer של הקומיט וגם את טקסט ייחוס בקשת המשיכה, אלא אםattributionמגדירcommitאוpr, ובמקרה הזה חלים כלליattribution
- ברירת מחדל:
true
{
"includeCoAuthoredBy": false
}כדי להסתיר את כל הייחוס, ראה attribution.
#includeGitInstructions
קלוד קוד נותן לקלוד שני פריטי הקשר שקשורים ל-git: ההנחיות המובנות שלו לאופן כתיבת קומיטים ובקשות משיכה, בתיאור כלי Bash, ותצלום מצב של git status של המאגר שלך. התצלום מחזיק את הענף הנוכחי, את הענף הראשי, פלט git status, וקומיטים אחרונים. קלוד קוד קורא אותו כששיחה מתחילה.
הגדר את המפתח הזה ל-false כדי להשאיר את שניהם בחוץ, למשל כשמשתמשים בכישורי תהליך עבודה משלך ל-git.
- היקף:
כל קובץ - סוג: בוליאני
true: קלוד קוד כולל את הנחיות תהליך העבודה המובנות שלו לקומיט ולבקשת משיכה ואת תצלום מצב git status. סשנים בענן אף פעם לא כוללים את התצלוםfalse: קלוד קוד משאיר את שניהם בחוץ
- ברירת מחדל:
true - עקיפות לכל סשן:
CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONSגובר על המפתח הזה לסשן אחד
{
"includeGitInstructions": false
}אם מחליפים את הנחיית המערכת ב-מצב לא אינטראקטיבי או ב-Agent SDK, הסשן מתחיל בלי התצלום גם כשהמפתח הזה הוא true:
- הרצות
-p: מחליפים את ההנחיה כשמעבירים--system-promptאו--system-prompt-file. מחליפים אותה גם כשמריצים סוכן מותאם עם הנחיה משלו, שנבחר עם--agentאו עם הגדרתagent. מחוץ ל-מצב bare, כדי לשמור את התצלום, הריצו בלי סוכן מותאם והוסיפו את ההנחיות שלכם עם--append-system-promptבמקום להחליף את ההנחיה. - Agent SDK: מחליפים את ההנחיה בהנחיית מערכת מותאמת או בסוכן חוט ראשי מותאם. אם לא מגדירים הנחיית מערכת, ה-SDK משתמש בברירת המחדל המינימלית שלו והסשן מתחיל בלי התצלום גם כן. מחוץ ל-מצב bare, כדי לשמור את התצלום, השתמשו ב-preset
claude_codeבליagentמותאם.
#prUrlTemplate
הפניית קישורי ה-PR שקלוד קוד מציג, בתג הכותרת התחתונה ובסיכומי תוצאות כלים, לכלי סקירת קוד פנימי במקום github.com. קלוד קוד מחליף את {host}, {owner}, {repo}, {number}, ו-{url} מכתובת ה-PR. קישורי בקשת מיזוג של GitLab בשני המשטחים שומרים על כתובת GitLab שלהם.
- היקף:
כל קובץ - סוג: מחרוזת, תבנית URL שמשתמשת בכל אחד מחמשת מצייני המיקום
- ברירת מחדל: לא מוגדר
{
"prUrlTemplate": "https://reviews.example.com/{owner}/{repo}/pull/{number}"
}קלוד קוד מחיל את התבנית רק על הקישורים שהוא עצמו מציג. מספר PR שקלוד כותב בהודעה, למשל #123, נשאר כפי שקלוד כתב אותו. כתובת שאין לה את הצורה /pull/<number> נשארת ללא שינוי.
#attribution.commit
הגדרת טקסט הייחוס שקלוד קוד מוסיף לקומיטי git, כולל כל trailers. הגדר אותו למחרוזת ריקה כדי להסתיר ייחוס קומיט.
- היקף:
כל קובץ - סוג: מחרוזת
- ברירת מחדל: לא מוגדר, ולכן קלוד קוד מוסיף
Co-Authored-By: <name> <[email protected]>. השם הוא המודל שבשימוש כשהקומיט נוצר, למשלClaude Sonnet 5. כש-סוכן משנה יוצר את הקומיט, ה-trailer מציין את המודל של סוכן המשנה.- כשקלוד קוד מזהה את המודל כמודל Claude אבל לא יכול לאשר את הגרסה המדויקת שלו, הוא כותב
Claudeלבד. - כשהוא לא יכול להתאים את מזהה המודל לאף מודל Claude, למשל מודל של צד שלישי שמוגש דרך
ANTHROPIC_BASE_URLמותאם, הוא כותבClaude Code.
- כשקלוד קוד מזהה את המודל כמודל Claude אבל לא יכול לאשר את הגרסה המדויקת שלו, הוא כותב
הדוגמה הזאת מחליפה את ה-trailer של ברירת המחדל בשורה מותאמת וב-trailer מותאם Co-Authored-By:
{
"attribution": {
"commit": "Generated with AI\n\nCo-Authored-By: AI <[email protected]>"
}
}#attribution.pr
הגדרת טקסט הייחוס שקלוד קוד מוסיף לתיאורי בקשות משיכה. הגדר אותו למחרוזת ריקה כדי להסתיר ייחוס בקשת משיכה.
- היקף:
כל קובץ - סוג: מחרוזת
- ברירת מחדל: לא מוגדר, ולכן קלוד קוד מוסיף
🤖 Generated with [Claude Code](https://claude.com/claude-code)
{
"attribution": {
"pr": ""
}
}#attribution.sessionUrl
בחירה אם קלוד קוד מוסיף את קישור הסשן של claude.ai כשהוא מבצע קומיט או פותח בקשת משיכה מסשן ענן או Remote Control. קלוד קוד מוסיף את הקישור כ-trailer Claude-Session בקומיטים וכקישור בתיאורי בקשות משיכה. הגדר אותו ל-false כדי להשמיט את הקישור.
- היקף:
כל קובץ - סוג: בוליאני
true: קלוד קוד מוסיף את קישור הסשן של claude.ai כשהוא מבצע קומיט או פותח בקשת משיכה מסשן ענן או Remote Controlfalse: קלוד קוד משמיט את הקישור
- ברירת מחדל:
true
{
"attribution": {
"sessionUrl": false
}
}#ווים ואוטומציה
רשום ווים, הגבל אילו ווים רצים, ושלוט בזרימות עבודה. לאירועי וו ולמטענים, ראה את מדריך הווים.
#allowedHttpHookUrls
הגבל לאילו כתובות URL ווי HTTP יכולים לפנות. כשמגדירים מפתח זה, Claude Code מריץ וו HTTP רק אם ה-URL שלו תואם לאחת מהתבניות, וחוסם את השאר בלי להריץ אותם. מערך ריק חוסם כל וו HTTP.
- היקף:
כל קובץ. מערכים מתמזגים בין קובצי הגדרות. - סוג: מערך של תבניות URL, כאשר
*הוא תו כללי - ברירת מחדל: לא מוגדר, כך שכל URL מותר
דוגמה זו מתירה כל URL תחת https://hooks.example.com/ וכל URL של http://localhost:
{
"allowedHttpHookUrls": ["https://hooks.example.com/*", "http://localhost:*"]
}התאמת שם מארח אינה תלויה ברישיות, ומתייחסת אל hooks.example.com., עם הנקודה הסופית שמסמנת שם תחום מלא, כמו אל hooks.example.com, וכך DNS מתייחס אליהם. רשימת ההיתר חלה על ווים מכל מקור, כולל הגדרות מנוהלות.
באפשרות managedSettings של Agent SDK, Claude Code מתעלם מרשימה שיש בה רשומות, ולכן העבר אותה באפשרות settings של ה-SDK במקום. ראה מה רשימה ריקה עושה בהגדרות הורה.
#allowManagedHooksOnly
הגבל את הרצת הווים לווים שהארגון שלך פורס.
- היקף:
Managed - סוג: בוליאני
true: רצים רק ווים מנוהלים, ובנוסף ווי Agent SDK וווים מתוספים שההגדרות המנוהלות שלך מפעילות בכפייה. ראה מה רץ תחתallowManagedHooksOnlyfalse: רצים ווים מכל היקף הגדרות ומכל תוסף
- ברירת מחדל: לא מוגדר, כך שווים מכל היקף הגדרות ומכל תוסף רצים
{
"allowManagedHooksOnly": true
}#מה רץ תחת allowManagedHooksOnly
כשמגדירים אותו ל-true, Claude Code משנה אילו ווים ופקודות דמויות וו נטענים:
- ווים מנוהלים וווי SDK רצים: ווים מהגדרות מנוהלות וווים ש-Agent SDK רושם בתהליך
- ווי תוספים שמופעלים בכפייה רצים: ווים מתוספים שההגדרות המנוהלות שלך מפעילות בכפייה דרך
enabledPlugins. Claude Code מתאים לפי מזההplugin@marketplaceהמלא, כך שתוסף עם אותו שם מ-marketplace אחר נשאר חסום. כך אפשר להפיץ ווים שנבדקו דרך marketplace של הארגון, ולחסום את כל השאר. מוד בתוסף כזה נטען רק כשהוא נחשב של הארגון שלך - מוניטורים מתוספים אחרים חסומים: מוניטורים של תוסף לא מתחילים אלא אם התוסף מופעל בכפייה. נדרש Claude Code v2.1.310 או חדש יותר
- כל השאר חסום: ווי משתמש, פרויקט ומקומיים, ווים ומודים מתוספים מותקנים אחרים, וווים שמוצהרים ב-frontmatter של סוכן. מודים המובנים ב-Claude Code ממשיכים לרוץ. כדי לחסום רק מודים של משתמשים, הגדר
allowManagedModsOnlyבמקום. - תוספים שמקורם בפקודה מושבתים: Claude Code גם משבית תוספים עם מקור
command, כולל תוספים שמופעלים בכפייה ב-enabledPluginsהמנוהל, אלא אם מגדיריםdisableCommandPluginSourcesל-falseבמפורש - פקודות
headersHelperשל marketplace חסומות: Claude Code גם חוסם פקודותheadersHelperשל marketplace אלא אםdisableCommandPluginSourcesמוגדר במפורש ל-false, למעט marketplace שההגדרות המנוהלות עצמן מצהירות עליו. נדרש Claude Code v2.1.238 או חדש יותר - שורת סטטוס והצעת קבצים מצטמצמות להגדרות מנוהלות: Claude Code קורא את
statusLine, אתfileSuggestionואתsubagentStatusLineרק מהגדרות מנוהלות, לפי שערי שורת הסטטוס והצעת הקבצים
הפקודה /goal לא יכולה לרוץ כל עוד המפתח הזה מוגדר, כי היא תלויה בווים.
#disableAllHooks
כבה ווים, כל שורת סטטוס מותאמת אישית, וכל פקודת הצעת קבצים מותאמת אישית. השתמש בו כדי לכבות את כל אלה זמנית בלי למחוק אותם מההגדרות.
- היקף:
כל קובץ. רק הגדרות מנוהלות יכולות להשבית ווים מנוהלים. - סוג: בוליאני
true: Claude Code מכבה ווים, כל שורת סטטוס מותאמת אישית, וכל פקודת הצעת קבצים מותאמת אישיתfalse: ווים, שורת הסטטוס ופקודת הצעת הקבצים רצים
- ברירת מחדל: לא מוגדר, כך שווים רצים
{
"disableAllHooks": true
}הטווח תלוי באיזה קובץ נושא את המפתח:
- בהגדרות מנוהלות: Claude Code משבית כל וו מוגדר, כולל מנוהלים, וממשיך להריץ את הווים ש-Agent SDK רושם בתהליך
- באפשרות
managedSettingsשל Agent SDK: במכונה שבה מנהל פורס הגדרות מנוהלות, Claude Code מתעלם מהמפתח הזה אלא אם המנהל מאפשר למארח מטמיע להוסיף מדיניות. במקום שהמפתח נכנס לתוקף, ווי משתמש, פרויקט, מקומיים ותוספים נעצרים, וכך גם כל וו באפשרותsettingsשל ה-SDK. ווים מנוהלים של מנהל, ווים של תוספים שמופעלים בכפייה, ו-callbacks של ווי SDK ממשיכים לרוץ. נדרש Claude Code v2.1.309 או חדש יותר. - בכל קובץ הגדרות אחר: Claude Code משבית ווי משתמש, פרויקט, מקומיים ותוספים. ווים מנוהלים, ווי Agent SDK, וווים מתוספים שמופעלים בכפייה ב-
enabledPluginsהמנוהל ממשיכים לרוץ
המפתח גם עוצר מודים, שהם תוספים שהקוד שלהם רושם ווים:
- בהגדרות מנוהלות: המודים בכל תוסף מותקן נעצרים, כולל אלה של הארגון שלך
- בכל קובץ הגדרות אחר: המודים שהתקנת נעצרים, ו-המודים של הארגון שלך ממשיכים לרוץ
מודים המובנים ב-Claude Code ממשיכים לרוץ בשני המקרים. לכל אחד יש מתג משלו.
כדי שווי Agent SDK ימשיכו לרוץ כשהגדרות מנוהלות מגדירות את המפתח הזה, נדרש Claude Code v2.1.242 או חדש יותר.
הפקודה /goal לא יכולה לרוץ כל עוד ווים מושבתים, ותפריט /hooks מציג הודעה במקום הווים שלך.
#שערי שורת סטטוס והצעת קבצים
Claude Code מקבל שתי החלטות עבור statusLine, fileSuggestion ו-subagentStatusLine, בסדר הזה:
- כיבוי לגמרי: כשהגדרות מנוהלות מגדירות
disableAllHooks, או כשהתיקייה אינה מהימנה לפי אותו כלל אמון סביבת עבודה כמו ווים בקובצי הגדרות - צמצום להגדרות מנוהלות: כש-
allowManagedHooksOnlyמוגדר, כש-disableAllHooksהואtrueמחוץ להגדרות מנוהלות אחרי ש-קדימות הגדרות חלה, או כשמתחילים את Claude Code עם--safe-mode
תחת צמצום, Claude Code מריץ ערך מנוהל אם אחד פרוס. אחרת הוא מדלג על הערך שלך בלי אזהרה: שורת הסטטוס מושבתת, וההשלמה האוטומטית של @ חוזרת להצעת הקבצים המובנית.
#disableWorkflows
כבה זרימות עבודה דינמיות ואת פקודות זרימת העבודה המצורפות עבור כל מי שההגדרות שלך מגיעות אליו, כמו ארגון דרך הגדרות מנוהלות. כדי להפעיל או לכבות זרימות עבודה רק עבור עצמך, השתמש ב-enableWorkflows במקום, והמתג Dynamic workflows ב-/config כותב אותו להגדרות המשתמש שלך.
- היקף:
כל קובץ - סוג: בוליאני
true: Claude Code מכבה זרימות עבודה דינמיות ואת פקודות זרימת העבודה המצורפות עבור כל מי שההגדרות שלך מגיעות אליוfalse: זהה ללא מוגדר. האם זרימות העבודה פועלות אז נקבע לפיenableWorkflowsולפי ברירת המחדל של התוכנית שלך
- ברירת מחדל:
false - עקיפות לכל סשן:
CLAUDE_CODE_DISABLE_WORKFLOWSמכבה זרימות עבודה לסשן אחד. מי מבין השניים שמכבה אותן, השני לא יכול להפעיל אותן מחדש
{
"disableWorkflows": true
}#enableWorkflows
הפעל או כבה זרימות עבודה דינמיות עבור עצמך כשברירת המחדל של התוכנית שלך אינה מה שאתה רוצה. מופיע ב-/config בתור Dynamic workflows, שכותב את המפתח הזה להגדרות המשתמש שלך ומסיר אותו שוב כשמחזירים את המתג לברירת המחדל של התוכנית. כדי לכבות זרימות עבודה לכולם מהגדרות מנוהלות, השתמש ב-disableWorkflows במקום.
- היקף:
כל קובץ - סוג: בוליאני
true: Claude Code מפעיל עבורך זרימות עבודה דינמיותfalse: Claude Code מכבה עבורך זרימות עבודה דינמיות
- ברירת מחדל: לא מוגדר, כך שזרימות עבודה פועלות אלא אם אתה בתוכנית Pro, שבה הן כבויות
- עקיפות לכל סשן:
CLAUDE_CODE_DISABLE_WORKFLOWSמכבה זרימות עבודה לסשן אחד, ו-trueכאן לא יכול להפעיל אותן מחדש כל עוד הוא מוגדר
{
"enableWorkflows": true
}disableWorkflows ומדיניות זרימות העבודה של הארגון שלך גם מקבלים קדימות: enableWorkflows: true לא יכול להפעיל מחדש זרימות עבודה כל עוד מקור כלשהו מכבה זרימות עבודה. Claude Code מסתיר את שורת /config כל עוד מקור שאינו הגדרות המשתמש שלך מגדיר enableWorkflows, או מגדיר disableWorkflows ל-true.
#hooks
הרץ פקודות, הנחיות, סוכנים, בקשות HTTP או כלי MCP משלך בתור ווים בנקודות במחזור החיים של Claude Code, כמו לפני קריאת כלי או כשסשן מתחיל. מדריך הווים מפרט כל אירוע, את המטען שלו ואת קודי היציאה שלו. כל אירוע ממופה לרשימה של קבוצות matcher, וכל קבוצה מפרטת את המטפלים להרצה כשה-matcher חל.
- היקף:
כל קובץ. ווים מתמזגים בין קבצים במקום להחליף זה את זה, ואי אפשר להסיר ווים מהגדרות מנוהלות מקבצים אחרים. - סוג: אובייקט שהמפתחות שלו הם אירועי וו. כל ערך הוא מערך של קבוצות
{ "matcher", "hooks" }שרשומות ה-hooksשלהן הן בעלותtypeשל"command","prompt","agent","http"או"mcp_tool" - ברירת מחדל: לא מוגדר, כך שאף וו לא רץ
דוגמה זו מריצה סקריפט לפני כל קריאת כלי Bash:
{
"hooks": {
"PreToolUse": [
{
"matcher": "Bash",
"hooks": [
{ "type": "command", "command": "~/.claude/hooks/check-bash.sh" }
]
}
]
}
}לכל אירוע, תבנית matcher ושדה handler, ראה את מדריך הווים. כדי לכבות ווים, ראה disableAllHooks. כדי להגביל ווים לאלה שהארגון שלך פורס, ראה allowManagedHooksOnly.
#httpHookAllowedEnvVars
וו HTTP יכול להכניס את הערך של משתנה סביבה לכותרת בקשה, למשל כותרת Authorization: Bearer $HOOK_TOKEN, אבל רק עבור משתנים שהוו מפרט ב-allowedEnvVars שלו. מפתח זה קובע מגבלה חיצונית על הרשימה הזו עבור כל וו HTTP: וו יכול להשתמש במשתנה רק אם גם allowedEnvVars שלו וגם המפתח הזה מציינים אותו. השתמש בו כדי לעצור וו מקריאת סוד שאסור לו לקרוא, גם כשהגדרת הוו מבקשת אותו.
- היקף:
כל קובץ. מערכים מתמזגים בין קובצי הגדרות. - סוג: מערך של שמות משתני סביבה
- ברירת מחדל: לא מוגדר, כך שרשימת
allowedEnvVarsשל כל וו חלה
דוגמה זו מגבילה שילוב בכותרות ל-MY_TOKEN ול-HOOK_SECRET:
{
"httpHookAllowedEnvVars": ["MY_TOKEN", "HOOK_SECRET"]
}רשימת ההיתר חלה על ווים מכל מקור, כולל הגדרות מנוהלות.
באפשרות managedSettings של Agent SDK, Claude Code מתעלם מרשימה שיש בה רשומות, ולכן העבר אותה באפשרות settings של ה-SDK במקום. ראה מה רשימה ריקה עושה בהגדרות הורה.
#workflowKeywordTriggerEnabled
בחר אם הקלדת מילת המפתח ultracode בהנחיה מפעילה זרימת עבודה דינמית. הגדר אותו ל-false כדי להקליד את המילה בלי להפעיל אחת.
- היקף:
כל קובץ. מופיע ב-/configבתור Ultracode keyword trigger. - סוג: בוליאני
true: הקלדתultracodeבהנחיה מפעילה זרימת עבודה דינמיתfalse: אפשר להקליד את המילה בלי להפעיל אחת
- ברירת מחדל:
true
{
"workflowKeywordTriggerEnabled": false
}הגדרת ה-effort של ultracode, /workflows ופקודות זרימת עבודה שמורות אינן מושפעות.
#workflowSizeGuideline
קבע את מספר הסוכנים ש-Claude שואף אליו בזרימות העבודה הדינמיות שהוא כותב. Claude Code שולח את הערך ל-Claude כעצה, לא כתקרה נאכפת: "small" מבקש פחות מ-5 סוכנים, "medium" פחות מ-10, ו-"large" פחות מ-50. בחר "small" כשרוצים לתחום את מה שזרימת עבודה מוציאה.
- היקף:
כל קובץ. ערך שם מקבל קדימות על פני הבחירה Dynamic workflow size ב-/config, ש-Claude Code שומר ב-~/.claude.json, ו-Claude Code מסתיר את השורה הזו כל עוד קובץ הגדרות מגדיר את המפתח. - סוג: מחרוזת, אחת מאלה:
"unrestricted": אין קו מנחה, כך ש-Claude מתאים את גודל זרימת העבודה למשימה"small": Claude שואף לפחות מ-5 סוכנים"medium": Claude שואף לפחות מ-10 סוכנים"large": Claude שואף לפחות מ-50 סוכנים
- ברירת מחדל:
"medium", או"small"כשאתה מחובר בתוכנית Pro עם Claude Code v2.1.271 או חדש יותר
{
"workflowSizeGuideline": "small"
}#תוספים ומיומנויות
הפעל תוספים, רשום marketplaces, הגבל אילו מקורות תוספים ארגון מתיר, ושלוט אילו מיומנויות נטענות. להתקנה ולבניית תוספים, ראה תוספים.
#disableBundledSkills
כבה את המיומנויות ואת זרימות העבודה שכלולות עם Claude Code. Claude Code מסיר לגמרי מיומנויות וזרימות עבודה מצורפות, בעוד שפקודות מובנות כמו /init נשארות ניתנות להקלדה אבל מוסתרות מהמודל.
- היקף:
כל קובץ - סוג: בוליאני
true: Claude Code מסיר מיומנויות וזרימות עבודה מצורפות ומסתיר מהמודל פקודות מובנות כמו/initfalse: מיומנויות מצורפות נטענות
- ברירת מחדל: לא מוגדר, כך שמיומנויות מצורפות נטענות
- עקיפות לכל סשן:
CLAUDE_CODE_DISABLE_BUNDLED_SKILLSשמוגדר ל-1מכבה מיומנויות מצורפות לסשן אחד. מי מבין השניים שמכבה אותן, השני לא יכול להפעיל אותן מחדש
{
"disableBundledSkills": true
}מיומנויות מתוספים, מ-.claude/skills/ ומ-.claude/commands/ אינן מושפעות. /doctor נשאר ניתן להקלדה כמו הפקודות המובנות. כדי להסתיר אותו, הגדר DISABLE_DOCTOR_COMMAND במקום.
#disableSkillShellExecution
כבה הרצת מעטפת בתוך השורה עבור !`...` ועבור בלוקי ```! ב-מיומנויות ובפקודות מותאמות אישית ממקורות של משתמש, פרויקט, תוסף או תיקייה נוספת. Claude Code מחליף כל פקודה ב-[shell command execution disabled by policy] במקום להריץ אותה.
- היקף:
כל קובץ.trueבהגדרות מנוהלות לא ניתן לדריסה על ידיfalseבמקום אחר. - סוג: בוליאני
true: Claude Code מחליף כל פקודת מעטפת בתוך השורה ב-[shell command execution disabled by policy]במקום להריץ אותהfalse: מעטפת בתוך השורה רצה
- ברירת מחדל: לא מוגדר, כך שמעטפת בתוך השורה רצה
{
"disableSkillShellExecution": true
}מיומנויות מצורפות ומיומנויות שנפרסות דרך הגדרות מנוהלות אינן מושפעות.
#skillOverrides
הסתרה או כיווץ של skill בלי לערוך את SKILL.md שלו. Claude Code מחיל את הערך שמתחת לשם של כל skill על רשימת ה-skills ש-Claude רואה ועל ההשלמה האוטומטית של /.
- Scope:
Any file. תפריט/skillsכותב אל.claude/settings.local.json. - Type: אובייקט שממפה שם skill לאחד מאלה:
"on": Claude רואה את ה-skill ואפשר להקליד/name"name-only": Claude רואה את ה-skill לפי שם בלי התיאור שלו"user-invocable-only": Claude לא רואה את ה-skill, אבל עדיין אפשר להקליד/name"off": Claude לא רואה את ה-skill ו-/nameמוסתר מההשלמה האוטומטית
- Default: לא מוגדר, ולכן כל skill הוא
"on"
הדוגמה הזו מציגה את legacy-context ל-Claude לפי שם בלבד ומסתירה את deploy מ-Claude ומההשלמה האוטומטית של /:
{
"skillOverrides": {
"legacy-context": "name-only",
"deploy": "off"
}
}Overrides לא חלים על plugin skills, שמנוהלים דרך /plugin.
בהגדרות מנוהלות ובקבצים שמועברים עם --settings, מפתח על alias של skill מובנה, כגון checkup עבור /doctor, חל גם על ה-skill. ראו how alias keys combine with keys on the skill's own name.
#syncClaudeAiSkills
כיבוי ההורדה של skills enabled for your claude.ai account. Claude Code מוריד אותם אל ~/.claude/skills/synced/ בterminal sessions where you sign in with your claude.ai account, אינטראקטיביות או לא אינטראקטיביות, וב-sessions של Cowork ושל הענן. הגדירו false כדי לעצור את ההורדה הזו ולהפסיק לטעון את ה-skills שכבר סונכרנו. Claude Code מכבד רק false: true זהה למצב לא מוגדר ולא מפעיל סנכרון במקום שבו הוא כבוי אחרת.
- Scope:
User, local, or managed, וקבצים שמועברים עם--settings. מאגר לא יכול לכבות את זה בשבילכם. - Type: Boolean
false: Claude Code מפסיק להוריד synced skills ומפסיק לטעון את אלה שכבר נמצאים ב-~/.claude/skills/synced/. בהגדרות user או managed, הוא גם מעביר אותם אל~/.claude/skills/.trash/true: זהה למצב לא מוגדר
- Default: לא מוגדר, ולכן sessions שמחוברים עם חשבון claude.ai מסנכרנים את ה-skills
הדוגמה הזו מונעת ממכונה להוריד את ה-skills של החשבון בכל session:
{
"syncClaudeAiSkills": false
}#syncClaudeAiPlugins
כיבוי ההורדה של plugins enabled for your claude.ai account. Claude Code מוריד אותם אל ~/.claude/plugins/synced/ בתחילת terminal sessions שבהם מתחברים עם חשבון claude.ai וב-sessions של Cowork, וטוען כל אחד כ-<name>@synced. הגדירו false כדי לעצור את ההורדה הזו ולהפסיק לטעון את ה-plugins שכבר סונכרנו. Claude Code מכבד רק false: true זהה למצב לא מוגדר ולא מפעיל סנכרון במקום שבו הוא כבוי אחרת. דורש Claude Code v2.1.273 או חדש יותר.
- Scope:
User, local, or managed, וקבצים שמועברים עם--settings. מאגר לא יכול לכבות את זה בשבילכם. - Type: Boolean
false: Claude Code מפסיק להוריד synced plugins ומפסיק לטעון את אלה שכבר נמצאים ב-~/.claude/plugins/synced/. בהגדרות user או managed, הוא גם מעביר אותם אל~/.claude/plugins/.trash/true: זהה למצב לא מוגדר
- Default: לא מוגדר, ולכן sessions שמחוברים עם חשבון claude.ai מסנכרנים את ה-plugins
כדי לכבות plugin מסונכרן אחד ולא את כולם, הגדירו "<name>@synced": false ב-enabledPlugins.
הדוגמה הזו מונעת ממכונה להוריד את ה-plugins של החשבון בכל session:
{
"syncClaudeAiPlugins": false
}#allowedChannelPlugins
בחירה אילו plugins של channel יכולים לדחוף הודעות אל sessions בארגון. כשמגדירים את זה, Claude Code משתמש ברשימה במקום רשימת ההיתר ברירת המחדל של Anthropic. כל רשומה מציינת plugin ואת ה-marketplace שממנו הוא מגיע.
- Scope:
Managed - Type: מערך של אובייקטים, כל אחד עם מחרוזות
marketplaceו-plugin. רשומה יכולה במקום זאת להיות מחרוזת"plugin@marketplace"כגון"telegram@claude-plugins-official", ש-Claude Code מתייחס אליה כאובייקט המקביל. צורת המחרוזת דורשת Claude Code v2.1.267 או חדש יותר. גרסאות קודמות דוחות את כל הערךallowedChannelPluginsכשהוא מכיל אחת כזו - Default: לא מוגדר, ולכן Claude Code משתמש ברשימת ההיתר ברירת המחדל של Anthropic
הדוגמה הזו מפעילה channels ומתירה רק את ה-plugin של Telegram מה-marketplace הרשמי של Anthropic:
{
"channelsEnabled": true,
"allowedChannelPlugins": [
{ "marketplace": "claude-plugins-official", "plugin": "telegram" }
]
}מערך ריק חוסם כל channel plugin.
המפתח הזה נכנס לתוקף אחרי ש-channels עוברים את השער channelsEnabled עבור החשבון: בתוכניות Team ו-Enterprise, ובחשבונות Console עם הגדרות managed, זה אומר channelsEnabled: true. ראו Restrict which channel plugins can run.
#blockedMarketplaces
חסימת מקורות marketplace של plugins עבור הארגון. Claude Code בודק את רשימת החסימה בהוספת marketplace ובהתקנה, בעדכון, ברענון ובעדכון אוטומטי של plugin, כך ש-marketplace שמישהו הוסיף לפני שהוגדרה המדיניות לא יכול לשמש גם להבאת plugins. מקורות חסומים נבדקים לפני ההורדה, ולכן הם אף פעם לא נוגעים במערכת הקבצים.
אם מגדירים את המפתח הזה ב-claude.ai admin console, גם claude.ai מחיל אותו כשמישהו בארגון מוסיף marketplace ממאגר git ב-claude.ai, כפי שמתואר ב-How restrictions work.
- Scope:
Managed - Type: מערך של אובייקטי מקור marketplace, באותן צורות כמו
strictKnownMarketplaces - Default: לא מוגדר, ולכן אף marketplace לא חסום
הדוגמה הזו חוסמת מאגר GitHub אחד כמקור marketplace:
{
"blockedMarketplaces": [
{ "source": "github", "repo": "untrusted/plugins" }
]
}רשומת github יכולה להשתמש ב-owner-wildcard form "owner/*" כדי לחסום כל מאגר תחת בעלים זה ב-GitHub, מה שדורש Claude Code v2.1.223 או חדש יותר. הוסיפו { "source": "skills-dir" } כדי לעצור את Claude Code מלטעון plugins של @skills-dir גם מ-~/.claude/skills/ וגם מ-.claude/skills/ של פרויקט, בלי להגביל marketplace כלשהו. ראו Managed marketplace restrictions.
#channelsEnabled
התרת channels עבור הארגון. בתוכניות Team ו-Enterprise של claude.ai, Claude Code חוסם channels עד שמגדירים את זה ל-true. עבור חשבונות Anthropic Console שמאמתים עם מפתח API, channels מותרים כברירת מחדל. אם הארגון פורס הגדרות managed, Claude Code חוסם channels גם בחשבונות האלה עד שמגדירים את המפתח הזה ל-true.
- Scope:
Managed - Type: Boolean
true: Claude Code מתיר channels עבור הארגוןfalse: זהה למצב לא מוגדר. האם channels חסומים תלוי בתוכנית, כפי שאומר Default
- Default: לא מוגדר. channels חסומים בתוכניות Team ו-Enterprise ובחשבונות Console עם הגדרות managed, ומותרים בתוכניות Pro, Max ו-Ultra ובחשבונות Console בלי הגדרות managed
{
"channelsEnabled": true
}כדי להגביל אילו plugins יכולים להירשם כ-channels אחרי שהם מופעלים, הגדירו allowedChannelPlugins. ראו Enterprise controls.
#disableCommandPluginSources
חסימת מקור ה-plugin מסוג command, שמתקין plugin על ידי הרצת פקודה שה-marketplace הכריז עליה במכונה של המשתמש. כשמגדירים את זה ל-true, Claude Code אף פעם לא מריץ את הפקודה, לא מתקין ולא מעדכן plugins שמקורם ב-command, ומפסיק לטעון את אלה שכבר מותקנים. הגדירו ל-false כדי להתיר אותם במפורש. בכל פעם שהוא חוסם מקורות command, בין אם מגדירים ל-true ובין אם משאירים לא מוגדר תחת allowManagedHooksOnly, הוא גם חוסם פקודות headersHelper של marketplace, למעט marketplace שההגדרות המנוהלות עצמן מכריזות עליו. דורש Claude Code v2.1.229 או חדש יותר, וחסימת headersHelper דורשת v2.1.238 או חדש יותר.
- Scope:
Managed - Type: Boolean
true: Claude Code אף פעם לא מריץ את הפקודה שה-marketplace הכריז עליה, לא מתקין ולא מעדכן plugins שמקורם ב-command, ומפסיק לטעון את אלה שכבר מותקניםfalse: Claude Code מתיר במפורש plugins שמקורם ב-command
- Default: לא מוגדר, ולכן Claude Code פועל לפי
allowManagedHooksOnly: ארגון שמגביל הרצת hooks להגדרות managed מקבל גם מקורות command מושבתים. אפליקציה שמעבירהdisableAllHooks: trueבאפשרותmanagedSettingsשל Agent SDK לא משביתה בפני עצמה מקורות command.
{
"disableCommandPluginSources": true
}דורש Claude Code v2.1.229 או חדש יותר.
#pluginSuggestionMarketplaces
שמות ה-marketplaces שה-plugins שלהם יכולים להופיע כהצעות התקנה לפי הקשר, בטיפים של ה-spinner ומוצמדים בראש לשונית Discover של /plugin. הטיפ המובנה מצד ראשון של frontend-design לא מושפע. ההצעות מגיעות מהצהרת relevance של כל plugin ברשומת ה-marketplace שלו.
- Scope:
Managed - Type: מערך של שמות marketplace
- Default: לא מוגדר, ולכן לא מוצגות הצעות שהוכרזו על ידי marketplace
{
"pluginSuggestionMarketplaces": ["acme-corp-plugins"]
}שם נכנס לתוקף רק כשה-marketplace רשום במכונה והמקור הרשום שלו מוכרז גם באותן הגדרות managed, או כרשומת extraKnownMarketplaces עבור השם הזה או כרשומה של strictKnownMarketplaces. Claude Code מתעלם מ-marketplace שנרשם ממקור אחר תחת שם שברשימת ההיתר. ה-marketplace הרשמי פטור מדרישת המקור: מספיק להכניס את שמו לרשימת ההיתר, כי השם הזה יכול להירשם רק מהמקור הרשמי של Anthropic. ראו Suggest plugins by context.
#pluginTrustMessage
הוספת טקסט משל הארגון לאזהרת האמון ב-plugin ש-Claude Code מציג לפני ההתקנה, לדוגמה כדי לאשר ש-plugins מה-marketplace הפנימי עברו בדיקה.
- Scope:
Managed - Type: string
- Default: לא מוגדר, ולכן Claude Code מציג את האזהרה הרגילה לבדה
{
"pluginTrustMessage": "All plugins from our marketplace are approved by IT"
}#strictKnownMarketplaces
הגבלה של מקורות marketplace של תוספים שאנשים בארגון יכולים להוסיף ולהתקין מהם תוספים. Claude Code אוכף את רשימת ההיתר בהוספת marketplace ובהתקנה, בעדכון, ברענון ובעדכון אוטומטי של תוסף, לפני כל פעולת רשת או מערכת קבצים, כך ש-marketplace שמישהו הוסיף לפני שהגדרת את המדיניות לא יכול לשמש לשליפת תוספים ברגע שהמקור שלו כבר לא תואם. משתמשים חסומים רואים שגיאה שמציינת את המדיניות המנוהלת.
אם אתה מגדיר את המפתח הזה ב-מסוף הניהול של claude.ai, claude.ai גם מחיל אותו כשמישהו בארגון מוסיף marketplace ממאגר git ב-claude.ai, כפי ש-איך ההגבלות עובדות מתאר.
- היקף:
Managed - סוג: מערך של אובייקטי מקור marketplace. ראה סוגי מקור מותרים
- ברירת מחדל: לא מוגדר, כך שמשתמשים יכולים להוסיף כל marketplace. מערך ריק הוא נעילה מלאה שחוסמת כל מקור marketplace, כולל ה-marketplace הרשמי של Anthropic
הדוגמה הזו מתירה שני מאגרי GitHub, אחד מוצמד ל-ref v2.0, וכתובת URL אחת של marketplace.json מתארח:
{
"strictKnownMarketplaces": [
{ "source": "github", "repo": "acme-corp/approved-plugins" },
{ "source": "github", "repo": "acme-corp/security-tools", "ref": "v2.0" },
{ "source": "url", "url": "https://plugins.example.com/marketplace.json" }
]
}אפשר גם לכתוב את המפתח הזה כ-allowedMarketplaces. כינויי מפתח של Marketplace מתאר איך Claude Code מתייחס לכינוי ואיזו גרסה מקבלת אותו. המפתח הזה הוא שער מדיניות: הוא שולט במה שמשתמשים רשאים להוסיף אבל לא רושם דבר. כדי להגביל ולרשום מראש בקובץ אחד, ראה שילוב עם extraKnownMarketplaces. לתצוגה שמיועדת למשתמש, ראה הגבלות marketplace מנוהלות.
#סוגי מקור מותרים
כל רשומה למטה מציגה רשומת רשימת היתר אחת לכל סוג מקור ואת השדות שהיא מקבלת. רוב הסוגים תואמים בדיוק. hostPattern ו-pathPattern תואמים לפי regex, ורשומות github יכולות להשתמש ב-תו כללי של בעלים.
| מקור | רשומה לדוגמה | שדות |
|---|---|---|
github | { "source": "github", "repo": "acme-corp/plugins", "ref": "main", "path": "marketplace" } | repo חובה. ref הוא ענף או תג. path הוא תת ספרייה |
git | { "source": "git", "url": "https://gitlab.example.com/tools/plugins.git", "ref": "production" } | url חובה. ref ו-path כמו ב-github |
url | { "source": "url", "url": "https://plugins.example.com/marketplace.json", "headers": { "Authorization": "Bearer ${TOKEN}" } } | url חובה. headers מוסיף כותרות HTTP לגישה מאומתת |
file | { "source": "file", "path": "/opt/acme-corp/plugins/marketplace.json" } | path חובה, הנתיב המוחלט לקובץ marketplace.json |
directory | { "source": "directory", "path": "/opt/acme-corp/approved-marketplaces" } | path חובה, הנתיב המוחלט לספרייה שמכילה .claude-plugin/marketplace.json |
hostPattern | { "source": "hostPattern", "hostPattern": "^github\\.example\\.com$" } | hostPattern חובה, regex שמותאם בכל מקום במארח של ה-marketplace. עגן אותו עם ^ ו-$ כדי להתאים את המארח כולו |
pathPattern | { "source": "pathPattern", "pathPattern": "^/opt/approved/" } | pathPattern חובה, regex שמותאם בכל מקום ב-path של מקורות file ו-directory. התחל אותו ב-^ כדי לקבע קידומת |
skills-dir | { "source": "skills-dir" } | אין שדות |
לחלק מסוגי המקור יש כללים מעבר לטבלה:
url: marketplace מסוג URL מוריד רק את קובץmarketplace.json, ו-Claude Code לא שולף קבצי תוסף לפי נתיב יחסי מהשרת הזה, כך שהתוספים שלו חייבים להשתמש ב-מקור תוסף שאינו נתיב יחסי, כגון כתובת URL של ארכיון, שיכולה להיות על אותו מארח. לתוספים עם נתיבים יחסיים, השתמש ב-marketplace מבוסס Git. ראה תוספים עם נתיבים יחסיים נכשלים ב-marketplaces מבוססי URL.hostPattern: השתמש בו כדי להתיר כל marketplace בשרת GitHub Enterprise פנימי או GitLab בלי לפרט כל מאגר. Claude Code מתאים מקורותgithubמולgithub.com, לוקח את שם המארח ממקורותurl, ולוקח אותו ממקורותgitלפי הצורה של כתובת git:- כתובת URL עם סכמה, כגון
https://אוssh://: שם המארח בכתובת. - כתובת SSH בלי סכמה, בצורה
user@host:pathשל git, כגון[email protected]:tools/plugins.git: המארח בין@ל-:, והוא המארח ש-git מתחבר אליו. - כל צורה אחרת בלי סכמה: אין מארח, ולכן אין רשומת
hostPatternשלstrictKnownMarketplacesשתואמת אותה. עבורhostPatternשלblockedMarketplaces, Claude Code לוקח מארח מקבוצה רחבה יותר של צורות, כך שרשומת רשימת חסימה עדיין יכולה להתאים לצורה כזו. לפני v2.1.234,hostPatternשלstrictKnownMarketplacesהתאים גם לכמה צורות ש-git לא מתייחס אליהן ככתובות SSH.
למקורות
fileו-directoryאין מארח והם אף פעם לא תואמים רשומתhostPattern.- כתובת URL עם סכמה, כגון
pathPattern: השתמש בו כדי להתיר marketplaces של מערכת קבצים לצד רשומותhostPatternלמקורות רשת.".*"מתיר כל נתיב מקומי. תבנית צרה יותר כגון"^/opt/approved/"מגבילה לספרייה.skills-dir: כל רשימת היתר, גם ריקה, מפסיקה את הטעינה של Claude Code של תוספי@skills-dirגם מ-~/.claude/skills/וגם מ-.claude/skills/של פרויקט. כדי להמשיך לטעון אותם, הוסף את הרשומה{ "source": "skills-dir" }והשאר אתstrictPluginOnlyCustomizationלא מוגדר. לרשומה אין משמעות מחוץ למפתח הזה ול-blockedMarketplaces.
#תווים כלליים של בעלים
רשומת github שערך ה-repo שלה הוא "<owner>/*" תואמת כל מאגר תחת בעל GitHub הזה. תווים כלליים של בעלים דורשים Claude Code v2.1.223 או חדש יותר ועובדים רק ב-strictKnownMarketplaces וב-blockedMarketplaces. בכל מקום אחר שבו מופיע מקור github, כגון extraKnownMarketplaces או /plugin marketplace add, ערך ה-repo חייב לנקוב בשם של מאגר יחיד. לפני v2.1.223, Claude Code השווה את הרשומה מילולית, כך שרשומת רשימת היתר לא התאימה לאף מאגר ורשומת רשימת חסימה לא חסמה דבר. רשומות של מאגר יחיד נאכפות בכל גרסה.
הרשומה הזו מתירה כל מאגר marketplace בארגון acme-corp:
{
"strictKnownMarketplaces": [
{ "source": "github", "repo": "acme-corp/*" }
]
}רק המיקום של שם המאגר כולו יכול להיות תו כללי. Claude Code מתעלם מרשומות כגון *, */plugins או acme-corp/tools-* כלא תקינות, כך שהן לא תואמות אף מאגר.
כללי ההתאמה שונים בין שתי ההגדרות:
| כלל | strictKnownMarketplaces | blockedMarketplaces |
|---|---|---|
| איותי מקור תואמים | צורת owner/repo בלבד. כתובת git שמשכפלת את אותו מאגר לא תואמת | כל איות, כולל כתובות git שנפתרות לאותו מאגר ב-github.com |
| רישיות הבעלים | רגיש לרישיות | לא רגיש לרישיות |
ref | עוקב אחרי כללי רשומה מדויקת: רשומה עם ref תואמת רק מקורות עם אותו ref מדויק, ורשומה בלי ref תואמת רק מקורות שלא מציינים ref | רשומה בלי ref חוסמת את כל ערכי ה-ref של המאגרים שהיא תואמת |
path | רופף יותר מכללי רשומה מדויקת: רשומה עם path דורשת את אותו ערך מדויק, ורשומה בלי path תואמת כל נתיב בתוך המאגר | רשומה בלי path חוסמת את כל הנתיבים של המאגרים שהיא תואמת |
#התאמה מדויקת
לכל סוג מקור מלבד רשומות github עם תו כללי של בעלים ורשומות hostPattern ו-pathPattern שמותאמות ב-regex, Claude Code מתיר הוספה של משתמש רק כאשר מקור ה-marketplace תואם רשומה בדיוק. עבור המקורות מבוססי git github ו-git, התאמה מדויקת כוללת את השדות האופציונליים:
repoאוurlחייבים להתאים בדיוק- שדה
refחייב להתאים בדיוק, או ששניהם לא מוגדרים - שדה
pathחייב להתאים בדיוק, או ששניהם לא מוגדרים
לדוגמה, Claude Code מתייחס לכל זוג למטה כשני מקורות שונים:
{ "source": "github", "repo": "acme-corp/plugins" }ו-{ "source": "github", "repo": "acme-corp/plugins", "ref": "main" }{ "source": "github", "repo": "acme-corp/plugins", "path": "marketplace" }ו-{ "source": "github", "repo": "acme-corp/plugins" }
#התרה של ה-marketplace הרשמי בלבד
כדי להתיר את ה-marketplace הרשמי של Anthropic ושום דבר אחר, ציין את המאגר שלו:
{
"strictKnownMarketplaces": [
{ "source": "github", "repo": "anthropics/claude-plugins-official" }
]
}עם הרשומה הזו, Claude Code משאיר marketplace רשמי שכבר נרשם זמין, ובמכונה חדשה רושם את ה-marketplace אוטומטית בפעם הראשונה שאתה מתחיל סשן מסוף אינטראקטיבי. רישום אוטומטי מפספס לרוב:
- סביבות לא אינטראקטיביות שרצות לפני סשן המסוף האינטראקטיבי הראשון של המכונה.
- מכונות שבהן Claude Code רץ רק דרך ההרחבה של VS Code.
- מכונות שבהן Claude Code כבר הריץ סשן מסוף אינטראקטיבי תחת מדיניות שחסמה את ה-marketplace, כגון נעילת המערך הריק. Claude Code מתעד את הניסיון החסום ולא מנסה שוב אחרי שהמדיניות משתנה.
במכונות האלה, הוסף את ה-marketplace ל-extraKnownMarketplaces באותו managed-settings.json כדי ש-Claude Code ירשום אותו אוטומטית, או הרץ את claude plugin marketplace add anthropics/claude-plugins-official.
#שילוב עם extraKnownMarketplaces
לשני המפתחות תפקידים שונים. הטבלה הזו משווה ביניהם:
| היבט | strictKnownMarketplaces | extraKnownMarketplaces |
|---|---|---|
| מטרה | אכיפת מדיניות ארגונית | נוחות לצוות |
| קובץ הגדרות | הגדרות מנוהלות בלבד | כל קובץ הגדרות |
| התנהגות | חוסם הוספות שלא ברשימת ההיתר | רושם marketplaces חסרים |
| מתי נאכף | לפני פעולות רשת ומערכת קבצים | מיד מהגדרות משתמש או מהגדרות מנוהלות, ואחרי חלון האמון של סביבת העבודה עבור קבצים של מאגר |
| אפשר לעקוף | לא, הקדימות הגבוהה ביותר | כן, על ידי הגדרות בקדימות גבוהה יותר |
| תבנית מקור | אובייקט מקור ישיר | marketplace בעל שם עם אובייקט source מקונן |
כדי גם להגביל וגם לרשום מראש marketplace לכל המשתמשים, הגדר את שניהם ב-managed-settings.json:
{
"strictKnownMarketplaces": [
{ "source": "github", "repo": "acme-corp/plugins" }
],
"extraKnownMarketplaces": {
"acme-tools": {
"source": { "source": "github", "repo": "acme-corp/plugins" }
}
}
}כשמוגדר רק strictKnownMarketplaces, משתמשים עדיין יכולים להוסיף marketplace מותר בעצמם עם /plugin marketplace add. ה-marketplace הרשמי של Anthropic הוא היחיד ש-Claude Code רושם אוטומטית, ורק כאשר רשימת ההיתר מתירה אותו. התרה של ה-marketplace הרשמי בלבד מפרטת את המכונות שהוא מפספס.
#strictPluginOnlyCustomization
חסימה של skills, agents, hooks ושרתי MCP ממקורות משתמש ופרויקט, כך שהם יכולים להגיע רק מתוספים או מהגדרות מנוהלות. שלב אותו עם strictKnownMarketplaces כדי לשלוט בשרשרת האספקה המלאה של ההתאמה האישית: רשימת ההיתר של marketplace שולטת באילו תוספים משתמשים יכולים להתקין.
- היקף:
Managed - סוג:
trueכדי לנעול את כל ארבעת סוגי ההתאמה האישית, או מערך שמנקוב בשמות הסוגים לנעילה, מתוך"skills","agents","hooks"ו-"mcp" - ברירת מחדל: לא מוגדר, כך שדבר לא נעול
הדוגמה הזו נועלת skills ו-hooks ומשאירה agents ושרתי MCP לא נעולים:
{
"strictPluginOnlyCustomization": ["skills", "hooks"]
}אם אתה נועל משטח כלשהו, Claude Code גם מפסיק לטעון תוספי ספריית skills, תיקיות התוספים שמשתמשים שומרים תחת ~/.claude/skills/ או .claude/skills/. המשתמשים מניחים את התיקיות האלה בעצמם במקום להתקין אותן מ-marketplace, כך ש-Claude Code מתייחס אליהן כהתאמה אישית של משתמש תחת ההגדרה הזו.
ארבע רשומות מפתחות המשנה למטה מפרטות מה עוד כל משטח חוסם ומה עדיין נטען. Claude Code מתעלם משמות משטח שהוא לא מזהה, במקום להכשיל את קובץ ההגדרות, כך שאתה יכול להוסיף שמות משטח חדשים לפני שכל לקוח עודכן.
#strictPluginOnlyCustomization.skills
נעילה של משטח skills. Claude Code מפסיק לטעון skills מ-~/.claude/skills/ ומ-.claude/skills/, פקודות מותאמות מ-~/.claude/commands/ ומ-.claude/commands/, skills ופקודות תחת ספריות --add-dir, ו-skills שמסונכרנים מחשבון claude.ai שלך. הוא ממשיך לטעון skills ארוזים, skills בספריית המדיניות המנוהלת, ו-skills מתוספים שאינם תוספי ספריית skills.
- היקף:
Managed - סוג: המחרוזת
"skills"במערךstrictPluginOnlyCustomization - ברירת מחדל: לא נעול
{
"strictPluginOnlyCustomization": ["skills"]
}#strictPluginOnlyCustomization.agents
נעילה של משטח agents. Claude Code מפסיק לטעון agents מ-~/.claude/agents/, מ-.claude/agents/ ומספריות --add-dir. הוא ממשיך לטעון agents מובנים, agents בספריית המדיניות המנוהלת, ו-agents מתוספים שאינם תוספי ספריית skills.
- היקף:
Managed - סוג: המחרוזת
"agents"במערךstrictPluginOnlyCustomization - ברירת מחדל: לא נעול
{
"strictPluginOnlyCustomization": ["agents"]
}#strictPluginOnlyCustomization.hooks
נעילה של משטח hooks:
- מפסיק להריץ:
- ממשיך להריץ: hooks בהגדרות מנוהלות, ו-hooks מתוספים שאינם תוספי ספריית skills
skills, פקודות מותאמות ו-agents שה-hooks ב-frontmatter שלהם מפסיקים לרוץ עדיין נטענים כל עוד המשטח שלהם עצמם לא נעול.
skill אישי או של פרויקט שמצהיר על hooks ב-frontmatter שלו גם מאבד את האישור מראש של allowed-tools, כך שהמשתמשים שלך מקבלים בקשות הרשאה עבור הכלים שהשדה מפרט. כש-skill כזה רץ ב-subagent דרך context: fork, הוא שומר את האישור מראש. skill שלא מצהיר על hooks שומר גם הוא את האישור מראש.
- היקף:
Managed - סוג: המחרוזת
"hooks"במערךstrictPluginOnlyCustomization - ברירת מחדל: לא נעול
{
"strictPluginOnlyCustomization": ["hooks"]
}#strictPluginOnlyCustomization.mcp
נעילה של משטח mcp. Claude Code מפסיק לטעון שרתי MCP מ-~/.claude.json ומ-.mcp.json. הוא ממשיך לטעון שרתים מ-managed-mcp.json, שרתים מ-managedMcpServers, ושרתי MCP מתוספים שאינם תוספי ספריית skills.
- היקף:
Managed - סוג: המחרוזת
"mcp"במערךstrictPluginOnlyCustomization - ברירת מחדל: לא נעול
{
"strictPluginOnlyCustomization": ["mcp"]
}#enabledPlugins
מפעילים או מכבים תוספים בודדים, לפי המפתח plugin-name@marketplace-name. תוסף שאין לו רשומה בשום היקף חוזר לערך defaultEnabled שלו. כשמפעילים או מכבים תוסף עם /plugin או claude plugin enable, Claude Code כותב את המפתח הזה עבורך.
- היקף:
כל קובץ - סוג: אובייקט שממפה
plugin-name@marketplace-nameלבוליאני - ברירת מחדל: לא מוגדר, כך שכל תוסף עוקב אחרי ערך
defaultEnabledשלו
הדוגמה הזו מפעילה שני תוספים משוק team-tools ומכבה אחד מ-personal:
{
"enabledPlugins": {
"code-formatter@team-tools": true,
"deployment-tools@team-tools": true,
"experimental-features@personal": false
}
}כל היקף משרת מטרה אחרת:
- הגדרות משתמש: העדפות התוספים האישיות שלך
- הגדרות פרויקט: תוספים שמשותפים עם כולם במאגר
- הגדרות מקומיות: דריסות לפי מכונה, והן ב-gitignore כש-Claude Code שומר שם הגדרה
- הגדרות מנוהלות: מדיניות לכל הארגון. תוסף שמוגדר כאן ל-
falseחסום מהתקנה בכל היקף ומוסתר מהשוק
הגדרות פרויקט גוברות על הגדרות משתמש, כך שהגדרת תוסף ל-false ב-~/.claude/settings.json לא מכבה תוסף שקובץ .claude/settings.json של הפרויקט מפעיל. כדי לצאת מתוסף שהפרויקט מפעיל במכונה שלך, הגדר אותו ל-false ב-.claude/settings.local.json. תוספים שהגדרות מנוהלות מפעילות בכפייה אי אפשר לכבות כך, כי הגדרות מנוהלות דורסות הגדרות מקומיות.
הפעלת תוסף ממקור חיצוני כגון מאגר GitHub או חבילת npm בקובץ .claude/settings.json של פרויקט לא מתקינה אותו עבור אנשים אחרים. בכל נתיב שטוען תוספים, Claude Code מדווח שהתוסף לא מותקן עד שכל משתמש מתקין אותו בעצמו.
#extraKnownMarketplaces
רושמים שוקי תוספים נוספים לפי שם, כדי שאנשים שפותחים את המאגר, או כל מי שההגדרות המנוהלות שלך מגיעות אליו, יקבלו את השוק בלי להוסיף אותו בעצמם. Claude Code רושם כל שוק שהוא עדיין לא מכיר. האם תוסף ש-enabledPlugins מציין מתוכו מותקן תלוי במקור התוסף ובאיזה קובץ מפעיל אותו. הכללים נמצאים ברשומה הזו.
- היקף:
כל קובץ. Claude Code מכבד רשומות ב-.claude/settings.jsonאו ב-.claude/settings.local.jsonשל מאגר רק אחרי שמקבלים את תיבת האמון בסביבת העבודה עבור התיקייה הזו. בתיקייה שלא נתת בה אמון, כולל הרצה עם-pשם, הוא מתעלם מהן בלי הודעה. - סוג: אובייקט שממפה שם שוק לאובייקט עם אובייקט
sourceובוליאני אופציונליautoUpdate - ברירת מחדל: לא מוגדר
הדוגמה הזו רושמת שוק GitHub ושוק מכתובת git באירוח עצמי:
{
"extraKnownMarketplaces": {
"acme-tools": {
"source": {
"source": "github",
"repo": "acme-corp/claude-plugins"
}
},
"security-plugins": {
"source": {
"source": "git",
"url": "https://git.example.com/security/plugins.git"
}
}
}
}מה רץ לפני שנותנים אמון בתיקייה משווה את שער האמון לתוכן אחר שמאגר יכול לספק. אפשר גם לכתוב את המפתח הזה כ-additionalMarketplaces. ראה כינויי מפתחות שוק.
הגדר "autoUpdate": true לצד source כדי ש-Claude Code ירענן את השוק הזה ויעדכן את התוספים המותקנים שלו ברקע אחרי ההפעלה. כשמשמיטים את הערך, claude-plugins-official ורוב שוקי Anthropic הרשמיים האחרים מקבלים ברירת מחדל true, ושוקי צד שלישי מקבלים ברירת מחדל false. ראה הגדרת עדכונים אוטומטיים.
כשיותר מקובץ הגדרות אחד מגדיר רשומת שוק תחת אותו שם, Claude Code משתמש ברשומה מהקובץ בעדיפות הגבוהה ביותר בשלמותה. הרשומה הזו מחליפה את הרשומה בעדיפות הנמוכה יותר ולא יורשת אף אחד מהשדות שלה, כך שהגדרה מחדש לא יכולה לשלב אישור source.headers מקובץ אחד עם כתובת שקובץ אחר שולט בה. לפני v2.1.228, Claude Code מיזג רשומות באותו שם שדה אחר שדה, כך שרשומה בקובץ בעדיפות גבוהה יותר יכלה לרשת שדות שהיא לא הגדירה, כולל headers של קובץ אחר.
#סוגי מקור של שוק
אובייקט source מקבל אחת מהצורות האלה:
github: מאגר GitHub, עםrepogit: כל כתובת git, עםurlurl: כתובת ישירה לקובץmarketplace.json, עםurlועםheadersו-headersHelperאופציונליים לגישה מאומתת.headersHelperמציין פקודה שמדפיסה כותרות שהערכים שלהן קצרי חיים מדי מכדי לרשום אותם ב-headers, ודורש Claude Code v2.1.238 או חדש יותרfile: נתיב מקומי לקובץmarketplace.json, עםpathdirectory: נתיב במערכת הקבצים המקומית, עםpath. השתמש בו לפיתוח, או לשוק שהארגון שלך פורס לכל מכונה.settings: שוק מוטמע שמוצהר ישירות בקובץ ההגדרות בלי מאגר מתארח, עםnameו-plugins
סוג המקור git עובד עם כל שירות אירוח git, כולל GitLab ו-Bitbucket באירוח עצמי. Claude Code משכפל את המאגר עם אותו אימות ש-git clone היה משתמש בו במכונה הזו: עוזרי אישורים מוגדרים או מפתחות SSH. אסימון של ספק כגון GITHUB_TOKEN נכנס לתוקף דרך עוזר אישורים שקורא אותו. ראה מאגרים פרטיים לפרטי ההגדרה.
עבור מקורות github ו-git, Claude Code אף פעם לא מוריד תוכן Git LFS כשהוא משכפל את מאגר השוק כדי להוסיף או לעדכן אותו. קבצים במעקב LFS נמשכים כקבצי מצביע, ופלט ההוספה או העדכון מדווח כמה.
השדה skipLfs בתוך אובייקט source מתקבל ואין לו השפעה. לפני v2.1.274, Claude Code הוריד תוכן LFS אלא אם הגדרת "skipLfs": true.
עבור מקור url, הגדר headersHelper בתוך אובייקט source כשהאישור ב-headers פג תוקף ופקודה צריכה לייצר אחד חדש. דורש Claude Code v2.1.238 או חדש יותר. למה שהפקודה חייבת להדפיס ואיפה Claude Code מריץ אותה, ראה כתיבת פקודת headersHelper, ולמקרים שבהם Claude Code לא מריץ אותה, ראה מתי Claude Code מדלג על פקודת headersHelper. אחרי שמגדירים headersHelper על כתובת שוק https://, Claude Code מריץ את הפקודה בשתי נקודות, ומשתמש מחדש בפלט של הרצה אחת למשך עד 60 שניות:
- לפני כל משיכה של
marketplace.jsonשל השוק הזה, כולל רענון מאוחר יותר. Claude Code שולח את הכותרות שהודפסו עם המשיכה הזו. - לפני כל הורדת ארכיון תוסף ב-origin של כתובת השוק, כלומר אותה סכמה, אותו מארח ואותו פורט. Claude Code שולח את הפלט עם ההורדה הזו, ושום הורדה אחרת לא מקבלת את הכותרות.
Claude Code מתעלם מכל headersHelper שמוגדר ב-.claude/settings.json או ב-.claude/settings.local.json של תיקייה שמוסיפים עם --add-dir, גם במקור url וגם ברשומת תוסף מוטמעת, ושולח רק את ה-headers הקבועים שמוגדרים בקובץ הזה. איך משתמשים מקבלים פקודת headersHelper מכסה את שאר קובצי ההגדרות.
תוספים שרשומים במקור settings חייבים להפנות למקורות חיצוניים כגון GitHub או npm, ו-name חייב להתאים למפתח השוק. עדיין מפעילים כל תוסף בנפרד ב-enabledPlugins. הדוגמה הזו מצהירה על תוסף אחד באופן מוטמע:
{
"extraKnownMarketplaces": {
"team-tools": {
"source": {
"source": "settings",
"name": "team-tools",
"plugins": [
{
"name": "code-formatter",
"source": {
"source": "github",
"repo": "acme-corp/code-formatter"
}
}
]
}
}
}
}רשומת תוסף תחת source: 'settings' שה-source שלה הוא archive יכולה להגדיר headers להורדת הארכיון. אם הערך שהיית שם ב-headers קצר חיים, כגון אסימון שה-registry שלך מנפיק לפי בקשה, הגדר פקודת headersHelper. רשומה יכולה להגדיר את שניהם. שני השדות דורשים Claude Code v2.1.238 או חדש יותר.
Claude Code שולח את headers של הרשומה, ואת מה שהפקודה מדפיסה, עם הורדת הארכיון של התוסף הזה ועם שום הורדה אחרת. Claude Code מריץ את הפקודה רק כשמשתמש מתקין או מעדכן את התוסף האחד הזה בפני עצמו. שלושה כללים נוספים תלויים באיזה קובץ מחזיק את הרשומה:
strict: בניגוד לרשומה ב-marketplace.jsonשל שוק, רשומה בהגדרות לא צריכה"strict": false, כי קובץ הגדרות לא כולל שדות מניפסט להטמעה. ראה מצב קפדני.- אמון בתיקייה: לרשומה ב-
.claude/settings.jsonאו ב-.claude/settings.local.jsonשל פרויקט, Claude Code מריץ את הפקודה רק אחרי שהמשתמש גם נתן אמון בתיקייה הזו. - מסנן כותרות: Claude Code משמיט שמות כותרות של ניתוב בקשות ושל זהות לקוח מרשומה ב-
.claude/settings.jsonאו ב-.claude/settings.local.jsonשל פרויקט, כי מאגר יכול לספק את הקבצים האלה. Claude Code מחיל את אותו מסנן על רשומת קטלוג ועל רשומה בהגדרות של תיקיית--add-dir, ולא מחיל מסנן על רשומה בהגדרות המשתמש שלך, בקובץ--settings, או בהגדרות מנוהלות.
#כינויי מפתחות שוק
ב-Claude Code v2.1.232 או חדש יותר, אפשר לכתוב extraKnownMarketplaces כ-additionalMarketplaces ו-strictKnownMarketplaces כ-allowedMarketplaces. Claude Code מתייחס לכל כינוי כך:
- גרסאות קודמות מתעלמות מהכינוי, אז שמור על האיות הקנוני בקובץ שגם גרסאות ישנות קוראות, כגון קובץ הגדרות מנוהלות לצי עם גרסאות Claude Code מעורבות.
- בכל קובץ הגדרות שמקבל את המפתח הקנוני, Claude Code קורא את הכינוי בדיוק כפי שהוא קורא את המפתח הקנוני.
- Claude Code עשוי לכתוב מחדש
additionalMarketplacesל-extraKnownMarketplacesכשהוא מעדכן את הקובץ. - אם מגדירים את שני האיותים בקובץ אחד, Claude Code משתמש בערך הקנוני ומתעלם מהכינוי.
#pluginConfigs
שומרים את התשובות שאינן רגישות שנותנים לתיבת ההגדרה userConfig של תוסף, לפי מזהה תוסף. Claude Code כותב את המפתח הזה להגדרות המשתמש שלך כשממלאים את התיבה, כך שאין צורך לערוך אותו ידנית. Claude Code מאחסן אפשרויות רגישות ב-macOS Keychain, וחוזר ל-~/.claude/.credentials.json כש-Keychain דוחה את הכתיבה. בפלטפורמות בלי keychain נתמך, הוא מאחסן אותן ב-~/.claude/.credentials.json.
- היקף:
משתמש או מנוהל - סוג: אובייקט שממפה מזהה תוסף לאובייקט עם שדה
options, שממפה כל שם אפשרות למחרוזת, למספר, לבוליאני, או למערך של מחרוזות, ועם שדה אופציונליmcpServersשמחזיק ערכי הגדרת משתמש לכל שרת באותה צורה - ברירת מחדל: לא מוגדר
הדוגמה הזו שומרת את האפשרות api_endpoint עבור תוסף deployer מ-acme-tools:
{
"pluginConfigs": {
"deployer@acme-tools": {
"options": {
"api_endpoint": "https://api.example.com"
}
}
}
}תוספים מובנים שומרים את האפשרויות שלהם תחת אותו מפתח עם סיומת @builtin. לדוגמה, הגדרת הוראות פרויקט ששולטת אם Claude Code קורא קבצי AGENTS.md היא pluginConfigs["cc-plugin-agents-md@builtin"].options.instructionFiles. לפני v2.1.285, מזהה התוסף היה agents-md@builtin. גרסאות מאוחרות יותר קוראות רשומה תחת כל אחד משני המזהים.
Claude Code מתעלם מרשומות פרויקט ומקומיות כי הוא משבץ את הערכים האלה לתוך הגדרות hook, MCP ו-LSP של תוסף, ומאגר משוכפל אסור שיוכל לספק אותם.
#prependPlugins
רשום את התוספים המנוהלים שה-mods שלהם רצים לפני כל mod שמשתמש מתקין, בסדר הרשום. כשמגדירים את המפתח הזה בהגדרות מנוהלות, ציין sec-default@builtin ברשימה כדי לשמור על ההגנה המובנית. בהגדרות מנוהלות, Claude Code מדלג על מזהה שהתוסף שלו לא נחשב כתוסף של הארגון שלך. ראה התקנת ה-mods של הארגון שלך וקביעת הסדר לתנאים האלה ולאיך שני מפתחות הסדר עובדים יחד.
- היקף:
משתמש או מנוהל. Claude Code קורא את המפתח מהגדרות מנוהלות. הוא קורא את המפתח מהגדרות משתמש רק במכונה בלי הגדרות מנוהלות, בסשן שהאישור שלו אינו/loginשל Team או Enterprise. הוא מתעלם מהמפתח בהגדרות פרויקט ומקומיות ובקובץ--settings. - סוג: מערך של מחרוזות
plugin-name@marketplace-name - ברירת מחדל: לא מוגדר
{
"extraKnownMarketplaces": {
"acme-tools": {
"source": { "source": "directory", "path": "/opt/acme/claude-plugins" }
}
},
"enabledPlugins": { "acme-guard@acme-tools": true },
"prependPlugins": ["acme-guard@acme-tools", "sec-default@builtin"]
}#appendPlugins
רשום את התוספים המנוהלים שה-mods שלהם רצים אחרי כל mod שמשתמש מתקין, בסדר הרשום. מזהה שרשום גם ב-prependPlugins וגם ב-appendPlugins מוצב בהתחלה. בהגדרות מנוהלות, Claude Code מדלג על מזהה שהתוסף שלו לא נחשב כתוסף של הארגון שלך.
- היקף:
משתמש או מנוהל. Claude Code קורא את המפתח מהגדרות מנוהלות. הוא קורא את המפתח מהגדרות משתמש רק במכונה בלי הגדרות מנוהלות, בסשן שהאישור שלו אינו/loginשל Team או Enterprise. הוא מתעלם מהמפתח בהגדרות פרויקט ומקומיות ובקובץ--settings. - סוג: מערך של מחרוזות
plugin-name@marketplace-name - ברירת מחדל: לא מוגדר
{
"extraKnownMarketplaces": {
"acme-tools": {
"source": { "source": "directory", "path": "/opt/acme/claude-plugins" }
}
},
"enabledPlugins": { "acme-audit@acme-tools": true },
"appendPlugins": ["acme-audit@acme-tools"]
}#MCP
קובעים לאילו שרתי MCP קלוד קוד מתחבר, ואילו ארגון מאפשר. ראו Connect to external tools with MCP ו-Managed MCP configuration.
#allowAllClaudeAiMcps
טוען את claude.ai connectors שקלוד קוד מביא בעצמו, לצד managed-mcp.json שנפרס. בלי המפתח הזה, managed-mcp.json מקבל שליטה בלעדית על שרתי MCP ומדכא את המחברים האלה.
- Scope:
Managed. משתמשים לא יכולים להפעיל מחדש מחברים ששליטה בלעדית דיכאה. - Type: Boolean
true: קלוד קוד טוען את מחברי claude.ai לצדmanaged-mcp.jsonשנפרסfalse:managed-mcp.jsonשנפרס מקבל שליטה בלעדית על שרתי MCP ומדכא את מחברי claude.ai שקלוד קוד מביא בעצמו
- Default:
false, כך ש-managed-mcp.jsonשנפרס מדכא את מחברי claude.ai שקלוד קוד מביא בעצמו
{
"allowAllClaudeAiMcps": true
}allowedMcpServers ו-deniedMcpServers עדיין חלים על המחברים שהמפתח הזה טוען. מחברים שנמסרים ל-cloud session שהמארח שלה נושא managed-mcp.json, למשל self-hosted runner, נשארים מדוכאים. ראו Allow claude.ai connectors alongside the managed set.
#allowClaudeInChromeWithManagedMcp
מאפשר לשרת המובנה Claude in Chrome לרוץ לצד managed-mcp.json שנפרס. בלי המפתח הזה, managed-mcp.json שנפרס חוסם את Claude in Chrome בהפעלות טרמינל. נדרש Claude Code v2.1.282 או חדש יותר.
- Scope:
Managed, רק מהגדרות הניהול של המכשיר עצמו: plist שנפרס ב-MDM או מפתח רישום HKLM, או קובץ מערכתmanaged-settings.json. קלוד קוד מתעלם ממנו בהגדרות שמנוהלות בשרת, ברישום HKCU שניתן לכתיבה על ידי המשתמש, ובהגדרות משתמש או פרויקט. - Type: Boolean
true: שרת Claude in Chrome המובנה יכול לרוץ לצדmanaged-mcp.jsonשנפרסfalse:managed-mcp.jsonשנפרס חוסם את Claude in Chrome בהפעלות טרמינל
- Default:
false, כך ש-managed-mcp.jsonשנפרס חוסם את Claude in Chrome בהפעלות טרמינל
{
"allowClaudeInChromeWithManagedMcp": true
}רשומת deniedMcpServers עבור claude-in-chrome עדיין חוסמת את השרת גם כשהמפתח הזה דלוק. ראו Allow Claude in Chrome alongside the managed set.
#allowedMcpServers
רשימת היתר של שרתי MCP שאנשים יכולים להוסיף. קלוד קוד חוסם כל שרת שלא תואם לרשומה, בכל מקום שבו הוא מוגדר, כולל שרתי תוסף, שרתים שמשתמש מעביר עם --mcp-config, ושרתים מ-claude.ai.
שרתים מובנים כגון Claude in Chrome, שרת ide שקלוד קוד מתחבר אליו ב-VS Code או ב-IDE של JetBrains שרצים, ושרתים שה-CLI עצמו מגדיר, פטורים מרשימת ההיתר, ורשימת החסימה עדיין חלה עליהם. ב-Claude Code v2.1.268 או חדש יותר, כלי Slack של הפעלת Claude Tag גם פטורים מרשימת ההיתר, ורשימת החסימה עדיין חלה עליהם. שרתי type: "sdk" בתוך התהליך פטורים משתי הרשימות. האפליקציה שהתחילה את ההפעלה רושמת אותם.
שרתים שהארגון מספק גם פטורים מרשימת ההיתר, ורשימת החסימה עדיין חלה עליהם. הפטור מכסה כל רשומת managedMcpServers, וכל רשומת managed-mcp.json שהערכים שלה משתמשים בלי הרחבת ${VAR} מחוץ ל-env. ראו How a server is evaluated לסדר הבדיקה המלא. לפני v2.1.259, גם שרתים מ-managed-mcp.json היו חייבים להתאים.
- Scope:
Any file. רשומות מכל קובץ מתמזגות לרשימת היתר אחת, אלא אםallowManagedMcpServersOnlyמוגדר. פורסים אותו בהגדרות מנוהלות כדי לאכוף אותו. - Type: מערך של אובייקטים, לכל אחד בדיוק מפתח אחד. משתמשים ב-
serverName, מחרוזת שמוגבלת לאותיות, מספרים, מקפים וקווים תחתונים. ב-serverCommand, מערך של הפקודה והארגומנטים שלה בהתאמה מדויקת. או ב-serverUrl, תבנית URL עם תווי הכללה* - Default: לא מוגדר, כך שכל שרת מותר. מערך ריק חוסם כל שרת שמשתמשים מוסיפים
הדוגמה הזו מתירה רק את שרת ה-stdio שפקודת npx הרשומה מפעילה:
{
"allowedMcpServers": [
{ "serverCommand": ["npx", "-y", "@modelcontextprotocol/server-filesystem"] }
]
}רשומת deniedMcpServers מקבלת עדיפות, כך ששרת שנמצא בשתי הרשימות נחסם. ברגע שהרשימה מכילה רשומת serverCommand כלשהי, שרת stdio חייב להתאים לרשומת serverCommand, וברגע שהיא מכילה רשומת serverUrl כלשהי, שרת מרוחק חייב להתאים לרשומת serverUrl: התאמת serverName כבר לא מכניסה סוג כזה של שרת. ראו Policy-based control with allowlists and denylists.
#allowManagedMcpServersOnly
הופך את רשימת ההיתר המנוהלת ליחידה שחלה. קלוד קוד קורא אז את allowedMcpServers מהגדרות מנוהלות בלבד ומתעלם מרשימות היתר בהגדרות משתמש, פרויקט ומקומיות. deniedMcpServers עדיין מתמזג מכל היקף הגדרות, כך שמשתמשים עדיין יכולים לחסום שרתים לעצמם. מנהלים מגדירים אותו כדי שהגדרות של משתמש לא יוכלו להרחיב את מה שרשימת ההיתר המנוהלת מתירה.
- Scope:
Managed - Type: Boolean
true: קלוד קוד קורא אתallowedMcpServersמהגדרות מנוהלות בלבד ומתעלם מרשימות היתר בהגדרות משתמש, פרויקט ומקומיותfalse: רשימות היתר מכל היקף הגדרות מתמזגות
- Default:
false, כך שרשימות היתר מכל היקף הגדרות מתמזגות
הדוגמה הזו נועלת את רשימת ההיתר להגדרות מנוהלות ומתירה רק את השרת בשם github:
{
"allowManagedMcpServersOnly": true,
"allowedMcpServers": [
{ "serverName": "github" }
]
}משתמשים עדיין יכולים להוסיף שרתי MCP משלהם. רק שרתים שתואמים לרשימת ההיתר המנוהלת נטענים. ראו Restrict the allowlist to managed settings only.
#deniedMcpServers
חוסם שרתי MCP מסוימים. קלוד קוד מסרב לטעון שרת תואם בכל מקום שבו הוא מוגדר, כולל שרתי תוסף, שרתים שהועברו עם --mcp-config, שרתים מ-managed-mcp.json, שרתים מ-managedMcpServers, ומחברי claude.ai שהוא מביא בעצמו. שרתי type: "sdk" בתוך התהליך פטורים. האפליקציה שהתחילה את ההפעלה רושמת אותם.
- Scope:
Any file. רשומות מכל קובץ מתמזגות לרשימת חסימה אחת, ו-allowManagedMcpServersOnlyלא משנה את זה. פורסים אותו בהגדרות מנוהלות כדי לאכוף אותו. - Type: מערך של אובייקטים, לכל אחד בדיוק מפתח אחד:
serverName, מחרוזת, כך ששם תצוגה של מחבר claude.ai כגון"claude.ai Slack"עובד.serverCommand, מערך של הפקודה והארגומנטים שלה בהתאמה מדויקת. אוserverUrl, תבנית URL עם תווי הכללה* - Default: לא מוגדר, כך שאף שרת לא נחסם. גם מערך ריק לא חוסם דבר
{
"deniedMcpServers": [
{ "serverName": "filesystem" }
]
}רשימת החסימה מקבלת עדיפות על allowedMcpServers, כך ששרת שנמצא בשתי הרשימות נחסם. ראו Policy-based control with allowlists and denylists.
#disableClaudeAiConnectors
מכבה את מחברי MCP של claude.ai שקלוד קוד מביא בעצמו, כך שהוא לא מביא אותם ולא מתחבר אליהם. true בכל קובץ הגדרות חל: .claude/settings.json של פרויקט שנכנס למאגר יכול להוציא מאגר מהמחברים האלה, אבל false ברמת פרויקט לא יכול לעקוף true ברמת משתמש או ברמה מנוהלת.
- Scope:
Any file - Type: Boolean
true: קלוד קוד לא מביא ולא מתחבר למחברים האלהfalse: כמו לא מוגדר. קלוד קוד מביא את המחברים אלא אם קובץ הגדרות אחר אוENABLE_CLAUDEAI_MCP_SERVERSמכבים אותם- Default:
false, כך שקלוד קוד מביא את המחברים
- Per-session overrides:
ENABLE_CLAUDEAI_MCP_SERVERSשמוגדר ל-falseמכבה מחברים להפעלה אחת. מי מהשניים שמכבה אותם, השני לא יכול להדליק אותם בחזרה
{
"disableClaudeAiConnectors": true
}שרתים שמעבירים במפורש עם --mcp-config לא מושפעים. כדי לחסום מחברים בודדים במקום את כולם, משתמשים ב-deniedMcpServers. ראו Disable claude.ai connectors.
#disabledMcpjsonServers
דוחה שרתים מסוימים שמוגדרים בקובץ .mcp.json של פרויקט, כך שקלוד קוד אף פעם לא מתחבר אליהם ולא מבקש לאשר אותם. דחייה בכל קובץ הגדרות חלה, כולל .claude/settings.json של פרויקט שנכנס למאגר.
- Scope:
Any file - Type: מערך של מחרוזות, שמות השרתים כפי שהם מופיעים ב-
.mcp.json - Default: לא מוגדר
{
"disabledMcpjsonServers": ["filesystem"]
}קלוד קוד כותב את המפתח הזה ל-.claude/settings.local.json כשדוחים שרת בתיבת האישור. claude mcp get <name> מציג שרת שנדחה כ-✘ Rejected (see disabledMcpjsonServers in settings). דחייה מקבלת עדיפות על enabledMcpjsonServers ועל enableAllProjectMcpServers.
#enableAllProjectMcpServers
מאשר כל שרת MCP שמוגדר בקבצי .mcp.json של פרויקט בלי בקשה. קלוד קוד כותב את המפתח הזה ל-.claude/settings.local.json כשבוחרים לאשר את כל השרתים בתיבת האישור.
- Scope:
Any file. בתיקייה שתיבת האמון שלה לא התקבלה, קלוד קוד מכבד אותו מהגדרות משתמש, מהגדרות מנוהלות ומ---settings, ומתעלם ממנו בקובץ הפרויקט המשותף, גם בהפעלה וגם עבורclaude mcp listו-claude mcp get. Project server approvals and workspace trust אומר מתי גם.claude/settings.local.jsonשלא במעקב נספר. - Type: Boolean
true: קלוד קוד מאשר כל שרת MCP שמוגדר בקבצי.mcp.jsonשל פרויקט בלי בקשהfalse: קלוד קוד מבקש לאשר כל שרת. בתיקייה מהימנה,falseבקובץ בעדיפות גבוהה יותר עוקףtrueבקובץ בעדיפות נמוכה יותר. בתיקייה שלא נתתם בה אמון,trueבכל קובץ שמכובד מספיק
- Default: לא מוגדר, כך שקלוד קוד מבקש לאשר כל שרת
{
"enableAllProjectMcpServers": true
}רשומת disabledMcpjsonServers עדיין דוחה שרת.
#enabledMcpjsonServers
מאשר שרתים מסוימים שמוגדרים בקבצי .mcp.json של פרויקט, כך שקלוד קוד מתחבר אליהם בלי לשאול. קלוד קוד כותב את המפתח הזה ל-.claude/settings.local.json כשמאשרים שרת בתיבת האישור.
- Scope:
Any file. בתיקייה שתיבת האמון שלה לא התקבלה, קלוד קוד מכבד אותו מהגדרות משתמש, מהגדרות מנוהלות ומ---settings, ומתעלם ממנו בקובץ הפרויקט המשותף, גם בהפעלה וגם עבורclaude mcp listו-claude mcp get. Project server approvals and workspace trust אומר מתי גם.claude/settings.local.jsonשלא במעקב נספר. - Type: מערך של מחרוזות, שמות השרתים כפי שהם מופיעים ב-
.mcp.json - Default: לא מוגדר
הדוגמה הזו מאשרת את השרתים memory ו-github מ-.mcp.json של הפרויקט:
{
"enabledMcpjsonServers": ["memory", "github"]
}רשומת disabledMcpjsonServers עדיין דוחה שרת.
#managedMcpServers
מספק שרתי MCP מרוחקים לכל משתמש מהגדרות מנוהלות. משתמשים שומרים את השרתים שהם מוסיפים בעצמם, ולא יכולים לערוך או להסיר את אלה שאתם מספקים. נדרש Claude Code v2.1.259 או חדש יותר.
- Scope:
Managed. קלוד קוד משמיט את המפתח עם אזהרה בהגדרות משתמש, פרויקט ומקומיות, ולא קורא אותו בלשונית Code של אפליקציית Claude Desktop בפריסה של צד שלישי או בהפעלות Cowork של האפליקציה, שבהן Claude Desktop מספק ונועל בעצמו את שרתי MCP של ההפעלות האלה. - Type: אובייקט שמפתחותיו הם שמות שרתים. לכל רשומה יש את צורת
.mcp.jsonשל שרתhttpאוsse:urlשלhttps://שהוא חובה, ובאופן אופציונליheaders,oauth, ושאר אפשרויות HTTP ו-SSE. קלוד קוד משמיט רשומות שנכשלות באימות, ו-What an entry can contain מפרט את התנאים - Default: לא מוגדר, כך שהגדרות מנוהלות לא מספקות שרתים
הדוגמה הזו מספקת שרת HTTP אחד בשם search:
{
"managedMcpServers": {
"search": {
"type": "http",
"url": "https://search.example.com/mcp"
}
}
}לעדיפות, לאופן שבו שרתים שסופקו משתלבים עם managed-mcp.json ועם רשימות ההיתר והחסימה, ולמה שמשתמשים רואים, ראו Provide servers through managed settings.
#סוכנים, סשנים ועצי עבודה
הגדר את סוכן ברירת המחדל, שלוט בחברי צוות ובהודעות בין סשנים, והגדר עצי עבודה. ראה סוכני משנה ועצי עבודה.
#agent
הפעל את השרשור הראשי כסוכן משנה בעל שם, כך ש-Claude Code מחיל את הנחיית המערכת, הגבלות הכלים והמודל של אותו סוכן משנה על הסשן שלך. אותו מפתח מגדיר את סוכן ברירת המחדל לסשנים שאתה משגר מ-claude agents.
- היקף:
כל קובץ - סוג: מחרוזת, השם של סוכן מובנה או מותאם אישית
- ברירת מחדל: לא מוגדר, כך שהשרשור הראשי רץ כסוכן ברירת המחדל של Claude Code
- דריסות לכל סשן:
--agentגובר על המפתח הזה לסשן אחד
{
"agent": "code-reviewer"
}גם settings.json של תוסף יכול לספק את המפתח הזה. ראה שליחת הגדרות ברירת מחדל עם התוסף שלך.
#crossSessionInbound
בחר מה הסשן הזה עושה עם הודעות שמגיעות מסשני Claude Code האחרים שלך. כשאין ערך שחל, Claude Code מחליט לכל הודעה לפי מחלקות מצב ההרשאות של שני הסשנים. נדרש Claude Code v2.1.224 או חדש יותר.
- היקף:
כל קובץ. ערך של פרויקט או מקומי חל רק כשהוא מחמיר יותר מהערך שנותנות הגדרות מנוהלות, דגל--settings, או הגדרות משתמש. - סוג: מחרוזת, אחד מאלה:
"accept": Claude Code מוסר את ההודעה ל-Claude"hold": Claude Code מציג התראה על ההודעה בלי למסור אותה"refuse": Claude Code משמיט את ההודעה
- ברירת מחדל: לא מוגדר, כך ש-Claude Code מחליט לכל הודעה
{
"crossSessionInbound": "hold"
}Claude Code קורא קודם הגדרות מנוהלות, אחר כך את דגל --settings, אחר כך הגדרות משתמש, ומחיל את הערך הראשון שנמצא. refuse מחמיר יותר מ-hold, ו-hold מחמיר יותר מ-accept. כשאף אחד מהמקורות המהימנים לא מגדיר ערך, hold או refuse של פרויקט או מקומי עדיין חלים, ומחליפים את ברירת המחדל לכל הודעה. בסשנים עם הודעות בין סשנים, המפתח הזה מופיע ב-/config בתור Messages from your other sessions, שכותב אותו להגדרות משתמש. השורה דורשת Claude Code v2.1.232 או חדש יותר, ו-Claude Code מסתיר אותה כל עוד דגל --settings או הגדרות מנוהלות מגדירים את המפתח.
Claude Code מזהיר כשאתה מגדיר ערך שהוא לא מזהה. כל עוד הערך הזה נמצא בקובץ משתמש, פרויקט, מקומי, או --settings, Claude Code מחזיק הודעות נכנסות, גם כשמקור שגובר מגדיר accept. refuse שמקור אחר מגדיר עדיין חל. תקן או הסר את הערך כדי לבטל את ההחזקה.
כשהערך הלא מזוהה נמצא בהגדרות מנוהלות, Claude Code במקום זאת מתייחס אליו כ-refuse עד שמנהל מתקן אותו. לפני v2.1.248, Claude Code התעלם מערך לא מזוהה בלי אזהרה.
#disableAgentView
כבה סוכני רקע ותצוגת סוכנים: claude agents, --bg, /background, וה-supervisor לפי דרישה. הגדר אותו בהגדרות מנוהלות כדי לאכוף אותו עבור ארגון.
- היקף:
כל קובץ - סוג: בוליאני
true: Claude Code מכבה אתclaude agents,--bg,/background, וה-supervisor לפי דרישהfalse: תצוגת סוכנים זמינה
- ברירת מחדל: לא מוגדר, כך שתצוגת סוכנים זמינה
- דריסות לכל סשן:
CLAUDE_CODE_DISABLE_AGENT_VIEWמכבה את תצוגת הסוכנים לסשן אחד. מי משניהם שמכבה אותה, השני לא יכול להפעיל אותה מחדש
{
"disableAgentView": true
}#isolatePeerMachines
דרוש את האישור המפורש שלך לפני ש-SendMessage של Claude מגיע לאחד מהסשנים שלך מעבר למכונה הזו. ראה דרישת אישור להודעות בין מכונות. בקשת האישור מופיעה גם במצב bypassPermissions.
- היקף:
כל קובץ.trueמכל היקף חל, כך שקובץ פרויקט שנמצא במאגר יכול להפעיל את הדרישה אבל לא לכבות אותה. - סוג: בוליאני
true: Claude Code מבקש את אישורך לפני ש-SendMessageשל Claude מגיע לאחד מהסשנים שלך מעבר למכונה הזוfalse: הודעות בין מכונות לא מציגות בקשה
- ברירת מחדל: לא מוגדר, כך שהודעות בין מכונות לא מציגות בקשה
{
"isolatePeerMachines": true
}אישור SendMessage בין מכונות דורש Claude Code v2.1.224 או חדש יותר.
#processWrapper
ב-macOS וב-Linux, הצב פקודת launcher ארגונית לפני תהליכי הרקע ש-Claude Code מפעיל. Claude Code מריץ את ה-launcher עם שורת הפקודה שלו מצורפת בסוף, כך שה-launcher חייב לבצע exec אל תוך Claude Code. ראה הרצת Claude Code מאחורי launcher ארגוני לחוזה ה-launcher. נדרש Claude Code v2.1.210 או חדש יותר.
- היקף:
משתמש או מנוהל - סוג: מחרוזת, פקודת ה-launcher כקידומת argv, כגון נתיב מוחלט עם ארגומנטים אופציונליים
- ברירת מחדל: לא מוגדר, כך שתהליכי רקע מתחילים בלי עטיפה
- דריסות לכל סשן:
CLAUDE_CODE_PROCESS_WRAPPERגובר על המפתח הזה לסשן אחד
{
"processWrapper": "/opt/corp/launcher --profile claude"
}Claude Code מתעלם מה-launcher ב-Windows ומפעיל כל תהליך בלי עטיפה. נדרש Claude Code v2.1.210 או חדש יותר.
#teammateMode
בחר היכן Claude Code מציג חברי צוות של צוות סוכנים: בתוך חלונית הטרמינל הראשית שלך, או בחלוניות מפוצלות כשהטרמינל שלך תומך בהן. ראה בחירת מצב תצוגה.
- היקף:
כל קובץ. Claude Code גם קורא ערך שהשאירו גרסאות ישנות יותר ב-~/.claude.json. - סוג: מחרוזת, אחד מאלה:
"in-process": חברי הצוות רצים בתוך חלונית הטרמינל הראשית שלך"auto": חלוניות מפוצלות כשאתה רץ בתוך tmux, או בתוך iTerm2 עםit2ב-PATHשלך או כש-tmux מותקן. אחרת,in-process"tmux": חלוניות מפוצלות באמצעות tmux או iTerm2, שמזוהים מהטרמינל שלך"iterm2": חלוניות מפוצלות מקוריות של iTerm2 דרך ה-CLI שלit2
- ברירת מחדל:
"in-process" - דריסות לכל סשן:
--teammate-modeגובר על המפתח הזה לסשן אחד
{
"teammateMode": "auto"
}#worktree
הגדר איך Claude Code יוצר ומנהל עצי עבודה של git עבור --worktree, כלי EnterWorktree, וסוכני משנה מבודדים וסשני רקע.
- היקף:
כל קובץ - סוג: אובייקט עם
baseRef,symlinkDirectories,sparsePathsו-bgIsolation - ברירת מחדל: לא מוגדר
הדוגמה הזו מסתעפת עצי עבודה חדשים מה-HEAD הנוכחי שלך ויוצרת symlink של node_modules לכל אחד מהם:
{
"worktree": {
"baseRef": "head",
"symlinkDirectories": ["node_modules"]
}
}כדי להעתיק קבצים ש-git מתעלם מהם כמו .env לעצי עבודה חדשים, הוסף קובץ .worktreeinclude לשורש הפרויקט שלך במקום הגדרה.
#worktree.baseRef
בחר מאיזה ref עצי עבודה חדשים מסתעפים. "fresh" מסתעף מ-origin/<default-branch> לעץ נקי שתואם ל-remote. "head" מסתעף מה-HEAD המקומי הנוכחי שלך, כך ש-commit-ים שלא נדחפו ומצב ענף הפיצ'ר נוכחים ב-worktree.
- היקף:
כל קובץ - סוג: מחרוזת, אחד מאלה:
"fresh": עצי עבודה חדשים מסתעפים מ-origin/<default-branch>"head": עצי עבודה חדשים מסתעפים מה-HEADהמקומי הנוכחי שלך, כולל commit-ים שלא נדחפו
- ברירת מחדל:
"fresh"
{
"worktree": {
"baseRef": "head"
}
}בתוך worktree מקושר, "head" מזוהה כ-HEAD של אותו worktree, לא של ה-checkout הראשי.
#worktree.symlinkDirectories
צור symlink לספריות מהמאגר הראשי אל כל worktree כדי שלא תשכפל ספריות גדולות על הדיסק.
- היקף:
כל קובץ - סוג: מערך של מחרוזות, נתיבי ספריות יחסית לשורש המאגר
- ברירת מחדל: לא מוגדר, כך ש-Claude Code לא יוצר symlink לספריות
הדוגמה הזו יוצרת symlink ל-node_modules ול-.cache מהמאגר הראשי אל כל worktree חדש:
{
"worktree": {
"symlinkDirectories": ["node_modules", ".cache"]
}
}#worktree.sparsePaths
בצע checkout רק לספריות שברשימה בכל worktree באמצעות git sparse-checkout. Claude Code כותב לדיסק רק את הספריות האלה וגם קבצים ברמת השורש, מה שמהיר יותר ב-monorepo גדולים. ראה ביצוע checkout רק לספריות שאתה צריך.
- היקף:
כל קובץ - סוג: מערך של מחרוזות, נתיבי ספריות יחסית לשורש המאגר
- ברירת מחדל: לא מוגדר, כך שכל worktree מבצע checkout לעץ כולו
כלול את .claude ברשימה כדי שלכל worktree יהיו גם .claude/settings.json ו-.claude/rules/ של המאגר. הדוגמה הזו מבצעת checkout רק ל-.claude, ל-packages/my-app ול-shared/utils, וגם לקבצים ברמת השורש, בכל worktree:
{
"worktree": {
"sparsePaths": [".claude", "packages/my-app", "shared/utils"]
}
}כל עוד קיים worktree דליל, git מפעיל את extensions.worktreeConfig ב-.git/config המשותף של המאגר.
#worktree.bgIsolation
בחר איך סשני רקע מבודדים את עריכות הקבצים שלהם. אם העברת סשן לרקע עם ← או /background, הסשן הזה עורך קבצים במקום, יהיה ערך המפתח אשר יהיה. עם "worktree", Claude Code חוסם את Edit ואת Write ב-checkout הראשי עד שהסשן קורא ל-EnterWorktree. עם "none", משימות רקע עורכות את עותק העבודה ישירות. הגדר "none" למאגר שבו עצי עבודה של git אינם מעשיים.
- היקף:
כל קובץ - סוג: מחרוזת, אחד מאלה:
"worktree": Claude Code חוסם אתEditואתWriteב-checkout הראשי עד שהסשן קורא ל-EnterWorktree"none": משימות רקע עורכות את עותק העבודה ישירות
- ברירת מחדל:
"worktree"
{
"worktree": {
"bgIsolation": "none"
}
}מחוץ למאגר git, hook מסוג WorktreeCreate שנכשל משחרר את החסימה כדי שהסשן יוכל לערוך את ספריית העבודה במקום.
#worktree.location
בחר את התיקייה במכונה מרוחקת שבה סשני SSH של Desktop יוצרים את עצי העבודה שלהם, במקום <project-root>/.claude/worktrees/. רק אפליקציית שולחן העבודה קוראת את המפתח הזה: --worktree, כלי EnterWorktree, סוכני משנה מבודדים וסשני רקע מתעלמים ממנו. נדרש Claude Desktop v1.44121.0 או חדש יותר.
- היקף:
משתמש, ב-~/.claude/settings.jsonבמכונה המרוחקת - סוג: מחרוזת, נתיב מוחלט או נתיב שמתחיל ב-
~/ - ברירת מחדל: לא מוגדר, כך שעצי העבודה נכנסים לתוך הפרויקט
הדוגמה הזו מגדירה את התיקייה ל-~/worktrees:
{
"worktree": {
"location": "~/worktrees"
}
}Worktree folder שמוגדר על חיבור ה-SSH ב-Desktop גובר. אם הארגון שלך מגביל אילו תיקיות סשנים רשאים להשתמש בהן, Desktop שומר את עצי העבודה בתוך הפרויקט.
#שליטה מרחוק, שולחן העבודה והתראות
הגדר את Remote Control, סביבות ענן, אפליקציית שולחן העבודה, ואת ההתראות ש-Claude Code שולח כשהוא צריך אותך. ראה Remote Control.
#agentPushNotifEnabled
אפשר ל-Claude לשלוח התראת דחיפה לטלפון שלך כשהוא מחליט שאחת שווה שליחה, לדוגמה כשמשימה ארוכה מסתיימת. Claude יכול לשלוח אחת בזמן ש-Remote Control מחובר. מופיע ב-/config בתור Push when Claude decides. כשאתה משנה אותו שם, Claude Code גם שומר את הערך בחשבון שלך.
- היקף:
כל קובץ. Claude Code גם קורא ערך שהשאירו גרסאות ישנות יותר ב-~/.claude.json. - סוג: בוליאני
true: Claude יכול לשלוח התראת דחיפה לטלפון שלך כשהוא מחליט שאחת שווה שליחהfalse: Claude לא שולח את ההתראות האלה
- ברירת מחדל:
false
{
"agentPushNotifEnabled": true
}אם אתה מריץ סשנים תחת שרת claude remote-control, הם עוקבים אחר הערך שנשמר בחשבון שלך ולא אחר המפתח הזה. כדי לשנות את הערך הזה, הרץ /config בסשן Claude Code בטרמינל שלך והפעל או כבה את Push when Claude decides. אם המתג כבר מציג את הערך שאתה רוצה, שנה אותו ושנה אותו בחזרה כדי ש-Claude Code ישמור את הערך הזה בחשבון שלך.
ראה התראות דחיפה לנייד.
#awaySummaryEnabled
הצג סיכום סשן של שורה אחת כשאתה חוזר לטרמינל אחרי כמה דקות של היעדרות. הגדר אותו ל-false, או כבה את Session recap ב-/config, כדי לעצור את הסיכום.
- היקף:
כל קובץ - סוג: בוליאני
true: אתה רואה סיכום סשן של שורה אחת כשאתה חוזר אחרי כמה דקות של היעדרותfalse: Claude Code לא מציג סיכום
- ברירת מחדל: לא מוגדר, כך שהסיכום פעיל
- דריסות לכל סשן:
CLAUDE_CODE_ENABLE_AWAY_SUMMARYגובר על המפתח הזה לסשן אחד, בשני הכיוונים
{
"awaySummaryEnabled": false
}Claude Code אף פעם לא מציג את הסיכום במצב לא אינטראקטיבי.
#disableArtifact
[!WARNING]
מיושן, והוחלף על ידי
enableArtifact. Claude Code עדיין מכבד אתdisableArtifact: trueכשווה ערך ל-enableArtifact: false, ומתעלם מ-disableArtifact: false.
השתמש ב-enableArtifact במקום זאת כדי לכבות את כלי Artifact, שמפרסם את פלט הסשן כדף אינטרנט פרטי ב-claude.ai. כשאתה מכבה את שורת Artifacts ב-/config, Claude Code כותב את enableArtifact להגדרות המשתמש שלך ומנקה את המפתח הזה.
- היקף:
כל קובץ - סוג: בוליאני
true: Claude Code מכבה את כלי Artifact לכל סשן שהקובץ חל עליו, ושום קובץ אחר לא מפעיל אותו מחדשfalse: מתעלמים ממנו. כדי להשאיר את הכלי פעיל, הסר את המפתח
- ברירת מחדל: לא מוגדר, כך שהכלי עוקב אחר הזמינות של החשבון שלך
- דריסות לכל סשן:
CLAUDE_CODE_DISABLE_ARTIFACTשמוגדר ל-1מכבה את הכלי לסשן אחד
{
"disableArtifact": true
}השבתת artifacts מפרטת כל דרך לכבות את הכלי.
#disableDeepLinkRegistration
עצור את Claude Code מרישום מטפל הפרוטוקול claude-cli:// מול מערכת ההפעלה. קישורים עמוקים מאפשרים לכלים חיצוניים לפתוח סשן Claude Code עם הנחיה שמולאה מראש. הגדר זאת בסביבות שבהן רישום מטפל פרוטוקול מוגבל או מנוהל בנפרד.
- היקף:
כל קובץ - סוג: המחרוזת
"disable" - ברירת מחדל: לא מוגדר, כך ש-Claude Code רושם את המטפל
{
"disableDeepLinkRegistration": "disable"
}#disableDesktopLocalSessions
כיבוי של סשני Code שרצים על המכשיר באפליקציית הדסקטופ, בפריסות שבהן מפתחים צריכים לעבוד על מכונות מרוחקות דרך SSH. כשהמפתח מוגדר ל-true, המשתמשים רואים את זה בלשונית Code:
- בורר סביבה: הרשומה של המחשב של המשתמש אפורה ואי אפשר לבחור בה, עם tooltip Disabled by your organization. ב-Windows רשומת WSL אפורה באותו אופן, אם כי השאלה אם סשני WSL רצים על מכשיר מנוהל בכלל מוסדרת בנפרד.
- סשנים חדשים: ברירת המחדל היא חיבור ה-SSH הראשון, אם אחד מוגדר
- סשנים על המכשיר: האפליקציה מסרבת להתחיל או לחדש סשן על המכשיר, כולל חיבור SSH חזרה לאותה מכונה
- סשני SSH למארחים אחרים וסשני ענן: לא מושפעים
אפליקציית הדסקטופ קוראת את המפתח הזה. ה-CLI של הטרמינל מתעלם ממנו. נדרש Claude Desktop בגרסה v1.37937.0 או חדשה יותר.
- Scope:
Managed. כברירת מחדל, אפליקציית הדסקטופ קוראת את המפתח ממקור מנוהל אחד. - Type: Boolean. רק ה-Boolean של JSON
trueנכנס לתוקףtrue: אפליקציית הדסקטופ לא מציעה סשני Code על המכשיר. סשנים מקומיים קיימים נשארים ברשימה אבל אי אפשר להמשיך אותםfalse: סשנים מקומיים נשארים זמינים
- Default: לא מוגדר, ולכן סשנים מקומיים זמינים
{
"disableDesktopLocalSessions": true
}אפליקציית הדסקטופ מתעלמת מכל ערך אחר, וערך שאינו Boolean, כמו המחרוזת "true" או 1, גם רושם אזהרה. שלבו אותו עם sshConfigs כדי שמשתמשים יגיעו לחיבור שעובד, ועם sshHostAllowlist כדי להגביל לאילו מארחים הם יכולים להגיע. ראו Local sessions on managed devices.
Claude Desktop מספק לסשני Code מדיניות שנגזרת מתצורת הדסקטופ שלכם, למשל רשימת ההיתר ליציאה, ארגז החול של מערכת הקבצים, והגבלות MCP בפריסות של צד שלישי. Claude Code מתעלם מהגדרות האב האלה בכל פעם שמקור admin קיים: הגדרות שמנוהלות בשרת, מדיניות MDM או ברמת מערכת ההפעלה, או קובץ הגדרות מנוהל. פריסת המפתח הזה דרך אחד מאלה במכשיר שלא היה בו אף אחד קודם, כמו בפריסות של צד שלישי, לכן מפסיקה את החלת המדיניות שנגזרת מהדסקטופ. Let an embedding host add policy מכסה מתי הגדרות אב עדיין יכולות להתמזג. זה תקף לכל מפתח שאתם פורסים בדרך הזו, לא רק למפתח הזה.
#disableRemoteControl
כיבוי של Remote Control: Claude Code אז מסרב ל-claude remote-control, לדגל --remote-control, להפעלה אוטומטית, ולמתג בתוך הסשן, ומדווח שהמדיניות של הארגון שלכם השביתה את זה. מקמו אותו בהגדרות מנוהלות לאכיפת MDM לפי מכשיר.
- Scope:
Any file - Type: Boolean
true: Claude Code מסרב ל-claude remote-control, לדגל--remote-control, להפעלה אוטומטית, ולמתג בתוך הסשןfalse: Remote Control נשאר זמין
- Default:
false
{
"disableRemoteControl": true
}#enableArtifact
כיבוי של כלי Artifact, שמפרסם פלט של סשן כדף אינטרנט פרטי ב-claude.ai. כשאתם מכבים את שורת Artifacts ב-/config, Claude Code כותב את המפתח הזה להגדרות המשתמש שלכם, ולכן בדרך כלל אתם לא עורכים אותו ידנית.
- Scope:
Any file. כל קובץ יכול לכבות את הכלי, ואף אחד לא יכול להדליק אותו בחזרה. - Type: Boolean
false: Claude Code מכבה את כלי Artifact לכל סשן שהקובץ חל עליוtrue: אותו דבר כמו להשאיר את המפתח לא מוגדר, כי הוא אף פעם לא דורסfalseמקובץ אחר, מ-CLAUDE_CODE_DISABLE_ARTIFACT, או מהגדרת admin של הארגון שלכם
- Default: לא מוגדר, ולכן הכלי עוקב אחרי הזמינות של החשבון שלכם
{
"enableArtifact": false
}כל עוד מקור שאינו הגדרות המשתמש שלכם עצמכם משאיר את הכלי כבוי, Claude Code מסתיר את שורת Artifacts ב-/config, כי הדלקה שם לא תשנה כלום. Disable artifacts מפרט כל דרך לכבות את הכלי.
#inputNeededNotifEnabled
קבלת התראת push בטלפון כשבקשת הרשאה או שאלה ממתינה לקלט שלכם. Claude Code שולח את אלה רק בזמן ש-Remote Control מחובר. מופיע ב-/config כ-Push when actions required.
- Scope:
Any file. Claude Code גם קורא ערך שנשאר ב-~/.claude.jsonמגרסאות ישנות יותר. - Type: Boolean
true: אתם מקבלים התראת push בטלפון כשבקשת הרשאה או שאלה ממתינה, בזמן ש-Remote Control מחוברfalse: Claude Code לא שולח התראות כאלה
- Default:
false
{
"inputNeededNotifEnabled": true
}ראו Mobile push notifications.
#preferredNotifChannel
בחירה איך Claude Code מודיע לכם כשמשימה מסתיימת או כשבקשת הרשאה ממתינה. התראות של mod משתמשות באותה הגדרה. מופיע ב-/config כ-Local notifications.
- Scope:
Any file. Claude Code גם קורא ערך שנשאר ב-~/.claude.jsonמגרסאות ישנות יותר. - Type: string, אחד מאלה:
"auto": Claude Code שולח התראת דסקטופ כשהוא מזהה iTerm2, Ghostty, או Kitty, מצלצל בפעמון ב-Terminal.app רק כשהפעמון הנשמע שלו כבוי, ולא עושה כלום במקומות אחרים"terminal_bell": Claude Code מצלצל בתו הפעמון בכל טרמינל"iterm2": Claude Code שולח התראת דסקטופ של iTerm2"iterm2_with_bell": Claude Code שולח התראת דסקטופ של iTerm2 ומצלצל בפעמון"kitty": Claude Code שולח התראת דסקטופ של Kitty"ghostty": Claude Code שולח התראת דסקטופ של Ghostty"notifications_disabled": Claude Code לא שולח התראה
- Default:
"auto"
{
"preferredNotifChannel": "terminal_bell"
}עם "auto", Claude Code שולח התראת דסקטופ כשהוא מזהה iTerm2, Ghostty, או Kitty. ב-Terminal.app הוא מצלצל בתו הפעמון רק כשכיביתם את הפעמון הנשמע של Terminal, ובטרמינלים אחרים הוא לא עושה כלום. הגדירו "terminal_bell" כדי לצלצל בתו הפעמון בכל טרמינל. ראו Get a terminal bell or notification.
#remote.defaultEnvironmentId
בחירת סביבת הענן ברירת המחדל לסשני ענן שאתם יוצרים מה-CLI, למשל עם claude --cloud. Claude Code כותב את המפתח הזה להגדרות המשתמש שלכם כשאתם בוחרים סביבה עם /remote-env.
- Scope:
Any file. למזהה סביבה באירוח עצמי, רק הגדרות משתמש או הגדרות מנוהלות, או הדגל--settings. - Type: string, מזהה סביבה כמו
env_...אוccpool_... - Default: לא מוגדר, ולכן Claude Code משתמש בסביבה באירוח Anthropic כשיש אחת ברשימה שלכם, ואחרת בסביבה הראשונה ברשימה שאינה סביבת גשר של Remote Control, או בסביבה הראשונה כשכל אחת היא סביבת גשר
- Per-session overrides:
--environmentמקבל עדיפות על המפתח הזה עבור סשן הענן האחד שהוא יוצר
{
"remote": {
"defaultEnvironmentId": "env_0123abcd"
}
}מזהה סביבה באירוח Anthropic, שמתחיל ב-env_, עוקב אחרי קדימות ההגדרות הרגילה, ולכן ערך בהגדרות הפרויקט של מאגר דורס את הבחירה ברמת המשתמש. מזהה סביבה באירוח עצמי, שמתחיל ב-ccpool_, מכובד רק מהגדרות משתמש, מהגדרות מנוהלות, ומהדגל --settings. Claude Code מתעלם מאחד שנמצא בהגדרות הפרויקט או המקומיות של מאגר, ו-/remote-env מראה איזה ערך הוא התעלם ממנו, כך שקובץ שנכנס ל-check-in לא יכול לכוון סשנים לסביבה באירוח עצמי שלא בחרתם.
#remoteControlAtStartup
חיבור Remote Control אוטומטית כשכל סשן אינטראקטיבי מתחיל, במקום להמתין ל-/remote-control. הגדירו אותו ל-true כדי להפעיל חיבור אוטומטי, ו-false כדי לכבות אותו. מופיע ב-/config כ-Enable Remote Control for all sessions.
- Scope:
Any file. Claude Code גם קורא ערך שנשאר ב-~/.claude.jsonמגרסאות ישנות יותר. - Type: Boolean
true: Claude Code מחבר את Remote Control אוטומטית כשכל סשן אינטראקטיבי מתחילfalse: Claude Code ממתין ל-/remote-control
- Default: לא מוגדר, ולכן ברירת המחדל של החיבור האוטומטי חלה
- Per-session overrides:
--remote-controlמפעיל את Remote Control לסשן אחד גם כשהמפתח הזה הואfalse, ואין דגל שמכבה אותו לסשן אחד
{
"remoteControlAtStartup": true
}Claude Code מתעלם מ-true מהגדרות פרויקט או מקומיות, כך שמאגר יכול לכבות חיבור אוטומטי ל-checkout שלו אבל לא יכול להפעיל אותו. להתנהגות המלאה לפי scope, ראו Enable Remote Control for all sessions ואת מפתחות האבטחה שבהם הערך המחמיר חל.
#sshConfigs
הוספת חיבורי SSH לבורר הסביבה של Desktop. מנהלים משתמשים ב-sshConfigs כדי להפיץ חיבורים משותפים לצוות. משתמשים יכולים לבחור חיבור מנוהל ולהגדיר לו Worktree folder משלהם. הם לא יכולים לערוך את השדות האחרים שלו או למחוק אותו באפליקציה.
- Scope:
User or managed. אפליקציית הדסקטופ קוראת את המפתח הזה. כברירת מחדל, היא קוראת חיבורים מנוהלים ממקור מנוהל אחד. - Type: מערך של אובייקטים, כל אחד עם
id,name, ו-sshHostנדרשים ועםsshPortו-sshIdentityFileאופציונליים - Default: לא מוגדר
הדוגמה הזו מוסיפה חיבור אחד בשם Dev VM שמתחבר אל [email protected]:
{
"sshConfigs": [
{
"id": "dev-vm",
"name": "Dev VM",
"sshHost": "[email protected]"
}
]
}#sshHostAllowlist
הגבלת המארחים שסשן SSH של Desktop יכול להתחבר אליהם. רק אפליקציית Desktop קוראת את המפתח הזה. ה-CLI לא. התבניות לא תלויות ברישיות: * תואם לכל מארח, *.example.com תואם ל-example.com ולכל תת-דומיין, וכל דבר אחר הוא התאמה מדויקת לשם המארח אחרי פענוח ~/.ssh/config. מערך ריק מכבה סשני SSH.
עם Claude Desktop בגרסה v3.1623.0 או חדשה יותר, גם מארחי הקפיצה של סשן צריכים להתאים לתבנית.
- Scope:
Managed. כברירת מחדל, Desktop קורא את המפתח ממקור מנוהל אחד. - Type: מערך של תבניות שם מארח
- Default: לא מוגדר, ולכן כל מארח מותר
הדוגמה הזו מתירה את devboxes.example.com ואת תת-הדומיינים שלו, וגם את המארח המדויק bastion.example.com:
{
"sshHostAllowlist": ["*.devboxes.example.com", "bastion.example.com"]
}ערך ש-Desktop לא יכול לקרוא כרשימת מארחים, כמו true או אובייקט, נספר כמערך ריק עד שתתקנו אותו, חוץ מ-null, שנחשב לא מוגדר. נדרש Claude Desktop בגרסה v2.26454.0 או חדשה יותר.
אם תגדירו את managedSourcesBehavior ל-"merge" במקור בדירוג הגבוה ביותר, Desktop משלב את הרשימות מכל מקור admin ומתיר מארח שתואם לאחת מהן. אם תגדירו מערך ריק במקור אחד, סשני SSH נשארים פעילים עבור המארחים שמקור אחר מפרט.
#sshHostCommands
הוספת חיבורי SSH שהמארח שלהם מגיע מפקודה לבורר הסביבה של Desktop. כשאתם יוצרים חיבור או יוצרים מכונה נוספת עבורו, Desktop מריץ את הפקודה של הרשומה במחשב שלכם ומתחבר למארח שהפקודה מדפיסה.
נדרש Claude Desktop בגרסה v3.6556.0 או חדשה יותר ב-macOS או ב-Linux, או v4.16336.0 או חדשה יותר ב-Windows, כשמחוברים עם חשבון Claude. ב-Windows, Desktop גם צריך להתחבר דרך לקוח OpenSSH.
- Scope:
User or managed. רק אפליקציית הדסקטופ קוראת את המפתח הזה. היא קוראת רשומות מנוהלות מקובץ הגדרות מנוהל אחד או ממדיניות MDM במחשב, ומתעלמת מהמפתח בהגדרות שמנוהלות בשרת. - Type: מערך של אובייקטים, כל אחד עם
id,name, ו-commandנדרשים ועםsshIdentityFileו-startDirectoryאופציונליים. Desktop לא קורא אתcommandכתחביר shell, ולכן pipes ומשתנים לא עובדים: כתבו אותו כתוכנית והארגומנטים שלה. - Default: לא מוגדר
הדוגמה הזו מוסיפה חיבור אחד בשם Dev box, שבו acme-dev create מייצג את הכלי שלכם:
{
"sshHostCommands": [
{
"id": "devbox",
"name": "Dev box",
"command": "acme-dev create"
}
]
}ב-Windows, שם חשוף כמו acme-dev לא עובד, אז התחילו את הפקודה בנתיב המלא של התוכנית.
לפני Claude Code v2.1.307, כלי Edit סירב לשינוי שהוסיף את המפתח הזה לקובץ הגדרות תקין, עם השגיאה Unrecognized field: sshHostCommands. בגרסאות האלה, הוסיפו את המפתח בעורך טקסט במקום. Claude Code טוען קובץ שמכיל את המפתח. ב-Desktop, הגרסה שקובעת היא גרסת Claude Code של לשונית Code, לא זו של הטרמינל שלכם.
#אימות וספקים
ספקו אישורים דרך סקריפטי עזר, ולארגונים, כפו שיטת התחברות או ארגון. ראו Authentication.
#allowedProviders
רשימת השירותים שדרכם מכונה רשאית להגיע אל Claude, כגון Anthropic API, Amazon Bedrock, או שער LLM. סשן על ספק שאינו ברשימה נדחה בהפעלה, בהתחברות, ובפעם הבאה שהוא פונה ל-API, כך שגם מעבר לספק שאינו ברשימה באמצע סשן נדחה. הודעת הסירוב מציינת מה בחר את הספק ואת הצעדים להמשך. דורש Claude Code מגרסה v2.1.285 ואילך.
- היקף:
Managed. רשימה שמקורות הניהול של המכונה עצמה מגדירים, מדיניות MDM וקבצי הגדרות מנוהלות, ממשיכה לחול גם כשהגדרות מנוהלות בשרת מספקות רשימה: סשן רשאי אז להשתמש רק בספקים שנמצאים בשתי הרשימות, כך שרשימה מנוהלת בשרת יכולה לצמצם את מה שהמכונה מתירה אבל לעולם לא להרחיב אותו. איזה מקור מכונה שלallowedProvidersנספר נקבע לפי האופן שבו Claude Code משלב מקורות מנוהלים. רשימה שנמסרת רק דרך הגדרות מנוהלות בשרת מגיעה רק לסשנים שמושכים הגדרות מנוהלות בשרת. - סוג: מערך של מחרוזות, כל אחת מאלה:
"anthropic": Anthropic API על המארח של Anthropic עצמה, דרך התחברות claude.ai או Console או מפתח API. שלבו אותו עםforceLoginMethodאוforceLoginOrgUUIDכדי להגביל גם את ההתחברות"bedrock": Amazon Bedrock"vertex": Google Cloud's Agent Platform, לשעבר Vertex AI"foundry": Microsoft Foundry"anthropicAws": Claude Platform on AWS"mantle": נקודת הקצה Mantle של Amazon Bedrock. סשן שמריץ את Mantle לצד Invoke API משתמש בשני הספקים, ולכן יש לרשום עבורו את"bedrock"ואת"mantle"יחד"customEndpoint": Anthropic API או API של ספק ענן שנשלחים למארח אחר, כגון שער LLM ששמו נקבע ב-ANTHROPIC_BASE_URLאו במשתנה נקודת קצה של ספק כגוןANTHROPIC_BEDROCK_BASE_URL. Claude Code מתיר אותו רק עבור הערך המדויק שבלוקenvמנוהל מקבע"gateway": התחברות לשער ענן
- ברירת מחדל: לא מוגדר, כך שאפשר להשתמש בכל ספק
{
"allowedProviders": ["anthropic", "bedrock"]
}כל רשומה של ספק ענן פירושה השירות של אותו ספק עצמו, כולל נקודות הקצה האזוריות, FIPS והפרטיות שלו.
רשומה ש-Claude Code אינו מזהה כשם ספק מושמטת ומדווחת, ושאר הרשימה נאכפת. עם רשימה ריקה, או רשימה שכל רשומה בה אינה מזוהה, Claude Code מסרב לכל ספק ואינו מופעל על המכונה.
#נקודות קצה שדורשות קיבוע ב-env מנוהל
קיבוע הוא ערך של משתנה נקודת קצה שמוגדר בבלוק env מנוהל. כשסשן שולח את התעבורה של ספק למקום שאינו השירות של אותו ספק עצמו, Claude Code מתיר זאת רק אם הערך של הסשן זהה לקיבוע. נקודות הקצה האלה דורשות קיבוע:
- סשנים של
"customEndpoint": המשתנה שמציין את המארח, כגוןANTHROPIC_BASE_URL - Amazon Bedrock: המשתנים
AWS_ENDPOINT_URL,AWS_ENDPOINT_URL_BEDROCKו-AWS_ENDPOINT_URL_BEDROCK_RUNTIMEשל AWS SDK כשהם מצביעים מחוץ לשירות של Bedrock עצמו. הסשן נשאר תחת"bedrock"ולא תחת"customEndpoint" - כתובת URL של התחברות לשער: הסשן נשאר תחת
"gateway", וגםforceLoginGatewayUrlנחשב לקיבוע
אילו בלוקי env נחשבים לקיבועים תלוי במקום שבו הרשימה מוגדרת:
- מקור מנהל על המכונה מגדיר רשימה: רק בלוקי
envשל מקורות המנהל של המכונה עצמה נספרים - רק הגדרות מנוהלות בשרת מגדירות רשימה: גם ערך
envבהגדרות המנוהלות בשרת האלה נספר
הרשימה אינה שופטת משתני אישורים וחכירה של ספק ענן או את נתיב הרשת, כגון HTTPS_PROXY והגדרות אישורים. הגדירו אותם עבור הצי בבלוק env המנוהל.
#apiKeyHelper
הרצת פקודה משלכם שמייצרת את האישור ש-Claude Code שולח עם בקשות מודל. Claude Code מריץ את הפקודה דרך מעטפת המערכת, /bin/sh ב-macOS וב-Linux ו-cmd ב-Windows, ושולח את הפלט שלה גם ככותרת X-Api-Key וגם ככותרת Authorization: Bearer. השתמשו בזה לאישורים דינמיים או מתחלפים, כגון אסימונים קצרי חיים שנמשכים מכספת.
- היקף:
Any file - סוג: מחרוזת, שורת פקודת מעטפת
- ברירת מחדל: לא מוגדר, כך ש-Claude Code אינו מריץ עוזר
{
"apiKeyHelper": "/bin/generate_temp_api_key.sh"
}Claude Code שומר את הערך במטמון ומריץ את הפקודה מחדש במקרים האלה:
- אחרי משך חיי המטמון, חמש דקות כברירת מחדל או המרווח שאתם מגדירים עם
CLAUDE_CODE_API_KEY_HELPER_TTL_MS. - כשבקשה ל-Anthropic API, ישירות או דרך שער LLM, נכשלת עם
401או403. - לפני שליחת בקשה ל-Anthropic API, ישירות או דרך שער LLM, כשהפלט שבמטמון הוא JWT שפג אחרי שהעוזר ייצר אותו. דורש Claude Code מגרסה v2.1.246 ואילך.
שני המקרים האחרונים חלים רק כשהפלט של העוזר הוא האישור ש-Claude Code שולח ו-ANTHROPIC_AUTH_TOKEN אינו מוגדר.
בסשנים אינטראקטיביים, כשהפקודה מגיעה מהגדרות פרויקט או מהגדרות מקומיות, Claude Code אינו מריץ אותה עד שאתם מאשרים את בקשת האמון בסביבת העבודה. ראו ניהול אישורים.
#awsAuthRefresh
הרצת פקודה משלכם, כגון aws sso login, כדי לרענן את האישורים בספריית .aws כשהאישורים שיש ל-Claude Code עבור Amazon Bedrock מפסיקים לעבוד. Claude Code בודק קודם את האישורים הנוכחיים מול STS ומריץ את הפקודה רק כשהבדיקה נכשלת, ואז קורא את ספריית .aws המרועננת.
כשהבדיקה נכשלת באותו זמן בכמה תהליכי Claude Code שמשתמשים באותה פקודה ובאותם אישורים, כגון מסופים נפרדים או חלונות IDE, תהליך אחד מריץ את הפקודה והשאר ממתינים להרצה הזו במקום להתחיל הרצה משלהם. תהליך שהמתין 60 שניות עם בקשה ממתינה מריץ את הפקודה בעצמו. כדי לכבות זאת, הגדירו את CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK ל-1.
- היקף:
Any file - סוג: מחרוזת, שורת פקודת מעטפת
- ברירת מחדל: לא מוגדר, כך ש-Claude Code אינו מרענן עבורכם אישורי AWS
{
"awsAuthRefresh": "aws sso login --profile myprofile"
}השתמשו במפתח הזה כשזרימת הרענון שלכם כותבת אל .aws. השתמשו ב-awsCredentialExport כשהיא מדפיסה אישורים במקום זאת. ראו הגדרת אישורים מתקדמת.
#awsCredentialExport
הרצת פקודה משלכם שמדפיסה אישורי AWS כ-JSON, כדי ש-Claude Code יוכל לקרוא ל-Amazon Bedrock עם אישורים שאינם נמצאים בספריית .aws שלכם. Claude Code מקבל את צורת הפלט של aws sts ואת הצורה השטוחה של aws configure export-credentials, ומגביל את האישורים ללקוח Bedrock שלו, כך שפקודות המעטפת ש-Claude מריץ עדיין רואות את האישורים הסביבתיים שלכם.
- היקף:
Any file - סוג: מחרוזת, שורת פקודת מעטפת
- ברירת מחדל: לא מוגדר, כך ש-Claude Code משתמש בשרשרת אישורי AWS הסביבתית
{
"awsCredentialExport": "/bin/generate_aws_grant.sh"
}בניגוד ל-awsAuthRefresh, Claude Code תמיד מריץ את הפקודה הזו כשהיא מוגדרת, בלי לבדוק קודם את האישורים הסביבתיים. ראו הגדרת אישורים מתקדמת.
#forceLoginMethod
הגבלה של סוג החשבון שאנשים יכולים להתחבר איתו. הגדירו "claudeai" כדי לאפשר רק חשבונות claude.ai, "console" כדי לאפשר רק חשבונות Claude Console, או "gateway" כדי לשלוח אנשים לשער ענן במקום להתחברות מצד ראשון. מנהלים מגדירים אותו בהגדרות מנוהלות ומשלבים אותו עם forceLoginOrgUUID כדי לשמור התחברויות claude.ai של מפתחים בתוך ארגון אחד.
אם מגדירים אותו ל-"claudeai" בכל קובץ הגדרות, Claude Code גם מפסיק להציע את התחברות Console בלי מפתח בסשנים שאותו קובץ חל עליהם. עם "console" בלבד, אנשים עדיין יכולים להגיע להתחברות בלי מפתח אחרי התחברות שנכשלה. כדי ש-Claude Code יפסיק להציע אותה, ראו הפסקת הצעת ההתחברות בלי מפתח במכונות מנוהלות, שמפרט גם מה עוד forceLoginOrgUUID משנה.
- היקף:
Any file. Claude Code מכבד את"gateway"מאותם מקורות כמוforceLoginGatewayUrlומתייחס אליו כלא מוגדר בכל מקום אחר. - סוג: מחרוזת, אחת מאלה:
"claudeai": רק חשבונות claude.ai יכולים להתחבר"console": רק חשבונות Claude Console יכולים להתחבר"gateway": Claude Code שולח אנשים לשער ענן במקום להתחברות מצד ראשון
- ברירת מחדל: לא מוגדר, כך שאנשים בוחרים שיטת התחברות
{
"forceLoginMethod": "claudeai"
}כל נתיב התחברות מצד ראשון מחיל את ההגבלה, כולל הרחבת VS Code, Agent SDK, claude setup-token ו-/install-github-app, מלבד מסך ההתחברות האינטראקטיבי של המסוף, שאליו מגיעים דרך /login או קליטת ההפעלה הראשונה, אשר בוחר מראש את השיטה בלי לאכוף אותה. לפני v2.1.212, רק התחברויות מסוף החילו אותה. ראו הגבלת התחברות לארגון שלכם לאופן הטיפול בכל נתיב התחברות, באישורים סביבתיים ובספקים של צד שלישי.
כשמקור מנוהל על המכונה מגדיר "gateway", Claude Code אינו משתמש בהתחברות שנשארה, במפתח API או באישור apiKeyHelper. ראו מדיניות מנהל דורשת התחברות לשער ענן להודעה שכל אחד מהם מייצר. אם בוחרים ספק ענן דרך CLAUDE_CODE_USE_BEDROCK או משתנה סביבה דומה, הסשן אינו זקוק להתחברות לשער. לפני v2.1.261, Claude Code השתמש בהתחברות שנשארה במכונות האלה.
#forceLoginGatewayUrl
הגדרת כתובת ה-URL של השער שאליה מסך שער הענן של /login מתחבר, כדי שאנשים יגיעו לשער הענן שלכם בלי להקליד את הכתובת. למסך אין שדה URL: כשהמפתח הזה מוגדר, הוא מציג את כתובת ה-URL של השער ומתחבר כשהאדם לוחץ Enter. בלעדיו, הוא אומר להם לפנות למנהל ה-IT שלהם.
בהגדרות מנוהלות, המפתח הזה או forceLoginMethod: "gateway" הופכים את המכונה לשער בלבד, מלבד סשנים שבוחרים ספק ענן עם CLAUDE_CODE_USE_*. אז /login נפתח במסך שער הענן בלי בורר שיטת התחברות. ראו מדיניות מנהל דורשת התחברות לשער ענן למה שקורה להתחברות מצד ראשון שנשארה או למפתח API. הגדירו את שני המפתחות כדי שהמסך יתחבר במקום להציג שגיאה.
- היקף:
User or managed. נקרא ממקור מנוהל על המכונה:managed-settings.json, ה-plist של macOS או הרישום HKLM של Windows, או עוזר מדיניות. במכונה שאין בה אף אחד מאלה, Claude Code מגרסה v2.1.295 ואילך קורא אותו גם מהגדרות משתמש. Claude Code מתעלם ממנו ב-HKCU ובהגדרות מנוהלות בשרת. - סוג: מחרוזת, כתובת URL מלאה כולל הסכמה
- ברירת מחדל: לא מוגדר, כך שמסך שער הענן מציג שגיאה שאומרת לאנשים לפנות למנהל ה-IT שלהם
{
"forceLoginGatewayUrl": "https://claude-gateway.example.com"
}אם הערך אינו כתובת URL תקינה, מסך ההתחברות מדווח על כך, ושאר קובץ ההגדרות המנוהלות עדיין חל. ראו הגדרת כתובת ה-URL של השער.
#forceLoginOrgUUID
ממקור מנוהל, דרישה שהתחברויות חשבון claude.ai ישתייכו לארגון Anthropic אחד, שניתן כ-UUID יחיד, או לכל אחד מכמה ארגונים, שניתנים כמערך. מכל קובץ הגדרות, Claude Code משתמש גם ב-UUID יחיד כדי לבחור מראש את הארגון הזה במהלך התחברות claude.ai או Claude Console, ואינו בוחר דבר מראש עבור מערך. אם מגדירים את המפתח בכל קובץ הגדרות, Claude Code גם מפסיק להציע את התחברות Console בלי מפתח בסשנים שאותו קובץ חל עליהם ויוצר מפתח API במקום זאת.
- היקף:
Any file. רק מקור מנוהל אוכף את ההגבלה. UUID יחיד בכל קובץ הגדרות אחר בוחר מראש את הארגון במהלך ההתחברות בלי להגביל אותה. - סוג: מחרוזת, UUID אחד, או מערך של מחרוזות, כמה UUID
- ברירת מחדל: לא מוגדר, כך שכל ארגון יכול להתחבר
הדוגמה הזו מקבלת התחברויות מכל אחד משני ארגונים בלי לבחור אחד מראש:
{
"forceLoginOrgUUID": ["xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy"]
}אם מקור מנוהל מגדיר מערך ריק, או ערך שאינו מחרוזת או מערך של מחרוזות, משתמשים שמתחברים עם חשבון Anthropic אינם יכולים להפעיל את Claude Code או להשלים התחברות. הם רואים הודעה שמציינת את forceLoginOrgUUID ואומרת להם לפנות למנהל שלהם. policyHelper שפולט ערך מהסוג הלא נכון נכשל בהרצה שלו במקום זאת.
ראו הגבלת התחברות לארגון שלכם לאופן שבו Claude Code מתייחס להתחברויות Claude Console, לנתיבי ההתחברות האחרים ולאישורים סביבתיים.
#gatewayInternalNetworks
הכרזה על בלוקי IPv4 ציבוריים שמהם הארגון שלכם ממספר את הרשת הפנימית שלו, כדי ש-/login יקבל שער ענן שם. דורש Claude Code מגרסה v2.1.268 ואילך.
בלי המפתח הזה, /login מתחבר לכל שער בכתובת פרטית ולשום דבר אחר. איתו, /login מקבל גם שער בתוך בלוק שברשימה, רק בחיבור ישיר. הכתובת של המכונה עצמה באותו חיבור חייבת גם היא להיות בתוך אותו בלוק.
- היקף:
Managed. נקרא רק ממקור על המכונה:managed-settings.json, ה-plist של macOS או הרישום HKLM של Windows, או עוזר מדיניות. Claude Code מתעלם ממנו ב-HKCU ובהגדרות מנוהלות בשרת. - סוג: מערך של מחרוזות, לכל היותר ארבעה בלוקי CIDR של IPv4, כל אחד מ-
/8עד/32, בלי חפיפה זה עם זה, ואף אחד מהם אינו חופף למרחב פרטי. - ברירת מחדל: לא מוגדר, כך ש-
/loginמקבל רק שערים בכתובות פרטיות
{
"gatewayInternalNetworks": ["203.0.113.0/24"]
}החליפו את טווח התיעוד בדוגמה בבלוק שלכם. Claude Code מסרב לטווחי התיעוד, לטווחים שלקוחות VPN ו-NAT64 משתמשים בהם מקומית, ולמרחב שמור שאף רשת אינה ממוספרת ממנו, כגון multicast.
אם רשומה אינה תקינה, או שהערך אינו רשימה של מחרוזות, /login מציין את הבעיה ומסרב לכל התחברות שער חדשה על המכונה עד שתתקנו את הערך. התחברויות קיימות ממשיכות לעבוד. ראו אישור שער במרחב כתובות ציבורי שבבעלותכם לכללים המלאים ולמה שמפתחים רואים.
#gcpAuthRefresh
הרצת פקודה משלכם כדי לרענן את Google Cloud Application Default Credentials כש-Claude Code מוצא שפג תוקפם או שאי אפשר לטעון אותם, כדי שבקשות ל-Google Cloud's Agent Platform ימשיכו לעבוד בלי שתאמתו מחדש ידנית.
כשכמה תהליכי Claude Code שמשתמשים באותה פקודה ובאותם אישורים, כגון מסופים נפרדים או חלונות IDE, מוצאים שפג תוקפם באותו זמן, תהליך אחד מריץ את הפקודה והשאר ממתינים להרצה הזו במקום להתחיל הרצה משלהם. תהליך שהמתין 60 שניות עם בקשה ממתינה מריץ את הפקודה בעצמו. כדי לכבות זאת, הגדירו את CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK ל-1.
- היקף:
Any file - סוג: מחרוזת, שורת פקודת מעטפת
- ברירת מחדל: לא מוגדר, כך ששגיאת האישורים של Claude Code אומרת לכם להריץ בעצמכם את
gcloud auth application-default login
{
"gcpAuthRefresh": "gcloud auth application-default login"
}ראו הגדרת אישורים מתקדמת.
#otelHeadersHelper
הרץ פקודה משלך כדי לייצר את הכותרות ש Claude Code שולח עם ייצוא OpenTelemetry, עבור backends שהטוקנים שלהם מתחלפים. Claude Code מריץ אותה בהפעלה ומדי פעם אחריה, ומצפה לאובייקט JSON של ערכי כותרות מסוג מחרוזת ב stdout.
- היקף:
Any file - סוג: מחרוזת, נתיב לקובץ הרצה או שורת פקודת shell
- ברירת מחדל: לא מוגדר, ולכן Claude Code לא מוסיף כותרות שנוצרו על ידי helper
{
"otelHeadersHelper": "/bin/generate_otel_headers.sh"
}הגדר את מרווח הרענון עם CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS. ראה Dynamic headers לדרישות הסקריפט ולמה שקורה כשה helper נכשל.
#עדכונים וניהול גרסאות
בחר ערוץ עדכונים, ובארגונים, קבע את הגרסאות שאנשים יכולים להריץ. ראה Update Claude Code.
#autoUpdatesChannel
בחר אחרי איזה ערוץ הפצה עוקבים עדכונים אוטומטיים ברקע ו claude update. הגדר "stable" לגרסה שבדרך כלל בת כשבוע ומדלגת על הפצות עם רגרסיות משמעותיות, או "latest" להפצה האחרונה.
- היקף:
Any file. הגדר אותו בהגדרות מנוהלות כדי לאכוף ערוץ אחד בכל הארגון. - סוג: מחרוזת, אחד מאלה:
"latest": עדכונים עוקבים אחרי ההפצה האחרונה"stable": עדכונים עוקבים אחרי גרסה שבדרך כלל בת כשבוע ומדלגת על הפצות עם רגרסיות משמעותיות
- ברירת מחדל: לא מוגדר, ולכן Claude Code עוקב אחרי
"latest"
{
"autoUpdatesChannel": "stable"
}Claude Code כותב "stable" להגדרות המשתמש שלך כשאתה בוחר זאת תחת Auto-update channel ב /config, ומסיר את המפתח כשאתה חוזר ל latest שם. claude install stable ו claude install latest גם שומרים את הערוץ שציינת. מעבר מ "latest" ל "stable" ב /config שואל אם לאפשר הורדת גרסה או להישאר בגרסה הנוכחית. הישארות מגדירה את minimumVersion. התקנות Homebrew מתעלמות מהמפתח הזה: ה cask claude-code עוקב אחרי stable ו claude-code@latest עוקב אחרי latest, ו claude update מפנה ל brew upgrade. כדי לכבות עדכונים אוטומטיים לגמרי, הגדר DISABLE_AUTOUPDATER ב env.
#minimumVersion
מנע מעדכונים אוטומטיים ברקע ומ claude update להתקין גרסה נמוכה מזו, כך שמעבר לערוץ "stable" לא מוריד אותך מ build חדש יותר של "latest". Claude Code כותב את המפתח הזה עבורך כשאתה בוחר להישאר בגרסה הנוכחית בזמן החלפת ערוצים ב /config, ומנקה אותו כשאתה חוזר ל "latest".
- היקף:
Any file. הגדר אותו בהגדרות מנוהלות כדי לקבוע מינימום לכל הארגון שהגדרות משתמש ופרויקט לא יכולות להנמיך. - סוג: מחרוזת, מספר גרסה כגון
"2.1.100". ערך שאינו גרסה תקינה מתעלמים ממנו - ברירת מחדל: לא מוגדר, ולכן עדכונים יכולים להתקין כל גרסה שהערוץ מציע
הדוגמה הזו עוקבת אחרי הערוץ היציב ומסרבת להתקין כל גרסה מתחת ל 2.1.100:
{
"autoUpdatesChannel": "stable",
"minimumVersion": "2.1.100"
}המפתח הזה מגביל רק עדכונים. כדי ש Claude Code יסרב להפעלה מתחת לגרסה, השתמש ב requiredMinimumVersion במקום. ראה Pin a minimum version.
#requiredMaximumVersion
הגדר את גרסת Claude Code החדשה ביותר שהארגון שלך מאפשר להפעיל. כשהגרסה שרצה חדשה יותר, Claude Code יוצא בהפעלה ואומר למשתמש להתקין גרסה מאושרת דרך השיטה המאושרת של הארגון. claude install <version> עשוי גם לעבוד. דורש Claude Code v2.1.163 או מאוחר יותר.
- היקף:
Managed. Claude Code לא נותן אזהרה כשהוא מתעלם מהמפתח במקום אחר. - סוג: מחרוזת, מספר גרסה כגון
"2.1.150". ערך שאינו גרסה תקינה מתעלמים ממנו - ברירת מחדל: לא מוגדר, ולכן אין תקרה
{
"requiredMaximumVersion": "2.1.150"
}עדכונים אוטומטיים ברקע ו claude update מדלגים על גרסאות מעל התקרה, כך שהתקנה בתוך הטווח נשארת בתוכו. claude update, claude install ו claude doctor ממשיכים לעבוד מעל התקרה כדי שמשתמשים יוכלו להתאושש. שלב אותו עם requiredMinimumVersion כדי לאכוף טווח.
#requiredMinimumVersion
הגדר את גרסת Claude Code הישנה ביותר שהארגון שלך מאפשר להפעיל. כשהגרסה שרצה ישנה יותר, Claude Code יוצא בהפעלה ואומר למשתמש לעדכן דרך השיטה המאושרת של הארגון. הבדיקה רצה רק בהפעלה, ולכן סשן שכבר רץ ממשיך. דורש Claude Code v2.1.163 או מאוחר יותר.
- היקף:
Managed. Claude Code לא נותן אזהרה כשהוא מתעלם מהמפתח במקום אחר. - סוג: מחרוזת, מספר גרסה כגון
"2.1.150". ערך שאינו גרסה תקינה מתעלמים ממנו - ברירת מחדל: לא מוגדר, ולכן אין רצפה
{
"requiredMinimumVersion": "2.1.150"
}claude update, claude install ו claude doctor ממשיכים לעבוד מתחת לרצפה כדי שמשתמשים יוכלו להתאושש. בניגוד ל minimumVersion, שמונע רק הורדות גרסה, המפתח הזה חוסם הפעלה. שלב אותו עם requiredMaximumVersion כדי לאכוף טווח.
#כלים
כבה כלים מסוימים ב אפליקציית הדסקטופ של Claude Code. ה CLI של הטרמינל מתעלם מהמפתחות האלה. לכלים עצמם, ראה Tools available to Claude.
#browserExternalPageTools
עצור את Claude משימוש בכלים שלו כדי לקרוא או לפעול על דפים חיצוניים ב חלונית Browser של אפליקציית הדסקטופ. אנשים בארגון שלך עדיין יכולים לפתוח אתרים חיצוניים בעצמם, ותצוגות מקדימות של שרת פיתוח מקומי ממשיכות לעבוד עם הכלים של Claude. אפליקציית הדסקטופ קוראת את המפתח הזה. ה CLI של הטרמינל מתעלם ממנו.
- היקף:
Managed - סוג: מחרוזת,
"disabled". אפליקציית הדסקטופ מקבלת גם"disable", בכל אחד מהמקרים - ברירת מחדל: לא מוגדר, ולכן הכלים של Claude עובדים על דפים חיצוניים
{
"browserExternalPageTools": "disabled"
}כל ערך אחר משאיר את הכלים של Claude פעילים, ומחרוזת לא ריקה שאינה אחד משני הערכים המתקבלים רושמת אזהרה. כדי לחסום אתרים חיצוניים גם לאנשים וגם ל Claude, הגדר disableBrowserExternalNavigation במקום. ראה Restrict external browsing for your organization.
#disableBrowserExternalNavigation
כבה גלישה חיצונית ב חלונית Browser של אפליקציית הדסקטופ גם לאנשים וגם ל Claude. תצוגות מקדימות של שרת פיתוח ב localhost ממשיכות לעבוד. אפליקציית הדסקטופ קוראת את המפתח הזה. ה CLI של הטרמינל מתעלם ממנו.
- היקף:
Managed - סוג: Boolean. רק ה JSON Boolean
trueנכנס לתוקףtrue: אפליקציית הדסקטופ מכבה גלישה חיצונית בחלונית Browser גם לאנשים וגם ל Claude. תצוגות מקדימות של localhost ממשיכות לעבודfalse: גלישה חיצונית נשארת פעילה
- ברירת מחדל: לא מוגדר, ולכן גלישה חיצונית פעילה
{
"disableBrowserExternalNavigation": true
}אפליקציית הדסקטופ מתעלמת מכל ערך אחר, וערך שאינו Boolean, כגון המחרוזת "true" או 1, גם רושם אזהרה. כדי להשאיר גלישה חיצונית פעילה אבל להשאיר את הכלים של Claude כבויים בדפים חיצוניים, הגדר browserExternalPageTools במקום. ראה Restrict external browsing for your organization.
#disableMobileSimulatorTools
חסום את הכלים של Claude עבור חלונית iOS Simulator של אפליקציית הדסקטופ. אנשים שומרים על שימוש ידני בחלונית. רק הגישה של Claude מוסרת, ואף אחד לא יכול להחזיר אותה מתוך האפליקציה. אפליקציית הדסקטופ קוראת את המפתח הזה. ה CLI של הטרמינל מתעלם ממנו.
- היקף:
Managed - סוג: Boolean. רק ה JSON Boolean
trueנכנס לתוקףtrue: אפליקציית הדסקטופ חוסמת את הכלים של Claude עבור חלונית iOS Simulatorfalse: הכלים של הסימולטור של Claude עוקבים אחרי מתג ההגדרות של כל אדם באפליקציית הדסקטופ
- ברירת מחדל: לא מוגדר, ולכן הכלים של הסימולטור של Claude עוקבים אחרי מתג ההגדרות של כל אדם באפליקציית הדסקטופ
{
"disableMobileSimulatorTools": true
}אפליקציית הדסקטופ מתעלמת מכל ערך אחר, וערך שאינו Boolean, כגון המחרוזת "true" או 1, גם רושם אזהרה.
#פרטיות וטלמטריה
שלוט כמה זמן Claude Code שומר נתוני סשן ומה הוא שולח. המתגים שמכבים מדדי שימוש ודיווחי שגיאות הם משתני סביבה, לא מפתחות הגדרות: הגדר DISABLE_TELEMETRY, DISABLE_ERROR_REPORTING או CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC במפתח env או ב shell. Telemetry services אומר מה כל אחד עוצר. שני חריגים נכבים מקובץ הגדרות: feedbackDrafts למטה עבור משוב ש Claude ניסח, ו feedbackSurveyRate למטה עבור סקר הסשן.
#cleanupPeriodDays
הגדר כמה ימים Claude Code שומר תמלולי סשן ונתוני אפליקציה אחרים לפני שהוא מוחק אותם. Claude Code מריץ את המחיקה כסריקה ברקע אחרי שסשן מתחיל, כל עוד הוא יכול לקבוע בבטחה את תקופת השמירה. הסריקה מוחקת תמלולים בלי להציג הודעה, ולכן סשן שלא השתמשת בו יותר מתקופת השמירה כבר לא מופיע בבורר /resume.
- היקף:
Any file - סוג: מספר ימים, מספר שלם, מינימום
1 - ברירת מחדל:
30
{
"cleanupPeriodDays": 20
}הגדרת 0 נכשלת באימות, ולכן בחר ערך גדול כגון 3650 לשמירה ארוכה. כדי לעצור את Claude Code מכתיבת תמלולים בכלל, ראה Plaintext storage.
#desktopSessionCleanupPeriodDays
הגדר מגבלת גיל בימים לתמלולים של סשנים שהתחלת או שהמשכת לאחרונה ב Claude Desktop או ב Cowork. בלי המפתח הזה, Claude Code שומר את התמלולים האלה בכל גיל. Claude Code מוחק כל אחד ברגע שהוא ישן יותר גם מהמגבלה הזו וגם מ cleanupPeriodDays, ולכן עם cleanupPeriodDays בברירת המחדל של 30, ערך של 7 עדיין שומר אותם 30 ימים. Cleaned up automatically מפרט את המקרים שבהם cleanupPeriodDays חל במקום ו Claude Code מתעלם מהמפתח הזה. דורש Claude Code v2.1.248 או מאוחר יותר.
- היקף:
User or managed. Claude Code גם קורא את המפתח מקובץ שאתה מעביר עם--settings, ומתעלם ממנו בהגדרות פרויקט ומקומיות. - סוג: מספר ימים, מספר שלם, מינימום
0 - ברירת מחדל:
0, שלא קובע מגבלת גיל
{
"desktopSessionCleanupPeriodDays": 90
}#feedbackDrafts
שלוט ב משוב ש Claude ניסח: אם Claude יכול להעמיד בתור טיוטות משוב לעיון שלך, ואם Claude Code מציג כרטיס כש Claude מעמיד אחת בתור.
- היקף:
User or managed - סוג: מחרוזת, אחד מ
"notify","quiet"או"off""notify": Claude Code מציג כרטיס מעל הפרומפט כש Claude מעמיד טיוטה בתור, עד שלושה כרטיסים בסשן כברירת מחדל"quiet": Claude מנסח בלי כרטיס. אתה רואה את מספר הטיוטות בתור בכותרת התחתונה של הפרומפט וסוקר אותן ב/feedback"off": Claude Code מסיר את הכלי SendFeedback, ולכן Claude לא יכול להעמיד טיוטות בתור
- ברירת מחדל:
"notify" - דריסות לכל סשן:
CLAUDE_CODE_SEND_FEEDBACKשמוגדר ל0מכבה את התכונה לסשן אחד
{
"feedbackDrafts": "quiet"
}מופיע ב /config כ Claude-drafted feedback, שכותב את המפתח הזה להגדרות המשתמש שלך. אתה רואה את שורת /config רק בסשנים שבהם Claude יכול לנסח משוב. הגדרת "off" לא מסתירה אותה, ולכן אתה יכול להפעיל את התכונה מחדש מאותה שורה. ערך בהגדרות מנוהלות גובר על הגדרת המשתמש שלך, ולכן כשמנהל מגדיר את המפתח הזה, השורה מציגה את הערך המנוהל ולשינוי אין השפעה. Claude Code מתעלם מהמפתח הזה בהגדרות פרויקט ומקומיות.
#feedbackSurveyRate
הגדר את ההסתברות ש סקר איכות הסשן יופיע כשסשן זכאי לו. הגדר 0 כדי שהסקר לא יופיע.
- היקף:
Any file - סוג: מספר בין
0ל1 - ברירת מחדל: לא מוגדר, ולכן Claude Code משתמש בשיעור ש Anthropic קובעת מרחוק, או בשיעור המובנה שלה
0.005ב Amazon Bedrock, ב Agent Platform של Google Cloud וב Microsoft Foundry, שלא מקבלים תצורה מרחוק - דריסות לכל סשן:
CLAUDE_CODE_DISABLE_FEEDBACK_SURVEYשמוגדר ל1מכבה את הסקר לסשן אחד, בלי קשר לשיעור שהמפתח הזה קובע
{
"feedbackSurveyRate": 0.05
}אותו שיעור חל על הסקר בהרחבת VS Code.
#skipWebFetchPreflight
דלג על בדיקת הבטיחות של דומיין ב WebFetch, ששולחת כל hostname מבוקש אל api.anthropic.com לפני השליפה. הגדר true בסביבות שחוסמות תעבורה אל Anthropic, כגון Amazon Bedrock, Agent Platform של Google Cloud, או פריסות Microsoft Foundry עם egress מגביל.
- היקף:
Any file - סוג: Boolean
true: Claude Code מדלג על בדיקת הבטיחות של דומיין ב WebFetchfalse: הבדיקה רצה לפני השליפה הראשונה לכל hostname בסשן, ושוב עבור hostname שהבדיקה הקודמת שלו נחסמה או נכשלה
- ברירת מחדל: לא מוגדר, ולכן הבדיקה רצה לפני השליפה הראשונה לכל hostname בסשן
{
"skipWebFetchPreflight": true
}כשהבדיקה מדולגת, WebFetch מנסה כל URL בלי להתייעץ עם רשימת החסימה, ולכן שלב אותו עם כללי הרשאה של WebFetch אם אתה צריך להגביל לאילו דומיינים Claude יכול להגיע.
#הגדרות ארגוניות ומנוהלות
מפתחות שארגון משתמש בהם כדי לחשב, לרענן ולשלב הגדרות מנוהלות. ראה Set up managed settings.
#disableSideloadFlags
דוחה בעת ההפעלה את דגלי ה-CLI --plugin-dir, --plugin-url, --agents ו---mcp-config, שמשתמשים יכלו אחרת להעביר כדי לעקוף את strictKnownMarketplaces להרצה אחת. Claude Code יוצא עם שגיאה שמציינת בשמם את הדגלים שנדחו. בהפעלות בענן, Claude Code במקום זאת מתחיל את ההפעלה ומשמיט כל רשומת --mcp-config שנמסרה מהשרת, למעט רשומות type: "sdk" בתוך התהליך וכלי Slack של הפעלת Claude Tag. דורש Claude Code v2.1.193 ואילך.
- היקף:
Managed - סוג: בוליאני
true: Claude Code דוחה את--plugin-dir,--plugin-url,--agentsו---mcp-configבעת ההפעלה ויוצא עם שגיאה שמציינת אותם בשמם. בהפעלות בענן, הוא במקום זאת מתחיל את ההפעלה ומשמיט כל רשומת--mcp-configשנמסרה מהשרת, למעט רשומותtype: "sdk"בתוך התהליך וכלי Slack של הפעלת Claude Tagfalse: Claude Code מקבל את הדגלים האלה
- ברירת מחדל:
false
{
"disableSideloadFlags": true
}Claude Code עדיין מקבל --mcp-config שכל השרתים שלו הם רשומות type: "sdk" בתוך התהליך, כך ש-Agent SDK והרחבת VS Code ממשיכים לעבוד. משתמשים עדיין יכולים להוסיף שרתים עם claude mcp add או עם קובץ .mcp.json. לשליטה לכל שרת, הגדירו גם את allowedMcpServers. דורש Claude Code v2.1.193 ואילך.
disableSideloadFlags דוחה גם תיקיות תוספים מהמקורות האלה:
- משתנה הסביבה
CLAUDE_CODE_PLUGIN_DIRS: כשהמשתנה מציין תיקיית תוסף, Claude Code יוצא בעת ההפעלה עם שגיאה שמציינת בשמו את המשתנה ואומרת לבטל את הגדרתו. דורש Claude Code v2.1.280 ואילך - האפשרות
addPluginsשל Agent SDK: כשיישום מעביר תיקיות תוספים אלreloadPlugins()ב-addPlugins, הקריאה נכשלת עם שגיאה. ההפעלה ממשיכה לרוץ עם התוספים שכבר היו לה. דורש Claude Code v2.1.301 ואילך
בהפעלות בענן, Claude Code מתעלם גם מעדכוני MCP שנמסרים מהשרת באמצע ההפעלה, הנתיב שמאחורי תצורת הפעלה בענן וקריאות setMcpServers() של ה-SDK שמגיעות להפעלות האלה. גם שם, רשומות type: "sdk" בתוך התהליך וכלי Slack של הפעלת Claude Tag נשארים פטורים. לפני v2.1.268, גם ההשמטה הזו וגם השמטת ההפעלה הסירו את כלי Slack של הפעלת Claude Tag. לפני v2.1.239, --mcp-config שנמסר מהשרת חסם הפעלה בענן מלהתחיל.
אפליקציית שולחן העבודה מנהלת חלק מהתוספים בעצמה, כולל תוספים שמסונכרנים מ-claude.ai ותוספים שהארגון שלכם פורס דרך האפליקציה. אם אתם פורסים את המפתח הזה למכשיר דרך MDM, מדיניות ברמת מערכת ההפעלה, או קובץ הגדרות מנוהלות, אפליקציית שולחן העבודה לא מעבירה את התוספים האלה להפעלות הבאות במכשיר הזה:
- הפעלות Code במחשב של המשתמש: הן גם מתחילות בלי הכישורים שמופעלים עבור חשבון claude.ai של המשתמש. תוספים ש-Claude Code מתקין ממרקטפלייסים בהגדרות המנוהלות שלכם עדיין נטענים. ב-Claude Desktop on 3P, שרתי MCP מתוספים שאתם פורסים לספריית
org-pluginsשל המכשיר נשארים זמינים גם הם, כי אפליקציית שולחן העבודה מתחברת אליהם בעצמה. לפני Claude Desktop v1.37937.0, ההפעלות האלה נכשלו בעת ההפעלה במקום זאת. - הפעלות Cowork במחשב של המשתמש: הכישורים שבתוך התוספים האלה והכישורים שמופעלים עבור חשבון claude.ai של המשתמש נשארים זמינים. ב-Claude Desktop on 3P, שרתי MCP מתוספים שאתם פורסים לספריית
org-pluginsשל המכשיר נשארים זמינים גם הם, כי אפליקציית שולחן העבודה מתחברת אליהם בעצמה. לפני Claude Desktop v1.44121.0, ההפעלות האלה נכשלו בעת ההפעלה במקום זאת.
#forceRemoteSettingsRefresh
חוסם את הפעלת ה-CLI עד ש-Claude Code שואב מחדש הגדרות שמנוהלות בשרת. אם השליפה נכשלת, Claude Code יוצא במקום להמשיך עם הגדרות שמורות במטמון או בלי הגדרות. הגדירו אותו כשהסביבה שלכם לא יכולה לקבל אפילו חלון קצר שבו הפעלה רצה בלי המדיניות המנוהלת שלה.
כשהמפתח לא מוגדר, Claude Code לא חוסם את ההפעלה בגלל השליפה, אם כי כשהמפתח נכנס בעת ההפעלה הוא ממתין עד חמש שניות לשליפה. Anthropic יכולה לדרוש את ההגדרות, וזה כן חוסם התחלה בלעדיהן. הפעלת שער ענן ממתינה, ויוצאת אם אי אפשר להגיע לשער.
- היקף:
Managed. Claude Code מכבדtrueמכל מקור מנוהל בשליטת מנהל, גם כזה שאינו המקור בעדיפות הגבוהה ביותר. - סוג: בוליאני
true: Claude Code חוסם את ההפעלה עד שהוא שואב מחדש הגדרות שמנוהלות בשרת, ויוצא אם השליפה נכשלתfalse: אלא אם Anthropic דורשת את ההגדרות, Claude Code לא חוסם את ההפעלה בגלל השליפה, אם כי בהפעלה של כניסה הוא ממתין עד חמש שניות לשליפה
- ברירת מחדל:
false
{
"forceRemoteSettingsRefresh": true
}הגדירו אותו בפרופיל MDM או בקובץ ההגדרות המנוהלות כדי לאכוף הפעלה שנחסמת בכישלון לפני שמגיע המטען הראשון מהשרת. Claude Code מחיל את הבדיקה רק בהפעלות ששואבות הגדרות שמנוהלות בשרת, ולכן הפעלה שלא שואבת אותן מתחילה בלי להמתין. פקודות המשנה claude auth פטורות, כך שמשתמשים יכולים לאמת מחדש כשאישורים שפג תוקפם הם הסיבה לכישלון השליפה. ראו Enforce fail-closed startup.
#managedSourcesBehavior
בחרו אם Claude Code מחיל רק את המקור המנוהל בעדיפות הגבוהה ביותר שהארגון שלכם מספק, או משלב כל מקור מנהל שהוא מספק. כברירת מחדל Claude Code לוקח את המקור בעדיפות הגבוהה ביותר שנושא מפתח מדיניות ומתעלם מהשאר. מפתח מדיניות הוא כל מפתח הגדרות מלבד המפתח הזה ומלבד wslInheritsWindowsSettings. תחת ברירת המחדל הזו, אחרי שהגדרות שמנוהלות בשרת או מדיניות MDM מספקות מפתח מדיניות, קובץ managed-settings.json תורם רק את המפתחות ש-Claude Code קורא מכל מקור מנהל. עם "merge", כל מקור מנהל שאתם מספקים תורם את המפתחות שלו למדיניות משולבת אחת. דורש Claude Code v2.1.242 ואילך.
הגדירו "merge" רק במקום שבו כל מקור שמדורג מתחת למקור הגבוה ביותר שלכם נמצא בשליטת מנהל, כי Claude Code אז מוסיף רשומות ממקור נמוך יותר, כמו כללי permissions.allow, למדיניות.
- היקף:
Managed. Claude Code קורא את המפתח הזה מהמקור בעדיפות הגבוהה ביותר שנושא את המפתח הזה או מפתח מדיניות, ומתעלם מהמפתח הזה בכל מקור שמדורג נמוך יותר, כך שמקור נמוך יותר לא יכול לצרף את עצמו לשילוב עם המקור שמעליו. לא רישום HKCU של Windows ולא הגדרות הורה ממארח מטמיע משתתפים במיזוג. - סוג: מחרוזת, אחד מאלה:
"first-wins": המקור בעדיפות הגבוהה ביותר שנושא מפתח מדיניות מספק את המדיניות, ומקורות נמוכים יותר תורמים רק את המפתחות ש-Claude Code קורא מכל מקור מנהל"merge": כל מקור מנהל שאתם מספקים תורם את המפתחות שלו, משולבים לפי הכללים שלמטה
- ברירת מחדל:
"first-wins"
ספקו את המפתח במקור בעדיפות הגבוהה ביותר שאתם פורסים. מכונה שלעולם לא מקבלת הגדרות שמנוהלות בשרת צריכה את המפתח גם בפרופיל ה-MDM שלה, כי Claude Code קורא את המפתח מהמקור בעדיפות הגבוהה ביותר שנושא אותו או מפתח מדיניות. קובץ managed-settings.json הוא מקור המנהל המדורג הנמוך ביותר, ולכן "merge" שמוגדר שם אין לו מקור מתחתיו לשלב איתו. בהגדרות שמנוהלות בשרת, המפתח נראה כך:
{
"managedSourcesBehavior": "merge"
}תחת "merge", Claude Code משלב כל מפתח לפי הסוג שלו. הטבלה הזו נותנת את הכלל לכל סוג. שורות רשימת ההיתרים של ההגבלות, הערכים שנלקחים בשלמות, והקריאה מהמקור בעדיפות הגבוהה ביותר בלבד מציינות כל מפתח שהן מכסות, והשורות האחרות נותנות דוגמאות:
| סוג המפתח | איך Claude Code משלב אותו | מפתחות |
|---|---|---|
| רשימות | משלב רשומות מכל מקור | permissions.allow, sandbox.network.allowedDomains, ומפתחות רשימה אחרים |
| נעילות | מחיל את הערך המחמיר ביותר שכל מקור קובע. כשאף מקור לא קובע ערך מחמיר, מחיל ערך פחות מחמיר רק מהמקור הגבוה ביותר | allowManagedPermissionRulesOnly, permissions.disableBypassPermissionsMode, ונעילות בוליאניות או מסוג enum אחרות |
| רשימות היתרים של הגבלות | לוקח את הרשימה בשלמותה מהמקור הגבוה ביותר שקובע אותה, בלי להוסיף רשומות ממקורות נמוכים יותר. כשהמקור הגבוה ביותר לא קובע אחת, לוקח אותה בשלמותה מהמקור הבא מתחת | availableModels, allowedMcpServers, allowedProviders, strictKnownMarketplaces, allowedChannelPlugins, ושרשרת fallbackModel |
| ערכים שנלקחים בשלמות | לוקח את הערך בשלמותו מהמקור הגבוה ביותר שקובע אותו, בלי לשלב רשומות או שדות ממקורות נמוכים יותר. כשהמקור הגבוה ביותר לא קובע אותו, לוקח אותו בשלמותו מהמקור הבא מתחת | sandbox.credentials.awsPairs, sandbox.ripgrep |
| שרתי MCP שסופקו | משלב את שמות השרתים מכל מקור. כששני מקורות קובעים את אותו שם, מחיל את הרשומה השלמה של המקור הגבוה יותר | managedMcpServers |
| נקראים רק מהמקור בעדיפות הגבוהה ביותר | קורא את המפתח רק מהמקור בעדיפות הגבוהה ביותר שנושא מפתח מדיניות, כך שערך של מקור נמוך יותר מתעלמים ממנו גם כשהמקור הגבוה ביותר לא קובע אף ערך | apiKeyHelper, awsAuthRefresh, awsCredentialExport, gcpAuthRefresh, otelHeadersHelper, proxyAuthHelper, parentSettingsBehavior, modelPicker, policyHelper, permissions.defaultMode |
env | ממזג לפי משתנה בין מקורות מנהל, גם תחת "first-wins" וגם תחת "merge" | env |
| כל מפתח אחר | לוקח את הערך מהמקור הגבוה ביותר שקובע אותו | cleanupPeriodDays, model |
לקיחת sandbox.credentials.awsPairs ו-sandbox.ripgrep בשלמות דורשת Claude Code v2.1.257 ואילך.
כמה מפתחות מוסיפים תנאי שהטבלה לא מציגה:
policyHelper: Claude Code מכבד אותו רק כשהמקור הגבוה ביותר שנושא מפתח מדיניות הוא מדיניות MDM או קובץ הגדרות מנוהלות, ולכן תחת הגדרות שמנוהלות בשרת הוא לא חל.modelOverrides: מזווג ל-availableModels. Claude Code לוקח אתmodelOverridesמהמקור הגבוה ביותר שקובע אותו, אלא אם מקור גבוה יותר קובעavailableModelsבליmodelOverrides. במקרה הזה הוא מתעלם מ-modelOverridesמכל מקור.forceLoginGatewayUrl,gatewayInternalNetworks, והערך"gateway"שלforceLoginMethod: Claude Code לעולם לא קורא אף אחד מהם מהגדרות שמנוהלות בשרת, ולכן ערך שם לא חל ולא מסתיר ערך שמוגדר במדיניות MDM או בקובץ הגדרות מנוהלות. בין מקורות המנהל במכונה, רק המדורג הגבוה ביותר שנושא מפתח מדיניות מספק אותם, בין שהגדרות שמנוהלות בשרת נוכחות גם ובין שלא.forceLoginOrgUUIDוהערכים"claudeai"ו-"console"שלforceLoginMethod: בדקו איזה ערך חל ב-Which managed source supplies login keys ולא בטבלה.allowedProviders: אחרי הכלל של הטבלה, הרשימה של המכונה עצמה עדיין מגבילה את התוצאה, כפי שמציינת הערת ה-Scope של הרשומה שלה.
כדי לאשר אילו מקורות השתלבו במכונה, הריצו /status וקראו את שורת Setting sources.
#parentSettingsBehavior
בחרו אם Claude Code מחיל הגדרות מנוהלות שמספק תהליך מארח מטמיע, כמו Agent SDK או הרחבת IDE, כשקיימת גם שכבה מנוהלת שנפרסה על ידי מנהל. עם "first-wins", Claude Code משמיט את ההגדרות שסיפק המארח. עם "merge", הוא מחיל אותן מתחת לשכבת המנהל דרך מסנן שמאפשר רק הגבלות. הגדירו "merge" כשמארח צריך להעביר הגבלות משלו להפעלות שהוא מפעיל, לדוגמה Claude Desktop שמספק רשימת היתר יציאה של שער.
- היקף:
Managed. Claude Code קורא אותו מהמקור המנוהל בשליטת מנהל בעדיפות הגבוהה ביותר. - סוג: מחרוזת, אחד מאלה:
"first-wins": Claude Code משמיט את ההגדרות שסיפק המארח כשקיימת שכבה מנוהלת שנפרסה על ידי מנהל"merge": Claude Code מחיל את ההגדרות שסיפק המארח מתחת לשכבת המנהל דרך מסנן שמאפשר רק הגבלות
- ברירת מחדל:
"first-wins"
{
"parentSettingsBehavior": "merge"
}למפתח הזה אין השפעה כשאין שכבה מנוהלת שנפרסה על ידי מנהל: ההגדרות של המארח חלות אז כשכבה המנוהלת היחידה, ועדיין מסוננות לערכים מגבילים. לגבולות המסנן ולאופן האינטראקציה בין המקורות המנוהלים, ראו Parent settings from embedding hosts ו-Restrict parent settings.
#policyHelper
הרץ קובץ הפעלה שאתה פורס, שמחשב הגדרות מנוהלות בעת ההפעלה, כדי שתוכל לגזור מדיניות ממצב המכשיר, מזהות, או משירות מרוחק במקום מקובץ סטטי. Claude Code מריץ את העוזר לפני שהוא מקבל את ההנחיה הראשונה, ומתייחס להגדרות שהוא פולט כהגדרות המנוהלות של ההפעלה.
- היקף:
Managed. נקרא מ-plist של macOS, מרישום HKLM של Windows, או מקובץ ההגדרות המנוהלות. Claude Code קורא את המפתח ממקור מנוהל בעל העדיפות הגבוהה ביותר שנושא מפתח מדיניות ומריץ את העוזר רק כאשר המקור הזה הוא אחד משלושת אלה. הוא מתעלם מהמפתח בהגדרות שמנוהלות בשרת, ברישום HKCU, ובהגדרות אב שסופקו על ידי המארח. - סוג: אובייקט עם
path,timeoutMsו-refreshIntervalMs - ברירת מחדל: לא מוגדר, ולכן אף עוזר לא רץ
כאשר הגדרות שמנוהלות בשרת מספקות את המדיניות בעת ההשקה, הן גוברות על המקור של העוזר והעוזר לא רץ.
אם אחזור הגדרות מאוחר יותר מדווח שההגדרות שמנוהלות בשרת הוסרו, Claude Code מריץ את העוזר בנקודה זו במקום להמתין להשקה הבאה. הפלט שלו חל על שאר ההפעלה, והרצה שנכשלת מסיימת את ההפעלה עם אותה הודעה כמו הרצת הפעלה שנכשלה.
הדוגמה הזו מריצה את העוזר עם זמן קצוב של 5 שניות ומריצה אותו מחדש כל חמש דקות:
{
"policyHelper": {
"path": "/usr/local/bin/claude-policy",
"timeoutMs": 5000,
"refreshIntervalMs": 300000
}
}#כתיבת פלט העוזר
Claude Code מריץ את העוזר בלי ארגומנטים, מגדיר את CLAUDE_CODE_VERSION בסביבה שלו, וקורא מעטפת JSON מ-stdout, עם תקרה של 1 MiB.
שים את ההגדרות תחת מפתח managedSettings. אובייקט הגדרות חשוף בלי מפתח managedSettings מנותח עם managedSettings לא מוגדר ולא מחיל דבר, ו-Claude Code לא מדווח על שגיאה:
{
"managedSettings": {
"permissions": { "deny": ["Read(//etc/secrets/**)"] }
}
}כאשר העוזר פולט managedSettings, האובייקט הזה הופך למקור ההגדרות המנוהלות היחיד של ההרצה: Claude Code מתעלם ממקורות MDM, הקובץ ו-HKCU, קורא את המפתחות חוצי המקורות מהפלט של העוזר בלבד, ולא ממזג הגדרות אב.
בדיקת ההפעלה forceRemoteSettingsRefresh רצה לפני העוזר וקוראת כל מקור ניהול. עוזר שיוצא עם 0 ועם מעטפת שמחסירה את managedSettings לא תורם הגדרות מנוהלות, והמקורות האחרים חלים כרגיל.
#כשלים של העוזר
הרצת עוזר נכשלת כאשר:
pathמפר את הכללים ב-policyHelper.path.- אין קובץ רגיל ב-
path. Claude Code בודק את הקובץ לפני הפעלת העוזר, בתוך אותו תקציבtimeoutMs, כך שעיגון רשת שלא מגיב יכול לגרום להרצה להיכשל. - העוזר יוצא עם קוד שאינו אפס, עדיין רץ כאשר
timeoutMsחולף, או לא מתחיל בכלל, למשל כי הוא אינו בר הרצה. - העוזר כותב יותר מ-1 MiB ל-stdout או ל-stderr.
- stdout אינו אובייקט JSON יחיד, או של-
managedSettingsשלו יש הפרת סכמה ש-Claude Code לא יכול לתקן.
כאשר הרצת ההפעלה נכשלת, Claude Code מדפיס את הסיבה ומסרב להתחיל. אחרי יציאה עם קוד שאינו אפס, הסיבה כוללת את stderr של העוזר, או את stdout שלו כאשר stderr ריק. אחרי זמן קצוב, הסיבה מציינת את מגבלת timeoutMs ולא כוללת דבר מפלט העוזר. הסירוב מכסה הפעלות אינטראקטיביות, claude -p, הפעלות Agent SDK, הפעלות רקע, ואת רוב פקודות המשנה.
הסירוב מכוון, ולכן עוזר שזקוק לעמידות להשבתה צריך לשרת מהמטמון שלו עצמו ולצאת עם 0.
כאשר רענון רקע נכשל, Claude Code שומר את המדיניות המוצלחת האחרונה בתוקף, ו-/status מציג את הרענון הכושל עם הסיבה שלו עד שרענון מצליח. כל רענון רץ תחת אותו timeoutMs ואותם כללי כשל כמו הרצת ההפעלה.
עם --debug, Claude Code כותב את stderr של העוזר מכל הרצה אל יומן הדיבוג.
Claude Code מדווח על ערך policyHelper לא תקין כ-רשומה שהושמטה ומתחיל את ההפעלה על ההגדרות המנוהלות הנותרות בלי להריץ עוזר. ערכים לא תקינים כוללים מחרוזת נתיב חשופה ו-timeoutMs מתחת למינימום שלו.
כדי לכבות עוזר, הסר את המפתח מהמקור שמגדיר אותו.
#policyHelper.path
ציין את קובץ ההפעלה של העוזר ש-Claude Code מריץ. למה שקורה כאשר הנתיב מפר את הכללים שלהלן, ראה כשלים של העוזר.
- היקף:
Managed. נקרא מ-plist של macOS, מרישום HKLM של Windows, או מקובץ ההגדרות המנוהלות, בכל מקום שבו נקראpolicyHelper. - סוג: מחרוזת, נתיב מוחלט בצורה מנורמלת, בלי מקטעי
.או... ב-Windows, נתיב עם אות כונן או נתיב UNC שמסתיים ב-.exe - ברירת מחדל: אין. נדרש כאשר
policyHelperמוגדר
{
"policyHelper": {
"path": "/usr/local/bin/claude-policy"
}
}#policyHelper.timeoutMs
קבע כמה זמן Claude Code ממתין לעוזר לפני שהוא מתייחס להרצה כנכשלת. הרצה שחרגה מהזמן נכשלת באותו אופן כמו יציאה עם קוד שאינו אפס, ולכן בהפעלה Claude Code מסרב להתחיל.
- היקף:
Managed. נקרא מ-plist של macOS, מרישום HKLM של Windows, או מקובץ ההגדרות המנוהלות, בכל מקום שבו נקראpolicyHelper. - סוג: מספר שלם, מילישניות, מינימום
1000 - ברירת מחדל:
10000
{
"policyHelper": {
"path": "/usr/local/bin/claude-policy",
"timeoutMs": 5000
}
}#policyHelper.refreshIntervalMs
גרום ל-Claude Code להריץ מחדש את העוזר ברקע במרווח זמן, כדי ששינויי מדיניות יגיעו להפעלה שרצה. כאשר רענון מצליח, הפלט שלו מחליף את ההגדרות המנוהלות הקודמות בלי הפעלה מחדש. כאשר רענון נכשל, Claude Code שומר את המדיניות שכבר יש לו.
- היקף:
Managed. נקרא מ-plist של macOS, מרישום HKLM של Windows, או מקובץ ההגדרות המנוהלות, בכל מקום שבו נקראpolicyHelper. - סוג: מספר שלם, מילישניות:
0כדי לבטל רענון, אחרת לפחות60000 - ברירת מחדל: לא מוגדר, ולכן Claude Code מריץ את העוזר פעם אחת בהפעלה
הדוגמה הזו מריצה מחדש את העוזר כל חמש דקות:
{
"policyHelper": {
"path": "/usr/local/bin/claude-policy",
"refreshIntervalMs": 300000
}
}#wslInheritsWindowsSettings
גרום ל-Claude Code ב-WSL לקרוא הגדרות מנוהלות משרשרת המדיניות של Windows, כאשר HKLM וקובץ ההגדרות המנוהלות של Windows מקבלים עדיפות על פני /etc/claude-code, ו-HKCU נמצא מתחתיו. כאשר השרשרת פעילה, Claude Code קורא את /etc/claude-code רק כאשר אין מסמך ניהול של Windows בערך הרישום HKLM או בתיקייה C:\Program Files\ClaudeCode\. הגדר אותו כדי להרחיב את המדיניות שאתה כבר פורס ב-Windows להפעלות WSL באותה מכונה, כך שהן יפעלו לפי אותם כללים כמו הפעלות המארח. Claude Code מכבד אותו רק כאשר הוא מוגדר במפתח הרישום HKLM או בקובץ הגדרות מנוהלות או ב-drop-in תחת C:\Program Files\ClaudeCode\, ושניהם דורשים מנהל Windows כדי לכתוב.
- היקף:
Managed. במקור Windows שבשליטת מנהל. - סוג: בוליאני
true: Claude Code ב-WSL קורא הגדרות מנוהלות משרשרת המדיניות של Windows, וקורא את/etc/claude-codeרק כאשר אין מסמך ניהול של Windowsfalse: WSL קורא רק את/etc/claude-code
- ברירת מחדל:
false, ולכן WSL קורא רק את/etc/claude-code
{
"wslInheritsWindowsSettings": true
}אחרי שמקור מנהל מפעיל את השרשרת, מדיניות HKCU מצטרפת אליה ב-WSL רק כאשר גם HKCU מגדיר את המפתח ל-true. העותק הזה לא מפעיל את השרשרת בעצמו. מקור Windows שמכיל רק את המפתח הזה, מוגדר ל-true או ל-false, לא נחשב כמקור מדיניות, ולכן מקור בעדיפות נמוכה יותר עדיין מספק את המדיניות. למפתח הזה אין השפעה על Windows מקורי.
Claude Code קורא true ו-false עם או בלי מירכאות וקורא null כהסרת המפתח. מקור Windows שבשליטת מנהל שמחזיק כל ערך אחר נחשב כ-מסמך ניהול נוכח עם השרשרת מופעלת: /etc/claude-code ו-HKCU לא חלים, ואזהרת הפעלה מציינת את המפתח. ערך HKLM או קובץ בתיקיית Windows שקיים אבל לא ניתן לקריאה גם מונע מ-/etc/claude-code לחול בכל מצב של השרשרת. נדרש Claude Code v2.1.282 או מאוחר יותר.
#הגדרות תצורה גלובליות
שמור את המפתחות האלה ב-~/.claude.json, לא בקובץ הגדרות. Claude Code מתעלם מהם בכל מקום אחר. Claude Code ו-/config כותבים את רובם בשבילך, ואפשר גם לערוך אותם ידנית.
#autoConnectIde
התחבר ל-IDE שרץ באופן אוטומטי כשאתה מפעיל את Claude Code ממסוף חיצוני. מופיע ב-/config בתור Auto-connect to IDE (external terminal) כשאתה מריץ את Claude Code מחוץ למסוף של VS Code או JetBrains.
- היקף:
תצורה גלובלית - סוג: בוליאני
true: Claude Code מתחבר ל-IDE שרץ באופן אוטומטי כשאתה מפעיל אותו ממסוף חיצוניfalse: Claude Code לא מתחבר אוטומטית ממסוף חיצוני. בתוך מסוף של VS Code או JetBrains, או עם--ide, הוא עדיין מתחבר
- ברירת מחדל:
false - עקיפות לכל הפעלה:
CLAUDE_CODE_AUTO_CONNECT_IDEגובר על המפתח הזה להפעלה אחת, בשני הכיוונים
{
"autoConnectIde": true
}Claude Code מתעלם מהמפתח הזה ב-settings.json.
#autoInstallIdeExtension
אפשר ל-/ide להתקין את תוסף ה-IDE של Claude Code ב-VS Code, Cursor או Devin Desktop שרצים, כשאתה מריץ את הפקודה ממסוף חיצוני. Claude Code לא מתקין את התוסף כשאתה מפעיל אותו. מופיע ב-/config בתור Auto-install IDE extension כשאתה מריץ את Claude Code בתוך מסוף של VS Code או JetBrains.
- היקף:
תצורה גלובלית - סוג: בוליאני
true:/ideמתקין את התוסףfalse:/ideלא מתקין את התוסף
- ברירת מחדל:
true - עקיפות לכל הפעלה:
CLAUDE_CODE_IDE_SKIP_AUTO_INSTALLשמוגדר ל-1מדלג על ההתקנה להפעלה אחת גם כשהמפתח הזה הואtrue
{
"autoInstallIdeExtension": false
}Claude Code מתעלם מהמפתח הזה ב-settings.json.
#claudeInChromeDefaultEnabled
התחל כל הפעלת CLI אינטראקטיבית עם שילוב Chrome פעיל, בלי להעביר --chrome בכל פעם. אם אתה מריץ את claude remote-control, הפעלה שהוא מתחיל עבור אחד משרשורי הפרויקט שלך עוקבת אחרי המפתח הזה גם כן, למעט במצב bypassPermissions. עם Claude Code v2.1.287 או מאוחר יותר, המפתח הזה חל גם על הפעלות בתוסף VS Code: ראה הפעלת Chrome כברירת מחדל.
הרצת /chrome ובחירה ב-Enabled by default מגדירה את המפתח הזה בשבילך, וכך גם מענה על תיבת הדו-שיח "Claude in Chrome extension detected". מופיע ב-/config בתור Claude in Chrome enabled by default.
- היקף:
תצורה גלובלית - סוג: בוליאני
true: Claude Code מפעיל את שילוב Chrome כשהפעלת CLI אינטראקטיבית מתחילה, כמו כשאתה מעביר--chrome. בתוסף VS Code, הפעלות מתחברות לדפדפן כשהן מתחילותfalse: הפעלות CLI אינטראקטיביות מתחילות עם שילוב Chrome כבוי, ו-Claude Code מפסיק להציע להגדיר אותו. העבר--chromeכדי להפעיל אותו להפעלה אינטראקטיבית אחת. בתוסף VS Code, הפעלה מתחברת כשאתה מקליד@browser, כמו כשהמפתח לא מוגדר
- ברירת מחדל: לא מוגדר, כך ששילוב Chrome כבוי ו-Claude Code עדיין יכול להציע להגדיר אותו
- עקיפות לכל הפעלה:
--chromeו---no-chromeגוברים על המפתח הזה להפעלה אינטראקטיבית אחת
{
"claudeInChromeDefaultEnabled": true
}Claude Code מתעלם מהמפתח הזה ב-settings.json.
#copyFullResponse
גרום ל-/copy להעתיק את התשובה המלאה בכל פעם, בלי להציג את הבורר. בחירה ב-Always copy full response בבורר הזה מגדירה את המפתח הזה ל-true. מופיע ב-/config בתור Skip the /copy picker.
- היקף:
תצורה גלובלית - סוג: בוליאני
true:/copyמעתיק את התשובה המלאה בלי להציג את הבוררfalse: כשהתשובה מכילה בלוקי קוד או ציטוטי בלוק,/copyמציג בורר שבו אתה בוחר בלוק אחד או את התשובה המלאה
- ברירת מחדל:
false
{
"copyFullResponse": true
}Claude Code מתעלם מהמפתח הזה ב-settings.json.
#copyOnSelect
העתק טקסט ללוח באופן אוטומטי כשאתה מסיים לבחור אותו עם העכבר בעיבוד במסך מלא או בתצוגת סוכן. מופיע ב-/config בתור Copy on select בזמן שעיבוד במסך מלא פועל.
- היקף:
תצורה גלובלית - סוג: בוליאני
true: Claude Code מעתיק טקסט ללוח כשאתה מסיים לבחור אותוfalse: בחירת טקסט משאירה את הלוח ללא שינוי, ואתה מעתיק את הבחירה בקיצור מקלדת במקום
- ברירת מחדל:
true
{
"copyOnSelect": false
}Claude Code מתעלם מהמפתח הזה ב-settings.json.
#defaultToAgentsView
פתח את תצוגת הסוכן במקום שיחה חדשה כשאתה מריץ את claude בלי ארגומנטים. מופיע ב-/config בתור Open agents view by default אלא אם תצוגת הסוכן כבויה.
- היקף:
תצורה גלובלית - סוג: בוליאני
true:claudeבלי ארגומנטים פותח את תצוגת הסוכן, אלא אם תצוגת הסוכן כבויהfalse:claudeבלי ארגומנטים מתחיל שיחה חדשה
- ברירת מחדל:
false
{
"defaultToAgentsView": true
}Claude Code מתעלם מהמפתח הזה ב-settings.json.
#diffTool
בחר איפה Claude Code מציג את ה-diff של שינוי Edit או Write שהוא מציע כש-IDE של VS Code או JetBrains מחובר: "auto" פותח אותו בצופה ה-diff של ה-IDE, "terminal" משאיר אותו במסוף. מופיע ב-/config בתור Diff tool רק בזמן ש-Claude Code מחובר ל-IDE של VS Code או JetBrains.
- היקף:
תצורה גלובלית - סוג: מחרוזת, אחד מאלה:
"auto": Claude Code פותח את ה-diff בצופה ה-diff של ה-IDE כש-IDE של VS Code או JetBrains מחובר"terminal": Claude Code משאיר את ה-diff במסוף
- ברירת מחדל:
"auto"
{
"diffTool": "terminal"
}Claude Code מתעלם מהמפתח הזה ב-settings.json.
#externalEditorContext
כשאתה לוחץ על Ctrl+G, Claude Code פותח את ההנחיה שאתה מקליד בעורך החיצוני שלך. כשהמפתח הזה פעיל, חוצץ העורך מתחיל עם התשובה הקודמת של Claude כשורות הערה #, כך שאתה יכול לקרוא אותה בזמן שאתה כותב, ו-Claude Code מסיר את השורות האלה כשאתה שומר. מופיע ב-/config בתור Show last response in external editor.
- היקף:
תצורה גלובלית - סוג: בוליאני
true: חוצץ העורך מתחיל עם התשובה הקודמת של Claude כשורות הערה#, ש-Claude Code מסיר כשאתה שומרfalse: חוצץ העורך נפתח רק עם ההנחיה שלך
- ברירת מחדל:
false
{
"externalEditorContext": true
}כשהוא פעיל, החוצץ ש-Claude Code פותח נראה כך, ורק הטקסט מתחת לשורת הסימון נשלח כהנחיה שלך:
# ─── Claude's last response (for reference; removed on save) ───
# I added the retry loop to fetchUser in src/api.ts and a test
# for the timeout case. Want me to wire the same retry into
# fetchOrders?
# ─── Write your reply below this line ──────────────────────────
Yes, and cap it at three attempts.Claude Code שומר את 50 השורות האחרונות של התשובה ומסמן את החיתוך ב-# … (earlier output truncated).
Claude Code מתעלם מהמפתח הזה ב-settings.json.
#leftArrowOpensAgents
לחץ על ← בהנחיה ריקה כדי להעביר את ההפעלה לרקע ולפתוח את תצוגת הסוכן. הגדר את המפתח הזה ל-false כדי לכבות את קיצור הדרך. מופיע ב-/config בתור ← opens agents כשתצוגת הסוכן זמינה.
- היקף:
תצורה גלובלית - סוג: בוליאני
true: לחיצה על←בהנחיה ריקה בהפעלה שהתחלת במסוף מעבירה אותה לרקע ופותחת את תצוגת הסוכןfalse: Claude Code מכבה את קיצור הדרך. בהפעלה שהתחברת אליה מתצוגת הסוכן,←בהנחיה ריקה עדיין מנתק
- ברירת מחדל:
true
{
"leftArrowOpensAgents": false
}Claude Code מתעלם מהמפתח הזה ב-settings.json.
#permissionExplainerEnabled
[!WARNING]
הוסר ב-v2.1.257, יחד עם הסבר הפקודה ב-
Ctrl+Eבהנחיות הרשאה של Bash ו-PowerShell. להגדרתו אין השפעה בגרסאות הנוכחיות.
עד v2.1.256, יכולת ללחוץ על Ctrl+E בהנחיית הרשאה של Bash או PowerShell כדי לראות הסבר שנוצר על ידי מודל של הפקודה, ולהגדיר את המפתח הזה ל-false כדי לכבות את קיצור הדרך.
- היקף:
תצורה גלובלית. ב-v2.1.256 ומוקדם יותר. - סוג: בוליאני
- ברירת מחדל:
true
#prStatusFooterEnabled
הצג תג בכותרת התחתונה של ההנחיה עבור בקשת המשיכה או בקשת המיזוג הפתוחה של הענף הנוכחי, עם קו תחתון צבעוני שמראה את הסטטוס שלה. מופיע ב-/config בתור Show PR status footer.
- היקף:
תצורה גלובלית - סוג: בוליאני
true: הכותרת התחתונה מציגה את התג בתנאים שבסטטוס סקירת PRfalse: Claude Code מדלג על בדיקת בקשת המשיכה ובקשת המיזוג של הכותרת התחתונה ולא מציג את התג הזה. הפעלה שהתחברת אליה מתצוגת הסוכן עדיין יכולה להציג קישור פשוט לבקשת משיכה שמקושרת אליה
- ברירת מחדל:
true
{
"prStatusFooterEnabled": false
}Claude Code מתעלם מהמפתח הזה ב-settings.json.
#teammateDefaultModel
[!WARNING]
הוסר ב-v2.1.234, יחד עם שורת ה-
/configשלו Default teammate model. להגדרתו אין השפעה בגרסאות הנוכחיות.
עד v2.1.233, הגדרת את המפתח הזה למודל עבור חברי צוות סוכנים שההנחיה שלך לא ציינה עבורם מודל: כינוי כמו "sonnet", או null כדי לעקוב אחרי המודל של ה-lead. לגבי המודל ש-Claude Code בוחר עבור חברים כאלה עכשיו, ראה ציון חברי צוות ומודלים.
- היקף:
תצורה גלובלית. ב-v2.1.233 ומוקדם יותר. - סוג: מחרוזת, כינוי מודל או מזהה מודל מלא, או
null - ברירת מחדל: לא מוגדר
#ראה גם
- הגדרת הרשאות: תחביר כללים, מצבי הרשאה, ואמון בסביבת העבודה
- משתני סביבה: כל משתנה
CLAUDE_*,ANTHROPIC_*ומשתנה ספק ש-Claude Code קורא - כלים הזמינים ל-Claude: הכלים המובנים ואילו מהם דורשים אישור
- קבצי הגדרות לדוגמה: קובץ אישי, קובץ צוות, וקובץ מנוהל של ארגון
- הגדרת הגדרות מנוהלות: איך ארגונים מחליטים מה לאכוף
- פריסת הגדרות מנוהלות: מנגנוני אספקה, קדימות בתוך השכבה המנוהלת, ורשומות לא תקינות בהגדרות מנוהלות
- ניפוי באגים בתצורה שלך:
claude doctorותיבת הדו-שיח Settings Error