@slope-dev/slope 1.13.0 → 1.13.2

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.
Files changed (126) hide show
  1. package/README.md +118 -189
  2. package/dist/adapters.d.ts +15 -0
  3. package/dist/adapters.d.ts.map +1 -0
  4. package/dist/adapters.js +17 -0
  5. package/dist/adapters.js.map +1 -0
  6. package/dist/cli/commands/guard.d.ts +19 -0
  7. package/dist/cli/commands/guard.d.ts.map +1 -1
  8. package/dist/cli/commands/guard.js +89 -1
  9. package/dist/cli/commands/guard.js.map +1 -1
  10. package/dist/cli/commands/hook.d.ts +5 -0
  11. package/dist/cli/commands/hook.d.ts.map +1 -1
  12. package/dist/cli/commands/hook.js +59 -83
  13. package/dist/cli/commands/hook.js.map +1 -1
  14. package/dist/cli/commands/init.d.ts +13 -4
  15. package/dist/cli/commands/init.d.ts.map +1 -1
  16. package/dist/cli/commands/init.js +309 -16
  17. package/dist/cli/commands/init.js.map +1 -1
  18. package/dist/cli/commands/metaphor.d.ts +3 -0
  19. package/dist/cli/commands/metaphor.d.ts.map +1 -0
  20. package/dist/cli/commands/metaphor.js +100 -0
  21. package/dist/cli/commands/metaphor.js.map +1 -0
  22. package/dist/cli/commands/roadmap.d.ts.map +1 -1
  23. package/dist/cli/commands/roadmap.js +94 -1
  24. package/dist/cli/commands/roadmap.js.map +1 -1
  25. package/dist/cli/commands/store.d.ts +2 -0
  26. package/dist/cli/commands/store.d.ts.map +1 -0
  27. package/dist/cli/commands/store.js +204 -0
  28. package/dist/cli/commands/store.js.map +1 -0
  29. package/dist/cli/guards/branch-before-commit.d.ts +7 -0
  30. package/dist/cli/guards/branch-before-commit.d.ts.map +1 -0
  31. package/dist/cli/guards/branch-before-commit.js +43 -0
  32. package/dist/cli/guards/branch-before-commit.js.map +1 -0
  33. package/dist/cli/guards/stop-check.d.ts +4 -0
  34. package/dist/cli/guards/stop-check.d.ts.map +1 -1
  35. package/dist/cli/guards/stop-check.js +50 -16
  36. package/dist/cli/guards/stop-check.js.map +1 -1
  37. package/dist/cli/index.js +20 -1
  38. package/dist/cli/index.js.map +1 -1
  39. package/dist/cli/registry.d.ts.map +1 -1
  40. package/dist/cli/registry.js +2 -0
  41. package/dist/cli/registry.js.map +1 -1
  42. package/dist/cli/store.d.ts +9 -0
  43. package/dist/cli/store.d.ts.map +1 -1
  44. package/dist/cli/store.js +29 -0
  45. package/dist/cli/store.js.map +1 -1
  46. package/dist/cli/template-generator.d.ts +1 -1
  47. package/dist/cli/template-generator.d.ts.map +1 -1
  48. package/dist/cli/template-generator.js +5 -3
  49. package/dist/cli/template-generator.js.map +1 -1
  50. package/dist/core/adapters/claude-code.d.ts +28 -0
  51. package/dist/core/adapters/claude-code.d.ts.map +1 -0
  52. package/dist/core/adapters/claude-code.js +148 -0
  53. package/dist/core/adapters/claude-code.js.map +1 -0
  54. package/dist/core/adapters/cline.d.ts +36 -0
  55. package/dist/core/adapters/cline.d.ts.map +1 -0
  56. package/dist/core/adapters/cline.js +279 -0
  57. package/dist/core/adapters/cline.js.map +1 -0
  58. package/dist/core/adapters/cursor.d.ts +38 -0
  59. package/dist/core/adapters/cursor.d.ts.map +1 -0
  60. package/dist/core/adapters/cursor.js +143 -0
  61. package/dist/core/adapters/cursor.js.map +1 -0
  62. package/dist/core/adapters/generic.d.ts +29 -0
  63. package/dist/core/adapters/generic.d.ts.map +1 -0
  64. package/dist/core/adapters/generic.js +142 -0
  65. package/dist/core/adapters/generic.js.map +1 -0
  66. package/dist/core/adapters/windsurf.d.ts +37 -0
  67. package/dist/core/adapters/windsurf.d.ts.map +1 -0
  68. package/dist/core/adapters/windsurf.js +170 -0
  69. package/dist/core/adapters/windsurf.js.map +1 -0
  70. package/dist/core/config.d.ts +3 -0
  71. package/dist/core/config.d.ts.map +1 -1
  72. package/dist/core/config.js +9 -0
  73. package/dist/core/config.js.map +1 -1
  74. package/dist/core/guard.d.ts +10 -3
  75. package/dist/core/guard.d.ts.map +1 -1
  76. package/dist/core/guard.js +33 -59
  77. package/dist/core/guard.js.map +1 -1
  78. package/dist/core/harness.d.ts +61 -0
  79. package/dist/core/harness.d.ts.map +1 -0
  80. package/dist/core/harness.js +88 -0
  81. package/dist/core/harness.js.map +1 -0
  82. package/dist/core/index.d.ts +15 -5
  83. package/dist/core/index.d.ts.map +1 -1
  84. package/dist/core/index.js +13 -3
  85. package/dist/core/index.js.map +1 -1
  86. package/dist/core/interview.js +1 -1
  87. package/dist/core/interview.js.map +1 -1
  88. package/dist/core/metaphor.d.ts +14 -0
  89. package/dist/core/metaphor.d.ts.map +1 -1
  90. package/dist/core/metaphor.js +14 -0
  91. package/dist/core/metaphor.js.map +1 -1
  92. package/dist/core/plugins.d.ts +12 -0
  93. package/dist/core/plugins.d.ts.map +1 -1
  94. package/dist/core/plugins.js +58 -1
  95. package/dist/core/plugins.js.map +1 -1
  96. package/dist/core/roadmap.d.ts.map +1 -1
  97. package/dist/core/roadmap.js +5 -4
  98. package/dist/core/roadmap.js.map +1 -1
  99. package/dist/core/store-health.d.ts +11 -0
  100. package/dist/core/store-health.d.ts.map +1 -0
  101. package/dist/core/store-health.js +26 -0
  102. package/dist/core/store-health.js.map +1 -0
  103. package/dist/core/store.d.ts +10 -0
  104. package/dist/core/store.d.ts.map +1 -1
  105. package/dist/core/store.js.map +1 -1
  106. package/dist/mcp/index.d.ts +2 -2
  107. package/dist/mcp/index.d.ts.map +1 -1
  108. package/dist/mcp/index.js +55 -6
  109. package/dist/mcp/index.js.map +1 -1
  110. package/dist/mcp/index.test.js +7 -4
  111. package/dist/mcp/index.test.js.map +1 -1
  112. package/dist/mcp/registry.d.ts.map +1 -1
  113. package/dist/mcp/registry.js +32 -3
  114. package/dist/mcp/registry.js.map +1 -1
  115. package/dist/mcp/sandbox.d.ts.map +1 -1
  116. package/dist/mcp/sandbox.js +7 -1
  117. package/dist/mcp/sandbox.js.map +1 -1
  118. package/dist/store/index.d.ts +8 -2
  119. package/dist/store/index.d.ts.map +1 -1
  120. package/dist/store/index.js +27 -3
  121. package/dist/store/index.js.map +1 -1
  122. package/dist/store-pg/index.d.ts +3 -0
  123. package/dist/store-pg/index.d.ts.map +1 -1
  124. package/dist/store-pg/index.js +49 -1
  125. package/dist/store-pg/index.js.map +1 -1
  126. package/package.json +16 -7
