返回 CodeWhale
en.json
根目录 / crates / tui / locales / en.json
1 {
2 "ComposerPlaceholder": "Write a task or use /.",
3 "ComposerDispatchFailedRestored": "Message not sent ({error}); restored to composer.",
4 "DispatchFailedQueued": "Dispatch failed ({error}); kept {count} queued follow-up(s).",
5 "DispatchFailedInitial": "Initial prompt could not be sent: {error}",
6 "HistorySearchPlaceholder": "Search prompt history...",
7 "HistorySearchTitle": "History Search",
8 "HistoryHintMove": "Up/Down move",
9 "HistoryHintAccept": "Enter accept",
10 "HistoryHintRestore": "Esc restore",
11 "HistoryNoMatches": " No matches",
12 "StatusPickerTitle": " Status line ",
13 "StatusPickerInstruction": "Pick the chips you want in the footer:",
14 "StatusPickerActionToggle": "toggle ",
15 "StatusPickerActionAll": "all ",
16 "StatusPickerActionNone": "none ",
17 "StatusPickerActionSave": "save ",
18 "StatusPickerActionCancel": "cancel ",
19 "HotbarSetupTitle": " Hotbar setup ",
20 "HotbarSetupSourceApp": "app",
21 "HotbarSetupSourceSlash": "slash",
22 "HotbarSetupSourceMcp": "mcp",
23 "HotbarSetupSourceSkill": "skill",
24 "HotbarSetupSourcePlugin": "plugin",
25 "HotbarSetupStatusDisabled": "disabled",
26 "HotbarSetupStatusPrefill": "prefill",
27 "HotbarSetupStatusReady": "ready",
28 "HotbarSetupDirtyModified": "modified",
29 "HotbarSetupDirtyClean": "clean",
30 "HotbarSetupNoAction": "No action",
31 "HotbarSetupStatusLine": "slot {slot} | {action} | {dirty}",
32 "HotbarSetupSlotOutOfRange": "Hotbar slot {slot} is outside 1-{max}",
33 "HotbarSetupNoActionSelected": "No action selected.",
34 "HotbarSetupCannotAssign": "{action} cannot be assigned: {reason}",
35 "HotbarSetupNoActions": "No hotbar actions are available.",
36 "HotbarSetupRecommended": "rec",
37 "HotbarSetupEmptySlot": "empty",
38 "HotbarSetupHelp": "Tab/Shift+Tab source Up/Down action 1-8 slot Enter assign Space toggle Delete clear s save Esc cancel",
39 "HotbarActionVoiceToggleName": "Voice input",
40 "HotbarActionVoiceToggleDescription": "Toggle voice capture from the terminal microphone.",
41 "HotbarActionSessionCompactName": "Compact session",
42 "HotbarActionSessionCompactDescription": "Compact the current conversation context.",
43 "HotbarActionModePlanName": "Plan mode",
44 "HotbarActionModePlanDescription": "Think through a plan before acting.",
45 "HotbarActionModeAgentName": "Act mode",
46 "HotbarActionModeAgentDescription": "Do direct work in the current session.",
47 "HotbarActionModeYoloName": "Full Access (Act)",
48 "HotbarActionModeYoloDescription": "Compatibility: Act with Full Access permissions (not a separate mode).",
49 "HotbarActionReasoningCycleName": "Cycle reasoning",
50 "HotbarActionReasoningCycleDescription": "Cycle the configured reasoning effort for the active provider.",
51 "HotbarActionReasoningCycleAutoDisabled": "Reasoning effort is controlled by auto model routing.",
52 "HotbarActionSidebarToggleName": "Toggle sidebar",
53 "HotbarActionSidebarToggleDescription": "Show or hide the sidebar.",
54 "HotbarActionFileTreeToggleName": "Toggle file tree",
55 "HotbarActionFileTreeToggleDescription": "Show or hide the workspace file tree.",
56 "HotbarActionPaletteOpenName": "Command palette",
57 "HotbarActionPaletteOpenDescription": "Open the command palette.",
58 "HotbarActionTrustToggleName": "Toggle trust",
59 "HotbarActionTrustToggleDescription": "Enable or disable workspace trust mode.",
60 "ConfigTitle": "Config",
61 "ConfigModalTitle": " Config ",
62 "ConfigSearchPlaceholder": "type to filter",
63 "ConfigNoSettings": " No settings available.",
64 "ConfigNoMatchesPrefix": " No settings match ",
65 "ConfigFilteredSettings": " Filtered settings",
66 "ConfigShowing": " Showing",
67 "ConfigFooterDefault": " type=filter, Up/Down=select, Enter/e=edit, Esc/q=close ",
68 "ConfigFooterScrollable": " type=filter, Up/Down=select, Enter/e=edit, PgUp/PgDn=scroll, Esc/q=close ",
69 "ConfigFooterFiltered": " type=filter, Backspace=delete, Ctrl+U/Esc=clear, Enter=edit ",
70 "ConfigSectionProvider": "Provider",
71 "ConfigSectionModel": "Model",
72 "ConfigSectionPermissions": "Permissions",
73 "ConfigSectionNetwork": "Network",
74 "ConfigSectionDisplay": "Display",
75 "ConfigSectionComposer": "Composer",
76 "ConfigSectionSidebar": "Sidebar",
77 "ConfigSectionHistory": "History",
78 "ConfigSectionMcp": "MCP",
79 "ConfigSectionFleet": "Fleet",
80 "ConfigSectionWorkflow": "Workflow",
81 "ConfigSectionSession": "Session",
82 "ConfigSectionLegacy": "Legacy",
83 "ConfigSectionExperimental": "Experimental",
84 "ConfigScopeSession": "SESSION",
85 "ConfigScopeSaved": "SAVED",
86 "ConfigEditCancelled": "Edit cancelled",
87 "ConfigEditTitlePrefix": "Edit ",
88 "ConfigEditScopeLabel": "Scope: ",
89 "ConfigEditCurrentLabel": "Current: ",
90 "ConfigEditHintLabel": "Hint: ",
91 "ConfigEditNewLabel": "New: ",
92 "ConfigEditFooter": " Enter=apply, Esc=cancel, Ctrl+U=clear, Ctrl+A=all, ←,/→,=move ",
93 "ConfigLocalePartialBadge": "partial",
94 "ConfigLocalePartialDetail": "Partial translation pack; missing strings fall back to English.",
95 "ConfigRowEffective": " (effective {currency})",
96 "ConfigDefaultValue": "(default)",
97 "ConfigDefaultReasoning": "(config/default)",
98 "ConfigUnavailable": "(unavailable)",
99 "ConfigLabelProvider": "Active provider",
100 "ConfigLabelBaseUrlDeepseek": "Provider API URL (DeepSeek route)",
101 "ConfigLabelProviderUrl": "Provider API URL",
102 "ConfigLabelModel": "Active provider model",
103 "ConfigLabelFastModel": "Fast model (derived)",
104 "ConfigLabelDefaultModel": "Legacy fallback model (DeepSeek routes only)",
105 "ConfigLabelReasoningEffort": "Reasoning level",
106 "ConfigLabelApprovalMode": "This session's permission",
107 "ConfigLabelPermissionPosture": "New sessions' permission",
108 "ConfigLabelApprovalPolicy": "New sessions' permission (config)",
109 "ConfigLabelManagedApprovalPolicy": "New sessions' permission (managed)",
110 "ConfigLabelDefaultMode": "Startup mode",
111 "ConfigLabelAllowShell": "Shell access",
112 "ConfigLabelManagedAllowShell": "Shell access (managed)",
113 "ConfigLabelStreamTimeout": "Stream timeout",
114 "ConfigLabelTheme": "Theme",
115 "ConfigLabelLocale": "Language",
116 "ConfigLabelBackground": "Background",
117 "ConfigLabelOceanTreatment": "Ocean treatment",
118 "ConfigLabelWorkSurfacePlacement": "Sidebar position",
119 "ConfigLabelTopHeight": "Top bar height",
120 "ConfigLabelSideWidth": "Side bar width",
121 "ConfigLabelCalmMode": "Quiet transcript",
122 "ConfigLabelLowMotion": "Reduce motion",
123 "ConfigLabelFancyAnimations": "Live UI motion",
124 "ConfigLabelLaunchScreen": "Launch screen",
125 "ConfigLabelShowThinking": "Model reasoning in chat",
126 "ConfigLabelThinkingHighlight": "Reasoning background highlight",
127 "ConfigLabelShowToolDetails": "Tool detail level",
128 "ConfigLabelInlineDiffs": "Inline file changes",
129 "ConfigLabelStatusIndicator": "Status indicator",
130 "ConfigLabelSynchronizedOutput": "Output pacing",
131 "ConfigLabelCostCurrency": "Cost currency",
132 "ConfigLabelTranscriptSpacing": "Transcript spacing",
133 "ConfigLabelToolCollapse": "Tool cards",
134 "ConfigLabelComposerDensity": "Composer density",
135 "ConfigLabelComposerBorder": "Composer border",
136 "ConfigLabelComposerVimMode": "Composer Vim mode",
137 "ConfigLabelBracketedPaste": "Bracketed paste",
138 "ConfigLabelPasteBurstDetection": "Paste detection",
139 "ConfigLabelMentionMenuLimit": "Mention menu limit",
140 "ConfigLabelMentionMenuBehavior": "Mention menu behavior",
141 "ConfigLabelMentionWalkDepth": "File mention depth",
142 "ConfigLabelWorkspaceFollowSymlinks": "Follow symlinks",
143 "ConfigLabelSidebarWidth": "Sidebar width",
144 "ConfigLabelSidebarFocus": "Sidebar focus",
145 "ConfigLabelContextPanel": "Context panel",
146 "ConfigLabelSessionsRail": "Sessions rail",
147 "ConfigLabelSessionAutoResume": "Auto-resume last session",
148 "ConfigLabelAutoCompact": "Auto compact",
149 "ConfigLabelAutoCompactThreshold": "Compact threshold",
150 "ConfigLabelMaxHistory": "Input history",
151 "ConfigLabelMcpConfigPath": "MCP config path",
152 "ConfigLabelFleetSpawnDepth": "Fleet recursion depth",
153 "ConfigLabelGoalCommand": "Goal command",
154 "ConfigLabelWorkflow": "Workflow",
155 "ConfigLabelFeaturePrefix": "Feature: {name}",
156 "ConfigColumnSetting": "Setting",
157 "ConfigColumnValue": "Value",
158 "ConfigColumnScope": "Scope",
159 "ConfigActionOpenProvider": "Enter opens provider picker",
160 "ConfigActionOpenModel": "Enter opens model picker",
161 "ConfigActionToggle": "Enter/Space toggles",
162 "ConfigActionChoose": "Enter opens choices",
163 "ConfigActionEdit": "Enter edits",
164 "ConfigActionReadOnly": "read only",
165 "ModelPickerAutoNetworkHint": "per turn · runnable providers · request + recent context → DeepSeek / deepseek-v4-flash",
166 "ModelPickerAutoNetworkActiveProviderHint": "per turn · active provider only · request + recent context → {provider} / {model}",
167 "ModelPickerAutoLocalHint": "per turn · local heuristic · no router request",
168 "ModelPickerAutoLastRoute": "last {provider} · {model}",
169 "AutoRouteSelectedToast": "Auto: {provider} / {model} via {source} · Ctrl+O: route details",
170 "HelpTitle": "Help",
171 "HelpFilterPlaceholder": "Type to filter",
172 "HelpFilterPrefix": "Filter: ",
173 "HelpNoMatches": " No matches.",
174 "HelpSlashCommands": "Slash commands",
175 "HelpKeybindings": "Keybindings",
176 "HelpUserCommands": "User commands",
177 "HelpSkills": "Skills",
178 "HelpFooterTypeFilter": " type to filter ",
179 "HelpFooterMove": " Up/Down move ",
180 "HelpFooterJump": " PgUp/PgDn jump ",
181 "HelpFooterClose": " Esc close ",
182 "CmdAnchorDescription": "Pin a fact that survives compaction (auto-injected into context)",
183 "CmdAttachDescription": "Attach image/video media; use @path for text files or directories",
184 "CmdCacheDescription": "Show prefix-cache hit/miss stats for the last N turns",
185 "CmdPreviewRequestDescription": "Preview the next request as a redacted manifest without sending it",
186 "CmdToolsDescription": "Inspect a bounded projection of the latest prepared tool request (read-only)",
187 "CmdEffortDescription": "Set the model's reasoning effort level (also /thinking)",
188 "CmdChangeDescription": "Show the latest changelog entry",
189 "CmdChangeHeader": "Latest Changelog",
190 "CmdChangeTranslationQueued": "English release notes are shown below. A translated version will be requested next; if the provider is unavailable, this English text is the fallback.",
191 "CmdChangeTranslationUnavailable": "English release notes are shown below. Translation is unavailable because the current session has no API key or is offline.",
192 "CmdChangePreviousVersion": "Previous version: {version} — run `/change {version}` to view it",
193 "CmdBalanceDescription": "Check the active provider account balance",
194 "CmdClearDescription": "Clear conversation history",
195 "CmdCompactDescription": "Trigger context compaction to free up space",
196 "CmdPurgeDescription": "Let the agent surgically prune conversation history to free context space",
197 "CmdConfigDescription": "Inspect and change settings (raw keys as advanced detail)",
198 "CmdPermissionsDescription": "List and safely remove permission rules",
199 "PermissionsListHeader": "Permission rules\nSource: active user permissions.toml\nPath: {path}\nFile status: {file_state}\nRule count: {count}",
200 "PermissionsNoRules": "No permission rules configured.",
201 "PermissionsFileMissing": "missing",
202 "PermissionsFileEmpty": "empty",
203 "PermissionsFilePresent": "present",
204 "PermissionsRuleEntry": "#{index} | {action} | {tool}\n Effective match: {matcher}\n Scope: {scope} — {applicability}",
205 "PermissionsMatchExactCommand": "exact command `{command}`",
206 "PermissionsMatchCommandPrefix": "command prefix `{command}` (argument-aware)",
207 "PermissionsMatchExactPath": "exact normalized path `{path}`",
208 "PermissionsMatchAnyInvocation": "any invocation of this tool",
209 "PermissionsScopeGlobal": "global",
210 "PermissionsScopeRepo": "repo `{workspace}`",
211 "PermissionsAppliesHere": "active in this workspace",
212 "PermissionsInactiveHere": "not active in this workspace",
213 "PermissionsRemovePreview": "Review removal of rule #{index}:\n{rule}\n\nRun `{command}` to confirm. This command expires if permissions.toml changes.",
214 "PermissionsRemoved": "Removed permission rule #{index}: {action} {tool}.",
215 "PermissionsUsage": "Usage: /permissions [list|remove <rule-number> [--confirm <token>]]",
216 "PermissionsRuleNotFound": "Permission rule #{index} was not found; run `/permissions list` again.",
217 "PermissionsOperationFailed": "Permission rule operation failed: {error}",
218 "CmdConstitutionDescription": "Manage standing constitution law and previews",
219 "CmdContextDescription": "Open context inspector or source-map report",
220 "CmdCostDescription": "Show session cost breakdown",
221 "CmdDiffDescription": "Show file changes since session start",
222 "CmdEditDescription": "Revise and resubmit the last message",
223 "CmdExitDescription": "Exit the application",
224 "CmdExportDescription": "Copy a safe conversation export, or write it to an explicit file",
225 "CmdFeedbackDescription": "Generate a GitHub feedback URL",
226 "CmdHfDescription": "Inspect Hugging Face MCP setup and concepts",
227 "CmdHelpDescription": "Understand concepts, commands, and keybindings",
228 "CmdProfileDescription": "Switch to a named config profile",
229 "CmdHomeDescription": "Show home dashboard with stats and quick actions",
230 "CmdHooksDescription": "List configured lifecycle hooks (read-only)",
231 "CmdAgentDescription": "Open a persistent sub-agent session",
232 "CmdGoalDescription": "Set a session goal with optional token budget",
233 "CmdInitDescription": "Generate AGENTS.md for project",
234 "CmdLspDescription": "Toggle LSP diagnostics on or off",
235 "CmdShareDescription": "Export current session as a shareable web URL",
236 "CmdJobsDescription": "Inspect and control background Bash jobs",
237 "CmdLinksDescription": "Show Codewhale, community, and provider links",
238 "CmdLoadDescription": "Load session from file",
239 "CmdLogoutDescription": "Clear API key and return to setup",
240 "CmdMcpDescription": "Open or manage MCP servers",
241 "CmdPluginDescription": "Inspect and manage trusted plugin bundles; legacy executable tools stay separate",
242 "CmdPluginBundleUsage": "Usage: /plugin [list|show <name>|validate [name]|install <spec>|update <name>|uninstall <name>|trust <name> [review-token]|enable <name>|disable <name>|revoke <name>|reload|tools [name]]",
243 "CmdPluginBundleNoneFound": "No Codewhale plugin bundles discovered.",
244 "CmdPluginBundleListHeader": "Plugin bundles ({count}):",
245 "CmdPluginLegacyListHeader": "Legacy executable plugin tools ({count}) in {dir}:",
246 "CmdPluginBundleNotFound": "Plugin bundle '{name}' not found",
247 "CmdPluginBundleReloaded": "Reloaded {count} plugin bundles for {workspace}.",
248 "CmdPluginBundleDetail": "{name}\n========================================\nID: {id}\nVersion: {version}\nSource: {origin} ({scope})\nState: {state}\nTrust: {trust}\nComponents: {inventory}\nRequested permissions: {permissions}\nMCP servers: {mcp}\nUnsupported/inactive: {unsupported}\nContent hash: {content_hash}\nCapability hash: {capability_hash}\nPath: {path}",
249 "CmdPluginBundleDiagnosticsHeader": "Plugin diagnostics ({count}):",
250 "CmdPluginBundleMutationSuccess": "Plugin bundle '{name}': {action}.",
251 "CmdPluginActionFailed": "Plugin action failed: {error}",
252 "CmdPluginNoneFound": "No legacy executable plugin tools discovered in {dir}",
253 "CmdPluginNotFound": "Plugin '{name}' not found",
254 "CmdPluginListHeader": "Legacy executable plugin tools ({count}):",
255 "CmdPluginDetailDescription": "Description: {description}",
256 "CmdPluginDetailSchema": "Schema:\n{schema}",
257 "CmdPluginDetailApproval": "Approval: {approval}",
258 "CmdPluginDetailPath": "Path: {path}",
259 "CmdMemoryDescription": "Inspect or manage the persistent user-memory file",
260 "CmdModeDescription": "Switch posture or open the mode picker",
261 "CmdModelDescription": "Switch or view current model",
262 "CmdModelsDescription": "Fetch live model IDs from the active API",
263 "CmdModelDbDescription": "Browse the bundled model database",
264 "CmdNetworkDescription": "Manage network allow and deny rules",
265 "CmdNoteDescription": "Add, list, edit, or remove workspace notes",
266 "CmdThemeDescription": "Switch theme or open the theme picker",
267 "CmdProviderDescription": "Switch the active provider and/or model",
268 "CmdAuthDescription": "Manage provider authentication flows",
269 "CmdQueueDescription": "View or edit queued messages",
270 "CmdQueueUsage": "Usage: /queue [list|send <n>|edit <n>|drop <n>|clear]",
271 "CmdQueueDraftHeader": "Editing queued message:",
272 "CmdQueueNoMessages": "No queued messages",
273 "CmdQueueListHeader": "Queued messages ({count}):",
274 "CmdQueueTip": "Tip: /queue send <n> to send now, /queue drop <n> to remove",
275 "CmdQueueAlreadyEditing": "Already editing a queued message. Send it or /queue clear to discard.",
276 "CmdQueueNotFound": "Queued message not found",
277 "CmdQueueEditingStatus": "Editing queued message {index}",
278 "CmdQueueEditingMessage": "Editing queued message {index} (press Enter to re-queue/send)",
279 "CmdQueueDropped": "Dropped queued message {index}",
280 "CmdQueueAlreadyEmpty": "Queue already empty",
281 "CmdQueueCleared": "Queue cleared",
282 "CmdQueueMissingIndex": "Missing index. Usage: /queue edit <n> or /queue drop <n>",
283 "CmdQueueIndexPositive": "Index must be a positive number",
284 "CmdQueueIndexMin": "Index must be >= 1",
285 "CmdRelayDescription": "Create a session relay (接力) for a fresh thread",
286 "CmdRemoteControlDescription": "Resume this exact session from your Codewhale web account",
287 "CmdRenameDescription": "Rename the current session",
288 "CmdRestoreDescription": "Roll back the workspace to a prior pre/post-turn snapshot. With no arg, lists recent snapshots.",
289 "CmdRetryDescription": "Retry the last request",
290 "CmdReviewDescription": "Run a structured code review on a file, diff, or PR",
291 "CmdRlmDescription": "Open a persistent RLM context for a file or text",
292 "CmdSaveDescription": "Save session to file",
293 "CmdForkDescription": "Fork the active conversation into a sibling session",
294 "CmdNewDescription": "Start a fresh saved session",
295 "CmdSessionsDescription": "Open session history picker",
296 "CmdSettingsDescription": "Open the typed settings editor",
297 "CmdSidebarDescription": "Place the rail (top/left/right/off) or pick its panel",
298 "CmdSkillDescription": "Activate a skill, or install/update/uninstall/trust a community skill",
299 "CmdSkillsDescription": "List local skills, filter by prefix, or browse the curated remote registry",
300 "CmdStashDescription": "Park or restore a composer draft",
301 "CmdStatusDescription": "Show runtime session status",
302 "CmdStatuslineDescription": "Configure which items appear in the footer",
303 "CmdStructcopyDescription": "Copy one bounded session object as redacted canonical JSON (human-only, never a model tool)",
304 "CmdStructcopyKindTurn": "turn",
305 "CmdStructcopyKindTool": "tool call",
306 "CmdStructcopyKindPlan": "Plan",
307 "CmdStructcopyKindWorkflow": "Workflow run",
308 "CmdStructcopyUsageError": "Invalid structural-copy request. Usage: {usage}",
309 "CmdStructcopyUnavailable": "The selected {kind} is unavailable; nothing was copied",
310 "CmdStructcopyBusy": "The {kind} state is busy; try again",
311 "CmdStructcopyPrepareFailed": "Could not prepare the selected {kind}: {error}",
312 "CmdStructcopyClipboardQueued": "Structural copy ({kind}, {bytes} bytes) was queued for the terminal-client clipboard via tmux/OSC 52; delivery depends on terminal support and is not confirmed",
313 "CmdStructcopyClipboardAccepted": "Structural copy ({kind}, {bytes} bytes) was handed to the clipboard; if no native clipboard was reachable, a terminal write was queued instead",
314 "CmdStructcopyClipboardFailed": "Clipboard copy failed: {error}. Nothing was written; run again with `stdout` for an explicit text view",
315 "CmdStructcopyReceiptTooLarge": "Structural-copy receipt metadata exceeds the {bytes}-byte output cap; refusing to emit it",
316 "CmdFleetDescription": "Inspect and set up Fleet workers and orchestration state",
317 "CmdLaneDescription": "Inspect and control durable Lanes (running Workflows)",
318 "CmdWorkflowDescription": "Orchestrate the current work as a workflow",
319 "CmdHotbarDescription": "Open Hotbar setup",
320 "CmdSetupDescription": "Open constitution-first setup",
321 "CmdSubagentsDescription": "Compatibility shortcut for Fleet status",
322 "CmdAdvisorDescription": "Toggle background advisor watcher on/off for this session",
323 "CmdSystemDescription": "Show current system prompt",
324 "CmdTaskDescription": "Manage background tasks",
325 "CmdTokensDescription": "Show token usage for session",
326 "CmdTranslateDescription": "Toggle output translation to the current system language on/off",
327 "CmdTranslateOff": "Output translation disabled (original model output shown)",
328 "CmdTranslateOn": "Output translation enabled: model responses will be shown in your system language",
329 "TranslationInProgress": "Translating assistant output...",
330 "TranslationComplete": "Translation complete",
331 "TranslationFailed": "Translation failed",
332 "CmdTrustDescription": "Manage workspace trust and the per-path allowlist",
333 "CmdWorkspaceDescription": "Show or switch the current workspace",
334 "CmdUndoDescription": "Remove last message pair",
335 "CmdVerboseDescription": "Toggle full live thinking in the transcript",
336 "CmdCacheAdvice": "Hit/miss ratios over ~70% after the third turn indicate a stable cache prefix; \n lower than that on long sessions suggests prefix churn worth investigating (#263).",
337 "CmdCacheFootnote": "* miss inferred from input − hit when the provider did not report it explicitly.\n",
338 "CmdCacheHeader": "Cache telemetry — last {count} of {total} turn(s) (model: {model})\n",
339 "CmdCacheNoData": "Cache history: no turns recorded yet.\n\nSupported providers report `prompt_cache_hit_tokens` / `prompt_cache_miss_tokens` on API turns. Run a turn and try /cache again.",
340 "CmdCacheTotals": "Σ in: {sum_in} Σ hit: {sum_hit} Σ miss: {sum_miss} avg hit ratio: {avg}\n",
341 "CmdCostReport": "Session Cost:\n ─────────────────────────────\n Estimated total: {cost}\n\n Based on audited provider-reported usage and published rates.",
342 "CmdCostReportSubtotal": "Session Cost:\n ─────────────────────────────\n Priced subtotal: {cost}\n\n One or more money-metered turns are not included; see coverage below.",
343 "CmdCostReportUnknown": "Session Cost:\n ─────────────────────────────\n Estimated total: unknown\n\n No turn has an authoritative price in the selected currency.",
344 "CmdCostUnknownValue": "unknown",
345 "CmdCostEstimateOnly": "This is an estimate, not a bill: it is computed locally from provider-reported token usage and published rates, and can differ from your invoice.",
346 "CmdCostCoverage": "Covered: {priced} of {turns} money-metered turn(s) priced.",
347 "CmdCostUnpricedTurns": "Excluded: {unpriced} money-metered turn(s) had no authoritative price ({reasons}); their spend is missing from the total above.",
348 "CmdCostUnpricedClasses": "Unpriced token class(es) seen this session: {classes}. Turns using them fail closed instead of under-reporting.",
349 "CmdCostCoverageUnknownLegacy": "Coverage: unknown. This session was saved before per-turn pricing coverage was recorded, so how much of the total above is accounted for cannot be established.",
350 "CmdCostPricingProvenance": "Pricing sources used: {sources}.",
351 "CmdCostLivePricingDowngraded": "Live provider pricing could not be verified for this route ({defects}); the bundled published rates were used instead.",
352 "CmdCostLivePricingUnavailable": "Live provider pricing could not be verified for this route ({defects}), and no usable bundled rate was available; this spend is unknown.",
353 "CmdCostRoutesHeader": "Audited routes (redacted):",
354 "CmdTokensCacheBoth": "{hit} hit / {miss} miss",
355 "CmdTokensCacheHitOnly": "{hit} hit / miss not reported",
356 "CmdTokensCacheMissOnly": "hit not reported / {miss} miss",
357 "CmdTokensCacheWriteTotal": "Cache-write (cache-creation) tokens this session: {write}. Billed above the input rate where the provider publishes a write premium; see /cache for the per-turn breakdown.",
358 "CmdTokensContextUnknownWindow": "~{estimated} / unknown window",
359 "CmdTokensContextWithWindow": "~{used} / {window} ({percent}%)",
360 "FooterAgentSingular": "1 agent",
361 "FooterAgentsPlural": "{count} agents",
362 "HeaderAgentsChip": "agents {count}",
363 "FooterPressCtrlCAgain": "Press Ctrl+C again to quit",
364 "FooterWorking": "working",
365 "FooterBalancePrefix": "balance",
366 "HelpSectionActions": "Actions",
367 "HelpSectionClipboard": "Clipboard",
368 "HelpSectionEditing": "Input editing",
369 "HelpSectionHelp": "Help",
370 "HelpSectionModes": "Modes",
371 "HelpSectionNavigation": "Navigation",
372 "HelpSectionSessions": "Sessions",
373 "CmdTokensNotReported": "not reported",
374 "CmdTokensReport": "Token Usage:\n ─────────────────────────────\n Active context: {active}\n Last API input: {input} (turn telemetry; may count repeated prefix across tool rounds)\n Last API output: {output}\n Cache hit/miss: {cache} (telemetry/cost only)\n Cumulative tokens: {total} (session usage telemetry)\n Priced amount: {cost}\n API messages: {api_messages}\n Chat messages: {chat_messages}\n Model: {model}",
375 "KbScrollTranscript": "Scroll transcript, navigate input history, or select composer attachments",
376 "KbNavigateHistory": "Navigate input history",
377 "KbBrowseHistory": "Browse conversation history",
378 "KbScrollTranscriptAlt": "Scroll transcript",
379 "KbScrollPage": "Scroll transcript by page",
380 "KbJumpTopBottom": "Jump to top / bottom of transcript",
381 "KbJumpTopBottomEmpty": "Jump to top / bottom (when input is empty)",
382 "KbJumpToolBlocks": "Jump between tool output blocks",
383 "KbMoveCursor": "Move cursor in composer",
384 "KbJumpLineStartEnd": "Jump to start / end of line",
385 "KbDeleteChar": "Delete character before / after the cursor, or remove selected attachment",
386 "KbDeleteWord": "Delete the previous word",
387 "KbYank": "Yank from the kill buffer; with an empty composer, copy the focused transcript cell",
388 "KbToggleFileTree": "Toggle the file-tree sidebar",
389 "KbSelectText": "Select text; add Ctrl/Alt to select by word",
390 "KbSelectAllDraft": "Select the whole draft",
391 "KbClearDraft": "Clear the current draft",
392 "KbRestoreClearedDraft": "Restore the cleared draft",
393 "KbStashDraft": "Stash the current draft (`/stash pop` to restore)",
394 "KbSearchHistory": "Search prompt history and recover local drafts",
395 "KbInsertNewline": "Insert a newline in the composer",
396 "KbSendDraft": "Send when idle; queue while busy; empty composer sends the next queued follow-up now",
397 "KbSteerCurrentTurn": "Steer the current turn (sends normally while idle)",
398 "KbCloseMenu": "Close menu, cancel request, discard draft, or clear input",
399 "KbCancelOrExit": "Cancel request, or exit when idle",
400 "KbShellControls": "Move the running shell wait to /jobs",
401 "KbExitEmpty": "Exit when input is empty",
402 "KbCommandPalette": "Open the command palette",
403 "KbSettings": "Open the typed settings editor",
404 "KbCancelBackgroundShellJobs": "Cancel all running background shell jobs (Activity sidebar)",
405 "KbFuzzyFilePicker": "Open the fuzzy file picker (insert @path on Enter)",
406 "KbCompactInspector": "Open compact session context inspector",
407 "KbCompactContext": "Compact the conversation context",
408 "KbLastMessagePager": "Open pager for the last message (when input is empty)",
409 "KbSelectedDetails": "Show raw detail for the selected tool or message; Ctrl+Alt+O opens the whole-turn overview",
410 "KbToolDetailsPager": "Show raw detail for the selected item (Alt+V)",
411 "KbExternalEditor": "Open composer draft in external editor",
412 "KbLiveTranscript": "Open live transcript overlay (Ctrl+Shift+T; sticky-tail auto-scroll)",
413 "KbBacktrackMessage": "Backtrack to a previous user message (Left/Right step, Enter to rewind)",
414 "KbCompleteCycleModes": "Complete /command or cycle modes when the composer is empty (Plan → Act → Operate)",
415 "KbCycleThinking": "Cycle reasoning effort for the active provider (Ctrl+T)",
416 "KbCyclePermissions": "Cycle permission posture: Ask → Auto-Review → Full Access (Shift+Tab)",
417 "KbJumpPlanAgentYolo": "Trigger hotbar slots",
418 "KbAltJumpPlanAgentYolo": "Alternative jump to Plan / Act / Operate mode",
419 "KbFocusSidebar": "Focus the Tasks / Agents / Context / Pinned rail panel",
420 "KbSessionPicker": "Open the session picker",
421 "KbTerminalPaste": "Paste text using your local terminal",
422 "KbPasteAttach": "Paste text or attach an image from a local or forwarded graphical clipboard",
423 "KbCopySelection": "Copy the current Codewhale selection",
424 "ClipboardSshPasteHint": "SSH paste uses your local terminal: press Cmd+V on macOS or Ctrl+Shift+V on Linux/Windows.",
425 "KbContextMenu": "Open context actions for paste, selection, message details, context, and help",
426 "KbAttachPath": "Add a local text file or directory to context",
427 "KbHelpOverlay": "Open this help overlay (when input is empty)",
428 "KbToggleHelp": "Toggle help overlay",
429 "KbToggleHelpSlash": "Toggle help overlay",
430 "HelpUsageLabel": "Usage:",
431 "HelpAliasesLabel": "Aliases:",
432 "SettingsTitle": "Settings:",
433 "SettingsConfigFile": "Config file:",
434 "ClearConversation": "Conversation cleared",
435 "ClearConversationBusy": "Nothing cleared (Work state or runtime work busy; wait, then try /clear again)",
436 "ModelChanged": "Model changed: {old} →, {new}",
437 "LinksProjectTitle": "Codewhale & community:",
438 "LinksDocumentation": "Documentation:",
439 "LinksCommunity": "Community & contribution:",
440 "LinksGitHub": "GitHub:",
441 "LinksManagedApp": "Managed app preview:",
442 "LinksManagedAppNote": "The managed app uses a separate sign-in and is not connected to the current local session.",
443 "LinksTitle": "Provider Links:",
444 "LinksDashboard": "Dashboard:",
445 "LinksDocs": "Docs:",
446 "LinksKimiCodeRouteNote": "Kimi Code membership-plan route: `{route}` (plan console: `{console}`; use model k3). Codewhale never imports Kimi CLI credentials.",
447 "LinksTip": "Tip: Use the env var shown for your provider, or save the key with `codewhale auth set --provider <id>`.",
448 "SubagentsFetching": "Fetching Fleet status...",
449 "HelpUnknownCommand": "Unknown command: {topic}",
450 "HomeDashboardTitle": "Codewhale",
451 "HomeModel": "Model:",
452 "HomeMode": "Mode:",
453 "HomeWorkspace": "Workspace:",
454 "HomeHistory": "History:",
455 "HomeTokens": "Tokens:",
456 "HomeQueued": "Queued:",
457 "HomeSubagents": "Fleet workers:",
458 "HomeSkill": "Skill:",
459 "HomeQuickActions": "Quick Actions",
460 "HomeQuickLinks": "/links - Codewhale, community & provider links",
461 "HomeQuickSkills": "/skills - List available skills",
462 "HomeQuickConfig": "/config - Inspect and change settings",
463 "HomeQuickSettings": "/settings - Show persistent settings",
464 "HomeQuickModel": "/model - Switch or view model",
465 "HomeQuickSubagents": "/fleet status - Fleet status",
466 "HomeQuickTaskList": "/task list - Show background task queue",
467 "HomeQuickHelp": "/help - Show help",
468 "HomeModeTips": "Mode Tips",
469 "HomeAgentModeTip": "Act — direct work in the current session with tools",
470 "HomeAgentModeReviewTip": " /mode plan to research and present a plan first",
471 "HomeAgentModeYoloTip": " Shift+Tab cycles permission: Ask → Auto-Review → Full Access",
472 "HomeYoloModeTip": "Act + Full Access — tools run without approval prompts",
473 "HomeYoloModeCaution": " Destructive operations can run immediately; prefer Ask when unsure",
474 "HomePlanModeTip": "Plan — research and design before implementing",
475 "HomePlanModeChecklistTip": " Present a plan and To-do progress, then switch to Act or Operate",
476 "HomeGoalModeTip": "Goal tracking - Set /goal <objective> to pursue objectives",
477 "OnboardLanguageTitle": "Choose your language",
478 "OnboardLanguageBlurb": "Pick the UI language. You can change it any time with `/settings set locale <tag>`.",
479 "OnboardLanguageFooter": "Press the key shown next to a language, or Enter to keep the current setting",
480 "OnboardProviderTitle": "Choose your model provider",
481 "OnboardProviderBlurb": "Pick where your model runs. Hosted providers need a key; local runtimes can continue without one.",
482 "OnboardProviderFooter": "Enter opens the provider list · Esc goes back · Ctrl+C quits.",
483 "OnboardApiKeyTitle": "Connect your API key",
484 "OnboardApiKeyStep1": "Step 1. Open your provider credential page and create a key for",
485 "OnboardApiKeyLocalHint": "Local runtimes usually need no pasted key — start the server, then press Enter.",
486 "OnboardApiKeyStep2": "Step 2. If this provider requires a key, paste it below; then press Enter.",
487 "OnboardApiKeySavedHint": "Keys are saved to {path} so they work from any folder.",
488 "OnboardApiKeyFormatHint": "Paste the full key exactly as issued (no spaces or newlines).",
489 "KimiCodePlanApiKeyHint": "For Kimi Code membership plans, create the plan-linked key at {console}.",
490 "KimiCodePlanRouteHint": "This route uses {route} with model k3; it is not Moonshot's public API route.",
491 "KimiCodePlanNoImportHint": "Codewhale does not import Kimi CLI credentials; paste a plan key you created yourself.",
492 "StepfunBillingRouteTitle": "StepFun billing route",
493 "StepfunBillingRouteIntro": "StepFun bills pay-as-you-go and Step Plan subscriptions on separate endpoints. Pick the one your key belongs to.",
494 "StepfunBillingRoutePaygOption": "Pay-as-you-go (token pricing)",
495 "StepfunBillingRoutePlanOption": "Step Plan subscription (plan allowance)",
496 "StepfunPlanApiKeyHint": "For StepFun Step Plan subscriptions, use the key issued for your Step Plan, not a pay-as-you-go key.",
497 "StepfunPlanRouteHint": "This route uses {route} and is billed against your Step Plan allowance.",
498 "OnboardApiKeyPlaceholder": "(paste key here if required)",
499 "OnboardApiKeyLabel": "Key: ",
500 "OnboardApiKeyFooter": "Press Enter to continue, Esc to go back.",
501 "OnboardApiKeyRejectedEnv": "The {provider} API key from {env} was rejected. Paste a valid key to save it to {path}, or update the environment variable.",
502 "OnboardTrustTitle": "Know this workspace",
503 "OnboardTrustQuestion": "Should Codewhale work with the instructions and files in this workspace?",
504 "OnboardTrustLocationPrefix": "Workspace ",
505 "OnboardTrustRiskHint": "Untrusted files can try to redirect the agent through prompt injection.",
506 "OnboardTrustEffectHint": "Trust is recorded for this Codewhale installation and enables workspace tools and hooks.",
507 "OnboardTrustFooterPrefix": "Press ",
508 "OnboardTrustFooterMiddle": " to trust and continue, ",
509 "OnboardTrustFooterUntrustedMiddle": " to continue without trusting, ",
510 "OnboardTrustFooterSuffix": " to quit Codewhale",
511 "OnboardTrustEnterHint": "Press 1 or Y to trust, 2 or U to continue without trusting, or 3, N, or Esc to quit Codewhale.",
512 "OnboardTrustUntrustedNotice": "Continuing without workspace trust — tools and hooks stay restricted.",
513 "OnboardMentalTitle": "How Codewhale works",
514 "OnboardMentalModesLabel": "Modes",
515 "OnboardMentalPlanHint": "read first",
516 "OnboardMentalActHint": "do, with approval",
517 "OnboardMentalOperateHint": "conduct a fleet",
518 "OnboardMentalPermissionLabel": "Permission",
519 "OnboardMentalCurrentLabel": "Right now",
520 "OnboardMentalConstitution": "The constitution you ratify next governs all of them.",
521 "OnboardMentalCycleMode": "cycle mode",
522 "OnboardMentalCyclePermission": "cycle permissions",
523 "OnboardMentalContinue": "continue",
524 "OnboardMentalBack": "back",
525 "OnboardAppearanceTitle": "Make It Yours",
526 "OnboardAppearanceBlurb": "Pick how Codewhale looks. The preview is live, so try a few.",
527 "OnboardAppearanceFooter": "Enter keeps the one you are looking at · Esc restores the original.",
528 "OnboardOfflineOption": "Ctrl+O — explore offline: look around now, connect a provider later.",
529 "OnboardOfflineNotice": "Exploring offline. Nothing is connected yet — run /provider when you want to connect.",
530 "OnboardOfflineTipsLine": "You are offline. What you type waits in the queue until /provider connects you.",
531 "OnboardTipsTitle": "Start With Setup",
532 "OnboardTipsLine1": "Use /setup to review readiness, provider/model, runtime posture, and the verification report.",
533 "OnboardTipsLine2": "Use /constitution to review or change standing guidance; bundled defaults are already valid.",
534 "OnboardTipsLine3": "Use /provider or /model when the route needs attention; missing auth can be fixed later.",
535 "OnboardTipsLine4": "When setup is ready, write the task in plain language. /help and Ctrl+K show commands.",
536 "OnboardTipsDoctorPrefix": "From your shell, run ",
537 "OnboardTipsDoctorSuffix": " to check providers, tools, skills, and plugins.",
538 "OnboardTipsFooterEnter": "Press Enter",
539 "OnboardTipsFooterAction": " to finish onboarding and open setup if it needs attention",
540 "SetupWizardTitle": "Setup",
541 "SetupWizardWhy": "This shell records setup progress in setup_state.json; config changes are only applied by explicit step actions.",
542 "SetupWizardProgress": "Step",
543 "SetupActionBack": "back",
544 "SetupActionContinue": "continue",
545 "SetupActionSkip": "skip",
546 "SetupActionRetry": "retry",
547 "SetupActionScrollBody": "scroll body",
548 "SetupActionGuided": "preview/ratify",
549 "SetupActionTuneGuided": "tune",
550 "SetupActionModelDraft": "model draft",
551 "SetupActionFreeform": "own words",
552 "SetupActionKeepExisting": "keep existing",
553 "SetupActionProvider": "provider setup",
554 "SetupActionModel": "model routes",
555 "SetupActionFleet": "fleet setup",
556 "SetupActionHotbar": "hotbar setup",
557 "SetupActionRemote": "remote on-ramp",
558 "SetupActionMode": "mode picker",
559 "SetupActionConfig": "config view",
560 "SetupActionRuntimePreset": "preset",
561 "SetupActionApplyRuntimePreset": "preview/apply",
562 "SetupActionUseBundled": "use bundled",
563 "SetupActionDefer": "defer",
564 "SetupActionCancel": "cancel",
565 "SetupStatusNotStarted": "not started",
566 "SetupStatusRecommended": "recommended",
567 "SetupStatusOptional": "optional",
568 "SetupStatusDeferred": "deferred",
569 "SetupStatusInProgress": "in progress",
570 "SetupStatusNeedsAction": "needs action",
571 "SetupStatusVerified": "verified",
572 "SetupStatusSkipped": "skipped",
573 "SetupStatusFailed": "failed",
574 "SetupStepLanguageTitle": "Language",
575 "SetupStepLanguageWhy": "Choose the setup language first so later setup screens and constitution copy are understandable.",
576 "SetupStepProviderModelTitle": "Provider and model",
577 "SetupStepProviderModelWhy": "Choose the first interpreter of your code: the provider and model Codewhale will work with. Working credentials are not re-entered here.",
578 "SetupStepTrustSandboxTitle": "Runtime posture",
579 "SetupStepTrustSandboxWhy": "Review trust, sandbox, approval, shell, and network policy separately from constitutional guidance.",
580 "SetupStepOperateFleetTitle": "Operate and Fleet",
581 "SetupStepOperateFleetWhy": "Operate can use the built-in team immediately. Roles without a custom route use this session's model; Fleet setup is only for customization.",
582 "SetupStepToolsMcpTitle": "Tools and MCP",
583 "SetupStepToolsMcpWhy": "Inspect optional tool and MCP readiness without blocking the constitution checkpoint.",
584 "SetupStepHotbarTitle": "Hotbar",
585 "SetupStepHotbarWhy": "Configure common route and command shortcuts after the core setup path is safe.",
586 "SetupStepRemoteRuntimeTitle": "Remote runtime",
587 "SetupStepRemoteRuntimeWhy": "Keep remote setup visible but optional for local-first users.",
588 "SetupStepPersistenceTitle": "Persistence",
589 "SetupStepPersistenceWhy": "Review where setup state, config, constitution, memory, and notes live without reading their contents.",
590 "SetupStepConstitutionTitle": "Your constitution",
591 "SetupStepConstitutionWhy": "Code means two things here: the software you ship, and the standing law for how Codewhale works with you. Draft yours — short, durable, amendable. Bundled/default is a valid completion.",
592 "SetupStepVerificationTitle": "Review",
593 "SetupStepVerificationWhy": "Summarize setup status and show which steps are verified, skipped, or still need action.",
594 "SetupCheckpointLayerOrder": "Layer order: bundled Constitution -> user-global constitution -> repo constitution -> AGENTS/project instructions -> memory/handoff -> current request.",
595 "SetupCheckpointDoneBundled": "Constitution checkpoint complete: using bundled/default law.",
596 "SetupCheckpointDoneGuided": "Constitution ratified — your standing law is saved. Amend anytime with /constitution.",
597 "SetupCheckpointDoneKept": "Constitution kept — your existing law stands, unchanged. Amend anytime with /constitution.",
598 "SetupCheckpointDeferred": "Constitution checkpoint deferred: bundled/default law applies until you return to /setup.",
599 "SetupStepSkipped": "Setup step skipped and saved.",
600 "SetupStepRetryRecorded": "Setup step marked for retry.",
601 "SetupLanguageReviewed": "Setup language recorded.",
602 "SetupConstitutionChoiceLabel": "Choice:",
603 "SetupConstitutionSourceLabel": "Source:",
604 "SetupConstitutionValidityLabel": "Validity:",
605 "SetupConstitutionPreviewLabel": "Preview hash:",
606 "SetupConstitutionExistingLabel": "Existing file:",
607 "SetupConstitutionExpertOverrideLabel": "Expert override:",
608 "SetupConstitutionGuidedHint": "1-6 tune the draft, G previews, G again ratifies. Guidance only: it never changes runtime approval, sandbox, shell, network, trust, or MCP permissions.",
609 "SetupConstitutionGuidedAnswersHint": "Guided answers save user-global preferences only. The bundled core stays active; doctrine modules stay in mode prompts/future opt-ins.",
610 "SetupConstitutionPurposeLabel": "Purpose:",
611 "SetupConstitutionAutonomyLabel": "Initiative:",
612 "SetupConstitutionEvidenceLabel": "Evidence:",
613 "SetupConstitutionCommunicationLabel": "Communication:",
614 "SetupConstitutionPrivacyLabel": "Privacy:",
615 "SetupConstitutionPrinciplesLabel": "Principles:",
616 "SetupCardRouteLabel": "Route:",
617 "SetupCardModelLabel": "Model:",
618 "SetupCardAuthLabel": "Auth:",
619 "SetupCardHealthLabel": "Health:",
620 "SetupCardIntentLabel": "Work intent:",
621 "SetupCardApprovalLabel": "Approvals:",
622 "SetupCardShellLabel": "Shell:",
623 "SetupCardTrustLabel": "Trust:",
624 "SetupCardSandboxLabel": "Sandbox:",
625 "SetupCardNetworkLabel": "Network:",
626 "SetupOperateRuntimeLabel": "Worker runtime:",
627 "SetupOperateRosterLabel": "Fleet roster:",
628 "SetupOperateConcurrencyLabel": "Concurrency:",
629 "SetupOperateReadinessLabel": "Operate readiness:",
630 "SetupOperateReviewHint": "Enter records this setup snapshot.",
631 "SetupOperateReviewed": "Operate/Fleet readiness recorded.",
632 "SetupOperateNeedsActionSaved": "Operate/Fleet still needs action; recorded for setup report.",
633 "SetupHotbarBindingsLabel": "Hotbar bindings:",
634 "SetupHotbarActionsLabel": "Bindable actions:",
635 "SetupHotbarReviewHint": "Enter records this setup snapshot. Press H to customize slots.",
636 "SetupHotbarReviewed": "Hotbar setup state recorded.",
637 "SetupToolsMcpServersLabel": "MCP servers:",
638 "SetupToolsMcpSkillsLabel": "Skills:",
639 "SetupToolsMcpToolsLabel": "Tools dir:",
640 "SetupToolsMcpPluginsLabel": "Plugins:",
641 "SetupToolsMcpReviewHint": "Enter records this setup snapshot. Press R for safe on-ramps (no auto-run).",
642 "SetupToolsMcpReviewed": "Tools/MCP readiness recorded.",
643 "SetupRemoteCloudsLabel": "Cloud targets:",
644 "SetupRemoteBridgesLabel": "Chat bridges:",
645 "SetupRemoteProvidersLabel": "Providers:",
646 "SetupRemoteModeLabel": "Remote mode:",
647 "SetupRemoteModeLocalOnly": "This machine only:",
648 "SetupRemoteModeRuntimeApi": "Runtime API:",
649 "SetupRemoteModeMobileLan": "Phone on your network:",
650 "SetupRemoteModeChatBridge": "Chat app:",
651 "SetupRemoteStatusDisabled": "not available",
652 "SetupRemoteStatusReady": "ready",
653 "SetupRemoteStatusNeedsAction": "needs something",
654 "SetupRemoteReviewHint": "Enter records this setup snapshot. Press R to preview.",
655 "SetupRemotePreviewTitle": "Remote runtime on-ramp",
656 "SetupRemoteReviewed": "Remote runtime on-ramp recorded.",
657 "SetupPersistenceHomeLabel": "Home:",
658 "SetupPersistenceConfigLabel": "Config:",
659 "SetupPersistenceStateLabel": "Setup state:",
660 "SetupPersistenceConstitutionLabel": "Constitution:",
661 "SetupPersistenceMemoryLabel": "Memory:",
662 "SetupPersistenceNotesLabel": "Notes:",
663 "SetupPersistenceReviewHint": "Enter records this setup snapshot.",
664 "SetupPersistenceReviewed": "Persistence paths recorded.",
665 "SetupProviderModelReadyHint": "Enter records this provider/model route; press P for provider setup or M for model routes.",
666 "SetupProviderModelNeedsActionHint": "Enter records provider/model as needs-action and continues; press P to fix credentials or M to inspect routes.",
667 "SetupProviderModelReviewed": "Provider/model readiness recorded.",
668 "SetupProviderModelNeedsActionSaved": "Provider/model still needs action; recorded for setup report.",
669 "SetupRuntimePostureBoundary": "Runtime posture is enforced config; constitution guidance never changes it silently.",
670 "SetupRuntimePostureReviewHint": "Enter records this setup snapshot. Press M for work mode or C for config.",
671 "SetupRuntimePostureReviewed": "Runtime posture reviewed; no config changed.",
672 "SetupRuntimePresetSelectedLabel": "Selected preset:",
673 "SetupRuntimePresetDiffLabel": "Config diff:",
674 "SetupRuntimePresetAskFirstTitle": "Ask-first",
675 "SetupRuntimePresetAskFirstDescription": "Plan by default, shell hidden, read-only sandbox.",
676 "SetupRuntimePresetNormalAgentTitle": "Normal agent",
677 "SetupRuntimePresetNormalAgentDescription": "Agent by default, approval prompts, shell visible.",
678 "SetupRuntimePresetHighTrustTitle": "High-trust local",
679 "SetupRuntimePresetHighTrustDescription": "Full Access by default for trusted local work; no hidden constitution mutation.",
680 "SetupRuntimePresetPreviewTitle": "Runtime Posture Preset Preview",
681 "SetupRuntimePresetSafetyFloor": "Safety floor: auth/OAuth failures, blocked policy outcomes, publish-like actions, and hold-for-review gates can still stop the run.",
682 "SetupRuntimePresetApplyHint": "Press A to preview this exact diff; press A again after preview to apply it.",
683 "SetupRuntimePresetApplied": "Runtime preset applied.",
684 "SetupRuntimeProjectOverrideLabel": "Project override:",
685 "SetupRuntimeProjectOverrideNone": "none detected for approval_policy or sandbox_mode",
686 "SetupReportFirstRunLabel": "First-run:",
687 "SetupReportUpdateLabel": "Update checkpoint:",
688 "SetupReportOperateLabel": "Operate/Fleet:",
689 "SetupReportSourceLabel": "Source:",
690 "SetupReportAutonomyLabel": "Constitution autonomy:",
691 "SetupReportRuntimePostureLabel": "Runtime posture:",
692 "SetupReportPersisted": "persisted setup_state.json",
693 "SetupReportInherited": "derived from existing config",
694 "SetupReportReady": "ready",
695 "SetupReportRequired": "required",
696 "SetupReportOptional": "optional",
697 "SetupReportRowsLabel": "Step status:",
698 "SetupReportNextActionLabel": "Next action:",
699 "SetupReportNextActionNone": "No blocking setup action recorded.",
700 "SetupReportNextActionConstitution": "Complete the constitution checkpoint or choose bundled/default.",
701 "SetupReportNextActionProvider": "Review provider/model readiness or run /setup provider; use /provider setup <name> for a specific provider.",
702 "SetupReportNextActionRuntime": "Review runtime posture or use /config.",
703 "SetupReportNextActionOperate": "Review Operate/Fleet readiness before durable multi-worker runs.",
704 "SetupReportNextActionRequired": "Review the remaining required setup steps.",
705 "SetupReportRecorded": "Setup report recorded.",
706 "CtxMenuTitle": " Right click ",
707 "CtxMenuCopySelection": "Copy selection",
708 "CtxMenuCopySelectionDesc": "write selected transcript text",
709 "CtxMenuOpenSelection": "Open selection",
710 "CtxMenuOpenSelectionDesc": "show selected text in pager",
711 "CtxMenuClearSelection": "Clear selection",
712 "CtxMenuOpenDetails": "Open details",
713 "CtxMenuCopyMessage": "Copy message",
714 "CtxMenuCopyMessageDesc": "write clicked transcript cell",
715 "CtxMenuOpenInEditor": "Open in editor",
716 "CtxMenuOpenInEditorDesc": "open file:line in $EDITOR",
717 "CtxMenuShowCell": "Show cell",
718 "CtxMenuShowCellDesc": "unhide this transcript cell",
719 "CtxMenuHideCell": "Hide cell",
720 "CtxMenuHideCellDesc": "collapse this transcript cell",
721 "CtxMenuShowHidden": "Show hidden",
722 "CtxMenuShowHiddenDesc": "unhide all collapsed cells",
723 "CtxMenuPaste": "Paste",
724 "CtxMenuPasteDesc": "insert clipboard into composer",
725 "CtxMenuCmdPalette": "Command palette",
726 "CtxMenuCmdPaletteDesc": "commands, skills, and tools",
727 "CtxMenuContextInspector": "Context inspector",
728 "CtxMenuContextInspectorDesc": "active context and cache hints",
729 "CtxMenuHelp": "Help",
730 "CtxMenuHelpDesc": "keybindings and commands",
731 "FanoutCounts": "{done} done · {running} running · {failed} failed · {pending} pending",
732 "AppModeAgent": "Act",
733 "AppModeAuto": "Auto",
734 "AppModeYolo": "Full Access (deprecated mode label)",
735 "AppModePlan": "Plan",
736 "AppModeOperate": "Operate",
737 "AppModeAgentHint": "Direct work in this session — edits and shell ask for approval",
738 "AppModeAutoHint": "Shell enabled with automatic risk review",
739 "AppModePlanHint": "Read-only research first — present a plan before acting",
740 "AppModeYoloHint": "Compatibility only — Act + Full Access, not a visible mode",
741 "AppModeOperateHint": "Put your Fleet to work in parallel",
742 "VimModeNormal": "-- NORMAL --",
743 "VimModeInsert": "-- INSERT --",
744 "VimModeVisual": "-- VISUAL --",
745 "ApprovalRiskReview": "REVIEW",
746 "ApprovalRiskElevated": "APPROVAL",
747 "ApprovalRiskDestructive": "DESTRUCTIVE",
748 "ApprovalCategorySafe": "Safe",
749 "ApprovalCategoryFileWrite": "File Write",
750 "ApprovalCategoryShell": "Bash",
751 "ApprovalCategoryNetwork": "Network",
752 "ApprovalCategoryMcpRead": "MCP Read",
753 "ApprovalCategoryMcpAction": "MCP Action",
754 "ApprovalCategoryAgent": "Sub-agent",
755 "ApprovalCategoryUnknown": "Unknown",
756 "ApprovalFieldType": "Type: ",
757 "ApprovalFieldAbout": "About: ",
758 "ApprovalFieldImpact": "Impact: ",
759 "ApprovalFieldParams": "Params: ",
760 "ApprovalOptionApproveOnce": "Allow once",
761 "ApprovalOptionApproveAlways": "Allow for this session (this kind)",
762 "ApprovalOptionAllowExactRepo": "Always allow this exact rule in this repo",
763 "ApprovalSaveAskRuleHint": " s allow once + always ask exact rule",
764 "ApprovalOptionDeny": "Deny this call",
765 "ApprovalOptionAbortTurn": "Abort the turn",
766 "ApprovalBlockTitle": "approval",
767 "ApprovalControlsHint": " · Pg↑/↓ review · {details} details · Esc abort",
768 "ApprovalTruncationHint": " … truncated · press {details} for full details",
769 "ApprovalFullAccessPolicyBlocked": "Blocked {tool}: Full Access cannot bypass this policy",
770 "AutoReviewQuestionSkipped": "Auto-Review skipped a user question and continued autonomously",
771 "ApprovalChooseHint": "Choose: ",
772 "ApprovalChooseAction": "Enter selected option, or press y/a/d directly",
773 "ApprovalIntentLabel": "Intent: ",
774 "ApprovalMoreLines": " … (+{count} lines)",
775 "ApprovalAutoDeniedSession": "Auto-denied {tool}: a matching request was denied earlier during this CodeWhale run. Restart CodeWhale to reconsider it.",
776 "ElevationTitleSandboxDenied": " ⚠, Sandbox Denied ",
777 "ElevationTitleRequired": " Sandbox Elevation Required ",
778 "ElevationFieldTool": " Tool: ",
779 "ElevationFieldCmd": " Cmd: ",
780 "ElevationFieldReason": " Reason: ",
781 "ElevationImpactHeader": " Impact if approved:",
782 "ElevationImpactNetwork": " - network retry enables outbound downloads and HTTP requests",
783 "ElevationImpactWrite": " - write retry expands writable filesystem scope for this tool call",
784 "ElevationImpactFullAccess": " - full access removes sandbox restrictions entirely for this retry",
785 "ElevationPromptProceed": " Choose how to proceed:",
786 "ElevationOptionNetwork": "Allow outbound network",
787 "ElevationOptionWrite": "Allow extra write access",
788 "ElevationOptionFullAccess": "Full access (filesystem + network)",
789 "ElevationOptionAbort": "Abort",
790 "ElevationOptionNetworkDesc": "Retry this tool call with outbound network access for downloads and HTTP requests",
791 "ElevationOptionWriteDesc": "Retry this tool call with additional writable filesystem scope",
792 "ElevationOptionFullAccessDesc": "Retry without sandbox limits; grants unrestricted filesystem and network access",
793 "ElevationOptionAbortDesc": "Cancel this tool execution",
794 "CtxInspTitle": "Context inspector",
795 "CtxInspSessionContext": "Session Context",
796 "CtxInspSystemPrompt": "System Prompt Structure",
797 "CtxInspReferences": "References",
798 "CtxInspRecentTools": "Recent Tools",
799 "CtxInspModel": "Model",
800 "CtxInspWorkspace": "Workspace",
801 "CtxInspSession": "Session",
802 "CtxInspContext": "Context",
803 "CtxInspTranscript": "Transcript",
804 "CtxInspWorkspaceStatus": "Workspace status",
805 "CtxInspNotSampledYet": "not sampled yet",
806 "CtxInspOk": "ok",
807 "CtxInspHigh": "high",
808 "CtxInspCritical": "critical",
809 "CtxInspIncluded": "included",
810 "CtxInspAttached": "attached",
811 "CtxInspNotIncluded": "not included",
812 "CtxInspOutputCaptured": "output captured",
813 "CtxInspNoOutputYet": "no output yet",
814 "CtxInspNoSystemPrompt": "No system prompt set.",
815 "CtxInspNoReferences": "No file, directory, or media references recorded yet.",
816 "CtxInspNoToolActivity": "No tool activity recorded yet.",
817 "CtxInspVHint": "Open the matching card and press {details} for full details.",
818 "CtxInspCells": "cells",
819 "CtxInspApiMessages": "API messages",
820 "CtxInspActive": "active",
821 "CtxInspCell": "cell",
822 "CtxInspMoreReferences": "more reference(s)",
823 "CtxInspStablePrefix": "Stable prefix",
824 "CtxInspVolatileWorkingSet": "Volatile working set",
825 "CtxInspFirstLine": "First line",
826 "CtxInspTotal": "Total",
827 "CtxInspTextPromptLayers": "Text prompt layers",
828 "CtxInspSingleTextBlob": "Single text blob",
829 "CtxInspBlocks": "block(s)",
830 "CtxInspBlock": "block",
831 "CtxInspTokens": "tokens",
832 "CtxInspLayers": "layer(s)",
833 "CtxInspNone": "none",
834 "CtxInspEmpty": "(empty)",
835 "CtxInspCacheFriendly": "cache-friendly",
836 "CtxInspChangesByTurn": "changes by session/turn",
837 "CtxInspStablePrefixOnly": "stable prefix only",
838 "CtxInspCacheTip": "Tip: Stable prefix blocks are cache eligible when the active provider supports prefix caching. Volatile working-set changes break the cache only for the tail.",
839 "ToolFamilyRead": "read",
840 "ToolFamilyPatch": "patch",
841 "ToolFamilyRun": "run",
842 "ToolFamilyFind": "find",
843 "ToolFamilyDelegate": "delegate",
844 "ToolFamilyFanout": "fanout",
845 "ToolFamilyRlm": "rlm",
846 "ToolFamilyVerify": "verify",
847 "ToolFamilyThink": "think",
848 "ToolFamilyGeneric": "tool",
849 "CmdVoiceDescription": "Toggle voice input: record speech and transcribe into the composer",
850 "CmdVoiceSendDescription": "Toggle voice auto-send: submit when the transcript ends with \"send it\"",
851 "CmdVoiceControlDescription": "Toggle voice control: AI-assisted dictation aware of the composer text",
852 "VoiceEnabled": "Voice input enabled. Speak to record.",
853 "VoiceDisabled": "Voice input disabled.",
854 "VoiceSendEnabled": "Voice auto-send enabled.",
855 "VoiceSendDisabled": "Voice auto-send disabled.",
856 "VoiceControlEnabled": "Voice control enabled.",
857 "VoiceControlDisabled": "Voice control disabled.",
858 "VoiceErrNoAuth": "Voice: no API key configured for the active provider",
859 "VoiceErrNoRecorder": "Voice: no recording tool found. Install sox, arecord, or rec.",
860 "VoiceErrNetwork": "Voice: transcription request failed",
861 "VoiceErrEmptySend": "Voice: nothing to send",
862 "VoiceErrTooShort": "Voice: no speech detected, recording too short",
863 "VoiceRecording": "🎙 Recording... speak now",
864 "VoiceProcessing": "🎙 Transcribing...",
865 "VoiceTranscribed": "🎙 Transcribed",
866 "NotificationTurnComplete": "Turn complete",
867 "NotificationSubagentComplete": "Sub-agent complete",
868 "NotificationSubagentFailed": "Sub-agent failed",
869 "NotificationSubagentInterrupted": "Sub-agent interrupted",
870 "NotificationSubagentCancelled": "Sub-agent cancelled",
871 "NotificationSubagentBudgetExhausted": "Sub-agent budget exhausted",
872 "FooterWorkedChip": "worked {duration}",
873 "FleetDraftTitle": "Fleet profile — draft by {model_label} (g saves)",
874 "FleetDraftHeader": "# .codewhale/agents/{name}\n# Drafted by {model_label}, validated and bounded by Codewhale.\n# Permissions stay at the fleet floor: no shell, no trust, approval required.\n# Nothing is saved until you press g in the wizard.\n\n",
875 "SetupRemoteOnRampText": "Remote Runtime On-Ramp\n\n/setup shows remote runtime facts only. It does not generate deploy bundles, write credentials, call cloud CLIs, or run `remote-setup`.\n\nCurrent facts:\n- Clouds: {clouds_result}\n- Chat bridges: {bridges_result}\n- Providers: {providers_result}\n- Mode: {mode_result}\n\nTo generate a deploy bundle, run explicitly in a normal terminal:\n\n```sh\n{command}\n```\n\nThe generated RUNBOOK includes host steps for human review. `--apply` remains unimplemented; do not treat this as auto-deploy.",
876 "ApprovalDescSafe": "Requesting a safe/read-only operation.",
877 "ApprovalDescFileWrite": "Requesting to modify a file. Please confirm path and content.",
878 "ApprovalDescShell": "Requesting to execute a shell command. Review command and working directory.",
879 "ApprovalDescNetwork": "Requesting to access network or remote content. Verify the target is trusted.",
880 "ApprovalDescMcpRead": "Requesting to read from an MCP server.",
881 "ApprovalDescMcpAction": "Requesting to call an MCP server action that may have side effects.",
882 "ApprovalDescAgent": "Requesting to start or inspect a sub-agent; sub-agents still have their own gating.",
883 "ApprovalDescUnknown": "Requesting to run an unclassified tool. Review parameters carefully.",
884 "ApprovalImpactSafe": "Read-only operation.",
885 "ApprovalImpactFileWrite": "Writes files in the workspace or an approved write scope.",
886 "ApprovalImpactShell": "Executes a Bash command in your workspace.",
887 "ApprovalImpactNetwork": "May reach network services or remote content.",
888 "ApprovalImpactMcpRead": "Reads from an MCP server without an obvious local write.",
889 "ApprovalImpactMcpAction": "Calls an MCP server action that may have side effects.",
890 "ApprovalImpactAgent": "Starts or inspects a sub-agent; sub-agents have their own gating.",
891 "ApprovalImpactUnknown": "Tool is not classified. Review params carefully before approving.",
892 "ApprovalLabelCommand": "Command",
893 "ApprovalLabelDir": "Dir",
894 "ApprovalLabelFile": "File",
895 "ApprovalLabelPreview": "Preview",
896 "ApprovalLabelProposedContent": "proposed content",
897 "ApprovalLabelReplaceThis": "replace this",
898 "ApprovalLabelWithThis": "with this",
899 "ApprovalLabelReplacementContent": "replacement content",
900 "ApprovalLabelPath": "Path",
901 "ApprovalLabelTarget": "Target",
902 "ApprovalLabelInput": "Input",
903 "ApprovalLabelAction": "Action",
904 "ApprovalLabelType": "Type",
905 "ApprovalLabelPrompt": "Prompt",
906 "ApprovalLabelAbout": "About: ",
907 "ApprovalLabelImpact": "Impact: ",
908 "SetupConstitutionFileNotChecked": "not checked yet",
909 "SetupConstitutionFileMissing": "no constitution.json found; bundled/default applies",
910 "SetupConstitutionFileLoadedSelected": "valid constitution.json present and selected",
911 "SetupConstitutionFileLoadedInactive": "valid constitution.json present but inactive under the recorded choice",
912 "SetupConstitutionFileLoadedUnselected": "valid constitution.json present; preview or save guided to select it",
913 "SetupConstitutionFileEmpty": "constitution.json is empty; use G to regenerate or U for bundled",
914 "SetupConstitutionFileInvalid": "constitution.json is invalid; use repair/regenerate or bundled",
915 "SetupConstitutionFileUnreadable": "constitution.json is unreadable; use repair/regenerate or bundled",
916 "SetupConstitutionFilePathError": "CODEWHALE_HOME could not be resolved for constitution.json",
917 "SetupExpertOverrideNotChecked": "not checked yet",
918 "SetupExpertOverrideMissing": "no prompts/constitution.md found",
919 "SetupExpertOverrideActive": "active; expert Markdown override is opted in",
920 "SetupExpertOverrideDisabled": "file found but disabled; set {env}=1 to activate",
921 "SetupExpertOverrideEmpty": "override file is empty; bundled/default applies",
922 "SetupExpertOverrideUnreadable": "override file is unreadable; bundled/default applies",
923 "SetupExpertOverridePathError": "CODEWHALE_HOME could not be resolved for prompts/constitution.md",
924 "SetupAutonomyUnspecified": "unspecified or bundled/default",
925 "SetupGuidedPurposeCoding": "coding workbench",
926 "SetupGuidedPurposeResearch": "research synthesis",
927 "SetupGuidedPurposeOperations": "operations helper",
928 "SetupGuidedPurposeMixed": "mixed workbench",
929 "SetupGuidedPurposeAboutCoding": "A Codewhale user who wants a calm, evidence-first coding workbench.",
930 "SetupGuidedPurposeAboutResearch": "A Codewhale user who wants current, cited research and careful synthesis.",
931 "SetupGuidedPurposeAboutOperations": "A Codewhale user who wants reliable operational help with clear rollback points.",
932 "SetupGuidedPurposeAboutMixed": "A Codewhale user who wants a flexible workbench for coding, research, writing, and operations.",
933 "SetupGuidedStyleCoding": "Keep code changes scoped to requested behavior and existing repo patterns.",
934 "SetupGuidedStyleResearch": "Separate live evidence from inference and cite sources for unstable facts.",
935 "SetupGuidedStyleOperations": "Prefer reversible operational steps with dry-runs, status checks, and rollback notes.",
936 "SetupGuidedStyleMixed": "Adapt between coding, research, writing, and operations without widening the safety posture.",
937 "SetupGuidedEvidenceAssumptions": "state assumptions",
938 "SetupGuidedEvidenceTestsAndReceipts": "tests & receipts",
939 "SetupGuidedEvidenceReleaseReceipts": "release receipts",
940 "SetupGuidedNotes": "Guided answers: purpose={purpose}; initiative={initiative}; evidence={evidence}; communication={communication}; privacy={privacy}; principles={principles}. {notes} Free-text principles are advisory and do not change approval, sandbox, shell, network, trust, or MCP permissions.",
941 "OnboardWelcomeVersion": "Version {version}",
942 "OnboardWelcomeLead": "Code means two things here: the software you ship, and the law this agent works under.",
943 "OnboardWelcomeSetupBlurb": "Setup adapts to what is already configured; only these screens will appear.",
944 "OnboardWelcomeSteps": "Next: {steps}.",
945 "OnboardWelcomeStepLanguage": "choose language",
946 "OnboardWelcomeStepAppearance": "pick a look",
947 "OnboardWelcomeStepApiKey": "connect API key",
948 "OnboardWelcomeStepTrust": "trust workspace",
949 "OnboardWelcomeStepMentalModels": "learn modes and permissions",
950 "OnboardWelcomeStepTips": "setup tips",
951 "OnboardWelcomeDefaults": "Bundled defaults are valid; amend anytime with /constitution.",
952 "OnboardWelcomeEnter": "Press Enter to continue.",
953 "OnboardWelcomeExit": "Ctrl+C exits at any point.",
954 "SetupToolsMcpHotbarLabel": "Hotbar sources:",
955 "SetupToolsMcpNeedsActionSaved": "Tools/MCP still needs action; recorded for setup report (does not block first-run).",
956 "SetupToolsMcpPreviewTitle": "Tools / MCP safe on-ramps",
957 "SetupToolsMcpOnRampText": "Tools, MCP, Skills & Plugins — Safe On-Ramps\n\n/setup only reads local inventory. It never starts MCP servers, installs skills, runs plugins, or executes untrusted commands.\n\nCurrent inventory:\n- MCP: {mcp_result}\n- Skills: {skills_result}\n- Tools dir: {tools_result}\n- Plugins: {plugins_result}\n- Hotbar (shared adapters): {hotbar_result}\n\nPaths (redacted home):\n- MCP config: {mcp_path}\n- Skills: {skills_path}\n- Plugins: {plugins_path}\n\nSafe bootstrap (run yourself in a normal terminal or TUI command):\n- MCP: /mcp · codewhale mcp init · codewhale doctor\n- Skills: /skills · codewhale setup --skills · /skills install <spec>\n- Plugins: /plugin · codewhale setup --plugins\n- Tools dir: codewhale setup --tools\n\nSide-effectful actions always require explicit confirmation. Plugin commands stay distinct from slash commands; the Hotbar plugin source remains deferred until approval gates land.\n\nSee docs/MCP.md and docs/skills/README.md for what still needs manual external setup.",
958 "HotbarActionModeOperateName": "Operate mode",
959 "HotbarActionModeOperateDescription": "Put your Fleet to work in parallel.",
960 "HomeOperateModeTip": "Operate — put your Fleet to work in parallel",
961 "HomeOperateModeFleetTip": " Built-in roles use this session's model; /fleet setup customizes them",
962 "HelpSubtitle": "Concepts, commands, and keybindings",
963 "CommandPaletteTitle": "Command",
964 "CommandPaletteSubtitle": "Find and run one action",
965 "ConfigSubtitle": "Settings first; raw keys under advanced detail",
966 "LaunchMenuNewSession": "New session",
967 "LaunchMenuNewWorktree": "New worktree",
968 "LaunchMenuResumeSession": "Resume session",
969 "LaunchMenuChangelog": "Changelog",
970 "LaunchMenuQuit": "Quit",
971 "LaunchMenuUnavailable": "unavailable",
972 "LaunchMenuSavedCount": "{count} saved",
973 "LaunchWorktreePrompt": "Name the branch/worktree, or press Enter for an automatic name.",
974 "LaunchWorktreeNeedsGit": "New worktree requires a Git repository.",
975 "LaunchWorktreeNameLabel": "worktree name",
976 "LaunchHintMove": "move",
977 "LaunchHintOpen": "open",
978 "LaunchTipFlags": "Tip: -w <path> opens a workspace; -r <session-id> resumes directly",
979 "LaunchSavedSessionSingular": "1 saved session",
980 "LaunchSavedSessionsPlural": "{count} saved sessions",
981 "LaunchCreatingWorktree": "Creating worktree…",
982 "LaunchWorktreeFailed": "Worktree failed: {error}",
983 "LaunchNoSavedSessions": "No saved sessions for this workspace.",
984 "PhaseIdle": "idle",
985 "PhaseDraft": "draft",
986 "PhaseWorking": "working",
987 "PhaseReasoning": "reasoning",
988 "PhaseReading": "reading",
989 "PhaseUsingTool": "using tool",
990 "PhaseVerifying": "verifying",
991 "PhaseWaitingOnYou": "waiting on you",
992 "PhaseDone": "done",
993 "PhaseFailed": "failed",
994 "PhaseFinishing": "finishing",
995 "ChipModeAct": "act",
996 "ChipModePlan": "plan",
997 "ChipModeOperate": "operate",
998 "ChipPermissionReadOnly": "read only",
999 "ChipPermissionAsk": "ask",
1000 "ChipPermissionAuto": "auto",
1001 "ChipPermissionFullAccess": "Full Access",
1002 "ChipPermissionNever": "never",
1003 "FooterHintKeys": "keys",
1004 "FooterHintOutput": "output",
1005 "FooterHintContext": "context",
1006 "EmptyStateNoGit": "no git",
1007 "EmptyStateMcpLabel": "mcp",
1008 "EmptyStateFleetLabel": "Fleet",
1009 "EmptyStateFleetSetupLabel": "Fleet ready",
1010 "EmptyStateHelpHint": "— see everything",
1011 "SessionsSurfaceTitle": "sessions",
1012 "SessionsPaneTitle": " sessions (1-9) ",
1013 "SessionsHistoryPaneTitle": " history (PgUp/PgDn) ",
1014 "SessionsActionResume": "resume",
1015 "SessionsActionSearch": "search",
1016 "SessionsActionSort": "sort",
1017 "SessionsActionRename": "rename",
1018 "SessionsActionAllWorkspaces": "all workspaces",
1019 "SessionsActionDelete": "delete",
1020 "SessionsActionClose": "close",
1021 "SessionsScopeSortHeader": "scope and sort · {sort}",
1022 "SessionsEmptyTitle": "No saved sessions yet.",
1023 "SessionsEmptyHint": "Send a message to start one; it is saved automatically.",
1024 "SessionsShowingAllWorkspaces": "showing sessions from every workspace",
1025 "SessionsScopedToWorkspace": "scoped to this workspace",
1026 "SessionsNewTitlePrompt": "New title: ",
1027 "SessionsDeletePrompt": "Delete session? (y/n)",
1028 "SessionsConfirmDelete": "Confirm delete (y/n)",
1029 "SessionsNewSessionTitle": "New Session",
1030 "SessionsOpenedHistory": "Opened history for {id}",
1031 "SessionsSortStatus": "Sort: {sort}",
1032 "SessionsSortRecent": "recent",
1033 "SessionsSortName": "name",
1034 "SessionsSortSize": "size",
1035 "SessionsSearchPrompt": "Search: type to filter, Enter to apply",
1036 "SessionsDeleteFailed": "Delete failed: {error}",
1037 "SessionsDeleted": "Deleted session {id}",
1038 "SessionsNoSelection": "No session selected",
1039 "SessionsTitleLength": "Title must be 1–100 characters",
1040 "SessionsOpenFailed": "Could not open sessions: {error}",
1041 "SessionsLoadFailed": "Could not load session: {error}",
1042 "SessionsRenameFailed": "Rename failed: {error}",
1043 "SessionsRenamed": "Renamed to \"{title}\"",
1044 "SessionsNoResults": "No sessions found.",
1045 "SessionsDirectoryFailed": "Failed to open sessions directory.",
1046 "SessionsPreviewFailed": "Failed to load session preview.",
1047 "SessionsDeleteCancelled": "Delete cancelled",
1048 "SessionsRenameCancelled": "Rename cancelled",
1049 "SessionsShowingRange": "Showing {start}-{end} / {total}",
1050 "SessionsMessageCountCompact": "{count} msgs",
1051 "SessionsForkCompact": "fork",
1052 "SessionsUnknownMode": "unknown",
1053 "SessionsPreviewTitle": "Title: {title}",
1054 "SessionsPreviewUpdated": "Updated: {updated}",
1055 "SessionsPreviewMessagesModel": "Messages: {count} | Model: {model}",
1056 "SessionsPreviewMode": "Mode: {mode}",
1057 "SessionsToolCall": "tool call: {name} {input}",
1058 "SessionsToolError": "tool error: {content}",
1059 "SessionsToolResult": "tool result: {content}",
1060 "SessionsServerTool": "server tool: {name} {input}",
1061 "SessionsImage": "[image]",
1062 "SessionsTimeJustNow": "just now",
1063 "SessionsTimeMinutesAgo": "{count}m ago",
1064 "SessionsTimeHoursAgo": "{count}h ago",
1065 "SessionsTimeDaysAgo": "{count}d ago",
1066 "CtxInspRowSystemPrompt": "system prompt",
1067 "CtxInspRowMessages": "messages",
1068 "CtxInspRowFree": "free",
1069 "CtxInspFreeTokensDetail": "{free} free tokens remain before the route window is full. Auto-compact threshold: {threshold}%.",
1070 "CtxInspDrillTitle": "context · {row}",
1071 "CtxInspSurfaceTitle": "context",
1072 "CtxInspActionSelect": "select",
1073 "CtxInspActionDrillDown": "drill down",
1074 "CtxInspActionClose": "close",
1075 "CtxInspUsedTokens": "~{used}/{max} tokens",
1076 "CtxInspAutoCompactAt": "auto-compact at {threshold}%",
1077 "CtxInspRowTokens": "{tokens} tokens · {percent}%",
1078 "RouteSurfaceTitle": "route · {view}",
1079 "RouteBrowseCatalog": "browse catalog",
1080 "RouteActionType": "Type",
1081 "RouteActionSearchAnyModel": "search any model",
1082 "RoutePanelHeader": "route",
1083 "RouteProviderLabel": "provider",
1084 "RouteModelFirstAtomic": "model-first atomic route",
1085 "PickerActionMove": "move",
1086 "PickerActionSwitch": "switch",
1087 "PickerActionApply": "apply",
1088 "PickerActionSetStartupDefault": "set startup default",
1089 "PickerActionCancel": "cancel",
1090 "PickerActionClear": "clear",
1091 "PickerActionClearSearch": "clear search",
1092 "PickerActionBrowseAll": "browse all",
1093 "PickerActionCustom": "custom",
1094 "PickerActionJump": "jump",
1095 "PickerActionEditKey": "edit key",
1096 "PickerActionModels": "models",
1097 "PickerActionUnavailable": "unavailable",
1098 "PickerActionSetKey": "set key",
1099 "PickerActionConfigured": "configured",
1100 "RouteNoModels": "No models available.",
1101 "RouteNoModelMatch": "No models match \"{query}\" — Backspace to clear.",
1102 "ProviderNoMatchesTitle": "No providers match",
1103 "ProviderNoMatchesHint": "Try a different search term or clear to browse.",
1104 "ProviderNoConfiguredTitle": "No providers configured yet",
1105 "ProviderNoConfiguredHint": "Browse every supported provider or create a custom endpoint.",
1106 "ProviderNoCatalogModels": "No catalog models available.",
1107 "ProviderExternalActionRevoke": "revoke external",
1108 "ProviderExternalActionChoices": "external access choices",
1109 "ProviderExternalActionReuseGrok": "external Grok reuse",
1110 "ProviderExternalHintCodexReview": "After {login}, press Enter to review disabled/read-only/managed access choices.",
1111 "ProviderExternalHintXaiReview": "Press Enter for Codewhale-owned device login; press E to review existing Grok CLI reuse.",
1112 "ProviderExternalHintXaiApiKey": "Or use XAI_API_KEY and re-open this picker.",
1113 "XaiAuthChoiceTitle": " xAI authentication ",
1114 "XaiAuthChoiceIntro": "Choose one explicit credential source. Key text is never an OAuth token.",
1115 "XaiAuthChoiceApiKeyOption": "xAI API key — type or paste, then save in the xAI provider slot",
1116 "XaiAuthChoiceDeviceOAuthOption": "Native device OAuth — browser/device-code sign-in with Codewhale-owned storage",
1117 "ProviderExternalDetailScope": "External: access={access} | provider={provider} | source={source} | version={version} | {state}",
1118 "ProviderExternalDormant": "dormant",
1119 "ProviderExternalOwnerPath": "Owner/path: {owner} | {path}",
1120 "ProviderExternalPinnedPathWarning": "Warning: ambient {owner} credential path changed; consent remains pinned to {path}.",
1121 "ProviderExternalSemanticsRevoke": "{semantics} | revoke: {revoke}",
1122 "ProviderExternalRevoke": "revoke: {revoke}",
1123 "ProviderExternalChoiceTitle": " External credential access · {provider} ",
1124 "ProviderExternalActionChoose": "choose",
1125 "ProviderExternalChoiceIntro": "Choose what Codewhale may do with credentials owned by another CLI.",
1126 "ProviderExternalDisabledLabel": "Disabled (default)",
1127 "ProviderExternalDisabledDetail": "no probing, reads, refresh, network, or writes",
1128 "ProviderExternalReadOnlyLabel": "Read-only",
1129 "ProviderExternalReadOnlyDetail": "one exact file; explicit confirmation follows",
1130 "ProviderExternalReadOnlySemantics": "read this exact file; no refresh, identity-provider or discovery requests, external-file writes, or rewrites; normal requests to the selected provider may use its token",
1131 "ProviderExternalManagedLabel": "Managed (unavailable)",
1132 "ProviderExternalManagedDetail": "no reviewed schema-safe preservation adapter",
1133 "ProviderExternalConfirmTitle": " Confirm exact read-only access ",
1134 "ProviderExternalActionGrant": "grant read-only access",
1135 "ProviderExternalOwnerLabel": "Owning CLI",
1136 "ProviderExternalExactPathLabel": "Exact resolved path",
1137 "ProviderExternalSemanticsLabel": "Semantics",
1138 "ProviderExternalRejectUnsafe": "Codewhale will reject symlinks, reparse points, and non-regular files.",
1139 "ProviderExternalRevokeLabel": "Revoke",
1140 "ProviderExternalGrantedToast": "Read-only {owner} access granted for {provider}. No refresh, identity/discovery requests, or external-file writes; normal provider requests may use the token.",
1141 "ProviderExternalSaveFailedToast": "External credential consent was not saved: {error}",
1142 "ProviderExternalRevokedToast": "External credential access revoked for {provider}",
1143 "ProviderExternalRevokeFailedToast": "External credential access was not revoked: {error}",
1144 "ThemeSurfaceTitle": "theme · live preview",
1145 "ThemeTreatmentOmbreUnavailable": "Treatment Ombre unavailable — Terminal owns the background",
1146 "ThemeTreatmentFlatActive": "Treatment Flat — active",
1147 "ThemeTreatmentOmbreActive": "Treatment Ombre — active",
1148 "FleetRosterHeaderLabel": "fleet",
1149 "FleetRosterTabRoster": "roster",
1150 "FleetRosterTabSetup": "setup",
1151 "FleetRosterWorkers": "workers",
1152 "FleetRosterMembersCount": "{count} members",
1153 "FleetRosterOperatorFirst": "operator leads · session model runs this Fleet",
1154 "FleetRosterOperatorRow": "operator · leader",
1155 "FleetReadyNotice": "Fleet is ready · /fleet opens roles · /fleet setup customizes routes",
1156 "FleetProfileIdentityVerifyFailed": "Could not verify existing profile identities ({error}); fix the named file before saving.",
1157 "FleetProfileIdConflict": "Profile id `{id}` is already used by {path}; redraft with a different role or remove the old file first.",
1158 "FleetProfileProviderUnconfigured": "Profile pins provider `{provider}`, which has no configured credentials ({env}); set it up in /provider before saving.",
1159 "WorkflowStatusWaiting": "waiting",
1160 "WorkflowDebrief": "debrief: {done}/{total} settled · {failed} failed · {cancelled} cancelled · {elapsed}",
1161 "WorkflowTranscriptDetails": "transcript: full run JSON available in tool details ({details})",
1162 "WorkflowReceiptRole": "role {value}",
1163 "WorkflowReceiptReasoning": "reasoning {value}",
1164 "WorkflowReceiptVia": "via {value}",
1165 "WorkflowReceiptTokens": "tokens {value}",
1166 "WorkflowReceiptTools": "tools {value}",
1167 "WorkflowReceiptDuration": "duration {value}",
1168 "WorkflowReceiptUnknown": "unknown",
1169 "WorkflowReceiptProviderReported": "provider-reported",
1170 "WorkflowReceiptEstimated": "estimated",
1171 "SidebarTasksLabel": "Tasks",
1172 "SidebarTodoLabel": "To-do",
1173 "WorkSurfaceTodoProgress": "{label} {completed}/{total} · {remaining} left",
1174 "SidebarStopControl": "stop",
1175 "SidebarDestructiveArmed": "Destructive action armed — press Enter to confirm or clear the draft to cancel",
1176 "WorkSurfaceStopConfirmHint": "confirm stop · Esc cancels",
1177 "CoordinationWorkTitle": "Coordination Work",
1178 "CoordinationSummaryDecisions": "{count} decisions",
1179 "CoordinationSummaryContentions": "{count} contentions",
1180 "CoordinationSummaryReconciled": "{count} reconciled",
1181 "CoordinationSchema": "Schema {value}",
1182 "CoordinationSequence": "sequence {value}",
1183 "CoordinationPerSectionLimit": "up to {limit} per section",
1184 "CoordinationDecisionsHeading": "Decisions",
1185 "CoordinationNone": "None",
1186 "CoordinationNoneValue": "none",
1187 "CoordinationStatus": "status {status}",
1188 "CoordinationOwner": "owner {owner}",
1189 "CoordinationVersion": "version {version}",
1190 "CoordinationWriteClaimsHeading": "Write claims",
1191 "CoordinationIsolated": "isolated",
1192 "CoordinationSharedWorkspace": "shared workspace",
1193 "CoordinationPaths": "paths {paths}",
1194 "CoordinationContracts": "contracts {contracts}",
1195 "CoordinationContentionsHeading": "Contentions",
1196 "CoordinationClaimant": "claimant {claimant}",
1197 "CoordinationDisposition": "disposition {disposition}",
1198 "CoordinationNeutralReconciliationHeading": "Neutral reconciliation",
1199 "CoordinationCandidates": "{count} candidates",
1200 "CoordinationRetry": "retry {count}/{limit}",
1201 "CoordinationReviewer": "reviewer {reviewer}",
1202 "CoordinationVerifier": "verifier {verifier}",
1203 "CoordinationVerification": "verification {verification}",
1204 "CoordinationContextProjectionsHeading": "Context projections",
1205 "CoordinationContextDecisions": "decisions {decisions}",
1206 "CoordinationBytes": "{count} bytes",
1207 "CoordinationDeduplicated": "{count} deduplicated",
1208 "CoordinationOmitted": "{count} omitted",
1209 "CoordinationActiveHotPathsHeading": "Active hot paths",
1210 "CoordinationActiveClaims": "{count} active claims",
1211 "CoordinationMetricsNoteHeading": "Metrics note",
1212 "CoordinationMetricsNoAuthoritativeSource": "growth and route/cost stay null when the coordination ledger has no authoritative source",
1213 "CoordinationStatusProposed": "proposed",
1214 "CoordinationStatusAccepted": "accepted",
1215 "CoordinationStatusSuperseded": "superseded",
1216 "ComposerSlashMenuHint": " enter:run · tab:complete · ↑↓:select · esc:keep typing ",
1217 "ApprovalRepoLawBadge": "REPO LAW",
1218 "ApprovalRepoLawTitle": "Repository constitution",
1219 "ApprovalRepoLawWarning": "Repository law requires confirmation in approval-gated postures.",
1220 "ApprovalRepoLawRuleLabel": "Rule ",
1221 "FilePickerMatchSingular": "@ attach · 1 match",
1222 "FilePickerMatchesPlural": "@ attach · {count} matches",
1223 "FilePickerScanning": "Scanning workspace…",
1224 "BehavioralTipPlanning": "Planning? {key} cycles to Plan mode",
1225 "BehavioralTipBackgroundReceipt": "Receipts live in the Work panel — {key} opens the inspector",
1226 "BehavioralTipClearedInput": "Cleared · {chord} restores",
1227 "BehavioralTipMcpValidation": "{command} starts servers and shows why",
1228 "BehavioralTipRepeatedCommand": "{command} can pin this",
1229 "SettingLockedDuringTurn": "{setting} is locked while a turn is running — press Esc to interrupt first",
1230 "SettingSubjectMode": "Mode",
1231 "SettingSubjectThinking": "Thinking",
1232 "SettingSubjectModel": "Model",
1233 "SettingSubjectModelAndThinking": "Model and thinking",
1234 "SettingSubjectProvider": "Provider",
1235 "SettingSubjectPermissions": "Permissions",
1236 "ThinkingControlledByAutoRouting": "Thinking is controlled by automatic model routing; choose a fixed model first.",
1237 "SavedAsStartupDefault": "saved as startup default",
1238 "ModeAlreadyActiveSavedAsDefault": "Already in {mode} mode — saved as startup default.",
1239 "StartupDefaultNotSaved": "{setting} was not saved: {error}",
1240 "StartupDefaultSubjectMode": "startup mode",
1241 "StartupDefaultSubjectThinking": "thinking level",
1242 "StartupDefaultSubjectModel": "model",
1243 "StartupDefaultSubjectAll": "startup defaults",
1244 "SessionsRailTitle": "Sessions",
1245 "SessionsRailEmpty": "No sessions in this workspace yet",
1246 "SessionsRailBrowseAll": "Browse all sessions",
1247 "SessionsRailShowingCount": "{shown} of {total} — browse all",
1248 "SessionsRailUnavailable": "Sessions unavailable: {error}",
1249 "SessionsActionArchive": "archive",
1250 "SessionsActionShowArchived": "archived",
1251 "SessionsArchived": "Archived session {id}",
1252 "SessionsRestored": "Restored session {id}",
1253 "SessionsArchiveFailed": "Archive failed: {error}",
1254 "SessionsShowingArchived": "Showing archived sessions",
1255 "SessionsHidingArchived": "Hiding archived sessions",
1256 "SessionsArchivedCompact": "archived",
1257 "KbReasoningDetail": "Open reasoning detail for the selected or current turn",
1258 "KbTurnInspector": "Open Turn Inspector",
1259 "CmdTurnInspectDescription": "Open the whole-turn inspector",
1260 "CmdAutomationDescription": "Manage durable scheduled automations",
1261 "AutomationUsage": "Usage: /automation [list|show <id>|pause <id>|resume <id>|delete <id> [--confirm <token>]|run <id>]",
1262 "AutomationManagerUnavailable": "Automation manager is not available in this session.",
1263 "AutomationListFailed": "Could not list automations: {error}",
1264 "AutomationActionFailed": "Could not {action} automation {id}: {error}",
1265 "AutomationEmpty": "No scheduled automations. Use the `automation` tool to create one.",
1266 "AutomationListHeading": "Scheduled automations",
1267 "AutomationNoun": "Automation",
1268 "AutomationStatusLabel": "status",
1269 "AutomationStatusActive": "active",
1270 "AutomationStatusPaused": "paused",
1271 "AutomationRunStatusQueued": "queued",
1272 "AutomationRunStatusRunning": "running",
1273 "AutomationRunStatusCompleted": "completed",
1274 "AutomationRunStatusFailed": "failed",
1275 "AutomationRunStatusCanceled": "canceled",
1276 "AutomationActionInspect": "inspect",
1277 "AutomationActionPause": "pause",
1278 "AutomationActionResume": "resume",
1279 "AutomationActionDelete": "delete",
1280 "AutomationActionRun": "run",
1281 "AutomationActionPaused": "paused",
1282 "AutomationActionResumed": "resumed",
1283 "AutomationNextLabel": "next",
1284 "AutomationNameLabel": "name",
1285 "AutomationPromptLabel": "prompt",
1286 "AutomationCwdLabel": "cwd",
1287 "AutomationModeLabel": "mode",
1288 "AutomationAllowShellLabel": "allow_shell",
1289 "AutomationTrustModeLabel": "trust_mode",
1290 "AutomationAutoApproveLabel": "auto_approve",
1291 "AutomationRruleLabel": "rrule",
1292 "AutomationDeliveryLabel": "delivery",
1293 "AutomationLastLabel": "last",
1294 "AutomationRecentRunsLabel": "recent runs",
1295 "AutomationNoRuns": "no recorded runs",
1296 "AutomationRunsUnavailable": "runs unavailable",
1297 "AutomationTaskLabel": "task",
1298 "AutomationMutationReceipt": "{name} — {action} ({status_label}: {status})",
1299 "AutomationRunEnqueued": "Automation {id} run enqueued: {status} (task {task})",
1300 "AutomationDeletePreview": "Deletion is not armed. Nothing was deleted.\nAutomation: {id} ({name})\nRecorded runs: {run_count}\nTo delete the definition and run history, run:\n{command}",
1301 "AutomationDeleteConfirmationStale": "Deletion confirmation no longer matches automation {id}; nothing was deleted. Review the current state with {command}.",
1302 "AutomationDeleted": "Deleted automation {id} ({name}). Recorded runs deleted: {run_count}."
1303 }
1304
1304 lines JSON