agent-switchboard 0.4.5 → 0.4.7
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/README.md +6 -0
- package/dist/commands/distribution.js +16 -0
- package/dist/commands/distribution.js.map +1 -1
- package/dist/hooks/distribution.d.ts +1 -0
- package/dist/hooks/distribution.js +18 -4
- package/dist/hooks/distribution.js.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/library/distribute-bundle.d.ts +2 -0
- package/dist/library/distribute-bundle.js +24 -17
- package/dist/library/distribute-bundle.js.map +1 -1
- package/dist/library/distribute.d.ts +4 -0
- package/dist/library/distribute.js +19 -6
- package/dist/library/distribute.js.map +1 -1
- package/dist/marketplace/plugin-loader.js +31 -9
- package/dist/marketplace/plugin-loader.js.map +1 -1
- package/dist/mcp/distribution.d.ts +2 -0
- package/dist/mcp/distribution.js +14 -7
- package/dist/mcp/distribution.js.map +1 -1
- package/dist/rules/distribution.d.ts +2 -0
- package/dist/rules/distribution.js +34 -16
- package/dist/rules/distribution.js.map +1 -1
- package/dist/skills/distribution.d.ts +1 -0
- package/dist/skills/distribution.js +48 -34
- package/dist/skills/distribution.js.map +1 -1
- package/dist/subagents/distribution.js +16 -0
- package/dist/subagents/distribution.js.map +1 -1
- package/dist/sync/command.d.ts +8 -1
- package/dist/sync/command.js +192 -139
- package/dist/sync/command.js.map +1 -1
- package/dist/targets/builtin/opencode-legacy.d.ts +18 -0
- package/dist/targets/builtin/opencode-legacy.js +103 -0
- package/dist/targets/builtin/opencode-legacy.js.map +1 -0
- package/dist/targets/builtin/opencode.js +9 -11
- package/dist/targets/builtin/opencode.js.map +1 -1
- package/package.json +1 -1
package/dist/sync/command.js
CHANGED
|
@@ -13,11 +13,9 @@ import { distributeSkills } from '../skills/distribution.js';
|
|
|
13
13
|
import { distributeSubagents } from '../subagents/distribution.js';
|
|
14
14
|
import { initTargets } from '../targets/init.js';
|
|
15
15
|
import { filterInstalled, getTargetById, getTargetsForSection } from '../targets/registry.js';
|
|
16
|
-
import { printCompactDistributions, shortenPath, } from '../util/cli.js';
|
|
16
|
+
import { countDistributionResults, formatDistributionSummary, printCompactDistributions, shortenPath, } from '../util/cli.js';
|
|
17
17
|
export async function runSyncCommand(options) {
|
|
18
|
-
const { scope, updateSources = true } = options;
|
|
19
|
-
console.log(chalk.yellow('⚠ Sync overwrites agent config without diff.'));
|
|
20
|
-
console.log();
|
|
18
|
+
const { scope, updateSources = true, dryRun = false } = options;
|
|
21
19
|
if (updateSources) {
|
|
22
20
|
const remoteResults = updateRemoteSources(scope);
|
|
23
21
|
if (remoteResults.length > 0) {
|
|
@@ -40,9 +38,16 @@ export async function runSyncCommand(options) {
|
|
|
40
38
|
else if (scope?.profile) {
|
|
41
39
|
console.log(chalk.blue.bold(`── Profile: ${scope.profile} ──`));
|
|
42
40
|
}
|
|
43
|
-
|
|
41
|
+
if (dryRun) {
|
|
42
|
+
const result = await runSyncPhase({ scope, config, layers, dryRun: true });
|
|
43
|
+
console.log();
|
|
44
|
+
console.log(chalk.yellow('[dry-run] No files were modified.'));
|
|
45
|
+
return result.hasErrors;
|
|
46
|
+
}
|
|
47
|
+
const result = await runSyncPhase({ scope, config, layers });
|
|
48
|
+
return result.hasErrors;
|
|
44
49
|
}
|
|
45
|
-
export async function runSyncPhase({ scope, config, layers }) {
|
|
50
|
+
export async function runSyncPhase({ scope, config, layers, dryRun, showInventory = true, }) {
|
|
46
51
|
const writableConfig = scope?.project
|
|
47
52
|
? layers.project?.config
|
|
48
53
|
: scope?.profile
|
|
@@ -57,32 +62,8 @@ export async function runSyncPhase({ scope, config, layers }) {
|
|
|
57
62
|
const displayPluginRefs = scope?.project || scope?.profile
|
|
58
63
|
? (writableConfig?.plugins?.enabled ?? [])
|
|
59
64
|
: config.plugins.enabled;
|
|
60
|
-
const activeLayers = [];
|
|
61
|
-
if (layers.user.exists)
|
|
62
|
-
activeLayers.push(shortenPath(layers.user.path));
|
|
63
|
-
if (layers.profile?.exists)
|
|
64
|
-
activeLayers.push(shortenPath(layers.profile.path));
|
|
65
|
-
if (layers.project?.exists)
|
|
66
|
-
activeLayers.push(shortenPath(layers.project.path));
|
|
67
|
-
console.log(`${chalk.blue('Config:')} ${activeLayers.length > 0 ? chalk.dim(activeLayers.join(' + ')) : chalk.gray('no config files')}`);
|
|
68
|
-
const assumeInstalledSet = new Set(config.applications.assume_installed);
|
|
69
|
-
const appsLabel = config.applications.enabled.length > 0
|
|
70
|
-
? config.applications.enabled
|
|
71
|
-
.map((id) => {
|
|
72
|
-
const target = getTargetById(id);
|
|
73
|
-
if (target?.isInstalled?.() === false) {
|
|
74
|
-
if (assumeInstalledSet.has(id))
|
|
75
|
-
return chalk.yellow(`${id} (assumed installed)`);
|
|
76
|
-
return chalk.gray(`${id} (not installed)`);
|
|
77
|
-
}
|
|
78
|
-
return chalk.cyan(id);
|
|
79
|
-
})
|
|
80
|
-
.join(', ')
|
|
81
|
-
: chalk.gray('none configured');
|
|
82
|
-
console.log(`${chalk.blue('Apps:')} ${appsLabel}`);
|
|
83
|
-
console.log();
|
|
84
65
|
const sections = ['mcp', 'rules', 'commands', 'agents', 'skills', 'hooks'];
|
|
85
|
-
// Precompute per-section per-app effective configs
|
|
66
|
+
// Precompute per-section per-app effective configs (needed by both inventory and distribution)
|
|
86
67
|
const sectionAppConfigs = new Map();
|
|
87
68
|
for (const section of sections) {
|
|
88
69
|
const appMap = new Map();
|
|
@@ -91,113 +72,22 @@ export async function runSyncPhase({ scope, config, layers }) {
|
|
|
91
72
|
}
|
|
92
73
|
sectionAppConfigs.set(section, appMap);
|
|
93
74
|
}
|
|
75
|
+
const assumeInstalledSet = new Set(config.applications.assume_installed);
|
|
94
76
|
const cursorSkillsDeduped = config.applications.enabled.includes('claude-code') &&
|
|
95
77
|
(sectionAppConfigs.get('skills')?.get('claude-code')?.length ?? 0) > 0;
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
const maxCountLen = Math.max(...sections.map((section) => `(${getDisplayEnabled(section).length})`.length));
|
|
109
|
-
const prefixPlainLen = 2 + maxSectionLen + 1 + maxCountLen + 2;
|
|
110
|
-
const fitPreview = (ids, maxWidth) => {
|
|
111
|
-
if (ids.length === 0)
|
|
112
|
-
return chalk.gray('none');
|
|
113
|
-
const full = ids.join(', ');
|
|
114
|
-
if (full.length <= maxWidth)
|
|
115
|
-
return full;
|
|
116
|
-
let text = '';
|
|
117
|
-
let shown = 0;
|
|
118
|
-
for (let index = 0; index < ids.length; index++) {
|
|
119
|
-
const separator = shown > 0 ? ', ' : '';
|
|
120
|
-
const candidate = text + separator + ids[index];
|
|
121
|
-
const remaining = ids.length - (index + 1);
|
|
122
|
-
if (remaining > 0) {
|
|
123
|
-
const suffix = `, ... (+${remaining} more)`;
|
|
124
|
-
if (candidate.length + suffix.length > maxWidth && shown > 0) {
|
|
125
|
-
const left = ids.length - shown;
|
|
126
|
-
return `${text}${chalk.gray(`, ... (+${left} more)`)}`;
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
text = candidate;
|
|
130
|
-
shown++;
|
|
131
|
-
}
|
|
132
|
-
return text;
|
|
133
|
-
};
|
|
134
|
-
for (const section of sections) {
|
|
135
|
-
const displayEnabled = getDisplayEnabled(section);
|
|
136
|
-
const displayCount = displayEnabled.length;
|
|
137
|
-
const supported = new Set(sectionPlatforms[section] ?? []);
|
|
138
|
-
const applicableApps = config.applications.enabled.filter((id) => supported.has(id));
|
|
139
|
-
const allAppConfigs = sectionAppConfigs.get(section) ?? new Map();
|
|
140
|
-
const effectiveByApp = new Map();
|
|
141
|
-
for (const appId of applicableApps) {
|
|
142
|
-
effectiveByApp.set(appId, allAppConfigs.get(appId) ?? []);
|
|
143
|
-
}
|
|
144
|
-
const perAppParts = applicableApps.map((appId) => {
|
|
145
|
-
const enabled = effectiveByApp.get(appId) ?? [];
|
|
146
|
-
const delta = enabled.length - displayCount;
|
|
147
|
-
const suffix = delta === 0 ? '' : delta > 0 ? `(+${delta})` : `(${delta})`;
|
|
148
|
-
return `${appId}:${enabled.length}${suffix}`;
|
|
149
|
-
});
|
|
150
|
-
const union = new Set();
|
|
151
|
-
for (const [, ids] of effectiveByApp) {
|
|
152
|
-
for (const id of ids)
|
|
153
|
-
union.add(id);
|
|
154
|
-
}
|
|
155
|
-
const previewIds = displayEnabled.length > 0 ? [...displayEnabled] : [...union];
|
|
156
|
-
const paddedSection = section.padEnd(maxSectionLen);
|
|
157
|
-
const countStr = `(${displayCount})`.padStart(maxCountLen);
|
|
158
|
-
const appsStr = perAppParts.join(' ');
|
|
159
|
-
console.log(` ${chalk.cyan(paddedSection)} ${chalk.gray(countStr)} ${appsStr}`);
|
|
160
|
-
if (previewIds.length > 0) {
|
|
161
|
-
const indent = ' '.repeat(prefixPlainLen);
|
|
162
|
-
const previewWidth = Math.max(20, termWidth - prefixPlainLen - 2);
|
|
163
|
-
const preview = fitPreview(previewIds, previewWidth);
|
|
164
|
-
console.log(`${indent}${chalk.gray('→')} ${preview}`);
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
{
|
|
169
|
-
const pluginIndex = buildPluginIndex(scope);
|
|
170
|
-
const enabledPluginRefs = displayPluginRefs;
|
|
171
|
-
if (enabledPluginRefs.length > 0) {
|
|
172
|
-
const names = enabledPluginRefs
|
|
173
|
-
.map((pluginId) => {
|
|
174
|
-
const plugin = pluginIndex.get(pluginId);
|
|
175
|
-
return plugin ? pluginId : chalk.strikethrough(pluginId);
|
|
176
|
-
})
|
|
177
|
-
.join(', ');
|
|
178
|
-
console.log(` ${chalk.magenta('plugins')} ${chalk.gray(`(${enabledPluginRefs.length})`)} ${names}`);
|
|
179
|
-
}
|
|
180
|
-
else if (!scope?.project && !scope?.profile && pluginIndex.plugins.length > 0) {
|
|
181
|
-
console.log(` ${chalk.magenta('plugins')} ${chalk.gray('(0)')} ${chalk.gray(`${pluginIndex.plugins.length} available`)}`);
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
console.log();
|
|
185
|
-
const notes = [];
|
|
186
|
-
if (cursorSkillsDeduped && config.applications.enabled.includes('cursor')) {
|
|
187
|
-
notes.push('cursor reads skills via claude-code');
|
|
188
|
-
}
|
|
189
|
-
if (config.distribution.use_agents_dir) {
|
|
190
|
-
const agentsMembers = ['codex', 'gemini', 'opencode'].filter((appId) => config.applications.enabled.includes(appId));
|
|
191
|
-
if (agentsMembers.length > 0) {
|
|
192
|
-
notes.push(`skills for ${agentsMembers.join(', ')} sync to shared .agents/skills`);
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
for (let index = 0; index < notes.length; index++) {
|
|
196
|
-
const prefix = index === 0 ? ' Note: ' : ' ';
|
|
197
|
-
console.log(chalk.gray(`${prefix}${notes[index]}.`));
|
|
78
|
+
if (showInventory) {
|
|
79
|
+
displayInventory({
|
|
80
|
+
config,
|
|
81
|
+
layers,
|
|
82
|
+
scope,
|
|
83
|
+
sections,
|
|
84
|
+
sectionAppConfigs,
|
|
85
|
+
assumeInstalledSet,
|
|
86
|
+
cursorSkillsDeduped,
|
|
87
|
+
getDisplayEnabled,
|
|
88
|
+
displayPluginRefs,
|
|
89
|
+
});
|
|
198
90
|
}
|
|
199
|
-
if (notes.length > 0)
|
|
200
|
-
console.log();
|
|
201
91
|
const activeAppIds = config.applications.enabled;
|
|
202
92
|
// Project-level managed distribution: load manifest and determine mode
|
|
203
93
|
const projectRoot = scope?.project;
|
|
@@ -209,7 +99,7 @@ export async function runSyncPhase({ scope, config, layers }) {
|
|
|
209
99
|
if (result.corrupt) {
|
|
210
100
|
console.warn(`[asb] Aborting managed sync: corrupt manifest in ${projectRoot}`);
|
|
211
101
|
console.warn('[asb] Fix or remove the manifest before retrying to avoid unsafe cleanup.');
|
|
212
|
-
return true;
|
|
102
|
+
return { hasErrors: true, hasChanges: false };
|
|
213
103
|
}
|
|
214
104
|
else {
|
|
215
105
|
manifest = result.manifest;
|
|
@@ -229,6 +119,7 @@ export async function runSyncPhase({ scope, config, layers }) {
|
|
|
229
119
|
assumeInstalled: assumeInstalledSet,
|
|
230
120
|
manifest,
|
|
231
121
|
projectMode,
|
|
122
|
+
dryRun,
|
|
232
123
|
});
|
|
233
124
|
ruleDistribution = distributeRules({
|
|
234
125
|
activeAppIds,
|
|
@@ -236,16 +127,19 @@ export async function runSyncPhase({ scope, config, layers }) {
|
|
|
236
127
|
manifest,
|
|
237
128
|
projectMode,
|
|
238
129
|
rulesPlacement,
|
|
130
|
+
dryRun,
|
|
239
131
|
}, scope);
|
|
240
132
|
commandDistribution = distributeCommands(scope, activeAppIds, assumeInstalledSet, {
|
|
241
133
|
manifest,
|
|
242
134
|
projectMode,
|
|
243
135
|
collision,
|
|
136
|
+
dryRun,
|
|
244
137
|
});
|
|
245
138
|
agentDistribution = distributeSubagents(scope, activeAppIds, assumeInstalledSet, {
|
|
246
139
|
manifest,
|
|
247
140
|
projectMode,
|
|
248
141
|
collision,
|
|
142
|
+
dryRun,
|
|
249
143
|
});
|
|
250
144
|
skillDistribution = distributeSkills(scope, {
|
|
251
145
|
useAgentsDir: config.distribution.use_agents_dir,
|
|
@@ -254,12 +148,16 @@ export async function runSyncPhase({ scope, config, layers }) {
|
|
|
254
148
|
manifest,
|
|
255
149
|
projectMode,
|
|
256
150
|
collision,
|
|
151
|
+
dryRun,
|
|
152
|
+
});
|
|
153
|
+
hookDistribution = distributeHooks(scope, activeAppIds, assumeInstalledSet, {
|
|
154
|
+
projectMode,
|
|
155
|
+
dryRun,
|
|
257
156
|
});
|
|
258
|
-
hookDistribution = distributeHooks(scope, activeAppIds, assumeInstalledSet, { projectMode });
|
|
259
157
|
}
|
|
260
158
|
finally {
|
|
261
159
|
// Save manifest even if distribution throws, to preserve partial progress
|
|
262
|
-
if (isManaged && manifest) {
|
|
160
|
+
if (!dryRun && isManaged && manifest) {
|
|
263
161
|
saveManifest(projectRoot, manifest);
|
|
264
162
|
}
|
|
265
163
|
}
|
|
@@ -319,7 +217,162 @@ export async function runSyncPhase({ scope, config, layers }) {
|
|
|
319
217
|
},
|
|
320
218
|
},
|
|
321
219
|
];
|
|
220
|
+
if (dryRun) {
|
|
221
|
+
// In dry-run mode, show a compact summary instead of full distribution output
|
|
222
|
+
const allResults = distSections.flatMap((s) => s.results);
|
|
223
|
+
const counts = countDistributionResults(allResults, () => '');
|
|
224
|
+
const summary = formatDistributionSummary(counts);
|
|
225
|
+
if (counts.written > 0 || counts.deleted > 0 || counts.errors > 0 || counts.conflicts > 0) {
|
|
226
|
+
// Show full distribution detail for dry-run so user can see exactly what would change
|
|
227
|
+
const { hasErrors } = printCompactDistributions(distSections);
|
|
228
|
+
return {
|
|
229
|
+
hasErrors,
|
|
230
|
+
hasChanges: counts.written > 0 || counts.deleted > 0,
|
|
231
|
+
};
|
|
232
|
+
}
|
|
233
|
+
console.log(`${chalk.blue('Distribution:')} ${summary}`);
|
|
234
|
+
return { hasErrors: false, hasChanges: false };
|
|
235
|
+
}
|
|
322
236
|
const { hasErrors } = printCompactDistributions(distSections);
|
|
323
|
-
|
|
237
|
+
const allResults = distSections.flatMap((s) => s.results);
|
|
238
|
+
const counts = countDistributionResults(allResults, () => '');
|
|
239
|
+
return {
|
|
240
|
+
hasErrors,
|
|
241
|
+
hasChanges: counts.written > 0 || counts.deleted > 0,
|
|
242
|
+
};
|
|
243
|
+
}
|
|
244
|
+
// ---------------------------------------------------------------------------
|
|
245
|
+
// Inventory display (extracted for showInventory flag)
|
|
246
|
+
// ---------------------------------------------------------------------------
|
|
247
|
+
function displayInventory(opts) {
|
|
248
|
+
const { config, layers, scope, sections, sectionAppConfigs, assumeInstalledSet, cursorSkillsDeduped, getDisplayEnabled, displayPluginRefs, } = opts;
|
|
249
|
+
const activeLayers = [];
|
|
250
|
+
if (layers.user.exists)
|
|
251
|
+
activeLayers.push(shortenPath(layers.user.path));
|
|
252
|
+
if (layers.profile?.exists)
|
|
253
|
+
activeLayers.push(shortenPath(layers.profile.path));
|
|
254
|
+
if (layers.project?.exists)
|
|
255
|
+
activeLayers.push(shortenPath(layers.project.path));
|
|
256
|
+
console.log(`${chalk.blue('Config:')} ${activeLayers.length > 0 ? chalk.dim(activeLayers.join(' + ')) : chalk.gray('no config files')}`);
|
|
257
|
+
const appsLabel = config.applications.enabled.length > 0
|
|
258
|
+
? config.applications.enabled
|
|
259
|
+
.map((id) => {
|
|
260
|
+
const target = getTargetById(id);
|
|
261
|
+
if (target?.isInstalled?.() === false) {
|
|
262
|
+
if (assumeInstalledSet.has(id))
|
|
263
|
+
return chalk.yellow(`${id} (assumed installed)`);
|
|
264
|
+
return chalk.gray(`${id} (not installed)`);
|
|
265
|
+
}
|
|
266
|
+
return chalk.cyan(id);
|
|
267
|
+
})
|
|
268
|
+
.join(', ')
|
|
269
|
+
: chalk.gray('none configured');
|
|
270
|
+
console.log(`${chalk.blue('Apps:')} ${appsLabel}`);
|
|
271
|
+
console.log();
|
|
272
|
+
console.log(chalk.blue('Inventory:'));
|
|
273
|
+
{
|
|
274
|
+
const sectionPlatforms = {};
|
|
275
|
+
for (const section of sections) {
|
|
276
|
+
let ids = filterInstalled(getTargetsForSection(section), assumeInstalledSet).map((t) => t.id);
|
|
277
|
+
if (section === 'skills' && cursorSkillsDeduped) {
|
|
278
|
+
ids = ids.filter((id) => id !== 'cursor');
|
|
279
|
+
}
|
|
280
|
+
sectionPlatforms[section] = ids;
|
|
281
|
+
}
|
|
282
|
+
const termWidth = process.stdout.columns || 80;
|
|
283
|
+
const maxSectionLen = Math.max(...sections.map((section) => section.length));
|
|
284
|
+
const maxCountLen = Math.max(...sections.map((section) => `(${getDisplayEnabled(section).length})`.length));
|
|
285
|
+
const prefixPlainLen = 2 + maxSectionLen + 1 + maxCountLen + 2;
|
|
286
|
+
const fitPreview = (ids, maxWidth) => {
|
|
287
|
+
if (ids.length === 0)
|
|
288
|
+
return chalk.gray('none');
|
|
289
|
+
const full = ids.join(', ');
|
|
290
|
+
if (full.length <= maxWidth)
|
|
291
|
+
return full;
|
|
292
|
+
let text = '';
|
|
293
|
+
let shown = 0;
|
|
294
|
+
for (let index = 0; index < ids.length; index++) {
|
|
295
|
+
const separator = shown > 0 ? ', ' : '';
|
|
296
|
+
const candidate = text + separator + ids[index];
|
|
297
|
+
const remaining = ids.length - (index + 1);
|
|
298
|
+
if (remaining > 0) {
|
|
299
|
+
const suffix = `, ... (+${remaining} more)`;
|
|
300
|
+
if (candidate.length + suffix.length > maxWidth && shown > 0) {
|
|
301
|
+
const left = ids.length - shown;
|
|
302
|
+
return `${text}${chalk.gray(`, ... (+${left} more)`)}`;
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
text = candidate;
|
|
306
|
+
shown++;
|
|
307
|
+
}
|
|
308
|
+
return text;
|
|
309
|
+
};
|
|
310
|
+
for (const section of sections) {
|
|
311
|
+
const displayEnabled = getDisplayEnabled(section);
|
|
312
|
+
const displayCount = displayEnabled.length;
|
|
313
|
+
const supported = new Set(sectionPlatforms[section] ?? []);
|
|
314
|
+
const applicableApps = config.applications.enabled.filter((id) => supported.has(id));
|
|
315
|
+
const allAppConfigs = sectionAppConfigs.get(section) ?? new Map();
|
|
316
|
+
const effectiveByApp = new Map();
|
|
317
|
+
for (const appId of applicableApps) {
|
|
318
|
+
effectiveByApp.set(appId, allAppConfigs.get(appId) ?? []);
|
|
319
|
+
}
|
|
320
|
+
const perAppParts = applicableApps.map((appId) => {
|
|
321
|
+
const enabled = effectiveByApp.get(appId) ?? [];
|
|
322
|
+
const delta = enabled.length - displayCount;
|
|
323
|
+
const suffix = delta === 0 ? '' : delta > 0 ? `(+${delta})` : `(${delta})`;
|
|
324
|
+
return `${appId}:${enabled.length}${suffix}`;
|
|
325
|
+
});
|
|
326
|
+
const union = new Set();
|
|
327
|
+
for (const [, ids] of effectiveByApp) {
|
|
328
|
+
for (const id of ids)
|
|
329
|
+
union.add(id);
|
|
330
|
+
}
|
|
331
|
+
const previewIds = displayEnabled.length > 0 ? [...displayEnabled] : [...union];
|
|
332
|
+
const paddedSection = section.padEnd(maxSectionLen);
|
|
333
|
+
const countStr = `(${displayCount})`.padStart(maxCountLen);
|
|
334
|
+
const appsStr = perAppParts.join(' ');
|
|
335
|
+
console.log(` ${chalk.cyan(paddedSection)} ${chalk.gray(countStr)} ${appsStr}`);
|
|
336
|
+
if (previewIds.length > 0) {
|
|
337
|
+
const indent = ' '.repeat(prefixPlainLen);
|
|
338
|
+
const previewWidth = Math.max(20, termWidth - prefixPlainLen - 2);
|
|
339
|
+
const preview = fitPreview(previewIds, previewWidth);
|
|
340
|
+
console.log(`${indent}${chalk.gray('→')} ${preview}`);
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
{
|
|
345
|
+
const pluginIndex = buildPluginIndex(scope);
|
|
346
|
+
const enabledPluginRefs = displayPluginRefs;
|
|
347
|
+
if (enabledPluginRefs.length > 0) {
|
|
348
|
+
const names = enabledPluginRefs
|
|
349
|
+
.map((pluginId) => {
|
|
350
|
+
const plugin = pluginIndex.get(pluginId);
|
|
351
|
+
return plugin ? pluginId : chalk.strikethrough(pluginId);
|
|
352
|
+
})
|
|
353
|
+
.join(', ');
|
|
354
|
+
console.log(` ${chalk.magenta('plugins')} ${chalk.gray(`(${enabledPluginRefs.length})`)} ${names}`);
|
|
355
|
+
}
|
|
356
|
+
else if (!scope?.project && !scope?.profile && pluginIndex.plugins.length > 0) {
|
|
357
|
+
console.log(` ${chalk.magenta('plugins')} ${chalk.gray('(0)')} ${chalk.gray(`${pluginIndex.plugins.length} available`)}`);
|
|
358
|
+
}
|
|
359
|
+
}
|
|
360
|
+
console.log();
|
|
361
|
+
const notes = [];
|
|
362
|
+
if (cursorSkillsDeduped && config.applications.enabled.includes('cursor')) {
|
|
363
|
+
notes.push('cursor reads skills via claude-code');
|
|
364
|
+
}
|
|
365
|
+
if (config.distribution.use_agents_dir) {
|
|
366
|
+
const agentsMembers = ['codex', 'gemini', 'opencode'].filter((appId) => config.applications.enabled.includes(appId));
|
|
367
|
+
if (agentsMembers.length > 0) {
|
|
368
|
+
notes.push(`skills for ${agentsMembers.join(', ')} sync to shared .agents/skills`);
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
for (let index = 0; index < notes.length; index++) {
|
|
372
|
+
const prefix = index === 0 ? ' Note: ' : ' ';
|
|
373
|
+
console.log(chalk.gray(`${prefix}${notes[index]}.`));
|
|
374
|
+
}
|
|
375
|
+
if (notes.length > 0)
|
|
376
|
+
console.log();
|
|
324
377
|
}
|
|
325
378
|
//# sourceMappingURL=command.js.map
|
package/dist/sync/command.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/sync/command.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/sync/command.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { DistributionResult } from '../../library/distribute.js';
|
|
2
|
+
import type { BundleDistributionResult } from '../../library/distribute-bundle.js';
|
|
3
|
+
export declare function cleanupLegacyOpencodeFiles(options: {
|
|
4
|
+
platform: string;
|
|
5
|
+
legacyDir: string;
|
|
6
|
+
currentDir: string;
|
|
7
|
+
activeIds: ReadonlySet<string>;
|
|
8
|
+
extractId: (filename: string) => string | null;
|
|
9
|
+
dryRun?: boolean;
|
|
10
|
+
}): DistributionResult<string>[];
|
|
11
|
+
export declare function cleanupLegacyOpencodeBundles(options: {
|
|
12
|
+
platform: string;
|
|
13
|
+
legacyParentDir: string;
|
|
14
|
+
currentParentDir: string;
|
|
15
|
+
activeIds: ReadonlySet<string>;
|
|
16
|
+
dryRun?: boolean;
|
|
17
|
+
isReservedDir?: (id: string) => boolean;
|
|
18
|
+
}): BundleDistributionResult<string>[];
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import fs from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { rmDirRecursive } from '../../library/fs.js';
|
|
4
|
+
export function cleanupLegacyOpencodeFiles(options) {
|
|
5
|
+
const results = [];
|
|
6
|
+
if (!fs.existsSync(options.legacyDir))
|
|
7
|
+
return results;
|
|
8
|
+
try {
|
|
9
|
+
for (const entry of fs.readdirSync(options.legacyDir, { withFileTypes: true })) {
|
|
10
|
+
if (!entry.isFile())
|
|
11
|
+
continue;
|
|
12
|
+
const id = options.extractId(entry.name);
|
|
13
|
+
if (id === null)
|
|
14
|
+
continue;
|
|
15
|
+
const legacyPath = path.join(options.legacyDir, entry.name);
|
|
16
|
+
const currentPath = path.join(options.currentDir, entry.name);
|
|
17
|
+
const isDuplicate = options.legacyDir !== options.currentDir && fs.existsSync(currentPath);
|
|
18
|
+
const shouldDelete = !options.activeIds.has(id) || isDuplicate;
|
|
19
|
+
if (!shouldDelete)
|
|
20
|
+
continue;
|
|
21
|
+
try {
|
|
22
|
+
if (!options.dryRun)
|
|
23
|
+
fs.unlinkSync(legacyPath);
|
|
24
|
+
results.push({
|
|
25
|
+
platform: options.platform,
|
|
26
|
+
filePath: legacyPath,
|
|
27
|
+
status: 'deleted',
|
|
28
|
+
reason: isDuplicate ? 'legacy duplicate' : 'legacy orphan',
|
|
29
|
+
entryId: id,
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
catch (error) {
|
|
33
|
+
const msg = error instanceof Error ? error.message : String(error);
|
|
34
|
+
results.push({
|
|
35
|
+
platform: options.platform,
|
|
36
|
+
filePath: legacyPath,
|
|
37
|
+
status: 'error',
|
|
38
|
+
error: `Failed to delete legacy file: ${msg}`,
|
|
39
|
+
entryId: id,
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
if (fs.readdirSync(options.legacyDir).length === 0) {
|
|
44
|
+
if (!options.dryRun)
|
|
45
|
+
fs.rmdirSync(options.legacyDir);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
catch {
|
|
49
|
+
// Ignore legacy cleanup scan errors to avoid blocking distribution.
|
|
50
|
+
}
|
|
51
|
+
return results;
|
|
52
|
+
}
|
|
53
|
+
export function cleanupLegacyOpencodeBundles(options) {
|
|
54
|
+
const results = [];
|
|
55
|
+
if (!fs.existsSync(options.legacyParentDir))
|
|
56
|
+
return results;
|
|
57
|
+
try {
|
|
58
|
+
for (const entry of fs.readdirSync(options.legacyParentDir, { withFileTypes: true })) {
|
|
59
|
+
if (!entry.isDirectory())
|
|
60
|
+
continue;
|
|
61
|
+
const id = entry.name;
|
|
62
|
+
if (options.isReservedDir?.(id))
|
|
63
|
+
continue;
|
|
64
|
+
const legacyDir = path.join(options.legacyParentDir, id);
|
|
65
|
+
const currentDir = path.join(options.currentParentDir, id);
|
|
66
|
+
const isDuplicate = options.legacyParentDir !== options.currentParentDir && fs.existsSync(currentDir);
|
|
67
|
+
const shouldDelete = !options.activeIds.has(id) || isDuplicate;
|
|
68
|
+
if (!shouldDelete)
|
|
69
|
+
continue;
|
|
70
|
+
try {
|
|
71
|
+
if (!options.dryRun)
|
|
72
|
+
rmDirRecursive(legacyDir);
|
|
73
|
+
results.push({
|
|
74
|
+
platform: options.platform,
|
|
75
|
+
targetDir: legacyDir,
|
|
76
|
+
status: 'deleted',
|
|
77
|
+
reason: isDuplicate ? 'legacy duplicate' : 'legacy orphan',
|
|
78
|
+
entryId: id,
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
catch (error) {
|
|
82
|
+
const msg = error instanceof Error ? error.message : String(error);
|
|
83
|
+
results.push({
|
|
84
|
+
platform: options.platform,
|
|
85
|
+
targetDir: legacyDir,
|
|
86
|
+
status: 'error',
|
|
87
|
+
error: `Failed to delete legacy directory: ${msg}`,
|
|
88
|
+
entryId: id,
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
if (fs.existsSync(options.legacyParentDir) &&
|
|
93
|
+
fs.readdirSync(options.legacyParentDir).length === 0) {
|
|
94
|
+
if (!options.dryRun)
|
|
95
|
+
fs.rmdirSync(options.legacyParentDir);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
catch {
|
|
99
|
+
// Ignore legacy cleanup scan errors to avoid blocking distribution.
|
|
100
|
+
}
|
|
101
|
+
return results;
|
|
102
|
+
}
|
|
103
|
+
//# sourceMappingURL=opencode-legacy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"opencode-legacy.js","sourceRoot":"","sources":["../../../src/targets/builtin/opencode-legacy.ts"],"names":[],"mappings":"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"}
|