@@ -4,8 +4,16 @@ import { fileURLToPath } from 'node:url';
4
4
  import { createConfig } from '../config.js';
5
5
  import { saveHooksConfig } from '../hooks-config.js';
6
6
  import { resolveMetaphor } from '../metaphor.js';
7
+ import { listMetaphors } from '../../core/metaphor.js';
7
8
  import { saveVision } from '../../core/vision.js';
8
9
  import { generateProjectContext, generateSprintChecklist, generateCommitDiscipline, generateReviewLoop, generateCodebaseContextRule, generateCursorSprintChecklist, generateCursorCommitDiscipline, generateCursorReviewLoop, generateCursorCodebaseContextRule, generateCursorrules, generateAgentsMd, generateOpenCodePlugin, generateGenericChecklist, } from '../template-generator.js';
10
+ import { getAdapter, ADAPTER_PRIORITY } from '../../core/harness.js';
11
+ // Side-effect imports: ensure all adapters are registered for detectPlatforms()
12
+ import '../../core/adapters/claude-code.js';
13
+ import '../../core/adapters/cursor.js';
14
+ import '../../core/adapters/windsurf.js';
15
+ import '../../core/adapters/cline.js';
16
+ import '../../core/adapters/generic.js';
9
17
  const __dirname = dirname(fileURLToPath(import.meta.url));
