kodelyth-ecc 1.5.9 → 1.7.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.
Files changed (123) hide show
  1. package/.github/workflows/publish.yml +19 -0
  2. package/AGENTS.md +1 -1
  3. package/CHANGELOG.md +455 -0
  4. package/CLAUDE.md +48 -16
  5. package/README.md +265 -81
  6. package/VERSION +1 -1
  7. package/actions/ecc-review/README.md +243 -0
  8. package/actions/ecc-review/action.yml +158 -0
  9. package/actions/ecc-review/post-comment.js +171 -0
  10. package/actions/ecc-review/run-review.js +285 -0
  11. package/agents/backdoor-hunter.md +260 -0
  12. package/agents/chaos-engineer.md +251 -0
  13. package/agents/code-stealer-detector.md +228 -0
  14. package/agents/jailbreak-tester.md +222 -0
  15. package/agents/license-violation-finder.md +212 -0
  16. package/agents/prompt-injection-hunter.md +126 -0
  17. package/agents/secret-hunter.md +209 -0
  18. package/agents/supply-chain-auditor.md +195 -0
  19. package/bin/kodelyth-ecc.js +875 -1
  20. package/bundles/enterprise.md +172 -0
  21. package/bundles/indie-hacker.md +106 -0
  22. package/bundles/red-team.md +138 -0
  23. package/cat +0 -0
  24. package/commands/dashboard.md +67 -0
  25. package/commands/devil-mode.md +121 -0
  26. package/commands/memory-evolve.md +71 -0
  27. package/commands/replay.md +61 -0
  28. package/commands/route-model.md +48 -0
  29. package/commands/swarm.md +68 -0
  30. package/commands/verify-supply-chain.md +59 -0
  31. package/docs/dashboard.md +211 -0
  32. package/docs/evolve.md +303 -0
  33. package/docs/mcp-clients.md +167 -0
  34. package/docs/mcp.md +178 -0
  35. package/docs/replay.md +244 -0
  36. package/docs/supply-chain.md +207 -0
  37. package/docs/swarm.md +243 -0
  38. package/hooks/hooks.json +52 -0
  39. package/hooks/memory/auto-recall.js +29 -1
  40. package/hooks/safety/README.md +124 -0
  41. package/hooks/safety/lib/patterns.js +179 -0
  42. package/hooks/safety/prompt-injection-guard.js +179 -0
  43. package/hooks/safety/token-budget.js +229 -0
  44. package/install.ps1 +199 -2
  45. package/install.sh +286 -4
  46. package/package.json +30 -4
  47. package/rules/common/agent-intent-routing.md +182 -0
  48. package/rules/common/cost-aware-model-routing.md +152 -0
  49. package/scripts/dashboard/data.js +353 -0
  50. package/scripts/dashboard/server.js +324 -0
  51. package/scripts/dashboard/static/index.html +645 -0
  52. package/scripts/evolve/analyze.js +303 -0
  53. package/scripts/evolve/proposals.js +162 -0
  54. package/scripts/evolve/stats.js +219 -0
  55. package/scripts/mcp/catalog.js +244 -0
  56. package/scripts/mcp/client.js +181 -0
  57. package/scripts/mcp/prompts.js +133 -0
  58. package/scripts/mcp/resources.js +94 -0
  59. package/scripts/mcp/server.js +153 -0
  60. package/scripts/mcp/tools.js +465 -0
  61. package/scripts/replay/bundle.js +191 -0
  62. package/scripts/replay/replay.js +107 -0
  63. package/scripts/router/classify.js +232 -0
  64. package/scripts/supply-chain/manifest.js +154 -0
  65. package/scripts/supply-chain/sbom.js +202 -0
  66. package/scripts/supply-chain/verify.js +102 -0
  67. package/scripts/swarm/build-plan.js +193 -0
  68. package/skills/cost-aware-model-routing/SKILL.md +153 -0
  69. package/skills/kodelyth-quickstart/SKILL.md +7 -0
  70. package/skills/observability-dashboard/SKILL.md +119 -0
  71. package/skills/self-evolving-memory/SKILL.md +175 -0
  72. package/skills/session-replay/SKILL.md +199 -0
  73. package/skills/supply-chain-verification/SKILL.md +201 -0
  74. package/skills/swarm-orchestrator/SKILL.md +177 -0
  75. package/social/card-install.svg +1 -1
  76. package/social/facebook-group/POST.md +121 -0
  77. package/social/facebook-group/fb-1-3am-debug.png +0 -0
  78. package/social/facebook-group/fb-1-3am-debug.svg +97 -0
  79. package/social/facebook-group/fb-2-cpu-upgrade.png +0 -0
  80. package/social/facebook-group/fb-2-cpu-upgrade.svg +132 -0
  81. package/social/facebook-group/fb-3-before-after.png +0 -0
  82. package/social/facebook-group/fb-3-before-after.svg +94 -0
  83. package/social/facebook-v150.svg +5 -5
  84. package/social/github-social-preview.svg +119 -100
  85. package/social/readme-hero.svg +11 -11
  86. package/social/section-agents.svg +57 -0
  87. package/social/section-author.svg +54 -0
  88. package/social/section-dashboard.svg +59 -0
  89. package/social/section-devil.svg +54 -0
  90. package/social/section-hooks.svg +51 -0
  91. package/social/section-install.svg +42 -0
  92. package/social/section-learning.svg +52 -0
  93. package/social/section-mcp.svg +46 -0
  94. package/social/section-memory.svg +57 -0
  95. package/social/section-parallel.svg +72 -0
  96. package/social/section-routing.svg +51 -0
  97. package/social/x-card-agents-grid.svg +6 -6
  98. package/tests/dashboard/data.test.js +235 -0
  99. package/tests/dashboard/server.test.js +240 -0
  100. package/tests/evolve/analyze.test.js +169 -0
  101. package/tests/evolve/proposals.test.js +173 -0
  102. package/tests/evolve/stats.test.js +159 -0
  103. package/tests/mcp/catalog.test.js +98 -0
  104. package/tests/mcp/client.test.js +109 -0
  105. package/tests/mcp/resources-prompts.test.js +70 -0
  106. package/tests/mcp/tools.test.js +159 -0
  107. package/tests/replay/bundle.test.js +181 -0
  108. package/tests/replay/replay.test.js +131 -0
  109. package/tests/router/classify.test.js +164 -0
  110. package/tests/safety/patterns.test.js +94 -0
  111. package/tests/safety/prompt-injection-guard.test.js +111 -0
  112. package/tests/safety/token-budget.test.js +119 -0
  113. package/tests/supply-chain/manifest.test.js +147 -0
  114. package/tests/supply-chain/sbom.test.js +170 -0
  115. package/tests/supply-chain/verify.test.js +146 -0
  116. package/tests/swarm/build-plan.test.js +188 -0
  117. package/wiki/Agent-Reference.md +58 -7
  118. package/wiki/FAQ.md +204 -7
  119. package/wiki/Home.md +104 -28
  120. package/wiki/Hook-Reference.md +1 -1
  121. package/wiki/Installation-Guide.md +109 -6
  122. package/wiki/Platform-Support.md +239 -25
  123. package/wiki/Skill-Reference.md +101 -6
