@fprad0/skill-master-mcp 0.0.11 → 0.0.12

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 (65) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/README.md +32 -3
  3. package/VERSION.md +3 -3
  4. package/bin/lib/client-config.mjs +25 -0
  5. package/bin/lib/menu-core.mjs +469 -101
  6. package/bin/lib/skill-installation.mjs +215 -0
  7. package/bin/skill-master-doctor.mjs +51 -4
  8. package/bin/skill-master-install-global-skills.mjs +3 -41
  9. package/bin/skill-master-install-project-skills.mjs +97 -0
  10. package/bin/skill-master-menu.mjs +91 -6
  11. package/bin/skill-master-register-clients.mjs +58 -3
  12. package/docs/operations/GUIA_MULTI_COMPUTADOR.md +8 -1
  13. package/docs/operations/MENU_VISUAL_EVIDENCE_2026-06-28.md +66 -0
  14. package/docs/operations/assets/menu-frame-compact.html +76 -0
  15. package/docs/operations/assets/menu-frame-compact.png +0 -0
  16. package/docs/operations/assets/menu-frame-large.html +84 -0
  17. package/docs/operations/assets/menu-frame-large.png +0 -0
  18. package/docs/operations/assets/menu-frame-running.html +80 -0
  19. package/docs/operations/assets/menu-frame-running.png +0 -0
  20. package/docs/operations/cross-platform-auth-transfer/ANALISE_COMPATIBILIDADE_MCP_2026-06-28.md +140 -0
  21. package/docs/operations/cross-platform-auth-transfer/README_TRANSFERENCIA.md +85 -0
  22. package/docs/operations/reborn-menu-cyberpunk-transfer/ANALISE_MENU_REBORN_CYBERPUNK_2026-06-28.md +174 -0
  23. package/docs/operations/reborn-menu-cyberpunk-transfer/HANDOFF_IMPLEMENTACAO_REBORN_CYBERPUNK_2026-06-28.md +119 -0
  24. package/docs/operations/reborn-menu-cyberpunk-transfer/ORDEM_DE_EXECUCAO_MENU_REBORN_CYBERPUNK.md +134 -0
  25. package/docs/operations/reborn-menu-cyberpunk-transfer/README_TRANSFERENCIA.md +84 -0
  26. package/docs/operations/reborn-menu-cyberpunk-transfer/README_TRANSFERENCIA_REBORN_PACKAGE.md +56 -0
  27. package/docs/operations/reborn-menu-cyberpunk-transfer/references/cyan-hud-frame-sheet.jpg +0 -0
  28. package/docs/operations/reborn-menu-cyberpunk-transfer/references/cyberpunk-pattern-sheet.jpg +0 -0
  29. package/docs/operations/reborn-menu-cyberpunk-transfer/references/fluid-workflow-windows.gif +0 -0
  30. package/docs/prompt-tasks/PROMPT_TASK_001_BOOTSTRAP_SKILL_MASTER_MCP.md +6 -0
  31. package/docs/prompt-tasks/PROMPT_TASK_002_AUTO_UPDATE_LAUNCHER.md +6 -0
  32. package/docs/prompt-tasks/PROMPT_TASK_003_REMOTE_MANIFEST_AND_RELEASES.md +6 -0
  33. package/docs/prompt-tasks/PROMPT_TASK_004_MULTI_USER_DISTRIBUTION.md +6 -0
  34. package/docs/prompt-tasks/PROMPT_TASK_005_SECURITY_AND_QUALITY_GATE.md +6 -0
  35. package/docs/prompt-tasks/PROMPT_TASK_006_MASTER_ACIONAMENTO_APRENDIZADO.md +83 -0
  36. package/docs/prompt-tasks/PROMPT_TASK_007_PERSONA_ORQUESTRADORA.md +88 -0
  37. package/docs/prompt-tasks/PROMPT_TASK_008_PROMPT_ROUTER_MODOS_ATIVACAO.md +156 -0
  38. package/docs/prompt-tasks/PROMPT_TASK_009_PIPELINE_APRENDIZADO_SUCESSO.md +105 -0
  39. package/docs/prompt-tasks/PROMPT_TASK_010_EVALS_GOVERNANCA_ATIVACAO.md +119 -0
  40. package/docs/prompt-tasks/PROMPT_TASK_011_MENU_NOTIFICACOES_NOTION.md +120 -0
  41. package/docs/prompt-tasks/PROMPT_TASK_012_MENU_CYBERPUNK_PIXEL_FRAME.md +123 -0
  42. package/docs/prompt-tasks/PROMPT_TASK_013_MENU_FLUID_DNA_ANIMATION.md +114 -0
  43. package/docs/prompt-tasks/PROMPT_TASK_014_MENU_FUNCTIONAL_PARITY_QA.md +157 -0
  44. package/docs/prompt-tasks/PROMPT_TASK_015_TRANSFER_RELEASE_HANDOFF.md +127 -0
  45. package/docs/prompt-tasks/PROMPT_TASK_016_CROSS_PLATFORM_MCP_AUTH_REGISTRATION.md +107 -0
  46. package/docs/prompt-tasks/PROMPT_TASK_018_NPM_PUBLISH_2FA_SETUP.md +80 -0
  47. package/docs/prompt-tasks/PROMPT_TASK_MASTER_EXECUTOR.md +6 -0
  48. package/docs/skill-candidates/v0.0.12/csharp-senior-master-engineering/SKILL.md +32 -0
  49. package/docs/skill-candidates/v0.0.12/css-senior-master-engineering/SKILL.md +32 -0
  50. package/docs/skill-candidates/v0.0.12/go-senior-master-engineering/SKILL.md +32 -0
  51. package/docs/skill-candidates/v0.0.12/html-senior-master-engineering/SKILL.md +32 -0
  52. package/docs/skill-candidates/v0.0.12/javascript-senior-master-engineering/SKILL.md +32 -0
  53. package/docs/skill-candidates/v0.0.12/json-senior-master-engineering/SKILL.md +32 -0
  54. package/docs/skill-candidates/v0.0.12/python-senior-master-engineering/SKILL.md +32 -0
  55. package/docs/skill-candidates/v0.0.12/react-senior-master-engineering/SKILL.md +32 -0
  56. package/docs/skill-candidates/v0.0.12/ruby-senior-master-engineering/SKILL.md +32 -0
  57. package/docs/skill-candidates/v0.0.12/senior-master-code-optimizer/SKILL.md +48 -0
  58. package/docs/skill-candidates/v0.0.12/sql-senior-master-engineering/SKILL.md +31 -0
  59. package/docs/skill-candidates/v0.0.12/typescript-senior-master-engineering/SKILL.md +35 -0
  60. package/examples/client-configs/claude-code.commands.md +11 -7
  61. package/manifests/channels/beta.json +6 -6
  62. package/manifests/channels/stable.json +8 -8
  63. package/package.json +9 -1
  64. package/scripts/render-menu-evidence.mjs +130 -0
  65. package/scripts/verify-menu-actions.mjs +2 -0
