github.com/wobkey/rgb)git init + AGENTS.md + README.mdcmd/wobkey/, internal/device/, internal/hid/, internal/rgb/, internal/via//dev/hidraw* + parses /sys/bus/hid/devices/*/uevent (no cgo, no libudev)0x36B0, PID 0x309F) and Rainy 75go build ✅ go vet ✅ go test ./internal/rgb/... (18/18 pass) ✅ gofmt cleankeyboards.json with decimal VID/PIDAll /dev/hidraw* are root:root 600. The tool can't open them as paul.
Action for next session:
sudo chown root:adm /dev/hidraw* && sudo chmod 660 /dev/hidraw*ls -la /dev/hidraw* shows group adm with rw for group/tmp/wobkey keyboard info — should output JSON with the Impact 80Once permissions are fixed:
/tmp/wobkey keyboard info — verify Impact 80 is discovered/tmp/wobkey rgb disable — test disable/tmp/wobkey rgb enable — test enable/tmp/wobkey rgb info — verify it returns JSON state/tmp/wobkey rgb effect rainbow — test effect switching/tmp/wobkey rgb brightness 200 — test brightness/tmp/wobkey rgb color ff0000 — test red colorCurrent implementation is a hack: it treats R→hue, G→saturation with no actual RGB→HSV conversion.
Action:
rgbto.hsv() conversion in internal/rgb/effects.gowobkey rgb color ff0000 actually red instead of unpredictableCurrent code uses hardcoded numbers that need verification against QMK spec:
rgb.Mode (param 0) ✅rgb.Brightness (param 1) ✅rgb.Speed (param 2) ✅rgb.Enable (param 3) ✅Action:
internal/rgb/effects.goCurrently only internal/rgb/effects_test.go has tests (18/18 pass).
Action:
internal/device/device_test.go — test LoadKeyboards (parse JSON file)internal/hid/hid_test.go — test parseHex and splitLines helper functionsinternal/via/protocol_test.go — mock-based tests for protocol methodsThe pure-Go HID layer should work on macOS/Windows, but needs verification.
Action:
GOOS=darwin GOARCH=amd64 go build -o dist/wobkey-darwin-amd64 ./cmd/wobkey/GOOS=darwin GOARCH=arm64 go build -o dist/wobkey-darwin-arm64 ./cmd/wobkey/GOOS=windows GOARCH=amd64 go build -o dist/wobkey-windows-amd64.exe ./cmd/wobkey//dev/hidraw*) won't work on macOS/Windows — need conditional compilation or platform-specific HID backends# 1. Fix permissions (requires sudo)
sudo chown root:adm /dev/hidraw* && sudo chmod 660 /dev/hidraw*
# 2. Rebuild with latest code
go build -o /tmp/wobkey ./cmd/wobkey/
# 3. Test discovery
/tmp/wobkey keyboard info
# 4. Test RGB commands
/tmp/wobkey rgb disable
/tmp/wobkey rgb enable
/tmp/wobkey rgb info
# 5. Run all tests
go test ./...