@@ -0,0 +1,132 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1080 1080" width="1080" height="1080">
2
+ <defs>
3
+ <linearGradient id="bg2" x1="0" y1="0" x2="1" y2="1">
4
+ <stop offset="0" stop-color="#1a0f08"/>
5
+ <stop offset="0.5" stop-color="#0d1117"/>
6
+ <stop offset="1" stop-color="#0a1f0d"/>
7
+ </linearGradient>
8
+ <linearGradient id="chipGrad" x1="0" y1="0" x2="0" y2="1">
9
+ <stop offset="0" stop-color="#fbbf24"/>
10
+ <stop offset="1" stop-color="#d97706"/>
11
+ </linearGradient>
12
+ <linearGradient id="coffeeGrad" x1="0" y1="0" x2="0" y2="1">
13
+ <stop offset="0" stop-color="#92400e"/>
14
+ <stop offset="1" stop-color="#451a03"/>
15
+ </linearGradient>
16
+ <radialGradient id="steamGrad" cx="0.5" cy="0.5" r="0.5">
17
+ <stop offset="0" stop-color="#ffffff" stop-opacity="0.4"/>
18
+ <stop offset="1" stop-color="#ffffff" stop-opacity="0"/>
19
+ </radialGradient>
20
+ <filter id="glow2" x="-50%" y="-50%" width="200%" height="200%">
21
+ <feGaussianBlur stdDeviation="8" result="coloredBlur"/>
22
+ <feMerge>
23
+ <feMergeNode in="coloredBlur"/>
24
+ <feMergeNode in="SourceGraphic"/>
25
+ </feMerge>
26
+ </filter>
27
+ </defs>
28
+
29
+ <rect width="1080" height="1080" fill="url(#bg2)"/>
30
+
31
+ <!-- Ambient glow orbs -->
32
+ <circle cx="200" cy="200" r="300" fill="#fbbf24" opacity="0.04"/>
33
+ <circle cx="900" cy="850" r="280" fill="#10b981" opacity="0.04"/>
34
+
35
+ <!-- Top label - quote from the group -->
36
+ <rect x="240" y="60" width="600" height="44" rx="22" fill="#1f1611" stroke="#fbbf24" stroke-opacity="0.4" stroke-width="1"/>
37
+ <text x="540" y="89" font-family="system-ui, sans-serif" font-size="16" font-weight="700" fill="#fbbf24" text-anchor="middle" letter-spacing="1">"PROGRAMMERS ARE A COFFEE PROCESSING UNIT"</text>
38
+
39
+ <text x="540" y="155" font-family="system-ui, sans-serif" font-size="22" fill="#8b949e" text-anchor="middle">— every dev, including you</text>
40
+
41
+ <!-- Hero -->
42
+ <text x="540" y="240" font-family="system-ui, -apple-system, sans-serif" font-size="68" font-weight="900" fill="#ffffff" text-anchor="middle" letter-spacing="-2">Time to upgrade</text>
43
+ <text x="540" y="320" font-family="system-ui, -apple-system, sans-serif" font-size="68" font-weight="900" fill="url(#chipGrad)" text-anchor="middle" letter-spacing="-2">your CPU.</text>
44
+
45
+ <!-- The chip illustration -->
46
+ <g transform="translate(380, 380)">
47
+ <!-- Chip body -->
48
+ <rect x="0" y="0" width="320" height="320" rx="24" fill="#1c1917" stroke="#fbbf24" stroke-width="3" filter="url(#glow2)"/>
49
+
50
+ <!-- Chip pins -->
51
+ <g fill="#fbbf24">
52
+ <rect x="-12" y="40" width="12" height="6"/>
53
+ <rect x="-12" y="80" width="12" height="6"/>
54
+ <rect x="-12" y="120" width="12" height="6"/>
55
+ <rect x="-12" y="160" width="12" height="6"/>
56
+ <rect x="-12" y="200" width="12" height="6"/>
57
+ <rect x="-12" y="240" width="12" height="6"/>
58
+ <rect x="-12" y="280" width="12" height="6"/>
59
+ <rect x="320" y="40" width="12" height="6"/>
60
+ <rect x="320" y="80" width="12" height="6"/>
61
+ <rect x="320" y="120" width="12" height="6"/>
62
+ <rect x="320" y="160" width="12" height="6"/>
63
+ <rect x="320" y="200" width="12" height="6"/>
64
+ <rect x="320" y="240" width="12" height="6"/>
65
+ <rect x="320" y="280" width="12" height="6"/>
66
+ <rect x="40" y="-12" width="6" height="12"/>
67
+ <rect x="80" y="-12" width="6" height="12"/>
68
+ <rect x="120" y="-12" width="6" height="12"/>
69
+ <rect x="160" y="-12" width="6" height="12"/>
70
+ <rect x="200" y="-12" width="6" height="12"/>
71
+ <rect x="240" y="-12" width="6" height="12"/>
72
+ <rect x="280" y="-12" width="6" height="12"/>
73
+ <rect x="40" y="320" width="6" height="12"/>
74
+ <rect x="80" y="320" width="6" height="12"/>
75
+ <rect x="120" y="320" width="6" height="12"/>
76
+ <rect x="160" y="320" width="6" height="12"/>
77
+ <rect x="200" y="320" width="6" height="12"/>
78
+ <rect x="240" y="320" width="6" height="12"/>
79
+ <rect x="280" y="320" width="6" height="12"/>
80
+ </g>
81
+
82
+ <!-- Chip label -->
83
+ <text x="160" y="130" font-family="system-ui, sans-serif" font-size="22" font-weight="700" fill="#fbbf24" text-anchor="middle" letter-spacing="3">KODELYTH</text>
84
+ <text x="160" y="200" font-family="system-ui, -apple-system, sans-serif" font-size="80" font-weight="900" fill="#ffffff" text-anchor="middle" letter-spacing="-1">ECC</text>
85
+ <text x="160" y="240" font-family="system-ui, sans-serif" font-size="13" fill="#8b949e" text-anchor="middle" letter-spacing="3">v1.5.10</text>
86
+
87
+ <!-- Notch -->
88
+ <circle cx="20" cy="20" r="6" fill="#fbbf24" opacity="0.5"/>
89
+ </g>
90
+
91
+ <!-- Coffee mug left -->
92
+ <g transform="translate(120, 480)">
93
+ <!-- Steam -->
94
+ <ellipse cx="50" cy="-20" rx="18" ry="40" fill="url(#steamGrad)"/>
95
+ <ellipse cx="80" cy="-30" rx="15" ry="35" fill="url(#steamGrad)"/>
96
+ <ellipse cx="35" cy="-15" rx="14" ry="30" fill="url(#steamGrad)"/>
97
+ <!-- Mug -->
98
+ <rect x="20" y="40" width="100" height="100" rx="6" fill="url(#coffeeGrad)" stroke="#fbbf24" stroke-width="2"/>
99
+ <ellipse cx="70" cy="50" rx="50" ry="10" fill="#1c0f08"/>
100
+ <!-- Handle -->
101
+ <path d="M 120 60 Q 150 60, 150 90 Q 150 120, 120 120" fill="none" stroke="#fbbf24" stroke-width="4"/>
102
+ </g>
103
+
104
+ <!-- Coffee mug right -->
105
+ <g transform="translate(820, 480)">
106
+ <!-- Steam -->
107
+ <ellipse cx="50" cy="-20" rx="18" ry="40" fill="url(#steamGrad)"/>
108
+ <ellipse cx="80" cy="-30" rx="15" ry="35" fill="url(#steamGrad)"/>
109
+ <ellipse cx="35" cy="-15" rx="14" ry="30" fill="url(#steamGrad)"/>
110
+ <!-- Mug -->
111
+ <rect x="20" y="40" width="100" height="100" rx="6" fill="url(#coffeeGrad)" stroke="#fbbf24" stroke-width="2"/>
112
+ <ellipse cx="70" cy="50" rx="50" ry="10" fill="#1c0f08"/>
113
+ <!-- Handle -->
114
+ <path d="M 120 60 Q 150 60, 150 90 Q 150 120, 120 120" fill="none" stroke="#fbbf24" stroke-width="4"/>
115
+ </g>
116
+
117
+ <!-- Below the chip - the upgrade list -->
118
+ <g font-family="system-ui, sans-serif">
119
+ <text x="540" y="780" font-size="26" font-weight="700" fill="#10b981" text-anchor="middle">+ 62 AI agents fighting bugs with you</text>
120
+ <text x="540" y="820" font-size="26" font-weight="700" fill="#10b981" text-anchor="middle">+ 188 skills loaded into your IDE</text>
121
+ <text x="540" y="860" font-size="26" font-weight="700" fill="#10b981" text-anchor="middle">+ Memory that learns YOUR codebase</text>
122
+ </g>
123
+
124
+ <!-- Install bar -->
125
+ <rect x="180" y="900" width="720" height="76" rx="12" fill="#0d1117" stroke="#fbbf24" stroke-width="2"/>
126
+ <text x="220" y="948" font-family="'Courier New', Courier, monospace" font-size="26" fill="#fbbf24" font-weight="700">$</text>
127
+ <text x="248" y="948" font-family="'Courier New', Courier, monospace" font-size="26" fill="#ffffff" font-weight="700">npx kodelyth-ecc</text>
128
+ <text x="880" y="948" font-family="system-ui, sans-serif" font-size="12" fill="#8b949e" text-anchor="end" letter-spacing="2">100% FREE · OPEN SOURCE</text>
129
+
130
+ <!-- Footer -->
131
+ <text x="540" y="1020" font-family="system-ui, sans-serif" font-size="14" fill="#484f58" text-anchor="middle" letter-spacing="1">github.com/sifxprime/kodelyth-ecc · ☕ + 🤖 = ❤️</text>
132
+ </svg>
@@ -0,0 +1,94 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 1080" width="1200" height="1080">
2
+ <defs>
3
+ <linearGradient id="bg3" x1="0" y1="0" x2="0" y2="1">
4
+ <stop offset="0" stop-color="#0d1117"/>
5
+ <stop offset="1" stop-color="#161b22"/>
6
+ </linearGradient>
7
+ <linearGradient id="redPanel" x1="0" y1="0" x2="0" y2="1">
8
+ <stop offset="0" stop-color="#2d0a0a"/>
9
+ <stop offset="1" stop-color="#1a0606"/>
10
+ </linearGradient>
11
+ <linearGradient id="greenPanel" x1="0" y1="0" x2="0" y2="1">
12
+ <stop offset="0" stop-color="#04231a"/>
13
+ <stop offset="1" stop-color="#021610"/>
14
+ </linearGradient>
15
+ </defs>
16
+
17
+ <rect width="1200" height="1080" fill="url(#bg3)"/>
18
+
19
+ <!-- Top label -->
20
+ <rect x="450" y="50" width="300" height="44" rx="22" fill="#1f1f23" stroke="#a78bfa" stroke-opacity="0.5" stroke-width="1"/>
21
+ <text x="600" y="79" font-family="system-ui, sans-serif" font-size="16" font-weight="700" fill="#a78bfa" text-anchor="middle" letter-spacing="2">RAW CONFESSION</text>
22
+
23
+ <!-- Title -->
24
+ <text x="600" y="160" font-family="system-ui, -apple-system, sans-serif" font-size="48" font-weight="900" fill="#ffffff" text-anchor="middle" letter-spacing="-1">My debugging life: before vs after</text>
25
+
26
+ <!-- TWO PANELS -->
27
+ <!-- LEFT: BEFORE -->
28
+ <g transform="translate(60, 220)">
29
+ <rect width="520" height="640" rx="20" fill="url(#redPanel)" stroke="#ef4444" stroke-opacity="0.4" stroke-width="2"/>
30
+
31
+ <!-- Tag -->
32
+ <rect x="20" y="20" width="120" height="36" rx="18" fill="#7f1d1d" stroke="#ef4444" stroke-width="1"/>
33
+ <text x="80" y="44" font-family="system-ui, sans-serif" font-size="14" font-weight="700" fill="#fca5a5" text-anchor="middle" letter-spacing="2">BEFORE</text>
34
+
35
+ <text x="260" y="120" font-family="system-ui, sans-serif" font-size="28" font-weight="800" fill="#fca5a5" text-anchor="middle">Me, every Tuesday:</text>
36
+
37
+ <!-- Pain points list -->
38
+ <g font-family="system-ui, sans-serif" font-size="20" fill="#fecaca">
39
+ <text x="40" y="200">😩 Googling the same error</text>
40
+ <text x="40" y="232"> for the 47th time</text>
41
+
42
+ <text x="40" y="290">📋 Copy-pasting my coding</text>
43
+ <text x="40" y="322"> style into 5 different IDEs</text>
44
+
45
+ <text x="40" y="380">🤖 Re-explaining "we use pnpm"</text>
46
+ <text x="40" y="412"> to the AI every session</text>
47
+
48
+ <text x="40" y="470">🐛 Stuck 6 hours on a bug</text>
49
+ <text x="40" y="502"> no one has time to look at</text>
50
+
51
+ <text x="40" y="560">😴 Reviewing my own code</text>
52
+ <text x="40" y="592"> at 2 AM (red flags everywhere)</text>
53
+ </g>
54
+ </g>
55
+
56
+ <!-- RIGHT: AFTER -->
57
+ <g transform="translate(620, 220)">
58
+ <rect width="520" height="640" rx="20" fill="url(#greenPanel)" stroke="#10b981" stroke-opacity="0.5" stroke-width="2"/>
59
+
60
+ <!-- Tag -->
61
+ <rect x="20" y="20" width="120" height="36" rx="18" fill="#064e3b" stroke="#10b981" stroke-width="1"/>
62
+ <text x="80" y="44" font-family="system-ui, sans-serif" font-size="14" font-weight="700" fill="#6ee7b7" text-anchor="middle" letter-spacing="2">AFTER ECC</text>
63
+
64
+ <text x="260" y="120" font-family="system-ui, sans-serif" font-size="28" font-weight="800" fill="#6ee7b7" text-anchor="middle">Me now, calmly:</text>
65
+
66
+ <!-- Win list -->
67
+ <g font-family="system-ui, sans-serif" font-size="20" fill="#a7f3d0">
68
+ <text x="40" y="200">🧠 Memory remembers I already</text>
69
+ <text x="40" y="232"> fixed this exact error</text>
70
+
71
+ <text x="40" y="290">📦 One npx install. Same setup</text>
72
+ <text x="40" y="322"> across every IDE I use</text>
73
+
74
+ <text x="40" y="380">🎯 Intent routing — describe</text>
75
+ <text x="40" y="412"> in plain words, agent runs</text>
76
+
77
+ <text x="40" y="470">⚡ /debug-blitz fires 3 agents</text>
78
+ <text x="40" y="502"> in parallel on stubborn bugs</text>
79
+
80
+ <text x="40" y="560">👥 62 specialist reviewers</text>
81
+ <text x="40" y="592"> on every PR. For free.</text>
82
+ </g>
83
+ </g>
84
+
85
+ <!-- Install bar -->
86
+ <rect x="180" y="900" width="840" height="80" rx="12" fill="#0d1117" stroke="#10b981" stroke-width="2"/>
87
+ <text x="220" y="950" font-family="'Courier New', Courier, monospace" font-size="28" fill="#10b981" font-weight="700">$</text>
88
+ <text x="252" y="950" font-family="'Courier New', Courier, monospace" font-size="28" fill="#ffffff" font-weight="700">npx kodelyth-ecc</text>
89
+ <text x="1000" y="950" font-family="system-ui, sans-serif" font-size="14" fill="#8b949e" text-anchor="end" letter-spacing="2">FREE · LOCAL · OPEN SOURCE</text>
90
+
91
+ <!-- Footer -->
92
+ <text x="600" y="1030" font-family="system-ui, sans-serif" font-size="15" fill="#6e7681" text-anchor="middle">62 agents · 188 skills · 90 commands · works on Claude Code, Cursor, Windsurf, Codex, Antigravity</text>
93
+ <text x="600" y="1058" font-family="system-ui, sans-serif" font-size="13" fill="#484f58" text-anchor="middle" letter-spacing="1">github.com/sifxprime/kodelyth-ecc</text>
94
+ </svg>
@@ -30,7 +30,7 @@
30
30
  <!-- Title -->
