bmad-method 6.3.1-next.3 → 6.3.1-next.5

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "bmad-method",
4
- "version": "6.3.1-next.3",
4
+ "version": "6.3.1-next.5",
5
5
  "description": "Breakthrough Method of Agile AI-driven Development",
6
6
  "keywords": [
7
7
  "agile",
@@ -1,5 +1,6 @@
1
1
  code: core
2
2
  name: "BMad Core Module"
3
+ description: "Core configuration and shared resources"
3
4
 
4
5
  header: "BMad Core Configuration"
5
6
  subheader: "Configure the core settings for your BMad installation.\nThese settings will be used across all installed bmad skills, workflows, and agents."
@@ -1,20 +1,6 @@
1
- const path = require('node:path');
2
- const os = require('node:os');
3
1
  const prompts = require('./prompts');
4
2
 
5
3
  const CLIUtils = {
6
- /**
7
- * Get version from package.json
8
- */
9
- getVersion() {
10
- try {
11
- const packageJson = require(path.join(__dirname, '..', '..', 'package.json'));
12
- return packageJson.version || 'Unknown';
13
- } catch {
14
- return 'Unknown';
15
- }
16
- },
17
-
18
4
  /**
19
5
  * Display BMAD logo and version using @clack intro + box
20
6
  */
@@ -52,37 +38,6 @@ const CLIUtils = {
52
38
  });
53
39
  },
54
40
 
55
- /**
56
- * Display section header
57
- * @param {string} title - Section title
58
- * @param {string} subtitle - Optional subtitle
59
- */
60
- async displaySection(title, subtitle = null) {
61
- await prompts.note(subtitle || '', title);
62
- },
63
-
64
- /**
65
- * Display info box
66
- * @param {string|Array} content - Content to display
67
- * @param {Object} options - Box options
68
- */
69
- async displayBox(content, options = {}) {
70
- let text = content;
71
- if (Array.isArray(content)) {
72
- text = content.join('\n\n');
73
- }
74
-
75
- const color = await prompts.getColor();
76
- const borderColor = options.borderColor || 'cyan';
77
- const colorMap = { green: color.green, red: color.red, yellow: color.yellow, cyan: color.cyan, blue: color.blue };
78
- const formatBorder = colorMap[borderColor] || color.cyan;
79
-
80
- await prompts.box(text, options.title, {
81
- rounded: options.borderStyle === 'round' || options.borderStyle === undefined,
82
- formatBorder,
83
- });
84
- },
85
-
86
41
  /**
87
42
  * Display module configuration header
88
43
  * @param {string} moduleName - Module name (fallback if no custom header)
@@ -93,98 +48,6 @@ const CLIUtils = {
93
48
  const title = header || `Configuring ${moduleName.toUpperCase()} Module`;
94
49
  await prompts.note(subheader || '', title);
95
50
  },
96
-
97
- /**
98
- * Display module with no custom configuration
99
- * @param {string} moduleName - Module name (fallback if no custom header)
100
- * @param {string} header - Custom header from module.yaml
101
- * @param {string} subheader - Custom subheader from module.yaml
102
- */
103
- async displayModuleNoConfig(moduleName, header = null, subheader = null) {
104
- const title = header || `${moduleName.toUpperCase()} Module - No Custom Configuration`;
105
- await prompts.note(subheader || '', title);
106
- },
107
-
108
- /**
109
- * Display step indicator
110
- * @param {number} current - Current step
111
- * @param {number} total - Total steps
112
- * @param {string} description - Step description
113
- */
114
- async displayStep(current, total, description) {
115
- const progress = `[${current}/${total}]`;
116
- await prompts.log.step(`${progress} ${description}`);
117
- },
118
-
119
- /**
120
- * Display completion message
121
- * @param {string} message - Completion message
122
- */
123
- async displayComplete(message) {
124
- const color = await prompts.getColor();
125
- await prompts.box(`\u2728 ${message}`, 'Complete', {
126
- rounded: true,
127
- formatBorder: color.green,
128
- });
129
- },
130
-
131
- /**
132
- * Display error message
133
- * @param {string} message - Error message
134
- */
135
- async displayError(message) {
136
- const color = await prompts.getColor();
137
- await prompts.box(`\u2717 ${message}`, 'Error', {
138
- rounded: true,
139
- formatBorder: color.red,
140
- });
141
- },
142
-
143
- /**
144
- * Format list for display
145
- * @param {Array} items - Items to display
146
- * @param {string} prefix - Item prefix
147
- */
148
- formatList(items, prefix = '\u2022') {
149
- return items.map((item) => ` ${prefix} ${item}`).join('\n');
150
- },
151
-
152
- /**
153
- * Clear previous lines
154
- * @param {number} lines - Number of lines to clear
155
- */
156
- clearLines(lines) {
157
- for (let i = 0; i < lines; i++) {
158
- process.stdout.moveCursor(0, -1);
159
- process.stdout.clearLine(1);
160
- }
161
- },
162
-
163
- /**
164
- * Display module completion message
165
- * @param {string} moduleName - Name of the completed module
166
- * @param {boolean} clearScreen - Whether to clear the screen first (deprecated, always false now)
167
- */
168
- displayModuleComplete(moduleName, clearScreen = false) {
169
- // No longer clear screen or show boxes - just a simple completion message
170
- // This is deprecated but kept for backwards compatibility
171
- },
172
-
173
- /**
174
- * Expand path with ~ expansion
175
- * @param {string} inputPath - Path to expand
176
- * @returns {string} Expanded path
177
- */
178
- expandPath(inputPath) {
179
- if (!inputPath) return inputPath;
180
-
181
- // Expand ~ to home directory
182
- if (inputPath.startsWith('~')) {
183
- return path.join(os.homedir(), inputPath.slice(1));
184
- }
185
-
186
- return inputPath;
187
- },
188
51
  };
189
52
 
190
53
  module.exports = { CLIUtils };