mirror of
https://github.com/outbackdingo/optimclaw.git
synced 2026-08-25 14:53:34 +00:00
docs: mesh cluster documentation, SVG diagrams, and ironclaw->optimclaw rename
- MESH_CLUSTER.md: full documentation for autonomous AI mesh network - LAZY_TOOLS.md: lazy tool loading for smaller LLMs - mesh-architecture.svg: colorful network topology diagram - task-routing.svg: scoring algorithm visualization - pq-handshake.svg: ML-KEM-768 key exchange sequence diagram - HTML docs with dark theme styling - Renamed ironclaw references to optimclaw in .env.example and README Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 500" font-family="Inter, system-ui, sans-serif">
|
||||
<defs>
|
||||
<linearGradient id="bg2" x1="0%" y1="0%" x2="100%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:#1a1a2e"/>
|
||||
<stop offset="100%" style="stop-color:#16213e"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
|
||||
<rect width="800" height="500" fill="url(#bg2)" rx="12"/>
|
||||
|
||||
<text x="400" y="40" text-anchor="middle" fill="#e94560" font-size="22" font-weight="700">Task Routing Algorithm</text>
|
||||
<text x="400" y="60" text-anchor="middle" fill="#8899aa" font-size="11">Intelligent capability-based task placement across the mesh</text>
|
||||
|
||||
<!-- Flow diagram -->
|
||||
<!-- Step 1: Task arrives -->
|
||||
<rect x="300" y="80" width="200" height="45" rx="8" fill="#0f3460" stroke="#fab283" stroke-width="2"/>
|
||||
<text x="400" y="107" text-anchor="middle" fill="#fab283" font-size="13" font-weight="600">Task Arrives</text>
|
||||
|
||||
<line x1="400" y1="125" x2="400" y2="150" stroke="#555" stroke-width="2" marker-end="url(#arrow)"/>
|
||||
|
||||
<!-- Step 2: Hard filters -->
|
||||
<rect x="250" y="150" width="300" height="60" rx="8" fill="#0f3460" stroke="#e94560" stroke-width="2"/>
|
||||
<text x="400" y="172" text-anchor="middle" fill="#e94560" font-size="12" font-weight="600">Hard Filters (Pass/Fail)</text>
|
||||
<text x="400" y="190" text-anchor="middle" fill="#8899aa" font-size="10">Required model? Required tools? Min VRAM?</text>
|
||||
<text x="400" y="203" text-anchor="middle" fill="#e06c75" font-size="10">Nodes failing any filter are excluded</text>
|
||||
|
||||
<line x1="400" y1="210" x2="400" y2="235" stroke="#555" stroke-width="2"/>
|
||||
|
||||
<!-- Step 3: Scoring -->
|
||||
<rect x="200" y="235" width="400" height="110" rx="8" fill="#0f3460" stroke="#00d4aa" stroke-width="2"/>
|
||||
<text x="400" y="258" text-anchor="middle" fill="#00d4aa" font-size="13" font-weight="600">Soft Scoring (0.0 - 1.0)</text>
|
||||
|
||||
<g fill="#ccc" font-size="11" font-family="monospace">
|
||||
<text x="230" y="280" fill="#fab283">35%</text><text x="270" y="280">(1.0 - load)</text><text x="440" y="280" fill="#7fd88f">prefer idle nodes</text>
|
||||
<text x="230" y="298" fill="#fab283">25%</text><text x="270" y="298">(vram_free / vram_total)</text><text x="440" y="298" fill="#7fd88f">prefer GPU headroom</text>
|
||||
<text x="230" y="316" fill="#fab283">15%</text><text x="270" y="316">(mem_free / mem_total)</text><text x="440" y="316" fill="#7fd88f">prefer RAM headroom</text>
|
||||
<text x="230" y="334" fill="#fab283">15%</text><text x="270" y="334">(1.0 / hop_count)</text><text x="440" y="334" fill="#7fd88f">prefer closer nodes</text>
|
||||
<text x="230" y="334" fill="#fab283">10%</text><text x="270" y="334">(model_match)</text><text x="440" y="334" fill="#7fd88f">prefer exact match</text>
|
||||
</g>
|
||||
|
||||
<line x1="400" y1="345" x2="400" y2="370" stroke="#555" stroke-width="2"/>
|
||||
|
||||
<!-- Step 4: Selection -->
|
||||
<rect x="275" y="370" width="250" height="45" rx="8" fill="#0f3460" stroke="#5c9cf5" stroke-width="2"/>
|
||||
<text x="400" y="397" text-anchor="middle" fill="#5c9cf5" font-size="13" font-weight="600">Select Highest Score</text>
|
||||
|
||||
<!-- Fork: local vs remote -->
|
||||
<line x1="340" y1="415" x2="250" y2="450" stroke="#7fd88f" stroke-width="2"/>
|
||||
<line x1="460" y1="415" x2="550" y2="450" stroke="#fab283" stroke-width="2"/>
|
||||
|
||||
<rect x="150" y="445" width="160" height="35" rx="6" fill="#303A30" stroke="#7fd88f" stroke-width="1.5"/>
|
||||
<text x="230" y="467" text-anchor="middle" fill="#7fd88f" font-size="12" font-weight="600">Execute Locally</text>
|
||||
|
||||
<rect x="470" y="445" width="200" height="35" rx="6" fill="#3A3030" stroke="#fab283" stroke-width="1.5"/>
|
||||
<text x="570" y="467" text-anchor="middle" fill="#fab283" font-size="12" font-weight="600">Route to Remote Peer</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.6 KiB |
Reference in New Issue
Block a user