31
31
  <text x="80" y="120" font-size="52" font-weight="900" letter-spacing="-2" fill="#ffffff">Kodelyth ECC</text>
32
32
  <text x="80" y="175" font-size="22" font-weight="400" fill="url(#accent)">The AI coding toolkit that learns how you work.</text>
33
- <text x="80" y="212" font-size="15" fill="#6e7681">62 agents. Semantic routing. Compound learning. Zero cloud.</text>
33
+ <text x="80" y="212" font-size="15" fill="#6e7681">70 agents. 12 platforms. Semantic routing. Compound learning. Zero cloud.</text>
34
34
 
35
35
  <line x1="80" y1="236" x2="1120" y2="236" stroke="#21262d" stroke-width="1"/>
36
36
 
@@ -41,7 +41,7 @@
41
41
  <text x="100" y="296" font-size="13" fill="#e6edf3">Corrections → tasks/lessons.md</text>
42
42
  <text x="100" y="313" font-size="13" fill="#e6edf3">Next session: never repeats the mistake</text>
43
43
  <text x="100" y="334" font-size="11" fill="#484f58">capture-correction.js · read-lessons.js</text>
44
- <text x="100" y="352" font-size="11" fill="#484f58">Works on all 6 platforms via /lessons</text>
44
+ <text x="100" y="352" font-size="11" fill="#484f58">Works on all 12 platforms via /lessons</text>
45
45
 
