@onuraslan/sdd 1.0.7 → 1.1.0
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 +16 -2
- package/cli/install.js +4 -3
- package/cli/targets.js +12 -4
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -12,14 +12,28 @@ You can install SDD in two ways:
|
|
|
12
12
|
|
|
13
13
|
### Option 1: npm package installation (recommended)
|
|
14
14
|
|
|
15
|
-
Install the package and run the interactive installer from the npm bundle itself:
|
|
15
|
+
Install or update the package and run the interactive installer from the npm bundle itself:
|
|
16
16
|
|
|
17
17
|
```bash
|
|
18
|
-
npx @onuraslan/sdd install
|
|
18
|
+
npx @onuraslan/sdd@latest install
|
|
19
19
|
```
|
|
20
20
|
|
|
21
21
|
This installer reads the skill content from the installed npm package and copies it directly to the target agent directory. It does not clone the GitHub repository at runtime.
|
|
22
22
|
|
|
23
|
+
#### Update an existing installation
|
|
24
|
+
|
|
25
|
+
To upgrade the installed skill set to the latest published version, simply rerun the same command:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
npx @onuraslan/sdd@latest install
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
If you installed it globally instead of via npx, update it with:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
npm update -g @onuraslan/sdd
|
|
35
|
+
```
|
|
36
|
+
|
|
23
37
|
### Option 2: Claude Code plugin marketplace
|
|
24
38
|
|
|
25
39
|
```bash
|
package/cli/install.js
CHANGED
|
@@ -87,9 +87,10 @@ async function writeMcpConfig(target, selectedPlugins, scope = 'project', cwd =
|
|
|
87
87
|
mcp: {
|
|
88
88
|
...(existing.mcp || {}),
|
|
89
89
|
playwright: {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
90
|
+
...(existing.mcp?.playwright || {}),
|
|
91
|
+
type: 'local',
|
|
92
|
+
command: ['npx', '-y', '@playwright/mcp'],
|
|
93
|
+
enabled: true
|
|
93
94
|
}
|
|
94
95
|
}
|
|
95
96
|
};
|
package/cli/targets.js
CHANGED
|
@@ -55,11 +55,18 @@ export function resolveTargetPath(targetId, scope = 'project', cwd = process.cwd
|
|
|
55
55
|
}
|
|
56
56
|
|
|
57
57
|
const baseDir = resolveInstallBase(scope, cwd);
|
|
58
|
-
const
|
|
59
|
-
const
|
|
58
|
+
const isOpenCodeUserScope = target.id === 'opencode' && scope === 'user';
|
|
59
|
+
const skillDirectory = isOpenCodeUserScope
|
|
60
|
+
? path.join('.config', 'opencode', 'skills')
|
|
61
|
+
: target.skillDirectory;
|
|
60
62
|
const effectiveMcpConfigPath = target.id === 'claude' && scope === 'user'
|
|
61
63
|
? '.claude.json'
|
|
62
|
-
: target.
|
|
64
|
+
: target.id === 'opencode' && scope === 'user'
|
|
65
|
+
? path.join('.config', 'opencode', 'opencode.json')
|
|
66
|
+
: target.mcpConfigPath;
|
|
67
|
+
|
|
68
|
+
const installRoot = path.resolve(baseDir, skillDirectory);
|
|
69
|
+
const metadataPath = path.resolve(baseDir, path.dirname(skillDirectory), 'sdd.json');
|
|
63
70
|
const mcpConfigPath = path.resolve(baseDir, effectiveMcpConfigPath);
|
|
64
71
|
|
|
65
72
|
return {
|
|
@@ -67,6 +74,7 @@ export function resolveTargetPath(targetId, scope = 'project', cwd = process.cwd
|
|
|
67
74
|
baseDir,
|
|
68
75
|
installRoot,
|
|
69
76
|
metadataPath,
|
|
70
|
-
mcpConfigPath
|
|
77
|
+
mcpConfigPath,
|
|
78
|
+
skillDirectory
|
|
71
79
|
};
|
|
72
80
|
}
|