spirewise 1.9.2 → 1.9.3

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 (3) hide show
  1. package/bin/cli.js +13 -7
  2. package/install.sh +1 -1
  3. package/package.json +1 -1
package/bin/cli.js CHANGED
@@ -56,7 +56,7 @@ const BANNER = [
56
56
  function banner() {
57
57
  console.log('');
58
58
  for (const line of BANNER) console.log(paint(RAW.cyan, line));
59
- console.log(paint(RAW.magenta, ` Agent Skills · F6S & LinkedIn copywriting${PKG_VERSION ? ' · v' + PKG_VERSION : ''}`));
59
+ console.log(paint(RAW.magenta, ` Agent Skills · That Startup Founders Love ${PKG_VERSION ? ' · v' + PKG_VERSION : ''}`));
60
60
  console.log('');
61
61
  }
62
62
 
@@ -251,11 +251,12 @@ function interactiveSelect({ title, subtitle, items, multi = true, preselected =
251
251
  : '↑/↓ move enter confirm';
252
252
 
253
253
  const lines = [];
254
- lines.push(rail());
255
254
  lines.push(`${paint(RAW.cyan, G.step)} ${paint(RAW.bold, `${num} - ${title}`)}`);
255
+ lines.push(rail()); // space under the header
256
256
  if (subtitle) lines.push(railLn(paint(RAW.dim, subtitle)));
257
257
  lines.push(railLn(paint(RAW.dim, nav)));
258
- if (items.length > PAGE) lines.push(railLn(paint(RAW.dim, start > 0 ? '↑ more' : ' ')));
258
+ lines.push(rail()); // space before the list
259
+ if (items.length > PAGE && start > 0) lines.push(railLn(paint(RAW.dim, '↑ more')));
259
260
  for (let i = start; i < end; i++) {
260
261
  const it = items[i];
261
262
  const on = i === index;
@@ -267,15 +268,19 @@ function interactiveSelect({ title, subtitle, items, multi = true, preselected =
267
268
  const hint = it.hint ? paint(RAW.dim, ' ' + it.hint) : '';
268
269
  lines.push(`${rail()} ${ptr} ${mark} ${label}${hint}`);
269
270
  }
270
- if (items.length > PAGE) lines.push(railLn(paint(RAW.dim, `${end < items.length ? '↓ more' : ' '} ${index + 1}/${items.length}`)));
271
- lines.push(rail());
271
+ if (items.length > PAGE) {
272
+ lines.push(rail()); // space between the list and "↓ more"
273
+ lines.push(railLn(paint(RAW.dim, `${end < items.length ? '↓ more' : ' '} ${index + 1}/${items.length}`)));
274
+ }
275
+ lines.push(rail()); // trailing space below the step
272
276
 
273
277
  if (lastLines > 0) stdout.write(`\x1b[${lastLines}A`);
274
278
  stdout.write('\x1b[0J' + lines.join('\n') + '\n');
275
279
  lastLines = lines.length;
276
280
  }
277
281
 
278
- // Replace the live frame with a compact, persisted transcript line.
282
+ // Replace the live frame with a compact, persisted transcript line — followed
283
+ // by a blank rail line so completed steps are spaced one line apart.
279
284
  function persist() {
280
285
  const summary = multi
281
286
  ? (() => { const l = items.filter((_, i) => selected.has(i)).map((it) => it.label);
@@ -284,6 +289,7 @@ function interactiveSelect({ title, subtitle, items, multi = true, preselected =
284
289
  const out = [
285
290
  `${paint(RAW.green, G.done)} ${paint(RAW.bold, `${num} - ${title}`)}`,
286
291
  railLn(paint(RAW.cyan, summary)),
292
+ rail(),
287
293
  ];
288
294
  if (lastLines > 0) stdout.write(`\x1b[${lastLines}A`);
289
295
  stdout.write('\x1b[0J' + out.join('\n') + '\n');
@@ -470,7 +476,7 @@ async function main() {
470
476
  const scopes = scope === 'both' ? ['project', 'global'] : [scope];
471
477
 
472
478
  // ACTION
473
- if (framed) console.log(railLn());
479
+ if (!framed) console.log(''); // framed mode already ends with a │ rail line from the last step
474
480
 
475
481
  const pl = (n, w) => `${n} ${w}${n === 1 ? '' : 's'}`;
476
482
  const where = { project: 'workspace', global: 'global', both: 'workspace + global' }[scope];
package/install.sh CHANGED
@@ -54,7 +54,7 @@ banner() {
54
54
  color '1;36' ' ╚════██║██╔═══╝ ██║██╔══██╗██╔══╝ ██║███╗██║██║╚════██║██╔══╝ '; printf '\n'
55
55
  color '1;36' ' ███████║██║ ██║██║ ██║███████╗╚███╔███╔╝██║███████║███████╗'; printf '\n'
56
56
  color '1;36' ' ╚══════╝╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝ ╚══╝╚══╝ ╚═╝╚══════╝╚══════╝'; printf '\n'
57
- color '1;35' ' Agent Skills · F6S & LinkedIn copywriting'; printf '\n\n'
57
+ color '1;35' ' Agent Skills · That Startup Founders Love'; printf '\n\n'
58
58
  }
59
59
 
60
60
  usage() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "spirewise",
3
- "version": "1.9.2",
3
+ "version": "1.9.3",
4
4
  "description": "Installable Agent Skills for GitHub Copilot, Claude Code, and Cursor — copywriting (F6S & LinkedIn) and NVIDIA Inception tooling.",
5
5
  "bin": {
6
6
  "spirewise": "bin/cli.js"