@slamb2k/mad-skills 2.0.54 → 2.0.55

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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "mad-skills",
3
3
  "description": "AI-assisted planning, development and governance tools",
4
- "version": "2.0.54",
4
+ "version": "2.0.55",
5
5
  "author": {
6
6
  "name": "slamb2k",
7
7
  "url": "https://github.com/slamb2k"
@@ -2,28 +2,61 @@
2
2
 
3
3
  const config = require('./config.cjs');
4
4
 
5
+ // Unicode banner (Delta Corps Priest 1) — used when the terminal supports UTF-8.
5
6
  // prettier-ignore
6
- const BANNER_LINES = [
7
- '::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::',
8
- ":::::'##::::'##::::'###::::'########::::::'######::'##:::'##:'####:'##:::::::'##::::::::'######::::::::",
9
- "::::: ###::'###:::'## ##::: ##.... ##::::'##... ##: ##::'##::. ##:: ##::::::: ##:::::::'##... ##:::::::",
10
- "::::: ####'####::'##:. ##:: ##:::: ##:::: ##:::..:: ##:'##:::: ##:: ##::::::: ##::::::: ##:::..::::::::",
11
- "::::: ## ### ##:'##:::. ##: ##:::: ##::::. ######:: #####::::: ##:: ##::::::: ##:::::::. ######::::::::",
12
- "::::: ##. #: ##: #########: ##:::: ##:::::..... ##: ##. ##:::: ##:: ##::::::: ##::::::::..... ##:::::::",
13
- "::::: ##:.:: ##: ##.... ##: ##:::: ##::::'##::: ##: ##:. ##::: ##:: ##::::::: ##:::::::'##::: ##:::::::",
14
- "::::: ##:::: ##: ##:::: ##: ########:::::. ######:: ##::. ##:'####: ########: ########:. ######::::::::",
15
- "::::::..:::::..::..:::::..::........:::::::......:::..::::..::....::........::........:::......:::::::::",
7
+ const BANNER_UNICODE = [
8
+ " ▄▄▄▄███▄▄▄▄ ▄████████ ████████▄",
9
+ "▄██▀▀▀███▀▀▀██▄ ███ ███ ███ ▀███",
10
+ "███ ███ ███ ███ ███ ███ ███",
11
+ "███ ███ ███ ███ ███ ███ ███",
12
+ "███ ███ ███ ▀███████████ ███ ███",
13
+ "███ ███ ███ ███ ███ ███ ███",
14
+ "███ ███ ███ ███ ███ ███ ▄███",
15
+ " ▀█ ███ █▀ ███ █▀ ████████▀",
16
+ "",
17
+ " ▄████████ ▄█ ▄█▄ ▄█ ▄█ ▄█ ▄████████",
18
+ " ███ ███ ███ ▄███▀ ███ ███ ███ ███ ███",
19
+ " ███ █▀ ███▐██▀ ███▌ ███ ███ ███ █▀",
20
+ " ███ ▄█████▀ ███▌ ███ ███ ███",
21
+ "▀███████████ ▀▀█████▄ ███▌ ███ ███ ▀███████████",
22
+ " ███ ███▐██▄ ███ ███ ███ ███",
23
+ " ▄█ ███ ███ ▀███▄ ███ ███▌ ▄ ███▌ ▄ ▄█ ███",
24
+ " ▄████████▀ ███ ▀█▀ █▀ █████▄▄██ █████▄▄██ ▄████████▀",
25
+ " ▀ ▀ ▀",
16
26
  ];
17
27
 
18
- const SEPARATOR = '\u2500'.repeat(70);
28
+ // ASCII fallback (Rowan Cap) — used when the terminal locale is not UTF-8.
29
+ // prettier-ignore
30
+ const BANNER_ASCII = [
31
+ " dMMMMMMMMb .aMMMb dMMMMb",
32
+ " dMP\"dMP\"dMP dMP\"dMP dMP VMP",
33
+ " dMP dMP dMP dMMMMMP dMP dMP",
34
+ " dMP dMP dMP dMP dMP dMP.aMP",
35
+ "dMP dMP dMP dMP dMP dMMMMP\"",
36
+ "",
37
+ " .dMMMb dMP dMP dMP dMP dMP .dMMMb",
38
+ " dMP\" VP dMP.dMP amr dMP dMP dMP\" VP",
39
+ " VMMMb dMMMMK\" dMP dMP dMP VMMMb",
40
+ "dP .dMP dMP\"AMF dMP dMP dMP dP .dMP",
41
+ "VMMMP\" dMP dMP dMP dMMMMMP dMMMMMP VMMMP\"",
42
+ ];
43
+
44
+ // True when the terminal locale advertises UTF-8, so box-drawing glyphs render.
45
+ function supportsUnicode() {
46
+ const locale = process.env.LC_ALL || process.env.LC_CTYPE || process.env.LANG || '';
47
+ return /utf-?8/i.test(locale);
48
+ }
19
49
 
20
50
  function getBanner() {
51
+ const unicode = supportsUnicode();
52
+ const lines = unicode ? BANNER_UNICODE : BANNER_ASCII;
53
+ const separator = (unicode ? '─' : '-').repeat(70);
21
54
  return [
22
- ...BANNER_LINES,
23
- SEPARATOR,
55
+ ...lines,
56
+ separator,
24
57
  ` Session Guard v${config.version}`,
25
- SEPARATOR,
58
+ separator,
26
59
  ].join('\n');
27
60
  }
28
61
 
29
- module.exports = { getBanner, BANNER_MARKER: '::::::::::::::::::::' };
62
+ module.exports = { getBanner, supportsUnicode, BANNER_MARKER: 'Session Guard' };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@slamb2k/mad-skills",
3
- "version": "2.0.54",
3
+ "version": "2.0.55",
4
4
  "description": "Claude Code skills collection — full lifecycle development tools",
5
5
  "type": "module",
6
6
  "repository": {
@@ -1,5 +1,5 @@
1
1
  {
2
- "generated": "2026-07-02T03:59:12.977Z",
2
+ "generated": "2026-07-06T02:10:36.483Z",
3
3
  "count": 11,
4
4
  "skills": [
5
5
  {