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.
Files changed (91) hide show
  1. package/CLAUDE.md +1 -1
  2. package/VERSION +1 -1
  3. package/bin/kodelyth-ecc.js +54 -5
  4. package/install.ps1 +30 -13
  5. package/install.sh +11 -4
  6. package/package.json +1 -1
  7. package/rules/common/agent-intent-routing.md +96 -195
  8. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -47
  9. package/.github/ISSUE_TEMPLATE/config.yml +0 -8
  10. package/.github/ISSUE_TEMPLATE/feature_request.md +0 -41
  11. package/.github/ISSUE_TEMPLATE/good_first_issue.md +0 -36
  12. package/.github/ISSUE_TEMPLATE/new_agent.md +0 -52
  13. package/.github/PULL_REQUEST_TEMPLATE.md +0 -53
  14. package/.github/workflows/ci.yml +0 -45
  15. package/.github/workflows/publish.yml +0 -60
  16. package/brand/concepts.svg +0 -109
  17. package/brand/convert.js +0 -161
  18. package/brand/favicon.svg +0 -7
  19. package/brand/fb-cover.svg +0 -34
  20. package/brand/fb-profile.svg +0 -21
  21. package/brand/kodelyth-dark.svg +0 -24
  22. package/brand/kodelyth-light.svg +0 -24
  23. package/brand/kodelyth-mark.svg +0 -20
  24. package/brand/package.json +0 -12
  25. package/docs/dashboard.md +0 -211
  26. package/docs/evolve.md +0 -303
  27. package/docs/mcp-clients.md +0 -167
  28. package/docs/mcp.md +0 -178
  29. package/docs/replay.md +0 -244
  30. package/docs/supply-chain.md +0 -207
  31. package/docs/swarm.md +0 -243
  32. package/skills/skill-comply/tests/test_grader.py +0 -137
  33. package/skills/skill-comply/tests/test_parser.py +0 -90
  34. package/social/card-agents.svg +0 -104
  35. package/social/card-install.svg +0 -58
  36. package/social/card-main.svg +0 -54
  37. package/social/facebook-v150.svg +0 -110
  38. package/social/fb-ad-main.svg +0 -128
  39. package/social/fb-post-features.svg +0 -118
  40. package/social/fb-post-launch.svg +0 -144
  41. package/social/fb-post-platforms.svg +0 -135
  42. package/social/github-social-preview.svg +0 -151
  43. package/social/hype-compound-learning.svg +0 -129
  44. package/social/hype-devil-mode.svg +0 -240
  45. package/social/hype-mcp-server.svg +0 -148
  46. package/social/hype-parallel-agents.svg +0 -162
  47. package/social/hype-stats-hero.svg +0 -138
  48. package/social/og-image.svg +0 -151
  49. package/social/readme-agents.svg +0 -138
  50. package/social/readme-hero.svg +0 -102
  51. package/social/section-agents.svg +0 -69
  52. package/social/section-author.svg +0 -66
  53. package/social/section-dashboard.svg +0 -71
  54. package/social/section-devil.svg +0 -66
  55. package/social/section-hooks.svg +0 -63
  56. package/social/section-install.svg +0 -54
  57. package/social/section-learning.svg +0 -64
  58. package/social/section-mcp.svg +0 -58
  59. package/social/section-memory.svg +0 -69
  60. package/social/section-parallel.svg +0 -84
  61. package/social/section-routing.svg +0 -63
  62. package/social/twitter-threads.md +0 -621
  63. package/social/x-card-agents-grid.svg +0 -120
  64. package/social/x-card-free.svg +0 -71
  65. package/social/x-card-hook.svg +0 -94
  66. package/tests/dashboard/data.test.js +0 -391
  67. package/tests/dashboard/server.test.js +0 -257
  68. package/tests/evolve/analyze.test.js +0 -169
  69. package/tests/evolve/proposals.test.js +0 -173
  70. package/tests/evolve/stats.test.js +0 -167
  71. package/tests/hooks/branch-name-check.test.js +0 -184
  72. package/tests/hooks/smart-suggest.test.js +0 -149
  73. package/tests/hooks/test-reminder.test.js +0 -181
  74. package/tests/mcp/catalog.test.js +0 -98
  75. package/tests/mcp/client.test.js +0 -113
  76. package/tests/mcp/resources-prompts.test.js +0 -70
  77. package/tests/mcp/tools.test.js +0 -159
  78. package/tests/memory/auto-recall.test.js +0 -132
  79. package/tests/memory/instincts.test.js +0 -258
  80. package/tests/memory/store.test.js +0 -203
  81. package/tests/replay/bundle.test.js +0 -181
  82. package/tests/replay/replay.test.js +0 -131
  83. package/tests/router/classify.test.js +0 -164
  84. package/tests/run-all.js +0 -55
  85. package/tests/safety/patterns.test.js +0 -94
  86. package/tests/safety/prompt-injection-guard.test.js +0 -111
  87. package/tests/safety/token-budget.test.js +0 -119
  88. package/tests/supply-chain/manifest.test.js +0 -147
  89. package/tests/supply-chain/sbom.test.js +0 -170
  90. package/tests/supply-chain/verify.test.js +0 -146
  91. package/tests/swarm/build-plan.test.js +0 -188
