407d52b7git rev-parse HEAD and compare to check if the graph is stale.graphify update . after code changes (no API cost).Zone - 35 edgesLEDType - 31 edgesselectedZones() - 22 edgesAllZones() - 17 edgesResolveEffect() - 15 edgesQMK RGB Tool - 15 edgesinit() - 13 edgesNewBrightnessCmd() - 12 edgesOpenDevice() - 12 edgesselectDevice() - 12 edgesrunBrightness() --references--> LEDType [EXTRACTED]
cmd/qmk-rgb-tool/brightness_summary_test.go → internal/via/protocol.goappliedFor() --references--> LEDType [EXTRACTED]
cmd/qmk-rgb-tool/brightness_verify_test.go → internal/via/protocol.goTestSetBrightnessVerifiedReadsBackEveryZone() --calls--> AllZones() [EXTRACTED]
cmd/qmk-rgb-tool/brightness_verify_test.go → internal/rgb/impact80.goNewColorCmd() --calls--> ParseHexColor() [EXTRACTED]
cmd/qmk-rgb-tool/color.go → internal/rgb/effects.goTestSelectedChannelStopsOnFirstError() --calls--> AllZones() [EXTRACTED]
cmd/qmk-rgb-tool/commands_test.go → internal/rgb/impact80.goCohesion: 0.10 Nodes (38): runRealKeyboardInfo(), stubDiscovery(), TestKeyboardInfoEmitsEmptyArrayNotNull(), TestKeyboardInfoEmitsIndentedJSON(), TestKeyboardInfoPropagatesDiscoveryError(), TestKeyboardInfoWritesOnlyJSON(), formatDeviceList(), selectDevice() (+30 more)
Cohesion: 0.10 Nodes (35): listAllEffects(), NewEffectCmd(), resolveEffectTargets(), runEffectSet(), executeEffectCommand(), TestEffectCommandRejectsBeforeOpeningProtocol(), TestEffectCommandSuppressesSuccessAfterLaterWriteFailure(), TestEffectCommandWarnsForSkippedZones() (+27 more)
Cohesion: 0.10 Nodes (11): TestSelectedChannelStopsOnFirstError(), LEDType, Protocol, New(), commandReport, fakeInfoProtocol, fakeZoneProtocol, infoKey (+3 more)
Cohesion: 0.21 Nodes (20): TestSelectedChannelOperations(), anyMismatch(), disableLightingOnZones(), enableLightingOnZones(), forEachSelectedZone(), setBrightnessOnZones(), setBrightnessVerified(), setColorOnZones() (+12 more)
Cohesion: 0.10 Nodes (39): TestOneArgCommandsKeepTheirArity(), TestZeroArgCommandsAcceptNoArgs(), TestZeroArgCommandsRejectStrayTokens(), NewBrightnessCmd(), NewColorCmd(), NewDisableCmd(), NewEnableCmd(), NewInfoCmd() (+31 more)
Cohesion: 0.18 Nodes (12): go_pkg_github_com_sstallion_go_hid, go_pkg_sync, go_pkg_time, Device, DeviceInfo, DevicesInfo, DiscoverAll(), ensureInit() (+4 more)
Cohesion: 0.19 Nodes (12): sameZones(), TestFilterZonesDoesNotAddMissingZones(), TestFilterZonesDoesNotMutateInput(), TestFilterZonesKeepsOnlyTheSelection(), filterZones(), go_pkg_math, ParseEffect(), ParseHexColor() (+4 more)
Cohesion: 0.08 Nodes (24): For /graphify add and --watch, For /graphify query, For the commit hook and native CLAUDE.md integration, For --update and --cluster-only, /graphify, Honesty Rules, Interpreter guard for subcommands, Part A - Structural extraction for code files (+16 more)
Cohesion: 0.06 Nodes (60): TestAgentsDocDoesNotDuplicateTheCommandTable(), TestAgentsDocDoesNotDuplicateTheEffectCatalog(), TestAgentsDocTellsAgentsToReadTheReadme(), runBrightness(), TestBrightnessReportsPlainMessageWhenAllZonesMatch(), TestBrightnessSummarisesAppliedValuesOnMismatch(), TestBrightnessSummarisesASingleMismatchingZone(), TestBrightnessSummaryNamesOnlySelectedZones() (+52 more)
Cohesion: 0.36 Nodes (9): getInfoValue(), readInfo(), readZoneInfo(), lightingEnabled(), TestLightingEnabledRequiresActiveEffectAndBrightness(), infoColor, infoGetter, infoOutput (+1 more)
Cohesion: 0.40 Nodes (3): IMPORTANT: keep the reminder string free of backticks and $(...) constructs., ref_fs, ref_path
Cohesion: 0.10 Nodes (19): Agent Guidelines — QMK RGB Tool, Architecture, Code vs Documentation, Concurrency, Consistency, Constraints, Device Selection, Error Handling (+11 more)
Cohesion: 0.10 Nodes (20): Architecture, Brightness and Speed Are Not Applied Verbatim, CLI Reference, Compatibility Aliases, Effect Behavior, Features, Impact 80 Zones and Effects, Installation (+12 more)
Cohesion: 0.46 Nodes (7): runProfileList(), TestProfileListEmitsJSONWithoutProfiles(), TestProfileListEmitsJSONWithProfiles(), TestProfileListUsesTheSharedJSONShape(), withProfilesDir(), go_pkg_path_filepath, profileListOutput
Cohesion: 0.15 Nodes (12): 1. First, get the tool's own help, 2. If the tool is not built or no keyboard is connected, 3. When a user wants to change something, 4. Profiles, Compatibility aliases, How to answer, Known limitations, /qmk-rgb (+4 more)
Cohesion: 0.18 Nodes (10): Continue With Hardware, Cross-Platform HID Backends, Effect Families, Handoff Status, Hardware Environment, Open Issues, Status, Verification (+2 more)
Cohesion: 0.22 Nodes (8): graphify reference: extra exports and benchmark, Step 6b - Wiki (only if --wiki flag), Step 7 - Neo4j export (only if --neo4j or --neo4j-push flag), Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag), Step 7b - SVG export (only if --svg flag), Step 7c - GraphML export (only if --graphml flag), Step 7d - MCP server (only if --mcp flag), Step 8 - Token reduction benchmark (only if total_words > 5000)
Cohesion: 0.33 Nodes (5): For /graphify explain, For /graphify path, graphify reference: query, path, explain, Step 0 — Constrained query expansion (REQUIRED before traversal), Step 1 — Traversal
Cohesion: 0.50 Nodes (3): For /graphify add, For --watch, graphify reference: add a URL and watch a folder
Cohesion: 0.50 Nodes (3): For git commit hook, For native CLAUDE.md integration, graphify reference: commit hook and native CLAUDE.md integration
Cohesion: 0.50 Nodes (3): For --cluster-only, For --update (incremental re-extraction), graphify reference: incremental update and cluster-only
$schema, plugin, profileListOutput, netdome.biz/paul/qmk-rgb, LEDParam (+94 more)
These have ≤1 connection - possible missing edges or undocumented components. (Counts symbols only; 144 node(s) total have ≤1 connection when file, concept and rationale nodes are included.)graphify query to explore isolated nodes.Questions this graph is uniquely positioned to answer:
LEDType connect LEDType to impact80.go, Zone, profile.go, testing.T, info.go?
High betweenness centrality (0.049) - this node is a cross-community bridge.Zone connect Zone to impact80.go, profile.go, info.go, effects.go?
High betweenness centrality (0.022) - this node is a cross-community bridge.Zone (e.g. with TestImpact80DefaultEffects() and TestImpact80LogoAndSideCatalog()) actually correct?
Zone has 3 INFERRED edges - model-reasoned connections that need verification.selectedZones() (e.g. with NewBrightnessCmd() and NewColorCmd()) actually correct?
selectedZones() has 18 INFERRED edges - model-reasoned connections that need verification.$schema, plugin, profileListOutput to the rest of the system?
99 weakly-connected nodes found - possible documentation gaps or missing edges.device.go be split into smaller, more focused modules?
Cohesion score 0.10077519379844961 - nodes in this community are weakly interconnected.impact80.go be split into smaller, more focused modules?
Cohesion score 0.09872241579558652 - nodes in this community are weakly interconnected.