46
46
  <!-- Card 2: Parallel Agents -->
47
47
  <rect x="410" y="250" width="315" height="120" rx="10" fill="#161b22" stroke="#f59e0b" stroke-opacity="0.35" stroke-width="1"/>
@@ -64,13 +64,13 @@
64
64
  <line x1="80" y1="392" x2="1120" y2="392" stroke="#21262d" stroke-width="1"/>
65
65
 
66
66
  <!-- Stats -->
67
- <text x="540" y="438" font-size="68" font-weight="900" fill="#ffffff" text-anchor="middle">62</text>
67
+ <text x="540" y="438" font-size="68" font-weight="900" fill="#ffffff" text-anchor="middle">70</text>
68
68
  <text x="540" y="460" font-size="10" fill="#484f58" text-anchor="middle" letter-spacing="3">SPECIALIST AGENTS</text>
69
69
  <line x1="456" y1="410" x2="456" y2="472" stroke="#21262d" stroke-width="1"/>
70
70
  <line x1="624" y1="410" x2="624" y2="472" stroke="#21262d" stroke-width="1"/>
71
- <text x="368" y="438" font-size="34" font-weight="800" fill="#ffffff" text-anchor="middle">188</text>
71
+ <text x="368" y="438" font-size="34" font-weight="800" fill="#ffffff" text-anchor="middle">194</text>
72
72
  <text x="368" y="458" font-size="10" fill="#484f58" text-anchor="middle" letter-spacing="2">SKILLS</text>
