kodelyth-ecc 1.8.0 → 1.8.2
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/CLAUDE.md +1 -1
- package/VERSION +1 -1
- package/bin/kodelyth-ecc.js +54 -5
- package/install.ps1 +30 -13
- package/install.sh +11 -4
- package/package.json +1 -1
- package/rules/common/agent-intent-routing.md +96 -195
- package/.github/ISSUE_TEMPLATE/bug_report.md +0 -47
- package/.github/ISSUE_TEMPLATE/config.yml +0 -8
- package/.github/ISSUE_TEMPLATE/feature_request.md +0 -41
- package/.github/ISSUE_TEMPLATE/good_first_issue.md +0 -36
- package/.github/ISSUE_TEMPLATE/new_agent.md +0 -52
- package/.github/PULL_REQUEST_TEMPLATE.md +0 -53
- package/.github/workflows/ci.yml +0 -45
- package/.github/workflows/publish.yml +0 -60
- package/brand/concepts.svg +0 -109
- package/brand/convert.js +0 -161
- package/brand/favicon.svg +0 -7
- package/brand/fb-cover.svg +0 -34
- package/brand/fb-profile.svg +0 -21
- package/brand/kodelyth-dark.svg +0 -24
- package/brand/kodelyth-light.svg +0 -24
- package/brand/kodelyth-mark.svg +0 -20
- package/brand/package.json +0 -12
- package/docs/dashboard.md +0 -211
- package/docs/evolve.md +0 -303
- package/docs/mcp-clients.md +0 -167
- package/docs/mcp.md +0 -178
- package/docs/replay.md +0 -244
- package/docs/supply-chain.md +0 -207
- package/docs/swarm.md +0 -243
- package/skills/skill-comply/tests/test_grader.py +0 -137
- package/skills/skill-comply/tests/test_parser.py +0 -90
- package/social/card-agents.svg +0 -104
- package/social/card-install.svg +0 -58
- package/social/card-main.svg +0 -54
- package/social/facebook-v150.svg +0 -110
- package/social/fb-ad-main.svg +0 -128
- package/social/fb-post-features.svg +0 -118
- package/social/fb-post-launch.svg +0 -144
- package/social/fb-post-platforms.svg +0 -135
- package/social/github-social-preview.svg +0 -151
- package/social/hype-compound-learning.svg +0 -129
- package/social/hype-devil-mode.svg +0 -240
- package/social/hype-mcp-server.svg +0 -148
- package/social/hype-parallel-agents.svg +0 -162
- package/social/hype-stats-hero.svg +0 -138
- package/social/og-image.svg +0 -151
- package/social/readme-agents.svg +0 -138
- package/social/readme-hero.svg +0 -102
- package/social/section-agents.svg +0 -69
- package/social/section-author.svg +0 -66
- package/social/section-dashboard.svg +0 -71
- package/social/section-devil.svg +0 -66
- package/social/section-hooks.svg +0 -63
- package/social/section-install.svg +0 -54
- package/social/section-learning.svg +0 -64
- package/social/section-mcp.svg +0 -58
- package/social/section-memory.svg +0 -69
- package/social/section-parallel.svg +0 -84
- package/social/section-routing.svg +0 -63
- package/social/twitter-threads.md +0 -621
- package/social/x-card-agents-grid.svg +0 -120
- package/social/x-card-free.svg +0 -71
- package/social/x-card-hook.svg +0 -94
- package/tests/dashboard/data.test.js +0 -391
- package/tests/dashboard/server.test.js +0 -257
- package/tests/evolve/analyze.test.js +0 -169
- package/tests/evolve/proposals.test.js +0 -173
- package/tests/evolve/stats.test.js +0 -167
- package/tests/hooks/branch-name-check.test.js +0 -184
- package/tests/hooks/smart-suggest.test.js +0 -149
- package/tests/hooks/test-reminder.test.js +0 -181
- package/tests/mcp/catalog.test.js +0 -98
- package/tests/mcp/client.test.js +0 -113
- package/tests/mcp/resources-prompts.test.js +0 -70
- package/tests/mcp/tools.test.js +0 -159
- package/tests/memory/auto-recall.test.js +0 -132
- package/tests/memory/instincts.test.js +0 -258
- package/tests/memory/store.test.js +0 -203
- package/tests/replay/bundle.test.js +0 -181
- package/tests/replay/replay.test.js +0 -131
- package/tests/router/classify.test.js +0 -164
- package/tests/run-all.js +0 -55
- package/tests/safety/patterns.test.js +0 -94
- package/tests/safety/prompt-injection-guard.test.js +0 -111
- package/tests/safety/token-budget.test.js +0 -119
- package/tests/supply-chain/manifest.test.js +0 -147
- package/tests/supply-chain/sbom.test.js +0 -170
- package/tests/supply-chain/verify.test.js +0 -146
- package/tests/swarm/build-plan.test.js +0 -188
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
<svg viewBox="0 0 900 160" xmlns="http://www.w3.org/2000/svg" font-family="'Segoe UI', system-ui, -apple-system, sans-serif">
|
|
2
|
-
<defs>
|
|
3
|
-
<linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
4
|
-
<stop offset="0%" style="stop-color:#0d1117"/>
|
|
5
|
-
<stop offset="100%" style="stop-color:#161b22"/>
|
|
6
|
-
</linearGradient>
|
|
7
|
-
<linearGradient id="acc" x1="0%" y1="0%" x2="100%" y2="0%">
|
|
8
|
-
<stop offset="0%" style="stop-color:#a78bfa"/>
|
|
9
|
-
<stop offset="100%" style="stop-color:#38bdf8"/>
|
|
10
|
-
</linearGradient>
|
|
11
|
-
<clipPath id="avatar">
|
|
12
|
-
<circle cx="76" cy="90" r="36"/>
|
|
13
|
-
</clipPath>
|
|
14
|
-
</defs>
|
|
15
|
-
<rect width="900" height="160" fill="url(#bg)" rx="12"/>
|
|
16
|
-
<rect width="900" height="160" fill="none" stroke="#21262d" stroke-width="1" rx="12"/>
|
|
17
|
-
<!-- accent top line -->
|
|
18
|
-
<rect x="0" y="0" width="900" height="3" rx="1" fill="url(#acc)"/>
|
|
19
|
-
|
|
20
|
-
<!-- Avatar circle -->
|
|
21
|
-
<circle cx="76" cy="90" r="38" fill="#21262d" stroke="#a78bfa" stroke-opacity="0.4" stroke-width="1.5"/>
|
|
22
|
-
<!-- Stylised "SI" initials -->
|
|
23
|
-
<text x="76" y="98" font-size="26" font-weight="900" fill="url(#acc)" text-anchor="middle">SI</text>
|
|
24
|
-
|
|
25
|
-
<!-- Name + role -->
|
|
26
|
-
<text x="132" y="68" font-size="22" font-weight="800" fill="#ffffff">Shofiqul Islam</text>
|
|
27
|
-
<text x="132" y="88" font-size="12" fill="#6e7681">Creator of Kodelyth ECC · Full-stack engineer · AI tooling</text>
|
|
28
|
-
|
|
29
|
-
<!-- Divider -->
|
|
30
|
-
<line x1="132" y1="98" x2="500" y2="98" stroke="#21262d" stroke-width="1"/>
|
|
31
|
-
|
|
32
|
-
<!-- Social links as pill badges -->
|
|
33
|
-
<rect x="132" y="108" width="72" height="26" rx="13" fill="#1877f2" fill-opacity="0.15" stroke="#1877f2" stroke-opacity="0.4" stroke-width="1"/>
|
|
34
|
-
<text x="168" y="124" font-size="10" fill="#60a5fa" text-anchor="middle" font-weight="700">Facebook</text>
|
|
35
|
-
|
|
36
|
-
<rect x="214" y="108" width="80" height="26" rx="13" fill="#e1306c" fill-opacity="0.12" stroke="#e1306c" stroke-opacity="0.4" stroke-width="1"/>
|
|
37
|
-
<text x="254" y="124" font-size="10" fill="#f472b6" text-anchor="middle" font-weight="700">Instagram</text>
|
|
38
|
-
|
|
39
|
-
<rect x="304" y="108" width="72" height="26" rx="13" fill="#ffffff" fill-opacity="0.06" stroke="#ffffff" stroke-opacity="0.2" stroke-width="1"/>
|
|
40
|
-
<text x="340" y="124" font-size="10" fill="#e6edf3" text-anchor="middle" font-weight="700">GitHub</text>
|
|
41
|
-
|
|
42
|
-
<rect x="386" y="108" width="86" height="26" rx="13" fill="#ffffff" fill-opacity="0.06" stroke="#ffffff" stroke-opacity="0.2" stroke-width="1"/>
|
|
43
|
-
<text x="429" y="124" font-size="10" fill="#e6edf3" text-anchor="middle" font-weight="700">X / Twitter</text>
|
|
44
|
-
|
|
45
|
-
<!-- Handle -->
|
|
46
|
-
<text x="132" y="150" font-size="10" fill="#6e7681">@sifxprime on all platforms</text>
|
|
47
|
-
|
|
48
|
-
<!-- Right: project links -->
|
|
49
|
-
<rect x="600" y="60" width="268" height="80" rx="8" fill="#161b22" stroke="#30363d" stroke-width="1"/>
|
|
50
|
-
<text x="616" y="82" font-size="10" fill="#6e7681" font-weight="600">PROJECT LINKS</text>
|
|
51
|
-
<text x="616" y="100" font-size="10" fill="#a78bfa">github.com/sifxprime/kodelyth-ecc</text>
|
|
52
|
-
<text x="616" y="116" font-size="10" fill="#38bdf8">npmjs.com/package/kodelyth-ecc</text>
|
|
53
|
-
<text x="616" y="132" font-size="10" fill="#34d399">kodelyth.com</text>
|
|
54
|
-
|
|
55
|
-
<!-- Ghost Depth Mark — brand stamp (scale 0.22×) -->
|
|
56
|
-
<g transform="translate(810, 28) scale(0.22)" opacity="0.14">
|
|
57
|
-
<polyline points="-44,4 12,100 -44,196"
|
|
58
|
-
stroke="#ffffff" stroke-width="10"
|
|
59
|
-
stroke-linecap="round" stroke-linejoin="round"
|
|
60
|
-
fill="none"/>
|
|
61
|
-
<polyline points="0,0 88,100 0,200"
|
|
62
|
-
stroke="#ffffff" stroke-width="32"
|
|
63
|
-
stroke-linecap="round" stroke-linejoin="round"
|
|
64
|
-
fill="none"/>
|
|
65
|
-
</g>
|
|
66
|
-
</svg>
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
<svg viewBox="0 0 900 190" xmlns="http://www.w3.org/2000/svg" font-family="'Segoe UI', system-ui, -apple-system, sans-serif">
|
|
2
|
-
<defs>
|
|
3
|
-
<linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
4
|
-
<stop offset="0%" style="stop-color:#0d1117"/>
|
|
5
|
-
<stop offset="100%" style="stop-color:#161b22"/>
|
|
6
|
-
</linearGradient>
|
|
7
|
-
<linearGradient id="teal" x1="0%" y1="0%" x2="100%" y2="0%">
|
|
8
|
-
<stop offset="0%" style="stop-color:#38bdf8"/>
|
|
9
|
-
<stop offset="100%" style="stop-color:#06b6d4"/>
|
|
10
|
-
</linearGradient>
|
|
11
|
-
</defs>
|
|
12
|
-
<rect width="900" height="190" fill="url(#bg)" rx="12"/>
|
|
13
|
-
<rect width="900" height="190" fill="none" stroke="#21262d" stroke-width="1" rx="12"/>
|
|
14
|
-
|
|
15
|
-
<!-- Label -->
|
|
16
|
-
<rect x="32" y="20" width="174" height="22" rx="11" fill="#06b6d4" fill-opacity="0.12" stroke="#06b6d4" stroke-opacity="0.4" stroke-width="1"/>
|
|
17
|
-
<text x="119" y="35" font-size="10" fill="#38bdf8" text-anchor="middle" font-weight="700" letter-spacing="1">OBSERVABILITY DASHBOARD</text>
|
|
18
|
-
|
|
19
|
-
<text x="32" y="72" font-size="22" font-weight="800" fill="#ffffff">Your AI workspace — one glance, zero telemetry</text>
|
|
20
|
-
<text x="32" y="94" font-size="12" fill="#6e7681">localhost:5747 · SSE real-time push · GET-only · hardened headers · no external calls</text>
|
|
21
|
-
|
|
22
|
-
<!-- Mini browser chrome -->
|
|
23
|
-
<rect x="32" y="108" width="480" height="68" rx="7" fill="#161b22" stroke="#30363d" stroke-width="1"/>
|
|
24
|
-
<!-- browser bar -->
|
|
25
|
-
<rect x="32" y="108" width="480" height="22" rx="7" fill="#21262d"/>
|
|
26
|
-
<rect x="32" y="119" width="480" height="11" fill="#21262d"/>
|
|
27
|
-
<circle cx="50" cy="119" r="4" fill="#ef4444" opacity="0.7"/>
|
|
28
|
-
<circle cx="64" cy="119" r="4" fill="#f59e0b" opacity="0.7"/>
|
|
29
|
-
<circle cx="78" cy="119" r="4" fill="#22c55e" opacity="0.7"/>
|
|
30
|
-
<rect x="96" y="113" width="200" height="12" rx="3" fill="#0d1117"/>
|
|
31
|
-
<text x="196" y="122" font-size="7.5" fill="#6e7681" text-anchor="middle">http://127.0.0.1:5747</text>
|
|
32
|
-
<!-- green dot -->
|
|
33
|
-
<circle cx="468" cy="119" r="4" fill="#22c55e"/>
|
|
34
|
-
|
|
35
|
-
<!-- Tab bar -->
|
|
36
|
-
<rect x="38" y="130" width="58" height="16" rx="3" fill="#38bdf8" fill-opacity="0.2" stroke="#38bdf8" stroke-opacity="0.5" stroke-width="0.5"/>
|
|
37
|
-
<text x="67" y="141" font-size="7.5" fill="#38bdf8" text-anchor="middle" font-weight="700">Overview</text>
|
|
38
|
-
<text x="115" y="141" font-size="7.5" fill="#6e7681" text-anchor="middle">Memory</text>
|
|
39
|
-
<text x="152" y="141" font-size="7.5" fill="#6e7681" text-anchor="middle">Evolve</text>
|
|
40
|
-
<text x="188" y="141" font-size="7.5" fill="#6e7681" text-anchor="middle">Catalog</text>
|
|
41
|
-
<text x="225" y="141" font-size="7.5" fill="#6e7681" text-anchor="middle">Sessions</text>
|
|
42
|
-
|
|
43
|
-
<!-- Stat cards -->
|
|
44
|
-
<rect x="38" y="152" width="50" height="18" rx="3" fill="#a78bfa" fill-opacity="0.12" stroke="#a78bfa" stroke-opacity="0.3" stroke-width="0.5"/>
|
|
45
|
-
<text x="63" y="164" font-size="8" fill="#a78bfa" text-anchor="middle">70 agents</text>
|
|
46
|
-
<rect x="95" y="152" width="50" height="18" rx="3" fill="#2563eb" fill-opacity="0.12" stroke="#2563eb" stroke-opacity="0.3" stroke-width="0.5"/>
|
|
47
|
-
<text x="120" y="164" font-size="8" fill="#60a5fa" text-anchor="middle">194 skills</text>
|
|
48
|
-
<rect x="152" y="152" width="50" height="18" rx="3" fill="#059669" fill-opacity="0.12" stroke="#059669" stroke-opacity="0.3" stroke-width="0.5"/>
|
|
49
|
-
<text x="177" y="164" font-size="8" fill="#34d399" text-anchor="middle">memory ✓</text>
|
|
50
|
-
<rect x="209" y="152" width="60" height="18" rx="3" fill="#f59e0b" fill-opacity="0.12" stroke="#f59e0b" stroke-opacity="0.3" stroke-width="0.5"/>
|
|
51
|
-
<text x="239" y="164" font-size="8" fill="#fbbf24" text-anchor="middle">SSE live ●</text>
|
|
52
|
-
|
|
53
|
-
<!-- Right: launch command -->
|
|
54
|
-
<rect x="540" y="110" width="328" height="66" rx="8" fill="#161b22" stroke="#30363d" stroke-width="1"/>
|
|
55
|
-
<text x="556" y="130" font-size="9.5" fill="#6e7681">Launch the dashboard</text>
|
|
56
|
-
<rect x="556" y="138" width="295" height="26" rx="5" fill="#0d1117"/>
|
|
57
|
-
<text x="570" y="153" font-size="11" fill="#34d399" font-family="'Courier New', monospace">$ npx kodelyth-ecc dashboard</text>
|
|
58
|
-
<text x="556" y="172" font-size="9" fill="#6e7681">Opens automatically at http://127.0.0.1:5747</text>
|
|
59
|
-
|
|
60
|
-
<!-- Ghost Depth Mark — brand stamp (scale 0.25×) -->
|
|
61
|
-
<g transform="translate(810, 28) scale(0.25)" opacity="0.14">
|
|
62
|
-
<polyline points="-44,4 12,100 -44,196"
|
|
63
|
-
stroke="#ffffff" stroke-width="10"
|
|
64
|
-
stroke-linecap="round" stroke-linejoin="round"
|
|
65
|
-
fill="none"/>
|
|
66
|
-
<polyline points="0,0 88,100 0,200"
|
|
67
|
-
stroke="#ffffff" stroke-width="32"
|
|
68
|
-
stroke-linecap="round" stroke-linejoin="round"
|
|
69
|
-
fill="none"/>
|
|
70
|
-
</g>
|
|
71
|
-
</svg>
|
package/social/section-devil.svg
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
<svg viewBox="0 0 900 170" xmlns="http://www.w3.org/2000/svg" font-family="'Segoe UI', system-ui, -apple-system, sans-serif">
|
|
2
|
-
<defs>
|
|
3
|
-
<linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
4
|
-
<stop offset="0%" style="stop-color:#0d1117"/>
|
|
5
|
-
<stop offset="100%" style="stop-color:#1a0a0a"/>
|
|
6
|
-
</linearGradient>
|
|
7
|
-
<linearGradient id="redgrad" x1="0%" y1="0%" x2="100%" y2="0%">
|
|
8
|
-
<stop offset="0%" style="stop-color:#ef4444"/>
|
|
9
|
-
<stop offset="100%" style="stop-color:#dc2626"/>
|
|
10
|
-
</linearGradient>
|
|
11
|
-
</defs>
|
|
12
|
-
<rect width="900" height="170" fill="url(#bg)" rx="12"/>
|
|
13
|
-
<rect width="900" height="170" fill="none" stroke="#2d1515" stroke-width="1" rx="12"/>
|
|
14
|
-
<!-- subtle red glow top -->
|
|
15
|
-
<ellipse cx="450" cy="-10" rx="420" ry="60" fill="#ef4444" fill-opacity="0.04"/>
|
|
16
|
-
|
|
17
|
-
<!-- Label -->
|
|
18
|
-
<rect x="32" y="20" width="130" height="22" rx="11" fill="#ef4444" fill-opacity="0.15" stroke="#ef4444" stroke-opacity="0.5" stroke-width="1"/>
|
|
19
|
-
<text x="97" y="35" font-size="10" fill="#f87171" text-anchor="middle" font-weight="700" letter-spacing="1">DEVIL MODE</text>
|
|
20
|
-
|
|
21
|
-
<text x="32" y="70" font-size="22" font-weight="800" fill="#ffffff">8 adversarial agents. Red-team your own code.</text>
|
|
22
|
-
<text x="32" y="92" font-size="12" fill="#9ca3af">Before you go public — full secret, license, supply-chain, prompt-injection sweep in parallel.</text>
|
|
23
|
-
|
|
24
|
-
<!-- 8 agent pills in 2 rows -->
|
|
25
|
-
<rect x="32" y="110" width="148" height="22" rx="6" fill="#ef4444" fill-opacity="0.1" stroke="#ef4444" stroke-opacity="0.35" stroke-width="1"/>
|
|
26
|
-
<text x="106" y="124" font-size="9" fill="#f87171" text-anchor="middle" font-weight="600">prompt-injection-hunter</text>
|
|
27
|
-
|
|
28
|
-
<rect x="188" y="110" width="130" height="22" rx="6" fill="#ef4444" fill-opacity="0.1" stroke="#ef4444" stroke-opacity="0.3" stroke-width="1"/>
|
|
29
|
-
<text x="253" y="124" font-size="9" fill="#f87171" text-anchor="middle" font-weight="600">supply-chain-auditor</text>
|
|
30
|
-
|
|
31
|
-
<rect x="326" y="110" width="110" height="22" rx="6" fill="#ef4444" fill-opacity="0.1" stroke="#ef4444" stroke-opacity="0.3" stroke-width="1"/>
|
|
32
|
-
<text x="381" y="124" font-size="9" fill="#f87171" text-anchor="middle" font-weight="600">secret-hunter</text>
|
|
33
|
-
|
|
34
|
-
<rect x="444" y="110" width="148" height="22" rx="6" fill="#ef4444" fill-opacity="0.1" stroke="#ef4444" stroke-opacity="0.3" stroke-width="1"/>
|
|
35
|
-
<text x="518" y="124" font-size="9" fill="#f87171" text-anchor="middle" font-weight="600">license-violation-finder</text>
|
|
36
|
-
|
|
37
|
-
<rect x="32" y="138" width="110" height="22" rx="6" fill="#dc2626" fill-opacity="0.1" stroke="#dc2626" stroke-opacity="0.3" stroke-width="1"/>
|
|
38
|
-
<text x="87" y="152" font-size="9" fill="#fca5a5" text-anchor="middle" font-weight="600">jailbreak-tester</text>
|
|
39
|
-
|
|
40
|
-
<rect x="150" y="138" width="138" height="22" rx="6" fill="#dc2626" fill-opacity="0.1" stroke="#dc2626" stroke-opacity="0.3" stroke-width="1"/>
|
|
41
|
-
<text x="219" y="152" font-size="9" fill="#fca5a5" text-anchor="middle" font-weight="600">code-stealer-detector</text>
|
|
42
|
-
|
|
43
|
-
<rect x="296" y="138" width="120" height="22" rx="6" fill="#dc2626" fill-opacity="0.1" stroke="#dc2626" stroke-opacity="0.3" stroke-width="1"/>
|
|
44
|
-
<text x="356" y="152" font-size="9" fill="#fca5a5" text-anchor="middle" font-weight="600">backdoor-hunter</text>
|
|
45
|
-
|
|
46
|
-
<rect x="424" y="138" width="116" height="22" rx="6" fill="#dc2626" fill-opacity="0.1" stroke="#dc2626" stroke-opacity="0.3" stroke-width="1"/>
|
|
47
|
-
<text x="482" y="152" font-size="9" fill="#fca5a5" text-anchor="middle" font-weight="600">chaos-engineer</text>
|
|
48
|
-
|
|
49
|
-
<!-- Command right -->
|
|
50
|
-
<rect x="620" y="108" width="248" height="54" rx="8" fill="#1a0505" stroke="#2d1515" stroke-width="1"/>
|
|
51
|
-
<text x="636" y="126" font-size="9" fill="#6b7280"># before open-sourcing</text>
|
|
52
|
-
<text x="636" y="141" font-size="11" fill="#f87171" font-family="'Courier New', monospace">/devil-mode --pre-public</text>
|
|
53
|
-
<text x="636" y="157" font-size="9" fill="#6b7280"># all 8 at once</text>
|
|
54
|
-
|
|
55
|
-
<!-- Ghost Depth Mark — brand stamp (scale 0.23×) -->
|
|
56
|
-
<g transform="translate(810, 28) scale(0.23)" opacity="0.14">
|
|
57
|
-
<polyline points="-44,4 12,100 -44,196"
|
|
58
|
-
stroke="#ffffff" stroke-width="10"
|
|
59
|
-
stroke-linecap="round" stroke-linejoin="round"
|
|
60
|
-
fill="none"/>
|
|
61
|
-
<polyline points="0,0 88,100 0,200"
|
|
62
|
-
stroke="#ffffff" stroke-width="32"
|
|
63
|
-
stroke-linecap="round" stroke-linejoin="round"
|
|
64
|
-
fill="none"/>
|
|
65
|
-
</g>
|
|
66
|
-
</svg>
|
package/social/section-hooks.svg
DELETED
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
<svg viewBox="0 0 900 185" xmlns="http://www.w3.org/2000/svg" font-family="'Segoe UI', system-ui, -apple-system, sans-serif">
|
|
2
|
-
<defs>
|
|
3
|
-
<linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
4
|
-
<stop offset="0%" style="stop-color:#0d1117"/>
|
|
5
|
-
<stop offset="100%" style="stop-color:#161b22"/>
|
|
6
|
-
</linearGradient>
|
|
7
|
-
<marker id="arr" markerWidth="7" markerHeight="7" refX="5" refY="3" orient="auto">
|
|
8
|
-
<path d="M0,0 L5,3 L0,6 Z" fill="#6e7681" opacity="0.7"/>
|
|
9
|
-
</marker>
|
|
10
|
-
</defs>
|
|
11
|
-
<rect width="900" height="185" fill="url(#bg)" rx="12"/>
|
|
12
|
-
<rect width="900" height="185" fill="none" stroke="#21262d" stroke-width="1" rx="12"/>
|
|
13
|
-
|
|
14
|
-
<!-- Label -->
|
|
15
|
-
<rect x="32" y="20" width="226" height="22" rx="11" fill="#f59e0b" fill-opacity="0.12" stroke="#f59e0b" stroke-opacity="0.4" stroke-width="1"/>
|
|
16
|
-
<text x="145" y="35" font-size="10" fill="#fbbf24" text-anchor="middle" font-weight="700" letter-spacing="1">AUTOMATED QUALITY HOOKS</text>
|
|
17
|
-
|
|
18
|
-
<text x="32" y="72" font-size="20" font-weight="800" fill="#ffffff">22+ hooks fire silently — before, during, and after</text>
|
|
19
|
-
<text x="32" y="94" font-size="12" fill="#6e7681">PreToolUse gates · PostToolUse auto-fixers · Stop verifiers · memory capture · prompt-injection guard</text>
|
|
20
|
-
|
|
21
|
-
<!-- Col 1: PreToolUse (purple) -->
|
|
22
|
-
<rect x="32" y="110" width="196" height="62" rx="7" fill="#a78bfa" fill-opacity="0.08" stroke="#a78bfa" stroke-opacity="0.35" stroke-width="1"/>
|
|
23
|
-
<text x="130" y="126" font-size="10" fill="#a78bfa" text-anchor="middle" font-weight="700">PreToolUse</text>
|
|
24
|
-
<text x="48" y="140" font-size="9" fill="#a78bfa" opacity="0.85">· secret-guard</text>
|
|
25
|
-
<text x="48" y="153" font-size="9" fill="#a78bfa" opacity="0.85">· injection-guard</text>
|
|
26
|
-
<text x="48" y="166" font-size="9" fill="#a78bfa" opacity="0.85">· file-size-guard · token-limit</text>
|
|
27
|
-
|
|
28
|
-
<line x1="231" y1="140" x2="258" y2="140" stroke="#6e7681" stroke-width="1" marker-end="url(#arr)" opacity="0.5"/>
|
|
29
|
-
|
|
30
|
-
<!-- Col 2: PostToolUse (blue) -->
|
|
31
|
-
<rect x="261" y="110" width="196" height="62" rx="7" fill="#2563eb" fill-opacity="0.08" stroke="#2563eb" stroke-opacity="0.35" stroke-width="1"/>
|
|
32
|
-
<text x="359" y="126" font-size="10" fill="#60a5fa" text-anchor="middle" font-weight="700">PostToolUse</text>
|
|
33
|
-
<text x="277" y="140" font-size="9" fill="#60a5fa" opacity="0.85">· auto-format</text>
|
|
34
|
-
<text x="277" y="153" font-size="9" fill="#60a5fa" opacity="0.85">· eslint-fix · type-check</text>
|
|
35
|
-
<text x="277" y="166" font-size="9" fill="#60a5fa" opacity="0.85">· smart-suggest · test-reminder</text>
|
|
36
|
-
|
|
37
|
-
<line x1="460" y1="140" x2="487" y2="140" stroke="#6e7681" stroke-width="1" marker-end="url(#arr)" opacity="0.5"/>
|
|
38
|
-
|
|
39
|
-
<!-- Col 3: Stop (green) -->
|
|
40
|
-
<rect x="490" y="110" width="196" height="62" rx="7" fill="#059669" fill-opacity="0.08" stroke="#059669" stroke-opacity="0.35" stroke-width="1"/>
|
|
41
|
-
<text x="588" y="126" font-size="10" fill="#34d399" text-anchor="middle" font-weight="700">Stop</text>
|
|
42
|
-
<text x="506" y="140" font-size="9" fill="#34d399" opacity="0.85">· build-verify · test-coverage</text>
|
|
43
|
-
<text x="506" y="153" font-size="9" fill="#34d399" opacity="0.85">· lesson-capture</text>
|
|
44
|
-
<text x="506" y="166" font-size="9" fill="#34d399" opacity="0.85">· memory-capture · cost-tracker</text>
|
|
45
|
-
|
|
46
|
-
<!-- Right stats -->
|
|
47
|
-
<text x="868" y="122" font-size="9" fill="#6e7681" text-anchor="end">22+ hooks total</text>
|
|
48
|
-
<text x="868" y="137" font-size="9" fill="#6e7681" text-anchor="end">async by default</text>
|
|
49
|
-
<text x="868" y="152" font-size="9" fill="#6e7681" text-anchor="end">zero added latency</text>
|
|
50
|
-
<text x="868" y="167" font-size="9" fill="#6e7681" text-anchor="end">project-configurable</text>
|
|
51
|
-
|
|
52
|
-
<!-- Ghost Depth Mark — brand stamp (scale 0.26×) -->
|
|
53
|
-
<g transform="translate(810, 28) scale(0.26)" opacity="0.14">
|
|
54
|
-
<polyline points="-44,4 12,100 -44,196"
|
|
55
|
-
stroke="#ffffff" stroke-width="10"
|
|
56
|
-
stroke-linecap="round" stroke-linejoin="round"
|
|
57
|
-
fill="none"/>
|
|
58
|
-
<polyline points="0,0 88,100 0,200"
|
|
59
|
-
stroke="#ffffff" stroke-width="32"
|
|
60
|
-
stroke-linecap="round" stroke-linejoin="round"
|
|
61
|
-
fill="none"/>
|
|
62
|
-
</g>
|
|
63
|
-
</svg>
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
<svg viewBox="0 0 900 170" xmlns="http://www.w3.org/2000/svg" font-family="'Segoe UI', system-ui, -apple-system, sans-serif">
|
|
2
|
-
<defs>
|
|
3
|
-
<linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
4
|
-
<stop offset="0%" style="stop-color:#0d1117"/>
|
|
5
|
-
<stop offset="100%" style="stop-color:#161b22"/>
|
|
6
|
-
</linearGradient>
|
|
7
|
-
<linearGradient id="green" x1="0%" y1="0%" x2="100%" y2="0%">
|
|
8
|
-
<stop offset="0%" style="stop-color:#34d399"/>
|
|
9
|
-
<stop offset="100%" style="stop-color:#059669"/>
|
|
10
|
-
</linearGradient>
|
|
11
|
-
</defs>
|
|
12
|
-
<rect width="900" height="170" fill="url(#bg)" rx="12"/>
|
|
13
|
-
<rect width="900" height="170" fill="none" stroke="#21262d" stroke-width="1" rx="12"/>
|
|
14
|
-
|
|
15
|
-
<!-- Label -->
|
|
16
|
-
<rect x="32" y="20" width="88" height="22" rx="11" fill="#059669" fill-opacity="0.15" stroke="#059669" stroke-opacity="0.4" stroke-width="1"/>
|
|
17
|
-
<text x="76" y="35" font-size="10" fill="#34d399" text-anchor="middle" font-weight="700" letter-spacing="1">INSTALL</text>
|
|
18
|
-
|
|
19
|
-
<text x="32" y="70" font-size="22" font-weight="800" fill="#ffffff">One command. 11 platforms. Any OS.</text>
|
|
20
|
-
<text x="32" y="92" font-size="12" fill="#6e7681">Node.js 18+ · macOS · Linux · Windows · no account · no telemetry</text>
|
|
21
|
-
|
|
22
|
-
<!-- 4 install cards -->
|
|
23
|
-
<rect x="32" y="108" width="192" height="50" rx="7" fill="#161b22" stroke="#059669" stroke-opacity="0.4" stroke-width="1"/>
|
|
24
|
-
<text x="48" y="126" font-size="9" fill="#34d399" font-weight="700">npm (recommended)</text>
|
|
25
|
-
<text x="48" y="142" font-size="10" fill="#e6edf3" font-family="'Courier New', monospace">npx kodelyth-ecc</text>
|
|
26
|
-
<text x="48" y="154" font-size="8" fill="#6e7681">any platform, always latest</text>
|
|
27
|
-
|
|
28
|
-
<rect x="234" y="108" width="192" height="50" rx="7" fill="#161b22" stroke="#2563eb" stroke-opacity="0.4" stroke-width="1"/>
|
|
29
|
-
<text x="250" y="126" font-size="9" fill="#60a5fa" font-weight="700">GitHub (latest commit)</text>
|
|
30
|
-
<text x="250" y="142" font-size="9.5" fill="#e6edf3" font-family="'Courier New', monospace">npx github:sifxprime/...</text>
|
|
31
|
-
<text x="250" y="154" font-size="8" fill="#6e7681">always bleeding edge</text>
|
|
32
|
-
|
|
33
|
-
<rect x="436" y="108" width="192" height="50" rx="7" fill="#161b22" stroke="#a78bfa" stroke-opacity="0.4" stroke-width="1"/>
|
|
34
|
-
<text x="452" y="126" font-size="9" fill="#a78bfa" font-weight="700">curl (macOS / Linux)</text>
|
|
35
|
-
<text x="452" y="142" font-size="9.5" fill="#e6edf3" font-family="'Courier New', monospace">curl -fsSL ... | bash</text>
|
|
36
|
-
<text x="452" y="154" font-size="8" fill="#6e7681">no Node required</text>
|
|
37
|
-
|
|
38
|
-
<rect x="638" y="108" width="192" height="50" rx="7" fill="#161b22" stroke="#f59e0b" stroke-opacity="0.4" stroke-width="1"/>
|
|
39
|
-
<text x="654" y="126" font-size="9" fill="#fbbf24" font-weight="700">MCP Server</text>
|
|
40
|
-
<text x="654" y="142" font-size="9.5" fill="#e6edf3" font-family="'Courier New', monospace">npx kodelyth-ecc mcp</text>
|
|
41
|
-
<text x="654" y="154" font-size="8" fill="#6e7681">Claude Desktop · LangGraph</text>
|
|
42
|
-
|
|
43
|
-
<!-- Ghost Depth Mark — brand stamp (scale 0.23×) -->
|
|
44
|
-
<g transform="translate(810, 28) scale(0.23)" opacity="0.14">
|
|
45
|
-
<polyline points="-44,4 12,100 -44,196"
|
|
46
|
-
stroke="#ffffff" stroke-width="10"
|
|
47
|
-
stroke-linecap="round" stroke-linejoin="round"
|
|
48
|
-
fill="none"/>
|
|
49
|
-
<polyline points="0,0 88,100 0,200"
|
|
50
|
-
stroke="#ffffff" stroke-width="32"
|
|
51
|
-
stroke-linecap="round" stroke-linejoin="round"
|
|
52
|
-
fill="none"/>
|
|
53
|
-
</g>
|
|
54
|
-
</svg>
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
<svg viewBox="0 0 900 185" xmlns="http://www.w3.org/2000/svg" font-family="'Segoe UI', system-ui, -apple-system, sans-serif">
|
|
2
|
-
<defs>
|
|
3
|
-
<linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
4
|
-
<stop offset="0%" style="stop-color:#0d1117"/>
|
|
5
|
-
<stop offset="100%" style="stop-color:#161b22"/>
|
|
6
|
-
</linearGradient>
|
|
7
|
-
<marker id="arr" markerWidth="7" markerHeight="7" refX="5" refY="3" orient="auto">
|
|
8
|
-
<path d="M0,0 L5,3 L0,6 Z" fill="#34d399" opacity="0.8"/>
|
|
9
|
-
</marker>
|
|
10
|
-
</defs>
|
|
11
|
-
<rect width="900" height="185" fill="url(#bg)" rx="12"/>
|
|
12
|
-
<rect width="900" height="185" fill="none" stroke="#21262d" stroke-width="1" rx="12"/>
|
|
13
|
-
|
|
14
|
-
<!-- Label -->
|
|
15
|
-
<rect x="32" y="20" width="224" height="22" rx="11" fill="#059669" fill-opacity="0.15" stroke="#059669" stroke-opacity="0.4" stroke-width="1"/>
|
|
16
|
-
<text x="144" y="35" font-size="10" fill="#34d399" text-anchor="middle" font-weight="700" letter-spacing="1">COMPOUND LEARNING SYSTEM</text>
|
|
17
|
-
|
|
18
|
-
<text x="32" y="72" font-size="20" font-weight="800" fill="#ffffff">Every correction stacks — Claude matches your style</text>
|
|
19
|
-
<text x="32" y="94" font-size="12" fill="#6e7681">corrections auto-encode · injected next session · 3 layers compound · zero setup needed</text>
|
|
20
|
-
|
|
21
|
-
<!-- Session 1 box -->
|
|
22
|
-
<rect x="32" y="108" width="136" height="64" rx="7" fill="#21262d" stroke="#30363d" stroke-width="1"/>
|
|
23
|
-
<text x="100" y="124" font-size="10" fill="#c9d1d9" text-anchor="middle" font-weight="700">Session 1</text>
|
|
24
|
-
<text x="44" y="138" font-size="9" fill="#6e7681">0 rules loaded</text>
|
|
25
|
-
<text x="44" y="151" font-size="9" fill="#6e7681">every question asked</text>
|
|
26
|
-
<text x="44" y="164" font-size="8" fill="#484f58">fresh install</text>
|
|
27
|
-
|
|
28
|
-
<line x1="171" y1="140" x2="185" y2="140" stroke="#34d399" stroke-width="1.5" marker-end="url(#arr)" opacity="0.7"/>
|
|
29
|
-
|
|
30
|
-
<!-- Session 5 box -->
|
|
31
|
-
<rect x="188" y="108" width="136" height="64" rx="7" fill="#059669" fill-opacity="0.1" stroke="#059669" stroke-opacity="0.35" stroke-width="1"/>
|
|
32
|
-
<text x="256" y="124" font-size="10" fill="#34d399" text-anchor="middle" font-weight="700">Week 2</text>
|
|
33
|
-
<text x="200" y="138" font-size="9" fill="#34d399" opacity="0.85">8 rules active</text>
|
|
34
|
-
<text x="200" y="151" font-size="9" fill="#34d399" opacity="0.85">use pnpm · no var</text>
|
|
35
|
-
<text x="200" y="164" font-size="8" fill="#34d399" opacity="0.6">no emoji · immutable</text>
|
|
36
|
-
|
|
37
|
-
<line x1="327" y1="140" x2="341" y2="140" stroke="#34d399" stroke-width="1.5" marker-end="url(#arr)" opacity="0.7"/>
|
|
38
|
-
|
|
39
|
-
<!-- Month 3 box -->
|
|
40
|
-
<rect x="344" y="108" width="136" height="64" rx="7" fill="#059669" fill-opacity="0.18" stroke="#059669" stroke-opacity="0.5" stroke-width="1"/>
|
|
41
|
-
<text x="412" y="124" font-size="10" fill="#34d399" text-anchor="middle" font-weight="700">Month 3+</text>
|
|
42
|
-
<text x="356" y="138" font-size="9" fill="#34d399" opacity="0.9">20+ rules stacked</text>
|
|
43
|
-
<text x="356" y="151" font-size="9" fill="#34d399" opacity="0.9">like a team member</text>
|
|
44
|
-
<text x="356" y="164" font-size="8" fill="#34d399" opacity="0.7">knows your whole style</text>
|
|
45
|
-
|
|
46
|
-
<!-- Right: 3 memory layers panel -->
|
|
47
|
-
<rect x="498" y="108" width="370" height="64" rx="7" fill="#161b22" stroke="#30363d" stroke-width="1"/>
|
|
48
|
-
<text x="514" y="124" font-size="9" fill="#6e7681" font-weight="600">3 MEMORY LAYERS</text>
|
|
49
|
-
<text x="514" y="139" font-size="9" fill="#a78bfa">Layer 1 · Project Lessons · tasks/lessons.md · per-project rules</text>
|
|
50
|
-
<text x="514" y="152" font-size="9" fill="#60a5fa">Layer 2 · Global BM25 · ~/.kodelyth/memory/ · cross-project recall</text>
|
|
51
|
-
<text x="514" y="165" font-size="9" fill="#34d399">Layer 3 · Intent Routing · 70 specialists · auto-routed every session</text>
|
|
52
|
-
|
|
53
|
-
<!-- Ghost Depth Mark — brand stamp (scale 0.26×) -->
|
|
54
|
-
<g transform="translate(810, 28) scale(0.26)" opacity="0.14">
|
|
55
|
-
<polyline points="-44,4 12,100 -44,196"
|
|
56
|
-
stroke="#ffffff" stroke-width="10"
|
|
57
|
-
stroke-linecap="round" stroke-linejoin="round"
|
|
58
|
-
fill="none"/>
|
|
59
|
-
<polyline points="0,0 88,100 0,200"
|
|
60
|
-
stroke="#ffffff" stroke-width="32"
|
|
61
|
-
stroke-linecap="round" stroke-linejoin="round"
|
|
62
|
-
fill="none"/>
|
|
63
|
-
</g>
|
|
64
|
-
</svg>
|
package/social/section-mcp.svg
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
<svg viewBox="0 0 900 170" xmlns="http://www.w3.org/2000/svg" font-family="'Segoe UI', system-ui, -apple-system, sans-serif">
|
|
2
|
-
<defs>
|
|
3
|
-
<linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
4
|
-
<stop offset="0%" style="stop-color:#0d1117"/>
|
|
5
|
-
<stop offset="100%" style="stop-color:#161b22"/>
|
|
6
|
-
</linearGradient>
|
|
7
|
-
<marker id="arr" markerWidth="7" markerHeight="7" refX="5" refY="3" orient="auto">
|
|
8
|
-
<path d="M0,0 L5,3 L0,6 Z" fill="#38bdf8" opacity="0.8"/>
|
|
9
|
-
</marker>
|
|
10
|
-
</defs>
|
|
11
|
-
<rect width="900" height="170" fill="url(#bg)" rx="12"/>
|
|
12
|
-
<rect width="900" height="170" fill="none" stroke="#21262d" stroke-width="1" rx="12"/>
|
|
13
|
-
|
|
14
|
-
<!-- Label -->
|
|
15
|
-
<rect x="32" y="20" width="138" height="22" rx="11" fill="#38bdf8" fill-opacity="0.12" stroke="#38bdf8" stroke-opacity="0.4" stroke-width="1"/>
|
|
16
|
-
<text x="101" y="35" font-size="10" fill="#38bdf8" text-anchor="middle" font-weight="700" letter-spacing="1">MCP SERVER v1.8.0</text>
|
|
17
|
-
|
|
18
|
-
<text x="32" y="70" font-size="22" font-weight="800" fill="#ffffff">Universal adapter — any agent framework speaks ECC</text>
|
|
19
|
-
<text x="32" y="92" font-size="12" fill="#6e7681">16 tools · 6 prompts · 365 resources · stdio JSON-RPC · zero telemetry</text>
|
|
20
|
-
|
|
21
|
-
<!-- Center hub -->
|
|
22
|
-
<rect x="340" y="108" width="140" height="48" rx="8" fill="#38bdf8" fill-opacity="0.1" stroke="#38bdf8" stroke-opacity="0.5" stroke-width="1.5"/>
|
|
23
|
-
<text x="410" y="129" font-size="11" fill="#38bdf8" text-anchor="middle" font-weight="800">kodelyth-ecc mcp</text>
|
|
24
|
-
<text x="410" y="145" font-size="8.5" fill="#38bdf8" text-anchor="middle" opacity="0.7">npx kodelyth-ecc mcp</text>
|
|
25
|
-
|
|
26
|
-
<!-- Left consumers -->
|
|
27
|
-
<rect x="32" y="108" width="110" height="22" rx="5" fill="#a78bfa" fill-opacity="0.1" stroke="#a78bfa" stroke-opacity="0.35" stroke-width="1"/>
|
|
28
|
-
<text x="87" y="122" font-size="9" fill="#a78bfa" text-anchor="middle" font-weight="600">Claude Desktop</text>
|
|
29
|
-
<rect x="32" y="136" width="110" height="22" rx="5" fill="#2563eb" fill-opacity="0.1" stroke="#2563eb" stroke-opacity="0.35" stroke-width="1"/>
|
|
30
|
-
<text x="87" y="150" font-size="9" fill="#60a5fa" text-anchor="middle" font-weight="600">LangGraph</text>
|
|
31
|
-
|
|
32
|
-
<line x1="144" y1="119" x2="337" y2="125" stroke="#38bdf8" stroke-width="1" marker-end="url(#arr)" opacity="0.5"/>
|
|
33
|
-
<line x1="144" y1="147" x2="337" y2="140" stroke="#38bdf8" stroke-width="1" marker-end="url(#arr)" opacity="0.5"/>
|
|
34
|
-
|
|
35
|
-
<!-- Right consumers -->
|
|
36
|
-
<rect x="684" y="108" width="110" height="22" rx="5" fill="#059669" fill-opacity="0.1" stroke="#059669" stroke-opacity="0.35" stroke-width="1"/>
|
|
37
|
-
<text x="739" y="122" font-size="9" fill="#34d399" text-anchor="middle" font-weight="600">AutoGen / CrewAI</text>
|
|
38
|
-
<rect x="684" y="136" width="110" height="22" rx="5" fill="#f59e0b" fill-opacity="0.1" stroke="#f59e0b" stroke-opacity="0.35" stroke-width="1"/>
|
|
39
|
-
<text x="739" y="150" font-size="9" fill="#fbbf24" text-anchor="middle" font-weight="600">OpenAI Agents SDK</text>
|
|
40
|
-
|
|
41
|
-
<line x1="483" y1="125" x2="681" y2="119" stroke="#38bdf8" stroke-width="1" marker-end="url(#arr)" opacity="0.5"/>
|
|
42
|
-
<line x1="483" y1="140" x2="681" y2="147" stroke="#38bdf8" stroke-width="1" marker-end="url(#arr)" opacity="0.5"/>
|
|
43
|
-
|
|
44
|
-
<!-- Resource counts below hub -->
|
|
45
|
-
<text x="350" y="164" font-size="8" fill="#6e7681">16 tools · 6 prompts · 365 resources</text>
|
|
46
|
-
|
|
47
|
-
<!-- Ghost Depth Mark — brand stamp (scale 0.23×) -->
|
|
48
|
-
<g transform="translate(810, 28) scale(0.23)" opacity="0.14">
|
|
49
|
-
<polyline points="-44,4 12,100 -44,196"
|
|
50
|
-
stroke="#ffffff" stroke-width="10"
|
|
51
|
-
stroke-linecap="round" stroke-linejoin="round"
|
|
52
|
-
fill="none"/>
|
|
53
|
-
<polyline points="0,0 88,100 0,200"
|
|
54
|
-
stroke="#ffffff" stroke-width="32"
|
|
55
|
-
stroke-linecap="round" stroke-linejoin="round"
|
|
56
|
-
fill="none"/>
|
|
57
|
-
</g>
|
|
58
|
-
</svg>
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
<svg viewBox="0 0 900 175" xmlns="http://www.w3.org/2000/svg" font-family="'Segoe UI', system-ui, -apple-system, sans-serif">
|
|
2
|
-
<defs>
|
|
3
|
-
<linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
4
|
-
<stop offset="0%" style="stop-color:#0d1117"/>
|
|
5
|
-
<stop offset="100%" style="stop-color:#161b22"/>
|
|
6
|
-
</linearGradient>
|
|
7
|
-
<linearGradient id="green" x1="0%" y1="0%" x2="100%" y2="0%">
|
|
8
|
-
<stop offset="0%" style="stop-color:#34d399"/>
|
|
9
|
-
<stop offset="100%" style="stop-color:#059669"/>
|
|
10
|
-
</linearGradient>
|
|
11
|
-
<marker id="arr" markerWidth="8" markerHeight="8" refX="6" refY="3" orient="auto">
|
|
12
|
-
<path d="M0,0 L6,3 L0,6 Z" fill="#34d399" opacity="0.8"/>
|
|
13
|
-
</marker>
|
|
14
|
-
</defs>
|
|
15
|
-
<rect width="900" height="175" fill="url(#bg)" rx="12"/>
|
|
16
|
-
<rect width="900" height="175" fill="none" stroke="#21262d" stroke-width="1" rx="12"/>
|
|
17
|
-
|
|
18
|
-
<!-- Label — widened to fit text properly -->
|
|
19
|
-
<rect x="32" y="20" width="226" height="22" rx="11" fill="#059669" fill-opacity="0.15" stroke="#059669" stroke-opacity="0.4" stroke-width="1"/>
|
|
20
|
-
<text x="145" y="35" font-size="10" fill="#34d399" text-anchor="middle" font-weight="700" letter-spacing="1">LOCAL SELF-LEARNING MEMORY</text>
|
|
21
|
-
|
|
22
|
-
<text x="32" y="72" font-size="22" font-weight="800" fill="#ffffff">Solve once. Remember forever. Zero cloud.</text>
|
|
23
|
-
<text x="32" y="94" font-size="12" fill="#6e7681">BM25 keyword recall · ~/.kodelyth/memory/ · auto-inject on every session · prompt-cache friendly</text>
|
|
24
|
-
|
|
25
|
-
<!-- 4-box flow -->
|
|
26
|
-
<!-- Box 1: Capture -->
|
|
27
|
-
<rect x="32" y="112" width="140" height="44" rx="7" fill="#059669" fill-opacity="0.12" stroke="#059669" stroke-opacity="0.4" stroke-width="1"/>
|
|
28
|
-
<text x="102" y="130" font-size="10" fill="#34d399" text-anchor="middle" font-weight="700">1 · Capture</text>
|
|
29
|
-
<text x="102" y="145" font-size="9" fill="#34d399" text-anchor="middle" opacity="0.75">Stop hook</text>
|
|
30
|
-
<text x="102" y="156" font-size="9" fill="#34d399" text-anchor="middle" opacity="0.75">you confirm</text>
|
|
31
|
-
|
|
32
|
-
<line x1="175" y1="134" x2="210" y2="134" stroke="#34d399" stroke-width="1.5" marker-end="url(#arr)" opacity="0.7"/>
|
|
33
|
-
|
|
34
|
-
<!-- Box 2: BM25 Store -->
|
|
35
|
-
<rect x="213" y="112" width="152" height="44" rx="7" fill="#2563eb" fill-opacity="0.1" stroke="#2563eb" stroke-opacity="0.35" stroke-width="1"/>
|
|
36
|
-
<text x="289" y="130" font-size="10" fill="#60a5fa" text-anchor="middle" font-weight="700">2 · BM25 Store</text>
|
|
37
|
-
<text x="289" y="145" font-size="9" fill="#60a5fa" text-anchor="middle" opacity="0.75">memories.jsonl</text>
|
|
38
|
-
<text x="289" y="156" font-size="9" fill="#60a5fa" text-anchor="middle" opacity="0.75">zero deps · your disk</text>
|
|
39
|
-
|
|
40
|
-
<line x1="368" y1="134" x2="403" y2="134" stroke="#34d399" stroke-width="1.5" marker-end="url(#arr)" opacity="0.7"/>
|
|
41
|
-
|
|
42
|
-
<!-- Box 3: Auto-Inject — text shortened to fit 152px -->
|
|
43
|
-
<rect x="406" y="112" width="152" height="44" rx="7" fill="#a78bfa" fill-opacity="0.1" stroke="#a78bfa" stroke-opacity="0.35" stroke-width="1"/>
|
|
44
|
-
<text x="482" y="130" font-size="10" fill="#a78bfa" text-anchor="middle" font-weight="700">3 · Auto-Inject</text>
|
|
45
|
-
<text x="482" y="145" font-size="9" fill="#a78bfa" text-anchor="middle" opacity="0.75">SessionStart hook</text>
|
|
46
|
-
<text x="482" y="156" font-size="9" fill="#a78bfa" text-anchor="middle" opacity="0.75">before AI responds</text>
|
|
47
|
-
|
|
48
|
-
<line x1="561" y1="134" x2="596" y2="134" stroke="#34d399" stroke-width="1.5" marker-end="url(#arr)" opacity="0.7"/>
|
|
49
|
-
|
|
50
|
-
<!-- Box 4: Result -->
|
|
51
|
-
<rect x="599" y="112" width="152" height="44" rx="7" fill="#f59e0b" fill-opacity="0.1" stroke="#f59e0b" stroke-opacity="0.35" stroke-width="1"/>
|
|
52
|
-
<text x="675" y="130" font-size="10" fill="#fbbf24" text-anchor="middle" font-weight="700">4 · 10× faster</text>
|
|
53
|
-
<text x="675" y="145" font-size="9" fill="#fbbf24" text-anchor="middle" opacity="0.75">past solution</text>
|
|
54
|
-
<text x="675" y="156" font-size="9" fill="#fbbf24" text-anchor="middle" opacity="0.75">surfaced in 3 s</text>
|
|
55
|
-
|
|
56
|
-
<text x="868" y="156" font-size="9" fill="#6e7681" text-anchor="end">cost: 10% on cached tokens (Anthropic / OpenAI)</text>
|
|
57
|
-
|
|
58
|
-
<!-- Ghost Depth Mark — brand stamp (scale 0.24×) -->
|
|
59
|
-
<g transform="translate(810, 28) scale(0.24)" opacity="0.14">
|
|
60
|
-
<polyline points="-44,4 12,100 -44,196"
|
|
61
|
-
stroke="#ffffff" stroke-width="10"
|
|
62
|
-
stroke-linecap="round" stroke-linejoin="round"
|
|
63
|
-
fill="none"/>
|
|
64
|
-
<polyline points="0,0 88,100 0,200"
|
|
65
|
-
stroke="#ffffff" stroke-width="32"
|
|
66
|
-
stroke-linecap="round" stroke-linejoin="round"
|
|
67
|
-
fill="none"/>
|
|
68
|
-
</g>
|
|
69
|
-
</svg>
|