@@ -0,0 +1,130 @@
1
+ #!/usr/bin/env node
2
+
3
+ import { mkdirSync, writeFileSync } from 'node:fs';
4
+ import { dirname, join, resolve } from 'node:path';
5
+ import { fileURLToPath } from 'node:url';
6
+ import { buildMenuCommands, formatCyberMenuFrame, formatRunningActionFrame } from '../bin/lib/menu-core.mjs';
7
+
8
+ const here = dirname(fileURLToPath(import.meta.url));
9
+ const rootDir = resolve(here, '..');
10
+ const outputDir = join(rootDir, 'docs', 'operations', 'assets');
11
+
12
+ const commands = buildMenuCommands({
13
+ rootDir: '/tmp/skill-master',
14
+ currentFile: '/tmp/skill-master/bin/skill-master-menu.mjs',
15
+ nodeExecPath: '/usr/bin/node',
16
+ });
17
+
18
+ const baseStatus = {
19
+ packageName: '@fprad0/skill-master-mcp',
20
+ semver: '0.0.11',
21
+ manifestVersion: '00.05',
22
+ manifestSemver: '0.0.11',
23
+ versionText: '',
24
+ rootDir: '/tmp/skill-master',
25
+ pendingSuccessDrafts: 3,
26
+ studyCandidates: 8,
27
+ globalReadiness: {
28
+ ready: true,
29
+ mode: 'ready',
30
+ required: 13,
31
+ installed: Array.from({ length: 13 }, (_, index) => `skill-${index}`),
32
+ missing: [],
33
+ codex: { present: true, kind: 'global', globalCommand: true },
34
+ claude: { present: true, globalCommand: true },
35
+ gemini: { present: true, globalCommand: true },
36
+ antigravity: { present: true, globalCommand: true },
37
+ },
38
+ bundledCatalog: {
39
+ total: 54,
40
+ categories: [
41
+ { key: 'moral', label: 'moral-core', count: 10 },
42
+ { key: 'frontend', label: 'frontend-ui', count: 19 },
43
+ { key: 'backend', label: 'backend-data', count: 10 },
44
+ { key: 'ops', label: 'ops-clients', count: 12 },
45
+ { key: 'knowledge', label: 'knowledge', count: 2 },
46
+ ],
47
+ },
48
+ };
49
+
50
+ function stripAnsi(text) {
51
+ return String(text).replace(/\x1b\[[0-9;?]*[A-Za-z]/g, '');
52
+ }
53
+
54
+ function escapeHtml(text) {
55
+ return text
56
+ .replaceAll('&', '&')
57
+ .replaceAll('<', '&lt;')
58
+ .replaceAll('>', '&gt;');
59
+ }
60
+
61
+ function renderPage(title, frame) {
62
+ return `<!doctype html>
63
+ <html lang="pt-BR">
64
+ <head>
65
+ <meta charset="utf-8" />
66
+ <title>${title}</title>
67
+ <style>
68
+ :root {
69
+ color-scheme: dark;
70
+ --bg: #060606;
71
+ --panel: #0d0d0d;
72
+ --grid: rgba(255,255,255,0.06);
73
+ --line: rgba(255,255,255,0.25);
74
+ --text: #f3f3f3;
75
+ --muted: #8f949c;
76
+ }
77
+ * { box-sizing: border-box; }
78
+ body {
79
+ margin: 0;
80
+ min-height: 100vh;
81
+ background:
82
+ linear-gradient(var(--grid) 1px, transparent 1px),
83
+ linear-gradient(90deg, var(--grid) 1px, transparent 1px),
84
+ radial-gradient(circle at top, rgba(255,255,255,0.06), transparent 35%),
85
+ var(--bg);
86
+ background-size: 48px 48px, 48px 48px, auto, auto;
87
+ color: var(--text);
88
+ font-family: "Courier New", monospace;
89
+ padding: 32px;
90
+ }
91
+ .frame {
92
+ max-width: max-content;
93
+ background: linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01));
94
+ border: 1px solid var(--line);
95
+ box-shadow: 0 0 0 1px rgba(255,255,255,0.04), 0 24px 64px rgba(0,0,0,0.45);
96
+ padding: 20px 24px;
97
+ white-space: pre;
98
+ line-height: 1.1;
99
+ font-size: 13px;
100
+ border-radius: 8px;
101
+ }
102
+ .title {
103
+ margin: 0 0 16px;
104
+ color: var(--muted);
105
+ letter-spacing: 0.12em;
106
+ text-transform: uppercase;
107
+ font-size: 12px;
108
+ }
109
+ </style>
110
+ </head>
111
+ <body>
112
+ <p class="title">${title}</p>
113
+ <pre class="frame">${escapeHtml(stripAnsi(frame))}</pre>
114
+ </body>
115
+ </html>`;
116
+ }
117
+
118
+ mkdirSync(outputDir, { recursive: true });
119
+
120
+ const largeFrame = formatCyberMenuFrame(baseStatus, commands, 1, 8, { columns: 120, rows: 32, useColor: false });
121
+ const compactFrame = formatCyberMenuFrame(baseStatus, commands, 20, 8, { columns: 96, rows: 24, useColor: false });
122
+ const runningFrame = formatRunningActionFrame(baseStatus, commands.find((command) => command.key === 'doctor'), 5, { columns: 120, rows: 28, useColor: false });
123
+
124
+ writeFileSync(join(outputDir, 'menu-frame-large.html'), renderPage('Menu Frame 120x32', largeFrame), 'utf8');
125
+ writeFileSync(join(outputDir, 'menu-frame-compact.html'), renderPage('Menu Frame 96x24', compactFrame), 'utf8');
126
+ writeFileSync(join(outputDir, 'menu-frame-running.html'), renderPage('Menu Running State', runningFrame), 'utf8');
127
+
128
+ console.log(join(outputDir, 'menu-frame-large.html'));
129
+ console.log(join(outputDir, 'menu-frame-compact.html'));
130
+ console.log(join(outputDir, 'menu-frame-running.html'));
@@ -23,6 +23,7 @@ const REQUIRED_ACTIONS = [
23
23
  'activationBalanced',
24
24
  'activationAlwaysOn',
25
25
  'installGlobalSkills',
26
+ 'installProjectSkills',
26
27
  'bootstrapGlobal',
27
28
  'registerClients',
28
29
  'promptRecommendation',
@@ -41,6 +42,7 @@ const CONFIRMATION_REQUIRED = [
41
42
  'privateRegistry',
42
43
  'activationAlwaysOn',
43
44
  'installGlobalSkills',
45
+ 'installProjectSkills',
44
46
  'bootstrapGlobal',
45
47
  'registerClients',
46
48
  'rejectLearnedSkill',