73
- <text x="712" y="438" font-size="34" font-weight="800" fill="#ffffff" text-anchor="middle">80</text>
73
+ <text x="712" y="438" font-size="34" font-weight="800" fill="#ffffff" text-anchor="middle">97</text>
74
74
  <text x="712" y="458" font-size="10" fill="#484f58" text-anchor="middle" letter-spacing="2">COMMANDS</text>
75
75
 
76
76
  <!-- Benefit pills -->
@@ -8,121 +8,140 @@
8
8
  <stop offset="0%" style="stop-color:#a78bfa"/>
9
9
  <stop offset="100%" style="stop-color:#38bdf8"/>
10
10
  </linearGradient>
11
- <linearGradient id="mem" x1="0%" y1="0%" x2="0%" y2="100%">
12
- <stop offset="0%" style="stop-color:#059669"/>
13
- <stop offset="100%" style="stop-color:#065f46"/>
11
+ <linearGradient id="greengrad" x1="0%" y1="0%" x2="100%" y2="0%">
12
+ <stop offset="0%" style="stop-color:#34d399"/>
13
+ <stop offset="100%" style="stop-color:#059669"/>
14
14
  </linearGradient>
15
15
  <filter id="glow">
16
- <feGaussianBlur stdDeviation="6" result="blur"/>
16
+ <feGaussianBlur stdDeviation="8" result="blur"/>
17
+ <feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge>
18
+ </filter>
19
+ <filter id="softglow">
20
+ <feGaussianBlur stdDeviation="3" result="blur"/>
17
21
  <feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge>
18
22
  </filter>
19
23
  </defs>
20
24
 
25
+ <!-- Background -->
21
26
  <rect width="1280" height="640" fill="url(#bg)"/>
22
27
 
23
28
  <!-- Subtle grid -->
24
- <line x1="0" y1="160" x2="1280" y2="160" stroke="#ffffff" stroke-width="0.3" opacity="0.025"/>
25
- <line x1="0" y1="320" x2="1280" y2="320" stroke="#ffffff" stroke-width="0.3" opacity="0.025"/>
26
- <line x1="0" y1="480" x2="1280" y2="480" stroke="#ffffff" stroke-width="0.3" opacity="0.025"/>
27
- <line x1="320" y1="0" x2="320" y2="640" stroke="#ffffff" stroke-width="0.3" opacity="0.025"/>
28
- <line x1="640" y1="0" x2="640" y2="640" stroke="#ffffff" stroke-width="0.3" opacity="0.025"/>
29
- <line x1="960" y1="0" x2="960" y2="640" stroke="#ffffff" stroke-width="0.3" opacity="0.025"/>
29
+ <line x1="0" y1="160" x2="1280" y2="160" stroke="#ffffff" stroke-width="0.3" opacity="0.03"/>
30
+ <line x1="0" y1="320" x2="1280" y2="320" stroke="#ffffff" stroke-width="0.3" opacity="0.03"/>
31
+ <line x1="0" y1="480" x2="1280" y2="480" stroke="#ffffff" stroke-width="0.3" opacity="0.03"/>
32
+ <line x1="320" y1="0" x2="320" y2="640" stroke="#ffffff" stroke-width="0.3" opacity="0.03"/>
33
+ <line x1="640" y1="0" x2="640" y2="640" stroke="#ffffff" stroke-width="0.3" opacity="0.03"/>
34
+ <line x1="960" y1="0" x2="960" y2="640" stroke="#ffffff" stroke-width="0.3" opacity="0.03"/>
30
35
 
31
36
  <!-- Glow orbs -->
32
- <circle cx="1180" cy="540" r="280" fill="#059669" opacity="0.04"/>
33
- <circle cx="1100" cy="80" r="160" fill="#2563eb" opacity="0.03"/>
34
- <circle cx="100" cy="580" r="180" fill="#a78bfa" opacity="0.03"/>
37
+ <ellipse cx="200" cy="320" rx="300" ry="200" fill="#a78bfa" fill-opacity="0.04"/>
38
+ <ellipse cx="1100" cy="320" rx="280" ry="180" fill="#38bdf8" fill-opacity="0.04"/>
39
+
40
+ <!-- Top accent bar -->
41
+ <rect x="0" y="0" width="1280" height="4" fill="url(#accent)"/>
42
+
43
+ <!-- ── LEFT PANEL ──────────────────────────────────────────── -->
35
44
 
36
- <!-- LEFT PANEL -->
37
45
  <!-- Version badge -->
38
- <rect x="60" y="52" width="84" height="28" rx="4" fill="#a78bfa" opacity="0.12"/>
39
- <rect x="60" y="52" width="84" height="28" rx="4" fill="none" stroke="#a78bfa" stroke-width="1"/>
40
- <text x="102" y="71" font-size="12" fill="#a78bfa" font-weight="700" text-anchor="middle" letter-spacing="0.5">v1.5.8</text>
46
+ <rect x="60" y="60" width="88" height="26" rx="13" fill="#a78bfa" fill-opacity="0.15" stroke="#a78bfa" stroke-opacity="0.5" stroke-width="1"/>
47
+ <text x="104" y="77" font-size="11" fill="#a78bfa" text-anchor="middle" font-weight="700" letter-spacing="0.5">v1.7.0 NEW</text>
41
48
 
