sdd-mcp-server 1.8.0 ā 2.0.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 +97 -41
- package/dist/cli/install-skills.d.ts +53 -0
- package/dist/cli/install-skills.js +171 -0
- package/dist/cli/install-skills.js.map +1 -0
- package/dist/index.js +140 -122
- package/dist/index.js.map +1 -1
- package/dist/skills/SkillManager.d.ts +69 -0
- package/dist/skills/SkillManager.js +138 -0
- package/dist/skills/SkillManager.js.map +1 -0
- package/package.json +6 -3
- package/skills/sdd-commit/SKILL.md +285 -0
- package/skills/sdd-design/SKILL.md +262 -0
- package/skills/sdd-implement/SKILL.md +281 -0
- package/skills/sdd-requirements/SKILL.md +140 -0
- package/skills/sdd-steering/SKILL.md +225 -0
- package/skills/sdd-steering-custom/SKILL.md +211 -0
- package/skills/sdd-tasks/SKILL.md +233 -0
- package/skills/simple-task/SKILL.md +148 -0
package/README.md
CHANGED
|
@@ -6,6 +6,8 @@
|
|
|
6
6
|
|
|
7
7
|
A Model Context Protocol (MCP) server implementing Spec-Driven Development (SDD) workflows for AI-agent CLIs and IDEs like Claude Code, Cursor, and others.
|
|
8
8
|
|
|
9
|
+
> šÆ **v1.9.0 - Hybrid MCP + Agent Skills Architecture**: Restructured for token efficiency! Template/guidance tools (requirements, design, tasks, steering, implement) are now **Claude Code Agent Skills** loaded on-demand. Action-oriented tools remain as MCP tools. ~55% token savings in typical operations. Install skills with `npx sdd-mcp install-skills`.
|
|
10
|
+
|
|
9
11
|
> š¤ **v1.8.0 - MCP Tool Standardization**: Updated `AGENTS.md` generation to use standard MCP tool calls (e.g., `sdd-init`) instead of legacy slash commands. Fixed `sdd-steering` to correctly generate `AGENTS.md` with the new format. Ensures consistent tool usage across all AI agents.
|
|
10
12
|
|
|
11
13
|
> š§ **v1.6.2 - Module Loading Fix**: Fixed critical bug where `sdd-steering` generated generic templates instead of analyzing actual codebases when run via `npx`. Root cause: hardcoded import paths didn't account for different execution contexts. Solution: Unified module loading system with **4-path fallback resolution** handling npm start, npm dev, node dist/index.js, and npx contexts. Comprehensive error handling with all attempted paths in error messages. Debug logging for troubleshooting. **100% test coverage** (71 tests passing, 6 new moduleLoader tests). Code review score: **9/10 (Excellent)** ā
. Production-ready with zero security issues!
|
|
@@ -148,83 +150,130 @@ npm install -g sdd-mcp-server@latest
|
|
|
148
150
|
sdd-mcp-server
|
|
149
151
|
```
|
|
150
152
|
|
|
151
|
-
##
|
|
153
|
+
## šÆ Agent Skills (NEW in v1.9.0)
|
|
154
|
+
|
|
155
|
+
SDD now uses a **hybrid architecture** for better token efficiency:
|
|
156
|
+
|
|
157
|
+
- **MCP Tools**: Action-oriented operations (init, status, approve, quality-check, validate, spec-impl)
|
|
158
|
+
- **Agent Skills**: Template/guidance-heavy operations (requirements, design, tasks, steering, implement, commit)
|
|
159
|
+
|
|
160
|
+
### Installing Agent Skills
|
|
161
|
+
|
|
162
|
+
```bash
|
|
163
|
+
# Install skills to your project's .claude/skills/ directory
|
|
164
|
+
npx sdd-mcp install-skills
|
|
165
|
+
|
|
166
|
+
# Or specify a custom path
|
|
167
|
+
npx sdd-mcp install-skills --path ./my-skills
|
|
168
|
+
|
|
169
|
+
# List available skills
|
|
170
|
+
npx sdd-mcp install-skills --list
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
### Available Skills
|
|
174
|
+
|
|
175
|
+
After installation, use these skills in Claude Code:
|
|
176
|
+
|
|
177
|
+
| Skill | Description |
|
|
178
|
+
|-------|-------------|
|
|
179
|
+
| `/sdd-requirements <feature>` | Generate EARS-formatted requirements with embedded quality checklist |
|
|
180
|
+
| `/sdd-design <feature>` | Create architecture design with Linus-style principles |
|
|
181
|
+
| `/sdd-tasks <feature>` | Generate TDD task breakdown with test pyramid guidance |
|
|
182
|
+
| `/sdd-implement <feature>` | Implementation guidelines with SOLID, security, TDD |
|
|
183
|
+
| `/sdd-steering` | Create/update project-specific steering documents |
|
|
184
|
+
| `/sdd-steering-custom` | Create custom steering with inclusion modes |
|
|
185
|
+
| `/sdd-commit` | Commit/PR guidelines with conventional commits |
|
|
186
|
+
|
|
187
|
+
### Token Efficiency
|
|
188
|
+
|
|
189
|
+
**Old Design** (static steering): ~3,800 tokens loaded for every operation
|
|
190
|
+
**New Design** (skills): ~1,700 tokens loaded only when skill invoked
|
|
191
|
+
|
|
192
|
+
**Savings**: ~55% fewer tokens in typical operations!
|
|
193
|
+
|
|
194
|
+
## š Available MCP Tools
|
|
152
195
|
|
|
153
196
|
Once connected to your AI client, you can use these MCP tools:
|
|
154
197
|
|
|
155
198
|
| Tool | Description | Usage |
|
|
156
199
|
|------|-------------|--------|
|
|
157
|
-
| `sdd-init` | Initialize new SDD project with interactive clarification |
|
|
158
|
-
| `sdd-
|
|
159
|
-
| `sdd-
|
|
160
|
-
| `sdd-tasks` | Generate TDD-focused task breakdown | Creates test-first implementation tasks following RED-GREEN-REFACTOR workflow |
|
|
161
|
-
| `sdd-implement` | Implementation guidelines | Provides implementation steering |
|
|
162
|
-
| `sdd-status` | Check workflow progress | Shows current phase and approvals |
|
|
163
|
-
| `sdd-approve` | Approve workflow phases | Mark phases as approved for progression |
|
|
200
|
+
| `sdd-init` | Initialize new SDD project with interactive clarification | Analyzes description quality (0-100 score), blocks if < 70%, asks targeted WHY/WHO/WHAT questions |
|
|
201
|
+
| `sdd-status` | Check workflow progress | Shows current phase and approvals for features |
|
|
202
|
+
| `sdd-approve` | Approve workflow phases | Mark phases (requirements, design, tasks) as approved |
|
|
164
203
|
| `sdd-quality-check` | Code quality analysis | Linus-style 5-layer code review |
|
|
165
204
|
| `sdd-context-load` | Load project context | Restore project memory and state |
|
|
166
|
-
| `sdd-template-render` | Render templates | Generate files from templates |
|
|
167
|
-
| `sdd-steering` | Create/update steering docs | Analyzes project to generate product.md, tech.md, structure.md + static docs: linus-review.md, commit.md, security-check.md, tdd-guideline.md, principles.md (SOLID/DRY/KISS/YAGNI/SoC/Modularity) |
|
|
168
|
-
| `sdd-steering-custom` | Create custom steering docs | Add specialized guidance documents |
|
|
169
205
|
| `sdd-validate-design` | Design quality validation | Interactive GO/NO-GO design review |
|
|
170
206
|
| `sdd-validate-gap` | Implementation gap analysis | Analyze requirements vs codebase |
|
|
171
207
|
| `sdd-spec-impl` | Execute tasks with TDD | Kent Beck's Red-Green-Refactor methodology |
|
|
208
|
+
| `sdd-list-skills` | List available Agent Skills | Shows skills that can be installed for Claude Code |
|
|
209
|
+
|
|
210
|
+
> **Note**: Template/guidance tools (`sdd-requirements`, `sdd-design`, `sdd-tasks`, `sdd-steering`, `sdd-implement`) are now **Agent Skills**. Install them with `npx sdd-mcp install-skills` and use as `/sdd-requirements`, `/sdd-design`, etc.
|
|
172
211
|
|
|
173
212
|
## š” Basic Workflow
|
|
174
213
|
|
|
175
|
-
1. **
|
|
176
|
-
```
|
|
214
|
+
1. **Setup: Install Skills & Initialize Project**
|
|
215
|
+
```bash
|
|
216
|
+
# Install SDD Agent Skills to your project
|
|
217
|
+
npx sdd-mcp install-skills
|
|
218
|
+
|
|
219
|
+
# Initialize project with MCP tool
|
|
177
220
|
Use sdd-init to create a new SDD project
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
- tdd-guideline.md (Test-Driven Development workflow)
|
|
182
|
-
- principles.md (SOLID, DRY, KISS, YAGNI, SoC, Modularity)
|
|
221
|
+
|
|
222
|
+
# Generate steering documents with Agent Skill
|
|
223
|
+
Use /sdd-steering to generate product.md, tech.md, structure.md
|
|
183
224
|
```
|
|
184
225
|
|
|
185
|
-
2. **Generate Requirements**
|
|
226
|
+
2. **Generate Requirements (Agent Skill)**
|
|
186
227
|
```
|
|
187
|
-
Use sdd-requirements to analyze your project
|
|
188
|
-
Automatically detects: language, framework, build tools, test frameworks
|
|
189
|
-
Creates EARS-formatted requirements
|
|
190
|
-
Use sdd-validate-gap to analyze implementation feasibility
|
|
228
|
+
Use /sdd-requirements <feature-name> to analyze your project
|
|
229
|
+
Automatically detects: language, framework, build tools, test frameworks
|
|
230
|
+
Creates EARS-formatted requirements with embedded quality checklist
|
|
231
|
+
Use sdd-validate-gap (MCP tool) to analyze implementation feasibility
|
|
191
232
|
```
|
|
192
233
|
|
|
193
|
-
3. **Create Design**
|
|
234
|
+
3. **Create Design (Agent Skill)**
|
|
194
235
|
```
|
|
195
|
-
Use sdd-design to generate architecture
|
|
196
|
-
Includes: component structure, data models, API design,
|
|
197
|
-
Use sdd-validate-design for GO/NO-GO design review
|
|
236
|
+
Use /sdd-design <feature-name> to generate architecture
|
|
237
|
+
Includes: component structure, data models, API design, Linus principles
|
|
238
|
+
Use sdd-validate-design (MCP tool) for GO/NO-GO design review
|
|
239
|
+
Use sdd-approve (MCP tool) to approve the design phase
|
|
198
240
|
```
|
|
199
241
|
|
|
200
|
-
4. **Plan Tasks with TDD**
|
|
242
|
+
4. **Plan Tasks with TDD (Agent Skill)**
|
|
201
243
|
```
|
|
202
|
-
Use sdd-tasks to create TDD-focused
|
|
244
|
+
Use /sdd-tasks <feature-name> to create TDD-focused task breakdown
|
|
245
|
+
Includes test pyramid guidance (70/20/10 ratio)
|
|
203
246
|
Tasks follow RED-GREEN-REFACTOR workflow automatically
|
|
204
|
-
|
|
247
|
+
Use sdd-approve (MCP tool) to approve the tasks phase
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
5. **Implement with TDD (Agent Skill + MCP Tool)**
|
|
251
|
+
```
|
|
252
|
+
Use /sdd-implement <feature-name> for implementation guidelines
|
|
253
|
+
Use sdd-spec-impl (MCP tool) to execute tasks with TDD methodology
|
|
254
|
+
Use sdd-quality-check (MCP tool) for Linus-style code review
|
|
205
255
|
```
|
|
206
256
|
|
|
207
|
-
|
|
257
|
+
6. **Commit Changes (Agent Skill)**
|
|
208
258
|
```
|
|
209
|
-
Use sdd-
|
|
210
|
-
Follow
|
|
211
|
-
Use sdd-quality-check for Linus-style code review and SOLID principles validation
|
|
259
|
+
Use /sdd-commit for commit message and PR guidelines
|
|
260
|
+
Follow conventional commits format
|
|
212
261
|
```
|
|
213
262
|
|
|
214
|
-
|
|
263
|
+
7. **Monitor & Manage (MCP Tools)**
|
|
215
264
|
```
|
|
216
265
|
Use sdd-status to check workflow progress and phase approvals
|
|
217
|
-
Use sdd-approve to mark phases as approved
|
|
218
266
|
Use sdd-context-load to restore project memory
|
|
219
267
|
```
|
|
220
268
|
|
|
221
|
-
## Latest Updates (v1.
|
|
269
|
+
## Latest Updates (v1.9.0)
|
|
222
270
|
|
|
223
271
|
**What's New**:
|
|
224
|
-
-
|
|
225
|
-
- ā
**
|
|
226
|
-
- ā
**
|
|
227
|
-
- ā
**
|
|
272
|
+
- šÆ **Hybrid MCP + Agent Skills Architecture**: Template/guidance tools moved to Claude Code Agent Skills for ~55% token savings
|
|
273
|
+
- ā
**7 Agent Skills**: sdd-requirements, sdd-design, sdd-tasks, sdd-implement, sdd-steering, sdd-steering-custom, sdd-commit
|
|
274
|
+
- ā
**Skill Installation CLI**: `npx sdd-mcp install-skills` to install skills to `.claude/skills/`
|
|
275
|
+
- ā
**New MCP Tool**: `sdd-list-skills` to list available skills
|
|
276
|
+
- ā
**Token Efficiency**: Guidance loaded on-demand instead of always-on steering
|
|
228
277
|
|
|
229
278
|
**Upgrade Commands**:
|
|
230
279
|
```bash
|
|
@@ -233,10 +282,17 @@ npx -y sdd-mcp-server@latest
|
|
|
233
282
|
|
|
234
283
|
# Global installation
|
|
235
284
|
npm install -g sdd-mcp-server@latest
|
|
285
|
+
|
|
286
|
+
# Install Agent Skills to your project
|
|
287
|
+
npx sdd-mcp install-skills
|
|
236
288
|
```
|
|
237
289
|
|
|
238
290
|
## Previous Versions
|
|
239
291
|
|
|
292
|
+
### v1.8.x
|
|
293
|
+
- MCP tool standardization (standard tool calls vs slash commands)
|
|
294
|
+
- Updated AGENTS.md generation
|
|
295
|
+
|
|
240
296
|
### v1.6.x
|
|
241
297
|
- Module loading fixes and architecture refactoring
|
|
242
298
|
- Improved requirements clarification service
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* CLI options for install-skills command
|
|
4
|
+
*/
|
|
5
|
+
export interface CLIOptions {
|
|
6
|
+
/** Target path for skill installation */
|
|
7
|
+
targetPath: string;
|
|
8
|
+
/** Only list skills, don't install */
|
|
9
|
+
listOnly: boolean;
|
|
10
|
+
/** Show help message */
|
|
11
|
+
showHelp: boolean;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* CLI for installing SDD skills to a project
|
|
15
|
+
*/
|
|
16
|
+
export declare class InstallSkillsCLI {
|
|
17
|
+
private skillManager;
|
|
18
|
+
/**
|
|
19
|
+
* Create CLI instance
|
|
20
|
+
* @param skillsPath - Optional path to skills directory (for testing)
|
|
21
|
+
*/
|
|
22
|
+
constructor(skillsPath?: string);
|
|
23
|
+
/**
|
|
24
|
+
* Get the default skills path based on package location
|
|
25
|
+
*/
|
|
26
|
+
private getDefaultSkillsPath;
|
|
27
|
+
/**
|
|
28
|
+
* Parse command line arguments
|
|
29
|
+
* @param args - Command line arguments (process.argv.slice(2))
|
|
30
|
+
* @returns Parsed options
|
|
31
|
+
*/
|
|
32
|
+
parseArgs(args: string[]): CLIOptions;
|
|
33
|
+
/**
|
|
34
|
+
* Run the CLI with given options
|
|
35
|
+
* @param options - CLI options
|
|
36
|
+
*/
|
|
37
|
+
run(options: CLIOptions): Promise<void>;
|
|
38
|
+
/**
|
|
39
|
+
* List available skills
|
|
40
|
+
*/
|
|
41
|
+
private listSkills;
|
|
42
|
+
/**
|
|
43
|
+
* Install skills to target directory
|
|
44
|
+
* @param targetPath - Target directory
|
|
45
|
+
*/
|
|
46
|
+
private installSkills;
|
|
47
|
+
/**
|
|
48
|
+
* Get help text
|
|
49
|
+
* @returns Help message
|
|
50
|
+
*/
|
|
51
|
+
getHelp(): string;
|
|
52
|
+
}
|
|
53
|
+
export declare function main(): Promise<void>;
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import * as path from 'path';
|
|
3
|
+
import { SkillManager } from '../skills/SkillManager.js';
|
|
4
|
+
/**
|
|
5
|
+
* CLI for installing SDD skills to a project
|
|
6
|
+
*/
|
|
7
|
+
export class InstallSkillsCLI {
|
|
8
|
+
skillManager;
|
|
9
|
+
/**
|
|
10
|
+
* Create CLI instance
|
|
11
|
+
* @param skillsPath - Optional path to skills directory (for testing)
|
|
12
|
+
*/
|
|
13
|
+
constructor(skillsPath) {
|
|
14
|
+
// If no path provided, determine from package location
|
|
15
|
+
const resolvedPath = skillsPath || this.getDefaultSkillsPath();
|
|
16
|
+
this.skillManager = new SkillManager(resolvedPath);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Get the default skills path based on package location
|
|
20
|
+
*/
|
|
21
|
+
getDefaultSkillsPath() {
|
|
22
|
+
// In production, skills are at package root
|
|
23
|
+
// Try to find skills directory relative to common locations
|
|
24
|
+
const possiblePaths = [
|
|
25
|
+
path.resolve(process.cwd(), 'node_modules/sdd-mcp-server/skills'),
|
|
26
|
+
path.resolve(process.cwd(), 'skills'),
|
|
27
|
+
path.resolve(__dirname, '../../skills'),
|
|
28
|
+
path.resolve(__dirname, '../../../skills'),
|
|
29
|
+
];
|
|
30
|
+
// Return first path (we'll validate in SkillManager)
|
|
31
|
+
return possiblePaths[0];
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Parse command line arguments
|
|
35
|
+
* @param args - Command line arguments (process.argv.slice(2))
|
|
36
|
+
* @returns Parsed options
|
|
37
|
+
*/
|
|
38
|
+
parseArgs(args) {
|
|
39
|
+
const options = {
|
|
40
|
+
targetPath: '.claude/skills',
|
|
41
|
+
listOnly: false,
|
|
42
|
+
showHelp: false,
|
|
43
|
+
};
|
|
44
|
+
for (let i = 0; i < args.length; i++) {
|
|
45
|
+
const arg = args[i];
|
|
46
|
+
switch (arg) {
|
|
47
|
+
case '--path':
|
|
48
|
+
if (i + 1 < args.length) {
|
|
49
|
+
options.targetPath = args[++i];
|
|
50
|
+
}
|
|
51
|
+
break;
|
|
52
|
+
case '--list':
|
|
53
|
+
case '-l':
|
|
54
|
+
options.listOnly = true;
|
|
55
|
+
break;
|
|
56
|
+
case '--help':
|
|
57
|
+
case '-h':
|
|
58
|
+
options.showHelp = true;
|
|
59
|
+
break;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
return options;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Run the CLI with given options
|
|
66
|
+
* @param options - CLI options
|
|
67
|
+
*/
|
|
68
|
+
async run(options) {
|
|
69
|
+
if (options.showHelp) {
|
|
70
|
+
console.log(this.getHelp());
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
if (options.listOnly) {
|
|
74
|
+
await this.listSkills();
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
await this.installSkills(options.targetPath);
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* List available skills
|
|
81
|
+
*/
|
|
82
|
+
async listSkills() {
|
|
83
|
+
const skills = await this.skillManager.listSkills();
|
|
84
|
+
if (skills.length === 0) {
|
|
85
|
+
console.log('No skills available');
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
console.log('\nš Available Skills:\n');
|
|
89
|
+
for (const skill of skills) {
|
|
90
|
+
console.log(` ⢠${skill.name}`);
|
|
91
|
+
if (skill.description) {
|
|
92
|
+
console.log(` ${skill.description}`);
|
|
93
|
+
}
|
|
94
|
+
console.log('');
|
|
95
|
+
}
|
|
96
|
+
console.log(`Total: ${skills.length} skills\n`);
|
|
97
|
+
console.log('Run "npx sdd-mcp install-skills" to install all skills.\n');
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Install skills to target directory
|
|
101
|
+
* @param targetPath - Target directory
|
|
102
|
+
*/
|
|
103
|
+
async installSkills(targetPath) {
|
|
104
|
+
console.log(`\nš¦ Installing SDD skills to: ${targetPath}\n`);
|
|
105
|
+
const result = await this.skillManager.installSkills(targetPath);
|
|
106
|
+
if (result.installed.length > 0) {
|
|
107
|
+
const plural = result.installed.length === 1 ? 'skill' : 'skills';
|
|
108
|
+
console.log(`ā
Installed ${result.installed.length} ${plural}:`);
|
|
109
|
+
for (const name of result.installed) {
|
|
110
|
+
console.log(` ⢠${name}`);
|
|
111
|
+
}
|
|
112
|
+
console.log('');
|
|
113
|
+
}
|
|
114
|
+
if (result.failed.length > 0) {
|
|
115
|
+
console.error(`ā Failed to install ${result.failed.length} skill(s):`);
|
|
116
|
+
for (const failure of result.failed) {
|
|
117
|
+
console.error(` ⢠${failure.name}: ${failure.error}`);
|
|
118
|
+
}
|
|
119
|
+
console.log('');
|
|
120
|
+
}
|
|
121
|
+
if (result.installed.length > 0) {
|
|
122
|
+
console.log('š Skills installed successfully!');
|
|
123
|
+
console.log(' Use /sdd-requirements, /sdd-design, etc. in Claude Code.\n');
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Get help text
|
|
128
|
+
* @returns Help message
|
|
129
|
+
*/
|
|
130
|
+
getHelp() {
|
|
131
|
+
return `
|
|
132
|
+
SDD Skills Installer
|
|
133
|
+
|
|
134
|
+
Usage: npx sdd-mcp install-skills [options]
|
|
135
|
+
|
|
136
|
+
Options:
|
|
137
|
+
--path <dir> Target directory for skills (default: .claude/skills)
|
|
138
|
+
--list, -l List available skills without installing
|
|
139
|
+
--help, -h Show this help message
|
|
140
|
+
|
|
141
|
+
Examples:
|
|
142
|
+
npx sdd-mcp install-skills # Install to .claude/skills
|
|
143
|
+
npx sdd-mcp install-skills --path ./ # Install to current directory
|
|
144
|
+
npx sdd-mcp install-skills --list # List available skills
|
|
145
|
+
|
|
146
|
+
Skills will be installed to your project's .claude/skills directory.
|
|
147
|
+
After installation, you can use them in Claude Code with:
|
|
148
|
+
/sdd-requirements <feature-name>
|
|
149
|
+
/sdd-design <feature-name>
|
|
150
|
+
/sdd-tasks <feature-name>
|
|
151
|
+
/sdd-implement <feature-name>
|
|
152
|
+
/sdd-steering
|
|
153
|
+
/sdd-commit
|
|
154
|
+
`;
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
// Main entry point when run directly
|
|
158
|
+
export async function main() {
|
|
159
|
+
const cli = new InstallSkillsCLI();
|
|
160
|
+
const options = cli.parseArgs(process.argv.slice(2));
|
|
161
|
+
await cli.run(options);
|
|
162
|
+
}
|
|
163
|
+
// Only run main if this is the entry point (works in both ESM and CJS)
|
|
164
|
+
const isMainModule = typeof require !== 'undefined' && require.main === module;
|
|
165
|
+
if (isMainModule) {
|
|
166
|
+
main().catch((error) => {
|
|
167
|
+
console.error('Error:', error.message);
|
|
168
|
+
process.exit(1);
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
//# sourceMappingURL=install-skills.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install-skills.js","sourceRoot":"","sources":["../../src/cli/install-skills.ts"],"names":[],"mappings":"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"}
|