graph.html 202 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>graphify - graphify-out/graph.html</title>
  6. <script src="https://unpkg.com/vis-network@9.1.6/standalone/umd/vis-network.min.js"
  7. integrity="sha384-Ux6phic9PEHJ38YtrijhkzyJ8yQlH8i/+buBR8s3mAZOJrP1gwyvAcIYl3GWtpX1"
  8. crossorigin="anonymous"></script>
  9. <style>
  10. * { box-sizing: border-box; margin: 0; padding: 0; }
  11. body { background: #0f0f1a; color: #e0e0e0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; display: flex; height: 100vh; overflow: hidden; }
  12. #graph { flex: 1; }
  13. #sidebar { width: 280px; background: #1a1a2e; border-left: 1px solid #2a2a4e; display: flex; flex-direction: column; overflow: hidden; }
  14. #search-wrap { padding: 12px; border-bottom: 1px solid #2a2a4e; }
  15. #search { width: 100%; background: #0f0f1a; border: 1px solid #3a3a5e; color: #e0e0e0; padding: 7px 10px; border-radius: 6px; font-size: 13px; outline: none; }
  16. #search:focus { border-color: #4E79A7; }
  17. #search-results { max-height: 140px; overflow-y: auto; padding: 4px 12px; border-bottom: 1px solid #2a2a4e; display: none; }
  18. .search-item { padding: 4px 6px; cursor: pointer; border-radius: 4px; font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  19. .search-item:hover { background: #2a2a4e; }
  20. #info-panel { padding: 14px; border-bottom: 1px solid #2a2a4e; min-height: 140px; }
  21. #info-panel h3 { font-size: 13px; color: #aaa; margin-bottom: 8px; text-transform: uppercase; letter-spacing: 0.05em; }
  22. #info-content { font-size: 13px; color: #ccc; line-height: 1.6; }
  23. #info-content .field { margin-bottom: 5px; }
  24. #info-content .field b { color: #e0e0e0; }
  25. #info-content .empty { color: #555; font-style: italic; }
  26. .neighbor-link { display: block; padding: 2px 6px; margin: 2px 0; border-radius: 3px; cursor: pointer; font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; border-left: 3px solid #333; }
  27. .neighbor-link:hover { background: #2a2a4e; }
  28. #neighbors-list { max-height: 160px; overflow-y: auto; margin-top: 4px; }
  29. #legend-wrap { flex: 1; overflow-y: auto; padding: 12px; }
  30. #legend-wrap h3 { font-size: 13px; color: #aaa; margin-bottom: 10px; text-transform: uppercase; letter-spacing: 0.05em; }
  31. .legend-item { display: flex; align-items: center; gap: 8px; padding: 4px 0; cursor: pointer; border-radius: 4px; font-size: 12px; }
  32. .legend-item:hover { background: #2a2a4e; padding-left: 4px; }
  33. .legend-item.dimmed { opacity: 0.35; }
  34. .legend-dot { width: 12px; height: 12px; border-radius: 50%; flex-shrink: 0; }
  35. .legend-label { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  36. .legend-count { color: #666; font-size: 11px; }
  37. #stats { padding: 10px 14px; border-top: 1px solid #2a2a4e; font-size: 11px; color: #555; }
  38. #legend-controls { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; padding: 4px 0; }
  39. #legend-controls label { display: flex; align-items: center; gap: 6px; cursor: pointer; font-size: 12px; color: #aaa; user-select: none; }
  40. #legend-controls label:hover { color: #e0e0e0; }
  41. .legend-cb, #select-all-cb { appearance: none; -webkit-appearance: none; width: 14px; height: 14px; border: 1.5px solid #3a3a5e; border-radius: 3px; background: #0f0f1a; cursor: pointer; position: relative; flex-shrink: 0; }
  42. .legend-cb:checked, #select-all-cb:checked { background: #4E79A7; border-color: #4E79A7; }
  43. .legend-cb:checked::after, #select-all-cb:checked::after { content: ''; position: absolute; left: 3.5px; top: 1px; width: 4px; height: 7px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg); }
  44. #select-all-cb:indeterminate { background: #4E79A7; border-color: #4E79A7; }
  45. #select-all-cb:indeterminate::after { content: ''; position: absolute; left: 2px; top: 5px; width: 8px; height: 2px; background: #fff; border: none; transform: none; }
  46. </style>
  47. </head>
  48. <body>
  49. <div id="graph"></div>
  50. <div id="sidebar">
  51. <div id="search-wrap">
  52. <input id="search" type="text" placeholder="Search nodes..." autocomplete="off">
  53. <div id="search-results"></div>
  54. </div>
  55. <div id="info-panel">
  56. <h3>Node Info</h3>
  57. <div id="info-content"><span class="empty">Click a node to inspect it</span></div>
  58. </div>
  59. <div id="legend-wrap">
  60. <h3>Communities</h3>
  61. <div id="legend-controls">
  62. <label><input type="checkbox" id="select-all-cb" checked onchange="toggleAllCommunities(!this.checked)">Select All</label>
  63. </div>
  64. <div id="legend"></div>
  65. </div>
  66. <div id="stats">231 nodes &middot; 406 edges &middot; 23 communities</div>
  67. </div>
  68. <script>
  69. const RAW_NODES = [{"id": "opencode_plugins_graphify_graphifyplugin", "label": "GraphifyPlugin()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "GraphifyPlugin()", "community": 11, "community_name": "graphify.js", "source_file": ".opencode/plugins/graphify.js", "file_type": "code", "degree": 1}, {"id": "plan", "label": "PLAN.md", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "PLAN.md", "community": 0, "community_name": "Open Issues", "source_file": "PLAN.md", "file_type": "document", "degree": 1}, {"id": "plan_1_impact_80_effect_mapping", "label": "1. Impact 80 Effect Mapping", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "1. Impact 80 Effect Mapping", "community": 0, "community_name": "Open Issues", "source_file": "PLAN.md", "file_type": "document", "degree": 1}, {"id": "plan_2_cross_platform_hid_backends", "label": "2. Cross-Platform HID Backends", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "2. Cross-Platform HID Backends", "community": 0, "community_name": "Open Issues", "source_file": "PLAN.md", "file_type": "document", "degree": 1}, {"id": "plan_3_documentation_and_release_artifacts", "label": "3. Documentation and Release Artifacts", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "3. Documentation and Release Artifacts", "community": 0, "community_name": "Open Issues", "source_file": "PLAN.md", "file_type": "document", "degree": 1}, {"id": "plan_open_issues", "label": "Open Issues", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 15.2, "font": {"size": 12, "color": "#ffffff"}, "title": "Open Issues", "community": 0, "community_name": "Open Issues", "source_file": "PLAN.md", "file_type": "document", "degree": 4}, {"id": "plan_quick_commands_for_next_session", "label": "Quick Commands for Next Session", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Quick Commands for Next Session", "community": 0, "community_name": "Open Issues", "source_file": "PLAN.md", "file_type": "document", "degree": 1}, {"id": "plan_status", "label": "Status", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Status", "community": 0, "community_name": "Open Issues", "source_file": "PLAN.md", "file_type": "document", "degree": 1}, {"id": "plan_wobkey_rgb_cli_implementation_plan", "label": "Wobkey RGB CLI \u2014 Implementation Plan", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 15.2, "font": {"size": 12, "color": "#ffffff"}, "title": "Wobkey RGB CLI \u2014 Implementation Plan", "community": 0, "community_name": "Open Issues", "source_file": "PLAN.md", "file_type": "document", "degree": 4}, {"id": "cmd_wobkey_main", "label": "main.go", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 36.1, "font": {"size": 12, "color": "#ffffff"}, "title": "main.go", "community": 1, "community_name": "main.go", "source_file": "cmd/wobkey/main.go", "file_type": "code", "degree": 20}, {"id": "cmd_wobkey_main_execute", "label": "Execute()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "Execute()", "community": 1, "community_name": "main.go", "source_file": "cmd/wobkey/main.go", "file_type": "code", "degree": 2}, {"id": "cmd_wobkey_main_main", "label": "main()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "main()", "community": 1, "community_name": "main.go", "source_file": "cmd/wobkey/main.go", "file_type": "code", "degree": 2}, {"id": "cmd_wobkey_rgb_brightness", "label": "brightness.go", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 21.7, "font": {"size": 12, "color": "#ffffff"}, "title": "brightness.go", "community": 1, "community_name": "main.go", "source_file": "cmd/wobkey/rgb/brightness.go", "file_type": "code", "degree": 9}, {"id": "cmd_wobkey_rgb_color", "label": "color.go", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 21.7, "font": {"size": 12, "color": "#ffffff"}, "title": "color.go", "community": 1, "community_name": "main.go", "source_file": "cmd/wobkey/rgb/color.go", "file_type": "code", "degree": 9}, {"id": "cmd_wobkey_rgb_disable", "label": "disable.go", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "disable.go", "community": 1, "community_name": "main.go", "source_file": "cmd/wobkey/rgb/disable.go", "file_type": "code", "degree": 5}, {"id": "cmd_wobkey_rgb_effect", "label": "effect.go", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 25.7, "font": {"size": 12, "color": "#ffffff"}, "title": "effect.go", "community": 1, "community_name": "main.go", "source_file": "cmd/wobkey/rgb/effect.go", "file_type": "code", "degree": 12}, {"id": "cmd_wobkey_rgb_enable", "label": "enable.go", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "enable.go", "community": 1, "community_name": "main.go", "source_file": "cmd/wobkey/rgb/enable.go", "file_type": "code", "degree": 5}, {"id": "cmd_wobkey_rgb_info", "label": "info.go", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 23.0, "font": {"size": 12, "color": "#ffffff"}, "title": "info.go", "community": 1, "community_name": "main.go", "source_file": "cmd/wobkey/rgb/info.go", "file_type": "code", "degree": 10}, {"id": "cmd_wobkey_rgb_mode", "label": "mode.go", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 21.7, "font": {"size": 12, "color": "#ffffff"}, "title": "mode.go", "community": 1, "community_name": "main.go", "source_file": "cmd/wobkey/rgb/mode.go", "file_type": "code", "degree": 9}, {"id": "cmd_wobkey_rgb_speed", "label": "speed.go", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 21.7, "font": {"size": 12, "color": "#ffffff"}, "title": "speed.go", "community": 1, "community_name": "main.go", "source_file": "cmd/wobkey/rgb/speed.go", "file_type": "code", "degree": 9}, {"id": "internal_rgb_effects", "label": "effects.go", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 29.6, "font": {"size": 12, "color": "#ffffff"}, "title": "effects.go", "community": 1, "community_name": "main.go", "source_file": "internal/rgb/effects.go", "file_type": "code", "degree": 15}, {"id": "internal_rgb_effects_parsehexcolor", "label": "ParseHexColor()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 15.2, "font": {"size": 12, "color": "#ffffff"}, "title": "ParseHexColor()", "community": 1, "community_name": "main.go", "source_file": "internal/rgb/effects.go", "file_type": "code", "degree": 4}, {"id": "internal_rgb_effects_test", "label": "effects_test.go", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 25.7, "font": {"size": 12, "color": "#ffffff"}, "title": "effects_test.go", "community": 1, "community_name": "main.go", "source_file": "internal/rgb/effects_test.go", "file_type": "code", "degree": 12}, {"id": "internal_rgb_effects_test_testparsehexcolor", "label": "TestParseHexColor()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "TestParseHexColor()", "community": 1, "community_name": "main.go", "source_file": "internal/rgb/effects_test.go", "file_type": "code", "degree": 3}, {"id": "internal_via_protocol", "label": "protocol.go", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 32.2, "font": {"size": 12, "color": "#ffffff"}, "title": "protocol.go", "community": 1, "community_name": "main.go", "source_file": "internal/via/protocol.go", "file_type": "code", "degree": 17}, {"id": "rgb_color", "label": "Color", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 15.2, "font": {"size": 12, "color": "#ffffff"}, "title": "Color", "community": 1, "community_name": "main.go", "source_file": "internal/rgb/effects.go", "file_type": "code", "degree": 4}, {"id": "rgb_color_hsv", "label": ".HSV()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".HSV()", "community": 1, "community_name": "main.go", "source_file": "internal/rgb/effects.go", "file_type": "code", "degree": 1}, {"id": "rgb_ledparam", "label": "LEDParam", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "LEDParam", "community": 1, "community_name": "main.go", "source_file": "internal/rgb/effects.go", "file_type": "code", "degree": 1}, {"id": "rgb_state", "label": "State", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "State", "community": 1, "community_name": "main.go", "source_file": "internal/rgb/effects.go", "file_type": "code", "degree": 3}, {"id": "readme", "label": "README.md", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "README.md", "community": 10, "community_name": "Wobkey RGB CLI", "source_file": "README.md", "file_type": "document", "degree": 1}, {"id": "readme_architecture", "label": "Architecture", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Architecture", "community": 10, "community_name": "Wobkey RGB CLI", "source_file": "README.md", "file_type": "document", "degree": 1}, {"id": "readme_cli_reference", "label": "CLI Reference", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "CLI Reference", "community": 10, "community_name": "Wobkey RGB CLI", "source_file": "README.md", "file_type": "document", "degree": 1}, {"id": "readme_installation", "label": "Installation", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Installation", "community": 10, "community_name": "Wobkey RGB CLI", "source_file": "README.md", "file_type": "document", "degree": 1}, {"id": "readme_linux_hid_device_permissions", "label": "Linux HID Device Permissions", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "Linux HID Device Permissions", "community": 10, "community_name": "Wobkey RGB CLI", "source_file": "README.md", "file_type": "document", "degree": 3}, {"id": "readme_option_1_quick_per_session", "label": "Option 1: Quick (Per Session)", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Option 1: Quick (Per Session)", "community": 10, "community_name": "Wobkey RGB CLI", "source_file": "README.md", "file_type": "document", "degree": 1}, {"id": "readme_option_2_permanent_udev_rule", "label": "Option 2: Permanent (udev Rule)", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Option 2: Permanent (udev Rule)", "community": 10, "community_name": "Wobkey RGB CLI", "source_file": "README.md", "file_type": "document", "degree": 1}, {"id": "readme_protocol", "label": "Protocol", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Protocol", "community": 10, "community_name": "Wobkey RGB CLI", "source_file": "README.md", "file_type": "document", "degree": 1}, {"id": "readme_supported_keyboards", "label": "Supported Keyboards", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Supported Keyboards", "community": 10, "community_name": "Wobkey RGB CLI", "source_file": "README.md", "file_type": "document", "degree": 1}, {"id": "readme_usage", "label": "Usage", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Usage", "community": 10, "community_name": "Wobkey RGB CLI", "source_file": "README.md", "file_type": "document", "degree": 1}, {"id": "readme_wobkey_rgb_cli", "label": "Wobkey RGB CLI", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 20.4, "font": {"size": 12, "color": "#ffffff"}, "title": "Wobkey RGB CLI", "community": 10, "community_name": "Wobkey RGB CLI", "source_file": "README.md", "file_type": "document", "degree": 8}, {"id": "opencode_plugins_graphify", "label": "graphify.js", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 15.2, "font": {"size": 12, "color": "#ffffff"}, "title": "graphify.js", "community": 11, "community_name": "graphify.js", "source_file": ".opencode/plugins/graphify.js", "file_type": "code", "degree": 4}, {"id": "opencode_plugins_graphify_rationale_4", "label": "IMPORTANT: keep the reminder string free of backticks and $(...) constructs.", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "IMPORTANT: keep the reminder string free of backticks and $(...) constructs.", "community": 11, "community_name": "graphify.js", "source_file": ".opencode/plugins/graphify.js", "file_type": "rationale", "degree": 1}, {"id": "claude_skills_graphify_references_exports", "label": "exports.md", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "exports.md", "community": 12, "community_name": "graphify reference: extra exports and benchmark", "source_file": ".claude/skills/graphify/references/exports.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_exports_graphify_reference_extra_exports_and_benchmark", "label": "graphify reference: extra exports and benchmark", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 20.4, "font": {"size": 12, "color": "#ffffff"}, "title": "graphify reference: extra exports and benchmark", "community": 12, "community_name": "graphify reference: extra exports and benchmark", "source_file": ".claude/skills/graphify/references/exports.md", "file_type": "document", "degree": 8}, {"id": "claude_skills_graphify_references_exports_step_6b_wiki_only_if_wiki_flag", "label": "Step 6b - Wiki (only if --wiki flag)", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 6b - Wiki (only if --wiki flag)", "community": 12, "community_name": "graphify reference: extra exports and benchmark", "source_file": ".claude/skills/graphify/references/exports.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_exports_step_7_neo4j_export_only_if_neo4j_or_neo4j_push_flag", "label": "Step 7 - Neo4j export (only if --neo4j or --neo4j-push flag)", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 7 - Neo4j export (only if --neo4j or --neo4j-push flag)", "community": 12, "community_name": "graphify reference: extra exports and benchmark", "source_file": ".claude/skills/graphify/references/exports.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_exports_step_7a_falkordb_export_only_if_falkordb_or_falkordb_push_flag", "label": "Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)", "community": 12, "community_name": "graphify reference: extra exports and benchmark", "source_file": ".claude/skills/graphify/references/exports.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_exports_step_7b_svg_export_only_if_svg_flag", "label": "Step 7b - SVG export (only if --svg flag)", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 7b - SVG export (only if --svg flag)", "community": 12, "community_name": "graphify reference: extra exports and benchmark", "source_file": ".claude/skills/graphify/references/exports.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_exports_step_7c_graphml_export_only_if_graphml_flag", "label": "Step 7c - GraphML export (only if --graphml flag)", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 7c - GraphML export (only if --graphml flag)", "community": 12, "community_name": "graphify reference: extra exports and benchmark", "source_file": ".claude/skills/graphify/references/exports.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_exports_step_7d_mcp_server_only_if_mcp_flag", "label": "Step 7d - MCP server (only if --mcp flag)", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 7d - MCP server (only if --mcp flag)", "community": 12, "community_name": "graphify reference: extra exports and benchmark", "source_file": ".claude/skills/graphify/references/exports.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_exports_step_8_token_reduction_benchmark_only_if_total_words_5000", "label": "Step 8 - Token reduction benchmark (only if total_words > 5000)", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 8 - Token reduction benchmark (only if total_words > 5000)", "community": 12, "community_name": "graphify reference: extra exports and benchmark", "source_file": ".claude/skills/graphify/references/exports.md", "file_type": "document", "degree": 1}, {"id": "opencode_opencode", "label": "opencode.json", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "opencode.json", "community": 13, "community_name": "opencode.json", "source_file": ".opencode/opencode.json", "file_type": "code", "degree": 2}, {"id": "opencode_opencode_plugin", "label": "plugin", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "plugin", "community": 13, "community_name": "opencode.json", "source_file": ".opencode/opencode.json", "file_type": "code", "degree": 1}, {"id": "opencode_opencode_schema", "label": "$schema", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "$schema", "community": 13, "community_name": "opencode.json", "source_file": ".opencode/opencode.json", "file_type": "code", "degree": 1}, {"id": "pkg_github_com_wobkey_rgb", "label": "github.com/wobkey/rgb", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "github.com/wobkey/rgb", "community": 14, "community_name": "github.com/wobkey/rgb", "source_file": "go.mod", "file_type": "code", "degree": 0}, {"id": "claude_skills_graphify_references_query", "label": "query.md", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "query.md", "community": 15, "community_name": "graphify reference: query, path, explain", "source_file": ".claude/skills/graphify/references/query.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_query_for_graphify_explain", "label": "For /graphify explain", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "For /graphify explain", "community": 15, "community_name": "graphify reference: query, path, explain", "source_file": ".claude/skills/graphify/references/query.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_query_for_graphify_path", "label": "For /graphify path", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "For /graphify path", "community": 15, "community_name": "graphify reference: query, path, explain", "source_file": ".claude/skills/graphify/references/query.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_query_graphify_reference_query_path_explain", "label": "graphify reference: query, path, explain", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "graphify reference: query, path, explain", "community": 15, "community_name": "graphify reference: query, path, explain", "source_file": ".claude/skills/graphify/references/query.md", "file_type": "document", "degree": 5}, {"id": "claude_skills_graphify_references_query_step_0_constrained_query_expansion_required_before_traversal", "label": "Step 0 \u2014 Constrained query expansion (REQUIRED before traversal)", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 0 \u2014 Constrained query expansion (REQUIRED before traversal)", "community": 15, "community_name": "graphify reference: query, path, explain", "source_file": ".claude/skills/graphify/references/query.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_query_step_1_traversal", "label": "Step 1 \u2014 Traversal", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 1 \u2014 Traversal", "community": 15, "community_name": "graphify reference: query, path, explain", "source_file": ".claude/skills/graphify/references/query.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_add_watch", "label": "add-watch.md", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "add-watch.md", "community": 16, "community_name": "graphify reference: add a URL and watch a folder", "source_file": ".claude/skills/graphify/references/add-watch.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_add_watch_for_graphify_add", "label": "For /graphify add", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "For /graphify add", "community": 16, "community_name": "graphify reference: add a URL and watch a folder", "source_file": ".claude/skills/graphify/references/add-watch.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_add_watch_for_watch", "label": "For --watch", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "For --watch", "community": 16, "community_name": "graphify reference: add a URL and watch a folder", "source_file": ".claude/skills/graphify/references/add-watch.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_add_watch_graphify_reference_add_a_url_and_watch_a_folder", "label": "graphify reference: add a URL and watch a folder", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "graphify reference: add a URL and watch a folder", "community": 16, "community_name": "graphify reference: add a URL and watch a folder", "source_file": ".claude/skills/graphify/references/add-watch.md", "file_type": "document", "degree": 3}, {"id": "claude_skills_graphify_references_hooks", "label": "hooks.md", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "hooks.md", "community": 17, "community_name": "graphify reference: commit hook and native CLAUDE.md integration", "source_file": ".claude/skills/graphify/references/hooks.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_hooks_for_git_commit_hook", "label": "For git commit hook", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "For git commit hook", "community": 17, "community_name": "graphify reference: commit hook and native CLAUDE.md integration", "source_file": ".claude/skills/graphify/references/hooks.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_hooks_for_native_claude_md_integration", "label": "For native CLAUDE.md integration", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "For native CLAUDE.md integration", "community": 17, "community_name": "graphify reference: commit hook and native CLAUDE.md integration", "source_file": ".claude/skills/graphify/references/hooks.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_hooks_graphify_reference_commit_hook_and_native_claude_md_integration", "label": "graphify reference: commit hook and native CLAUDE.md integration", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "graphify reference: commit hook and native CLAUDE.md integration", "community": 17, "community_name": "graphify reference: commit hook and native CLAUDE.md integration", "source_file": ".claude/skills/graphify/references/hooks.md", "file_type": "document", "degree": 3}, {"id": "claude_skills_graphify_references_update", "label": "update.md", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "update.md", "community": 18, "community_name": "graphify reference: incremental update and cluster-only", "source_file": ".claude/skills/graphify/references/update.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_update_for_cluster_only", "label": "For --cluster-only", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "For --cluster-only", "community": 18, "community_name": "graphify reference: incremental update and cluster-only", "source_file": ".claude/skills/graphify/references/update.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_update_for_update_incremental_re_extraction", "label": "For --update (incremental re-extraction)", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "For --update (incremental re-extraction)", "community": 18, "community_name": "graphify reference: incremental update and cluster-only", "source_file": ".claude/skills/graphify/references/update.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_update_graphify_reference_incremental_update_and_cluster_only", "label": "graphify reference: incremental update and cluster-only", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "graphify reference: incremental update and cluster-only", "community": 18, "community_name": "graphify reference: incremental update and cluster-only", "source_file": ".claude/skills/graphify/references/update.md", "file_type": "document", "degree": 3}, {"id": "claude_skills_graphify_references_github_and_merge", "label": "github-and-merge.md", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "github-and-merge.md", "community": 19, "community_name": "graphify reference: GitHub clone and cross-repo merge", "source_file": ".claude/skills/graphify/references/github-and-merge.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_github_and_merge_graphify_reference_github_clone_and_cross_repo_merge", "label": "graphify reference: GitHub clone and cross-repo merge", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "graphify reference: GitHub clone and cross-repo merge", "community": 19, "community_name": "graphify reference: GitHub clone and cross-repo merge", "source_file": ".claude/skills/graphify/references/github-and-merge.md", "file_type": "document", "degree": 2}, {"id": "claude_skills_graphify_references_github_and_merge_step_0_clone_github_repo_s_only_if_a_github_url_was_given", "label": "Step 0 - Clone GitHub repo(s) (only if a GitHub URL was given)", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 0 - Clone GitHub repo(s) (only if a GitHub URL was given)", "community": 19, "community_name": "graphify reference: GitHub clone and cross-repo merge", "source_file": ".claude/skills/graphify/references/github-and-merge.md", "file_type": "document", "degree": 1}, {"id": "hid_device", "label": "Device", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 20.4, "font": {"size": 12, "color": "#ffffff"}, "title": "Device", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid.go", "file_type": "code", "degree": 8}, {"id": "hid_device_close", "label": ".Close()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".Close()", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid.go", "file_type": "code", "degree": 1}, {"id": "hid_device_path", "label": ".Path()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".Path()", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid.go", "file_type": "code", "degree": 1}, {"id": "hid_device_pid", "label": ".PID()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".PID()", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid.go", "file_type": "code", "degree": 1}, {"id": "hid_device_read", "label": ".Read()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".Read()", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid.go", "file_type": "code", "degree": 1}, {"id": "hid_device_sendreport", "label": ".SendReport()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".SendReport()", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid.go", "file_type": "code", "degree": 1}, {"id": "hid_device_vid", "label": ".VID()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".VID()", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid.go", "file_type": "code", "degree": 1}, {"id": "hid_devicesinfo", "label": "DevicesInfo", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "DevicesInfo", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid.go", "file_type": "code", "degree": 2}, {"id": "internal_hid_hid", "label": "hid.go", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 34.8, "font": {"size": 12, "color": "#ffffff"}, "title": "hid.go", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid.go", "file_type": "code", "degree": 19}, {"id": "internal_hid_hid_discoverall", "label": "DiscoverAll()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "DiscoverAll()", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid.go", "file_type": "code", "degree": 5}, {"id": "internal_hid_hid_go_hid_deviceinfo", "label": "DeviceInfo", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 15.2, "font": {"size": 12, "color": "#ffffff"}, "title": "DeviceInfo", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid.go", "file_type": "code", "degree": 4}, {"id": "internal_hid_hid_israwhiddescriptor", "label": "isRawHIDDescriptor()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "isRawHIDDescriptor()", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid.go", "file_type": "code", "degree": 3}, {"id": "internal_hid_hid_openpath", "label": "OpenPath()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "OpenPath()", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid.go", "file_type": "code", "degree": 3}, {"id": "internal_hid_hid_parsehex", "label": "parseHex()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "parseHex()", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid.go", "file_type": "code", "degree": 3}, {"id": "internal_hid_hid_parseuevent", "label": "parseUEVENT()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "parseUEVENT()", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid.go", "file_type": "code", "degree": 5}, {"id": "internal_hid_hid_splitlines", "label": "splitLines()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "splitLines()", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid.go", "file_type": "code", "degree": 3}, {"id": "internal_hid_hid_test", "label": "hid_test.go", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 24.3, "font": {"size": 12, "color": "#ffffff"}, "title": "hid_test.go", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid_test.go", "file_type": "code", "degree": 11}, {"id": "internal_hid_hid_test_testisrawhiddescriptor", "label": "TestIsRawHIDDescriptor()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "TestIsRawHIDDescriptor()", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid_test.go", "file_type": "code", "degree": 3}, {"id": "internal_hid_hid_test_testparsehex", "label": "TestParseHex()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "TestParseHex()", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid_test.go", "file_type": "code", "degree": 3}, {"id": "internal_hid_hid_test_testparseuevent", "label": "TestParseUEVENT()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "TestParseUEVENT()", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid_test.go", "file_type": "code", "degree": 3}, {"id": "internal_hid_hid_test_testreadtimesoutwithoutresponse", "label": "TestReadTimesOutWithoutResponse()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "TestReadTimesOutWithoutResponse()", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid_test.go", "file_type": "code", "degree": 2}, {"id": "internal_hid_hid_test_testsplitlines", "label": "TestSplitLines()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "TestSplitLines()", "community": 2, "community_name": "hid.go", "source_file": "internal/hid/hid_test.go", "file_type": "code", "degree": 3}, {"id": "internal_via_protocol_new", "label": "New()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "New()", "community": 2, "community_name": "hid.go", "source_file": "internal/via/protocol.go", "file_type": "code", "degree": 5}, {"id": "claude_skills_graphify_references_transcribe", "label": "transcribe.md", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "transcribe.md", "community": 20, "community_name": "graphify reference: transcribe video and audio", "source_file": ".claude/skills/graphify/references/transcribe.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_transcribe_graphify_reference_transcribe_video_and_audio", "label": "graphify reference: transcribe video and audio", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "graphify reference: transcribe video and audio", "community": 20, "community_name": "graphify reference: transcribe video and audio", "source_file": ".claude/skills/graphify/references/transcribe.md", "file_type": "document", "degree": 2}, {"id": "claude_skills_graphify_references_transcribe_step_2_5_transcribe_video_audio_files_only_if_video_files_detected", "label": "Step 2.5 - Transcribe video / audio files (only if video files detected)", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 2.5 - Transcribe video / audio files (only if video files detected)", "community": 20, "community_name": "graphify reference: transcribe video and audio", "source_file": ".claude/skills/graphify/references/transcribe.md", "file_type": "document", "degree": 1}, {"id": "claude", "label": "CLAUDE.md", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "CLAUDE.md", "community": 21, "community_name": "CLAUDE.md", "source_file": "CLAUDE.md", "file_type": "document", "degree": 1}, {"id": "claude_graphify", "label": "graphify", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "graphify", "community": 21, "community_name": "CLAUDE.md", "source_file": "CLAUDE.md", "file_type": "document", "degree": 1}, {"id": "claude_claude", "label": ".claude/CLAUDE.md", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".claude/CLAUDE.md", "community": 22, "community_name": ".claude/CLAUDE.md", "source_file": ".claude/CLAUDE.md", "file_type": "document", "degree": 1}, {"id": "claude_claude_graphify", "label": "graphify", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "graphify", "community": 22, "community_name": ".claude/CLAUDE.md", "source_file": ".claude/CLAUDE.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_extraction_spec", "label": "extraction-spec.md", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "extraction-spec.md", "community": 23, "community_name": "extraction-spec.md", "source_file": ".claude/skills/graphify/references/extraction-spec.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_references_extraction_spec_graphify_reference_extraction_subagent_prompt", "label": "graphify reference: extraction subagent prompt", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "graphify reference: extraction subagent prompt", "community": 23, "community_name": "extraction-spec.md", "source_file": ".claude/skills/graphify/references/extraction-spec.md", "file_type": "document", "degree": 1}, {"id": "cmd_wobkey_main_init", "label": "init()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 23.0, "font": {"size": 12, "color": "#ffffff"}, "title": "init()", "community": 3, "community_name": "OpenDevice", "source_file": "cmd/wobkey/main.go", "file_type": "code", "degree": 10}, {"id": "cmd_wobkey_rgb_brightness_newbrightnesscmd", "label": "NewBrightnessCmd()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "NewBrightnessCmd()", "community": 3, "community_name": "OpenDevice", "source_file": "cmd/wobkey/rgb/brightness.go", "file_type": "code", "degree": 5}, {"id": "cmd_wobkey_rgb_color_newcolorcmd", "label": "NewColorCmd()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "NewColorCmd()", "community": 3, "community_name": "OpenDevice", "source_file": "cmd/wobkey/rgb/color.go", "file_type": "code", "degree": 5}, {"id": "cmd_wobkey_rgb_disable_newdisablecmd", "label": "NewDisableCmd()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 15.2, "font": {"size": 12, "color": "#ffffff"}, "title": "NewDisableCmd()", "community": 3, "community_name": "OpenDevice", "source_file": "cmd/wobkey/rgb/disable.go", "file_type": "code", "degree": 4}, {"id": "cmd_wobkey_rgb_effect_getavailableeffects", "label": "GetAvailableEffects()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 15.2, "font": {"size": 12, "color": "#ffffff"}, "title": "GetAvailableEffects()", "community": 3, "community_name": "OpenDevice", "source_file": "cmd/wobkey/rgb/effect.go", "file_type": "code", "degree": 4}, {"id": "cmd_wobkey_rgb_effect_neweffectcmd", "label": "NewEffectCmd()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 17.8, "font": {"size": 12, "color": "#ffffff"}, "title": "NewEffectCmd()", "community": 3, "community_name": "OpenDevice", "source_file": "cmd/wobkey/rgb/effect.go", "file_type": "code", "degree": 6}, {"id": "cmd_wobkey_rgb_enable_newenablecmd", "label": "NewEnableCmd()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 15.2, "font": {"size": 12, "color": "#ffffff"}, "title": "NewEnableCmd()", "community": 3, "community_name": "OpenDevice", "source_file": "cmd/wobkey/rgb/enable.go", "file_type": "code", "degree": 4}, {"id": "cmd_wobkey_rgb_info_newinfocmd", "label": "NewInfoCmd()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 17.8, "font": {"size": 12, "color": "#ffffff"}, "title": "NewInfoCmd()", "community": 3, "community_name": "OpenDevice", "source_file": "cmd/wobkey/rgb/info.go", "file_type": "code", "degree": 6}, {"id": "cmd_wobkey_rgb_mode_newmodecmd", "label": "NewModeCmd()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "NewModeCmd()", "community": 3, "community_name": "OpenDevice", "source_file": "cmd/wobkey/rgb/mode.go", "file_type": "code", "degree": 5}, {"id": "cmd_wobkey_rgb_rgb", "label": "rgb.go", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 25.7, "font": {"size": 12, "color": "#ffffff"}, "title": "rgb.go", "community": 3, "community_name": "OpenDevice", "source_file": "cmd/wobkey/rgb/rgb.go", "file_type": "code", "degree": 12}, {"id": "cmd_wobkey_rgb_rgb_init", "label": "Init()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 15.2, "font": {"size": 12, "color": "#ffffff"}, "title": "Init()", "community": 3, "community_name": "OpenDevice", "source_file": "cmd/wobkey/rgb/rgb.go", "file_type": "code", "degree": 4}, {"id": "cmd_wobkey_rgb_rgb_lightingenabled", "label": "lightingEnabled()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "lightingEnabled()", "community": 3, "community_name": "OpenDevice", "source_file": "cmd/wobkey/rgb/rgb.go", "file_type": "code", "degree": 3}, {"id": "cmd_wobkey_rgb_rgb_opendevice", "label": "OpenDevice()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 28.3, "font": {"size": 12, "color": "#ffffff"}, "title": "OpenDevice()", "community": 3, "community_name": "OpenDevice", "source_file": "cmd/wobkey/rgb/rgb.go", "file_type": "code", "degree": 14}, {"id": "cmd_wobkey_rgb_rgb_parseuint8", "label": "ParseUint8()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 15.2, "font": {"size": 12, "color": "#ffffff"}, "title": "ParseUint8()", "community": 3, "community_name": "OpenDevice", "source_file": "cmd/wobkey/rgb/rgb.go", "file_type": "code", "degree": 4}, {"id": "cmd_wobkey_rgb_speed_newspeedcmd", "label": "NewSpeedCmd()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "NewSpeedCmd()", "community": 3, "community_name": "OpenDevice", "source_file": "cmd/wobkey/rgb/speed.go", "file_type": "code", "degree": 5}, {"id": "go_type_github_com_spf13_cobra_command", "label": "github.com/spf13/cobra.Command", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 21.7, "font": {"size": 12, "color": "#ffffff"}, "title": "github.com/spf13/cobra.Command", "community": 3, "community_name": "OpenDevice", "source_file": "", "file_type": "code", "degree": 9}, {"id": "internal_rgb_effects_go_rgb_effect", "label": "Effect", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 19.1, "font": {"size": 12, "color": "#ffffff"}, "title": "Effect", "community": 3, "community_name": "OpenDevice", "source_file": "internal/rgb/effects.go", "file_type": "code", "degree": 7}, {"id": "internal_rgb_effects_parseeffect", "label": "ParseEffect()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 15.2, "font": {"size": 12, "color": "#ffffff"}, "title": "ParseEffect()", "community": 3, "community_name": "OpenDevice", "source_file": "internal/rgb/effects.go", "file_type": "code", "degree": 4}, {"id": "internal_rgb_effects_test_testeffectstring", "label": "TestEffectString()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "TestEffectString()", "community": 3, "community_name": "OpenDevice", "source_file": "internal/rgb/effects_test.go", "file_type": "code", "degree": 3}, {"id": "internal_rgb_effects_test_testparseeffect", "label": "TestParseEffect()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "TestParseEffect()", "community": 3, "community_name": "OpenDevice", "source_file": "internal/rgb/effects_test.go", "file_type": "code", "degree": 3}, {"id": "rgb_effect_string", "label": ".String()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".String()", "community": 3, "community_name": "OpenDevice", "source_file": "internal/rgb/effects.go", "file_type": "code", "degree": 1}, {"id": "internal_device_device", "label": "device.go", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 29.6, "font": {"size": 12, "color": "#ffffff"}, "title": "device.go", "community": 4, "community_name": "device.go", "source_file": "internal/device/device.go", "file_type": "code", "degree": 15}, {"id": "internal_device_device_discover", "label": "Discover()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 17.8, "font": {"size": 12, "color": "#ffffff"}, "title": "Discover()", "community": 4, "community_name": "device.go", "source_file": "internal/device/device.go", "file_type": "code", "degree": 6}, {"id": "internal_device_device_go_device_device", "label": "Device", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 17.8, "font": {"size": 12, "color": "#ffffff"}, "title": "Device", "community": 4, "community_name": "device.go", "source_file": "internal/device/device.go", "file_type": "code", "degree": 6}, {"id": "internal_device_device_go_device_keyboard", "label": "Keyboard", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 20.4, "font": {"size": 12, "color": "#ffffff"}, "title": "Keyboard", "community": 4, "community_name": "device.go", "source_file": "internal/device/device.go", "file_type": "code", "degree": 8}, {"id": "internal_device_device_loadkeyboards", "label": "LoadKeyboards()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 17.8, "font": {"size": 12, "color": "#ffffff"}, "title": "LoadKeyboards()", "community": 4, "community_name": "device.go", "source_file": "internal/device/device.go", "file_type": "code", "degree": 6}, {"id": "internal_device_device_matchkeyboards", "label": "matchKeyboards()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 17.8, "font": {"size": 12, "color": "#ffffff"}, "title": "matchKeyboards()", "community": 4, "community_name": "device.go", "source_file": "internal/device/device.go", "file_type": "code", "degree": 6}, {"id": "internal_device_device_test", "label": "device_test.go", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 27.0, "font": {"size": 12, "color": "#ffffff"}, "title": "device_test.go", "community": 4, "community_name": "device.go", "source_file": "internal/device/device_test.go", "file_type": "code", "degree": 13}, {"id": "internal_device_device_test_testloadkeyboards", "label": "TestLoadKeyboards()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "TestLoadKeyboards()", "community": 4, "community_name": "device.go", "source_file": "internal/device/device_test.go", "file_type": "code", "degree": 3}, {"id": "internal_device_device_test_testloadkeyboardsemptyfile", "label": "TestLoadKeyboardsEmptyFile()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "TestLoadKeyboardsEmptyFile()", "community": 4, "community_name": "device.go", "source_file": "internal/device/device_test.go", "file_type": "code", "degree": 3}, {"id": "internal_device_device_test_testloadkeyboardsinvalid", "label": "TestLoadKeyboardsInvalid()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "TestLoadKeyboardsInvalid()", "community": 4, "community_name": "device.go", "source_file": "internal/device/device_test.go", "file_type": "code", "degree": 3}, {"id": "internal_device_device_test_testmatchkeyboardsselectsrawhidinterface", "label": "TestMatchKeyboardsSelectsRawHIDInterface()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "TestMatchKeyboardsSelectsRawHIDInterface()", "community": 4, "community_name": "device.go", "source_file": "internal/device/device_test.go", "file_type": "code", "degree": 3}, {"id": "wobkey_info", "label": "Info", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "Info", "community": 4, "community_name": "device.go", "source_file": "cmd/wobkey/main.go", "file_type": "code", "degree": 2}, {"id": "claude_skills_graphify_skill", "label": "SKILL.md", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "SKILL.md", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_for_graphify_add_and_watch", "label": "For /graphify add and --watch", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "For /graphify add and --watch", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_for_graphify_query", "label": "For /graphify query", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "For /graphify query", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_for_the_commit_hook_and_native_claude_md_integration", "label": "For the commit hook and native CLAUDE.md integration", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "For the commit hook and native CLAUDE.md integration", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_for_update_and_cluster_only", "label": "For --update and --cluster-only", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "For --update and --cluster-only", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_graphify", "label": "/graphify", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 23.0, "font": {"size": 12, "color": "#ffffff"}, "title": "/graphify", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 10}, {"id": "claude_skills_graphify_skill_honesty_rules", "label": "Honesty Rules", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Honesty Rules", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_interpreter_guard_for_subcommands", "label": "Interpreter guard for subcommands", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Interpreter guard for subcommands", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_part_a_structural_extraction_for_code_files", "label": "Part A - Structural extraction for code files", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Part A - Structural extraction for code files", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_part_b_semantic_extraction_parallel_subagents", "label": "Part B - Semantic extraction (parallel subagents)", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Part B - Semantic extraction (parallel subagents)", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_part_c_merge_ast_semantic_into_final_extraction", "label": "Part C - Merge AST + semantic into final extraction", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Part C - Merge AST + semantic into final extraction", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_step_0_github_repos_and_multi_path_merge_only_if_a_url_or_several_paths", "label": "Step 0 - GitHub repos and multi-path merge (only if a URL or several paths)", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 0 - GitHub repos and multi-path merge (only if a URL or several paths)", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_step_1_ensure_graphify_is_installed", "label": "Step 1 - Ensure graphify is installed", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 1 - Ensure graphify is installed", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_step_2_5_video_and_audio_only_if_video_files_detected", "label": "Step 2.5 - Video and audio (only if video files detected)", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 2.5 - Video and audio (only if video files detected)", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_step_2_detect_files", "label": "Step 2 - Detect files", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 2 - Detect files", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_step_3_extract_entities_and_relationships", "label": "Step 3 - Extract entities and relationships", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 15.2, "font": {"size": 12, "color": "#ffffff"}, "title": "Step 3 - Extract entities and relationships", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 4}, {"id": "claude_skills_graphify_skill_step_4_5_graph_health_check_read_only_integrity_gate", "label": "Step 4.5 - Graph health check (read-only integrity gate)", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 4.5 - Graph health check (read-only integrity gate)", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_step_4_build_graph_cluster_analyze_generate_outputs", "label": "Step 4 - Build graph, cluster, analyze, generate outputs", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 4 - Build graph, cluster, analyze, generate outputs", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_step_5_label_communities", "label": "Step 5 - Label communities", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 5 - Label communities", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_step_6_generate_obsidian_vault_opt_in_html", "label": "Step 6 - Generate Obsidian vault (opt-in) + HTML", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 6 - Generate Obsidian vault (opt-in) + HTML", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_step_9_save_manifest_update_cost_tracker_clean_up_and_report", "label": "Step 9 - Save manifest, update cost tracker, clean up, and report", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Step 9 - Save manifest, update cost tracker, clean up, and report", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_steps_6b_8_wiki_neo4j_falkordb_svg_graphml_mcp_benchmark_only_on_their_flags", "label": "Steps 6b-8 - Wiki, Neo4j, FalkorDB, SVG, GraphML, MCP, benchmark (only on their flags)", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Steps 6b-8 - Wiki, Neo4j, FalkorDB, SVG, GraphML, MCP, benchmark (only on their flags)", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_usage", "label": "Usage", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Usage", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_what_graphify_is_for", "label": "What graphify is for", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "What graphify is for", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 1}, {"id": "claude_skills_graphify_skill_what_you_must_do_when_invoked", "label": "What You Must Do When Invoked", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 25.7, "font": {"size": 12, "color": "#ffffff"}, "title": "What You Must Do When Invoked", "community": 5, "community_name": "What You Must Do When Invoked", "source_file": ".claude/skills/graphify/SKILL.md", "file_type": "document", "degree": 12}, {"id": "cmd_wobkey_rgb_rgb_test", "label": "rgb_test.go", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "rgb_test.go", "community": 6, "community_name": "testing.T", "source_file": "cmd/wobkey/rgb/rgb_test.go", "file_type": "code", "degree": 5}, {"id": "cmd_wobkey_rgb_rgb_test_testdeviceflagisinheritedbyrgbcommands", "label": "TestDeviceFlagIsInheritedByRGBCommands()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "TestDeviceFlagIsInheritedByRGBCommands()", "community": 6, "community_name": "testing.T", "source_file": "cmd/wobkey/rgb/rgb_test.go", "file_type": "code", "degree": 3}, {"id": "cmd_wobkey_rgb_rgb_test_testlightingenabledrequiresactiveeffectandbrightness", "label": "TestLightingEnabledRequiresActiveEffectAndBrightness()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "TestLightingEnabledRequiresActiveEffectAndBrightness()", "community": 6, "community_name": "testing.T", "source_file": "cmd/wobkey/rgb/rgb_test.go", "file_type": "code", "degree": 3}, {"id": "go_type_testing_t", "label": "testing.T", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 40.0, "font": {"size": 12, "color": "#ffffff"}, "title": "testing.T", "community": 6, "community_name": "testing.T", "source_file": "", "file_type": "code", "degree": 23}, {"id": "internal_rgb_effects_test_testcolortohsv", "label": "TestColorToHSV()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "TestColorToHSV()", "community": 6, "community_name": "testing.T", "source_file": "internal/rgb/effects_test.go", "file_type": "code", "degree": 2}, {"id": "internal_rgb_effects_test_testqmkvalueids", "label": "TestQMKValueIDs()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "TestQMKValueIDs()", "community": 6, "community_name": "testing.T", "source_file": "internal/rgb/effects_test.go", "file_type": "code", "degree": 2}, {"id": "internal_via_protocol_test", "label": "protocol_test.go", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 32.2, "font": {"size": 12, "color": "#ffffff"}, "title": "protocol_test.go", "community": 6, "community_name": "testing.T", "source_file": "internal/via/protocol_test.go", "file_type": "code", "degree": 17}, {"id": "internal_via_protocol_test_testdisablelightingusesallimpact80channels", "label": "TestDisableLightingUsesAllImpact80Channels()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "TestDisableLightingUsesAllImpact80Channels()", "community": 6, "community_name": "testing.T", "source_file": "internal/via/protocol_test.go", "file_type": "code", "degree": 2}, {"id": "internal_via_protocol_test_testenablelightingusesallimpact80channels", "label": "TestEnableLightingUsesAllImpact80Channels()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "TestEnableLightingUsesAllImpact80Channels()", "community": 6, "community_name": "testing.T", "source_file": "internal/via/protocol_test.go", "file_type": "code", "degree": 2}, {"id": "internal_via_protocol_test_testgetvaluerejectsunhandledresponse", "label": "TestGetValueRejectsUnhandledResponse()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "TestGetValueRejectsUnhandledResponse()", "community": 6, "community_name": "testing.T", "source_file": "internal/via/protocol_test.go", "file_type": "code", "degree": 2}, {"id": "internal_via_protocol_test_testgetvaluereturnsqmkvaluedata", "label": "TestGetValueReturnsQMKValueData()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "TestGetValueReturnsQMKValueData()", "community": 6, "community_name": "testing.T", "source_file": "internal/via/protocol_test.go", "file_type": "code", "degree": 2}, {"id": "internal_via_protocol_test_testsetcolorusesqmkcolorvalue", "label": "TestSetColorUsesQMKColorValue()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "TestSetColorUsesQMKColorValue()", "community": 6, "community_name": "testing.T", "source_file": "internal/via/protocol_test.go", "file_type": "code", "degree": 2}, {"id": "internal_via_protocol_test_testsetvalueconsumesqmkresponse", "label": "TestSetValueConsumesQMKResponse()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "TestSetValueConsumesQMKResponse()", "community": 6, "community_name": "testing.T", "source_file": "internal/via/protocol_test.go", "file_type": "code", "degree": 2}, {"id": "internal_via_protocol_test_testsetvalueusesqmkrgblightpayload", "label": "TestSetValueUsesQMKRGBLightPayload()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "TestSetValueUsesQMKRGBLightPayload()", "community": 6, "community_name": "testing.T", "source_file": "internal/via/protocol_test.go", "file_type": "code", "degree": 2}, {"id": "via_faketransport", "label": "fakeTransport", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 15.2, "font": {"size": 12, "color": "#ffffff"}, "title": "fakeTransport", "community": 6, "community_name": "testing.T", "source_file": "internal/via/protocol_test.go", "file_type": "code", "degree": 4}, {"id": "via_faketransport_close", "label": ".Close()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".Close()", "community": 6, "community_name": "testing.T", "source_file": "internal/via/protocol_test.go", "file_type": "code", "degree": 1}, {"id": "via_faketransport_read", "label": ".Read()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".Read()", "community": 6, "community_name": "testing.T", "source_file": "internal/via/protocol_test.go", "file_type": "code", "degree": 1}, {"id": "via_faketransport_sendreport", "label": ".SendReport()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".SendReport()", "community": 6, "community_name": "testing.T", "source_file": "internal/via/protocol_test.go", "file_type": "code", "degree": 1}, {"id": "agents", "label": "AGENTS.md", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "AGENTS.md", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 1}, {"id": "agents_agent_guidelines_wobkey_impact_80_rgb_cli", "label": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 23.0, "font": {"size": 12, "color": "#ffffff"}, "title": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 10}, {"id": "agents_architecture", "label": "Architecture", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Architecture", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 1}, {"id": "agents_cli_interface", "label": "CLI Interface", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "CLI Interface", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 1}, {"id": "agents_concurrency", "label": "Concurrency", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Concurrency", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 1}, {"id": "agents_constraints", "label": "Constraints", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Constraints", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 1}, {"id": "agents_error_handling", "label": "Error Handling", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Error Handling", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 1}, {"id": "agents_go_development", "label": "Go Development", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 20.4, "font": {"size": 12, "color": "#ffffff"}, "title": "Go Development", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 8}, {"id": "agents_graphify", "label": "graphify", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "graphify", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 1}, {"id": "agents_interfaces_types", "label": "Interfaces & Types", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Interfaces & Types", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 1}, {"id": "agents_keyboards_known_wobkey_vid_pid", "label": "Keyboards (Known Wobkey VID/PID)", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Keyboards (Known Wobkey VID/PID)", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 1}, {"id": "agents_modules_packages", "label": "Modules & Packages", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Modules & Packages", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 1}, {"id": "agents_objective", "label": "Objective", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Objective", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 1}, {"id": "agents_stack", "label": "Stack", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Stack", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 1}, {"id": "agents_style_effective_go_code_review_comments", "label": "Style (Effective Go + Code Review Comments)", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Style (Effective Go + Code Review Comments)", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 1}, {"id": "agents_testing", "label": "Testing", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Testing", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 1}, {"id": "agents_tooling", "label": "Tooling", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "Tooling", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 1}, {"id": "agents_via_protocol_essentials", "label": "VIA Protocol Essentials", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "VIA Protocol Essentials", "community": 7, "community_name": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "source_file": "AGENTS.md", "file_type": "document", "degree": 1}, {"id": "internal_via_protocol_go_via_protocol", "label": "Protocol", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 25.7, "font": {"size": 12, "color": "#ffffff"}, "title": "Protocol", "community": 9, "community_name": "Protocol", "source_file": "internal/via/protocol.go", "file_type": "code", "degree": 12}, {"id": "via_ledtype", "label": "LEDType", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "LEDType", "community": 9, "community_name": "Protocol", "source_file": "internal/via/protocol.go", "file_type": "code", "degree": 5}, {"id": "via_message", "label": "Message", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "Message", "community": 9, "community_name": "Protocol", "source_file": "internal/via/protocol.go", "file_type": "code", "degree": 2}, {"id": "via_protocol_close", "label": ".Close()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".Close()", "community": 9, "community_name": "Protocol", "source_file": "internal/via/protocol.go", "file_type": "code", "degree": 1}, {"id": "via_protocol_disablelighting", "label": ".DisableLighting()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": ".DisableLighting()", "community": 9, "community_name": "Protocol", "source_file": "internal/via/protocol.go", "file_type": "code", "degree": 2}, {"id": "via_protocol_enablelighting", "label": ".EnableLighting()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": ".EnableLighting()", "community": 9, "community_name": "Protocol", "source_file": "internal/via/protocol.go", "file_type": "code", "degree": 2}, {"id": "via_protocol_getvalue", "label": ".GetValue()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 15.2, "font": {"size": 12, "color": "#ffffff"}, "title": ".GetValue()", "community": 9, "community_name": "Protocol", "source_file": "internal/via/protocol.go", "file_type": "code", "degree": 4}, {"id": "via_protocol_readresponse", "label": ".readResponse()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 19.1, "font": {"size": 12, "color": "#ffffff"}, "title": ".readResponse()", "community": 9, "community_name": "Protocol", "source_file": "internal/via/protocol.go", "file_type": "code", "degree": 7}, {"id": "via_protocol_setcolor", "label": ".SetColor()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 15.2, "font": {"size": 12, "color": "#ffffff"}, "title": ".SetColor()", "community": 9, "community_name": "Protocol", "source_file": "internal/via/protocol.go", "file_type": "code", "degree": 4}, {"id": "via_protocol_setvalue", "label": ".SetValue()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 17.8, "font": {"size": 12, "color": "#ffffff"}, "title": ".SetValue()", "community": 9, "community_name": "Protocol", "source_file": "internal/via/protocol.go", "file_type": "code", "degree": 6}, {"id": "via_transport", "label": "transport", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "transport", "community": 9, "community_name": "Protocol", "source_file": "internal/via/protocol.go", "file_type": "code", "degree": 5}, {"id": "via_transport_close", "label": ".Close()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": ".Close()", "community": 9, "community_name": "Protocol", "source_file": "internal/via/protocol.go", "file_type": "code", "degree": 1}, {"id": "via_transport_read", "label": ".Read()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": ".Read()", "community": 9, "community_name": "Protocol", "source_file": "internal/via/protocol.go", "file_type": "code", "degree": 2}, {"id": "via_transport_sendreport", "label": ".SendReport()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 15.2, "font": {"size": 12, "color": "#ffffff"}, "title": ".SendReport()", "community": 9, "community_name": "Protocol", "source_file": "internal/via/protocol.go", "file_type": "code", "degree": 4}, {"id": "go_pkg_encoding_json", "label": "go_pkg_encoding_json", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 13.9, "font": {"size": 0, "color": "#ffffff"}, "title": "go_pkg_encoding_json", "community": 1, "community_name": "main.go", "source_file": "", "file_type": "concept", "degree": 3}, {"id": "go_pkg_fmt", "label": "go_pkg_fmt", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 28.3, "font": {"size": 12, "color": "#ffffff"}, "title": "go_pkg_fmt", "community": 1, "community_name": "main.go", "source_file": "", "file_type": "concept", "degree": 14}, {"id": "go_pkg_github_com_spf13_cobra", "label": "go_pkg_github_com_spf13_cobra", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 24.3, "font": {"size": 12, "color": "#ffffff"}, "title": "go_pkg_github_com_spf13_cobra", "community": 1, "community_name": "main.go", "source_file": "", "file_type": "concept", "degree": 11}, {"id": "go_pkg_math", "label": "go_pkg_math", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "go_pkg_math", "community": 1, "community_name": "main.go", "source_file": "", "file_type": "concept", "degree": 1}, {"id": "go_pkg_os", "label": "go_pkg_os", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 27.0, "font": {"size": 12, "color": "#ffffff"}, "title": "go_pkg_os", "community": 1, "community_name": "main.go", "source_file": "", "file_type": "concept", "degree": 13}, {"id": "ref_fs", "label": "ref_fs", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "ref_fs", "community": 11, "community_name": "graphify.js", "source_file": "", "file_type": "concept", "degree": 1}, {"id": "ref_path", "label": "ref_path", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "ref_path", "community": 11, "community_name": "graphify.js", "source_file": "", "file_type": "concept", "degree": 1}, {"id": "go_pkg_bytes", "label": "go_pkg_bytes", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "go_pkg_bytes", "community": 2, "community_name": "hid.go", "source_file": "", "file_type": "concept", "degree": 2}, {"id": "go_pkg_strings", "label": "go_pkg_strings", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "go_pkg_strings", "community": 2, "community_name": "hid.go", "source_file": "", "file_type": "concept", "degree": 1}, {"id": "go_pkg_syscall", "label": "go_pkg_syscall", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "go_pkg_syscall", "community": 2, "community_name": "hid.go", "source_file": "", "file_type": "concept", "degree": 1}, {"id": "go_pkg_unsafe", "label": "go_pkg_unsafe", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.3, "font": {"size": 0, "color": "#ffffff"}, "title": "go_pkg_unsafe", "community": 2, "community_name": "hid.go", "source_file": "", "file_type": "concept", "degree": 1}, {"id": "go_pkg_strconv", "label": "go_pkg_strconv", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "go_pkg_strconv", "community": 3, "community_name": "OpenDevice", "source_file": "", "file_type": "concept", "degree": 2}, {"id": "go_pkg_path_filepath", "label": "go_pkg_path_filepath", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "go_pkg_path_filepath", "community": 4, "community_name": "device.go", "source_file": "", "file_type": "concept", "degree": 2}, {"id": "go_pkg_testing", "label": "go_pkg_testing", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "go_pkg_testing", "community": 6, "community_name": "testing.T", "source_file": "", "file_type": "concept", "degree": 5}, {"id": "go_pkg_time", "label": "go_pkg_time", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.6, "font": {"size": 0, "color": "#ffffff"}, "title": "go_pkg_time", "community": 2, "community_name": "hid.go", "source_file": "", "file_type": "concept", "degree": 2}];
  70. const RAW_EDGES = [{"from": "opencode_plugins_graphify_graphifyplugin", "to": "opencode_plugins_graphify", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "plan", "to": "plan_wobkey_rgb_cli_implementation_plan", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "plan_1_impact_80_effect_mapping", "to": "plan_open_issues", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "plan_2_cross_platform_hid_backends", "to": "plan_open_issues", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "plan_3_documentation_and_release_artifacts", "to": "plan_open_issues", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "plan_open_issues", "to": "plan_wobkey_rgb_cli_implementation_plan", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "plan_quick_commands_for_next_session", "to": "plan_wobkey_rgb_cli_implementation_plan", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "plan_status", "to": "plan_wobkey_rgb_cli_implementation_plan", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "internal_device_device", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "internal_device_device_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "go_pkg_encoding_json", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "go_pkg_fmt", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "go_pkg_os", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "go_pkg_github_com_spf13_cobra", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "cmd_wobkey_rgb_brightness", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "cmd_wobkey_rgb_color", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "cmd_wobkey_rgb_disable", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "cmd_wobkey_rgb_effect", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "cmd_wobkey_rgb_enable", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "cmd_wobkey_rgb_info", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "cmd_wobkey_rgb_mode", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "cmd_wobkey_rgb_rgb", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "cmd_wobkey_rgb_rgb_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "cmd_wobkey_rgb_speed", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "cmd_wobkey_main_execute", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "cmd_wobkey_main_main", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "wobkey_info", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main", "to": "cmd_wobkey_main_init", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main_execute", "to": "cmd_wobkey_main_main", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_brightness", "to": "go_pkg_fmt", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_brightness", "to": "go_pkg_os", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_brightness", "to": "go_pkg_github_com_spf13_cobra", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_brightness", "to": "internal_rgb_effects", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_brightness", "to": "internal_rgb_effects_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_brightness", "to": "internal_via_protocol", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_brightness", "to": "internal_via_protocol_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_brightness", "to": "cmd_wobkey_rgb_brightness_newbrightnesscmd", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_color", "to": "go_pkg_fmt", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_color", "to": "go_pkg_os", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_color", "to": "go_pkg_github_com_spf13_cobra", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_color", "to": "internal_rgb_effects", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_color", "to": "internal_rgb_effects_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_color", "to": "internal_via_protocol", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_color", "to": "internal_via_protocol_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_color", "to": "cmd_wobkey_rgb_color_newcolorcmd", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_disable", "to": "go_pkg_fmt", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_disable", "to": "go_pkg_os", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_disable", "to": "go_pkg_github_com_spf13_cobra", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_disable", "to": "cmd_wobkey_rgb_disable_newdisablecmd", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_effect", "to": "internal_via_protocol", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_effect", "to": "internal_via_protocol_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_effect", "to": "go_pkg_fmt", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_effect", "to": "go_pkg_os", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_effect", "to": "go_pkg_github_com_spf13_cobra", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_effect", "to": "internal_device_device", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_effect", "to": "internal_device_device_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_effect", "to": "internal_rgb_effects", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_effect", "to": "internal_rgb_effects_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_effect", "to": "cmd_wobkey_rgb_effect_neweffectcmd", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_effect", "to": "cmd_wobkey_rgb_effect_getavailableeffects", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_enable", "to": "go_pkg_fmt", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_enable", "to": "go_pkg_os", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_enable", "to": "go_pkg_github_com_spf13_cobra", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_enable", "to": "cmd_wobkey_rgb_enable_newenablecmd", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_info", "to": "internal_via_protocol", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_info", "to": "internal_via_protocol_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_info", "to": "go_pkg_encoding_json", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_info", "to": "go_pkg_fmt", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_info", "to": "go_pkg_os", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_info", "to": "go_pkg_github_com_spf13_cobra", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_info", "to": "internal_rgb_effects", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_info", "to": "internal_rgb_effects_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_info", "to": "cmd_wobkey_rgb_info_newinfocmd", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_mode", "to": "go_pkg_fmt", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_mode", "to": "go_pkg_os", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_mode", "to": "go_pkg_github_com_spf13_cobra", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_mode", "to": "internal_rgb_effects", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_mode", "to": "internal_rgb_effects_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_mode", "to": "internal_via_protocol", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_mode", "to": "internal_via_protocol_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_mode", "to": "cmd_wobkey_rgb_mode_newmodecmd", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_speed", "to": "go_pkg_fmt", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_speed", "to": "go_pkg_os", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_speed", "to": "go_pkg_github_com_spf13_cobra", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_speed", "to": "internal_rgb_effects", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_speed", "to": "internal_rgb_effects_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_speed", "to": "internal_via_protocol", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_speed", "to": "internal_via_protocol_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_speed", "to": "cmd_wobkey_rgb_speed_newspeedcmd", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects", "to": "go_pkg_fmt", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects", "to": "go_pkg_math", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects", "to": "go_pkg_strconv", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects", "to": "internal_rgb_effects_go_rgb_effect", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects", "to": "rgb_ledparam", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects", "to": "rgb_color", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects", "to": "internal_rgb_effects_parsehexcolor", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects", "to": "rgb_state", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects", "to": "internal_rgb_effects_parseeffect", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects_parsehexcolor", "to": "cmd_wobkey_rgb_color_newcolorcmd", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects_parsehexcolor", "to": "rgb_color", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects_parsehexcolor", "to": "internal_rgb_effects_test_testparsehexcolor", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "internal_rgb_effects_test", "to": "go_pkg_testing", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects_test", "to": "internal_rgb_effects_test_testcolortohsv", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects_test", "to": "internal_rgb_effects_test_testparseeffect", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects_test", "to": "internal_rgb_effects_test_testeffectstring", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects_test", "to": "internal_rgb_effects_test_testqmkvalueids", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects_test", "to": "internal_rgb_effects_test_testparsehexcolor", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects_test_testparsehexcolor", "to": "go_type_testing_t", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol", "to": "cmd_wobkey_rgb_rgb", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol", "to": "go_pkg_fmt", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol", "to": "internal_device_device", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol", "to": "internal_device_device_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol", "to": "internal_hid_hid", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol", "to": "internal_hid_hid_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol", "to": "via_transport", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol", "to": "internal_via_protocol_go_via_protocol", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol", "to": "internal_via_protocol_new", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol", "to": "via_message", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol", "to": "via_ledtype", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "rgb_color", "to": "rgb_state", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "rgb_color", "to": "rgb_color_hsv", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "rgb_state", "to": "internal_rgb_effects_go_rgb_effect", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "readme", "to": "readme_wobkey_rgb_cli", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "readme_architecture", "to": "readme_wobkey_rgb_cli", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "readme_cli_reference", "to": "readme_wobkey_rgb_cli", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "readme_installation", "to": "readme_wobkey_rgb_cli", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "readme_linux_hid_device_permissions", "to": "readme_option_1_quick_per_session", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "readme_linux_hid_device_permissions", "to": "readme_option_2_permanent_udev_rule", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "readme_linux_hid_device_permissions", "to": "readme_wobkey_rgb_cli", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "readme_protocol", "to": "readme_wobkey_rgb_cli", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "readme_supported_keyboards", "to": "readme_wobkey_rgb_cli", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "readme_usage", "to": "readme_wobkey_rgb_cli", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "opencode_plugins_graphify", "to": "ref_path", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "opencode_plugins_graphify", "to": "ref_fs", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "opencode_plugins_graphify", "to": "opencode_plugins_graphify_rationale_4", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_exports", "to": "claude_skills_graphify_references_exports_graphify_reference_extra_exports_and_benchmark", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_exports_graphify_reference_extra_exports_and_benchmark", "to": "claude_skills_graphify_references_exports_step_7_neo4j_export_only_if_neo4j_or_neo4j_push_flag", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_exports_graphify_reference_extra_exports_and_benchmark", "to": "claude_skills_graphify_references_exports_step_7a_falkordb_export_only_if_falkordb_or_falkordb_push_flag", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_exports_graphify_reference_extra_exports_and_benchmark", "to": "claude_skills_graphify_references_exports_step_7b_svg_export_only_if_svg_flag", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_exports_graphify_reference_extra_exports_and_benchmark", "to": "claude_skills_graphify_references_exports_step_6b_wiki_only_if_wiki_flag", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_exports_graphify_reference_extra_exports_and_benchmark", "to": "claude_skills_graphify_references_exports_step_7c_graphml_export_only_if_graphml_flag", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_exports_graphify_reference_extra_exports_and_benchmark", "to": "claude_skills_graphify_references_exports_step_7d_mcp_server_only_if_mcp_flag", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_exports_graphify_reference_extra_exports_and_benchmark", "to": "claude_skills_graphify_references_exports_step_8_token_reduction_benchmark_only_if_total_words_5000", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "opencode_opencode", "to": "opencode_opencode_schema", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "opencode_opencode", "to": "opencode_opencode_plugin", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_query", "to": "claude_skills_graphify_references_query_graphify_reference_query_path_explain", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_query_for_graphify_explain", "to": "claude_skills_graphify_references_query_graphify_reference_query_path_explain", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_query_for_graphify_path", "to": "claude_skills_graphify_references_query_graphify_reference_query_path_explain", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_query_graphify_reference_query_path_explain", "to": "claude_skills_graphify_references_query_step_0_constrained_query_expansion_required_before_traversal", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_query_graphify_reference_query_path_explain", "to": "claude_skills_graphify_references_query_step_1_traversal", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_add_watch", "to": "claude_skills_graphify_references_add_watch_graphify_reference_add_a_url_and_watch_a_folder", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_add_watch_for_graphify_add", "to": "claude_skills_graphify_references_add_watch_graphify_reference_add_a_url_and_watch_a_folder", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_add_watch_for_watch", "to": "claude_skills_graphify_references_add_watch_graphify_reference_add_a_url_and_watch_a_folder", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_hooks", "to": "claude_skills_graphify_references_hooks_graphify_reference_commit_hook_and_native_claude_md_integration", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_hooks_for_git_commit_hook", "to": "claude_skills_graphify_references_hooks_graphify_reference_commit_hook_and_native_claude_md_integration", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_hooks_for_native_claude_md_integration", "to": "claude_skills_graphify_references_hooks_graphify_reference_commit_hook_and_native_claude_md_integration", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_update", "to": "claude_skills_graphify_references_update_graphify_reference_incremental_update_and_cluster_only", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_update_for_cluster_only", "to": "claude_skills_graphify_references_update_graphify_reference_incremental_update_and_cluster_only", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_update_for_update_incremental_re_extraction", "to": "claude_skills_graphify_references_update_graphify_reference_incremental_update_and_cluster_only", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_github_and_merge", "to": "claude_skills_graphify_references_github_and_merge_graphify_reference_github_clone_and_cross_repo_merge", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_github_and_merge_graphify_reference_github_clone_and_cross_repo_merge", "to": "claude_skills_graphify_references_github_and_merge_step_0_clone_github_repo_s_only_if_a_github_url_was_given", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "hid_device", "to": "internal_hid_hid_openpath", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "hid_device", "to": "internal_hid_hid", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "hid_device", "to": "hid_device_close", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "hid_device", "to": "hid_device_vid", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "hid_device", "to": "hid_device_pid", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "hid_device", "to": "hid_device_path", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "hid_device", "to": "hid_device_sendreport", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "hid_device", "to": "hid_device_read", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "hid_devicesinfo", "to": "internal_hid_hid_go_hid_deviceinfo", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "hid_devicesinfo", "to": "internal_hid_hid", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid", "to": "internal_device_device", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid", "to": "internal_device_device_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid", "to": "go_pkg_unsafe", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid", "to": "go_pkg_bytes", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid", "to": "go_pkg_fmt", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid", "to": "go_pkg_os", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid", "to": "go_pkg_strings", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid", "to": "go_pkg_syscall", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid", "to": "go_pkg_time", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid", "to": "internal_hid_hid_discoverall", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid", "to": "internal_hid_hid_israwhiddescriptor", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid", "to": "internal_hid_hid_parseuevent", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid", "to": "internal_hid_hid_splitlines", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid", "to": "internal_hid_hid_parsehex", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid", "to": "internal_hid_hid_go_hid_deviceinfo", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid", "to": "internal_hid_hid_openpath", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_discoverall", "to": "internal_device_device_discover", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_discoverall", "to": "internal_hid_hid_parseuevent", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_discoverall", "to": "internal_hid_hid_israwhiddescriptor", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_discoverall", "to": "internal_hid_hid_go_hid_deviceinfo", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_go_hid_deviceinfo", "to": "internal_device_device_matchkeyboards", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_israwhiddescriptor", "to": "internal_hid_hid_test_testisrawhiddescriptor", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "internal_hid_hid_openpath", "to": "internal_via_protocol_new", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_parsehex", "to": "internal_hid_hid_parseuevent", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_parsehex", "to": "internal_hid_hid_test_testparsehex", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "internal_hid_hid_parseuevent", "to": "internal_hid_hid_splitlines", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_parseuevent", "to": "internal_hid_hid_test_testparseuevent", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "internal_hid_hid_splitlines", "to": "internal_hid_hid_test_testsplitlines", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "internal_hid_hid_test", "to": "internal_device_device", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_test", "to": "internal_device_device_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_test", "to": "go_pkg_os", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_test", "to": "go_pkg_testing", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_test", "to": "go_pkg_time", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_test", "to": "internal_hid_hid_test_testparseuevent", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_test", "to": "internal_hid_hid_test_testparsehex", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_test", "to": "internal_hid_hid_test_testsplitlines", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_test", "to": "internal_hid_hid_test_testreadtimesoutwithoutresponse", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_test", "to": "internal_hid_hid_test_testisrawhiddescriptor", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_test_testisrawhiddescriptor", "to": "go_type_testing_t", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_test_testparsehex", "to": "go_type_testing_t", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_test_testparseuevent", "to": "go_type_testing_t", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_test_testreadtimesoutwithoutresponse", "to": "go_type_testing_t", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_hid_hid_test_testsplitlines", "to": "go_type_testing_t", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_new", "to": "cmd_wobkey_rgb_rgb_opendevice", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_new", "to": "internal_device_device_go_device_device", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_new", "to": "internal_via_protocol_go_via_protocol", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_transcribe", "to": "claude_skills_graphify_references_transcribe_graphify_reference_transcribe_video_and_audio", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_transcribe_graphify_reference_transcribe_video_and_audio", "to": "claude_skills_graphify_references_transcribe_step_2_5_transcribe_video_audio_files_only_if_video_files_detected", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude", "to": "claude_graphify", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_claude", "to": "claude_claude_graphify", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_references_extraction_spec", "to": "claude_skills_graphify_references_extraction_spec_graphify_reference_extraction_subagent_prompt", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main_init", "to": "cmd_wobkey_rgb_rgb_init", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main_init", "to": "cmd_wobkey_rgb_effect_neweffectcmd", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main_init", "to": "cmd_wobkey_rgb_brightness_newbrightnesscmd", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main_init", "to": "cmd_wobkey_rgb_speed_newspeedcmd", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main_init", "to": "cmd_wobkey_rgb_color_newcolorcmd", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main_init", "to": "cmd_wobkey_rgb_mode_newmodecmd", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main_init", "to": "cmd_wobkey_rgb_enable_newenablecmd", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main_init", "to": "cmd_wobkey_rgb_disable_newdisablecmd", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_main_init", "to": "cmd_wobkey_rgb_info_newinfocmd", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_brightness_newbrightnesscmd", "to": "go_type_github_com_spf13_cobra_command", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_brightness_newbrightnesscmd", "to": "cmd_wobkey_rgb_rgb_parseuint8", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cmd_wobkey_rgb_brightness_newbrightnesscmd", "to": "cmd_wobkey_rgb_rgb_opendevice", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cmd_wobkey_rgb_color_newcolorcmd", "to": "go_type_github_com_spf13_cobra_command", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_color_newcolorcmd", "to": "cmd_wobkey_rgb_rgb_opendevice", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cmd_wobkey_rgb_disable_newdisablecmd", "to": "go_type_github_com_spf13_cobra_command", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_disable_newdisablecmd", "to": "cmd_wobkey_rgb_rgb_opendevice", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cmd_wobkey_rgb_effect_getavailableeffects", "to": "cmd_wobkey_rgb_effect_neweffectcmd", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_effect_getavailableeffects", "to": "internal_device_device_go_device_keyboard", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_effect_getavailableeffects", "to": "internal_rgb_effects_go_rgb_effect", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_effect_neweffectcmd", "to": "internal_rgb_effects_parseeffect", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_effect_neweffectcmd", "to": "go_type_github_com_spf13_cobra_command", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_effect_neweffectcmd", "to": "cmd_wobkey_rgb_rgb_opendevice", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cmd_wobkey_rgb_enable_newenablecmd", "to": "go_type_github_com_spf13_cobra_command", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_enable_newenablecmd", "to": "cmd_wobkey_rgb_rgb_opendevice", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cmd_wobkey_rgb_info_newinfocmd", "to": "internal_rgb_effects_go_rgb_effect", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_info_newinfocmd", "to": "go_type_github_com_spf13_cobra_command", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_info_newinfocmd", "to": "cmd_wobkey_rgb_rgb_opendevice", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cmd_wobkey_rgb_info_newinfocmd", "to": "cmd_wobkey_rgb_rgb_lightingenabled", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cmd_wobkey_rgb_mode_newmodecmd", "to": "go_type_github_com_spf13_cobra_command", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_mode_newmodecmd", "to": "cmd_wobkey_rgb_rgb_parseuint8", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cmd_wobkey_rgb_mode_newmodecmd", "to": "cmd_wobkey_rgb_rgb_opendevice", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cmd_wobkey_rgb_rgb", "to": "go_pkg_fmt", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb", "to": "go_pkg_strconv", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb", "to": "go_pkg_github_com_spf13_cobra", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb", "to": "internal_device_device", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb", "to": "internal_device_device_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb", "to": "internal_via_protocol_test", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb", "to": "cmd_wobkey_rgb_rgb_opendevice", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb", "to": "cmd_wobkey_rgb_rgb_lightingenabled", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb", "to": "cmd_wobkey_rgb_rgb_parseuint8", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb", "to": "cmd_wobkey_rgb_rgb_init", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb_init", "to": "go_type_github_com_spf13_cobra_command", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb_init", "to": "cmd_wobkey_rgb_rgb_test_testdeviceflagisinheritedbyrgbcommands", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cmd_wobkey_rgb_rgb_lightingenabled", "to": "cmd_wobkey_rgb_rgb_test_testlightingenabledrequiresactiveeffectandbrightness", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cmd_wobkey_rgb_rgb_opendevice", "to": "internal_device_device_loadkeyboards", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb_opendevice", "to": "internal_device_device_discover", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb_opendevice", "to": "internal_device_device_go_device_keyboard", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb_opendevice", "to": "internal_via_protocol_go_via_protocol", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb_opendevice", "to": "cmd_wobkey_rgb_speed_newspeedcmd", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cmd_wobkey_rgb_rgb_parseuint8", "to": "cmd_wobkey_rgb_speed_newspeedcmd", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "cmd_wobkey_rgb_speed_newspeedcmd", "to": "go_type_github_com_spf13_cobra_command", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects_go_rgb_effect", "to": "internal_rgb_effects_parseeffect", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects_go_rgb_effect", "to": "rgb_effect_string", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects_go_rgb_effect", "to": "internal_rgb_effects_test_testeffectstring", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "internal_rgb_effects_parseeffect", "to": "internal_rgb_effects_test_testparseeffect", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "internal_rgb_effects_test_testeffectstring", "to": "go_type_testing_t", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_rgb_effects_test_testparseeffect", "to": "go_type_testing_t", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device", "to": "go_pkg_encoding_json", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device", "to": "go_pkg_fmt", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device", "to": "go_pkg_os", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device", "to": "go_pkg_path_filepath", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device", "to": "internal_device_device_go_device_keyboard", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device", "to": "internal_device_device_go_device_device", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device", "to": "internal_device_device_loadkeyboards", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device", "to": "internal_device_device_discover", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device", "to": "internal_device_device_matchkeyboards", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_discover", "to": "internal_device_device_matchkeyboards", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_discover", "to": "internal_device_device_go_device_keyboard", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_discover", "to": "internal_device_device_go_device_device", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_go_device_device", "to": "wobkey_info", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_go_device_device", "to": "internal_device_device_matchkeyboards", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_go_device_device", "to": "internal_device_device_go_device_keyboard", "label": "embeds", "title": "embeds [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_go_device_keyboard", "to": "internal_via_protocol_go_via_protocol", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_go_device_keyboard", "to": "internal_device_device_matchkeyboards", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_go_device_keyboard", "to": "internal_device_device_loadkeyboards", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_loadkeyboards", "to": "internal_device_device_test_testloadkeyboards", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "internal_device_device_loadkeyboards", "to": "internal_device_device_test_testloadkeyboardsemptyfile", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "internal_device_device_loadkeyboards", "to": "internal_device_device_test_testloadkeyboardsinvalid", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "internal_device_device_matchkeyboards", "to": "internal_device_device_test_testmatchkeyboardsselectsrawhidinterface", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "internal_device_device_test", "to": "go_pkg_os", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_test", "to": "go_pkg_path_filepath", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_test", "to": "go_pkg_testing", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_test", "to": "internal_device_device_test_testloadkeyboards", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_test", "to": "internal_device_device_test_testloadkeyboardsinvalid", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_test", "to": "internal_device_device_test_testmatchkeyboardsselectsrawhidinterface", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_test", "to": "internal_device_device_test_testloadkeyboardsemptyfile", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_test_testloadkeyboards", "to": "go_type_testing_t", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_test_testloadkeyboardsemptyfile", "to": "go_type_testing_t", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_test_testloadkeyboardsinvalid", "to": "go_type_testing_t", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_device_device_test_testmatchkeyboardsselectsrawhidinterface", "to": "go_type_testing_t", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill", "to": "claude_skills_graphify_skill_graphify", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_for_graphify_add_and_watch", "to": "claude_skills_graphify_skill_graphify", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_for_graphify_query", "to": "claude_skills_graphify_skill_graphify", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_for_the_commit_hook_and_native_claude_md_integration", "to": "claude_skills_graphify_skill_graphify", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_for_update_and_cluster_only", "to": "claude_skills_graphify_skill_graphify", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_graphify", "to": "claude_skills_graphify_skill_usage", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_graphify", "to": "claude_skills_graphify_skill_what_graphify_is_for", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_graphify", "to": "claude_skills_graphify_skill_what_you_must_do_when_invoked", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_graphify", "to": "claude_skills_graphify_skill_interpreter_guard_for_subcommands", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_graphify", "to": "claude_skills_graphify_skill_honesty_rules", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_part_a_structural_extraction_for_code_files", "to": "claude_skills_graphify_skill_step_3_extract_entities_and_relationships", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_part_b_semantic_extraction_parallel_subagents", "to": "claude_skills_graphify_skill_step_3_extract_entities_and_relationships", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_part_c_merge_ast_semantic_into_final_extraction", "to": "claude_skills_graphify_skill_step_3_extract_entities_and_relationships", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_step_0_github_repos_and_multi_path_merge_only_if_a_url_or_several_paths", "to": "claude_skills_graphify_skill_what_you_must_do_when_invoked", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_step_1_ensure_graphify_is_installed", "to": "claude_skills_graphify_skill_what_you_must_do_when_invoked", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_step_2_5_video_and_audio_only_if_video_files_detected", "to": "claude_skills_graphify_skill_what_you_must_do_when_invoked", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_step_2_detect_files", "to": "claude_skills_graphify_skill_what_you_must_do_when_invoked", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_step_3_extract_entities_and_relationships", "to": "claude_skills_graphify_skill_what_you_must_do_when_invoked", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_step_4_5_graph_health_check_read_only_integrity_gate", "to": "claude_skills_graphify_skill_what_you_must_do_when_invoked", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_step_4_build_graph_cluster_analyze_generate_outputs", "to": "claude_skills_graphify_skill_what_you_must_do_when_invoked", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_step_5_label_communities", "to": "claude_skills_graphify_skill_what_you_must_do_when_invoked", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_step_6_generate_obsidian_vault_opt_in_html", "to": "claude_skills_graphify_skill_what_you_must_do_when_invoked", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_step_9_save_manifest_update_cost_tracker_clean_up_and_report", "to": "claude_skills_graphify_skill_what_you_must_do_when_invoked", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "claude_skills_graphify_skill_steps_6b_8_wiki_neo4j_falkordb_svg_graphml_mcp_benchmark_only_on_their_flags", "to": "claude_skills_graphify_skill_what_you_must_do_when_invoked", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb_test", "to": "go_pkg_testing", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb_test", "to": "go_pkg_github_com_spf13_cobra", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb_test", "to": "cmd_wobkey_rgb_rgb_test_testdeviceflagisinheritedbyrgbcommands", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb_test", "to": "cmd_wobkey_rgb_rgb_test_testlightingenabledrequiresactiveeffectandbrightness", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb_test_testdeviceflagisinheritedbyrgbcommands", "to": "go_type_testing_t", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "cmd_wobkey_rgb_rgb_test_testlightingenabledrequiresactiveeffectandbrightness", "to": "go_type_testing_t", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "go_type_testing_t", "to": "internal_rgb_effects_test_testcolortohsv", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "go_type_testing_t", "to": "internal_rgb_effects_test_testqmkvalueids", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "go_type_testing_t", "to": "internal_via_protocol_test_testdisablelightingusesallimpact80channels", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "go_type_testing_t", "to": "internal_via_protocol_test_testenablelightingusesallimpact80channels", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "go_type_testing_t", "to": "internal_via_protocol_test_testgetvaluerejectsunhandledresponse", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "go_type_testing_t", "to": "internal_via_protocol_test_testgetvaluereturnsqmkvaluedata", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "go_type_testing_t", "to": "internal_via_protocol_test_testsetcolorusesqmkcolorvalue", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "go_type_testing_t", "to": "internal_via_protocol_test_testsetvalueconsumesqmkresponse", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "go_type_testing_t", "to": "internal_via_protocol_test_testsetvalueusesqmkrgblightpayload", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_test", "to": "go_pkg_bytes", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_test", "to": "go_pkg_testing", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_test", "to": "internal_via_protocol_test_testenablelightingusesallimpact80channels", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_test", "to": "internal_via_protocol_test_testgetvaluereturnsqmkvaluedata", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_test", "to": "internal_via_protocol_test_testgetvaluerejectsunhandledresponse", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_test", "to": "internal_via_protocol_test_testsetvalueusesqmkrgblightpayload", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_test", "to": "internal_via_protocol_test_testsetvalueconsumesqmkresponse", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_test", "to": "internal_via_protocol_test_testsetcolorusesqmkcolorvalue", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_test", "to": "via_faketransport", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_test", "to": "internal_via_protocol_test_testdisablelightingusesallimpact80channels", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_faketransport", "to": "via_faketransport_sendreport", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_faketransport", "to": "via_faketransport_read", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_faketransport", "to": "via_faketransport_close", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "agents", "to": "agents_agent_guidelines_wobkey_impact_80_rgb_cli", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "agents_agent_guidelines_wobkey_impact_80_rgb_cli", "to": "agents_graphify", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "agents_agent_guidelines_wobkey_impact_80_rgb_cli", "to": "agents_cli_interface", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "agents_agent_guidelines_wobkey_impact_80_rgb_cli", "to": "agents_objective", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "agents_agent_guidelines_wobkey_impact_80_rgb_cli", "to": "agents_via_protocol_essentials", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "agents_agent_guidelines_wobkey_impact_80_rgb_cli", "to": "agents_keyboards_known_wobkey_vid_pid", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "agents_agent_guidelines_wobkey_impact_80_rgb_cli", "to": "agents_stack", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "agents_agent_guidelines_wobkey_impact_80_rgb_cli", "to": "agents_constraints", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "agents_agent_guidelines_wobkey_impact_80_rgb_cli", "to": "agents_architecture", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "agents_agent_guidelines_wobkey_impact_80_rgb_cli", "to": "agents_go_development", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "agents_concurrency", "to": "agents_go_development", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "agents_error_handling", "to": "agents_go_development", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "agents_go_development", "to": "agents_testing", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "agents_go_development", "to": "agents_modules_packages", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "agents_go_development", "to": "agents_tooling", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "agents_go_development", "to": "agents_style_effective_go_code_review_comments", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "agents_go_development", "to": "agents_interfaces_types", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_go_via_protocol", "to": "via_transport", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_go_via_protocol", "to": "via_protocol_setcolor", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_go_via_protocol", "to": "via_protocol_getvalue", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_go_via_protocol", "to": "via_protocol_readresponse", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_go_via_protocol", "to": "via_protocol_close", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_go_via_protocol", "to": "via_protocol_setvalue", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_go_via_protocol", "to": "via_protocol_disablelighting", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "internal_via_protocol_go_via_protocol", "to": "via_protocol_enablelighting", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_ledtype", "to": "via_protocol_getvalue", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_ledtype", "to": "via_protocol_readresponse", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_ledtype", "to": "via_protocol_setcolor", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_ledtype", "to": "via_protocol_setvalue", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_message", "to": "via_protocol_readresponse", "label": "references", "title": "references [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_protocol_disablelighting", "to": "via_protocol_setvalue", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_protocol_enablelighting", "to": "via_protocol_setvalue", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_protocol_getvalue", "to": "via_transport_sendreport", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_protocol_getvalue", "to": "via_protocol_readresponse", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_protocol_readresponse", "to": "via_transport_read", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_protocol_readresponse", "to": "via_protocol_setcolor", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_protocol_readresponse", "to": "via_protocol_setvalue", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_protocol_setcolor", "to": "via_transport_sendreport", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_protocol_setvalue", "to": "via_transport_sendreport", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_transport", "to": "via_transport_sendreport", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_transport", "to": "via_transport_read", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "via_transport", "to": "via_transport_close", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}];
  71. const LEGEND = [{"cid": 0, "color": "#4E79A7", "label": "Open Issues", "count": 8}, {"cid": 1, "color": "#F28E2B", "label": "main.go", "count": 25}, {"cid": 2, "color": "#E15759", "label": "hid.go", "count": 28}, {"cid": 3, "color": "#76B7B2", "label": "OpenDevice", "count": 22}, {"cid": 4, "color": "#59A14F", "label": "device.go", "count": 13}, {"cid": 5, "color": "#EDC948", "label": "What You Must Do When Invoked", "count": 25}, {"cid": 6, "color": "#B07AA1", "label": "testing.T", "count": 19}, {"cid": 7, "color": "#FF9DA7", "label": "Agent Guidelines \u2014 Wobkey Impact 80 RGB CLI", "count": 18}, {"cid": 9, "color": "#BAB0AC", "label": "Protocol", "count": 14}, {"cid": 10, "color": "#4E79A7", "label": "Wobkey RGB CLI", "count": 11}, {"cid": 11, "color": "#F28E2B", "label": "graphify.js", "count": 5}, {"cid": 12, "color": "#E15759", "label": "graphify reference: extra exports and benchmark", "count": 9}, {"cid": 13, "color": "#76B7B2", "label": "opencode.json", "count": 3}, {"cid": 14, "color": "#59A14F", "label": "github.com/wobkey/rgb", "count": 1}, {"cid": 15, "color": "#EDC948", "label": "graphify reference: query, path, explain", "count": 6}, {"cid": 16, "color": "#B07AA1", "label": "graphify reference: add a URL and watch a folder", "count": 4}, {"cid": 17, "color": "#FF9DA7", "label": "graphify reference: commit hook and native CLAUDE.md integration", "count": 4}, {"cid": 18, "color": "#9C755F", "label": "graphify reference: incremental update and cluster-only", "count": 4}, {"cid": 19, "color": "#BAB0AC", "label": "graphify reference: GitHub clone and cross-repo merge", "count": 3}, {"cid": 20, "color": "#4E79A7", "label": "graphify reference: transcribe video and audio", "count": 3}, {"cid": 21, "color": "#F28E2B", "label": "CLAUDE.md", "count": 2}, {"cid": 22, "color": "#E15759", "label": ".claude/CLAUDE.md", "count": 2}, {"cid": 23, "color": "#76B7B2", "label": "extraction-spec.md", "count": 2}];
  72. // HTML-escape helper — prevents XSS when injecting graph data into innerHTML
  73. function esc(s) {
  74. return String(s).replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;').replace(/"/g,'&quot;').replace(/'/g,'&#39;');
  75. }
  76. // Build vis datasets
  77. const nodesDS = new vis.DataSet(RAW_NODES.map((n, i) => ({
  78. id: n.id, label: n.label, color: n.color, size: n.size,
  79. font: n.font, title: n.title,
  80. // Fermat/golden-angle spiral seed positions (#3699): spreading nodes out
  81. // before physics runs keeps avoidOverlap from computing near-zero-distance
  82. // repulsion that blows the BarnesHut recursion into a stack overflow on large
  83. // graphs. `i` is the map index — physics still settles small graphs identically.
  84. x: 30 * Math.sqrt(i) * Math.cos(i * 2.4),
  85. y: 30 * Math.sqrt(i) * Math.sin(i * 2.4),
  86. _community: n.community, _community_name: n.community_name,
  87. _source_file: n.source_file, _file_type: n.file_type, _degree: n.degree,
  88. })));
  89. const edgesDS = new vis.DataSet(RAW_EDGES.map((e, i) => ({
  90. id: i, from: e.from, to: e.to,
  91. label: '',
  92. title: e.title,
  93. dashes: e.dashes,
  94. width: e.width,
  95. color: e.color,
  96. arrows: { to: { enabled: true, scaleFactor: 0.5 } },
  97. })));
  98. const container = document.getElementById('graph');
  99. const network = new vis.Network(container, { nodes: nodesDS, edges: edgesDS }, {
  100. physics: {
  101. enabled: true,
  102. solver: 'forceAtlas2Based',
  103. forceAtlas2Based: {
  104. gravitationalConstant: -60,
  105. centralGravity: 0.005,
  106. springLength: 120,
  107. springConstant: 0.08,
  108. damping: 0.4,
  109. avoidOverlap: 0.8,
  110. },
  111. stabilization: { iterations: 200, fit: true },
  112. },
  113. interaction: {
  114. hover: true,
  115. tooltipDelay: 100,
  116. hideEdgesOnDrag: true,
  117. navigationButtons: false,
  118. keyboard: false,
  119. },
  120. nodes: { shape: 'dot', borderWidth: 1.5 },
  121. edges: { smooth: { type: 'continuous', roundness: 0.2 }, selectionWidth: 3 },
  122. });
  123. network.once('stabilizationIterationsDone', () => {
  124. network.setOptions({ physics: { enabled: false } });
  125. });
  126. function showInfo(nodeId) {
  127. const n = nodesDS.get(nodeId);
  128. if (!n) return;
  129. const neighborIds = network.getConnectedNodes(nodeId);
  130. const neighborItems = neighborIds.map(nid => {
  131. const nb = nodesDS.get(nid);
  132. const color = nb ? nb.color.background : '#555';
  133. return `<span class="neighbor-link" style="border-left-color:${esc(color)}" data-nid="${esc(nid)}">${esc(nb ? nb.label : nid)}</span>`;
  134. }).join('');
  135. document.getElementById('info-content').innerHTML = `
  136. <div class="field"><b>${esc(n.label)}</b></div>
  137. <div class="field">Type: ${esc(n._file_type || 'unknown')}</div>
  138. <div class="field">Community: ${esc(n._community_name)}</div>
  139. <div class="field">Source: ${esc(n._source_file || '-')}</div>
  140. <div class="field">Degree: ${n._degree}</div>
  141. ${neighborIds.length ? `<div class="field" style="margin-top:8px;color:#aaa;font-size:11px">Neighbors (${neighborIds.length})</div><div id="neighbors-list">${neighborItems}</div>` : ''}
  142. `;
  143. }
  144. function focusNode(nodeId) {
  145. network.focus(nodeId, { scale: 1.4, animation: true });
  146. network.selectNodes([nodeId]);
  147. showInfo(nodeId);
  148. }
  149. // Neighbor links use a data attribute + one delegated listener rather than an
  150. // inline onclick. A node id/label sourced from a document or a scraped URL
  151. // (graphify add) can contain a double-quote; dropping the stringified id
  152. // unescaped into a quoted onclick both broke every link and allowed a hostile
  153. // source to inject an event handler into the local report (stored XSS, #1838).
  154. // esc() on data-nid keeps the value inside the attribute; the listener reads it
  155. // back verbatim. Bound to document so it survives the innerHTML rebuild that
  156. // recreates #neighbors-list on each showInfo().
  157. document.addEventListener('click', e => {
  158. const el = e.target.closest('.neighbor-link');
  159. if (el && el.dataset.nid !== undefined) focusNode(el.dataset.nid);
  160. });
  161. // Track hovered node — hover detection is more reliable than click params
  162. let hoveredNodeId = null;
  163. network.on('hoverNode', params => {
  164. hoveredNodeId = params.node;
  165. container.style.cursor = 'pointer';
  166. });
  167. network.on('blurNode', () => {
  168. hoveredNodeId = null;
  169. container.style.cursor = 'default';
  170. });
  171. container.addEventListener('click', () => {
  172. if (hoveredNodeId !== null) {
  173. showInfo(hoveredNodeId);
  174. network.selectNodes([hoveredNodeId]);
  175. }
  176. });
  177. network.on('click', params => {
  178. if (params.nodes.length > 0) {
  179. showInfo(params.nodes[0]);
  180. } else if (hoveredNodeId === null) {
  181. document.getElementById('info-content').innerHTML = '<span class="empty">Click a node to inspect it</span>';
  182. }
  183. });
  184. const searchInput = document.getElementById('search');
  185. const searchResults = document.getElementById('search-results');
  186. searchInput.addEventListener('input', () => {
  187. const q = searchInput.value.toLowerCase().trim();
  188. searchResults.innerHTML = '';
  189. if (!q) { searchResults.style.display = 'none'; return; }
  190. const matches = RAW_NODES.filter(n => n.label.toLowerCase().includes(q)).slice(0, 20);
  191. if (!matches.length) { searchResults.style.display = 'none'; return; }
  192. searchResults.style.display = 'block';
  193. matches.forEach(n => {
  194. const el = document.createElement('div');
  195. el.className = 'search-item';
  196. el.textContent = n.label;
  197. el.style.borderLeft = `3px solid ${n.color.background}`;
  198. el.style.paddingLeft = '8px';
  199. el.onclick = () => {
  200. network.focus(n.id, { scale: 1.5, animation: true });
  201. network.selectNodes([n.id]);
  202. showInfo(n.id);
  203. searchResults.style.display = 'none';
  204. searchInput.value = '';
  205. };
  206. searchResults.appendChild(el);
  207. });
  208. });
  209. document.addEventListener('click', e => {
  210. if (!searchResults.contains(e.target) && e.target !== searchInput)
  211. searchResults.style.display = 'none';
  212. });
  213. const hiddenCommunities = new Set();
  214. const selectAllCb = document.getElementById('select-all-cb');
  215. function updateSelectAllState() {
  216. const total = LEGEND.length;
  217. const hidden = hiddenCommunities.size;
  218. selectAllCb.checked = hidden === 0;
  219. selectAllCb.indeterminate = hidden > 0 && hidden < total;
  220. }
  221. function toggleAllCommunities(hide) {
  222. document.querySelectorAll('.legend-item').forEach(item => {
  223. hide ? item.classList.add('dimmed') : item.classList.remove('dimmed');
  224. });
  225. document.querySelectorAll('.legend-cb').forEach(cb => {
  226. cb.checked = !hide;
  227. });
  228. LEGEND.forEach(c => {
  229. if (hide) hiddenCommunities.add(c.cid); else hiddenCommunities.delete(c.cid);
  230. });
  231. const updates = RAW_NODES.map(n => ({ id: n.id, hidden: hide }));
  232. nodesDS.update(updates);
  233. updateSelectAllState();
  234. }
  235. const legendEl = document.getElementById('legend');
  236. LEGEND.forEach(c => {
  237. const item = document.createElement('div');
  238. item.className = 'legend-item';
  239. const cb = document.createElement('input');
  240. cb.type = 'checkbox';
  241. cb.className = 'legend-cb';
  242. cb.checked = true;
  243. cb.addEventListener('change', (e) => {
  244. e.stopPropagation();
  245. if (cb.checked) {
  246. hiddenCommunities.delete(c.cid);
  247. item.classList.remove('dimmed');
  248. } else {
  249. hiddenCommunities.add(c.cid);
  250. item.classList.add('dimmed');
  251. }
  252. const updates = RAW_NODES
  253. .filter(n => n.community === c.cid)
  254. .map(n => ({ id: n.id, hidden: !cb.checked }));
  255. nodesDS.update(updates);
  256. updateSelectAllState();
  257. });
  258. item.innerHTML = `<div class="legend-dot" style="background:${c.color}"></div>
  259. <span class="legend-label">${c.label}</span>
  260. <span class="legend-count">${c.count}</span>`;
  261. item.prepend(cb);
  262. item.onclick = (e) => {
  263. if (e.target === cb) return;
  264. cb.checked = !cb.checked;
  265. cb.dispatchEvent(new Event('change'));
  266. };
  267. legendEl.appendChild(item);
  268. });
  269. </script>
  270. <script>
  271. // Render hyperedges as shaded regions
  272. const hyperedges = [];
  273. // afterDrawing passes ctx already transformed to network coordinate space.
  274. // Draw node positions raw — no manual pan/zoom/DPR math needed.
  275. // Andrew's monotone chain. Returns the hull in counter-clockwise order, which
  276. // is what the perimeter must be traced in. Collinear and duplicate points
  277. // collapse to the extremes, so degenerate member sets render as a segment
  278. // rather than a zero-area crossed path.
  279. function convexHull(pts) {
  280. const p = pts.slice().sort((a, b) => (a.x - b.x) || (a.y - b.y));
  281. if (p.length < 3) return p;
  282. const cross = (o, a, b) => (a.x - o.x) * (b.y - o.y) - (a.y - o.y) * (b.x - o.x);
  283. const build = seq => {
  284. const out = [];
  285. for (const q of seq) {
  286. while (out.length >= 2 && cross(out[out.length - 2], out[out.length - 1], q) <= 0) out.pop();
  287. out.push(q);
  288. }
  289. out.pop();
  290. return out;
  291. };
  292. const hull = build(p).concat(build(p.slice().reverse()));
  293. return hull.length >= 3 ? hull : p;
  294. }
  295. network.on('afterDrawing', function(ctx) {
  296. hyperedges.forEach(h => {
  297. const positions = h.nodes
  298. .map(nid => network.getPositions([nid])[nid])
  299. .filter(p => p !== undefined);
  300. if (positions.length < 2) return;
  301. ctx.save();
  302. ctx.globalAlpha = 0.12;
  303. ctx.fillStyle = '#6366f1';
  304. ctx.strokeStyle = '#6366f1';
  305. ctx.lineWidth = 2;
  306. ctx.beginPath();
  307. // Centroid and expanded hull in network coordinates.
  308. // The perimeter must follow hull order, not h.nodes order: tracing the
  309. // raw member order self-intersects whenever the layout does not happen
  310. // to place members in angular order, filling as crossed wedges.
  311. const cx = positions.reduce((s, p) => s + p.x, 0) / positions.length;
  312. const cy = positions.reduce((s, p) => s + p.y, 0) / positions.length;
  313. const hull = convexHull(positions);
  314. const expanded = hull.map(p => ({
  315. x: cx + (p.x - cx) * 1.15,
  316. y: cy + (p.y - cy) * 1.15
  317. }));
  318. ctx.moveTo(expanded[0].x, expanded[0].y);
  319. expanded.slice(1).forEach(p => ctx.lineTo(p.x, p.y));
  320. ctx.closePath();
  321. ctx.fill();
  322. ctx.globalAlpha = 0.4;
  323. ctx.stroke();
  324. // Label
  325. ctx.globalAlpha = 0.8;
  326. ctx.fillStyle = '#4f46e5';
  327. ctx.font = 'bold 11px sans-serif';
  328. ctx.textAlign = 'center';
  329. ctx.fillText(h.label, cx, cy - 5);
  330. ctx.restore();
  331. });
  332. });
  333. </script>
  334. </body>
  335. </html>