self-evolve-framework 1.5.0 → 1.6.1

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 (154) hide show
  1. package/README.md +33 -23
  2. package/bin/cli.js +24 -67
  3. package/package.json +1 -1
  4. package/template/rules/knowledge/README.md +56 -0
  5. package/template/rules/knowledge/ant-design-vue.mdc +54 -0
  6. package/template/rules/knowledge/general.mdc +56 -0
  7. package/template/rules/knowledge/rust.mdc +55 -0
  8. package/template/rules/knowledge/shadcn-svelte.mdc +64 -0
  9. package/template/rules/knowledge/svelte.mdc +135 -0
  10. package/template/rules/knowledge/tailwind.mdc +66 -0
  11. package/template/rules/knowledge/tauri.mdc +65 -0
  12. package/template/rules/knowledge/typescript.mdc +41 -0
  13. package/template/rules/knowledge/vue.mdc +48 -0
  14. package/template/rules/ponytail.mdc +23 -98
  15. package/template/rules/self-evolve.mdc +24 -0
  16. package/template/skills/impeccable/SKILL.md +47 -174
  17. package/template/skills/skillopt-sleep/SKILL.md +34 -48
  18. package/template/skills/impeccable/agents/impeccable_asset_producer.toml +0 -92
  19. package/template/skills/impeccable/agents/impeccable_manual_edit_applier.toml +0 -95
  20. package/template/skills/impeccable/agents/openai.yaml +0 -4
  21. package/template/skills/impeccable/reference/adapt.md +0 -311
  22. package/template/skills/impeccable/reference/animate.md +0 -201
  23. package/template/skills/impeccable/reference/audit.md +0 -133
  24. package/template/skills/impeccable/reference/bolder.md +0 -113
  25. package/template/skills/impeccable/reference/brand.md +0 -108
  26. package/template/skills/impeccable/reference/clarify.md +0 -288
  27. package/template/skills/impeccable/reference/codex.md +0 -105
  28. package/template/skills/impeccable/reference/colorize.md +0 -257
  29. package/template/skills/impeccable/reference/craft.md +0 -123
  30. package/template/skills/impeccable/reference/critique.md +0 -790
  31. package/template/skills/impeccable/reference/delight.md +0 -302
  32. package/template/skills/impeccable/reference/distill.md +0 -111
  33. package/template/skills/impeccable/reference/document.md +0 -429
  34. package/template/skills/impeccable/reference/extract.md +0 -69
  35. package/template/skills/impeccable/reference/harden.md +0 -347
  36. package/template/skills/impeccable/reference/hooks.md +0 -90
  37. package/template/skills/impeccable/reference/init.md +0 -172
  38. package/template/skills/impeccable/reference/interaction-design.md +0 -189
  39. package/template/skills/impeccable/reference/layout.md +0 -161
  40. package/template/skills/impeccable/reference/live.md +0 -720
  41. package/template/skills/impeccable/reference/onboard.md +0 -234
  42. package/template/skills/impeccable/reference/optimize.md +0 -258
  43. package/template/skills/impeccable/reference/overdrive.md +0 -130
  44. package/template/skills/impeccable/reference/polish.md +0 -241
  45. package/template/skills/impeccable/reference/product.md +0 -60
  46. package/template/skills/impeccable/reference/quieter.md +0 -99
  47. package/template/skills/impeccable/reference/shape.md +0 -165
  48. package/template/skills/impeccable/reference/typeset.md +0 -279
  49. package/template/skills/impeccable/scripts/command-metadata.json +0 -94
  50. package/template/skills/impeccable/scripts/context-signals.mjs +0 -225
  51. package/template/skills/impeccable/scripts/context.mjs +0 -961
  52. package/template/skills/impeccable/scripts/critique-storage.mjs +0 -242
  53. package/template/skills/impeccable/scripts/detect-csp.mjs +0 -198
  54. package/template/skills/impeccable/scripts/detect.mjs +0 -21
  55. package/template/skills/impeccable/scripts/detector/browser/injected/index.mjs +0 -1937
  56. package/template/skills/impeccable/scripts/detector/cli/main.mjs +0 -290
  57. package/template/skills/impeccable/scripts/detector/design-system.mjs +0 -750
  58. package/template/skills/impeccable/scripts/detector/detect-antipatterns-browser.js +0 -5138
  59. package/template/skills/impeccable/scripts/detector/detect-antipatterns.mjs +0 -50
  60. package/template/skills/impeccable/scripts/detector/engines/browser/detect-url.mjs +0 -277
  61. package/template/skills/impeccable/scripts/detector/engines/regex/detect-text.mjs +0 -568
  62. package/template/skills/impeccable/scripts/detector/engines/static-html/css-cascade.mjs +0 -1015
  63. package/template/skills/impeccable/scripts/detector/engines/static-html/detect-html.mjs +0 -234
  64. package/template/skills/impeccable/scripts/detector/engines/visual/screenshot-contrast.mjs +0 -189
  65. package/template/skills/impeccable/scripts/detector/findings.mjs +0 -12
  66. package/template/skills/impeccable/scripts/detector/node/file-system.mjs +0 -198
  67. package/template/skills/impeccable/scripts/detector/profile/profiler.mjs +0 -166
  68. package/template/skills/impeccable/scripts/detector/registry/antipatterns.mjs +0 -448
  69. package/template/skills/impeccable/scripts/detector/rules/checks.mjs +0 -2671
  70. package/template/skills/impeccable/scripts/detector/shared/color.mjs +0 -124
  71. package/template/skills/impeccable/scripts/detector/shared/constants.mjs +0 -101
  72. package/template/skills/impeccable/scripts/detector/shared/inline-ignores.mjs +0 -148
  73. package/template/skills/impeccable/scripts/detector/shared/page.mjs +0 -7
  74. package/template/skills/impeccable/scripts/hook-admin.mjs +0 -661
  75. package/template/skills/impeccable/scripts/hook-before-edit.mjs +0 -476
  76. package/template/skills/impeccable/scripts/hook-lib.mjs +0 -1632
  77. package/template/skills/impeccable/scripts/hook.mjs +0 -61
  78. package/template/skills/impeccable/scripts/lib/design-parser.mjs +0 -842
  79. package/template/skills/impeccable/scripts/lib/impeccable-config.mjs +0 -638
  80. package/template/skills/impeccable/scripts/lib/impeccable-paths.mjs +0 -128
  81. package/template/skills/impeccable/scripts/lib/is-generated.mjs +0 -69
  82. package/template/skills/impeccable/scripts/lib/target-args.mjs +0 -42
  83. package/template/skills/impeccable/scripts/live/browser-script-parts.mjs +0 -49
  84. package/template/skills/impeccable/scripts/live/completion.mjs +0 -19
  85. package/template/skills/impeccable/scripts/live/event-validation.mjs +0 -137
  86. package/template/skills/impeccable/scripts/live/insert-ui.mjs +0 -458
  87. package/template/skills/impeccable/scripts/live/manual-apply.mjs +0 -939
  88. package/template/skills/impeccable/scripts/live/manual-edit-routes.mjs +0 -357
  89. package/template/skills/impeccable/scripts/live/manual-edits-buffer.mjs +0 -152
  90. package/template/skills/impeccable/scripts/live/session-store.mjs +0 -289
  91. package/template/skills/impeccable/scripts/live/svelte-component.mjs +0 -826
  92. package/template/skills/impeccable/scripts/live/sveltekit-adapter.mjs +0 -274
  93. package/template/skills/impeccable/scripts/live/ui-core.mjs +0 -180
  94. package/template/skills/impeccable/scripts/live/vocabulary.mjs +0 -36
  95. package/template/skills/impeccable/scripts/live-accept.mjs +0 -812
  96. package/template/skills/impeccable/scripts/live-browser-dom.js +0 -146
  97. package/template/skills/impeccable/scripts/live-browser-session.js +0 -123
  98. package/template/skills/impeccable/scripts/live-browser.js +0 -11173
  99. package/template/skills/impeccable/scripts/live-commit-manual-edits.mjs +0 -1241
  100. package/template/skills/impeccable/scripts/live-complete.mjs +0 -75
  101. package/template/skills/impeccable/scripts/live-copy-edit-agent.mjs +0 -683
  102. package/template/skills/impeccable/scripts/live-discard-manual-edits.mjs +0 -51
  103. package/template/skills/impeccable/scripts/live-inject.mjs +0 -583
  104. package/template/skills/impeccable/scripts/live-insert.mjs +0 -272
  105. package/template/skills/impeccable/scripts/live-manual-edit-evidence.mjs +0 -363
  106. package/template/skills/impeccable/scripts/live-poll.mjs +0 -384
  107. package/template/skills/impeccable/scripts/live-resume.mjs +0 -94
  108. package/template/skills/impeccable/scripts/live-server.mjs +0 -1135
  109. package/template/skills/impeccable/scripts/live-status.mjs +0 -61
  110. package/template/skills/impeccable/scripts/live-target.mjs +0 -30
  111. package/template/skills/impeccable/scripts/live-wrap.mjs +0 -894
  112. package/template/skills/impeccable/scripts/live.mjs +0 -297
  113. package/template/skills/impeccable/scripts/modern-screenshot.umd.js +0 -14
  114. package/template/skills/impeccable/scripts/palette.mjs +0 -633
  115. package/template/skills/impeccable/scripts/pin.mjs +0 -214
  116. package/template/skills/skillopt-sleep/scripts/python/__init__.py +0 -20
  117. package/template/skills/skillopt-sleep/scripts/python/__main__.py +0 -343
  118. package/template/skills/skillopt-sleep/scripts/python/backend.py +0 -1371
  119. package/template/skills/skillopt-sleep/scripts/python/budget.py +0 -75
  120. package/template/skills/skillopt-sleep/scripts/python/config.py +0 -162
  121. package/template/skills/skillopt-sleep/scripts/python/consolidate.py +0 -238
  122. package/template/skills/skillopt-sleep/scripts/python/cycle.py +0 -291
  123. package/template/skills/skillopt-sleep/scripts/python/dream.py +0 -138
  124. package/template/skills/skillopt-sleep/scripts/python/experiments/__init__.py +0 -1
  125. package/template/skills/skillopt-sleep/scripts/python/experiments/gbrain_bench.py +0 -119
  126. package/template/skills/skillopt-sleep/scripts/python/experiments/personas.py +0 -86
  127. package/template/skills/skillopt-sleep/scripts/python/experiments/report.py +0 -132
  128. package/template/skills/skillopt-sleep/scripts/python/experiments/run_experiment.py +0 -178
  129. package/template/skills/skillopt-sleep/scripts/python/experiments/run_gbrain.py +0 -209
  130. package/template/skills/skillopt-sleep/scripts/python/experiments/run_transfer.py +0 -155
  131. package/template/skills/skillopt-sleep/scripts/python/experiments/sweep.py +0 -164
  132. package/template/skills/skillopt-sleep/scripts/python/gate.py +0 -50
  133. package/template/skills/skillopt-sleep/scripts/python/harvest.py +0 -304
  134. package/template/skills/skillopt-sleep/scripts/python/harvest_codex.py +0 -253
  135. package/template/skills/skillopt-sleep/scripts/python/harvest_sources.py +0 -41
  136. package/template/skills/skillopt-sleep/scripts/python/judges.py +0 -84
  137. package/template/skills/skillopt-sleep/scripts/python/llm_miner.py +0 -134
  138. package/template/skills/skillopt-sleep/scripts/python/memory.py +0 -129
  139. package/template/skills/skillopt-sleep/scripts/python/mine.py +0 -312
  140. package/template/skills/skillopt-sleep/scripts/python/replay.py +0 -146
  141. package/template/skills/skillopt-sleep/scripts/python/rollout.py +0 -153
  142. package/template/skills/skillopt-sleep/scripts/python/scheduler.py +0 -138
  143. package/template/skills/skillopt-sleep/scripts/python/slow_update.py +0 -142
  144. package/template/skills/skillopt-sleep/scripts/python/staging.py +0 -103
  145. package/template/skills/skillopt-sleep/scripts/python/state.py +0 -96
  146. package/template/skills/skillopt-sleep/scripts/python/tasks_file.py +0 -81
  147. package/template/skills/skillopt-sleep/scripts/python/types.py +0 -146
  148. package/template/skills/skillopt-sleep/scripts/shell/__init__.py +0 -0
  149. package/template/skills/skillopt-sleep/scripts/shell/eval_only.py +0 -466
  150. package/template/skills/skillopt-sleep/scripts/shell/materialize_searchqa.py +0 -148
  151. package/template/skills/skillopt-sleep/scripts/shell/run_alfworld.sh +0 -60
  152. package/template/skills/skillopt-sleep/scripts/shell/run_searchqa.sh +0 -40
  153. package/template/skills/skillopt-sleep/scripts/shell/run_spreadsheetbench.sh +0 -39
  154. package/template/skills/skillopt-sleep/scripts/shell/train.py +0 -556
