@tkpdx01/ccc 1.3.1 → 1.3.2

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tkpdx01/ccc",
3
- "version": "1.3.1",
3
+ "version": "1.3.2",
4
4
  "description": "Claude Code Settings Launcher - Manage multiple Claude Code profiles",
5
5
  "main": "index.js",
6
6
  "bin": {
@@ -12,7 +12,8 @@ import {
12
12
  deleteProfile,
13
13
  resolveProfile,
14
14
  getProfileCredentials,
15
- getClaudeSettingsTemplate
15
+ getClaudeSettingsTemplate,
16
+ ensureDisableNonessentialTraffic
16
17
  } from '../profiles.js';
17
18
 
18
19
  export function editCommand(program) {
@@ -95,6 +96,14 @@ export function editCommand(program) {
95
96
  currentProfile.env.ANTHROPIC_AUTH_TOKEN = apiKey;
96
97
  currentProfile.env.ANTHROPIC_BASE_URL = apiUrl;
97
98
 
99
+ // 确保主配置有 CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC 设置
100
+ ensureDisableNonessentialTraffic();
101
+
102
+ // 确保影子配置也有该设置
103
+ if (currentProfile.env.CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC !== '1') {
104
+ currentProfile.env.CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC = '1';
105
+ }
106
+
98
107
  // 如果重命名
99
108
  if (newName && newName !== profile) {
100
109
  const newPath = getProfilePath(newName);
package/src/profiles.js CHANGED
@@ -86,6 +86,29 @@ export function getClaudeSettingsTemplate() {
86
86
  return null;
87
87
  }
88
88
 
89
+ // 确保主配置中有 CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC 设置
90
+ // 如果没有则添加,并返回更新后的模板
91
+ export function ensureDisableNonessentialTraffic() {
92
+ const template = getClaudeSettingsTemplate();
93
+ if (!template) {
94
+ return null;
95
+ }
96
+
97
+ // 确保 env 对象存在
98
+ if (!template.env) {
99
+ template.env = {};
100
+ }
101
+
102
+ // 检查是否已有该设置
103
+ if (template.env.CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC !== '1') {
104
+ template.env.CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC = '1';
105
+ // 保存回主配置
106
+ fs.writeFileSync(CLAUDE_SETTINGS_PATH, JSON.stringify(template, null, 2));
107
+ }
108
+
109
+ return template;
110
+ }
111
+
89
112
  // 读取 profile 配置
90
113
  export function readProfile(name) {
91
114
  const profilePath = getProfilePath(name);
@@ -108,6 +131,9 @@ export function saveProfile(name, settings) {
108
131
 
109
132
  // 创建基于主配置的 profile(复制 ~/.claude/settings.json 并设置 env)
110
133
  export function createProfileFromTemplate(name, apiUrl, apiKey) {
134
+ // 先确保主配置有 CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC 设置
135
+ ensureDisableNonessentialTraffic();
136
+
111
137
  const template = getClaudeSettingsTemplate() || {};
112
138
 
113
139
  // 确保 env 对象存在
@@ -125,6 +151,9 @@ export function createProfileFromTemplate(name, apiUrl, apiKey) {
125
151
 
126
152
  // 同步主配置到 profile(保留 profile 的 API 凭证)
127
153
  export function syncProfileWithTemplate(name) {
154
+ // 先确保主配置有 CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC 设置
155
+ ensureDisableNonessentialTraffic();
156
+
128
157
  const template = getClaudeSettingsTemplate();
129
158
  if (!template) {
130
159
  return null;