@mohammadhprp/system-prompt 0.12.2 → 0.12.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 (117) hide show
  1. package/framework/commands/README.md +1 -1
  2. package/framework/commands/review.md +1 -1
  3. package/framework/mcps/README.md +0 -1
  4. package/framework/plugins/ponytail/README.md +0 -1
  5. package/framework/plugins/ponytail/capabilities.md +1 -1
  6. package/framework/references/standards/api.md +0 -1
  7. package/framework/references/standards/architecture.md +0 -1
  8. package/framework/references/standards/database.md +0 -1
  9. package/framework/references/standards/debugging.md +0 -1
  10. package/framework/references/standards/documentation.md +0 -1
  11. package/framework/references/standards/logging.md +0 -1
  12. package/framework/references/standards/naming.md +0 -1
  13. package/framework/references/standards/observability.md +0 -1
  14. package/framework/references/standards/performance.md +0 -1
  15. package/framework/references/standards/pull-requests.md +0 -1
  16. package/framework/references/standards/security.md +0 -1
  17. package/framework/references/standards/testing.md +0 -1
  18. package/framework/skills/README.md +1 -12
  19. package/framework/skills/improve/SKILL.md +1 -3
  20. package/framework/skills/improve/examples.md +1 -1
  21. package/framework/skills/laravel-best-practices/SKILL.md +56 -216
  22. package/framework/skills/laravel-best-practices/references/architecture.md +1 -1
  23. package/framework/skills/laravel-best-practices/references/checklist.md +139 -0
  24. package/framework/skills/laravel-best-practices/references/eloquent.md +4 -2
  25. package/framework/skills/laravel-best-practices/references/infer-conventions.md +97 -0
  26. package/framework/skills/laravel-best-practices/references/pest-testing.md +47 -18
  27. package/framework/skills/laravel-best-practices/references/security.md +1 -1
  28. package/framework/skills/laravel-best-practices/references/style.md +1 -1
  29. package/framework/skills/laravel-best-practices/references/tailwindcss.md +0 -1
  30. package/package.json +1 -1
  31. package/src/catalog.js +1 -13
  32. package/framework/mcps/notion-mcp/README.md +0 -57
  33. package/framework/mcps/notion-mcp/capabilities.md +0 -118
  34. package/framework/mcps/notion-mcp/configs/opencode.json +0 -9
  35. package/framework/mcps/notion-mcp/install.md +0 -70
  36. package/framework/mcps/notion-mcp/troubleshooting.md +0 -95
  37. package/framework/skills/brainstorming/SKILL.md +0 -159
  38. package/framework/skills/brainstorming/examples.md +0 -49
  39. package/framework/skills/brainstorming/scripts/frame-template.html +0 -213
  40. package/framework/skills/brainstorming/scripts/helper.js +0 -167
  41. package/framework/skills/brainstorming/scripts/server.cjs +0 -723
  42. package/framework/skills/brainstorming/scripts/start-server.sh +0 -209
  43. package/framework/skills/brainstorming/scripts/stop-server.sh +0 -120
  44. package/framework/skills/brainstorming/visual-companion.md +0 -291
  45. package/framework/skills/code-review/SKILL.md +0 -72
  46. package/framework/skills/code-review/examples.md +0 -31
  47. package/framework/skills/codenavi/SKILL.md +0 -306
  48. package/framework/skills/codenavi/examples.md +0 -33
  49. package/framework/skills/codenavi/references/coding-principles.md +0 -143
  50. package/framework/skills/codenavi/references/notebook-spec.md +0 -171
  51. package/framework/skills/create-adr/SKILL.md +0 -429
  52. package/framework/skills/create-adr/examples.md +0 -35
  53. package/framework/skills/design/SKILL.md +0 -399
  54. package/framework/skills/design/examples.md +0 -34
  55. package/framework/skills/great-interface/SKILL.md +0 -43
  56. package/framework/skills/great-interface/references/animations.md +0 -205
  57. package/framework/skills/great-interface/references/better-accessibility.md +0 -106
  58. package/framework/skills/great-interface/references/better-colors.md +0 -100
  59. package/framework/skills/great-interface/references/better-interface.md +0 -132
  60. package/framework/skills/great-interface/references/better-layout.md +0 -76
  61. package/framework/skills/great-interface/references/better-typography.md +0 -157
  62. package/framework/skills/great-interface/references/better-ui.md +0 -107
  63. package/framework/skills/great-interface/references/better-writing.md +0 -109
  64. package/framework/skills/great-interface/references/choosing-fonts.md +0 -64
  65. package/framework/skills/great-interface/references/color-formats.md +0 -90
  66. package/framework/skills/great-interface/references/color-usage.md +0 -118
  67. package/framework/skills/great-interface/references/contrast.md +0 -79
  68. package/framework/skills/great-interface/references/css-cheat-sheet.md +0 -65
  69. package/framework/skills/great-interface/references/details-and-accessibility.md +0 -119
  70. package/framework/skills/great-interface/references/enter-exit.md +0 -147
  71. package/framework/skills/great-interface/references/explain-interface.md +0 -126
  72. package/framework/skills/great-interface/references/find-the-effect.md +0 -94
  73. package/framework/skills/great-interface/references/focus-and-keyboard.md +0 -131
  74. package/framework/skills/great-interface/references/forms.md +0 -84
  75. package/framework/skills/great-interface/references/from-an-image.md +0 -55
  76. package/framework/skills/great-interface/references/grouping-and-alignment.md +0 -123
  77. package/framework/skills/great-interface/references/hit-areas.md +0 -94
  78. package/framework/skills/great-interface/references/icon-transitions.md +0 -102
  79. package/framework/skills/great-interface/references/icons.md +0 -110
  80. package/framework/skills/great-interface/references/interface-review.md +0 -148
  81. package/framework/skills/great-interface/references/motion-and-zoom.md +0 -79
  82. package/framework/skills/great-interface/references/no-browser.md +0 -73
  83. package/framework/skills/great-interface/references/palette-generation.md +0 -104
  84. package/framework/skills/great-interface/references/palette-structure.md +0 -76
  85. package/framework/skills/great-interface/references/performance.md +0 -88
  86. package/framework/skills/great-interface/references/picker.md +0 -76
  87. package/framework/skills/great-interface/references/read-the-system.md +0 -178
  88. package/framework/skills/great-interface/references/removed-signals.md +0 -38
  89. package/framework/skills/great-interface/references/review-format.md +0 -46
  90. package/framework/skills/great-interface/references/scope-resolution.md +0 -88
  91. package/framework/skills/great-interface/references/screen-readers.md +0 -101
  92. package/framework/skills/great-interface/references/semantics-and-aria.md +0 -84
  93. package/framework/skills/great-interface/references/spacing-and-adaptivity.md +0 -159
  94. package/framework/skills/great-interface/references/spacing-and-sizing.md +0 -121
  95. package/framework/skills/great-interface/references/surfaces.md +0 -219
  96. package/framework/skills/great-interface/references/token-naming.md +0 -97
  97. package/framework/skills/great-interface/references/variable-fonts-and-opentype.md +0 -105
  98. package/framework/skills/great-interface/references/variant.md +0 -104
  99. package/framework/skills/great-interface/references/wrapping-and-punctuation.md +0 -55
  100. package/framework/skills/learning-opportunities/SKILL.md +0 -140
  101. package/framework/skills/learning-opportunities/examples.md +0 -34
  102. package/framework/skills/learning-opportunities/references/PRINCIPLES.md +0 -42
  103. package/framework/skills/notion-mcp/SKILL.md +0 -57
  104. package/framework/skills/notion-mcp/examples.md +0 -31
  105. package/framework/skills/notion-mcp/references/comments.md +0 -112
  106. package/framework/skills/notion-mcp/references/databases.md +0 -193
  107. package/framework/skills/notion-mcp/references/pages.md +0 -235
  108. package/framework/skills/spec-driven-eval/SKILL.md +0 -341
  109. package/framework/skills/spec-driven-eval/examples.md +0 -35
  110. package/framework/skills/spec-driven-eval/references/quickstart.md +0 -118
  111. package/framework/skills/spec-driven-eval/references/reference.md +0 -295
  112. package/framework/skills/technical-design-doc-creator/README.md +0 -411
  113. package/framework/skills/technical-design-doc-creator/SKILL.md +0 -1484
  114. package/framework/skills/technical-design-doc-creator/examples.md +0 -35
  115. package/framework/skills/web-design-guidelines/SKILL.md +0 -65
  116. package/framework/skills/web-design-guidelines/examples.md +0 -32
  117. package/framework/skills/web-design-guidelines/references/guideline.md +0 -174
