-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdebug_render.html
More file actions
12 lines (12 loc) · 19.9 KB
/
debug_render.html
File metadata and controls
12 lines (12 loc) · 19.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
<!DOCTYPE html>
<html><head><meta charset="utf-8"></head>
<body>
<script type="module">
import { exportToCanvas } from "https://esm.sh/excalidraw@0.17.6";
const data = {"type": "excalidraw", "version": 2, "source": "https://excalidraw.com", "elements": [{"id": "title_main", "type": "text", "x": 200, "y": 18, "width": 1400, "height": 40, "text": "DevToDollars Second Brain Architecture", "originalText": "DevToDollars Second Brain Architecture", "fontSize": 28, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#1b1b1d", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 1, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 101001}, {"id": "hooks_container", "type": "rectangle", "x": 30, "y": 145, "width": 385, "height": 570, "strokeColor": "#bdbdbd", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 1, "strokeStyle": "dashed", "roughness": 0, "opacity": 100, "text": "", "originalText": "", "fontSize": 16, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "boundElements": [], "seed": 101002}, {"id": "memory_container", "type": "rectangle", "x": 450, "y": 145, "width": 660, "height": 570, "strokeColor": "#ffca28", "backgroundColor": "#1b1b1d", "fillStyle": "solid", "strokeWidth": 3, "roughness": 0, "opacity": 100, "text": "", "originalText": "", "fontSize": 16, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "boundElements": [], "seed": 101003}, {"id": "skills_container", "type": "rectangle", "x": 1150, "y": 145, "width": 390, "height": 570, "strokeColor": "#bdbdbd", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 1, "strokeStyle": "dashed", "roughness": 0, "opacity": 100, "text": "", "originalText": "", "fontSize": 16, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "boundElements": [], "seed": 101004}, {"id": "search_container", "type": "rectangle", "x": 30, "y": 755, "width": 1510, "height": 265, "strokeColor": "#00813a", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 1, "strokeStyle": "dashed", "roughness": 0, "opacity": 100, "text": "", "originalText": "", "fontSize": 16, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "boundElements": [], "seed": 101005}, {"id": "hooks_heading", "type": "text", "x": 52, "y": 158, "width": 120, "height": 24, "text": "HOOKS", "originalText": "HOOKS", "fontSize": 16, "fontFamily": 2, "textAlign": "left", "verticalAlign": "middle", "strokeColor": "#606060", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 1, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 101006}, {"id": "memory_heading", "type": "text", "x": 470, "y": 158, "width": 260, "height": 24, "text": "MEMORY LAYER", "originalText": "MEMORY LAYER", "fontSize": 16, "fontFamily": 2, "textAlign": "left", "verticalAlign": "middle", "strokeColor": "#ffca28", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 1, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 101007}, {"id": "skills_heading", "type": "text", "x": 1170, "y": 158, "width": 120, "height": 24, "text": "SKILLS", "originalText": "SKILLS", "fontSize": 16, "fontFamily": 2, "textAlign": "left", "verticalAlign": "middle", "strokeColor": "#606060", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 1, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 101008}, {"id": "search_heading", "type": "text", "x": 52, "y": 768, "width": 260, "height": 24, "text": "MEMORY SEARCH", "originalText": "MEMORY SEARCH", "fontSize": 16, "fontFamily": 2, "textAlign": "left", "verticalAlign": "middle", "strokeColor": "#00813a", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 1, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 101009}, {"id": "hook_session_start", "type": "rectangle", "x": 55, "y": 200, "width": 340, "height": 68, "text": "SessionStart\nInjects SOUL \u00b7 USER \u00b7 MEMORY into context", "originalText": "SessionStart\nInjects SOUL \u00b7 USER \u00b7 MEMORY into context", "fontSize": 13, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#ffca28", "backgroundColor": "#fff8e1", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 102001}, {"id": "hook_pre_compact", "type": "rectangle", "x": 55, "y": 298, "width": 340, "height": 68, "text": "PreCompact\nSave context before compression", "originalText": "PreCompact\nSave context before compression", "fontSize": 13, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#c87020", "backgroundColor": "#fff3e0", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 102002}, {"id": "hook_stop", "type": "rectangle", "x": 55, "y": 396, "width": 340, "height": 68, "text": "Stop (SessionEnd)\nAppend entry to daily log", "originalText": "Stop (SessionEnd)\nAppend entry to daily log", "fontSize": 13, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#343434", "backgroundColor": "#f5f5f5", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 102003}, {"id": "hook_post_tool", "type": "rectangle", "x": 55, "y": 494, "width": 340, "height": 68, "text": "PostToolUse (Write / Edit)\nReindex Memory/ on file change", "originalText": "PostToolUse (Write / Edit)\nReindex Memory/ on file change", "fontSize": 13, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#343434", "backgroundColor": "#f5f5f5", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 102004}, {"id": "mem_soul", "type": "rectangle", "x": 470, "y": 200, "width": 200, "height": 68, "text": "SOUL.md\nPersonality & Rules", "originalText": "SOUL.md\nPersonality & Rules", "fontSize": 13, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#ffca28", "backgroundColor": "#343434", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 103001}, {"id": "mem_user", "type": "rectangle", "x": 470, "y": 300, "width": 200, "height": 68, "text": "USER.md\nProfile & Business Context", "originalText": "USER.md\nProfile & Business Context", "fontSize": 13, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#ffca28", "backgroundColor": "#424242", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 103002}, {"id": "mem_memory", "type": "rectangle", "x": 470, "y": 400, "width": 200, "height": 68, "text": "MEMORY.md\nFacts \u00b7 Decisions \u00b7 Lessons", "originalText": "MEMORY.md\nFacts \u00b7 Decisions \u00b7 Lessons", "fontSize": 13, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#ffca28", "backgroundColor": "#424242", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 103003}, {"id": "mem_daily", "type": "rectangle", "x": 470, "y": 500, "width": 200, "height": 80, "text": "daily/ logs\n2026-04-05.md\nAppend-only session entries", "originalText": "daily/ logs\n2026-04-05.md\nAppend-only session entries", "fontSize": 12, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#00c65a", "backgroundColor": "#1b3a2a", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 103004}, {"id": "mem_evidence", "type": "rectangle", "x": 692, "y": 200, "width": 398, "height": 380, "text": "SessionStart injects:\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n--- SOUL.md ---\npersonality \u00b7 rules \u00b7 boundaries\n\n--- USER.md ---\nAmirali \u00b7 DevToDollars \u00b7 Toronto\n\n--- MEMORY.md ---\ndecisions \u00b7 lessons \u00b7 active projects\n\n--- daily/2026-04-05.md ---\n[session log entries...]\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\u2192 injected as system-reminder", "originalText": "SessionStart injects:\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n--- SOUL.md ---\npersonality \u00b7 rules \u00b7 boundaries\n\n--- USER.md ---\nAmirali \u00b7 DevToDollars \u00b7 Toronto\n\n--- MEMORY.md ---\ndecisions \u00b7 lessons \u00b7 active projects\n\n--- daily/2026-04-05.md ---\n[session log entries...]\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\u2192 injected as system-reminder", "fontSize": 12, "fontFamily": 3, "textAlign": "left", "verticalAlign": "top", "strokeColor": "#ffca28", "backgroundColor": "#0f0f10", "fillStyle": "solid", "strokeWidth": 1, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 103005}, {"id": "skill_excalidraw", "type": "rectangle", "x": 1175, "y": 200, "width": 340, "height": 68, "text": "excalidraw-diagram\nGenerate architecture diagrams", "originalText": "excalidraw-diagram\nGenerate architecture diagrams", "fontSize": 13, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#343434", "backgroundColor": "#f5f5f5", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 104001}, {"id": "skill_linkedin", "type": "rectangle", "x": 1175, "y": 298, "width": 340, "height": 68, "text": "linkedin\nDraft posts \u00b7 Prospect research", "originalText": "linkedin\nDraft posts \u00b7 Prospect research", "fontSize": 13, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#343434", "backgroundColor": "#f5f5f5", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 104002}, {"id": "skill_prd", "type": "rectangle", "x": 1175, "y": 396, "width": 340, "height": 68, "text": "create-second-brain-prd\nGenerate phased build PRD", "originalText": "create-second-brain-prd\nGenerate phased build PRD", "fontSize": 13, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#343434", "backgroundColor": "#f5f5f5", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 104003}, {"id": "skill_mcp", "type": "rectangle", "x": 1175, "y": 494, "width": 340, "height": 68, "text": "LinkedIn MCP\nsearch \u00b7 profiles \u00b7 inbox \u00b7 messages", "originalText": "LinkedIn MCP\nsearch \u00b7 profiles \u00b7 inbox \u00b7 messages", "fontSize": 13, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#c87020", "backgroundColor": "#fff3e0", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 104004}, {"id": "search_indexer", "type": "rectangle", "x": 55, "y": 795, "width": 255, "height": 72, "text": "memory_index.py\nChunk + embed Memory/ files", "originalText": "memory_index.py\nChunk + embed Memory/ files", "fontSize": 13, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#343434", "backgroundColor": "#f5f5f5", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 105001}, {"id": "search_db", "type": "rectangle", "x": 365, "y": 795, "width": 215, "height": 72, "text": "memory.db\nFTS5 + vector store", "originalText": "memory.db\nFTS5 + vector store", "fontSize": 13, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#00813a", "backgroundColor": "#e6f4ea", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 105002}, {"id": "search_cli", "type": "rectangle", "x": 635, "y": 795, "width": 255, "height": 72, "text": "memory_search.py\nhybrid RAG 0.7v + 0.3k", "originalText": "memory_search.py\nhybrid RAG 0.7v + 0.3k", "fontSize": 13, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#343434", "backgroundColor": "#f5f5f5", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 105003}, {"id": "search_venv", "type": "rectangle", "x": 945, "y": 795, "width": 215, "height": 72, "text": ".venv\nfastembed (ONNX)\nisolated dependencies", "originalText": ".venv\nfastembed (ONNX)\nisolated dependencies", "fontSize": 12, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#424242", "backgroundColor": "#fafafa", "fillStyle": "solid", "strokeWidth": 1, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 105004}, {"id": "search_evidence", "type": "rectangle", "x": 1215, "y": 795, "width": 310, "height": 190, "text": "$ python memory_search.py \\\n \"fractional CTO\"\n\n[1] 0.48 | USER.md\n His Business: DevToDollars\n\n[2] 0.43 | SOUL.md\n Context: Who You Work With\n\n[3] 0.40 | USER.md\n Technical Stack & Expertise", "originalText": "$ python memory_search.py \\\n \"fractional CTO\"\n\n[1] 0.48 | USER.md\n His Business: DevToDollars\n\n[2] 0.43 | SOUL.md\n Context: Who You Work With\n\n[3] 0.40 | USER.md\n Technical Stack & Expertise", "fontSize": 12, "fontFamily": 3, "textAlign": "left", "verticalAlign": "top", "strokeColor": "#ffca28", "backgroundColor": "#0f0f10", "fillStyle": "solid", "strokeWidth": 1, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 105005}, {"id": "arrow_session_mem", "type": "arrow", "x": 395, "y": 234, "width": 55, "height": 0, "points": [[0, 0], [55, 0]], "startBinding": null, "endBinding": null, "strokeColor": "#ffca28", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 3, "roughness": 0, "opacity": 100, "startArrowhead": null, "endArrowhead": "arrow", "boundElements": [], "seed": 106001}, {"id": "arrow_compact_mem", "type": "arrow", "x": 395, "y": 332, "width": 55, "height": 0, "points": [[0, 0], [55, 0]], "startBinding": null, "endBinding": null, "strokeColor": "#c87020", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "startArrowhead": null, "endArrowhead": "arrow", "boundElements": [], "seed": 106002}, {"id": "arrow_stop_daily", "type": "arrow", "x": 395, "y": 430, "width": 75, "height": 110, "points": [[0, 0], [75, 110]], "startBinding": null, "endBinding": null, "strokeColor": "#424242", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "startArrowhead": null, "endArrowhead": "arrow", "boundElements": [], "seed": 106003}, {"id": "arrow_posttool_index", "type": "arrow", "x": 225, "y": 562, "width": 45, "height": 233, "points": [[0, 0], [-45, 233]], "startBinding": null, "endBinding": null, "strokeColor": "#424242", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 2, "strokeStyle": "dashed", "roughness": 0, "opacity": 100, "startArrowhead": null, "endArrowhead": "arrow", "boundElements": [], "seed": 106004}, {"id": "arrow_mem_excalidraw", "type": "arrow", "x": 1110, "y": 234, "width": 65, "height": 0, "points": [[0, 0], [65, 0]], "startBinding": null, "endBinding": null, "strokeColor": "#ffca28", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 3, "roughness": 0, "opacity": 100, "startArrowhead": null, "endArrowhead": "arrow", "boundElements": [], "seed": 106005}, {"id": "arrow_mem_linkedin", "type": "arrow", "x": 1110, "y": 332, "width": 65, "height": 0, "points": [[0, 0], [65, 0]], "startBinding": null, "endBinding": null, "strokeColor": "#ffca28", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 3, "roughness": 0, "opacity": 100, "startArrowhead": null, "endArrowhead": "arrow", "boundElements": [], "seed": 106006}, {"id": "arrow_mem_prd", "type": "arrow", "x": 1110, "y": 430, "width": 65, "height": 0, "points": [[0, 0], [65, 0]], "startBinding": null, "endBinding": null, "strokeColor": "#ffca28", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 3, "roughness": 0, "opacity": 100, "startArrowhead": null, "endArrowhead": "arrow", "boundElements": [], "seed": 106007}, {"id": "arrow_linkedin_mcp", "type": "arrow", "x": 1345, "y": 366, "width": 0, "height": 128, "points": [[0, 0], [0, 128]], "startBinding": null, "endBinding": null, "strokeColor": "#c87020", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "startArrowhead": null, "endArrowhead": "arrow", "boundElements": [], "seed": 106008}, {"id": "arrow_index_db", "type": "arrow", "x": 310, "y": 831, "width": 55, "height": 0, "points": [[0, 0], [55, 0]], "startBinding": null, "endBinding": null, "strokeColor": "#343434", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "startArrowhead": null, "endArrowhead": "arrow", "boundElements": [], "seed": 106009}, {"id": "arrow_db_search", "type": "arrow", "x": 580, "y": 831, "width": 55, "height": 0, "points": [[0, 0], [55, 0]], "startBinding": null, "endBinding": null, "strokeColor": "#343434", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 2, "roughness": 0, "opacity": 100, "startArrowhead": null, "endArrowhead": "arrow", "boundElements": [], "seed": 106010}, {"id": "arrow_search_mem", "type": "arrow", "x": 762, "y": 795, "width": 0, "height": 80, "points": [[0, 0], [0, -80]], "startBinding": null, "endBinding": null, "strokeColor": "#00813a", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 2, "strokeStyle": "dashed", "roughness": 0, "opacity": 100, "startArrowhead": null, "endArrowhead": "arrow", "boundElements": [], "seed": 106011}, {"id": "label_loads", "type": "text", "x": 404, "y": 216, "width": 52, "height": 16, "text": "loads", "originalText": "loads", "fontSize": 11, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#ffca28", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 1, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 107001}, {"id": "label_saves", "type": "text", "x": 404, "y": 314, "width": 52, "height": 16, "text": "saves", "originalText": "saves", "fontSize": 11, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#c87020", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 1, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 107002}, {"id": "label_powers", "type": "text", "x": 1114, "y": 310, "width": 60, "height": 16, "text": "powers", "originalText": "powers", "fontSize": 11, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#ffca28", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 1, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 107003}, {"id": "label_search_up", "type": "text", "x": 775, "y": 748, "width": 100, "height": 16, "text": "search results", "originalText": "search results", "fontSize": 11, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#00813a", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 1, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 107004}, {"id": "label_reindex", "type": "text", "x": 105, "y": 660, "width": 100, "height": 16, "text": "reindex", "originalText": "reindex", "fontSize": 11, "fontFamily": 2, "textAlign": "center", "verticalAlign": "middle", "strokeColor": "#606060", "backgroundColor": "transparent", "fillStyle": "solid", "strokeWidth": 1, "roughness": 0, "opacity": 100, "boundElements": [], "seed": 107005}], "appState": {"viewBackgroundColor": "#ffffff", "gridSize": 20}, "files": {}};
try {
const canvas = await exportToCanvas({ elements: data.elements, appState: { ...data.appState, exportWithDarkMode: false }, files: data.files || {} });
document.body.appendChild(canvas);
document.title = "READY";
} catch(e) { document.title = "ERROR:" + e.message; }
</script></body></html>