@@ -1,135 +0,0 @@
1
- <svg width="1080" height="1080" viewBox="0 0 1080 1080" 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:#050811"/>
5
- <stop offset="100%" style="stop-color:#0d1117"/>
6
- </linearGradient>
7
- <linearGradient id="accent" 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
- </defs>
12
-
13
- <rect width="1080" height="1080" fill="url(#bg)"/>
14
-
15
- <!-- Ambient glow -->
16
- <circle cx="540" cy="540" r="500" fill="#2563eb" opacity="0.025"/>
17
- <circle cx="900" cy="180" r="300" fill="#a78bfa" opacity="0.04"/>
18
-
19
- <!-- Ghost Depth Mark — scale 1.6, right bottom, op=0.09 -->
20
- <g transform="translate(900, 380) scale(1.6)" opacity="0.09">
21
- <polyline points="-44,4 12,100 -44,196"
22
- stroke="#ffffff" stroke-width="10"
23
- stroke-linecap="round" stroke-linejoin="round"
24
- fill="none"/>
25
- <polyline points="0,0 88,100 0,200"
26
- stroke="#ffffff" stroke-width="32"
27
- stroke-linecap="round" stroke-linejoin="round"
28
- fill="none"/>
29
- </g>
30
-
31
- <!-- Header badge -->
32
- <rect x="390" y="60" width="300" height="32" rx="16" fill="#a78bfa" fill-opacity="0.12" stroke="#a78bfa" stroke-opacity="0.4" stroke-width="1"/>
33
- <text x="540" y="81" font-size="11" fill="#a78bfa" text-anchor="middle" font-weight="700" letter-spacing="2">11 PLATFORMS SUPPORTED</text>
34
-
35
- <!-- Main headline -->
36
- <text x="540" y="148" font-size="54" font-weight="900" letter-spacing="-2" fill="#ffffff" text-anchor="middle">One install.</text>
37
- <text x="540" y="208" font-size="54" font-weight="900" letter-spacing="-2" fill="url(#accent)" text-anchor="middle">Every AI editor you use.</text>
38
-
39
- <text x="540" y="252" font-size="18" font-weight="400" fill="#6e7681" text-anchor="middle">npx kodelyth-ecc installs to all of them automatically.</text>
40
-
41
- <!-- Divider -->
42
- <line x1="80" y1="280" x2="1000" y2="280" stroke="#ffffff" stroke-width="1" opacity="0.08"/>
43
-
44
- <!-- Platform cards — 3 columns, 4 rows (last row has 2 cards + install card) -->
45
- <!-- Row 1 -->
46
- <rect x="80" y="304" width="284" height="96" rx="10" fill="#0d1117" stroke="#21262d" stroke-width="1.5"/>
47
- <rect x="80" y="304" width="4" height="96" rx="2" fill="#a78bfa"/>
48
- <text x="102" y="346" font-size="20" font-weight="700" fill="#ffffff">Claude Code</text>
49
- <text x="102" y="370" font-size="12" fill="#484f58">Anthropic · Full hooks + memory</text>
50
- <text x="356" y="366" font-size="10" fill="#10b981" font-weight="600" text-anchor="end">PRIMARY</text>
51
-
52
- <rect x="398" y="304" width="284" height="96" rx="10" fill="#0d1117" stroke="#21262d" stroke-width="1.5"/>
53
- <rect x="398" y="304" width="4" height="96" rx="2" fill="#38bdf8"/>
54
- <text x="420" y="346" font-size="20" font-weight="700" fill="#ffffff">Windsurf</text>
55
- <text x="420" y="370" font-size="12" fill="#484f58">Codeium · Cascade + agent support</text>
56
-
57
- <rect x="716" y="304" width="284" height="96" rx="10" fill="#0d1117" stroke="#21262d" stroke-width="1.5"/>
58
- <rect x="716" y="304" width="4" height="96" rx="2" fill="#f59e0b"/>
59
- <text x="738" y="346" font-size="20" font-weight="700" fill="#ffffff">Cursor</text>
60
- <text x="738" y="370" font-size="12" fill="#484f58">Composer agent workflows</text>
61
-
62
- <!-- Row 2 -->
63
- <rect x="80" y="416" width="284" height="96" rx="10" fill="#0d1117" stroke="#21262d" stroke-width="1.5"/>
64
- <rect x="80" y="416" width="4" height="96" rx="2" fill="#10b981"/>
65
- <text x="102" y="458" font-size="20" font-weight="700" fill="#ffffff">Codex CLI</text>
66
- <text x="102" y="482" font-size="12" fill="#484f58">OpenAI · DALL-E image gen built-in</text>
67
-
68
- <rect x="398" y="416" width="284" height="96" rx="10" fill="#0d1117" stroke="#21262d" stroke-width="1.5"/>
69
- <rect x="398" y="416" width="4" height="96" rx="2" fill="#4f8ef0"/>
70
- <text x="420" y="458" font-size="20" font-weight="700" fill="#ffffff">Antigravity</text>
71
- <text x="420" y="482" font-size="12" fill="#484f58">Google · Gemini Imagen 3 native</text>
72
-
73
- <rect x="716" y="416" width="284" height="96" rx="10" fill="#0d1117" stroke="#21262d" stroke-width="1.5"/>
74
- <rect x="716" y="416" width="4" height="96" rx="2" fill="#7c3aed"/>
75
- <text x="738" y="458" font-size="20" font-weight="700" fill="#ffffff">OpenCode</text>
76
- <text x="738" y="482" font-size="12" fill="#484f58">Terminal-native multi-model</text>
77
-
78
- <!-- Row 3 -->
79
- <rect x="80" y="528" width="284" height="96" rx="10" fill="#0d1117" stroke="#21262d" stroke-width="1.5"/>
80
- <rect x="80" y="528" width="4" height="96" rx="2" fill="#ec4899"/>
81
- <text x="102" y="570" font-size="20" font-weight="700" fill="#ffffff">Cline</text>
82
- <text x="102" y="594" font-size="12" fill="#484f58">VS Code · Autonomous file ops</text>
83
-
84
- <rect x="398" y="528" width="284" height="96" rx="10" fill="#0d1117" stroke="#21262d" stroke-width="1.5"/>
85
- <rect x="398" y="528" width="4" height="96" rx="2" fill="#06b6d4"/>
86
- <text x="420" y="570" font-size="20" font-weight="700" fill="#ffffff">Roo Code</text>
87
- <text x="420" y="594" font-size="12" fill="#484f58">VS Code fork · Boomerang tasks</text>
88
-
89
- <rect x="716" y="528" width="284" height="96" rx="10" fill="#0d1117" stroke="#21262d" stroke-width="1.5"/>
90
- <rect x="716" y="528" width="4" height="96" rx="2" fill="#d97706"/>
91
- <text x="738" y="570" font-size="20" font-weight="700" fill="#ffffff">Aider</text>
92
- <text x="738" y="594" font-size="12" fill="#484f58">Terminal · Git-native pair coding</text>
93
-
94
- <!-- Row 4 -->
95
- <rect x="80" y="640" width="284" height="96" rx="10" fill="#0d1117" stroke="#21262d" stroke-width="1.5"/>
96
- <rect x="80" y="640" width="4" height="96" rx="2" fill="#3b82f6"/>
97
- <text x="102" y="682" font-size="20" font-weight="700" fill="#ffffff">Kimi</text>
98
- <text x="102" y="706" font-size="12" fill="#484f58">Moonshot AI · Long context</text>
99
-
100
- <rect x="398" y="640" width="284" height="96" rx="10" fill="#0d1117" stroke="#21262d" stroke-width="1.5"/>
101
- <rect x="398" y="640" width="4" height="96" rx="2" fill="#34d399"/>
102
- <text x="420" y="682" font-size="20" font-weight="700" fill="#ffffff">Gemini CLI</text>
103
- <text x="420" y="706" font-size="12" fill="#484f58">Google · Gemini model family</text>
104
-
105
- <!-- Install card -->
106
- <rect x="716" y="640" width="284" height="96" rx="10" fill="#0d2b1d" stroke="#059669" stroke-opacity="0.5" stroke-width="1.5"/>
107
- <text x="858" y="678" font-size="13" font-weight="700" fill="#10b981" text-anchor="middle" letter-spacing="1">ONE COMMAND</text>
108
- <text x="858" y="706" font-family="'Courier New', Courier, monospace" font-size="14" fill="#ffffff" text-anchor="middle">npx kodelyth-ecc</text>
109
-
110
- <!-- Bottom divider -->
111
- <line x1="80" y1="760" x2="1000" y2="760" stroke="#ffffff" stroke-width="1" opacity="0.08"/>
112
-
113
- <!-- Stats row -->
114
- <text x="270" y="814" font-size="48" font-weight="900" fill="#ffffff" text-anchor="middle">70</text>
115
- <text x="270" y="840" font-size="11" fill="#484f58" text-anchor="middle" letter-spacing="2">AGENTS</text>
116
-
117
- <line x1="430" y1="790" x2="430" y2="852" stroke="#ffffff" stroke-width="1" opacity="0.10"/>
118
-
119
- <text x="540" y="814" font-size="48" font-weight="900" fill="#ffffff" text-anchor="middle">194</text>
120
- <text x="540" y="840" font-size="11" fill="#484f58" text-anchor="middle" letter-spacing="2">SKILLS</text>
121
-
122
- <line x1="650" y1="790" x2="650" y2="852" stroke="#ffffff" stroke-width="1" opacity="0.10"/>
123
-
124
- <text x="810" y="814" font-size="48" font-weight="900" fill="#ffffff" text-anchor="middle">97</text>
125
- <text x="810" y="840" font-size="11" fill="#484f58" text-anchor="middle" letter-spacing="2">COMMANDS</text>
126
-
127
- <!-- Bottom CTA -->
128
- <line x1="80" y1="880" x2="1000" y2="880" stroke="#ffffff" stroke-width="1" opacity="0.08"/>
129
-
130
- <rect x="290" y="904" width="500" height="58" rx="29" fill="#ffffff"/>
131
- <text x="540" y="939" font-size="18" font-weight="700" text-anchor="middle" fill="#0a0a0a">kodelyth.com — Free forever</text>
132
-
133
- <text x="540" y="1014" font-size="14" fill="#484f58" text-anchor="middle">github.com/sifxprime/kodelyth-ecc</text>
134
- <text x="540" y="1046" font-size="12" fill="#30363d" text-anchor="middle">Open-source · MIT License · 373 tests</text>
135
- </svg>
@@ -1,151 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1280 640" width="1280" height="640">
2
-
3
- <!-- Background -->
4
- <rect width="1280" height="640" fill="#0a0a0a"/>
5
-
6
- <!-- Amber bottom accent bar -->
7
- <rect x="0" y="636" width="1280" height="4" fill="#f59e0b" opacity="0.35"/>
8
-
9
- <!-- Right-panel dot grid texture -->
10
- <defs>
11
- <pattern id="dots" width="28" height="28" patternUnits="userSpaceOnUse">
12
- <circle cx="14" cy="14" r="0.8" fill="#ffffff" opacity="0.07"/>
13
- </pattern>
14
- </defs>
15
- <rect x="510" y="0" width="770" height="636" fill="url(#dots)"/>
16
-
17
- <!-- Ghost Depth Mark — scale 1.0 (200px tall), vertically centered -->
18
- <g transform="translate(88, 210) scale(1.0)">
19
- <polyline points="-44,4 12,100 -44,196"
20
- stroke="#ffffff" stroke-width="10" opacity="0.22"
21
- stroke-linecap="round" stroke-linejoin="round"
22
- fill="none"/>
23
- <polyline points="0,0 88,100 0,200"
24
- stroke="#ffffff" stroke-width="32"
25
- stroke-linecap="round" stroke-linejoin="round"
26
- fill="none"/>
27
- </g>
28
-
29
- <!-- v1.8.0 pill — below mark -->
30
- <rect x="66" y="434" width="88" height="26" rx="13"
31
- fill="none" stroke="#ffffff" stroke-width="1" opacity="0.20"/>
32
- <text x="110" y="452"
33
- font-family="'Segoe UI', system-ui, -apple-system, sans-serif"
34
- font-size="13" font-weight="500" text-anchor="middle"
35
- fill="#ffffff" opacity="0.35">v1.8.0</text>
36
-
37
- <!-- Wordmark -->
38
- <text x="210" y="276"
39
- font-family="'Segoe UI', system-ui, -apple-system, sans-serif"
40
- font-size="54" font-weight="700" letter-spacing="2"
41
- fill="#ffffff">KODELYTH</text>
42
-
43
- <!-- ECC product label — amber -->
44
- <text x="214" y="320"
45
- font-family="'Segoe UI', system-ui, -apple-system, sans-serif"
46
- font-size="28" font-weight="600" letter-spacing="10"
47
- fill="#f59e0b">ECC</text>
48
-
49
- <!-- ECC underline accent -->
50
- <line x1="214" y1="330" x2="312" y2="330"
51
- stroke="#f59e0b" stroke-width="1" opacity="0.40"/>
52
-
53
- <!-- Tagline -->
54
- <text x="214" y="364"
55
- font-family="'Segoe UI', system-ui, -apple-system, sans-serif"
56
- font-size="15" font-weight="400"
57
- fill="#ffffff" opacity="0.50">Production-grade AI coding toolkit</text>
58
-
59
- <!-- Micro stats -->
60
- <text x="214" y="392"
61
- font-family="'Segoe UI', system-ui, -apple-system, sans-serif"
62
- font-size="12" font-weight="400"
63
- fill="#ffffff" opacity="0.28">70 agents · 194 skills · 97 commands</text>
64
- <text x="214" y="408"
65
- font-family="'Segoe UI', system-ui, -apple-system, sans-serif"
66
- font-size="12" font-weight="400"
67
- fill="#ffffff" opacity="0.28">11 platforms · 13 install targets</text>
68
-
69
- <!-- Domain -->
70
- <text x="214" y="452"
71
- font-family="'Segoe UI', system-ui, -apple-system, sans-serif"
72
- font-size="15" font-weight="500" letter-spacing="1"
73
- fill="#f59e0b" opacity="0.65">kodelyth.com</text>
74
-
75
- <!-- Vertical separator -->
76
- <line x1="502" y1="56" x2="502" y2="584"
77
- stroke="#ffffff" stroke-width="1" opacity="0.08"/>
78
-
79
- <!-- ========== RIGHT PANEL — 2x2 STAT CARDS ========== -->
80
-
81
- <!-- CARD: 70 AGENTS (top-left) -->
82
- <rect x="524" y="68" width="340" height="220" rx="8"
83
- fill="#ffffff" fill-opacity="0.035"
84
- stroke="#ffffff" stroke-width="1" stroke-opacity="0.08"/>
85
- <!-- amber top accent bar -->
86
- <rect x="524" y="68" width="340" height="4" rx="2" fill="#f59e0b" opacity="0.70"/>
87
- <text x="694" y="176"
88
- font-family="'Segoe UI', system-ui, -apple-system, sans-serif"
89
- font-size="80" font-weight="700" text-anchor="middle"
90
- fill="#ffffff">70</text>
91
- <text x="694" y="264"
92
- font-family="'Segoe UI', system-ui, -apple-system, sans-serif"
93
- font-size="13" font-weight="600" text-anchor="middle" letter-spacing="3"
94
- fill="#ffffff" opacity="0.38">AGENTS</text>
95
-
96
- <!-- CARD: 194 SKILLS (top-right) — amber highlighted -->
97
- <rect x="886" y="68" width="340" height="220" rx="8"
98
- fill="#f59e0b" fill-opacity="0.07"
99
- stroke="#f59e0b" stroke-width="1" stroke-opacity="0.25"/>
100
- <text x="1056" y="176"
101
- font-family="'Segoe UI', system-ui, -apple-system, sans-serif"
102
- font-size="80" font-weight="700" text-anchor="middle"
103
- fill="#f59e0b">194</text>
104
- <text x="1056" y="264"
105
- font-family="'Segoe UI', system-ui, -apple-system, sans-serif"
106
- font-size="13" font-weight="600" text-anchor="middle" letter-spacing="3"
107
- fill="#f59e0b" opacity="0.65">SKILLS</text>
108
-
109
- <!-- CARD: 97 COMMANDS (bottom-left) -->
110
- <rect x="524" y="308" width="340" height="190" rx="8"
111
- fill="#ffffff" fill-opacity="0.035"
112
- stroke="#ffffff" stroke-width="1" stroke-opacity="0.08"/>
113
- <text x="694" y="408"
114
- font-family="'Segoe UI', system-ui, -apple-system, sans-serif"
115
- font-size="72" font-weight="700" text-anchor="middle"
116
- fill="#ffffff">97</text>
117
- <text x="694" y="476"
118
- font-family="'Segoe UI', system-ui, -apple-system, sans-serif"
119
- font-size="13" font-weight="600" text-anchor="middle" letter-spacing="3"
120
- fill="#ffffff" opacity="0.38">COMMANDS</text>
121
-
122
- <!-- CARD: 22+ HOOKS (bottom-right) -->
123
- <rect x="886" y="308" width="340" height="190" rx="8"
124
- fill="#ffffff" fill-opacity="0.035"
125
- stroke="#ffffff" stroke-width="1" stroke-opacity="0.08"/>
126
- <text x="1056" y="408"
127
- font-family="'Segoe UI', system-ui, -apple-system, sans-serif"
128
- font-size="72" font-weight="700" text-anchor="middle"
129
- fill="#ffffff">22+</text>
130
- <text x="1056" y="476"
131
- font-family="'Segoe UI', system-ui, -apple-system, sans-serif"
132
- font-size="13" font-weight="600" text-anchor="middle" letter-spacing="3"
133
- fill="#ffffff" opacity="0.38">HOOKS</text>
134
-
135
- <!-- Platform row separator -->
136
- <line x1="524" y1="518" x2="1226" y2="518"
137
- stroke="#ffffff" stroke-width="1" opacity="0.07"/>
138
-
139
- <!-- Platform names — line 1 -->
140
- <text x="875" y="544"
141
- font-family="'Segoe UI', system-ui, -apple-system, sans-serif"
142
- font-size="12" font-weight="400" text-anchor="middle" letter-spacing="0.5"
143
- fill="#ffffff" opacity="0.28">Claude Code · Windsurf · Cursor · Codex CLI · Antigravity · OpenCode</text>
144
-
145
- <!-- Platform names — line 2 -->
146
- <text x="875" y="564"
147
- font-family="'Segoe UI', system-ui, -apple-system, sans-serif"
148
- font-size="12" font-weight="400" text-anchor="middle" letter-spacing="0.5"
149
- fill="#ffffff" opacity="0.28">Cline · Aider · Kimi · Roo Code · Gemini CLI · 11 platforms · 13 install targets</text>
150
-
151
- </svg>
@@ -1,129 +0,0 @@
1
- <svg width="1200" height="675" viewBox="0 0 1200 675" 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:#050811"/>
5
- <stop offset="100%" style="stop-color:#020d08"/>
6
- </linearGradient>
7
- <linearGradient id="green" x1="0%" y1="0%" x2="100%" y2="0%">
8
- <stop offset="0%" style="stop-color:#10b981"/>
9
- <stop offset="100%" style="stop-color:#059669"/>
10
- </linearGradient>
11
- <linearGradient id="termBg" x1="0%" y1="0%" x2="0%" y2="100%">
12
- <stop offset="0%" style="stop-color:#060d07"/>
13
- <stop offset="100%" style="stop-color:#040808"/>
14
- </linearGradient>
15
- <linearGradient id="accentFade" x1="0%" y1="0%" x2="100%" y2="0%">
16
- <stop offset="0%" style="stop-color:#10b981" stop-opacity="0.8"/>
17
- <stop offset="100%" style="stop-color:#10b981" stop-opacity="0"/>
18
- </linearGradient>
19
- <linearGradient id="layerPurple" x1="0%" y1="0%" x2="100%" y2="0%">
20
- <stop offset="0%" style="stop-color:#a78bfa"/>
21
- <stop offset="100%" style="stop-color:#7c3aed"/>
22
- </linearGradient>
23
- <linearGradient id="layerBlue" x1="0%" y1="0%" x2="100%" y2="0%">
24
- <stop offset="0%" style="stop-color:#38bdf8"/>
25
- <stop offset="100%" style="stop-color:#0284c7"/>
26
- </linearGradient>
27
- </defs>
28
-
29
- <rect width="1200" height="675" fill="url(#bg)"/>
30
- <radialGradient id="glowG" cx="10%" cy="10%" r="50%">
31
- <stop offset="0%" style="stop-color:#10b981" stop-opacity="0.06"/>
32
- <stop offset="100%" style="stop-color:#10b981" stop-opacity="0"/>
33
- </radialGradient>
34
- <rect width="1200" height="675" fill="url(#glowG)"/>
35
- <rect x="0" y="0" width="3" height="675" fill="url(#green)"/>
36
-
37
- <!-- Badge -->
38
- <rect x="56" y="40" width="228" height="28" rx="4" fill="#0a1a0a" stroke="#10b981" stroke-opacity="0.5" stroke-width="1"/>
39
- <text x="66" y="59" font-size="11" font-weight="700" fill="#10b981" letter-spacing="1.5">COMPOUND LEARNING</text>
40
- <rect x="228" y="47" width="1" height="14" fill="#10b981" opacity="0.4"/>
41
- <text x="236" y="59" font-size="11" font-weight="500" fill="#484f58">v1.8.0</text>
42
-
43
- <!-- Headline -->
44
- <text x="56" y="126" font-size="52" font-weight="900" letter-spacing="-2" fill="#ffffff">Gets smarter</text>
45
- <text x="56" y="184" font-size="52" font-weight="900" letter-spacing="-2" fill="url(#green)">every session.</text>
46
- <text x="56" y="222" font-size="16" fill="#8b949e">Three layers that stack. Corrections become rules. Rules become instinct.</text>
47
-
48
- <rect x="56" y="244" width="480" height="1" fill="url(#accentFade)"/>
49
-
50
- <!-- Session flow diagram -->
51
- <rect x="56" y="260" width="660" height="340" rx="8" fill="url(#termBg)" stroke="#0d1f0d" stroke-width="1"/>
52
- <rect x="56" y="260" width="660" height="32" rx="8" fill="#07100a"/>
53
- <rect x="56" y="280" width="660" height="12" fill="#07100a"/>
54
- <circle cx="80" cy="276" r="5" fill="#0a180a"/>
55
- <circle cx="98" cy="276" r="5" fill="#0a1208"/>
56
- <circle cx="116" cy="276" r="5" fill="#0a1a0a"/>
57
- <text x="576" y="281" font-size="11" fill="#484f58" text-anchor="middle" font-family="'Consolas', 'SF Mono', monospace">compound learning flow</text>
58
-
59
- <!-- Session 1 -->
60
- <text x="80" y="316" font-size="11" fill="#484f58" font-weight="700" letter-spacing="1" font-family="'Consolas', 'SF Mono', monospace">SESSION 1</text>
61
- <text x="80" y="338" font-size="13" font-family="'Consolas', 'SF Mono', monospace" fill="#8b949e">User: "use pnpm not npm"</text>
62
- <text x="80" y="358" font-size="13" font-family="'Consolas', 'SF Mono', monospace" fill="#484f58">&#x2192; capture-correction.js writes to</text>
63
- <text x="80" y="374" font-size="13" font-family="'Consolas', 'SF Mono', monospace" fill="#10b981" font-weight="600"> tasks/lessons.md</text>
64
-
65
- <line x1="80" y1="390" x2="690" y2="390" stroke="#0d2010" stroke-width="1"/>
66
-
67
- <!-- Session 2 -->
68
- <text x="80" y="410" font-size="11" fill="#484f58" font-weight="700" letter-spacing="1" font-family="'Consolas', 'SF Mono', monospace">SESSION 2 (next day)</text>
69
- <text x="80" y="432" font-size="13" font-family="'Consolas', 'SF Mono', monospace" fill="#484f58">&#x2192; read-lessons.js fires at start</text>
70
- <text x="80" y="452" font-size="13" font-family="'Consolas', 'SF Mono', monospace" fill="#10b981" font-weight="600">&#x2192; "PROJECT LESSONS — use pnpm not npm"</text>
71
- <text x="80" y="472" font-size="13" font-family="'Consolas', 'SF Mono', monospace" fill="#8b949e">Claude uses pnpm. Always. Without being told.</text>
72
-
73
- <line x1="80" y1="488" x2="690" y2="488" stroke="#0d2010" stroke-width="1"/>
74
-
75
- <!-- Month 3 -->
76
- <text x="80" y="508" font-size="11" fill="#10b981" font-weight="700" letter-spacing="1" font-family="'Consolas', 'SF Mono', monospace">MONTH 3 (compounding)</text>
77
- <text x="80" y="530" font-size="13" font-family="'Consolas', 'SF Mono', monospace" fill="#8b949e">Lessons stack. Memory recalls cross-project solutions.</text>
78
- <text x="80" y="550" font-size="13" font-family="'Consolas', 'SF Mono', monospace" fill="#10b981" font-weight="600">Claude works like a teammate who has been here for years.</text>
79
- <text x="80" y="580" font-size="12" font-family="'Consolas', 'SF Mono', monospace" fill="#484f58">Zero cloud. Zero telemetry. Everything stays on your machine.</text>
80
-
81
- <!-- Right panel — 3 layers -->
82
- <!-- Layer 1 -->
83
- <rect x="748" y="260" width="400" height="104" rx="8" fill="#0a1a0a" stroke="#10b981" stroke-opacity="0.3" stroke-width="1"/>
84
- <rect x="748" y="260" width="3" height="104" rx="1" fill="url(#green)"/>
85
- <text x="770" y="285" font-size="10" font-weight="700" fill="#10b981" letter-spacing="1.5">LAYER 1 — PROJECT LESSONS</text>
86
- <text x="770" y="306" font-size="13" fill="#8b949e">tasks/lessons.md · per-project</text>
87
- <text x="770" y="324" font-size="12" fill="#484f58">Corrections encoded as hard rules.</text>
88
- <text x="770" y="340" font-size="12" fill="#484f58">Injected at session start. Always.</text>
89
- <text x="770" y="356" font-size="11" fill="#2d5a2d">capture-correction.js · read-lessons.js</text>
90
-
91
- <!-- Layer 2 -->
92
- <rect x="748" y="378" width="400" height="104" rx="8" fill="#0c0c1a" stroke="#a78bfa" stroke-opacity="0.3" stroke-width="1"/>
93
- <rect x="748" y="378" width="3" height="104" rx="1" fill="url(#layerPurple)"/>
94
- <text x="770" y="403" font-size="10" font-weight="700" fill="#a78bfa" letter-spacing="1.5">LAYER 2 — GLOBAL MEMORY</text>
95
- <text x="770" y="424" font-size="13" fill="#8b949e">~/.kodelyth/memory/ · cross-project</text>
96
- <text x="770" y="442" font-size="12" fill="#484f58">BM25 recall of past solutions.</text>
97
- <text x="770" y="460" font-size="12" fill="#484f58">Auto-recalled on every prompt you type.</text>
98
- <text x="770" y="474" font-size="11" fill="#2a1e4a">memory-capture.js · auto-recall.js</text>
99
-
100
- <!-- Layer 3 -->
101
- <rect x="748" y="496" width="400" height="104" rx="8" fill="#091520" stroke="#38bdf8" stroke-opacity="0.3" stroke-width="1"/>
102
- <rect x="748" y="496" width="3" height="104" rx="1" fill="url(#layerBlue)"/>
103
- <text x="770" y="521" font-size="10" font-weight="700" fill="#38bdf8" letter-spacing="1.5">LAYER 3 — SEMANTIC ROUTING</text>
104
- <text x="770" y="542" font-size="13" fill="#8b949e">70 specialist agents · always-on</text>
105
- <text x="770" y="560" font-size="12" fill="#484f58">Routes every message to the right expert.</text>
106
- <text x="770" y="578" font-size="12" fill="#484f58">No agent names needed — just describe it.</text>
107
- <text x="770" y="592" font-size="11" fill="#0a2030">agent-intent-routing.md</text>
108
-
109
- <!-- Bottom bar — shifted up 8px so text has breathing room from canvas edge -->
110
- <rect x="0" y="629" width="1200" height="38" fill="#07080f"/>
111
- <line x1="0" y1="629" x2="1200" y2="629" stroke="#1e1e2e" stroke-width="1"/>
112
- <text x="56" y="653" font-size="12" font-family="'Consolas', 'SF Mono', monospace" fill="#10b981" font-weight="600">npx kodelyth-ecc</text>
113
- <text x="206" y="653" font-size="12" fill="#2d3340">&#xB7;</text>
114
- <text x="222" y="653" font-size="12" font-family="'Consolas', 'SF Mono', monospace" fill="#484f58">github.com/sifxprime/kodelyth-ecc</text>
115
- <text x="562" y="653" font-size="12" fill="#2d3340">&#xB7;</text>
116
- <text x="578" y="653" font-size="12" font-family="'Consolas', 'SF Mono', monospace" fill="#484f58">MIT · zero cloud · zero telemetry</text>
117
-
118
- <!-- Ghost Depth Mark — brand stamp (scale 0.55×) -->
119
- <g transform="translate(1044, 282) scale(0.55)" opacity="0.16">
120
- <polyline points="-44,4 12,100 -44,196"
121
- stroke="#ffffff" stroke-width="10"
122
- stroke-linecap="round" stroke-linejoin="round"
123
- fill="none"/>
124
- <polyline points="0,0 88,100 0,200"
125
- stroke="#ffffff" stroke-width="32"
126
- stroke-linecap="round" stroke-linejoin="round"
127
- fill="none"/>
128
- </g>
129
- </svg>