@@ -1,146 +0,0 @@
1
- /**
2
- * Browser-side DOM helpers for Impeccable live mode.
3
- *
4
- * Kept separate from live-browser.js so future browser script parts can share
5
- * chrome mounting, lookup, focus, and picker helpers without depending on the
6
- * full overlay UI bundle.
7
- */
8
- (function (root) {
9
- 'use strict';
10
- if (!root) return;
11
-
12
- function createLiveBrowserDomHelpers({
13
- prefix,
14
- skipTags,
15
- document: doc = root.document,
16
- css = root.CSS,
17
- crypto = root.crypto,
18
- } = {}) {
19
- if (!prefix) throw new Error('prefix required');
20
- if (!doc) throw new Error('document required');
21
- const tagsToSkip = skipTags || new Set();
22
-
23
- function own(el) {
24
- return el && (el.id?.startsWith(prefix) || el.closest?.('[id^="' + prefix + '"]'));
25
- }
26
-
27
- function pickable(el) {
28
- if (!el || el.nodeType !== 1) return false;
29
- if (tagsToSkip.has(String(el.tagName || '').toLowerCase())) return false;
30
- if (own(el)) return false;
31
- const r = el.getBoundingClientRect();
32
- return r.width >= 20 && r.height >= 20;
33
- }
34
-
35
- function desc(el) {
36
- if (!el) return '';
37
- let s = el.tagName.toLowerCase();
38
- if (el.id) s += '#' + el.id;
39
- else if (el.classList.length) s += '.' + [...el.classList].slice(0, 2).join('.');
40
- return s;
41
- }
42
-
43
- function rectIsUsableAnchor(rect) {
44
- return !!rect && rect.width > 0.5 && rect.height > 0.5;
45
- }
46
-
47
- function makeFrozenAnchor(el) {
48
- if (!el || !el.getBoundingClientRect) return null;
49
- const r = el.getBoundingClientRect();
50
- if (!rectIsUsableAnchor(r)) return null;
51
- const rect = {
52
- x: r.x, y: r.y,
53
- top: r.top, left: r.left,
54
- right: r.right, bottom: r.bottom,
55
- width: r.width, height: r.height,
56
- };
57
- return {
58
- __impeccableFrozenAnchor: true,
59
- tagName: el.tagName || 'DIV',
60
- id: el.id || '',
61
- classList: el.classList ? [...el.classList] : [],
62
- hasAttribute: () => false,
63
- getBoundingClientRect: () => rect,
64
- };
65
- }
66
-
67
- function id8() {
68
- if (crypto?.randomUUID) return crypto.randomUUID().replace(/-/g, '').slice(0, 8);
69
- return (Math.random().toString(16).slice(2) + Date.now().toString(16)).slice(0, 8);
70
- }
71
-
72
- function cssId(id) {
73
- if (css?.escape) return css.escape(id);
74
- return String(id).replace(/([ !"#$%&'()*+,./:;<=>?@[\\\]^`{|}~])/g, '\\$1');
75
- }
76
-
77
- function liveUiRoot() {
78
- const uiRoot = root.__IMPECCABLE_LIVE_UI_ROOT__;
79
- if (uiRoot && typeof uiRoot.appendChild === 'function') return uiRoot;
80
- return doc.body;
81
- }
82
-
83
- function uiAppend(el) {
84
- liveUiRoot().appendChild(el);
85
- return el;
86
- }
87
-
88
- function uiAppendStyle(styleEl) {
89
- const uiRoot = liveUiRoot();
90
- if (uiRoot && uiRoot !== doc.body) uiRoot.appendChild(styleEl);
91
- else doc.head.appendChild(styleEl);
92
- return styleEl;
93
- }
94
-
95
- function uiGetById(id) {
96
- const uiRoot = liveUiRoot();
97
- if (uiRoot?.getElementById) {
98
- const found = uiRoot.getElementById(id);
99
- if (found) return found;
100
- }
101
- if (uiRoot?.querySelector) {
102
- const found = uiRoot.querySelector('#' + cssId(id));
103
- if (found) return found;
104
- }
105
- return doc.getElementById(id);
106
- }
107
-
108
- function activeElementDeep() {
109
- let active = doc.activeElement;
110
- while (active?.shadowRoot?.activeElement) active = active.shadowRoot.activeElement;
111
- return active;
112
- }
113
-
114
- function defangOutsideHandlers(rootEl, { setPointerEvents = true } = {}) {
115
- if (!rootEl) return;
116
- if (setPointerEvents) {
117
- rootEl.style.setProperty('pointer-events', 'auto', 'important');
118
- }
119
- const stop = (e) => e.stopPropagation();
120
- rootEl.addEventListener('pointerdown', stop);
121
- rootEl.addEventListener('mousedown', stop);
122
- rootEl.addEventListener('focusin', stop);
123
- }
124
-
125
- return {
126
- own,
127
- pickable,
128
- desc,
129
- rectIsUsableAnchor,
130
- makeFrozenAnchor,
131
- id8,
132
- cssId,
133
- liveUiRoot,
134
- uiAppend,
135
- uiAppendStyle,
136
- uiGetById,
137
- activeElementDeep,
138
- defangOutsideHandlers,
139
- };
140
- }
141
-
142
- root.__IMPECCABLE_LIVE_DOM__ = {
143
- version: 1,
144
- createLiveBrowserDomHelpers,
145
- };
146
- })(typeof window !== 'undefined' ? window : globalThis);
@@ -1,123 +0,0 @@
1
- /**
2
- * Browser-side durable session helpers for Impeccable live mode.
3
- *
4
- * Kept separate from live-browser.js so recovery state can be tested without
5
- * booting the full overlay UI. Served before live-browser.js and attached to
6
- * window.__IMPECCABLE_LIVE_SESSION__.
7
- */
8
- (function (root) {
9
- 'use strict';
10
-
11
- function createLiveBrowserSessionState({ prefix, storage, idFactory }) {
12
- if (!prefix) throw new Error('prefix required');
13
- const store = storage || root.localStorage;
14
- const makeId = idFactory || function () { return Math.random().toString(16).slice(2, 10); };
15
- const sessionKey = prefix + '-session';
16
- const handledKey = sessionKey + '-handled';
17
- const scrollKey = sessionKey + '-scroll';
18
- let checkpointRevision = 0;
19
- const owner = makeId();
20
-
21
- function safeRead(key) {
22
- try { return store.getItem(key); } catch { return null; }
23
- }
24
-
25
- function safeWrite(key, value) {
26
- try { store.setItem(key, value); } catch { /* quota exceeded or private mode */ }
27
- }
28
-
29
- function safeRemove(key) {
30
- try { store.removeItem(key); } catch { /* unavailable storage */ }
31
- }
32
-
33
- function loadSession() {
34
- try {
35
- const raw = safeRead(sessionKey);
36
- if (!raw) return null;
37
- const parsed = JSON.parse(raw);
38
- if (Number.isInteger(parsed.checkpointRevision)) {
39
- checkpointRevision = Math.max(checkpointRevision, parsed.checkpointRevision);
40
- }
41
- return parsed;
42
- } catch { return null; }
43
- }
44
-
45
- function saveSession(session) {
46
- if (!session || !session.id) return;
47
- const payload = {
48
- ...session,
49
- checkpointRevision,
50
- };
51
- safeWrite(sessionKey, JSON.stringify(payload));
52
- }
53
-
54
- function clearSession() {
55
- safeRemove(sessionKey);
56
- }
57
-
58
- function nextCheckpointRevision() {
59
- checkpointRevision += 1;
60
- const existing = loadSession();
61
- if (existing?.id) saveSession(existing);
62
- return checkpointRevision;
63
- }
64
-
65
- function seedCheckpointRevision(value) {
66
- if (Number.isInteger(value)) checkpointRevision = Math.max(checkpointRevision, value);
67
- return checkpointRevision;
68
- }
69
-
70
- function currentCheckpointRevision() {
71
- return checkpointRevision;
72
- }
73
-
74
- function markHandled(id) {
75
- if (!id) return;
76
- safeWrite(handledKey, id);
77
- }
78
-
79
- function isHandled(id) {
80
- return !!id && safeRead(handledKey) === id;
81
- }
82
-
83
- function clearHandled() {
84
- safeRemove(handledKey);
85
- }
86
-
87
- function writeScrollY(y) {
88
- safeWrite(scrollKey, String(y));
89
- }
90
-
91
- function readScrollY() {
92
- const raw = safeRead(scrollKey);
93
- if (raw == null) return null;
94
- const n = parseFloat(raw);
95
- return isFinite(n) ? n : null;
96
- }
97
-
98
- function clearScrollY() {
99
- safeRemove(scrollKey);
100
- }
101
-
102
- return {
103
- owner,
104
- sessionKey,
105
- handledKey,
106
- scrollKey,
107
- saveSession,
108
- loadSession,
109
- clearSession,
110
- nextCheckpointRevision,
111
- seedCheckpointRevision,
112
- currentCheckpointRevision,
113
- markHandled,
114
- isHandled,
115
- clearHandled,
116
- writeScrollY,
117
- readScrollY,
118
- clearScrollY,
119
- };
120
- }
121
-
122
- root.__IMPECCABLE_LIVE_SESSION__ = { createLiveBrowserSessionState };
123
- })(typeof window !== 'undefined' ? window : globalThis);