10
18
  const EXAMPLE_SCORECARD = {
11
19
  sprint_number: 1,
@@ -90,29 +98,44 @@ const STARTER_ROADMAP = {
90
98
  },
91
99
  ],
92
100
  };
93
- function detectProvidersFromArgs(args) {
101
+ export function detectProvidersFromArgs(args) {
94
102
  const providers = [];
95
103
  if (args.includes('--claude-code'))
96
104
  providers.push('claude-code');
97
105
  if (args.includes('--cursor'))
98
106
  providers.push('cursor');
107
+ if (args.includes('--windsurf'))
108
+ providers.push('windsurf');
109
+ if (args.includes('--cline'))
110
+ providers.push('cline');
99
111
  if (args.includes('--opencode'))
100
112
  providers.push('opencode');
101
113
  if (args.includes('--generic'))
102
114
  providers.push('generic');
115
+ // Unified --harness=<id> flag
116
+ const harnessArg = args.find(a => a.startsWith('--harness='));
117
+ if (harnessArg) {
118
+ const id = harnessArg.slice('--harness='.length);
119
+ if (id && !providers.includes(id))
120
+ providers.push(id);
121
+ }
122
+ // --all includes all real harnesses + opencode; generic is a fallback, not included
103
123
  if (args.includes('--all'))
104
- return ['claude-code', 'cursor', 'opencode'];
124
+ return ['claude-code', 'cursor', 'windsurf', 'opencode'];
105
125
  return providers;
106
126
  }
107
- /** Detect platforms present in the project directory */
127
+ /** Detect platforms present in the project directory using the adapter framework */
108
128
  export function detectPlatforms(cwd) {
109
129
  const detected = [];
110
- if (existsSync(join(cwd, '.claude')) || existsSync(join(cwd, 'CLAUDE.md'))) {
111
- detected.push('claude-code');
112
- }
113
- if (existsSync(join(cwd, '.cursor')) || existsSync(join(cwd, '.cursorrules'))) {
114
- detected.push('cursor');
130
+ // Check all registered adapters via ADAPTER_PRIORITY
131
+ for (const id of ADAPTER_PRIORITY) {
132
+ if (id === 'generic')
133
+ continue;
134
+ const a = getAdapter(id);
135
+ if (a?.detect(cwd))
136
+ detected.push(id);
115
137
  }
138
+ // OpenCode: no adapter, but has init templates
116
139
  if (existsSync(join(cwd, 'opencode.json')) || existsSync(join(cwd, 'AGENTS.md'))) {
117
140
  detected.push('opencode');
118
141
  }
@@ -184,6 +207,93 @@ function installCursorTemplates(cwd, metaphor) {
184
207
  }
185
208
  console.log('\n Cursor rules installed to .cursor/rules/ and .cursorrules');
186
209
  }
210
+ function installWindsurfTemplates(cwd, metaphor) {
211
+ const rulesDir = join(cwd, '.windsurf', 'rules');
212
+ mkdirSync(rulesDir, { recursive: true });
213
+ // Windsurf uses .mdc rule format (same as Cursor)
214
+ const ruleGenerators = {
215
+ 'slope-sprint-checklist.mdc': generateCursorSprintChecklist(metaphor),
216
+ 'slope-commit-discipline.mdc': generateCursorCommitDiscipline(metaphor),
217
+ 'slope-review-loop.mdc': generateCursorReviewLoop(),
218
+ 'slope-codebase-context.mdc': generateCursorCodebaseContextRule(),
219
+ };
220
+ for (const [file, content] of Object.entries(ruleGenerators)) {
221
+ const dest = join(rulesDir, file);
222
+ if (!existsSync(dest)) {
223
+ writeFileSync(dest, content);
224
+ console.log(` Created ${dest}`);
225
+ }
226
+ }
227
+ // Generate .windsurfrules (project root context file)
228
+ const windsurfrulesDest = join(cwd, '.windsurfrules');
229
+ if (!existsSync(windsurfrulesDest)) {
230
+ writeFileSync(windsurfrulesDest, generateCursorrules(metaphor, 'windsurf'));
231
+ console.log(` Created ${windsurfrulesDest}`);
232
+ }
233
+ console.log('\n Windsurf rules installed to .windsurf/rules/ and .windsurfrules');
234
+ }
235
+ /** Strip .mdc YAML frontmatter (Cursor-specific) so Cline sees plain markdown. */
236
+ function stripMdcFrontmatter(content) {
237
+ return content.replace(/^---[\s\S]*?---\n*/, '');
238
+ }
239
+ function installClineTemplates(cwd, metaphor) {
240
+ const rulesDir = join(cwd, '.clinerules');
241
+ mkdirSync(rulesDir, { recursive: true });
242
+ // Cline reads .md files from .clinerules/ — reuse Cursor content with frontmatter stripped
243
+ const ruleGenerators = {
244
+ 'slope-sprint-checklist.md': stripMdcFrontmatter(generateCursorSprintChecklist(metaphor)),
245
+ 'slope-commit-discipline.md': stripMdcFrontmatter(generateCursorCommitDiscipline(metaphor)),
246
+ 'slope-review-loop.md': stripMdcFrontmatter(generateCursorReviewLoop()),
247
+ 'slope-codebase-context.md': stripMdcFrontmatter(generateCursorCodebaseContextRule()),
248
+ };
249
+ for (const [file, content] of Object.entries(ruleGenerators)) {
250
+ const dest = join(rulesDir, file);
251
+ if (!existsSync(dest)) {
252
+ writeFileSync(dest, content);
253
+ console.log(` Created ${dest}`);
254
+ }
255
+ }
256
+ // Generate Cline-specific context file (references .clinerules/ paths, not .cursor/)
257
+ const clinerulesDest = join(cwd, '.clinerules', 'slope-context.md');
258
+ if (!existsSync(clinerulesDest)) {
259
+ const contextContent = [
260
+ '# SLOPE — Sprint Tracking',
261
+ '',
262
+ 'This project uses SLOPE for sprint scoring and operational performance tracking.',
263
+ '',
264
+ '## Key Files',
265
+ '- `.slope/config.json` — SLOPE configuration',
266
+ '- `.clinerules/` — Sprint rules and checklists',
267
+ '- `.clinerules/hooks/` — SLOPE guard hooks',
268
+ '- `CODEBASE.md` — Auto-generated codebase map',
269
+ '- `docs/retros/` — Sprint scorecards',
270
+ '',
271
+ '## Commands',
272
+ '- `slope briefing` — Pre-sprint briefing',
273
+ '- `slope card` — Handicap card',
274
+ '- `slope validate` — Validate scorecard',
275
+ '- `slope map` — Regenerate codebase map',
276
+ '',
277
+ '## MCP Server',
278
+ 'Add the SLOPE MCP server in Cline settings (VS Code extension storage):',
279
+ '- Server name: `slope`',
280
+ '- Command: `npx -y mcp-slope-tools`',
281
+ '',
282
+ ].join('\n');
283
+ writeFileSync(clinerulesDest, contextContent);
284
+ console.log(` Created ${clinerulesDest}`);
285
+ }
286
+ console.log('\n Cline rules installed to .clinerules/');
287
+ }
288
+ function installClineMcpConfig(_cwd) {
289
+ // Cline MCP config lives in VS Code's extension storage (cline_mcp_settings.json),
290
+ // NOT in the workspace. We can't write to it from slope init.
291
+ // Users must add the SLOPE MCP server via Cline's UI or manually edit the global config.
292
+ console.log('\n Note: Cline MCP config is stored in VS Code extension storage.');
293
+ console.log(' Add the SLOPE MCP server in Cline settings:');
294
+ console.log(' Server name: slope');
295
+ console.log(' Command: npx -y mcp-slope-tools');
296
+ }
187
297
  function installGenericTemplates(cwd, metaphor) {
188
298
  const dest = join(cwd, 'SLOPE-CHECKLIST.md');
189
299
  if (!existsSync(dest)) {
@@ -194,7 +304,7 @@ function installGenericTemplates(cwd, metaphor) {
194
304
  }
195
305
  const SLOPE_MCP_ENTRY = {
196
306
  command: 'npx',
197
- args: ['@slope-dev/slope/mcp'],
307
+ args: ['-y', 'mcp-slope-tools'],
198
308
  };
199
309
  function installClaudeCodeMcpConfig(cwd) {
200
310
  const mcpPath = join(cwd, '.mcp.json');
@@ -233,6 +343,25 @@ function installCursorMcpConfig(cwd) {
233
343
  writeFileSync(mcpPath, JSON.stringify(config, null, 2) + '\n');
234
344
  console.log(` Created/updated ${mcpPath} (slope MCP server)`);
235
345
  }
346
+ function installWindsurfMcpConfig(cwd) {
347
+ const mcpPath = join(cwd, '.windsurf', 'mcp.json');
348
+ let config = {};
349
+ if (existsSync(mcpPath)) {
350
+ try {
351
+ const raw = readFileSync(mcpPath, 'utf8');
352
+ config = JSON.parse(raw);
353
+ }
354
+ catch {
355
+ config = {};
356
+ }
357
+ }
358
+ if (!config.mcpServers)
359
+ config.mcpServers = {};
360
+ config.mcpServers.slope = SLOPE_MCP_ENTRY;
361
+ mkdirSync(join(cwd, '.windsurf'), { recursive: true });
362
+ writeFileSync(mcpPath, JSON.stringify(config, null, 2) + '\n');
363
+ console.log(` Created/updated ${mcpPath} (slope MCP server)`);
364
+ }
236
365
  function installOpenCodeTemplates(cwd, metaphor) {
237
366
  // Generate AGENTS.md (OpenCode's project context file)
238
367
  const agentsMdDest = join(cwd, 'AGENTS.md');
@@ -269,7 +398,7 @@ function installOpenCodeMcpConfig(cwd) {
269
398
  config.mcp = {};
270
399
  config.mcp.slope = {
271
400
  type: 'local',
272
- command: ['npx', '@slope-dev/slope/mcp'],
401
+ command: ['npx', '-y', 'mcp-slope-tools'],
273
402
  };
274
403
  writeFileSync(mcpPath, JSON.stringify(config, null, 2) + '\n');
275
404
  console.log(` Created/updated ${mcpPath} (slope MCP server)`);
@@ -282,7 +411,11 @@ function installDefaultHooks(cwd, provider) {
282
411
  };
283
412
  const hooksDir = provider === 'claude-code'
284
413
  ? join(cwd, '.claude', 'hooks')
285
- : join(cwd, '.cursor', 'hooks');
414
+ : provider === 'windsurf'
415
+ ? join(cwd, '.windsurf', 'hooks')
416
+ : provider === 'cline'
417
+ ? join(cwd, '.clinerules', 'hooks')
418
+ : join(cwd, '.cursor', 'hooks');
286
419
  mkdirSync(hooksDir, { recursive: true });
287
420
  const { loadHooksConfig } = { loadHooksConfig: (c) => {
288
421
  try {
@@ -326,6 +459,16 @@ function installForProvider(cwd, provider, metaphor) {
326
459
  installCursorMcpConfig(cwd);
327
460
  installDefaultHooks(cwd, 'cursor');
328
461
  break;
462
+ case 'windsurf':
463
+ installWindsurfTemplates(cwd, metaphor);
464
+ installWindsurfMcpConfig(cwd);
465
+ installDefaultHooks(cwd, 'windsurf');
466
+ break;
467
+ case 'cline':
468
+ installClineTemplates(cwd, metaphor);
469
+ installClineMcpConfig(cwd);
470
+ installDefaultHooks(cwd, 'cline');
471
+ break;
329
472
  case 'opencode':
330
473
  installOpenCodeTemplates(cwd, metaphor);
331
474
  installOpenCodeMcpConfig(cwd);
@@ -334,8 +477,118 @@ function installForProvider(cwd, provider, metaphor) {
334
477
  case 'generic':
335
478
  installGenericTemplates(cwd, metaphor);
336
479
  break;
480
+ default:
481
+ console.warn(` Warning: no templates for provider "${provider}". Use --generic for a basic setup.`);
482
+ break;
337
483
  }
338
484
  }
485
+ /** Provider-specific next-step guidance messages */
486
+ const PROVIDER_NEXT_STEPS = {
487
+ 'claude-code': [
488
+ 'Restart Claude Code to load the SLOPE MCP server',
489
+ 'Rules installed to .claude/rules/ (auto-loaded)',
490
+ ],
491
+ cursor: [
492
+ 'MCP server configured in .cursor/mcp.json',
493
+ 'Rules installed to .cursor/rules/ (auto-loaded)',
494
+ ],
495
+ windsurf: [
496
+ 'MCP server configured in .windsurf/mcp.json',
497
+ 'Rules installed to .windsurf/rules/ (auto-loaded)',
498
+ ],
499
+ cline: [
500
+ 'Add the SLOPE MCP server via Cline settings (VS Code extension)',
501
+ 'Rules installed to .clinerules/ (auto-loaded)',
502
+ ],
503
+ opencode: [
504
+ 'MCP server configured in opencode.json',
505
+ 'Plugin installed to .opencode/plugins/slope-plugin.ts',
506
+ ],
507
+ generic: [
508
+ 'Checklist installed to SLOPE-CHECKLIST.md',
509
+ ],
510
+ };
511
+ /** Provider-specific files that get created */
512
+ const PROVIDER_FILES = {
513
+ 'claude-code': [
514
+ '.claude/rules/ (sprint checklist, commit discipline, review loop, codebase context)',
515
+ '.claude/hooks/ (pre-merge-check, session hooks)',
516
+ '.mcp.json (SLOPE MCP server)',
517
+ 'CLAUDE.md (project context)',
518
+ ],
519
+ cursor: [
520
+ '.cursor/rules/ (sprint checklist, commit discipline, review loop, codebase context)',
521
+ '.cursor/hooks/ (session hooks)',
522
+ '.cursor/mcp.json (SLOPE MCP server)',
523
+ '.cursorrules (project context)',
524
+ ],
525
+ windsurf: [
526
+ '.windsurf/rules/ (sprint checklist, commit discipline, review loop, codebase context)',
527
+ '.windsurf/hooks/ (session hooks)',
528
+ '.windsurf/mcp.json (SLOPE MCP server)',
529
+ '.windsurfrules (project context)',
530
+ ],
531
+ cline: [
532
+ '.clinerules/ (sprint checklist, commit discipline, review loop, codebase context)',
533
+ '.clinerules/hooks/ (session hooks)',
534
+ '.clinerules/slope-context.md (project context + MCP instructions)',
535
+ ],
536
+ opencode: [
537
+ 'AGENTS.md (project context)',
538
+ 'opencode.json (SLOPE MCP server)',
539
+ '.opencode/plugins/slope-plugin.ts (session lifecycle plugin)',
540
+ ],
541
+ generic: [
542
+ 'SLOPE-CHECKLIST.md (sprint checklist)',
543
+ ],
544
+ };
545
+ /** Print a summary of what was installed after init completes */
546
+ export function printInstallSummary(providers) {
547
+ console.log('\n' + '='.repeat(50));
548
+ console.log(' SLOPE initialized successfully');
549
+ console.log('='.repeat(50));
550
+ // Core files (always created)
551
+ console.log('\nCore files:');
552
+ console.log(' .slope/config.json — configuration');
553
+ console.log(' .slope/slope.db — SQLite store (sessions, claims, events)');
554
+ console.log(' .slope/common-issues.json — recurring patterns');
555
+ console.log(' .slope/hooks.json — installed hook registry');
556
+ console.log(' .slope/plugins/ — custom plugin directories');
557
+ console.log(' docs/retros/ — sprint scorecards');
558
+ console.log(' docs/backlog/roadmap.json — project roadmap');
559
+ // Per-provider files
560
+ if (providers.length > 0) {
561
+ console.log(`\nPlatform${providers.length > 1 ? 's' : ''}: ${providers.join(', ')}`);
562
+ for (const p of providers) {
563
+ const files = PROVIDER_FILES[p];
564
+ if (files) {
565
+ console.log(`\n ${p}:`);
566
+ for (const f of files) {
567
+ console.log(` ${f}`);
568
+ }
569
+ }
570
+ }
571
+ }
572
+ // Per-provider next steps
573
+ if (providers.length > 0) {
574
+ console.log('\nNext steps:');
575
+ for (const p of providers) {
576
+ const steps = PROVIDER_NEXT_STEPS[p];
577
+ if (steps) {
578
+ for (const step of steps) {
579
+ console.log(` - ${step}`);
580
+ }
581
+ }
582
+ }
583
+ }
584
+ // Suggested commands
585
+ console.log('\nGet started:');
586
+ console.log(' slope briefing — pre-sprint briefing with hazards and gotchas');
587
+ console.log(' slope card — view your handicap card');
588
+ console.log(' slope validate — validate a scorecard');
589
+ console.log(' slope hook add --level=full — install all guidance hooks');
590
+ console.log('');
591
+ }
339
592
  async function runInteractiveInit(cwd, args) {
340
593
  const { createInterface } = await import('node:readline');
341
594
  const { initFromInterview } = await import('../../core/interview.js');
@@ -348,7 +601,44 @@ async function runInteractiveInit(cwd, args) {
348
601
  process.exit(1);
349
602
  }
350
603
  const repoUrl = await ask('GitHub repo URL (optional): ') || undefined;
351
- const metaphor = await ask('Metaphor [golf]: ') || undefined;
604
+ // Build metaphor selection menu dynamically
605
+ // Ensure built-in metaphors are loaded
606
+ await import('../../core/metaphors/index.js');
607
+ const allMetaphors = listMetaphors();
608
+ const builtinIds = ['golf', 'tennis', 'baseball', 'gaming', 'dnd', 'matrix', 'agile'];
609
+ const builtins = builtinIds
610
+ .map(id => allMetaphors.find(m => m.id === id))
611
+ .filter((m) => m !== undefined);
612
+ const customs = allMetaphors.filter(m => !builtinIds.includes(m.id));
613
+ const menuItems = [...builtins, ...customs];
614
+ console.log('\nChoose a metaphor (display theme for SLOPE output):\n');
615
+ menuItems.forEach((m, i) => {
616
+ const tag = builtinIds.includes(m.id) ? '' : ' [custom]';
617
+ console.log(` ${i + 1}) ${m.id.padEnd(12)} — ${m.description}${tag}`);
618
+ });
619
+ const customIdx = menuItems.length + 1;
620
+ console.log(` ${customIdx}) ${'custom'.padEnd(12)} — Describe a theme and your AI agent will generate it`);
621
+ const metaphorChoice = await ask(`\nChoose [1]: `);
622
+ let metaphor;
623
+ let customTheme;
624
+ if (!metaphorChoice) {
625
+ metaphor = 'golf';
626
+ }
627
+ else {
628
+ const choiceNum = parseInt(metaphorChoice, 10);
629
+ if (choiceNum >= 1 && choiceNum <= menuItems.length) {
630
+ metaphor = menuItems[choiceNum - 1].id;
631
+ }
632
+ else if (choiceNum === customIdx) {
633
+ customTheme = await ask('Describe your metaphor theme (e.g., "cooking", "Formula 1", "space exploration"): ');
634
+ metaphor = 'golf'; // temporary default until agent generates
635
+ }
636
+ else {
637
+ // Try as a raw ID
638
+ const found = allMetaphors.find(m => m.id === metaphorChoice);
639
+ metaphor = found ? found.id : 'golf';
640
+ }
641
+ }
352
642
  const sprintStr = await ask('Current sprint number [1]: ');
353
643
  const currentSprint = sprintStr ? parseInt(sprintStr, 10) : undefined;
354
644
  const teamStr = await ask('Team members (slug:name, comma-separated, optional): ');
@@ -430,6 +720,12 @@ async function runInteractiveInit(cwd, args) {
430
720
  for (const f of result.filesCreated.slice(1)) {
431
721
  console.log(` Created: ${f}`);
432
722
  }
723
+ // Print custom metaphor request for agent pickup
724
+ if (customTheme) {
725
+ console.log(`\n Custom metaphor requested: "${customTheme}"`);
726
+ console.log(' Your AI agent can generate it with: search({ module: \'metaphor\' })');
727
+ console.log(' Then call saveCustomMetaphor() with the generated definition.');
728
+ }
433
729
  // Overwrite with smart-generated artifacts if available
434
730
  if (smartConfig.roadmap) {
435
731
  const roadmapPath = join(cwd, 'docs', 'backlog', 'roadmap.json');
@@ -562,9 +858,6 @@ export async function initCommand(args) {
562
858
  for (const p of providers) {
563
859
  installForProvider(cwd, p, metaphor);
564
860
  }
565
- console.log('\nSLOPE initialized. Try:');
566
- console.log(' slope card');
567
- console.log(' slope validate');
568
- console.log('');
861
+ printInstallSummary(providers);
569
862
  }
570
863
  //# sourceMappingURL=init.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import '../../core/metaphors/index.js';
2
+ export declare function metaphorCommand(args: string[]): Promise<void>;
3
+ //# sourceMappingURL=metaphor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metaphor.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/metaphor.ts"],"names":[],"mappings":"AAKA,OAAO,+BAA+B,CAAC;AAIvC,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA6CnE"}
@@ -0,0 +1,100 @@
1
+ // SLOPE CLI — slope metaphor (list | set | show)
2
+ // Manage metaphor display themes.
3
+ import { loadConfig, saveConfig, loadPluginMetaphors, listMetaphors, hasMetaphor, getMetaphor } from '../../core/index.js';
4
+ // Ensure built-in metaphors are registered
5
+ import '../../core/metaphors/index.js';
6
+ const BUILTIN_IDS = ['golf', 'tennis', 'baseball', 'gaming', 'dnd', 'matrix', 'agile'];
7
+ export async function metaphorCommand(args) {
8
+ const sub = args[0];
9
+ const cwd = process.cwd();
10
+ // Load custom plugins so they appear in list/set/show
11
+ const config = loadConfig(cwd);
12
+ loadPluginMetaphors(cwd, config.plugins);
13
+ switch (sub) {
14
+ case 'list':
15
+ listSubcommand(config.metaphor);
16
+ break;
17
+ case 'set': {
18
+ const id = args[1];
19
+ if (!id) {
20
+ console.error('Usage: slope metaphor set <id>');
21
+ process.exit(1);
22
+ }
23
+ setSubcommand(id, cwd);
24
+ break;
25
+ }
26
+ case 'show': {
27
+ const id = args[1];
28
+ if (!id) {
29
+ console.error('Usage: slope metaphor show <id>');
30
+ process.exit(1);
31
+ }
32
+ showSubcommand(id);
33
+ break;
34
+ }
35
+ default:
36
+ console.log(`
37
+ slope metaphor — Manage metaphor display themes
38
+
39
+ Usage:
40
+ slope metaphor list Show all available metaphors
41
+ slope metaphor set <id> Set the active metaphor
42
+ slope metaphor show <id> Show all terms for a metaphor
43
+ `);
44
+ if (sub) {
45
+ console.error(`Unknown subcommand "${sub}"`);
46
+ process.exit(1);
47
+ }
48
+ break;
49
+ }
50
+ }
51
+ function listSubcommand(activeId) {
52
+ const all = listMetaphors();
53
+ console.log('\nAvailable metaphors:\n');
54
+ for (const m of all) {
55
+ const active = m.id === activeId ? '[active] ' : ' ';
56
+ const custom = !BUILTIN_IDS.includes(m.id) ? ' [custom]' : '';
57
+ console.log(` ${active}${m.id.padEnd(12)} ${m.name.padEnd(14)} ${m.description}${custom}`);
58
+ }
59
+ console.log('');
60
+ }
61
+ function setSubcommand(id, cwd) {
62
+ if (!hasMetaphor(id)) {
63
+ const available = listMetaphors().map(m => m.id).join(', ');
64
+ console.error(`Unknown metaphor "${id}". Available: ${available}`);
65
+ process.exit(1);
66
+ }
67
+ const config = loadConfig(cwd);
68
+ saveConfig({ ...config, metaphor: id }, cwd);
69
+ console.log(`Metaphor set to "${id}". Restart your AI agent to see the change.`);
70
+ }
71
+ function showSubcommand(id) {
72
+ if (!hasMetaphor(id)) {
73
+ const available = listMetaphors().map(m => m.id).join(', ');
74
+ console.error(`Unknown metaphor "${id}". Available: ${available}`);
75
+ process.exit(1);
76
+ }
77
+ const m = getMetaphor(id);
78
+ console.log(`\nMetaphor: ${m.name}\n${m.description}\n`);
79
+ const sections = [
80
+ { label: 'Vocabulary', entries: m.vocabulary },
81
+ { label: 'Clubs', entries: m.clubs },
82
+ { label: 'Shot Results', entries: m.shotResults },
83
+ { label: 'Hazards', entries: m.hazards },
84
+ { label: 'Conditions', entries: m.conditions },
85
+ { label: 'Special Plays', entries: m.specialPlays },
86
+ { label: 'Miss Directions', entries: m.missDirections },
87
+ { label: 'Score Labels', entries: m.scoreLabels },
88
+ { label: 'Sprint Types', entries: m.sprintTypes },
89
+ { label: 'Training Types', entries: m.trainingTypes },
90
+ { label: 'Nutrition', entries: m.nutrition },
91
+ ];
92
+ for (const { label, entries } of sections) {
93
+ console.log(`${label}:`);
94
+ for (const [key, value] of Object.entries(entries)) {
95
+ console.log(` ${key.padEnd(20)} → ${value}`);
96
+ }
97
+ console.log('');
98
+ }
99
+ }
100
+ //# sourceMappingURL=metaphor.js.map