ccjk 8.1.7 → 8.1.9

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.
@@ -41,7 +41,7 @@ import './workflows.mjs';
41
41
  import './auto-updater.mjs';
42
42
  import './version-checker.mjs';
43
43
  import 'node:path';
44
- import '../shared/ccjk.BWFuYEZc.mjs';
44
+ import '../shared/ccjk.dCEiL1GV.mjs';
45
45
  import './installer2.mjs';
46
46
  import '../shared/ccjk.DcXM9drZ.mjs';
47
47
  import 'node:stream';
@@ -4,7 +4,7 @@ import { ensureI18nInitialized, i18n } from './index.mjs';
4
4
  import { ClaudeCodeConfigManager } from './claude-code-config-manager.mjs';
5
5
  import { a as addNumbersToChoices } from '../shared/ccjk.BFQ7yr5S.mjs';
6
6
  import { p as promptBoolean } from '../shared/ccjk.DHbrGcgg.mjs';
7
- import { v as validateApiKey } from '../shared/ccjk.BWFuYEZc.mjs';
7
+ import { v as validateApiKey } from '../shared/ccjk.dCEiL1GV.mjs';
8
8
  import 'node:fs';
9
9
  import 'node:process';
10
10
  import 'node:url';
@@ -8,7 +8,7 @@ import { setupCcrConfiguration } from './config3.mjs';
8
8
  import { i as isCcrInstalled, a as installCcr } from './init.mjs';
9
9
  import { r as readMcpConfig, f as fixWindowsMcpConfig, w as writeMcpConfig, b as backupMcpConfig, a as buildMcpServerConfig, m as mergeMcpServers } from './claude-config.mjs';
10
10
  import { m as mergeAndCleanPermissions, d as applyAiLanguageDirective, g as getExistingModelConfig, u as updateCustomModel, e as updateDefaultModel, f as getExistingApiConfig, p as promptApiConfigurationAction, h as configureApi, s as switchToOfficialLogin } from './config2.mjs';
11
- import { c as configureOutputStyle, a as modifyApiConfigPartially, v as validateApiKey, f as formatApiKeyDisplay } from '../shared/ccjk.BWFuYEZc.mjs';
11
+ import { c as configureOutputStyle, a as modifyApiConfigPartially, v as validateApiKey, f as formatApiKeyDisplay } from '../shared/ccjk.dCEiL1GV.mjs';
12
12
  import { g as getPlatform, k as isWindows } from './platform.mjs';
13
13
  import { a as addNumbersToChoices } from '../shared/ccjk.BFQ7yr5S.mjs';
14
14
  import { existsSync, readFileSync } from 'node:fs';
@@ -19,7 +19,7 @@ import { r as resolveCodeType } from '../shared/ccjk.SIo9I8q3.mjs';
19
19
  import { exists } from './fs-operations.mjs';
20
20
  import { readJsonConfig, writeJsonConfig } from './json-config.mjs';
21
21
  import { p as promptApiConfigurationAction, i as ensureClaudeDir, f as getExistingApiConfig, s as switchToOfficialLogin, b as backupExistingConfig, c as copyConfigFiles, d as applyAiLanguageDirective, h as configureApi } from './config2.mjs';
22
- import { a as modifyApiConfigPartially, b as configureApiCompletely, n as needsMigration, m as migrateSettingsForTokenRetrieval, d as displayMigrationResult, p as promptMigration, s as selectAndInstallWorkflows, c as configureOutputStyle, f as formatApiKeyDisplay } from '../shared/ccjk.BWFuYEZc.mjs';
22
+ import { a as modifyApiConfigPartially, b as configureApiCompletely, n as needsMigration, m as migrateSettingsForTokenRetrieval, d as displayMigrationResult, p as promptMigration, s as selectAndInstallWorkflows, c as configureOutputStyle, f as formatApiKeyDisplay } from '../shared/ccjk.dCEiL1GV.mjs';
23
23
  import { h as handleExitPromptError, a as handleGeneralError } from '../shared/ccjk.DvIrK0wz.mjs';
24
24
  import { getInstallationStatus, installClaudeCode } from './installer2.mjs';
25
25
  import { a as addNumbersToChoices } from '../shared/ccjk.BFQ7yr5S.mjs';
@@ -1,4 +1,4 @@
1
- const version = "8.1.7";
1
+ const version = "8.1.9";
2
2
  const homepage = "https://github.com/miounet11/ccjk";
3
3
 
4
4
  export { homepage, version };
@@ -6,7 +6,7 @@ import { i18n } from './index.mjs';
6
6
  import { a as displayBanner } from '../shared/ccjk.BpHTUkb8.mjs';
7
7
  import { readZcfConfig, updateZcfConfig } from './ccjk-config.mjs';
