cli-jaw 1.4.6 → 1.4.8
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 +4 -1
- package/dist/bin/commands/doctor.js +39 -5
- package/dist/bin/commands/doctor.js.map +1 -1
- package/dist/bin/postinstall.js +25 -9
- package/dist/bin/postinstall.js.map +1 -1
- package/dist/lib/mcp-sync.js +165 -60
- package/dist/lib/mcp-sync.js.map +1 -1
- package/dist/server.js +3 -3
- package/dist/server.js.map +1 -1
- package/dist/src/agent/spawn.js +17 -2
- package/dist/src/agent/spawn.js.map +1 -1
- package/dist/src/cli/command-context.js +2 -2
- package/dist/src/cli/command-context.js.map +1 -1
- package/package.json +1 -1
- package/scripts/release.sh +3 -0
package/README.md
CHANGED
|
@@ -120,6 +120,8 @@ jaw serve
|
|
|
120
120
|
|
|
121
121
|
> Requires **Node.js ≥ 22** ([download](https://nodejs.org)) and **at least 1 AI CLI** authenticated below.
|
|
122
122
|
|
|
123
|
+
> 🔒 **Shared path policy:** cli-jaw uses `~/.cli-jaw/*` by default. It does **not** modify shared harness paths (`~/.agents/*`, `~/.agent/*`, `~/.claude/*`) unless you explicitly opt in. See `jaw doctor --repair-shared-paths` to detect or fix contamination from older versions.
|
|
124
|
+
|
|
123
125
|
---
|
|
124
126
|
|
|
125
127
|
## 🔑 Authenticate Your AI Engines
|
|
@@ -648,7 +650,8 @@ rm -f ~/Library/LaunchAgents/com.cli-jaw.*
|
|
|
648
650
|
|
|
649
651
|
# ── 4. Remove legacy artifacts ──
|
|
650
652
|
rm -f ~/AGENTS.md ~/CLAUDE.md # postinstall symlinks
|
|
651
|
-
|
|
653
|
+
# Do not remove shared harness paths (~/.agents, ~/.agent) unless you explicitly
|
|
654
|
+
# created them for cli-jaw. Use: jaw doctor --repair-shared-paths
|
|
652
655
|
rm -rf ~/.cli-claw # old cli-claw data
|
|
653
656
|
rm -f ~/.copilot/mcp-config.json # MCP config synced by jaw
|
|
654
657
|
|
|
@@ -8,11 +8,15 @@ import fs from 'node:fs';
|
|
|
8
8
|
import os from 'node:os';
|
|
9
9
|
import path from 'node:path';
|
|
10
10
|
import { JAW_HOME, SETTINGS_PATH, DB_PATH, HEARTBEAT_JOBS_PATH } from '../../src/core/config.js';
|
|
11
|
+
import { detectSharedPathContamination } from '../../lib/mcp-sync.js';
|
|
11
12
|
const HEARTBEAT_PATH = HEARTBEAT_JOBS_PATH;
|
|
12
13
|
const PATH_LOOKUP_CMD = process.platform === 'win32' ? 'where' : 'which';
|
|
13
14
|
const { values } = parseArgs({
|
|
14
15
|
args: process.argv.slice(3),
|
|
15
|
-
options: {
|
|
16
|
+
options: {
|
|
17
|
+
json: { type: 'boolean', default: false },
|
|
18
|
+
'repair-shared-paths': { type: 'boolean', default: false },
|
|
19
|
+
},
|
|
16
20
|
strict: false,
|
|
17
21
|
});
|
|
18
22
|
const results = [];
|
|
@@ -116,14 +120,44 @@ check('Telegram', () => {
|
|
|
116
120
|
throw new Error('invalid token format');
|
|
117
121
|
return `token=...${token.slice(-6)}`;
|
|
118
122
|
});
|
|
119
|
-
// 7. Skills
|
|
123
|
+
// 7. Skills directory
|
|
120
124
|
check('Skills directory', () => {
|
|
121
125
|
const skillsDir = settings?.skillsDir || path.join(JAW_HOME, 'skills');
|
|
122
126
|
if (!fs.existsSync(skillsDir))
|
|
123
127
|
throw new Error('WARN: not found');
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
128
|
+
return skillsDir;
|
|
129
|
+
});
|
|
130
|
+
// 7b. Shared path isolation (Issue #58)
|
|
131
|
+
check('Shared path isolation', () => {
|
|
132
|
+
const report = detectSharedPathContamination();
|
|
133
|
+
if (report.status === 'clean')
|
|
134
|
+
return 'clean';
|
|
135
|
+
if (report.status === 'resolved')
|
|
136
|
+
return 'clean (backup traces preserved for rollback)';
|
|
137
|
+
if (report.status === 'contaminated') {
|
|
138
|
+
if (values['repair-shared-paths']) {
|
|
139
|
+
// Repair: remove cli-jaw symlinks from shared paths only
|
|
140
|
+
// Backup traces are preserved for rollback — not deleted
|
|
141
|
+
let repaired = 0;
|
|
142
|
+
for (const p of report.paths) {
|
|
143
|
+
if (p.isCliJaw && p.isSymlink) {
|
|
144
|
+
try {
|
|
145
|
+
fs.unlinkSync(p.path);
|
|
146
|
+
repaired++;
|
|
147
|
+
if (!values.json)
|
|
148
|
+
console.log(` 🔧 removed: ${p.path}`);
|
|
149
|
+
}
|
|
150
|
+
catch (e) {
|
|
151
|
+
if (!values.json)
|
|
152
|
+
console.log(` ❌ failed to remove ${p.path}: ${e.message}`);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
return `repaired (${repaired} symlink${repaired !== 1 ? 's' : ''} removed)`;
|
|
157
|
+
}
|
|
158
|
+
throw new Error(`WARN: ${report.summary}\n Run: jaw doctor --repair-shared-paths`);
|
|
159
|
+
}
|
|
160
|
+
throw new Error(`WARN: ${report.summary}`);
|
|
127
161
|
});
|
|
128
162
|
// 8. macOS Accessibility (Phase 260223)
|
|
129
163
|
if (process.platform === 'darwin') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../bin/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../bin/commands/doctor.ts"],"names":[],"mappings":"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"}
|
package/dist/bin/postinstall.js
CHANGED
|
@@ -10,21 +10,20 @@ if (major < 22) {
|
|
|
10
10
|
* postinstall.js — Phase 12.1
|
|
11
11
|
* Sets up symlink structure and MCP config for agent tool compatibility.
|
|
12
12
|
*
|
|
13
|
-
* Created structure:
|
|
13
|
+
* Created structure (isolated-by-default):
|
|
14
14
|
* ~/.cli-jaw/ (config dir)
|
|
15
15
|
* ~/.cli-jaw/skills/ (default skills source)
|
|
16
16
|
* ~/.cli-jaw/uploads/ (media uploads)
|
|
17
17
|
* ~/.cli-jaw/mcp.json (unified MCP config)
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
* ~/CLAUDE.md → ~/AGENTS.md (if AGENTS.md exists)
|
|
18
|
+
*
|
|
19
|
+
* Shared home paths (~/.agents, ~/.agent, ~/.claude) are NOT modified by default.
|
|
20
|
+
* Opt-in: CLI_JAW_MIGRATE_SHARED_PATHS=1 npm install -g cli-jaw
|
|
22
21
|
*/
|
|
23
22
|
import fs from 'fs';
|
|
24
23
|
import path from 'path';
|
|
25
24
|
import os from 'os';
|
|
26
25
|
import { execSync, execFileSync } from 'child_process';
|
|
27
|
-
import {
|
|
26
|
+
import { ensureSharedHomeSkillsLinks, initMcpConfig, copyDefaultSkills, loadUnifiedMcp, saveUnifiedMcp } from '../lib/mcp-sync.js';
|
|
28
27
|
// ─── JAW_HOME inline (config.ts → registry.ts import 체인 제거) ───
|
|
29
28
|
const JAW_HOME = process.env.CLI_JAW_HOME
|
|
30
29
|
? path.resolve(process.env.CLI_JAW_HOME.replace(/^~(?=\/|$)/, os.homedir()))
|
|
@@ -272,9 +271,26 @@ export async function runPostinstall() {
|
|
|
272
271
|
// 2. Ensure sub-directories (only in normal mode)
|
|
273
272
|
ensureDir(path.join(jawHome, 'skills'));
|
|
274
273
|
ensureDir(path.join(jawHome, 'uploads'));
|
|
275
|
-
// 2. Skills symlinks
|
|
276
|
-
|
|
277
|
-
|
|
274
|
+
// 2. Skills symlinks — isolated-by-default (Issue #58)
|
|
275
|
+
// No workingDir compat links in postinstall.
|
|
276
|
+
// Postinstall must remain isolated to ~/.cli-jaw/* only.
|
|
277
|
+
const shouldMigrateSharedPaths = process.env.CLI_JAW_MIGRATE_SHARED_PATHS === '1'
|
|
278
|
+
|| process.env.CLI_JAW_MIGRATE_SHARED_PATHS === 'true'
|
|
279
|
+
|| process.env.npm_config_jaw_migrate_shared_paths === '1'
|
|
280
|
+
|| process.env.npm_config_jaw_migrate_shared_paths === 'true';
|
|
281
|
+
if (shouldMigrateSharedPaths) {
|
|
282
|
+
const sharedReport = ensureSharedHomeSkillsLinks({
|
|
283
|
+
onConflict: 'backup',
|
|
284
|
+
includeAgents: true,
|
|
285
|
+
includeCompatAgent: true,
|
|
286
|
+
includeClaude: true,
|
|
287
|
+
});
|
|
288
|
+
logSkillsSymlinkReport(sharedReport);
|
|
289
|
+
}
|
|
290
|
+
else {
|
|
291
|
+
console.log('[jaw:init] shared path migration skipped (isolated-by-default)');
|
|
292
|
+
console.log('[jaw:init] to opt in: CLI_JAW_MIGRATE_SHARED_PATHS=1 npm install -g cli-jaw');
|
|
293
|
+
}
|
|
278
294
|
// 3. CLAUDE.md → AGENTS.md symlink
|
|
279
295
|
const agentsMd = path.join(jawHome, 'AGENTS.md');
|
|
280
296
|
const claudeMd = path.join(jawHome, 'CLAUDE.md');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postinstall.js","sourceRoot":"","sources":["../../bin/postinstall.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"postinstall.js","sourceRoot":"","sources":["../../bin/postinstall.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/mcp-sync.js
CHANGED
|
@@ -250,79 +250,171 @@ export function syncToAll(config) {
|
|
|
250
250
|
}
|
|
251
251
|
return results;
|
|
252
252
|
}
|
|
253
|
-
|
|
253
|
+
function buildLinkReport(links, extra) {
|
|
254
|
+
const summary = links.reduce((acc, item) => {
|
|
255
|
+
const key = item.action || 'unknown';
|
|
256
|
+
acc[key] = (acc[key] || 0) + 1;
|
|
257
|
+
return acc;
|
|
258
|
+
}, {});
|
|
259
|
+
return { links, summary, ...extra };
|
|
260
|
+
}
|
|
254
261
|
/**
|
|
255
|
-
*
|
|
256
|
-
*
|
|
257
|
-
* Also ensure {workingDir}/.claude/skills + ~/.claude/skills (Claude Code CLI)
|
|
262
|
+
* Working-dir only: {workingDir}/.agents/skills, optionally .claude/skills.
|
|
263
|
+
* NEVER touches home shared paths (~/.agents, ~/.agent, ~/.claude).
|
|
258
264
|
*/
|
|
259
|
-
export function
|
|
260
|
-
const
|
|
261
|
-
const skillsSource = join(
|
|
265
|
+
export function ensureWorkingDirSkillsLinks(workingDir, opts = {}) {
|
|
266
|
+
const { _homedir = os.homedir(), _jawHome = JAW_HOME, onConflict = 'skip', includeClaude = false } = opts;
|
|
267
|
+
const skillsSource = join(_jawHome, 'skills');
|
|
262
268
|
fs.mkdirSync(skillsSource, { recursive: true });
|
|
263
|
-
|
|
269
|
+
// CRITICAL: workingDir === homedir → skip to prevent implicit shared path creation
|
|
270
|
+
const resolvedWd = resolve(workingDir);
|
|
271
|
+
if (resolvedWd === resolve(_homedir)) {
|
|
272
|
+
return buildLinkReport([], {
|
|
273
|
+
skipped: true,
|
|
274
|
+
reason: 'workingDir is homedir — use ensureSharedHomeSkillsLinks() for explicit opt-in',
|
|
275
|
+
source: skillsSource,
|
|
276
|
+
});
|
|
277
|
+
}
|
|
278
|
+
const { allowReplaceManaged = false } = opts;
|
|
279
|
+
const backupContext = createBackupContext(_jawHome);
|
|
280
|
+
const safeOpts = { onConflict, backupContext, allowReplaceManaged, jawHome: _jawHome };
|
|
264
281
|
const links = [];
|
|
265
|
-
// 1. {workingDir}/.agents/skills →
|
|
282
|
+
// 1. {workingDir}/.agents/skills → skills source
|
|
266
283
|
const wdLink = join(workingDir, '.agents', 'skills');
|
|
267
|
-
links.push(ensureSymlinkSafe(skillsSource, wdLink, {
|
|
268
|
-
// 2.
|
|
269
|
-
|
|
270
|
-
|
|
284
|
+
links.push(ensureSymlinkSafe(skillsSource, wdLink, { ...safeOpts, name: 'wdAgents' }));
|
|
285
|
+
// 2. Optionally {workingDir}/.claude/skills → skills source
|
|
286
|
+
if (includeClaude) {
|
|
287
|
+
const wdClaudeSkills = join(workingDir, '.claude', 'skills');
|
|
288
|
+
links.push(ensureSymlinkSafe(skillsSource, wdClaudeSkills, { ...safeOpts, name: 'wdClaude' }));
|
|
289
|
+
}
|
|
290
|
+
return buildLinkReport(links, {
|
|
291
|
+
skipped: false,
|
|
292
|
+
source: skillsSource,
|
|
293
|
+
strategy: onConflict,
|
|
294
|
+
backupRoot: backupContext.root,
|
|
295
|
+
});
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Opt-in only: create shared home symlinks (~/.agents/skills, ~/.agent/skills, ~/.claude/skills).
|
|
299
|
+
* Must NEVER be called by default — only via explicit env flag or CLI command.
|
|
300
|
+
*/
|
|
301
|
+
export function ensureSharedHomeSkillsLinks(opts = {}) {
|
|
302
|
+
const { _homedir = os.homedir(), _jawHome = JAW_HOME, onConflict = 'backup', includeAgents = true, includeCompatAgent = true, includeClaude = true, } = opts;
|
|
303
|
+
const skillsSource = join(_jawHome, 'skills');
|
|
304
|
+
fs.mkdirSync(skillsSource, { recursive: true });
|
|
305
|
+
const backupContext = createBackupContext(_jawHome);
|
|
306
|
+
const links = [];
|
|
307
|
+
if (includeAgents) {
|
|
308
|
+
const homeLink = join(_homedir, '.agents', 'skills');
|
|
271
309
|
links.push(ensureSymlinkSafe(skillsSource, homeLink, { onConflict, backupContext, name: 'homeAgents' }));
|
|
272
310
|
}
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
name: 'homeAgents',
|
|
278
|
-
linkPath: homeLink,
|
|
279
|
-
target: skillsSource,
|
|
280
|
-
});
|
|
311
|
+
if (includeCompatAgent) {
|
|
312
|
+
const homeAgents = join(_homedir, '.agents', 'skills');
|
|
313
|
+
const compatLink = join(_homedir, '.agent', 'skills');
|
|
314
|
+
links.push(ensureSymlinkSafe(homeAgents, compatLink, { onConflict, backupContext, name: 'compatAgent' }));
|
|
281
315
|
}
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
links.push(ensureSymlinkSafe(homeLink, compatLink, { onConflict, backupContext, name: 'compatAgent' }));
|
|
285
|
-
// 4. Claude Code CLI: {workingDir}/.claude/skills → ~/.cli-jaw/skills
|
|
286
|
-
const wdClaudeSkills = join(workingDir, '.claude', 'skills');
|
|
287
|
-
links.push(ensureSymlinkSafe(skillsSource, wdClaudeSkills, { onConflict, backupContext, name: 'wdClaude' }));
|
|
288
|
-
// 5. Home Claude Code: ~/.claude/skills → ~/.cli-jaw/skills
|
|
289
|
-
const homeClaudeSkills = join(os.homedir(), '.claude', 'skills');
|
|
290
|
-
if (homeClaudeSkills !== wdClaudeSkills) {
|
|
316
|
+
if (includeClaude) {
|
|
317
|
+
const homeClaudeSkills = join(_homedir, '.claude', 'skills');
|
|
291
318
|
links.push(ensureSymlinkSafe(skillsSource, homeClaudeSkills, { onConflict, backupContext, name: 'homeClaude' }));
|
|
292
319
|
}
|
|
293
|
-
|
|
294
|
-
links.push({
|
|
295
|
-
status: 'skip',
|
|
296
|
-
action: 'same_path',
|
|
297
|
-
name: 'homeClaude',
|
|
298
|
-
linkPath: homeClaudeSkills,
|
|
299
|
-
target: skillsSource,
|
|
300
|
-
});
|
|
301
|
-
}
|
|
302
|
-
const summary = links.reduce((acc, item) => {
|
|
303
|
-
const key = item.action || 'unknown';
|
|
304
|
-
acc[key] = (acc[key] || 0) + 1;
|
|
305
|
-
return acc;
|
|
306
|
-
}, {});
|
|
307
|
-
return {
|
|
320
|
+
return buildLinkReport(links, {
|
|
308
321
|
source: skillsSource,
|
|
309
322
|
strategy: onConflict,
|
|
310
323
|
backupRoot: backupContext.root,
|
|
311
|
-
|
|
312
|
-
summary,
|
|
313
|
-
};
|
|
324
|
+
});
|
|
314
325
|
}
|
|
315
|
-
|
|
326
|
+
/**
|
|
327
|
+
* Detect shared path contamination: check if cli-jaw has taken over home shared paths.
|
|
328
|
+
*/
|
|
329
|
+
export function detectSharedPathContamination(opts) {
|
|
330
|
+
const homedir = opts?._homedir ?? os.homedir();
|
|
331
|
+
const jawHome = opts?._jawHome ?? JAW_HOME;
|
|
332
|
+
const skillsTarget = join(jawHome, 'skills');
|
|
333
|
+
const sharedPaths = [
|
|
334
|
+
join(homedir, '.agents', 'skills'),
|
|
335
|
+
join(homedir, '.agent', 'skills'),
|
|
336
|
+
join(homedir, '.claude', 'skills'),
|
|
337
|
+
];
|
|
338
|
+
const paths = sharedPaths.map(p => {
|
|
339
|
+
const exists = fs.existsSync(p);
|
|
340
|
+
let isSymlink = false;
|
|
341
|
+
let target = null;
|
|
342
|
+
let isCliJaw = false;
|
|
343
|
+
if (exists) {
|
|
344
|
+
try {
|
|
345
|
+
const stat = fs.lstatSync(p);
|
|
346
|
+
isSymlink = stat.isSymbolicLink();
|
|
347
|
+
if (isSymlink) {
|
|
348
|
+
const rawTarget = fs.readlinkSync(p);
|
|
349
|
+
target = resolveSymlinkTarget(p, rawTarget);
|
|
350
|
+
isCliJaw = resolve(target) === resolve(skillsTarget);
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
catch { /* ignore */ }
|
|
354
|
+
}
|
|
355
|
+
return { path: p, exists, isSymlink, target, isCliJaw };
|
|
356
|
+
});
|
|
357
|
+
// Check backup traces
|
|
358
|
+
const backupDir = join(jawHome, 'backups', 'skills-conflicts');
|
|
359
|
+
const backupTraces = [];
|
|
360
|
+
if (fs.existsSync(backupDir)) {
|
|
361
|
+
try {
|
|
362
|
+
backupTraces.push(...fs.readdirSync(backupDir).map(f => join(backupDir, f)));
|
|
363
|
+
}
|
|
364
|
+
catch { /* ignore */ }
|
|
365
|
+
}
|
|
366
|
+
const contaminated = paths.filter(p => p.isCliJaw);
|
|
367
|
+
let status = 'clean';
|
|
368
|
+
let summary = 'No shared path contamination detected';
|
|
369
|
+
if (contaminated.length > 0) {
|
|
370
|
+
status = 'contaminated';
|
|
371
|
+
const pathList = contaminated.map(p => p.path).join(', ');
|
|
372
|
+
summary = `cli-jaw symlinks found at shared paths: ${pathList}`;
|
|
373
|
+
}
|
|
374
|
+
else if (backupTraces.length > 0) {
|
|
375
|
+
// Backup traces without active symlinks = previously resolved, not active contamination
|
|
376
|
+
status = 'resolved';
|
|
377
|
+
summary = `No active symlinks; backup traces preserved for rollback (${backupTraces.length} file(s))`;
|
|
378
|
+
}
|
|
379
|
+
return { status, paths, backupTraces, summary };
|
|
380
|
+
}
|
|
381
|
+
/**
|
|
382
|
+
* @deprecated Use ensureWorkingDirSkillsLinks or ensureSharedHomeSkillsLinks instead.
|
|
383
|
+
* Kept only for backward compatibility during transition — delegates to new helpers.
|
|
384
|
+
*/
|
|
385
|
+
export function ensureSkillsSymlinks(workingDir, opts = {}) {
|
|
386
|
+
// Delegate to working-dir-only helper (isolated-by-default)
|
|
387
|
+
return ensureWorkingDirSkillsLinks(workingDir, {
|
|
388
|
+
onConflict: opts.onConflict === 'skip' ? 'skip' : 'backup',
|
|
389
|
+
includeClaude: true,
|
|
390
|
+
});
|
|
391
|
+
}
|
|
392
|
+
function createBackupContext(jawHome) {
|
|
316
393
|
const stamp = new Date().toISOString().replace(/[:.]/g, '-');
|
|
317
|
-
return { root: join(JAW_HOME, 'backups', 'skills-conflicts', stamp) };
|
|
394
|
+
return { root: join(jawHome ?? JAW_HOME, 'backups', 'skills-conflicts', stamp) };
|
|
318
395
|
}
|
|
319
396
|
function resolveSymlinkTarget(linkPath, rawTarget) {
|
|
320
397
|
return isAbsolute(rawTarget)
|
|
321
398
|
? resolve(rawTarget)
|
|
322
399
|
: resolve(dirname(linkPath), rawTarget);
|
|
323
400
|
}
|
|
401
|
+
function isCliJawManaged(linkPath, jawHome) {
|
|
402
|
+
try {
|
|
403
|
+
const stat = fs.lstatSync(linkPath);
|
|
404
|
+
if (stat.isSymbolicLink()) {
|
|
405
|
+
const rawTarget = fs.readlinkSync(linkPath);
|
|
406
|
+
const currentTarget = resolveSymlinkTarget(linkPath, rawTarget);
|
|
407
|
+
// Symlink pointing into any .cli-jaw directory is managed
|
|
408
|
+
return jawHome ? currentTarget.startsWith(resolve(jawHome)) : currentTarget.includes('.cli-jaw');
|
|
409
|
+
}
|
|
410
|
+
}
|
|
411
|
+
catch { /* not a symlink or doesn't exist */ }
|
|
412
|
+
return false;
|
|
413
|
+
}
|
|
324
414
|
function ensureSymlinkSafe(target, linkPath, opts = {}) {
|
|
325
415
|
const onConflict = opts.onConflict === 'skip' ? 'skip' : 'backup';
|
|
416
|
+
const allowReplaceManaged = opts.allowReplaceManaged === true;
|
|
417
|
+
const jawHome = opts.jawHome;
|
|
326
418
|
const backupContext = opts.backupContext || createBackupContext();
|
|
327
419
|
const absTarget = resolve(target);
|
|
328
420
|
const baseResult = {
|
|
@@ -338,18 +430,31 @@ function ensureSymlinkSafe(target, linkPath, opts = {}) {
|
|
|
338
430
|
if (currentTarget === absTarget) {
|
|
339
431
|
return { ...baseResult, status: 'ok', action: 'noop' };
|
|
340
432
|
}
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
433
|
+
// Stale symlink: only replace if managed by cli-jaw AND caller opts in
|
|
434
|
+
const managed = isCliJawManaged(linkPath, jawHome);
|
|
435
|
+
if (managed && allowReplaceManaged) {
|
|
436
|
+
fs.unlinkSync(linkPath);
|
|
437
|
+
fs.mkdirSync(dirname(linkPath), { recursive: true });
|
|
438
|
+
fs.symlinkSync(target, linkPath);
|
|
439
|
+
console.log(`[skills] symlink(updated): ${linkPath} → ${target}`);
|
|
440
|
+
return {
|
|
441
|
+
...baseResult,
|
|
442
|
+
status: 'ok',
|
|
443
|
+
action: 'replace_symlink',
|
|
444
|
+
previousTarget: rawTarget,
|
|
445
|
+
managed,
|
|
446
|
+
};
|
|
447
|
+
}
|
|
448
|
+
// Not managed, respect onConflict
|
|
449
|
+
if (onConflict === 'skip') {
|
|
450
|
+
console.warn(`[skills] conflict(skip): ${linkPath} (unmanaged symlink preserved)`);
|
|
451
|
+
return { ...baseResult, status: 'skip', action: 'conflict_skip' };
|
|
452
|
+
}
|
|
453
|
+
// backup mode: fall through to backup_replace below
|
|
351
454
|
}
|
|
352
455
|
if (onConflict === 'skip') {
|
|
456
|
+
// Non-symlink path: check if allowReplaceManaged applies
|
|
457
|
+
// (real dirs are never "managed" — only symlinks can be reliably attributed to cli-jaw)
|
|
353
458
|
console.warn(`[skills] conflict(skip): ${linkPath} (existing path preserved)`);
|
|
354
459
|
return { ...baseResult, status: 'skip', action: 'conflict_skip' };
|
|
355
460
|
}
|