42
49
  <!-- Title -->
43
- <text x="60" y="168" font-size="80" font-weight="900" letter-spacing="-3" fill="#ffffff" filter="url(#glow)">Kodelyth</text>
44
- <text x="60" y="252" font-size="80" font-weight="900" letter-spacing="-3" fill="url(#accent)">ECC</text>
50
+ <text x="60" y="160" font-size="72" font-weight="900" letter-spacing="-3" fill="#ffffff" filter="url(#glow)">Kodelyth</text>
51
+ <text x="60" y="240" font-size="72" font-weight="900" letter-spacing="-3" fill="url(#accent)" filter="url(#softglow)">ECC</text>
45
52
 
46
53
  <!-- Tagline -->
47
- <text x="60" y="308" font-size="19" fill="#8b949e" font-weight="400">62 specialist agents. Semantic intent routing.</text>
48
- <text x="60" y="334" font-size="19" fill="#8b949e">Compound learning. Zero cloud. Zero telemetry.</text>
49
-
50
- <!-- Separator -->
51
- <rect x="60" y="364" width="500" height="1" fill="#21262d"/>
52
-
53
- <!-- Stats row -->
54
- <text x="60" y="410" font-size="40" font-weight="800" fill="#ffffff">62</text>
55
- <text x="60" y="432" font-size="10" fill="#484f58" letter-spacing="2.5">AGENTS</text>
56
-
57
- <text x="180" y="410" font-size="40" font-weight="800" fill="#ffffff">188</text>
58
- <text x="180" y="432" font-size="10" fill="#484f58" letter-spacing="2.5">SKILLS</text>
59
-
60
- <text x="310" y="410" font-size="40" font-weight="800" fill="#ffffff">90</text>
61
- <text x="310" y="432" font-size="10" fill="#484f58" letter-spacing="2.5">COMMANDS</text>
62
-
63
- <text x="420" y="410" font-size="40" font-weight="800" fill="#ffffff">6</text>
64
- <text x="420" y="432" font-size="10" fill="#484f58" letter-spacing="2.5">PLATFORMS</text>
65
-
66
- <!-- Feature pill v1.5.3 -->
67
- <rect x="60" y="460" width="500" height="68" rx="8" fill="#13203a" stroke="#2563eb" stroke-opacity="0.3" stroke-width="1"/>
68
- <text x="80" y="483" font-size="11" font-weight="700" fill="#38bdf8" letter-spacing="1">SEMANTIC INTENT ROUTING — v1.5.3+</text>
69
- <text x="80" y="503" font-size="13" fill="#8b949e">Paste code → code-reviewer. Paste error → debug-detective.</text>
70
- <text x="80" y="520" font-size="13" fill="#8b949e">No command names needed. Ever.</text>
71
-
72
- <!-- Platform line -->
73
- <text x="60" y="570" font-size="12" fill="#30363d">Works with</text>
74
- <text x="135" y="570" font-size="12" fill="#6e7681" font-weight="600">Claude Code · Antigravity · Cursor · Codex · Windsurf · OpenCode</text>
75
-
76
- <!-- GitHub URL -->
77
- <text x="60" y="606" font-size="14" fill="#30363d">github.com/sifxprime/kodelyth-ecc</text>
78
-
79
- <!-- RIGHT PANEL — Feature cards -->
80
- <rect x="700" y="80" width="520" height="480" rx="12" fill="#0d1117" stroke="#21262d" stroke-width="1"/>
81
-
82
- <!-- Card 1 — Compound Learning -->
83
- <rect x="720" y="100" width="480" height="110" rx="8" fill="#161b22" stroke="#21262d" stroke-width="1"/>
84
- <rect x="720" y="100" width="4" height="110" rx="2" fill="url(#mem)"/>
85
- <rect x="886" y="106" width="78" height="18" rx="9" fill="#059669" fill-opacity="0.25" stroke="#059669" stroke-opacity="0.5" stroke-width="1"/>
86
- <text x="925" y="119" font-size="10" fill="#10b981" text-anchor="middle" font-weight="700">v1.5.1</text>
87
- <text x="740" y="126" font-size="14" font-weight="700" fill="#ffffff">Compound Learning System</text>
88
- <text x="740" y="147" font-size="12" fill="#8b949e">Every correction you give Claude gets encoded to</text>
89
- <text x="740" y="163" font-size="12" fill="#8b949e">tasks/lessons.md. Next session it never repeats.</text>
90
- <text x="740" y="180" font-size="11" fill="#484f58">capture-correction.js · read-lessons.js · self-improvement rule</text>
91
- <text x="740" y="198" font-size="11" fill="#484f58">Works on all 6 platforms via /lessons command</text>
92
-
93
- <!-- Card 2Parallel Agents -->
94
- <rect x="720" y="225" width="480" height="110" rx="8" fill="#161b22" stroke="#21262d" stroke-width="1"/>
95
- <rect x="720" y="225" width="4" height="110" rx="2" fill="#f59e0b"/>
96
- <rect x="880" y="231" width="90" height="18" rx="9" fill="#f59e0b" fill-opacity="0.2" stroke="#f59e0b" stroke-opacity="0.4" stroke-width="1"/>
97
- <text x="925" y="244" font-size="10" fill="#f59e0b" text-anchor="middle" font-weight="700">v1.5.2</text>
98
- <text x="740" y="251" font-size="14" font-weight="700" fill="#ffffff">Parallel Agent Commands</text>
99
- <text x="740" y="272" font-size="12" fill="#8b949e">/project-launch — 5 agents fire simultaneously</text>
100
- <text x="740" y="288" font-size="12" fill="#8b949e">/team-review — 4 audit agents fire simultaneously</text>
101
- <text x="740" y="305" font-size="11" fill="#484f58">New project: 45 min → 10 min · Full audit: 60 min → 15 min</text>
102
- <text x="740" y="323" font-size="11" fill="#484f58">image-architect · /lessons cross-platform</text>
103
-
104
- <!-- Card 3 — Semantic Routing -->
105
- <rect x="720" y="350" width="480" height="110" rx="8" fill="#13203a" stroke="#2563eb" stroke-opacity="0.4" stroke-width="1"/>
106
- <rect x="720" y="350" width="4" height="110" rx="2" fill="#38bdf8"/>
107
- <rect x="880" y="356" width="90" height="18" rx="9" fill="#2563eb" fill-opacity="0.2" stroke="#2563eb" stroke-opacity="0.4" stroke-width="1"/>
108
- <text x="925" y="369" font-size="10" fill="#38bdf8" text-anchor="middle" font-weight="700">v1.5.3+</text>
109
- <text x="740" y="376" font-size="14" font-weight="700" fill="#ffffff">Semantic Intent Routing</text>
110
- <text x="740" y="397" font-size="12" fill="#8b949e">AI reads intent, not keywords. 2–3× more signals</text>
111
- <text x="740" y="413" font-size="12" fill="#8b949e">per agent. Code/trace paste auto-detection.</text>
112
- <text x="740" y="430" font-size="11" fill="#484f58">62 agents · 10 priority tiers · emotion as routing signal</text>
113
- <text x="740" y="448" font-size="11" fill="#484f58">"help me build a todo app" → /project-launch, no typing needed</text>
114
-
115
- <!-- Stat bar at bottom of card panel -->
116
- <rect x="720" y="478" width="480" height="64" rx="8" fill="#0d1117" stroke="#21262d" stroke-width="1"/>
117
- <text x="760" y="504" font-size="28" font-weight="800" fill="#ffffff">62</text>
118
- <text x="760" y="522" font-size="9" fill="#484f58" letter-spacing="2">AGENTS</text>
119
- <line x1="820" y1="488" x2="820" y2="532" stroke="#21262d" stroke-width="1"/>
120
- <text x="860" y="504" font-size="28" font-weight="800" fill="#ffffff">188</text>
121
- <text x="860" y="522" font-size="9" fill="#484f58" letter-spacing="2">SKILLS</text>
122
- <line x1="930" y1="488" x2="930" y2="532" stroke="#21262d" stroke-width="1"/>
123
- <text x="970" y="504" font-size="28" font-weight="800" fill="#ffffff">20+</text>
124
- <text x="970" y="522" font-size="9" fill="#484f58" letter-spacing="2">HOOKS</text>
125
- <line x1="1040" y1="488" x2="1040" y2="532" stroke="#21262d" stroke-width="1"/>
126
- <text x="1080" y="504" font-size="28" font-weight="800" fill="#ffffff">6</text>
127
- <text x="1080" y="522" font-size="9" fill="#484f58" letter-spacing="2">PLATFORMS</text>
54
+ <text x="60" y="285" font-size="18" fill="#8b949e" font-weight="400">Production-grade AI coding toolkit.</text>
55
+ <text x="60" y="308" font-size="18" fill="#8b949e" font-weight="400">12 platforms. Zero cloud. Zero telemetry.</text>
56
+
57
+ <!-- Divider -->
58
+ <line x1="60" y1="330" x2="540" y2="330" stroke="#21262d" stroke-width="1"/>
59
+
60
+ <!-- Stats grid -->
61
+ <rect x="60" y="350" width="100" height="80" rx="10" fill="#ffffff" fill-opacity="0.03" stroke="#a78bfa" stroke-opacity="0.2" stroke-width="1"/>
62
+ <text x="110" y="394" font-size="36" font-weight="900" fill="#ffffff" text-anchor="middle" filter="url(#softglow)">70</text>
63
+ <text x="110" y="416" font-size="10" fill="#6e7681" text-anchor="middle" letter-spacing="2">AGENTS</text>
64
+
65
+ <rect x="170" y="350" width="100" height="80" rx="10" fill="#ffffff" fill-opacity="0.03" stroke="#38bdf8" stroke-opacity="0.2" stroke-width="1"/>
66
+ <text x="220" y="394" font-size="36" font-weight="900" fill="#ffffff" text-anchor="middle">194</text>
67
+ <text x="220" y="416" font-size="10" fill="#6e7681" text-anchor="middle" letter-spacing="2">SKILLS</text>
68
+
69
+ <rect x="280" y="350" width="100" height="80" rx="10" fill="#ffffff" fill-opacity="0.03" stroke="#059669" stroke-opacity="0.2" stroke-width="1"/>
70
+ <text x="330" y="394" font-size="36" font-weight="900" fill="#ffffff" text-anchor="middle">97</text>
71
+ <text x="330" y="416" font-size="10" fill="#6e7681" text-anchor="middle" letter-spacing="2">COMMANDS</text>
72
+
73
+ <rect x="390" y="350" width="100" height="80" rx="10" fill="#ffffff" fill-opacity="0.03" stroke="#f59e0b" stroke-opacity="0.2" stroke-width="1"/>
74
+ <text x="440" y="394" font-size="36" font-weight="900" fill="#ffffff" text-anchor="middle">22+</text>
75
+ <text x="440" y="416" font-size="10" fill="#6e7681" text-anchor="middle" letter-spacing="2">HOOKS</text>
76
+
77
+ <!-- Feature pills -->
78
+ <rect x="60" y="450" width="120" height="24" rx="12" fill="#ef4444" fill-opacity="0.15" stroke="#ef4444" stroke-opacity="0.4" stroke-width="1"/>
79
+ <text x="120" y="465" font-size="10" fill="#f87171" text-anchor="middle" font-weight="700">DEVIL MODE</text>
80
+
81
+ <rect x="190" y="450" width="130" height="24" rx="12" fill="#a78bfa" fill-opacity="0.12" stroke="#a78bfa" stroke-opacity="0.35" stroke-width="1"/>
82
+ <text x="255" y="465" font-size="10" fill="#a78bfa" text-anchor="middle" font-weight="700">INTENT ROUTING</text>
83
+
84
+ <rect x="330" y="450" width="130" height="24" rx="12" fill="#059669" fill-opacity="0.12" stroke="#059669" stroke-opacity="0.35" stroke-width="1"/>
85
+ <text x="395" y="465" font-size="10" fill="#34d399" text-anchor="middle" font-weight="700">LOCAL MEMORY</text>
86
+
87
+ <rect x="60" y="484" width="120" height="24" rx="12" fill="#38bdf8" fill-opacity="0.12" stroke="#38bdf8" stroke-opacity="0.35" stroke-width="1"/>
88
+ <text x="120" y="499" font-size="10" fill="#38bdf8" text-anchor="middle" font-weight="700">MCP SERVER</text>
89
+
90
+ <rect x="190" y="484" width="130" height="24" rx="12" fill="#f59e0b" fill-opacity="0.1" stroke="#f59e0b" stroke-opacity="0.35" stroke-width="1"/>
91
+ <text x="255" y="499" font-size="10" fill="#fbbf24" text-anchor="middle" font-weight="700">PARALLEL AGENTS</text>
92
+
93
+ <rect x="330" y="484" width="130" height="24" rx="12" fill="#06b6d4" fill-opacity="0.1" stroke="#06b6d4" stroke-opacity="0.35" stroke-width="1"/>
94
+ <text x="395" y="499" font-size="10" fill="#22d3ee" text-anchor="middle" font-weight="700">DASHBOARD</text>
95
+
96
+ <!-- Author -->
97
+ <text x="60" y="570" font-size="13" fill="#6e7681">by <tspan fill="#a78bfa" font-weight="700">Shofiqul Islam</tspan> · @sifxprime · github.com/sifxprime/kodelyth-ecc</text>
98
+ <text x="60" y="590" font-size="11" fill="#484f58">npmjs.com/package/kodelyth-ecc · MIT License</text>
99
+
100
+ <!-- ── RIGHT PANEL terminal mockup ───────────────────────── -->
101
+ <rect x="640" y="50" width="596" height="540" rx="14" fill="#0d1117" stroke="#21262d" stroke-width="1"/>
102
+
103
+ <!-- Terminal chrome -->
104
+ <rect x="640" y="50" width="596" height="36" rx="14" fill="#161b22"/>
105
+ <rect x="640" y="68" width="596" height="18" fill="#161b22"/>
106
+ <circle cx="666" cy="68" r="6" fill="#ef4444" opacity="0.7"/>
107
+ <circle cx="686" cy="68" r="6" fill="#f59e0b" opacity="0.7"/>
108
+ <circle cx="706" cy="68" r="6" fill="#22c55e" opacity="0.7"/>
109
+ <text x="918" y="73" font-size="10" fill="#484f58" text-anchor="middle">kodelyth-ecc bash</text>
110
+
111
+ <!-- Terminal content -->
112
+ <text x="668" y="118" font-size="12" fill="#484f58" font-family="'Courier New', monospace">$</text>
113
+ <text x="682" y="118" font-size="12" fill="#34d399" font-family="'Courier New', monospace">npx kodelyth-ecc</text>
114
+
115
+ <text x="668" y="148" font-size="11" fill="#a78bfa" font-family="'Courier New', monospace">✓ Kodelyth ECC v1.7.0</text>
116
+ <text x="668" y="166" font-size="11" fill="#6e7681" font-family="'Courier New', monospace"> Installing 70 agents, 194 skills, 97 commands...</text>
117
+ <text x="668" y="184" font-size="11" fill="#6e7681" font-family="'Courier New', monospace"> Wiring 22+ hooks · 14 rules · local memory</text>
118
+ <text x="668" y="202" font-size="11" fill="#34d399" font-family="'Courier New', monospace"> Done in 2.1s</text>
119
+
120
+ <line x1="668" y1="218" x2="1200" y2="218" stroke="#21262d" stroke-width="1"/>
121
+
122
+ <!-- Routing demo -->
123
+ <text x="668" y="242" font-size="11" fill="#484f58" font-family="'Courier New', monospace">You: "I've been stuck on this bug for 2 hours"</text>
124
+ <text x="668" y="264" font-size="11" fill="#a78bfa" font-family="'Courier New', monospace">→ Routing to debug-detective</text>
125
+ <text x="668" y="284" font-size="11" fill="#6e7681" font-family="'Courier New', monospace"> (frustration + time signal matched tier-2)</text>
126
+
127
+ <line x1="668" y1="300" x2="1200" y2="300" stroke="#21262d" stroke-width="1"/>
128
+
129
+ <!-- Parallel demo -->
130
+ <text x="668" y="322" font-size="11" fill="#484f58" font-family="'Courier New', monospace">You: /team-review</text>
131
+ <text x="668" y="342" font-size="11" fill="#fbbf24" font-family="'Courier New', monospace"> Firing 4 agents simultaneously...</text>
132
+ <text x="668" y="360" font-size="10" fill="#a78bfa" font-family="'Courier New', monospace"> [1] code-reviewer ████████████ done</text>
133
+ <text x="668" y="376" font-size="10" fill="#ef4444" font-family="'Courier New', monospace"> [2] security-reviewer ████████████ done</text>
134
+ <text x="668" y="392" font-size="10" fill="#fbbf24" font-family="'Courier New', monospace"> [3] performance ████████████ done</text>
135
+ <text x="668" y="408" font-size="10" fill="#60a5fa" font-family="'Courier New', monospace"> [4] api-guardian ████████████ done</text>
136
+ <text x="668" y="428" font-size="11" fill="#34d399" font-family="'Courier New', monospace"> 60 min → 15 min · 1 CRITICAL found</text>
137
+
138
+ <line x1="668" y1="444" x2="1200" y2="444" stroke="#21262d" stroke-width="1"/>
139
+
140
+ <!-- Dashboard demo -->
141
+ <text x="668" y="466" font-size="11" fill="#484f58" font-family="'Courier New', monospace">$ npx kodelyth-ecc dashboard</text>
142
+ <text x="668" y="486" font-size="11" fill="#38bdf8" font-family="'Courier New', monospace">✓ Dashboard → http://127.0.0.1:5747</text>
143
+ <text x="668" y="504" font-size="11" fill="#6e7681" font-family="'Courier New', monospace"> SSE live · zero telemetry · localhost only</text>
144
+
145
+ <text x="668" y="540" font-size="10" fill="#484f58" font-family="'Courier New', monospace">336 tests passing · MIT · Node 18+</text>
146
+ <text x="668" y="558" font-size="10" fill="#484f58" font-family="'Courier New', monospace">npm i -g kodelyth-ecc OR npx kodelyth-ecc</text>
128
147
  </svg>