@@ -1,167 +0,0 @@
1
- (function() {
2
- const MIN_RECONNECT_MS = 500;
3
- const MAX_RECONNECT_MS = 30000;
4
- const TOMBSTONE_AFTER_MS = 15000; // show the "paused" overlay after this long disconnected
5
-
6
- // Pure: next backoff delay (doubles, capped). Exported for unit tests.
7
- function nextReconnectDelay(current, max) {
8
- return Math.min(current * 2, max);
9
- }
10
- if (typeof module !== 'undefined' && module.exports) {
11
- module.exports = { nextReconnectDelay, MIN_RECONNECT_MS, MAX_RECONNECT_MS, TOMBSTONE_AFTER_MS };
12
- }
13
-
14
- // Everything below is browser-only; bail out when loaded in Node (tests).
15
- if (typeof window === 'undefined') return;
16
-
17
- let ws = null;
18
- let eventQueue = [];
19
- let reconnectDelay = MIN_RECONNECT_MS;
20
- let reconnectTimer = null;
21
- let disconnectedSince = null;
22
- let everConnected = false;
23
- let tombstoneShown = false;
24
-
25
- function sessionKey() {
26
- try {
27
- return window.sessionStorage && window.sessionStorage.getItem('brainstorm-session-key');
28
- } catch (e) {}
29
- return null;
30
- }
31
-
32
- function websocketUrl() {
33
- const key = sessionKey();
34
- return 'ws://' + window.location.host + (key ? '/?key=' + encodeURIComponent(key) : '');
35
- }
36
-
37
- function reloadAfterRecovery() {
38
- const key = sessionKey();
39
- if (key) {
40
- window.location.replace('/?key=' + encodeURIComponent(key));
41
- } else {
42
- window.location.reload();
43
- }
44
- }
45
-
46
- // Reflect connection state in the frame's status pill (absent on full-doc screens).
47
- function setStatus(state) {
48
- const el = document.querySelector('.status');
49
- if (!el) return;
50
- const map = {
51
- connecting: ['Connecting…', 'var(--text-tertiary)'],
52
- connected: ['Connected', 'var(--success)'],
53
- reconnecting: ['Reconnecting…', 'var(--warning)'],
54
- disconnected: ['Disconnected', 'var(--error)']
55
- };
56
- const [text, color] = map[state] || map.disconnected;
57
- el.textContent = text;
58
- el.style.setProperty('--status-color', color);
59
- }
60
-
61
- // Self-styled so it works on framed and full-document screens alike.
62
- function showTombstone() {
63
- if (tombstoneShown) return;
64
- tombstoneShown = true;
65
- const el = document.createElement('div');
66
- el.id = 'bs-tombstone';
67
- el.style.cssText = 'position:fixed;inset:0;z-index:99999;display:flex;' +
68
- 'align-items:center;justify-content:center;padding:2rem;text-align:center;' +
69
- 'background:rgba(20,20,22,0.92);color:#f5f5f7;font-family:system-ui,sans-serif';
70
- el.innerHTML = '<div style="max-width:480px">' +
71
- '<h2 style="margin:0 0 .5rem;font-weight:600">Companion paused</h2>' +
72
- '<p style="margin:0;opacity:.85">This brainstorm companion has stopped. ' +
73
- 'Ask your coding agent to bring it back — this page reconnects automatically.</p></div>';
74
- if (document.body) document.body.appendChild(el);
75
- }
76
-
77
- function connect() {
78
- if (reconnectTimer) { clearTimeout(reconnectTimer); reconnectTimer = null; }
79
- setStatus(everConnected ? 'reconnecting' : 'connecting');
80
- ws = new WebSocket(websocketUrl());
81
-
82
- ws.onopen = () => {
83
- const recovered = tombstoneShown;
84
- everConnected = true;
85
- disconnectedSince = null;
86
- reconnectDelay = MIN_RECONNECT_MS;
87
- tombstoneShown = false;
88
- setStatus('connected');
89
- eventQueue.forEach(e => ws.send(JSON.stringify(e)));
90
- eventQueue = [];
91
- // Recovered from a tombstoned outage (e.g. the server restarted on the same
92
- // port) — reload through the keyed bootstrap when possible so the cookie is
93
- // refreshed before the visible URL returns to bare /.
94
- if (recovered) reloadAfterRecovery();
95
- };
96
-
97
- ws.onmessage = (msg) => {
98
- let data;
99
- try { data = JSON.parse(msg.data); } catch (e) { return; }
100
- if (data.type === 'reload') window.location.reload();
101
- };
102
-
103
- ws.onclose = () => {
104
- ws = null;
105
- if (disconnectedSince === null) disconnectedSince = Date.now();
106
- if (Date.now() - disconnectedSince >= TOMBSTONE_AFTER_MS) {
107
- setStatus('disconnected');
108
- showTombstone();
109
- } else {
110
- setStatus('reconnecting');
111
- }
112
- reconnectTimer = setTimeout(connect, reconnectDelay);
113
- reconnectDelay = nextReconnectDelay(reconnectDelay, MAX_RECONNECT_MS);
114
- };
115
-
116
- // Let onclose own reconnection so we don't schedule it twice.
117
- ws.onerror = () => { try { ws.close(); } catch (e) {} };
118
- }
119
-
120
- function sendEvent(event) {
121
- event.timestamp = Date.now();
122
- if (ws && ws.readyState === WebSocket.OPEN) {
123
- ws.send(JSON.stringify(event));
124
- } else {
125
- eventQueue.push(event);
126
- }
127
- }
128
-
129
- // Capture clicks on choice elements
130
- document.addEventListener('click', (e) => {
131
- const target = e.target.closest('[data-choice]');
132
- if (!target) return;
133
-
134
- sendEvent({
135
- type: 'click',
136
- text: target.textContent.trim(),
137
- choice: target.dataset.choice,
138
- id: target.id || null
139
- });
140
-
141
- });
142
-
143
- // Frame UI: selection tracking
144
- window.selectedChoice = null;
145
-
146
- window.toggleSelect = function(el) {
147
- const container = el.closest('.options') || el.closest('.cards');
148
- const multi = container && container.dataset.multiselect !== undefined;
149
- if (container && !multi) {
150
- container.querySelectorAll('.option, .card').forEach(o => o.classList.remove('selected'));
151
- }
152
- if (multi) {
153
- el.classList.toggle('selected');
154
- } else {
155
- el.classList.add('selected');
156
- }
157
- window.selectedChoice = el.dataset.choice;
158
- };
159
-
160
- // Expose API for explicit use
161
- window.brainstorm = {
162
- send: sendEvent,
163
- choice: (value, metadata = {}) => sendEvent({ type: 'choice', value, ...metadata })
164
- };
165
-
166
- connect();
167
- })();