claude-code-workflow 6.3.20 → 6.3.22
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/ccw/dist/core/routes/discovery-routes.d.ts.map +1 -1
- package/ccw/dist/core/routes/discovery-routes.js +88 -26
- package/ccw/dist/core/routes/discovery-routes.js.map +1 -1
- package/ccw/src/core/routes/discovery-routes.ts +94 -26
- package/ccw/src/templates/dashboard-js/api.js +1 -1
- package/ccw/src/templates/dashboard-js/components/cli-status.js +7 -7
- package/ccw/src/templates/dashboard-js/components/hook-manager.js +2 -2
- package/ccw/src/templates/dashboard-js/components/index-manager.js +2 -2
- package/ccw/src/templates/dashboard-js/components/mcp-manager.js +16 -16
- package/ccw/src/templates/dashboard-js/components/storage-manager.js +2 -2
- package/ccw/src/templates/dashboard-js/components/task-queue-sidebar.js +1 -1
- package/ccw/src/templates/dashboard-js/views/cli-manager.js +1 -1
- package/ccw/src/templates/dashboard-js/views/codexlens-manager.js +2 -2
- package/ccw/src/templates/dashboard-js/views/memory.js +1 -1
- package/ccw/src/templates/dashboard-js/views/prompt-history.js +1 -1
- package/codex-lens/src/codexlens/storage/__pycache__/index_tree.cpython-312.pyc +0 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery-routes.d.ts","sourceRoot":"","sources":["../../../src/core/routes/discovery-routes.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"discovery-routes.d.ts","sourceRoot":"","sources":["../../../src/core/routes/discovery-routes.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AA4T/C,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAgU/E"}
|
|
@@ -53,12 +53,29 @@ function readDiscoveryIndex(discoveriesDir) {
|
|
|
53
53
|
if (existsSync(statePath)) {
|
|
54
54
|
try {
|
|
55
55
|
const state = JSON.parse(readFileSync(statePath, 'utf8'));
|
|
56
|
+
// Extract perspectives - handle both old and new formats
|
|
57
|
+
let perspectives = [];
|
|
58
|
+
if (state.perspectives && Array.isArray(state.perspectives)) {
|
|
59
|
+
// New format: string array or old format: object array
|
|
60
|
+
if (state.perspectives.length > 0 && typeof state.perspectives[0] === 'object') {
|
|
61
|
+
perspectives = state.perspectives.map((p) => p.name || p.perspective || '');
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
perspectives = state.perspectives;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
else if (state.metadata?.perspectives) {
|
|
68
|
+
// Legacy format
|
|
69
|
+
perspectives = state.metadata.perspectives;
|
|
70
|
+
}
|
|
71
|
+
// Extract created_at - handle both formats
|
|
72
|
+
const created_at = state.created_at || state.metadata?.created_at;
|
|
56
73
|
discoveries.push({
|
|
57
74
|
discovery_id: entry.name,
|
|
58
75
|
target_pattern: state.target_pattern,
|
|
59
|
-
perspectives
|
|
60
|
-
created_at
|
|
61
|
-
completed_at: state.completed_at
|
|
76
|
+
perspectives,
|
|
77
|
+
created_at,
|
|
78
|
+
completed_at: state.completed_at || state.updated_at
|
|
62
79
|
});
|
|
63
80
|
}
|
|
64
81
|
catch {
|
|
@@ -102,29 +119,68 @@ function readDiscoveryProgress(discoveriesDir, discoveryId) {
|
|
|
102
119
|
if (existsSync(statePath)) {
|
|
103
120
|
try {
|
|
104
121
|
const state = JSON.parse(readFileSync(statePath, 'utf8'));
|
|
105
|
-
//
|
|
122
|
+
// Check if perspectives is an array
|
|
106
123
|
if (state.perspectives && Array.isArray(state.perspectives)) {
|
|
107
|
-
|
|
108
|
-
const
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
124
|
+
// Detect format: object array (old) vs string array (new)
|
|
125
|
+
const isObjectArray = state.perspectives.length > 0 && typeof state.perspectives[0] === 'object';
|
|
126
|
+
if (isObjectArray) {
|
|
127
|
+
// Old merged schema: perspectives is array of objects with status
|
|
128
|
+
const completed = state.perspectives.filter((p) => p.status === 'completed').length;
|
|
129
|
+
const total = state.perspectives.length;
|
|
130
|
+
return {
|
|
131
|
+
discovery_id: discoveryId,
|
|
132
|
+
phase: state.phase,
|
|
133
|
+
last_update: state.updated_at || state.created_at,
|
|
134
|
+
progress: {
|
|
135
|
+
perspective_analysis: {
|
|
136
|
+
total,
|
|
137
|
+
completed,
|
|
138
|
+
in_progress: state.perspectives.filter((p) => p.status === 'in_progress').length,
|
|
139
|
+
percent_complete: total > 0 ? Math.round((completed / total) * 100) : 0
|
|
140
|
+
},
|
|
141
|
+
external_research: state.external_research || { enabled: false, completed: false },
|
|
142
|
+
aggregation: { completed: state.phase === 'aggregation' || state.phase === 'complete' },
|
|
143
|
+
issue_generation: { completed: state.phase === 'complete', issues_count: state.results?.issues_generated || 0 }
|
|
119
144
|
},
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
145
|
+
agent_status: state.perspectives
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
else {
|
|
149
|
+
// New schema: perspectives is string array, status in perspectives_completed/perspectives_failed
|
|
150
|
+
const total = state.perspectives.length;
|
|
151
|
+
const completedList = state.perspectives_completed || [];
|
|
152
|
+
const failedList = state.perspectives_failed || [];
|
|
153
|
+
const completed = completedList.length;
|
|
154
|
+
const failed = failedList.length;
|
|
155
|
+
const inProgress = total - completed - failed;
|
|
156
|
+
return {
|
|
157
|
+
discovery_id: discoveryId,
|
|
158
|
+
phase: state.phase,
|
|
159
|
+
last_update: state.updated_at || state.created_at,
|
|
160
|
+
progress: {
|
|
161
|
+
perspective_analysis: {
|
|
162
|
+
total,
|
|
163
|
+
completed,
|
|
164
|
+
failed,
|
|
165
|
+
in_progress: inProgress,
|
|
166
|
+
percent_complete: total > 0 ? Math.round(((completed + failed) / total) * 100) : 0
|
|
167
|
+
},
|
|
168
|
+
external_research: state.external_research || { enabled: false, completed: false },
|
|
169
|
+
aggregation: { completed: state.phase === 'aggregation' || state.phase === 'complete' },
|
|
170
|
+
issue_generation: {
|
|
171
|
+
completed: state.phase === 'complete',
|
|
172
|
+
issues_count: state.results?.issues_generated || state.issues_generated || 0
|
|
173
|
+
}
|
|
174
|
+
},
|
|
175
|
+
// Convert string array to object array for UI compatibility
|
|
176
|
+
agent_status: state.perspectives.map((p) => ({
|
|
177
|
+
name: p,
|
|
178
|
+
status: completedList.includes(p) ? 'completed' : (failedList.includes(p) ? 'failed' : 'pending')
|
|
179
|
+
}))
|
|
180
|
+
};
|
|
181
|
+
}
|
|
126
182
|
}
|
|
127
|
-
//
|
|
183
|
+
// Legacy schema: metadata.perspectives (backward compat)
|
|
128
184
|
if (state.metadata?.perspectives) {
|
|
129
185
|
return {
|
|
130
186
|
discovery_id: discoveryId,
|
|
@@ -273,12 +329,18 @@ export async function handleDiscoveryRoutes(ctx) {
|
|
|
273
329
|
const enrichedDiscoveries = index.discoveries.map((d) => {
|
|
274
330
|
const state = readDiscoveryState(discoveriesDir, d.discovery_id);
|
|
275
331
|
const progress = readDiscoveryProgress(discoveriesDir, d.discovery_id);
|
|
332
|
+
// Extract statistics - handle both old and new formats
|
|
333
|
+
// New format: stats in state.results object
|
|
334
|
+
// Old format: stats directly in state
|
|
335
|
+
const total_findings = state?.results?.total_findings ?? state?.total_findings ?? 0;
|
|
336
|
+
const issues_generated = state?.results?.issues_generated ?? state?.issues_generated ?? 0;
|
|
337
|
+
const priority_distribution = state?.results?.priority_distribution ?? state?.priority_distribution ?? {};
|
|
276
338
|
return {
|
|
277
339
|
...d,
|
|
278
340
|
phase: state?.phase || 'unknown',
|
|
279
|
-
total_findings
|
|
280
|
-
issues_generated
|
|
281
|
-
priority_distribution
|
|
341
|
+
total_findings,
|
|
342
|
+
issues_generated,
|
|
343
|
+
priority_distribution,
|
|
282
344
|
progress: progress?.progress || null
|
|
283
345
|
};
|
|
284
346
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery-routes.js","sourceRoot":"","sources":["../../../src/core/routes/discovery-routes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"discovery-routes.js","sourceRoot":"","sources":["../../../src/core/routes/discovery-routes.ts"],"names":[],"mappings":"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"}
|
|
@@ -60,12 +60,30 @@ function readDiscoveryIndex(discoveriesDir: string): { discoveries: any[]; total
|
|
|
60
60
|
if (existsSync(statePath)) {
|
|
61
61
|
try {
|
|
62
62
|
const state = JSON.parse(readFileSync(statePath, 'utf8'));
|
|
63
|
+
|
|
64
|
+
// Extract perspectives - handle both old and new formats
|
|
65
|
+
let perspectives: string[] = [];
|
|
66
|
+
if (state.perspectives && Array.isArray(state.perspectives)) {
|
|
67
|
+
// New format: string array or old format: object array
|
|
68
|
+
if (state.perspectives.length > 0 && typeof state.perspectives[0] === 'object') {
|
|
69
|
+
perspectives = state.perspectives.map((p: any) => p.name || p.perspective || '');
|
|
70
|
+
} else {
|
|
71
|
+
perspectives = state.perspectives;
|
|
72
|
+
}
|
|
73
|
+
} else if (state.metadata?.perspectives) {
|
|
74
|
+
// Legacy format
|
|
75
|
+
perspectives = state.metadata.perspectives;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
// Extract created_at - handle both formats
|
|
79
|
+
const created_at = state.created_at || state.metadata?.created_at;
|
|
80
|
+
|
|
63
81
|
discoveries.push({
|
|
64
82
|
discovery_id: entry.name,
|
|
65
83
|
target_pattern: state.target_pattern,
|
|
66
|
-
perspectives
|
|
67
|
-
created_at
|
|
68
|
-
completed_at: state.completed_at
|
|
84
|
+
perspectives,
|
|
85
|
+
created_at,
|
|
86
|
+
completed_at: state.completed_at || state.updated_at
|
|
69
87
|
});
|
|
70
88
|
} catch {
|
|
71
89
|
// Skip invalid entries
|
|
@@ -110,29 +128,71 @@ function readDiscoveryProgress(discoveriesDir: string, discoveryId: string): any
|
|
|
110
128
|
if (existsSync(statePath)) {
|
|
111
129
|
try {
|
|
112
130
|
const state = JSON.parse(readFileSync(statePath, 'utf8'));
|
|
113
|
-
|
|
131
|
+
|
|
132
|
+
// Check if perspectives is an array
|
|
114
133
|
if (state.perspectives && Array.isArray(state.perspectives)) {
|
|
115
|
-
|
|
116
|
-
const
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
134
|
+
// Detect format: object array (old) vs string array (new)
|
|
135
|
+
const isObjectArray = state.perspectives.length > 0 && typeof state.perspectives[0] === 'object';
|
|
136
|
+
|
|
137
|
+
if (isObjectArray) {
|
|
138
|
+
// Old merged schema: perspectives is array of objects with status
|
|
139
|
+
const completed = state.perspectives.filter((p: any) => p.status === 'completed').length;
|
|
140
|
+
const total = state.perspectives.length;
|
|
141
|
+
return {
|
|
142
|
+
discovery_id: discoveryId,
|
|
143
|
+
phase: state.phase,
|
|
144
|
+
last_update: state.updated_at || state.created_at,
|
|
145
|
+
progress: {
|
|
146
|
+
perspective_analysis: {
|
|
147
|
+
total,
|
|
148
|
+
completed,
|
|
149
|
+
in_progress: state.perspectives.filter((p: any) => p.status === 'in_progress').length,
|
|
150
|
+
percent_complete: total > 0 ? Math.round((completed / total) * 100) : 0
|
|
151
|
+
},
|
|
152
|
+
external_research: state.external_research || { enabled: false, completed: false },
|
|
153
|
+
aggregation: { completed: state.phase === 'aggregation' || state.phase === 'complete' },
|
|
154
|
+
issue_generation: { completed: state.phase === 'complete', issues_count: state.results?.issues_generated || 0 }
|
|
127
155
|
},
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
156
|
+
agent_status: state.perspectives
|
|
157
|
+
};
|
|
158
|
+
} else {
|
|
159
|
+
// New schema: perspectives is string array, status in perspectives_completed/perspectives_failed
|
|
160
|
+
const total = state.perspectives.length;
|
|
161
|
+
const completedList = state.perspectives_completed || [];
|
|
162
|
+
const failedList = state.perspectives_failed || [];
|
|
163
|
+
const completed = completedList.length;
|
|
164
|
+
const failed = failedList.length;
|
|
165
|
+
const inProgress = total - completed - failed;
|
|
166
|
+
|
|
167
|
+
return {
|
|
168
|
+
discovery_id: discoveryId,
|
|
169
|
+
phase: state.phase,
|
|
170
|
+
last_update: state.updated_at || state.created_at,
|
|
171
|
+
progress: {
|
|
172
|
+
perspective_analysis: {
|
|
173
|
+
total,
|
|
174
|
+
completed,
|
|
175
|
+
failed,
|
|
176
|
+
in_progress: inProgress,
|
|
177
|
+
percent_complete: total > 0 ? Math.round(((completed + failed) / total) * 100) : 0
|
|
178
|
+
},
|
|
179
|
+
external_research: state.external_research || { enabled: false, completed: false },
|
|
180
|
+
aggregation: { completed: state.phase === 'aggregation' || state.phase === 'complete' },
|
|
181
|
+
issue_generation: {
|
|
182
|
+
completed: state.phase === 'complete',
|
|
183
|
+
issues_count: state.results?.issues_generated || state.issues_generated || 0
|
|
184
|
+
}
|
|
185
|
+
},
|
|
186
|
+
// Convert string array to object array for UI compatibility
|
|
187
|
+
agent_status: state.perspectives.map((p: string) => ({
|
|
188
|
+
name: p,
|
|
189
|
+
status: completedList.includes(p) ? 'completed' : (failedList.includes(p) ? 'failed' : 'pending')
|
|
190
|
+
}))
|
|
191
|
+
};
|
|
192
|
+
}
|
|
134
193
|
}
|
|
135
|
-
|
|
194
|
+
|
|
195
|
+
// Legacy schema: metadata.perspectives (backward compat)
|
|
136
196
|
if (state.metadata?.perspectives) {
|
|
137
197
|
return {
|
|
138
198
|
discovery_id: discoveryId,
|
|
@@ -294,12 +354,20 @@ export async function handleDiscoveryRoutes(ctx: RouteContext): Promise<boolean>
|
|
|
294
354
|
const enrichedDiscoveries = index.discoveries.map((d: any) => {
|
|
295
355
|
const state = readDiscoveryState(discoveriesDir, d.discovery_id);
|
|
296
356
|
const progress = readDiscoveryProgress(discoveriesDir, d.discovery_id);
|
|
357
|
+
|
|
358
|
+
// Extract statistics - handle both old and new formats
|
|
359
|
+
// New format: stats in state.results object
|
|
360
|
+
// Old format: stats directly in state
|
|
361
|
+
const total_findings = state?.results?.total_findings ?? state?.total_findings ?? 0;
|
|
362
|
+
const issues_generated = state?.results?.issues_generated ?? state?.issues_generated ?? 0;
|
|
363
|
+
const priority_distribution = state?.results?.priority_distribution ?? state?.priority_distribution ?? {};
|
|
364
|
+
|
|
297
365
|
return {
|
|
298
366
|
...d,
|
|
299
367
|
phase: state?.phase || 'unknown',
|
|
300
|
-
total_findings
|
|
301
|
-
issues_generated
|
|
302
|
-
priority_distribution
|
|
368
|
+
total_findings,
|
|
369
|
+
issues_generated,
|
|
370
|
+
priority_distribution,
|
|
303
371
|
progress: progress?.progress || null
|
|
304
372
|
};
|
|
305
373
|
});
|
|
@@ -174,7 +174,7 @@ function refreshRecentPaths() {
|
|
|
174
174
|
*/
|
|
175
175
|
async function removeRecentPathFromList(path) {
|
|
176
176
|
try {
|
|
177
|
-
const response = await
|
|
177
|
+
const response = await csrfFetch('/api/remove-recent-path', {
|
|
178
178
|
method: 'POST',
|
|
179
179
|
headers: { 'Content-Type': 'application/json' },
|
|
180
180
|
body: JSON.stringify({ path })
|
|
@@ -350,7 +350,7 @@ async function loadCliToolsConfig() {
|
|
|
350
350
|
*/
|
|
351
351
|
async function updateCliToolEnabled(tool, enabled) {
|
|
352
352
|
try {
|
|
353
|
-
const response = await
|
|
353
|
+
const response = await csrfFetch('/api/cli/tools-config/' + tool, {
|
|
354
354
|
method: 'PUT',
|
|
355
355
|
headers: { 'Content-Type': 'application/json' },
|
|
356
356
|
body: JSON.stringify({ enabled: enabled })
|
|
@@ -796,7 +796,7 @@ function setDefaultCliTool(tool) {
|
|
|
796
796
|
// Save to config
|
|
797
797
|
if (window.claudeCliToolsConfig) {
|
|
798
798
|
window.claudeCliToolsConfig.defaultTool = tool;
|
|
799
|
-
|
|
799
|
+
csrfFetch('/api/cli/tools-config', {
|
|
800
800
|
method: 'PUT',
|
|
801
801
|
headers: { 'Content-Type': 'application/json' },
|
|
802
802
|
body: JSON.stringify({ defaultTool: tool })
|
|
@@ -851,7 +851,7 @@ function getCacheInjectionMode() {
|
|
|
851
851
|
|
|
852
852
|
async function setCacheInjectionMode(mode) {
|
|
853
853
|
try {
|
|
854
|
-
const response = await
|
|
854
|
+
const response = await csrfFetch('/api/cli/tools-config/cache', {
|
|
855
855
|
method: 'PUT',
|
|
856
856
|
headers: { 'Content-Type': 'application/json' },
|
|
857
857
|
body: JSON.stringify({ injectionMode: mode })
|
|
@@ -1021,7 +1021,7 @@ async function startCodexLensInstall() {
|
|
|
1021
1021
|
}, 1500);
|
|
1022
1022
|
|
|
1023
1023
|
try {
|
|
1024
|
-
const response = await
|
|
1024
|
+
const response = await csrfFetch('/api/codexlens/bootstrap', {
|
|
1025
1025
|
method: 'POST',
|
|
1026
1026
|
headers: { 'Content-Type': 'application/json' },
|
|
1027
1027
|
body: JSON.stringify({})
|
|
@@ -1171,7 +1171,7 @@ async function startCodexLensUninstall() {
|
|
|
1171
1171
|
}, 500);
|
|
1172
1172
|
|
|
1173
1173
|
try {
|
|
1174
|
-
const response = await
|
|
1174
|
+
const response = await csrfFetch('/api/codexlens/uninstall', {
|
|
1175
1175
|
method: 'POST',
|
|
1176
1176
|
headers: { 'Content-Type': 'application/json' },
|
|
1177
1177
|
body: JSON.stringify({})
|
|
@@ -1257,7 +1257,7 @@ async function initCodexLensIndex() {
|
|
|
1257
1257
|
console.log('[CodexLens] Initializing index for path:', targetPath);
|
|
1258
1258
|
|
|
1259
1259
|
try {
|
|
1260
|
-
const response = await
|
|
1260
|
+
const response = await csrfFetch('/api/codexlens/init', {
|
|
1261
1261
|
method: 'POST',
|
|
1262
1262
|
headers: { 'Content-Type': 'application/json' },
|
|
1263
1263
|
body: JSON.stringify({ path: targetPath })
|
|
@@ -1424,7 +1424,7 @@ async function startSemanticInstall() {
|
|
|
1424
1424
|
}, 2000);
|
|
1425
1425
|
|
|
1426
1426
|
try {
|
|
1427
|
-
const response = await
|
|
1427
|
+
const response = await csrfFetch('/api/codexlens/semantic/install', {
|
|
1428
1428
|
method: 'POST',
|
|
1429
1429
|
headers: { 'Content-Type': 'application/json' },
|
|
1430
1430
|
body: JSON.stringify({})
|
|
@@ -449,7 +449,7 @@ async function saveHook(scope, event, hookData) {
|
|
|
449
449
|
// Convert to Claude Code format before saving
|
|
450
450
|
const convertedHookData = convertToClaudeCodeFormat(hookData);
|
|
451
451
|
|
|
452
|
-
const response = await
|
|
452
|
+
const response = await csrfFetch('/api/hooks', {
|
|
453
453
|
method: 'POST',
|
|
454
454
|
headers: { 'Content-Type': 'application/json' },
|
|
455
455
|
body: JSON.stringify({
|
|
@@ -478,7 +478,7 @@ async function saveHook(scope, event, hookData) {
|
|
|
478
478
|
|
|
479
479
|
async function removeHook(scope, event, hookIndex) {
|
|
480
480
|
try {
|
|
481
|
-
const response = await
|
|
481
|
+
const response = await csrfFetch('/api/hooks', {
|
|
482
482
|
method: 'DELETE',
|
|
483
483
|
headers: { 'Content-Type': 'application/json' },
|
|
484
484
|
body: JSON.stringify({
|
|
@@ -252,7 +252,7 @@ async function cleanIndexProject(projectId) {
|
|
|
252
252
|
|
|
253
253
|
// The project ID is the directory name in the index folder
|
|
254
254
|
// We need to construct the full path or use a clean API
|
|
255
|
-
const response = await
|
|
255
|
+
const response = await csrfFetch('/api/codexlens/clean', {
|
|
256
256
|
method: 'POST',
|
|
257
257
|
headers: { 'Content-Type': 'application/json' },
|
|
258
258
|
body: JSON.stringify({ projectId: projectId })
|
|
@@ -282,7 +282,7 @@ async function cleanAllIndexesConfirm() {
|
|
|
282
282
|
try {
|
|
283
283
|
showRefreshToast(t('index.cleaning') || 'Cleaning indexes...', 'info');
|
|
284
284
|
|
|
285
|
-
const response = await
|
|
285
|
+
const response = await csrfFetch('/api/codexlens/clean', {
|
|
286
286
|
method: 'POST',
|
|
287
287
|
headers: { 'Content-Type': 'application/json' },
|
|
288
288
|
body: JSON.stringify({ all: true })
|
|
@@ -91,7 +91,7 @@ function getCliMode() {
|
|
|
91
91
|
*/
|
|
92
92
|
async function addCodexMcpServer(serverName, serverConfig) {
|
|
93
93
|
try {
|
|
94
|
-
const response = await
|
|
94
|
+
const response = await csrfFetch('/api/codex-mcp-add', {
|
|
95
95
|
method: 'POST',
|
|
96
96
|
headers: { 'Content-Type': 'application/json' },
|
|
97
97
|
body: JSON.stringify({
|
|
@@ -123,7 +123,7 @@ async function addCodexMcpServer(serverName, serverConfig) {
|
|
|
123
123
|
*/
|
|
124
124
|
async function removeCodexMcpServer(serverName) {
|
|
125
125
|
try {
|
|
126
|
-
const response = await
|
|
126
|
+
const response = await csrfFetch('/api/codex-mcp-remove', {
|
|
127
127
|
method: 'POST',
|
|
128
128
|
headers: { 'Content-Type': 'application/json' },
|
|
129
129
|
body: JSON.stringify({ serverName })
|
|
@@ -152,7 +152,7 @@ async function removeCodexMcpServer(serverName) {
|
|
|
152
152
|
*/
|
|
153
153
|
async function toggleCodexMcpServer(serverName, enabled) {
|
|
154
154
|
try {
|
|
155
|
-
const response = await
|
|
155
|
+
const response = await csrfFetch('/api/codex-mcp-toggle', {
|
|
156
156
|
method: 'POST',
|
|
157
157
|
headers: { 'Content-Type': 'application/json' },
|
|
158
158
|
body: JSON.stringify({ serverName, enabled })
|
|
@@ -205,7 +205,7 @@ async function copyCodexServerToClaude(serverName, serverConfig) {
|
|
|
205
205
|
|
|
206
206
|
async function toggleMcpServer(serverName, enable) {
|
|
207
207
|
try {
|
|
208
|
-
const response = await
|
|
208
|
+
const response = await csrfFetch('/api/mcp-toggle', {
|
|
209
209
|
method: 'POST',
|
|
210
210
|
headers: { 'Content-Type': 'application/json' },
|
|
211
211
|
body: JSON.stringify({
|
|
@@ -239,7 +239,7 @@ async function copyMcpServerToProject(serverName, serverConfig, configType = nul
|
|
|
239
239
|
configType = preferredProjectConfigType;
|
|
240
240
|
}
|
|
241
241
|
|
|
242
|
-
const response = await
|
|
242
|
+
const response = await csrfFetch('/api/mcp-copy-server', {
|
|
243
243
|
method: 'POST',
|
|
244
244
|
headers: { 'Content-Type': 'application/json' },
|
|
245
245
|
body: JSON.stringify({
|
|
@@ -316,7 +316,7 @@ function showConfigTypeDialog() {
|
|
|
316
316
|
|
|
317
317
|
async function removeMcpServerFromProject(serverName) {
|
|
318
318
|
try {
|
|
319
|
-
const response = await
|
|
319
|
+
const response = await csrfFetch('/api/mcp-remove-server', {
|
|
320
320
|
method: 'POST',
|
|
321
321
|
headers: { 'Content-Type': 'application/json' },
|
|
322
322
|
body: JSON.stringify({
|
|
@@ -343,7 +343,7 @@ async function removeMcpServerFromProject(serverName) {
|
|
|
343
343
|
|
|
344
344
|
async function addGlobalMcpServer(serverName, serverConfig) {
|
|
345
345
|
try {
|
|
346
|
-
const response = await
|
|
346
|
+
const response = await csrfFetch('/api/mcp-add-global-server', {
|
|
347
347
|
method: 'POST',
|
|
348
348
|
headers: { 'Content-Type': 'application/json' },
|
|
349
349
|
body: JSON.stringify({
|
|
@@ -370,7 +370,7 @@ async function addGlobalMcpServer(serverName, serverConfig) {
|
|
|
370
370
|
|
|
371
371
|
async function removeGlobalMcpServer(serverName) {
|
|
372
372
|
try {
|
|
373
|
-
const response = await
|
|
373
|
+
const response = await csrfFetch('/api/mcp-remove-global-server', {
|
|
374
374
|
method: 'POST',
|
|
375
375
|
headers: { 'Content-Type': 'application/json' },
|
|
376
376
|
body: JSON.stringify({
|
|
@@ -809,7 +809,7 @@ async function submitMcpCreateFromJson() {
|
|
|
809
809
|
|
|
810
810
|
for (const [name, config] of Object.entries(servers)) {
|
|
811
811
|
try {
|
|
812
|
-
const response = await
|
|
812
|
+
const response = await csrfFetch('/api/mcp-copy-server', {
|
|
813
813
|
method: 'POST',
|
|
814
814
|
headers: { 'Content-Type': 'application/json' },
|
|
815
815
|
body: JSON.stringify({
|
|
@@ -854,7 +854,7 @@ async function createMcpServerWithConfig(name, serverConfig, scope = 'project')
|
|
|
854
854
|
|
|
855
855
|
if (scope === 'codex') {
|
|
856
856
|
// Create in Codex config.toml
|
|
857
|
-
response = await
|
|
857
|
+
response = await csrfFetch('/api/codex-mcp-add', {
|
|
858
858
|
method: 'POST',
|
|
859
859
|
headers: { 'Content-Type': 'application/json' },
|
|
860
860
|
body: JSON.stringify({
|
|
@@ -864,7 +864,7 @@ async function createMcpServerWithConfig(name, serverConfig, scope = 'project')
|
|
|
864
864
|
});
|
|
865
865
|
scopeLabel = 'Codex';
|
|
866
866
|
} else if (scope === 'global') {
|
|
867
|
-
response = await
|
|
867
|
+
response = await csrfFetch('/api/mcp-add-global-server', {
|
|
868
868
|
method: 'POST',
|
|
869
869
|
headers: { 'Content-Type': 'application/json' },
|
|
870
870
|
body: JSON.stringify({
|
|
@@ -874,7 +874,7 @@ async function createMcpServerWithConfig(name, serverConfig, scope = 'project')
|
|
|
874
874
|
});
|
|
875
875
|
scopeLabel = 'global';
|
|
876
876
|
} else {
|
|
877
|
-
response = await
|
|
877
|
+
response = await csrfFetch('/api/mcp-copy-server', {
|
|
878
878
|
method: 'POST',
|
|
879
879
|
headers: { 'Content-Type': 'application/json' },
|
|
880
880
|
body: JSON.stringify({
|
|
@@ -1006,7 +1006,7 @@ async function installCcwToolsMcp(scope = 'workspace') {
|
|
|
1006
1006
|
|
|
1007
1007
|
if (scope === 'global') {
|
|
1008
1008
|
// Install to global (~/.claude.json mcpServers)
|
|
1009
|
-
const response = await
|
|
1009
|
+
const response = await csrfFetch('/api/mcp-add-global-server', {
|
|
1010
1010
|
method: 'POST',
|
|
1011
1011
|
headers: { 'Content-Type': 'application/json' },
|
|
1012
1012
|
body: JSON.stringify({
|
|
@@ -1028,7 +1028,7 @@ async function installCcwToolsMcp(scope = 'workspace') {
|
|
|
1028
1028
|
} else {
|
|
1029
1029
|
// Install to workspace (use preferredProjectConfigType)
|
|
1030
1030
|
const configType = preferredProjectConfigType;
|
|
1031
|
-
const response = await
|
|
1031
|
+
const response = await csrfFetch('/api/mcp-copy-server', {
|
|
1032
1032
|
method: 'POST',
|
|
1033
1033
|
headers: { 'Content-Type': 'application/json' },
|
|
1034
1034
|
body: JSON.stringify({
|
|
@@ -1074,7 +1074,7 @@ async function updateCcwToolsMcp(scope = 'workspace') {
|
|
|
1074
1074
|
|
|
1075
1075
|
if (scope === 'global') {
|
|
1076
1076
|
// Update global (~/.claude.json mcpServers)
|
|
1077
|
-
const response = await
|
|
1077
|
+
const response = await csrfFetch('/api/mcp-add-global-server', {
|
|
1078
1078
|
method: 'POST',
|
|
1079
1079
|
headers: { 'Content-Type': 'application/json' },
|
|
1080
1080
|
body: JSON.stringify({
|
|
@@ -1096,7 +1096,7 @@ async function updateCcwToolsMcp(scope = 'workspace') {
|
|
|
1096
1096
|
} else {
|
|
1097
1097
|
// Update workspace (use preferredProjectConfigType)
|
|
1098
1098
|
const configType = preferredProjectConfigType;
|
|
1099
|
-
const response = await
|
|
1099
|
+
const response = await csrfFetch('/api/mcp-copy-server', {
|
|
1100
1100
|
method: 'POST',
|
|
1101
1101
|
headers: { 'Content-Type': 'application/json' },
|
|
1102
1102
|
body: JSON.stringify({
|
|
@@ -415,7 +415,7 @@ async function cleanProjectStorage(projectId) {
|
|
|
415
415
|
}
|
|
416
416
|
|
|
417
417
|
try {
|
|
418
|
-
const res = await
|
|
418
|
+
const res = await csrfFetch('/api/storage/clean', {
|
|
419
419
|
method: 'POST',
|
|
420
420
|
headers: { 'Content-Type': 'application/json' },
|
|
421
421
|
body: JSON.stringify({ projectId })
|
|
@@ -451,7 +451,7 @@ async function cleanAllStorageConfirm() {
|
|
|
451
451
|
}
|
|
452
452
|
|
|
453
453
|
try {
|
|
454
|
-
const res = await
|
|
454
|
+
const res = await csrfFetch('/api/storage/clean', {
|
|
455
455
|
method: 'POST',
|
|
456
456
|
headers: { 'Content-Type': 'application/json' },
|
|
457
457
|
body: JSON.stringify({ all: true })
|
|
@@ -568,7 +568,7 @@ async function executeSidebarUpdateTask(taskId) {
|
|
|
568
568
|
}
|
|
569
569
|
|
|
570
570
|
try {
|
|
571
|
-
const response = await
|
|
571
|
+
const response = await csrfFetch('/api/update-claude-md', {
|
|
572
572
|
method: 'POST',
|
|
573
573
|
headers: { 'Content-Type': 'application/json' },
|
|
574
574
|
body: JSON.stringify({
|
|
@@ -2752,7 +2752,7 @@ async function installSemanticDeps() {
|
|
|
2752
2752
|
'<div class="text-sm text-muted-foreground animate-pulse">' + t('codexlens.installingDeps') + '</div>';
|
|
2753
2753
|
|
|
2754
2754
|
try {
|
|
2755
|
-
var response = await
|
|
2755
|
+
var response = await csrfFetch('/api/codexlens/semantic/install', { method: 'POST' });
|
|
2756
2756
|
var result = await response.json();
|
|
2757
2757
|
|
|
2758
2758
|
if (result.success) {
|
|
@@ -3613,7 +3613,7 @@ async function initCodexLensIndex(indexType, embeddingModel, embeddingBackend, m
|
|
|
3613
3613
|
// Install semantic dependencies first
|
|
3614
3614
|
showRefreshToast(t('codexlens.installingDeps') || 'Installing semantic dependencies...', 'info');
|
|
3615
3615
|
try {
|
|
3616
|
-
var installResponse = await
|
|
3616
|
+
var installResponse = await csrfFetch('/api/codexlens/semantic/install', { method: 'POST' });
|
|
3617
3617
|
var installResult = await installResponse.json();
|
|
3618
3618
|
|
|
3619
3619
|
if (!installResult.success) {
|
|
@@ -5383,7 +5383,7 @@ function initCodexLensManagerPageEvents(currentConfig) {
|
|
|
5383
5383
|
saveBtn.disabled = true;
|
|
5384
5384
|
saveBtn.innerHTML = '<span class="animate-pulse">' + t('common.saving') + '</span>';
|
|
5385
5385
|
try {
|
|
5386
|
-
var response = await
|
|
5386
|
+
var response = await csrfFetch('/api/codexlens/config', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ index_dir: newIndexDir }) });
|
|
5387
5387
|
var result = await response.json();
|
|
5388
5388
|
if (result.success) { showRefreshToast(t('codexlens.configSaved'), 'success'); renderCodexLensManager(); }
|
|
5389
5389
|
else { showRefreshToast(t('common.saveFailed') + ': ' + result.error, 'error'); }
|
|
@@ -1114,7 +1114,7 @@ async function deleteInsight(insightId) {
|
|
|
1114
1114
|
if (!confirm(t('memory.confirmDeleteInsight'))) return;
|
|
1115
1115
|
|
|
1116
1116
|
try {
|
|
1117
|
-
var response = await
|
|
1117
|
+
var response = await csrfFetch('/api/memory/insights/' + insightId, { method: 'DELETE' });
|
|
1118
1118
|
if (!response.ok) throw new Error('Failed to delete insight');
|
|
1119
1119
|
|
|
1120
1120
|
selectedInsight = null;
|
|
@@ -431,7 +431,7 @@ async function deletePromptInsight(insightId) {
|
|
|
431
431
|
if (!confirm(isZh() ? '确定要删除这条洞察记录吗?' : 'Are you sure you want to delete this insight?')) return;
|
|
432
432
|
|
|
433
433
|
try {
|
|
434
|
-
var response = await
|
|
434
|
+
var response = await csrfFetch('/api/memory/insights/' + insightId, { method: 'DELETE' });
|
|
435
435
|
if (!response.ok) throw new Error('Failed to delete insight');
|
|
436
436
|
|
|
437
437
|
selectedPromptInsight = null;
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "claude-code-workflow",
|
|
3
|
-
"version": "6.3.
|
|
3
|
+
"version": "6.3.22",
|
|
4
4
|
"description": "JSON-driven multi-agent development framework with intelligent CLI orchestration (Gemini/Qwen/Codex), context-first architecture, and automated workflow execution",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "ccw/src/index.js",
|