Repository navigation
Description
Plugin Name
homebridge-gouly
Link To GitHub Repo
https://github.com/maxrogers/homebridge-gouly
Plugin Icon (Optional)
The plugin does not offer the same nor less functionality than that of any existing verified plugin.
🟢 Yes
The plugin successfully installs and does not start unless it is configured.
🟢 Yes
The plugin does not require the user to run Homebridge in a TTY or with non-standard startup parameters, even for initial configuration.
🟢 Yes
The plugin does not contain any analytics or calls that enable you to track the user.
🟢 Yes
If the plugin needs to write files to disk (cache, keys, etc.), it stores them inside the Homebridge storage directory.
🟢 Yes
The plugin does not throw unhandled exceptions, the plugin must catch and log its own errors.
🟢 Yes
More Information
homebridge-gouly gives local, cloud-free HomeKit control of Gouly permanent outdoor lighting
controllers: power, brightness, color and warm white, plus the controller's animated patterns as
switches (recorded from the Gouly app or built in the plugin's editor), with optional groups.
Gouly controllers expose only two Tuya data points: 20 (power) and 101, which carries
Gouly's own command frames for brightness, color, warm white and effects. The existing
Tuya plugins (homebridge-tuya and its forks, and the Tuya platform plugin) work through
Tuya's standard light data points, so with these controllers they can offer on/off at most.
Notes for the review:
- Python 3 is required (it is included in the official Docker and Raspberry Pi images). The plugin
runs a small Python helper built on the bundled tinytuya library, because Node's Tuya libraries
lose track of these controllers' protocol 3.4 sessions. Nothing is installed with pip.
homebridge-kasa-python is a verified plugin that uses the same approach. - Settings use a custom UI (homebridge-ui) together with config.schema.json. Files are written only
to /gouly.
Activity
github-actions commentedon Oct 15, 2026
🔴 Failed Checks
keywordsmust include at least one of'supports-hap'or'supports-matter'— see Declaring Supported Transportsrequiredshould not be a boolean property on individual fields. In JSON Schema,requiredmust be an array at the object level listing required property names. Remove"required": true/falsefrom individual properties and use"required": ["property1", "property2"]at the object level instead.nameschema property🟢 Passed Checks
homepageexistsbugs.urlexists and seems a valid URLkeywordsexist and contain'homebridge-plugin''preinstall'inscriptsis not present'install'inscriptsis not present'postinstall'inscriptsis not presentengines.nodeproperty is compatible with Node 22engines.nodeproperty is compatible with Node 24engines.homebridgeproperty is compatible with Homebridge 2.4.0pluginAliaspluginAliasmatches the platform/accessory registered in codepluginTypeis set to'platform'homebridgeis not declared as a runtime/peer/bundled dependencyhap-nodejsis not declared as a runtime/peer/bundled dependency🔍 For Manual Review
The following items were detected and require manual review. We understand that these items may be false positives.
ℹ️ Check Details
v1.0.1of the plugin.📋 Next Steps
/checkon this issue to run the checks again — your request will not move forward until the checks are re-run.package.jsonandconfig.schema.jsonfiles, don't forget to publish a new version to NPM.maxrogers commentedon Oct 15, 2026
/check
NOTE:
The "accesses environment files" item: dist/connection.js and dist/discovery.js pass the
controller's Device ID and Local Key to the plugin's bundled Python helper (python/gouly_bridge.py,
python/gouly_probe.py) through an environment variable (GOULY_BRIDGE_CONFIG / GOULY_PROBE_CONFIG)
on spawn, so the key does not appear in process listings via argv. The child inherits
process.env plus that one variable. No .env files are read, and nothing is written outside
/gouly. The third match is homebridge-ui/server.js reading HOMEBRIDGE_UI_VERSION
for the debug report.
github-actions commentedon Oct 15, 2026
🟢 Passed Checks
homepageexistsbugs.urlexists and seems a valid URLkeywordsexist and contain'homebridge-plugin'keywordsdeclare the supported transports ('supports-hap'and/or'supports-matter')'preinstall'inscriptsis not present'install'inscriptsis not present'postinstall'inscriptsis not presentengines.nodeproperty is compatible with Node 22engines.nodeproperty is compatible with Node 24engines.homebridgeproperty is compatible with Homebridge 2.4.0typepropertypropertiesfor object typepluginAliaspluginAliasmatches the platform/accessory registered in codepluginTypeis set to'platform'nameschema propertyhomebridgeis not declared as a runtime/peer/bundled dependencyhap-nodejsis not declared as a runtime/peer/bundled dependency🔍 For Manual Review
The following items were detected and require manual review. We understand that these items may be false positives.
ℹ️ Check Details
v1.0.2of the plugin.📋 Next Steps
All checks passed successfully, nice work! Your plugin and/or icon will now be manually reviewed by the Homebridge team.
verify: homebridge-gouly
github-actions commentedon Oct 18, 2026
Congratulations! Your plugin has been verified!
You can now add one of the Verified by Homebridge badges to your plugin's README:
Your plugin is now also eligible to display a ❤️ Donate button on its tile in the Homebridge UI. See https://github.com/homebridge/homebridge/wiki/Donation-Links for instructions.
Interested in getting a
@homebridge-plugins/scope for your plugin? See our Homebridge Scoped Plugins program.If for any reason in the future you can no longer maintain your plugin, please consider transferring it to our Homebridge Plugins organization.
Don't forget to join the official Homebridge Discord server, where plugin developers can get tips and advice from other developers and the Homebridge project team in the #plugin-development channel!
As a verified plugin, you can request a channel in the Discord server to discuss your plugin with users and other developers. Just ask in the #plugin-development channel.
Thank you for your contribution to the Homebridge community.
bwp91 commentedon Oct 18, 2026
Hi @maxrogers
It's now verified 🎉 I've added your icon too, so it should start showing in the Homebridge UI within the hour.
Nicely done, keeping everything local, and restarting the Python helper if it exits.
One small thing for a future version:
acc.displayName = name(src/platform.ts:82) doesn't rename a cached accessory. Useacc.updateDisplayName(...)for that.Thanks for contributing to Homebridge!