@benbenwu/zcf 3.6.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +193 -0
  3. package/bin/zcf.mjs +2 -0
  4. package/dist/chunks/api-providers.mjs +137 -0
  5. package/dist/chunks/claude-code-config-manager.mjs +731 -0
  6. package/dist/chunks/claude-code-incremental-manager.mjs +601 -0
  7. package/dist/chunks/codex-config-switch.mjs +394 -0
  8. package/dist/chunks/codex-provider-manager.mjs +197 -0
  9. package/dist/chunks/codex-uninstaller.mjs +422 -0
  10. package/dist/chunks/commands.mjs +118 -0
  11. package/dist/chunks/features.mjs +632 -0
  12. package/dist/chunks/simple-config.mjs +7904 -0
  13. package/dist/cli.d.mts +1 -0
  14. package/dist/cli.d.ts +1 -0
  15. package/dist/cli.mjs +2013 -0
  16. package/dist/i18n/locales/en/api.json +53 -0
  17. package/dist/i18n/locales/en/ccr.json +65 -0
  18. package/dist/i18n/locales/en/cli.json +55 -0
  19. package/dist/i18n/locales/en/codex.json +123 -0
  20. package/dist/i18n/locales/en/cometix.json +29 -0
  21. package/dist/i18n/locales/en/common.json +20 -0
  22. package/dist/i18n/locales/en/configuration.json +85 -0
  23. package/dist/i18n/locales/en/errors.json +26 -0
  24. package/dist/i18n/locales/en/installation.json +80 -0
  25. package/dist/i18n/locales/en/language.json +19 -0
  26. package/dist/i18n/locales/en/mcp.json +24 -0
  27. package/dist/i18n/locales/en/menu.json +51 -0
  28. package/dist/i18n/locales/en/multi-config.json +79 -0
  29. package/dist/i18n/locales/en/tools.json +15 -0
  30. package/dist/i18n/locales/en/uninstall.json +56 -0
  31. package/dist/i18n/locales/en/updater.json +25 -0
  32. package/dist/i18n/locales/en/workflow.json +23 -0
  33. package/dist/i18n/locales/zh-CN/api.json +53 -0
  34. package/dist/i18n/locales/zh-CN/ccr.json +65 -0
  35. package/dist/i18n/locales/zh-CN/cli.json +55 -0
  36. package/dist/i18n/locales/zh-CN/codex.json +123 -0
  37. package/dist/i18n/locales/zh-CN/cometix.json +29 -0
  38. package/dist/i18n/locales/zh-CN/common.json +20 -0
  39. package/dist/i18n/locales/zh-CN/configuration.json +85 -0
  40. package/dist/i18n/locales/zh-CN/errors.json +26 -0
  41. package/dist/i18n/locales/zh-CN/installation.json +80 -0
  42. package/dist/i18n/locales/zh-CN/language.json +19 -0
  43. package/dist/i18n/locales/zh-CN/mcp.json +24 -0
  44. package/dist/i18n/locales/zh-CN/menu.json +51 -0
  45. package/dist/i18n/locales/zh-CN/multi-config.json +79 -0
  46. package/dist/i18n/locales/zh-CN/tools.json +15 -0
  47. package/dist/i18n/locales/zh-CN/uninstall.json +56 -0
  48. package/dist/i18n/locales/zh-CN/updater.json +25 -0
  49. package/dist/i18n/locales/zh-CN/workflow.json +23 -0
  50. package/dist/index.d.mts +324 -0
  51. package/dist/index.d.ts +324 -0
  52. package/dist/index.mjs +19 -0
  53. package/dist/shared/zcf.DGjQxTq_.mjs +34 -0
  54. package/package.json +117 -0
  55. package/templates/CLAUDE.md +221 -0
  56. package/templates/claude-code/CLAUDE.md +250 -0
  57. package/templates/claude-code/common/settings.json +48 -0
  58. package/templates/claude-code/en/workflow/bmad/commands/bmad-init.md +275 -0
  59. package/templates/claude-code/en/workflow/common/agents/get-current-datetime.md +29 -0
  60. package/templates/claude-code/en/workflow/common/agents/init-architect.md +114 -0
  61. package/templates/claude-code/en/workflow/common/commands/init-project.md +53 -0
  62. package/templates/claude-code/en/workflow/plan/agents/planner.md +116 -0
  63. package/templates/claude-code/en/workflow/plan/agents/ui-ux-designer.md +91 -0
  64. package/templates/claude-code/en/workflow/plan/commands/feat.md +105 -0
  65. package/templates/claude-code/zh-CN/workflow/bmad/commands/bmad-init.md +275 -0
  66. package/templates/claude-code/zh-CN/workflow/common/agents/get-current-datetime.md +29 -0
  67. package/templates/claude-code/zh-CN/workflow/common/agents/init-architect.md +114 -0
  68. package/templates/claude-code/zh-CN/workflow/common/commands/init-project.md +53 -0
  69. package/templates/claude-code/zh-CN/workflow/plan/agents/planner.md +116 -0
  70. package/templates/claude-code/zh-CN/workflow/plan/agents/ui-ux-designer.md +91 -0
  71. package/templates/claude-code/zh-CN/workflow/plan/commands/feat.md +105 -0
  72. package/templates/codex/common/config.toml +0 -0
  73. package/templates/common/output-styles/en/engineer-professional.md +88 -0
  74. package/templates/common/output-styles/en/laowang-engineer.md +127 -0
  75. package/templates/common/output-styles/en/leibus-engineer.md +251 -0
  76. package/templates/common/output-styles/en/nekomata-engineer.md +120 -0
  77. package/templates/common/output-styles/en/ojousama-engineer.md +121 -0
  78. package/templates/common/output-styles/en/rem-engineer.md +173 -0
  79. package/templates/common/output-styles/zh-CN/engineer-professional.md +89 -0
  80. package/templates/common/output-styles/zh-CN/laowang-engineer.md +127 -0
  81. package/templates/common/output-styles/zh-CN/leibus-engineer.md +251 -0
  82. package/templates/common/output-styles/zh-CN/nekomata-engineer.md +120 -0
  83. package/templates/common/output-styles/zh-CN/ojousama-engineer.md +121 -0
  84. package/templates/common/output-styles/zh-CN/rem-engineer.md +179 -0
  85. package/templates/common/workflow/git/en/git-cleanBranches.md +102 -0
  86. package/templates/common/workflow/git/en/git-commit.md +205 -0
  87. package/templates/common/workflow/git/en/git-rollback.md +90 -0
  88. package/templates/common/workflow/git/en/git-worktree.md +276 -0
  89. package/templates/common/workflow/git/zh-CN/git-cleanBranches.md +102 -0
  90. package/templates/common/workflow/git/zh-CN/git-commit.md +205 -0
  91. package/templates/common/workflow/git/zh-CN/git-rollback.md +90 -0
  92. package/templates/common/workflow/git/zh-CN/git-worktree.md +276 -0
  93. package/templates/common/workflow/sixStep/en/workflow.md +251 -0
  94. package/templates/common/workflow/sixStep/zh-CN/workflow.md +215 -0