8
8
  import { r as runCodexUpdate } from './codex.mjs';
9
- import { n as needsMigration, m as migrateSettingsForTokenRetrieval, d as displayMigrationResult, p as promptMigration, u as updatePromptOnly, s as selectAndInstallWorkflows } from '../shared/ccjk.BWFuYEZc.mjs';
9
+ import { n as needsMigration, m as migrateSettingsForTokenRetrieval, d as displayMigrationResult, p as promptMigration, u as updatePromptOnly, s as selectAndInstallWorkflows } from '../shared/ccjk.dCEiL1GV.mjs';
10
10
  import { h as handleExitPromptError, a as handleGeneralError } from '../shared/ccjk.DvIrK0wz.mjs';
11
11
  import { resolveAiOutputLanguage } from './prompts.mjs';
12
12
  import { checkClaudeCodeVersionAndPrompt } from './version-checker.mjs';
@@ -2,7 +2,7 @@ import ansis from 'ansis';
2
2
  import inquirer from 'inquirer';
3
3
  import { CLAUDE_DIR, SETTINGS_FILE } from '../chunks/constants.mjs';
4
4
  import { ensureI18nInitialized, i18n } from '../chunks/index.mjs';
5
- import { f as getExistingApiConfig, h as configureApi, s as switchToOfficialLogin, b as backupExistingConfig, d as applyAiLanguageDirective } from '../chunks/config2.mjs';
5
+ import { m as mergeAndCleanPermissions, f as getExistingApiConfig, h as configureApi, s as switchToOfficialLogin, b as backupExistingConfig, d as applyAiLanguageDirective } from '../chunks/config2.mjs';
6
6
  import { fileURLToPath } from 'node:url';
7
7
  import { join, dirname } from 'pathe';
8
8
  import { updateZcfConfig } from '../chunks/ccjk-config.mjs';
@@ -69,13 +69,53 @@ async function copyOutputStyles(selectedStyles, lang) {
69
69
  }
70
70
  }
71
71
  function setGlobalDefaultOutputStyle(styleId) {
72
+ const templatePermissions = getTemplatePermissions();
72
73
  const existingSettings = readJsonConfig(SETTINGS_FILE) || {};
74
+ const cleanedPermissions = mergeAndCleanPermissions(
75
+ templatePermissions,
76
+ existingSettings.permissions?.allow
77
+ );
73
78
  const updatedSettings = {
74
79
  ...existingSettings,
75
- outputStyle: styleId
80
+ outputStyle: styleId,
81
+ // Ensure clean permissions
82
+ permissions: {
83
+ allow: cleanedPermissions
84
+ }
76
85
  };
86
+ if (updatedSettings.plansDirectory === null) {
87
+ delete updatedSettings.plansDirectory;
88
+ }
77
89
  writeJsonConfig(SETTINGS_FILE, updatedSettings);
78
90
  }
91
+ function getTemplatePermissions() {
92
+ try {
93
+ const { fileURLToPath: fileURLToPath2 } = require("node:url");
94
+ const { dirname: dirname2, join: join2 } = require("pathe");
95
+ const { readFileSync } = require("fs");
96
+ const currentFilePath = fileURLToPath2(import.meta.url);
97
+ const distDir = dirname2(dirname2(currentFilePath));
98
+ const rootDir = dirname2(distDir);
99
+ const templatePath = join2(rootDir, "templates", "claude-code", "common", "settings.json");
100
+ if (require("fs").existsSync(templatePath)) {
101
+ const template = JSON.parse(readFileSync(templatePath, "utf-8"));
102
+ return template.permissions?.allow || [];
103
+ }
104
+ } catch (error) {
105
+ }
106
+ return [
107
+ "AllowEdit",
108
+ "AllowWrite",
109
+ "AllowRead",
110
+ "AllowExec",
111
+ "AllowCreateProcess",
112
+ "AllowKillProcess",
113
+ "AllowNetworkAccess",
114
+ "AllowFileSystemAccess",
115
+ "AllowShellAccess",
116
+ "AllowHttpAccess"
117
+ ];
118
+ }
79
119
  function hasLegacyPersonalityFiles() {
80
120
  return LEGACY_FILES.some((filename) => exists(join(CLAUDE_DIR, filename)));
81
121
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ccjk",
3
3
  "type": "module",
4
- "version": "8.1.7",
4
+ "version": "8.1.9",
5
5
  "packageManager": "pnpm@10.17.1",
6
6
  "description": "Ultimate AI Development Tool - Code Tool Abstraction Layer with 83% Token Savings - Now with Cloud Sync, Hot-Reload Skills, Multi-Agent Orchestration, and Full Claude Code CLI 2.1+ Compatibility",
7
7
  "author": {