self-evolve-framework 1.1.1 → 1.2.0
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.
- package/package.json +1 -1
- package/template/skills/impeccable/SKILL.md +174 -47
- package/template/skills/impeccable/agents/impeccable_asset_producer.toml +92 -0
- package/template/skills/impeccable/agents/impeccable_manual_edit_applier.toml +95 -0
- package/template/skills/impeccable/agents/openai.yaml +4 -0
- package/template/skills/impeccable/reference/adapt.md +311 -0
- package/template/skills/impeccable/reference/animate.md +201 -0
- package/template/skills/impeccable/reference/audit.md +133 -0
- package/template/skills/impeccable/reference/bolder.md +113 -0
- package/template/skills/impeccable/reference/brand.md +108 -0
- package/template/skills/impeccable/reference/clarify.md +288 -0
- package/template/skills/impeccable/reference/codex.md +105 -0
- package/template/skills/impeccable/reference/colorize.md +257 -0
- package/template/skills/impeccable/reference/craft.md +123 -0
- package/template/skills/impeccable/reference/critique.md +790 -0
- package/template/skills/impeccable/reference/delight.md +302 -0
- package/template/skills/impeccable/reference/distill.md +111 -0
- package/template/skills/impeccable/reference/document.md +429 -0
- package/template/skills/impeccable/reference/extract.md +69 -0
- package/template/skills/impeccable/reference/harden.md +347 -0
- package/template/skills/impeccable/reference/hooks.md +90 -0
- package/template/skills/impeccable/reference/init.md +172 -0
- package/template/skills/impeccable/reference/interaction-design.md +189 -0
- package/template/skills/impeccable/reference/layout.md +161 -0
- package/template/skills/impeccable/reference/live.md +720 -0
- package/template/skills/impeccable/reference/onboard.md +234 -0
- package/template/skills/impeccable/reference/optimize.md +258 -0
- package/template/skills/impeccable/reference/overdrive.md +130 -0
- package/template/skills/impeccable/reference/polish.md +241 -0
- package/template/skills/impeccable/reference/product.md +60 -0
- package/template/skills/impeccable/reference/quieter.md +99 -0
- package/template/skills/impeccable/reference/shape.md +165 -0
- package/template/skills/impeccable/reference/typeset.md +279 -0
- package/template/skills/impeccable/scripts/command-metadata.json +94 -0
- package/template/skills/impeccable/scripts/context-signals.mjs +225 -0
- package/template/skills/impeccable/scripts/context.mjs +961 -0
- package/template/skills/impeccable/scripts/critique-storage.mjs +242 -0
- package/template/skills/impeccable/scripts/detect-csp.mjs +198 -0
- package/template/skills/impeccable/scripts/detect.mjs +21 -0
- package/template/skills/impeccable/scripts/detector/browser/injected/index.mjs +1937 -0
- package/template/skills/impeccable/scripts/detector/cli/main.mjs +290 -0
- package/template/skills/impeccable/scripts/detector/design-system.mjs +750 -0
- package/template/skills/impeccable/scripts/detector/detect-antipatterns-browser.js +5138 -0
- package/template/skills/impeccable/scripts/detector/detect-antipatterns.mjs +50 -0
- package/template/skills/impeccable/scripts/detector/engines/browser/detect-url.mjs +277 -0
- package/template/skills/impeccable/scripts/detector/engines/regex/detect-text.mjs +568 -0
- package/template/skills/impeccable/scripts/detector/engines/static-html/css-cascade.mjs +1015 -0
- package/template/skills/impeccable/scripts/detector/engines/static-html/detect-html.mjs +234 -0
- package/template/skills/impeccable/scripts/detector/engines/visual/screenshot-contrast.mjs +189 -0
- package/template/skills/impeccable/scripts/detector/findings.mjs +12 -0
- package/template/skills/impeccable/scripts/detector/node/file-system.mjs +198 -0
- package/template/skills/impeccable/scripts/detector/profile/profiler.mjs +166 -0
- package/template/skills/impeccable/scripts/detector/registry/antipatterns.mjs +448 -0
- package/template/skills/impeccable/scripts/detector/rules/checks.mjs +2671 -0
- package/template/skills/impeccable/scripts/detector/shared/color.mjs +124 -0
- package/template/skills/impeccable/scripts/detector/shared/constants.mjs +101 -0
- package/template/skills/impeccable/scripts/detector/shared/inline-ignores.mjs +148 -0
- package/template/skills/impeccable/scripts/detector/shared/page.mjs +7 -0
- package/template/skills/impeccable/scripts/hook-admin.mjs +661 -0
- package/template/skills/impeccable/scripts/hook-before-edit.mjs +476 -0
- package/template/skills/impeccable/scripts/hook-lib.mjs +1632 -0
- package/template/skills/impeccable/scripts/hook.mjs +61 -0
- package/template/skills/impeccable/scripts/lib/design-parser.mjs +842 -0
- package/template/skills/impeccable/scripts/lib/impeccable-config.mjs +638 -0
- package/template/skills/impeccable/scripts/lib/impeccable-paths.mjs +128 -0
- package/template/skills/impeccable/scripts/lib/is-generated.mjs +69 -0
- package/template/skills/impeccable/scripts/lib/target-args.mjs +42 -0
- package/template/skills/impeccable/scripts/live/browser-script-parts.mjs +49 -0
- package/template/skills/impeccable/scripts/live/completion.mjs +19 -0
- package/template/skills/impeccable/scripts/live/event-validation.mjs +137 -0
- package/template/skills/impeccable/scripts/live/insert-ui.mjs +458 -0
- package/template/skills/impeccable/scripts/live/manual-apply.mjs +939 -0
- package/template/skills/impeccable/scripts/live/manual-edit-routes.mjs +357 -0
- package/template/skills/impeccable/scripts/live/manual-edits-buffer.mjs +152 -0
- package/template/skills/impeccable/scripts/live/session-store.mjs +289 -0
- package/template/skills/impeccable/scripts/live/svelte-component.mjs +826 -0
- package/template/skills/impeccable/scripts/live/sveltekit-adapter.mjs +274 -0
- package/template/skills/impeccable/scripts/live/ui-core.mjs +180 -0
- package/template/skills/impeccable/scripts/live/vocabulary.mjs +36 -0
- package/template/skills/impeccable/scripts/live-accept.mjs +812 -0
- package/template/skills/impeccable/scripts/live-browser-dom.js +146 -0
- package/template/skills/impeccable/scripts/live-browser-session.js +123 -0
- package/template/skills/impeccable/scripts/live-browser.js +11173 -0
- package/template/skills/impeccable/scripts/live-commit-manual-edits.mjs +1241 -0
- package/template/skills/impeccable/scripts/live-complete.mjs +75 -0
- package/template/skills/impeccable/scripts/live-copy-edit-agent.mjs +683 -0
- package/template/skills/impeccable/scripts/live-discard-manual-edits.mjs +51 -0
- package/template/skills/impeccable/scripts/live-inject.mjs +583 -0
- package/template/skills/impeccable/scripts/live-insert.mjs +272 -0
- package/template/skills/impeccable/scripts/live-manual-edit-evidence.mjs +363 -0
- package/template/skills/impeccable/scripts/live-poll.mjs +384 -0
- package/template/skills/impeccable/scripts/live-resume.mjs +94 -0
- package/template/skills/impeccable/scripts/live-server.mjs +1135 -0
- package/template/skills/impeccable/scripts/live-status.mjs +61 -0
- package/template/skills/impeccable/scripts/live-target.mjs +30 -0
- package/template/skills/impeccable/scripts/live-wrap.mjs +894 -0
- package/template/skills/impeccable/scripts/live.mjs +297 -0
- package/template/skills/impeccable/scripts/modern-screenshot.umd.js +14 -0
- package/template/skills/impeccable/scripts/palette.mjs +633 -0
- package/template/skills/impeccable/scripts/pin.mjs +214 -0
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Impeccable design hook — PostToolUse entry point.
|
|
4
|
+
*
|
|
5
|
+
* Reads the Claude Code / Codex / Cursor hook event from stdin, runs the design
|
|
6
|
+
* detector against the touched file, and emits a system reminder via
|
|
7
|
+
* `hookSpecificOutput.additionalContext` when findings exist.
|
|
8
|
+
*
|
|
9
|
+
* Contract: never break a turn. Always exit 0. Clean files emit a small ack
|
|
10
|
+
* unless quiet mode is enabled.
|
|
11
|
+
*
|
|
12
|
+
* Most logic lives in `hook-lib.mjs` so it is unit-testable without a
|
|
13
|
+
* subprocess. This file is the thin stdin/stdout adapter.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
import { runHook, writeAuditLog } from './hook-lib.mjs';
|
|
17
|
+
|
|
18
|
+
async function readStdin() {
|
|
19
|
+
if (process.stdin.isTTY) return '';
|
|
20
|
+
const chunks = [];
|
|
21
|
+
for await (const chunk of process.stdin) chunks.push(chunk);
|
|
22
|
+
return Buffer.concat(chunks).toString('utf-8');
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
async function main() {
|
|
26
|
+
// Snapshot the inherited env FIRST so the re-entrancy guard checks the
|
|
27
|
+
// parent's value, not the value we are about to export for any child
|
|
28
|
+
// processes the hook might ever spawn.
|
|
29
|
+
const inheritedEnv = { ...process.env };
|
|
30
|
+
process.env.IMPECCABLE_HOOK_DEPTH = process.env.IMPECCABLE_HOOK_DEPTH || '1';
|
|
31
|
+
|
|
32
|
+
let stdinJson = '';
|
|
33
|
+
try { stdinJson = await readStdin(); } catch { /* fall through */ }
|
|
34
|
+
|
|
35
|
+
const result = await runHook({
|
|
36
|
+
stdinJson,
|
|
37
|
+
env: inheritedEnv,
|
|
38
|
+
cwd: process.cwd(),
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
writeAuditLog(process.env, result.audit, process.cwd());
|
|
42
|
+
|
|
43
|
+
if (result.stdout) process.stdout.write(result.stdout);
|
|
44
|
+
process.exit(result.exitCode || 0);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
main().catch((err) => {
|
|
48
|
+
// Last-ditch: never break the agent's turn even if something we did not
|
|
49
|
+
// anticipate goes wrong. Audit-log the failure if logging is enabled.
|
|
50
|
+
try {
|
|
51
|
+
writeAuditLog(process.env, {
|
|
52
|
+
ts: new Date().toISOString(),
|
|
53
|
+
event: 'PostToolUse',
|
|
54
|
+
error: String(err && err.message ? err.message : err),
|
|
55
|
+
});
|
|
56
|
+
} catch { /* swallow */ }
|
|
57
|
+
if (process.env.IMPECCABLE_HOOK_DEBUG) {
|
|
58
|
+
process.stderr.write(`[impeccable-hook] ${err}\n`);
|
|
59
|
+
}
|
|
60
|
+
process.exit(0);
|
|
61
|
+
});
|