@@ -0,0 +1,53 @@
1
+ {
2
+ "apiConfigAuthType": "Auth Type",
3
+ "apiConfigKey": "Key",
4
+ "apiConfigSuccess": "API configured",
5
+ "apiConfigUrl": "URL",
6
+ "modelConfigSuccess": "API models configured",
7
+ "primaryModel": "Primary model",
8
+ "fastModel": "Fast model",
9
+ "apiKeyDesc": "For API keys from Anthropic Console",
10
+ "apiKeyValidation.example": "Example format: sk-abcdef123456_789xyz",
11
+ "authTokenDesc": "For tokens obtained via OAuth or browser login",
12
+ "configureApi": "Select API authentication method",
13
+ "enterApiKey": "Enter API Key",
14
+ "enterApiUrl": "Enter API URL",
15
+ "enterAuthToken": "Enter Auth Token",
16
+ "enterNewApiKey": "Enter new API Key (current: {key})",
17
+ "enterNewApiUrl": "Enter new API URL (current: {url})",
18
+ "existingApiConfig": "Existing API configuration detected:",
19
+ "invalidKeyFormat": "Invalid key format",
20
+ "invalidUrl": "Invalid URL",
21
+ "keepExistingConfig": "Keep existing configuration",
22
+ "keyRequired": "Key is required",
23
+ "modificationSaved": "Configuration saved",
24
+ "modifyAllConfig": "Modify all configuration",
25
+ "modifyApiKey": "Modify API Key",
26
+ "modifyApiUrl": "Modify API URL",
27
+ "modifyAuthType": "Modify auth type",
28
+ "modifyPartialConfig": "Modify partial configuration",
29
+
30
+ "selectApiMode": "Select API configuration mode",
31
+ "selectCustomConfigAction": "Select custom configuration action",
32
+ "selectModifyItems": "Select items to modify",
33
+ "selectNewAuthType": "Select new auth type (current: {type})",
34
+ "skipApi": "Skip (configure manually later)",
35
+ "customApiConfig": "Custom API configuration",
36
+ "urlRequired": "URL is required",
37
+ "useApiKey": "Use API Key (Key authentication)",
38
+ "useAuthToken": "Use Auth Token (OAuth authentication)",
39
+ "useCcrProxy": "Use CCR Proxy",
40
+ "useOfficialLogin": "Use Official Login",
41
+ "officialLoginConfigured": "Switched to official login mode",
42
+ "officialLoginFailed": "Failed to switch to official login mode",
43
+ "apiModeOfficial": "Use Official Login (No API Configuration)",
44
+ "apiModeCustom": "Custom API Configuration",
45
+ "apiModeCcr": "Use CCR Proxy",
46
+ "apiModeSwitch": "Switch API Configuration",
47
+ "apiModeSkip": "Skip",
48
+ "apiModePrompt": "Select API configuration mode",
49
+ "selectApiProvider": "Select API Provider",
50
+ "customProvider": "Custom Configuration",
51
+ "providerSelected": "Provider selected: {{name}}",
52
+ "enterProviderApiKey": "Enter API Key for {{provider}}"
53
+ }
@@ -0,0 +1,65 @@
1
+ {
2
+ "advancedConfigTip": "You can use ccr ui command for advanced configuration",
3
+ "backupCcrConfig": "Backing up existing CCR configuration...",
4
+ "ccrAlreadyInstalled": "Claude Code Router is already installed",
5
+ "ccrBackupFailed": "Failed to backup CCR configuration",
6
+ "ccrBackupSuccess": "CCR configuration backed up to: {path}",
7
+ "ccrCommandFailed": "Failed to execute CCR command",
8
+ "ccrConfigFailed": "Failed to configure CCR",
9
+ "ccrConfigSuccess": "CCR configuration saved",
10
+ "ccrInstallFailed": "Failed to install Claude Code Router",
11
+ "ccrInstallSuccess": "Claude Code Router installation successful",
12
+ "ccrMenuDescriptions.checkStatus": "Check CCR service running status",
13
+ "ccrMenuDescriptions.initCcr": "Install and configure CCR",
14
+ "ccrMenuDescriptions.restart": "Restart CCR service",
15
+ "ccrMenuDescriptions.start": "Start CCR service",
16
+ "ccrMenuDescriptions.startUi": "Open Web interface to manage CCR",
17
+ "ccrMenuDescriptions.stop": "Stop CCR service",
18
+ "ccrMenuOptions.back": "Back to Main Menu",
19
+ "ccrMenuOptions.checkStatus": "Check CCR Status",
20
+ "ccrMenuOptions.initCcr": "Initialize CCR",
21
+ "ccrMenuOptions.restart": "Restart CCR",
22
+ "ccrMenuOptions.start": "Start CCR",
23
+ "ccrMenuOptions.startUi": "Start CCR UI",
24
+ "ccrMenuOptions.stop": "Stop CCR",
25
+ "ccrMenuTitle": "CCR - Claude Code Router Management",
26
+ "ccrNotConfigured": "CCR is not configured. Please initialize CCR first.",
27
+ "ccrRestartFailed": "Failed to restart CCR service",
28
+ "ccrRestartSuccess": "CCR service restarted",
29
+ "ccrRestarted": "CCR restarted",
30
+ "ccrSetupComplete": "CCR setup completed",
31
+ "ccrStarted": "CCR started",
32
+ "ccrStatusTitle": "CCR Status Information:",
33
+ "ccrStopped": "CCR stopped",
34
+ "ccrUiApiKey": "CCR UI Login Key",
35
+ "ccrUiApiKeyHint": "Use this key to login to CCR UI interface",
36
+ "ccrUiStarted": "CCR UI started",
37
+ "checkingCcrStatus": "Checking CCR status...",
38
+ "configTips": "Configuration Tips",
39
+ "detectedIncorrectPackage": "Detected incorrect package claude-code-router, uninstalling...",
40
+ "enterApiKeyForProvider": "Enter API key for {provider}:",
41
+ "errorStartingCcrService": "Error starting CCR service",
42
+ "existingCcrConfig": "Found existing CCR configuration",
43
+ "failedToStartCcrService": "Failed to start CCR service",
44
+ "failedToUninstallIncorrectPackage": "Failed to uninstall incorrect package, continuing installation",
45
+ "fetchingPresets": "Fetching provider presets...",
46
+ "installingCcr": "Installing Claude Code Router...",
47
+ "keepingExistingConfig": "Keeping existing configuration",
48
+ "manualConfigTip": "After manually modifying the config file, please execute ccr restart to apply changes",
49
+ "noPresetsAvailable": "No presets available",
50
+ "overwriteCcrConfig": "Do you want to backup existing CCR configuration and reconfigure?",
51
+ "pleaseInitFirst": "Please select option 1 to initialize CCR.",
52
+ "proxyConfigSuccess": "Proxy settings configured",
53
+ "restartingCcr": "Restarting CCR...",
54
+ "selectCcrPreset": "Select a provider preset:",
55
+ "selectDefaultModelForProvider": "Select default model for {provider}:",
56
+ "skipConfiguring": "Skipping preset configuration, creating empty configuration framework",
57
+ "skipOption": "Skip, configure manually in CCR",
58
+ "startingCcr": "Starting CCR...",
59
+ "startingCcrUi": "Starting CCR UI...",
60
+ "stoppingCcr": "Stopping CCR...",
61
+ "uninstalledIncorrectPackage": "Successfully uninstalled incorrect package",
62
+ "useClaudeCommand": "Please use the claude command to start Claude Code (not ccr code)",
63
+ "apiKeyApprovalSuccess": "CCR API key approval status managed successfully",
64
+ "apiKeyApprovalFailed": "Failed to manage CCR API key approval status"
65
+ }
@@ -0,0 +1,55 @@
1
+ {
2
+ "help.commands": "Commands",
3
+ "help.shortcuts": "Shortcuts",
4
+ "help.options": "Options",
5
+ "help.examples": "Examples",
6
+ "help.nonInteractiveMode": "Non-interactive mode (for CI/CD)",
7
+ "help.commandDescriptions.showInteractiveMenuDefault": "Show interactive menu (default)",
8
+ "help.commandDescriptions.initClaudeCodeConfig": "Initialize Claude Code configuration",
9
+ "help.commandDescriptions.updateWorkflowFiles": "Update workflow-related md files",
10
+ "help.commandDescriptions.configureCcrProxy": "Configure Claude Code Router for model proxy",
11
+ "help.commandDescriptions.claudeCodeUsageAnalysis": "Claude Code usage statistics analysis",
12
+ "help.commandDescriptions.uninstallConfigurations": "Remove Claude Code configurations and tools",
13
+ "help.commandDescriptions.checkUpdateVersions": "Check and update to latest versions",
14
+ "help.shortcutDescriptions.quickInit": "Quick init",
15
+ "help.shortcutDescriptions.quickUpdate": "Quick update",
16
+ "help.shortcutDescriptions.quickCheckUpdates": "Quick check updates",
17
+ "help.optionDescriptions.displayLanguage": "Display language",
18
+ "help.optionDescriptions.configurationLanguage": "Configuration language",
19
+ "help.optionDescriptions.forceOverwrite": "Force overwrite",
20
+ "help.optionDescriptions.displayHelp": "Display help",
21
+ "help.optionDescriptions.displayVersion": "Display version",
22
+ "help.optionDescriptions.skipAllPrompts": "Skip all prompts",
23
+ "help.optionDescriptions.apiType": "API type",
24
+ "help.optionDescriptions.apiKey": "API key (for both types)",
25
+ "help.optionDescriptions.customApiUrl": "Custom API URL",
26
+ "help.optionDescriptions.apiModel": "Primary API model",
27
+ "help.optionDescriptions.apiHaikuModel": "Default Haiku model",
28
+ "help.optionDescriptions.apiSonnetModel": "Default Sonnet model",
29
+ "help.optionDescriptions.apiOpusModel": "Default Opus model",
30
+ "help.optionDescriptions.aiOutputLanguage": "AI output language",
31
+ "help.optionDescriptions.setAllLanguageParams": "Set all language params",
32
+ "help.optionDescriptions.configHandling": "Config handling",
33
+ "help.optionDescriptions.mcpServices": "MCP services",
34
+ "help.optionDescriptions.workflows": "Workflows",
35
+ "help.optionDescriptions.outputStyles": "Output styles",
36
+ "help.optionDescriptions.defaultOutputStyle": "Default output style",
37
+ "help.optionDescriptions.installStatuslineTool": "Install statusline tool",
38
+ "help.optionDescriptions.codeToolType": "Code tool type",
39
+ "help.exampleDescriptions.showInteractiveMenu": "Show interactive menu",
40
+ "help.exampleDescriptions.runFullInitialization": "Run full initialization",
41
+ "help.exampleDescriptions.updateWorkflowFilesOnly": "Update workflow-related md files only",
42
+ "help.exampleDescriptions.configureClaudeCodeRouter": "Configure Claude Code Router",
43
+ "help.exampleDescriptions.runClaudeCodeUsageAnalysis": "Run Claude Code usage analysis",
44
+ "help.exampleDescriptions.uninstallConfigurations": "Uninstall configurations and tools",
45
+ "help.exampleDescriptions.checkAndUpdateTools": "Check and update tools",
46
+ "help.exampleDescriptions.checkClaudeCode": "Check and update Claude Code tools",
47
+ "help.exampleDescriptions.checkCodex": "Check and update Codex tools",
48
+ "help.exampleDescriptions.nonInteractiveModeCicd": "Non-interactive mode (CI/CD)",
49
+ "banner.subtitle": "One-click configuration tool for Claude Code",
50
+ "banner.updateSubtitle": "Update configuration for Claude Code",
51
+ "help.defaults.dailyUsage": "Daily usage (default)",
52
+ "help.defaults.interactiveUninstall": "Interactive uninstall menu",
53
+ "help.defaults.updateTools": "Update Claude Code, CCR and CCometixLine",
54
+ "help.defaults.prefix": "default:"
55
+ }
@@ -0,0 +1,123 @@
1
+ {
2
+ "usingSudo": "⚠️ Detected non-root Linux user. Using sudo for Codex CLI installation (password prompt may appear).",
3
+ "alreadyInstalled": "⚠️ Codex CLI already installed, skipping installation",
4
+ "updatingCli": "🔄 Updating Codex CLI...",
5
+ "updateSuccess": "✔ Codex CLI updated",
6
+ "detectedHomebrew": "Detected Codex installed via Homebrew, will update using Homebrew",
7
+ "detectedNpm": "Detected Codex installed via npm, will update using npm",
8
+ "unknownInstallMethod": "⚠️ Unable to detect Codex installation method",
9
+ "fallingBackToNpm": "Falling back to npm update method",
10
+ "workflowInstall": "✔ Codex workflow skills installed",
11
+ "backupSuccess": "✔ Backup created at {{path}}",
12
+ "apiModePrompt": "Select API configuration mode",
13
+ "apiModeOfficial": "Use official login (no API configuration)",
14
+ "apiModeCustom": "Custom API configuration",
15
+ "officialConfigured": "✔ Codex API reset to official login mode",
16
+ "providerNamePrompt": "Provider name (letters, numbers, . _ -)",
17
+ "providerNameRequired": "Provider name is required",
18
+ "providerNameInvalid": "Provider name may only contain letters, numbers, dot, underscore or hyphen",
19
+ "providerBaseUrlPrompt": "Base URL",
20
+ "providerBaseUrlRequired": "Base URL is required",
21
+ "providerProtocolPrompt": "Select protocol to use",
22
+ "protocolResponses": "Responses (Recommended, new-generation response API with state management)",
23
+ "providerApiKeyPrompt": "API key value",
24
+ "providerApiKeyRequired": "API key is required",
25
+ "addProviderPrompt": "Add another provider?",
26
+ "selectDefaultProviderPrompt": "Select default provider",
27
+ "noProvidersConfigured": "⚠️ No providers configured, skipping Codex API configuration",
28
+ "apiConfigured": "✔ Codex API configured",
29
+ "noMcpConfigured": "⚠️ No MCP services configured",
30
+ "mcpConfigured": "✔ Codex MCP services configured",
31
+ "uninstallModePrompt": "Select Codex uninstall mode",
32
+ "uninstallModeComplete": "Complete uninstall (remove all Codex related files)",
33
+ "uninstallModeCustom": "Custom uninstall (choose items to remove)",
34
+ "uninstallItemConfig": "Configuration file (config.toml)",
35
+ "uninstallItemAuth": "Authentication file (auth.json)",
36
+ "uninstallItemSystemPrompt": "System prompt file (AGENTS.md)",
37
+ "uninstallItemWorkflow": "Workflow skills (skills/zcf-*)",
38
+ "uninstallItemCliPackage": "CLI package (@openai/codex)",
39
+ "uninstallItemApiConfig": "API configuration (only remove API settings from config.toml)",
40
+ "uninstallItemMcpConfig": "MCP configuration (only remove MCP settings from config.toml)",
41
+ "uninstallItemBackups": "Backup directory (backup/)",
42
+ "customUninstallPrompt": "Select items to remove (use spacebar to select/deselect, enter to confirm)",
43
+ "uninstallPrompt": "This will remove Codex configuration created by ZCF. Continue?",
44
+ "uninstallCancelled": "⚠️ Codex uninstall cancelled",
45
+ "uninstallSuccess": "✔ Codex configuration removed",
46
+ "configNotFound": "Configuration file not found",
47
+ "authNotFound": "Authentication file not found",
48
+ "systemPromptNotFound": "System prompt file not found",
49
+ "workflowNotFound": "Workflow skills not found",
50
+ "packageNotFound": "Codex CLI package not installed",
51
+ "backupNotFound": "Backup directory not found",
52
+ "removedItem": "Moved to trash: {{item}}",
53
+ "removedConfig": "Removed configuration: {{config}}",
54
+ "apiConfigRemoved": "API configuration (model_provider and model_providers blocks)",
55
+ "mcpConfigRemoved": "MCP configuration (mcp_servers blocks)",
56
+ "setupComplete": "✔ Codex setup complete",
57
+ "systemPromptPrompt": "Please select system prompt style",
58
+ "workflowSelectionPrompt": "Select workflow types to install (multi-select)",
59
+ "providerDuplicatePrompt": "Provider name '{{name}}' already exists in {{source}}, overwrite it?",
60
+ "existingConfig": "existing configuration",
61
+ "currentSession": "current session",
62
+ "providerDuplicateSkipped": "Skipped duplicate provider configuration",
63
+ "providerSwitchSuccess": "✔ Switched to provider: {{provider}}",
64
+ "providerNotFound": "❌ Provider '{{provider}}' not found",
65
+ "listProvidersTitle": "Available providers:",
66
+ "currentProvider": "Current provider: {{provider}}",
67
+ "noProvidersAvailable": "⚠️ No providers available",
68
+ "configSwitchMode": "Switch API Config",
69
+ "incrementalManagementTitle": "📋 Incremental Configuration Management",
70
+ "currentProviderCount": "Current provider count: {{count}}",
71
+ "currentDefaultProvider": "Current default provider: {{provider}}",
72
+ "selectAction": "Select action",
73
+ "addProvider": "Add provider",
74
+ "editProvider": "Edit provider",
75
+ "copyProvider": "Copy provider",
76
+ "deleteProvider": "Delete provider",
77
+ "selectProviderToEdit": "Select provider to edit",
78
+ "selectProviderToCopy": "Select provider to copy",
79
+ "copyingProvider": "Copying provider: {{name}}",
80
+ "providerCopied": "✔ Successfully copied provider: {{name}}",
81
+ "providerCopyFailed": "❌ Failed to copy provider: {{error}}",
82
+ "providerModelPrompt": "Model name (e.g. gpt-5.2)",
83
+ "providerModelRequired": "Model name is required",
84
+ "selectProvidersToDelete": "Select providers to delete (multiple)",
85
+ "selectAtLeastOne": "Please select at least one provider",
86
+ "cannotDeleteAll": "Cannot delete all providers, at least one must remain",
87
+ "confirmDeleteProviders": "Confirm deletion of the following providers: {{providers}}?",
88
+ "providerAdded": "✔ Successfully added provider: {{name}}",
89
+ "providerAddFailed": "❌ Failed to add provider: {{error}}",
90
+ "providerUpdated": "✔ Successfully updated provider: {{name}}",
91
+ "providerUpdateFailed": "❌ Failed to update provider: {{error}}",
92
+ "providersDeleted": "✔ Successfully deleted {{count}} providers",
93
+ "providersDeleteFailed": "❌ Failed to delete providers: {{error}}",
94
+ "newDefaultProvider": "ℹ️ New default provider: {{provider}}",
95
+ "noExistingProviders": "⚠️ No existing provider configurations",
96
+ "useOfficialLogin": "Use Official Login",
97
+ "apiConfigSwitchPrompt": "Select API configuration to switch to",
98
+ "agentsFileNotFound": "AGENTS.md file not found, please configure system prompt first",
99
+ "currentVersion": "Current version: v{version}",
100
+ "latestVersion": "Latest version: v{version}",
101
+ "confirmUpdate": "Update Codex to the latest version?",
102
+ "updateSkipped": "Update skipped",
103
+ "updating": "Updating Codex...",
104
+ "updateFailed": "Codex update failed",
105
+ "autoUpdating": "Auto-updating Codex...",
106
+ "upToDate": "Codex is up to date (v{version})",
107
+ "notInstalled": "Codex is not installed",
108
+ "cannotCheckVersion": "Cannot check latest version",
109
+ "checkFailed": "Version check failed",
110
+ "providerManager.noConfig": "No existing configuration found",
111
+ "providerManager.backupFailed": "Failed to create backup",
112
+ "providerManager.providerExists": "Provider with ID \"{{id}}\" already exists",
113
+ "providerManager.providerNotFound": "Provider with ID \"{{id}}\" not found",
114
+ "providerManager.noProvidersSpecified": "No providers specified for deletion",
115
+ "providerManager.providersNotFound": "Some providers not found: {{providers}}",
116
+ "providerManager.cannotDeleteAll": "Cannot delete all providers. At least one provider must remain.",
117
+ "providerManager.providerIdRequired": "Provider ID is required",
118
+ "providerManager.providerNameRequired": "Provider name is required",
119
+ "providerManager.baseUrlRequired": "Base URL is required",
120
+ "providerManager.wireApiInvalid": "Wire API must be \"responses\"",
121
+ "providerManager.unknownError": "Unknown error",
122
+ "envKeyMigrationComplete": "✔ env_key to temp_env_key migration completed"
123
+ }
@@ -0,0 +1,29 @@
1
+ {
2
+ "cometixAlreadyInstalled": "CCometixLine is already installed",
3
+ "cometixInstallFailed": "Failed to install CCometixLine",
4
+ "cometixInstallSuccess": "CCometixLine installed successfully",
5
+ "cometixMenuDescriptions.customConfig": "Enter TUI configuration mode for CCometixLine",
6
+ "cometixMenuDescriptions.installOrUpdate": "Install or update CCometixLine using npm",
7
+ "cometixMenuDescriptions.printConfig": "Display current CCometixLine configuration",
8
+ "cometixMenuOptions.back": "Back to main menu",
9
+ "cometixMenuOptions.customConfig": "Custom config",
10
+ "cometixMenuOptions.installOrUpdate": "Install/update",
11
+ "cometixMenuOptions.printConfig": "Print config",
12
+ "cometixMenuTitle": "CCometixLine - High-performance Claude Code statusline tool with Git integration and real-time usage tracking",
13
+ "cometixSkipped": "CCometixLine installation skipped",
14
+ "commandNotFound": "ccline command not found. Please install CCometixLine first.",
15
+ "enteringTuiConfig": "Entering CCometixLine TUI configuration mode...",
16
+ "installCometixPrompt": "Install CCometixLine - High-performance Claude Code status bar tool built with Rust, integrating Git info and real-time usage tracking?",
17
+ "installUpdateFailed": "Failed to install/update CCometixLine",
18
+ "installUpdateSuccess": "CCometixLine install/update completed",
19
+ "installingCometix": "Installing CCometixLine...",
20
+ "installingOrUpdating": "Installing/updating CCometixLine...",
21
+ "printConfigFailed": "Failed to print configuration",
22
+ "printingConfig": "Printing CCometixLine configuration...",
23
+ "statusLineAlreadyConfigured": "Claude Code statusLine already configured",
24
+ "statusLineConfigFailed": "Failed to configure statusLine",
25
+ "statusLineConfigured": "Claude Code statusLine configured",
26
+ "statusLineManualConfig": "Please manually add statusLine configuration to Claude Code settings",
27
+ "tuiConfigFailed": "Failed to run TUI configuration",
28
+ "tuiConfigSuccess": "TUI configuration completed successfully"
29
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "multiSelectHint": " (Space to select, a to select all, i to invert, Enter to confirm)",
3
+ "skip": "Skip",
4
+ "emptyToSkip": " (press Enter with empty content to skip)",
5
+ "cancelled": "Operation cancelled",
6
+ "error": "Error",
7
+ "complete": "🎉 Setup complete! Use 'claude' command to start.",
8
+ "none": "None",
9
+ "enterChoice": "Enter your choice and press enter (case-insensitive)",
10
+ "invalidChoice": "Invalid choice. Please enter a valid option.",
11
+ "goodbye": "👋 Thanks for using ZCF! Goodbye!",
12
+ "returnToMenu": "Return to main menu?",
13
+ "back": "Back",
14
+ "operationFailed": "Operation failed",
15
+ "backupCreated": "📁 Configuration backup created: {{path}}",
16
+ "current": "current",
17
+ "claudeCode": "Claude Code",
18
+ "codex": "Codex",
19
+ "yes": "Yes"
20
+ }
@@ -0,0 +1,85 @@
1
+ {
2
+ "addedLanguageDirective": "Added language directive",
3
+ "aiLanguageConfigured": "AI output language configured",
4
+ "backupAndOverwrite": "Backup and overwrite all",
5
+ "backupSuccess": "All config files backed up to",
6
+ "cleanupLegacyFiles": "Clean up legacy configuration files?",
7
+ "configSuccess": "Config files copied to",
8
+ "configureAiLanguage": "Configure AI output language",
9
+ "configureOutputStyle": "Configure global AI output style",
10
+ "configureSystemPromptStyle": "Configure global AI system prompt style",
11
+ "customModelConfigured": "Custom model configuration completed",
12
+ "customModelOption": "Custom - Specify custom model names",
13
+ "customModelSkipped": "Custom model configuration skipped",
14
+ "currentLanguage": "Current language",
15
+ "currentModel": "Current model",
16
+ "defaultModelOption": "Default - Let Claude Code choose",
17
+ "defaultStyle": "Default style",
18
+ "enterHaikuModel": "Enter default Haiku model",
19
+ "enterSonnetModel": "Enter default Sonnet model",
20
+ "enterOpusModel": "Enter default Opus model",
21
+ "enterPrimaryModel": "Enter primary model name",
22
+ "envImportSuccess": "Environment variables imported",
23
+ "existingConfig": "Existing config detected. How to proceed?",
24
+ "existingLanguageConfig": "Existing AI output language configuration detected",
25
+ "existingModelConfig": "Existing model configuration detected",
26
+ "fixWindowsMcp": "Fix Windows MCP configuration?",
27
+ "importRecommendedEnv": "Import ZCF recommended environment variables",
28
+ "importRecommendedEnvDesc": "Privacy protection variables, MCP timeout settings, etc.",
29
+ "importRecommendedPermissions": "Import ZCF recommended permissions",
30
+ "importRecommendedPermissionsDesc": "Almost all permissions, reduce frequent permission requests, dangerous ops limited by rules",
31
+ "keepLanguage": "Keeping existing language configuration",
32
+ "keepModel": "Keeping existing model configuration",
33
+ "legacyFilesDetected": "Legacy personality configuration files detected",
34
+ "legacyFilesRemoved": "Legacy configuration files removed",
35
+ "mergeConfig": "Merge config",
36
+ "modelConfigured": "Default model configured",
37
+ "modifyLanguage": "Modify AI output language?",
38
+ "modifyModel": "Modify model configuration?",
39
+ "openSettingsJson": "Open settings.json for manual configuration",
40
+ "openSettingsJsonDesc": "Advanced user customization",
41
+ "openingSettingsJson": "Opening settings.json...",
42
+ "opusModelOption": "Opus - Only use opus, high token consumption, use with caution",
43
+ "sonnet1mModelOption": "Sonnet 1M - 1M context version",
44
+ "noOutputStyle": "No output style",
45
+ "noOutputStyleDesc": "Do not set any output style, use Claude Code default behavior",
46
+ "outputStyleCleared": "Output style settings cleared",
47
+ "outputStyleInstalled": "Output styles installed successfully",
48
+ "outputStyles.default.description": "Claude completes coding tasks efficiently and provides concise responses (Claude Code built-in)",
49
+ "outputStyles.default.name": "Default",
50
+ "outputStyles.engineer-professional.description": "Professional software engineer following SOLID, KISS, DRY, YAGNI principles",
51
+ "outputStyles.engineer-professional.name": "Engineer Professional",
52
+ "outputStyles.explanatory.description": "Claude explains its implementation choices and codebase patterns (Claude Code built-in)",
53
+ "outputStyles.explanatory.name": "Explanatory",
54
+ "outputStyles.laowang-engineer.description": "Laowang grumpy tech style, never tolerates code errors and non-standard code",
55
+ "outputStyles.laowang-engineer.name": "Laowang Grumpy Tech",
56
+ "outputStyles.learning.description": "Learn-by-doing mode where Claude pauses and asks you to write small pieces of code for hands-on practice (Claude Code built-in)",
57
+ "outputStyles.learning.name": "Learning",
58
+ "outputStyles.nekomata-engineer.description": "Professional catgirl engineer UFO Nya, combining rigorous engineering with cute catgirl traits",
59
+ "outputStyles.nekomata-engineer.name": "Nekomata Engineer",
60
+ "outputStyles.ojousama-engineer.description": "Tsundere blonde ojou-sama programmer Halley-chan, combining rigorous engineering excellence with tsundere ojou-sama traits",
61
+ "outputStyles.ojousama-engineer.name": "Ojou-sama Engineer",
62
+ "outputStyles.leibus-engineer.description": "Marketing genius engineer background, providing technical services with ultimate product thinking and rigorous engineering quality",
63
+ "outputStyles.leibus-engineer.name": "LeiBus Engineer",
64
+ "outputStyles.rem-engineer.description": "Loyal blue-haired maid programmer Rem, blending extreme gentle devotion with calm decisive execution",
65
+ "outputStyles.rem-engineer.name": "Rem Maid Engineer",
66
+ "permissionsImportSuccess": "Permissions imported",
67
+ "selectAtLeastOne": "Please select at least one output style",
68
+ "selectDefaultModel": "Select default model",
69
+ "selectDefaultOutputStyle": "Select global default output style",
70
+ "selectEnvPermissionOption": "Select configuration option",
71
+ "selectMemoryOption": "Select configuration option",
72
+ "selectOutputStyles": "Select output styles to install",
73
+ "selectedStyles": "Selected styles",
74
+ "singleConfigSaved": "Configuration {{name}} saved",
75
+ "singleConfigSaveFailed": "Failed to save configuration",
76
+ "updateDocsOnly": "Update workflow-related md files only with backup",
77
+ "updatingPrompts": "Updating Claude Code memory documents...",
78
+ "enterCustomModel": "Enter custom model name",
79
+ "systemPromptConfigured": "System prompt style configured",
80
+ "codexModelOptions.gpt51CodexMax": "GPT-5.1-Codex-Max - Codex-optimized flagship for deep and fast reasoning",
81
+ "codexModelOptions.gpt51CodexMini": "GPT-5.1-Codex-Mini - Optimized for codex. Cheaper, faster, but less capable",
82
+ "codexModelOptions.gpt52": "GPT-5.2 - Latest frontier model with improvements across knowledge, reasoning and coding (Recommended)",
83
+ "codexModelOptions.custom": "Custom - Specify custom model names",
84
+ "windowsMcpConfigFixed": "Windows MCP configuration fixed"
85
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "failedToRemoveFile": "Failed to remove file:",
3
+ "failedToSetOnboarding": "Failed to set onboarding completion flag:",
4
+ "failedToWriteMcpConfig": "Failed to write MCP config:",
5
+ "invalidConfigAction": "Invalid configAction value: {value}. Must be 'new', 'backup', 'merge', 'docs-only', or 'skip'",
6
+ "invalidApiType": "Invalid apiType value: {value}. Must be 'auth_token', 'api_key', 'ccr_proxy', or 'skip'",
7
+ "apiKeyRequiredForApiKey": "API key is required when apiType is \"api_key\"",
8
+ "apiKeyRequiredForAuthToken": "API key is required when apiType is \"auth_token\"",
9
+ "invalidMcpService": "Invalid MCP service: {service}. Available services: {validServices}",
10
+ "invalidOutputStyle": "Invalid output style: {style}. Available styles: {validStyles}",
11
+ "invalidDefaultOutputStyle": "Invalid default output style: {style}. Available styles: {validStyles}",
12
+ "invalidWorkflow": "Invalid workflow: {workflow}. Available workflows: {validWorkflows}",
13
+ "invalidModel": "Invalid model: {model}. Expected 'opus', 'sonnet', or 'sonnet[1m]'",
14
+ "invalidApiModel": "Invalid API model parameter: {value}",
15
+ "invalidModelParam": "Invalid model parameter {key}: {value}",
16
+ "invalidEnvConfig": "Invalid env configuration: expected object",
17
+ "invalidBaseUrl": "Invalid ANTHROPIC_BASE_URL: expected string",
18
+ "invalidApiKeyConfig": "Invalid ANTHROPIC_API_KEY: expected string",
19
+ "invalidAuthTokenConfig": "Invalid ANTHROPIC_AUTH_TOKEN: expected string",
20
+ "invalidPermissionsConfig": "Invalid permissions configuration: expected object",
21
+ "invalidPermissionsAllow": "Invalid permissions.allow: expected array",
22
+ "invalidCodeType": "Invalid code type: \"{value}\". Valid options are: {validOptions}. Using default: {defaultValue}.",
23
+ "invalidProvider": "Invalid provider: {provider}. Available providers: {validProviders}",
24
+ "generalError": "Error",
25
+ "stackTrace": "Stack"
26
+ }
@@ -0,0 +1,80 @@
1
+ {
2
+ "alreadyInstalled": "Claude Code is already installed",
3
+ "installFailed": "Failed to install Claude Code",
4
+ "installPrompt": "Claude Code not found. Install automatically?",
5
+ "installSuccess": "Claude Code installed successfully",
6
+ "installing": "Installing Claude Code...",
7
+ "usingSudo": "Detected non-root Linux user. Elevating with sudo for global installation (password prompt may appear).",
8
+ "termuxDetected": "Termux environment detected",
9
+ "termuxEnvironmentInfo": "Termux environment provides Node.js and npm through pkg manager",
10
+ "termuxInstallHint": "In Termux, please run first: pkg install nodejs or pkg install nodejs-lts",
11
+ "windowsDetected": "Windows detected, will configure compatible format",
12
+ "termuxPathInfo": "Termux environment path prefix: {path}",
13
+ "multipleInstallationsDetected": "Multiple Claude Code installations detected",
14
+ "chooseInstallationMethod": "Please choose the installation method to use:",
15
+ "chooseGlobal": "Use Global Installation (Recommended)",
16
+ "chooseLocal": "Use Local Installation (Project-specific)",
17
+ "globalInstallation": "Global Installation",
18
+ "localInstallation": "Local Installation",
19
+ "available": "available",
20
+ "removingLocalInstallation": "Removing local installation",
21
+ "localInstallationRemoved": "Local installation removed",
22
+ "usingLocalInstallation": "Using local installation",
23
+ "failedToRemoveLocalInstallation": "Failed to remove local installation",
24
+ "failedToSaveInstallationConfig": "Failed to save installation config",
25
+ "onlyLocalInstallationDetected": "Only local installation detected",
26
+ "notInstalled": "not installed",
27
+ "installingGlobalClaudeCode": "Installing global Claude Code",
28
+ "globalInstallationCompleted": "Global installation completed",
29
+ "wslDetected": "WSL environment detected ({distro})",
30
+ "wslDetectedGeneric": "WSL environment detected",
31
+ "wslPathInfo": "Configuration path: {path}",
32
+ "wslInstallSuccess": "Claude Code successfully installed in WSL environment",
33
+ "selectInstallMethod": "Please select installation method for {{codeType}}:",
34
+ "recommendedMethod": "Recommended",
35
+ "notRecommended": "Not Recommended",
36
+ "installMethodNpm": "npm",
37
+ "installMethodHomebrew": "homebrew",
38
+ "installMethodCurl": "curl",
39
+ "installMethodPowershell": "powershell",
40
+ "installMethodCmd": "cmd",
41
+ "installingWith": "Installing {{codeType}} using {{method}}...",
42
+ "installMethodSuccess": "Successfully installed using {{method}}",
43
+ "installMethodFailed": "Failed to install using {{method}}",
44
+ "tryAnotherMethod": "Installation failed. Try another method?",
45
+ "noMoreMethods": "No more installation methods available",
46
+ "detectedVersion": "Detected version {{version}}",
47
+ "uninstallingWith": "Uninstalling {{codeType}} using {{method}}...",
48
+ "uninstallSuccess": "Successfully uninstalled using {{method}}",
49
+ "uninstallFailed": "Failed to uninstall using {{method}}",
50
+ "manualUninstallRequired": "{{codeType}} requires manual uninstallation",
51
+ "binaryLocation": "Binary location: {{path}}",
52
+ "failedToLocateBinary": "Failed to locate {{command}} binary",
53
+ "verificationSuccess": "installation verified successfully",
54
+ "verificationFailed": "installation verification failed",
55
+ "symlinkCreated": "Symlink created at {{path}}",
56
+ "foundAtPath": "Found at: {{path}}",
57
+ "manualSymlinkHint": "You may need to manually add the tool to your PATH or create a symlink",
58
+ "duplicateInstallationsDetected": "⚠️ Multiple Claude Code installations detected",
59
+ "duplicateInstallationsWarning": "Having multiple installations may cause version confusion and update issues",
60
+ "currentActiveInstallation": "Current active installation",
61
+ "inactiveInstallations": "Inactive installations",
62
+ "installationSource": "Installation source",
63
+ "installationPath": "Path",
64
+ "installationVersion": "Version",
65
+ "sourceHomebrewCask": "Homebrew Cask",
66
+ "sourceNpm": "npm global",
67
+ "sourceNpmHomebrewNode": "npm (via Homebrew Node)",
68
+ "sourceCurl": "curl installation",
69
+ "sourceOther": "Other",
70
+ "recommendRemoveNpm": "Recommend removing npm installation to maintain single installation source",
71
+ "confirmRemoveDuplicate": "Remove redundant {source}?",
72
+ "removingDuplicateInstallation": "Removing redundant installation...",
73
+ "duplicateRemoved": "Redundant installation removed",
74
+ "duplicateRemovalFailed": "Failed to remove redundant installation",
75
+ "keepBothInstallations": "Keep both installations (not recommended)",
76
+ "duplicateWarningContinue": "Acknowledged duplicate installation risk, continue",
77
+ "versionMismatchWarning": "⚠️ Version mismatch: npm is {npmVersion}, Homebrew is {homebrewVersion}",
78
+ "activatingHomebrew": "Activating Homebrew installation...",
79
+ "autoRemovingNpm": "Silent mode: Auto-removing npm installation and keeping Homebrew..."
80
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "selectScriptLang": "Select ZCF display language",
3
+ "selectConfigLang": "Select Claude Code configuration language",
4
+ "selectAiOutputLang": "Select AI output language",
5
+ "aiOutputLangHint": "AI will respond to you in this language",
6
+ "enterCustomLanguage": "Enter custom language (e.g., Japanese, French, etc.)",
7
+ "languageChanged": "Language changed",
8
+ "configLangHint.zh-CN": "easier for Chinese users to customize",
9
+ "configLangHint.en": "lower token consumption",
10
+ "languageRequired": "Language is required",
11
+ "labels.custom": "Custom",
12
+ "currentConfigFound": "Current AI output language configuration",
13
+ "modifyConfigPrompt": "Would you like to modify the AI output language configuration?",
14
+ "currentTemplateLanguageFound": "Current template language configuration",
15
+ "modifyTemplateLanguagePrompt": "Would you like to modify the template language configuration?",
16
+ "usingFallbackTemplate": "Using interface language as template language?",
17
+ "currentSystemPromptFound": "Current system prompt style configuration",
18
+ "modifySystemPromptPrompt": "Would you like to modify the system prompt style configuration?"
19
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "configureMcp": "Configure MCP services?",
3
+ "mcpBackupSuccess": "Original MCP config backed up",
4
+ "mcpConfigSuccess": "MCP services configured",
5
+ "selectMcpServices": "Select MCP services to install",
6
+ "services.playwright.description": "Direct browser control for automation",
7
+ "services.playwright.name": "Playwright Browser Control",
8
+ "services.context7.description": "Query latest library documentation and code examples",
9
+ "services.context7.name": "Context7 Docs",
10
+ "services.open-websearch.description": "Web search using DuckDuckGo, Bing, and Brave search engines",
11
+ "services.open-websearch.name": "Open Web Search",
12
+ "services.exa.apiKeyPrompt": "Enter Exa API Key",
13
+ "services.exa.description": "Web search using Exa AI",
14
+ "services.exa.name": "Exa AI Search",
15
+ "services.mcp-deepwiki.description": "Query GitHub repository documentation and examples",
16
+ "services.mcp-deepwiki.name": "DeepWiki",
17
+ "services.spec-workflow.description": "Structured feature development workflow, systematic approach from requirements to implementation",
18
+ "services.spec-workflow.name": "Spec Workflow",
19
+ "services.serena.name": "Serena Assistant",
20
+ "services.serena.description": "Semantic code retrieval and editing akin to an IDE; extracts symbol-level entities and leverages relations to greatly improve token efficiency with coding agents",
21
+ "apiKeyApprovalFailed": "Failed to manage API key approval status",
22
+ "apiKeyPrompt": "Enter API Key",
23
+ "primaryApiKeySetFailed": "Failed to set primaryApiKey"
24
+ }