Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
730 commits
Select commit Hold shift + click to select a range
90c253e
Support Soil Sensor device type (#2757)
nickolas-deboom May 6, 2026
608a9ff
Merge branch 'beta' into release/beta-5-6-26
hcarter-775 May 6, 2026
51c33f1
Merge pull request #2951 from SmartThingsCommunity/release/beta-5-6-26
hcarter-775 May 6, 2026
ba2b1e3
Matter Switch: Version gate the extra init event on added (#2938)
hcarter-775 May 7, 2026
d116b07
add clear user failure test during defaultSchedule (#2950)
hcarter-775 May 7, 2026
b72fbc9
update st energy reporting interval for multi-plugs (#2803)
hcarter-775 May 7, 2026
7dc266a
IKEA BILRESA Scroll: Populate subscribed attributes key to fix refres…
nickolas-deboom May 8, 2026
a4ddf6c
WWSTCERT-11539 Smart AC Controller (#2953)
cbaumler May 8, 2026
d8f43d0
Add Allegion(Schlage) products to allowed list (#2935)
HunsupJung May 12, 2026
834b3db
Changing sha to point at pull_request.head.sha
aleclorimer May 11, 2026
36c2970
Merge pull request #2957 from SmartThingsCommunity/jenkins-driver-inv…
aleclorimer May 12, 2026
e645be8
Add support for Closure device type (#2875)
nickolas-deboom May 12, 2026
853b02b
add MultiIR Siren MIR-SR100 (#2873)
thinkaName May 12, 2026
4e5a873
Merge pull request #2966 from SmartThingsCommunity/main
cjswedes May 13, 2026
9405cda
CHAD-16991: Removed zwave-button apiv6 subdriver
aleclorimer May 13, 2026
449e279
CHAD-16991: Removed zwave-lock apiv6 subdriver
aleclorimer May 13, 2026
a80ca3d
CHAD-16991: Removed zwave-sensor apiv6 subdriver
aleclorimer May 13, 2026
d84fe48
CHAD-16991: Removed zwave-siren apiv6 subdriver
aleclorimer May 13, 2026
6480128
CHAD-16991: Removed zwave-smoke-alarm apiv6 subdriver
aleclorimer May 13, 2026
24d3505
CHAD-16991: Removed zwave-thermostat apiv6 subdriver
aleclorimer May 13, 2026
a9d9f6a
Merge pull request #2968 from SmartThingsCommunity/remove-apiv6-subdr…
aleclorimer May 14, 2026
758245b
Fix duplicate profile check to handle deleted files
nand-nor May 18, 2026
732cc20
Emit warning when profile files are deleted in PR
nand-nor May 18, 2026
67dd8a8
Merge pull request #2976 from SmartThingsCommunity/fix/ci-script-fix-…
nand-nor May 18, 2026
1607bb3
Add AGENTS.md and a set of skills to help agents in this repository
cjswedes May 15, 2026
76d6ef7
Merge pull request #2973 from SmartThingsCommunity/feat/agent-help
cjswedes May 18, 2026
5e428ad
WWSTCERT-11638 Govee Floor Lamp 3 (#2972)
cbaumler May 18, 2026
4485f2b
WWSTCERT-10701 Add Sonoff SNZB-01M Smart Scene Button into zigbee-but…
Oniums May 19, 2026
7bdbb97
WWSTCERT-9844 Aqara Smart Lock U400 (#2805)
greens May 19, 2026
e2d6a8e
Fix handling for cameras without per-zone sensitivity handling
ctowns May 12, 2026
236d4a9
Merge pull request #2965 from SmartThingsCommunity/bugfix/no-per-zone…
ctowns May 19, 2026
8c3cf23
WWSTCERT-11708 Govee Ceiling Light Pro (#2984)
cbaumler May 19, 2026
66d9df4
WWSTCERT-11719 Linkind Smart Light Bulb (#2985)
cbaumler May 19, 2026
8b1cecd
Matter Switch: remove ghost events, provision after driver switch (#2…
hcarter-775 May 19, 2026
f666489
Provision driver switch in Matter Sensor (#2981)
hcarter-775 May 19, 2026
cb154a8
Provision driver switch in Matter RVC (#2980)
hcarter-775 May 19, 2026
3015ace
Provision driver switch in Matter Lock (#2979)
hcarter-775 May 19, 2026
a80ea6f
Merge branch 'beta' into main
ctowns May 20, 2026
934dd80
Merge pull request #2987 from SmartThingsCommunity/main
ctowns May 20, 2026
5bdca1e
Matter Switch: Register setColorTemperature native handler (#2988)
hcarter-775 May 20, 2026
7997c4a
WWSTCERT-11548 Dreame NAVO Smart Lock A10 (#2963)
cbaumler May 21, 2026
f1dbe34
[Aqara] add Aqara Bath Heater T1 (#2942)
seojune79 May 21, 2026
8c953ac
add laisiao_bathheate_DG60GCM-04-2904W (#2970)
thinkaName May 22, 2026
1d6aae9
WWSTCERT-11645 Govee Uplighter Floor Lamp with Nebula Effect (#2994)
cbaumler May 22, 2026
1e2b9e8
WWSTCERT-11863 Linkind Light Stick T19 (#2996)
cbaumler May 22, 2026
dbbcc5f
Matter Switch: Register ColorTemperatureMireds native handler (#2990)
hcarter-775 May 26, 2026
da0a68c
WWSTCERT-11879 Linkind Smart Ceiling Light (#2999)
cbaumler May 26, 2026
26097e6
WWSTCERT-11914 Dreame NAVO Smart Lock E10 (#3001)
cbaumler May 26, 2026
5027388
WWSTCERT-11858 Tapo smart Power strip (#3000)
cbaumler May 26, 2026
8d9f3a7
Add BITUO TECHNIK OEM devices for the Zemismart manufacturer (#2986)
script0803 May 26, 2026
bb23ee7
min delta should be 0.0, use total if negative (#2993)
hcarter-775 May 26, 2026
9ea26b6
Merge pull request #3002 from SmartThingsCommunity/main
aleclorimer May 27, 2026
dd8ec73
WWSTCERT-11891: Linkind Smart Ceiling Light (#3004)
cbaumler May 28, 2026
dd871ed
WWSTCERT-11941 OSRAM PLANON SLIM (#3005)
cbaumler May 28, 2026
2f28b5a
Matter Camera: Prevent duplicate zones in triggeredZones report
ctowns May 29, 2026
a709fa4
Update fingerprints.lua for aqara matter lock j200 and u500
feiyeep Jun 2, 2026
5b6e514
Merge pull request #3008 from SmartThingsCommunity/bugfix/duplicate-t…
ctowns Jun 2, 2026
917bdad
Zigbee Switch: Add Stateless Step ZLL Refresh (#3006)
hcarter-775 Jun 2, 2026
2feb8bc
Merge pull request #3012 from SmartThingsCommunity/main
hcarter-775 Jun 3, 2026
268c9be
samsung-audio: guard missing UIC fields to avoid coroutine crashes
cjswedes Jun 3, 2026
90b5145
matter-lock: guard unknown lock state capability emissions
cjswedes Jun 3, 2026
b5b9a97
Fix Sinope valve scheduled battery read device context
cjswedes Jun 3, 2026
a63f5fd
Fix ZLL polling coroutine and stale device callbacks
cjswedes Jun 3, 2026
7149730
Merge pull request #3011 from Aqara-IOT/main
tpmanley Jun 4, 2026
5de3b1f
Merge pull request #3015 from SmartThingsCommunity/fix/coroutine-errors
cjswedes Jun 4, 2026
117858d
WWSTCERT-12039 Cync Smart Shop Light (#3016)
cbaumler Jun 8, 2026
efa52a6
Add `videoCapture2` to `detailView` in `deviceConfig`
samadDotDev Jun 8, 2026
42a6a23
WWSTCERT-12050 Mini Smart Wi-Fi Plug Energy Monitoring Matter (#3017)
cbaumler Jun 9, 2026
55a009f
Merge pull request #3020 from SmartThingsCommunity/main
cjswedes Jun 10, 2026
614a284
WWSTCERT-11943 Added support for Bosch Motion Detector II [+M] (#2555)
JanJakubiszyn Jun 12, 2026
26816e7
WWSTCERT-12050 Correct Mini Smart Wi-Fi Plug Matter fingerprint (#3021)
cbaumler Jun 12, 2026
09d82f7
WWSTCERT-12165 Aqara Smart Lock J200 (#3022)
cbaumler Jun 12, 2026
7de3ac6
WWSTCERT-12012 Linkind Smart Ceiling Fan (#3023)
cbaumler Jun 12, 2026
30f88ce
Merge pull request #3018 from SmartThingsCommunity/fix/videocapture2-…
samadDotDev Jun 15, 2026
79b4ee0
Isolate the eve-energy subdriver to private cluster usage (#3019)
samadDotDev Jun 15, 2026
f92f81d
Fix error when updating pin code (#3007)
HunsupJung Jun 16, 2026
f04eec5
Ledvance zigbee EM EU plug (#3009)
LQ107 Jun 16, 2026
2df9e62
Revert "WWSTCERT-12165 Aqara Smart Lock J200" (#3030)
cbaumler Jun 17, 2026
d740b1e
Matter Ikea Scroll: Aggregate multiple responses into one event, remo…
hcarter-775 Jun 17, 2026
79ecba3
Merge pull request #3032 from SmartThingsCommunity/main
ctowns Jun 17, 2026
8c73ff2
update new lifx fingerprints to include colorControl (#3034)
hcarter-775 Jun 17, 2026
b4d10a6
persist electrical tags that are used for profiling (#3038)
hcarter-775 Jun 22, 2026
fa41aa6
Add Initial FP400 profile and subdriver (#3024)
hcarter-775 Jun 22, 2026
c7fc031
add firstled-io_M4S4BAC (#2971)
thinkaName Jun 23, 2026
5f1eb23
update new lifx fingerprints to include colorControl (#3034)
hcarter-775 Jun 17, 2026
922a001
persist electrical tags that are used for profiling (#3038)
hcarter-775 Jun 22, 2026
2067aa5
Add Initial FP400 profile and subdriver (#3024)
hcarter-775 Jun 22, 2026
219c1d3
add firstled-io_M4S4BAC (#2971)
thinkaName Jun 23, 2026
ba0ed5a
add global scroll state for ikea scroll (#3039)
hcarter-775 Jun 23, 2026
ca15822
Aqara Bath Heater: localize device profiles (#3029)
seojune79 Jun 23, 2026
2ed6aab
Merge branch 'main' into beta-release/6-24-26
aleclorimer Jun 24, 2026
d973a4e
Adding HCv0.61 to Jenkins driver test matrix
aleclorimer Jun 24, 2026
c33ede1
Merge pull request #3049 from SmartThingsCommunity/Jenkins-driver-tes…
aleclorimer Jun 25, 2026
1263594
Merge pull request #3045 from SmartThingsCommunity/beta-release/6-24-26
aleclorimer Jun 25, 2026
1a1bca7
WWSTCERT-12419 Dual Socket Smart Plug (#3046)
cbaumler Jun 25, 2026
47443d1
WWSTCERT-12246 Floor Lamp (#3047)
cbaumler Jun 25, 2026
2ecb5a9
WWSTCERT-12397 GELUBU Door Lock R60 (#3041)
cbaumler Jun 25, 2026
dae7b10
firstled_switch: Updated min_api_version to 20 for out of date tests
aleclorimer Jun 25, 2026
8935c5c
Merge pull request #3051 from SmartThingsCommunity/firstled-test-min_…
aleclorimer Jun 25, 2026
4d9d399
Matter Sensor: Fix nil value logging and handling for soil sensor att…
hcarter-775 Jun 26, 2026
0d14856
Hue: fix conditional checking in hue command error logging (#3072)
hcarter-775 Jun 29, 2026
4252039
Adding support for Hager WAASYS devices
JanJakubiszyn Mar 30, 2026
4e1ca8b
Merge pull request #2858 from JanJakubiszyn/Hager_WAASYS_device_support
hcarter-775 Jul 1, 2026
52ae995
Merge branch 'beta' into main
hcarter-775 Jul 1, 2026
feccb91
Revert "Adding support for Hager WAASYS devices"
JanJakubiszyn Jul 2, 2026
a85de74
Merge pull request #3085 from JanJakubiszyn/revert-2858-Hager_WAASYS_…
hcarter-775 Jul 2, 2026
65a2532
Add support for Tuya thermostats (#3071)
r-slezak Jul 2, 2026
6bae406
add firstled light Easy-Fit Driver (#3031)
thinkaName Jul 2, 2026
b157ea0
Add Sombra Shades window shade sub-driver (#2991)
Woofser Jul 2, 2026
18f3751
WWSTCERT-12453 Aqara Smart Lock J200 (#3074)
cbaumler Jul 2, 2026
4a65dd4
WWSTCERT-12567 Aqara Smart Lock U500 Rim (#3086)
cbaumler Jul 2, 2026
59aea94
add wallhero_thermostat_ACL-403STC1 (#2969)
thinkaName Jul 2, 2026
79b4401
fingerprint for Sonoff SNZB-02B (#3079)
KKlimczukS Jul 3, 2026
f1303a2
Matter Window Covering: Add embedded clusters for Descriptor, Global …
hcarter-775 Jul 6, 2026
f8c6874
Add eufy product
Kwang-Hui Jul 6, 2026
6bc4b4a
Merge pull request #3094 from Kwang-Hui/matter-lock-eufy-fingerprint
tpmanley Jul 7, 2026
7b18436
Add device profile for U600 (#3097)
cbaumler Jul 7, 2026
ed47433
Starting of passing PR number
aleclorimer May 15, 2026
f8e07b8
Merge pull request #2974 from SmartThingsCommunity/driver-test-pr-id-…
aleclorimer Jul 8, 2026
d09e256
Z-Wave Lock: Support SLGA Migration (#3087)
hcarter-775 Jul 9, 2026
ec88723
Zigbee Lock: Support SLGA Migration (#2956)
hcarter-775 Jul 9, 2026
4dcfe01
Matter Lock: Switch sub-driver and main-driver to support SLGA migrat…
HunsupJung Jul 9, 2026
8ca1717
zwave-lock: respond to Time DATE_GET with DATE_REPORT
pachuho Jul 10, 2026
c4126cc
Matter Switch: Support 3R Garage Door Subdriver (#2702)
hcarter-775 Jul 10, 2026
15035a7
zwave-lock: respond to Time DATE_GET with DATE_REPORT (#3102)
hcarter-775 Jul 10, 2026
9528033
Hue: fix issue with small color temp increments (#2771)
nickolas-deboom Jul 10, 2026
cd56d78
Matter Ikea Scroll: Add rotation sensitivity preferences (#3100)
hcarter-775 Jul 13, 2026
db11e08
Zigbee Humidity Sensor: Add category to profile (#3117)
hcarter-775 Jul 13, 2026
9a0c586
WWSTCERT-12300 Aqara Smart Lock U500 (#3036)
cbaumler Jul 14, 2026
7853d54
add firstled-io_M2S2BAC (#3054)
thinkaName Jul 14, 2026
ba49f38
add firstled-io_M1S1BAC (#3055)
thinkaName Jul 14, 2026
3ce6483
add firstled-io_DL1S1BAC (#3056)
thinkaName Jul 14, 2026
d550b8f
add firstled-io_DL2S2BAC (#3057)
thinkaName Jul 14, 2026
7c29220
add firstled-io_DL3S3BAC (#3058)
thinkaName Jul 14, 2026
ac1f0b7
add firstled-io_DL4S4BAC (#3059)
thinkaName Jul 14, 2026
6e24410
add firstled-io_G1S1BAC (#3060)
thinkaName Jul 14, 2026
fd65fe9
add firstled-io_G2S2BAC (#3061)
thinkaName Jul 15, 2026
5da711f
add firstled-io_G3S3BAC (#3062)
thinkaName Jul 15, 2026
e44f98d
add firstled-io_MX1S2BAC (#3063)
thinkaName Jul 15, 2026
91803c1
add firstled-io_MX2S2BAC (#3064)
thinkaName Jul 15, 2026
cc30a5e
add firstled-io_MX3S2BAC (#3065)
thinkaName Jul 15, 2026
bc31006
add firstled-io_MX4S2BAC (#3066)
thinkaName Jul 15, 2026
3fdc1cb
add firstled-io_P1S1BAC (#3067)
thinkaName Jul 15, 2026
65ea2a8
add firstled-io_P2S2BAC (#3068)
thinkaName Jul 15, 2026
664cef0
add firstled-io_P3S3BAC (#3069)
thinkaName Jul 15, 2026
2f1dcd9
add firstled-io_M3S3BAC (#3053)
thinkaName Jul 15, 2026
7acd4d7
fix: reapply Hager WAASYS device support (#3104)
JanJakubiszyn Jul 15, 2026
d912324
remove knob preferences for ikea scroll
hcarter-775 Jul 15, 2026
3e0a850
re-add knob preferences for ikea scroll
hcarter-775 Jul 15, 2026
7aefb46
Merge pull request #3121 from SmartThingsCommunity/remove/knob-prefer…
hcarter-775 Jul 15, 2026
4a06ba8
Merge pull request #3122 from SmartThingsCommunity/add/knob-preferences
hcarter-775 Jul 15, 2026
0255dd3
Matter Sensor: Fix Global defintion and adjust unit tests
ctowns Jul 16, 2026
1be5fd4
Aligned handlers and fields in value magnitude and added tests
aleclorimer Jul 8, 2026
d8fc967
Scaled zenwithin subdriver to centidegrees
aleclorimer Jul 9, 2026
b6e09b3
Zwave Lock: Remove Migration on Added (#3127)
hcarter-775 Jul 17, 2026
834ee18
zigbee-range-extender: guard against nil device in health check
cjswedes Jul 17, 2026
e6811a1
jbl: fix coroutine crash from concatenating nil credential in add_header
cjswedes Jul 17, 2026
57ae75d
aqara-presence-sensor: guard against receive(0) crashing SSE reader
cjswedes Jul 17, 2026
9d7daaf
zwave-sensor: guard tamper-clear timer against device removal
cjswedes Jul 17, 2026
e53691e
zigbee-switch(inovelli): guard nil parent device in child notificatio…
cjswedes Jul 17, 2026
93d2b35
matter-lock: guard nil capability event for unmapped LockState value
cjswedes Jul 17, 2026
a24d220
Merge pull request #3130 from SmartThingsCommunity/fix/coroutine-errors
cjswedes Jul 20, 2026
4e3d3b0
CHAD-18838: Exclude `zoneManagement` when `USERDEFINED` feature is ab…
samadDotDev Jul 20, 2026
e566c1b
Added verification to min/max-heat/coolSetpointLimit tests
aleclorimer Jul 20, 2026
a975cc1
Merge pull request #3111 from SmartThingsCommunity/zb-thermostat-zenw…
aleclorimer Jul 21, 2026
60a0ce7
WWSTCERT-12695 Smart WiFi Outdoor Plug (#3123)
cbaumler Jul 21, 2026
1d58e17
Add step function for Tuya Zigbee curtains
zhangshen001 Jul 9, 2026
0b239eb
Update matter blind edge driver
hongye-samsung Jun 25, 2026
d8381e2
Merge pull request #3125 from SmartThingsCommunity/bugfix/soil-moistu…
hcarter-775 Jul 22, 2026
25c8bb3
Zigbee Window Treatment: Add step shade level functionality to blinds…
zhangshen001 Jul 22, 2026
2bcc7d5
Merge pull request #3107 from zhangshen001/zigbee_Tuya
hcarter-775 Jul 22, 2026
bf4fd79
Merge pull request #3052 from hongye-samsung/matter_blind
hcarter-775 Jul 22, 2026
f7de112
Matter Lock: Update deprecated fingerprints (#3138)
HunsupJung Jul 22, 2026
37dead4
GHA: Fix publish test results for multiple drivers (#3143)
hcarter-775 Jul 22, 2026
dad39ac
Luacov Config: Update Exclude Pathing for Embedded Clusters (#3141)
hcarter-775 Jul 22, 2026
9adc33d
GHA: Fix driver test run warnings (#3139)
hcarter-775 Jul 22, 2026
40f6c19
Matter Sensor: Handle invalid sensor unit conversions, add more conve…
hcarter-775 Jul 13, 2026
296226b
Matter Thermostat: Handle invalid sensor unit conversions
hcarter-775 Jul 13, 2026
6c14f7c
Merge pull request #3116 from SmartThingsCommunity/chore/handle-inval…
hcarter-775 Jul 23, 2026
311711d
Matter Window Covering: Always report accurate capability operational…
hcarter-775 Jul 27, 2026
010ab9a
GHA: Check for category existence on the main component (#3136)
hcarter-775 Jul 27, 2026
fdd699a
Add shinasystem's SiHAS Smoke Detector for wwst (#3134)
shinasys Jul 28, 2026
4026115
Branching registryCredentialsId and registryURL based off region and …
aleclorimer Jul 24, 2026
f5d8f70
Merge pull request #3148 from SmartThingsCommunity/jenkins-docker-aut…
aleclorimer Jul 28, 2026
3083caa
Avoiding URI permissions error and defaulted credentials ID string to…
aleclorimer Jul 29, 2026
ede8300
Merge pull request #3153 from SmartThingsCommunity/jenkins-docker-aut…
aleclorimer Jul 29, 2026
eb505a9
WWSTCERT-12681 Lockly Smart Lock (#3114)
cbaumler Jul 30, 2026
2bd5faa
Matter Switch: Fix Electrical profiling coroutine errors and improve …
hcarter-775 Jul 31, 2026
1451f18
Grab latest capability definitions from API for tests
varzac Jul 29, 2026
c9c1a24
zigbee-bed: Ensure test loaded capabilities load before accessing
varzac Jul 31, 2026
5b4ee16
Merge pull request #3160 from SmartThingsCommunity/cap-def-download
varzac Aug 3, 2026
a61c2e0
WWSTCERT-12427 Update smart plug label
cbaumler Aug 4, 2026
a0040ab
firstled_light Change to the correct manufacturer (#3095)
thinkaName Aug 4, 2026
6ca3938
Merge pull request #3163 from SmartThingsCommunity/WWSTCERT-12427-sma…
cjswedes Aug 4, 2026
719780a
Matter Switch: Add logging on create/update of EDGE_CHILD devices (#3…
hcarter-775 Aug 5, 2026
bb87a70
WWSTCERT-12180 Schlage Sense Pro (#3025)
cbaumler Aug 6, 2026
273d954
WWSTCERT-13076 Lockly Smart Lock (#3161)
cbaumler Aug 7, 2026
4630563
Updated to report crashing files
aleclorimer Aug 10, 2026
933f8a6
Merge pull request #3170 from SmartThingsCommunity/driver-test-crashi…
aleclorimer Aug 11, 2026
ffe3ea9
Adding 57 and 58 to the Jenkins driver testing suite
aleclorimer Aug 11, 2026
e666b3e
Merge pull request #3172 from SmartThingsCommunity/jenkins-57-58-testing
aleclorimer Aug 11, 2026
248ccf0
Updated min_api_version for tests on v14(57) and v15(58)
aleclorimer Aug 5, 2026
60bbf27
Merge pull request #3167 from SmartThingsCommunity/test-backporting-5…
aleclorimer Aug 12, 2026
d934797
WWSTCERT-12230 IP65 Outdoor Zwave Smart Plug with 2 Individual Outlet…
cbaumler Aug 18, 2026
b92335e
[Aqara] Aqara Dual Relay Module T2 (#3146)
seojune79 Aug 18, 2026
9744a0e
WWSTCERT-12431 Update smart plug label (#3173)
cbaumler Aug 18, 2026
92fb342
WWSTCERT-11699 Z-Wave Scene Control Switch (#2977)
cbaumler Aug 19, 2026
53c74eb
WWSTCERT-13083 OSRAM IRIS (#3187)
cbaumler Aug 19, 2026
4ea2b77
Fix PTZ bugs with unsupported & unchanged fields (#3192)
samadDotDev Aug 24, 2026
8f2511c
Matter Sensor: Support MCD for FP400 and reprofiling (#3118)
hcarter-775 Aug 26, 2026
3cc5dbf
WWSTCERT-13182 Govee Strip Light 2 (#3196)
cbaumler Aug 27, 2026
dd29cc8
WWSTCERT-11168 Smart Radiator Thermostat X (#2949)
cbaumler Aug 27, 2026
72b71ab
WWSTCERT-13051 Govee Monitor Light Bar (#3178)
cbaumler Aug 27, 2026
e0f54fb
WWSTCERT-13508 Onvis Outlet T20 (#3199)
cbaumler Aug 27, 2026
6b8a9cf
Fix profile name in fingerprint for Govee COB Strip Light (#3200)
samadDotDev Aug 28, 2026
ab67316
GHA: Validate Fingerprints
hcarter-775 Jul 22, 2026
e02beac
Merge pull request #3140 from SmartThingsCommunity/validate/fingerpri…
hcarter-775 Aug 31, 2026
8cf0b50
WWSTCERT-13411 Z-Wave Smart Plug (#3207)
cbaumler Aug 31, 2026
f46b647
Fix hard privacy mode presence in `supportedAttributes` (#3201)
samadDotDev Aug 31, 2026
7d5651e
Matter Switch: restrict Eve sub driver to specific PIDS (#3213)
ctowns Sep 8, 2026
71bbd3d
Handle nil in PTZ command for axis clamping (#3217)
samadDotDev Sep 8, 2026
8d5cac5
Adjust tests to handle trustworthy child_ids change
varzac Sep 8, 2026
3aae773
Merge pull request #3218 from SmartThingsCommunity/child_ids_trustwor…
varzac Sep 10, 2026
37e3766
WWSTCERT-13643 Linkind Light Stick T19 (#3221)
cbaumler Sep 10, 2026
ea9d3f4
add CLAUDE.md
hcarter-775 Sep 10, 2026
25ab114
Merge pull request #3226 from SmartThingsCommunity/add/claude-file
hcarter-775 Sep 10, 2026
19bb6f9
Fix addUser() -> addCredential() issue (#3220)
HunsupJung Sep 11, 2026
80e5285
WWSTCERT-13701 Lowes - Utilitech A19 Smart Bulb (#3228)
cbaumler Sep 14, 2026
6434162
WWSTCERT-13745 Govee Christmas 2-in-1 String Lights (#3234)
cbaumler Sep 15, 2026
87c61ad
WWSTCERT-13738 Utilitech 17 Smart Flush Mount - Full Color (#3235)
cbaumler Sep 15, 2026
1673928
Updated CredentialId for CN Prod
aleclorimer Sep 16, 2026
bfc591b
Merge pull request #3238 from SmartThingsCommunity/CN-credentials-id-…
aleclorimer Sep 17, 2026
3f8f6e5
Fix hager driver delay
JanJakubiszyn Sep 1, 2026
7be1945
WWSTCERT-13529 SwitchBot RGBIC Wire Neon Rope Light (#3208)
cbaumler Sep 21, 2026
db0ec25
Update pairs table emptiness checks
hcarter-775 Sep 9, 2026
9274833
Merge pull request #3223 from SmartThingsCommunity/fix/incorrect-tabl…
hcarter-775 Sep 21, 2026
9309282
Merge pull request #3210 from JanJakubiszyn/hager-delay-fix
hcarter-775 Sep 21, 2026
31cd2c9
WWSTCERT-13832 Blinds motor (#3244)
cbaumler Sep 22, 2026
4a77e6f
WWSTCERT-13815 Utilitech 1x4 Smart Panel - Full Color (#3243)
cbaumler Sep 22, 2026
5703703
sonos: fix offline grouped speakers
NoahCornell Sep 22, 2026
6cbdd73
Merge pull request #3245 from SmartThingsCommunity/bugfix/CHAD-19246
NoahCornell Sep 23, 2026
5183653
Revert "Fix hager driver delay" (#3247)
JanJakubiszyn Sep 23, 2026
9d99e75
WWSTCERT-13716 Photoelectric Smoke Alarm (#3229)
cbaumler Sep 23, 2026
84d83ed
Matter Camera: Exclude `audioVolume` on unusable volume range (#3242)
samadDotDev Sep 28, 2026
6773dc0
[WWSTCERT-13880, WWSTCERT-13884, WWSTCERT-13888] adds new fingerprint…
KKlimczukS Sep 29, 2026
1bc6ae9
Fix: Reorder delay and increase to 3 seconds
JanJakubiszyn Sep 23, 2026
81a89ae
Merge pull request #3249 from JanJakubiszyn/fix/hager-increase-delay
hcarter-775 Sep 30, 2026
7ae0937
WWSTCERT-13927 Linkind Smart Outdoor Plug (#3256)
cbaumler Oct 2, 2026
43f4750
WWSTCERT-13921 Linkind Smart Light Bulb (#3258)
cbaumler Oct 5, 2026
b1d3b53
[WWSTCERT-13849] feat(zigbee): add SONOFF TRV-ZBT thermostat (#3204)
QuAnnan2019 Oct 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
264 changes: 264 additions & 0 deletions .agents/skills/dev-workflow/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,264 @@
---
name: dev-workflow
description: Setting up the development environment, deploying Edge Drivers to hubs, and sharing drivers with other users via channels and invites
---

# SmartThings Edge Driver Development Workflow

This skill covers environment setup, driver deployment to hubs, and sharing
drivers with other users through channels and invite links.

---

## Environment Setup

### 1. Install Lua 5.3

Edge Drivers are Lua-based. Install the Lua 5.3 runtime for local development
and linting:

```bash
# Ubuntu / Debian
sudo apt install lua5.3

# macOS
brew install lua@5.3

# Windows
# Download the Lua 5.3 binary from https://luabinaries.sourceforge.net/download.html
# Or install via scoop:
scoop install lua
# Or via chocolatey:
choco install lua53
```

### 2. lua_libs Directory

The `lua_libs/` directory contains the SmartThings Lua libraries that are
available on the hub at runtime. These correspond to the assets attached to the
latest release on GitHub:

<https://github.com/SmartThingsCommunity/SmartThingsEdgeDrivers/releases/latest>

Download the lua_libs archive from the release assets and
extract it into the repository root if it is missing or needs updating.

### 3. Configure LUA_PATH

Set `LUA_PATH` so that `require` resolves both your driver modules and the
SmartThings library modules in `lua_libs/`:

```bash
export LUA_PATH="./?.lua;./?/init.lua;$(pwd)/lua_libs/?.lua;$(pwd)/lua_libs/?/init.lua;;"
```

Run it from the repository root so `$(pwd)` resolves correctly.


### 4. Install the SmartThings CLI

The CLI is required for packaging, deploying, and managing drivers and
channels on the platform.

```bash
# Via npm (requires Node.js >= 24.8.0)
npm install -g @smartthings/cli

# macOS via Homebrew
brew install smartthingscommunity/smartthings/smartthings

# Linux / Windows
# Download the binary or installer from:
# https://github.com/SmartThingsCommunity/smartthings-cli/releases
```

Verify the installation:

```bash
smartthings --version
```

The CLI uses browser-based OAuth login by default. Run `smartthings devices` to trigger
the login flow.

### 5. Python Requirements (Testing)

Some test and tooling scripts require Python dependencies:

```bash
pip install -r tools/requirements.txt
```

### 6. Install Luacheck (Linting)

Luacheck provides static analysis for Lua source files. It requires LuaRocks
(the Lua package manager).

**Install LuaRocks first:**

```bash
# Ubuntu / Debian
sudo apt install luarocks

# macOS
brew install luarocks

# Windows
# Download the installer from https://luarocks.org/releases/
# Or via chocolatey:
choco install luarocks
```

**Then install Luacheck:**

```bash
# Via LuaRocks (all platforms)
luarocks install luacheck

# macOS alternative (installs both luarocks and luacheck)
brew install luacheck
```

Run it against a driver directory:

```bash
luacheck --config .github/workflows/.luacheckrc drivers/SmartThings/zigbee-switch/
```

---

## Deploying Drivers

### Overview

Deploying a driver to a physical hub requires three things:

1. A **channel** you own.
2. The hub **enrolled** in that channel.
3. The driver **packaged and uploaded** through the CLI.

### Step 1: Create a Channel

```bash
smartthings edge:channels:create
```

You will be prompted for a name and description. Note the returned channel ID.

### Step 2: Enroll Your Hub

```bash
smartthings edge:channels:enroll <hub-id>
```

Select the channel when prompted, or pass `--channel <channel-id>`.

Find your hub ID with:

```bash
smartthings devices --type HUB
```

### Step 3: Package and Install the Driver

The `edge:drivers:package` command can build, upload, assign to a channel, and
install in one step:

```bash
smartthings edge:drivers:package <path-to-driver-dir> \
--hub=<hub-uuid> \
--channel=<channel-id>
```

For example:

```bash
smartthings edge:drivers:package drivers/SmartThings/zwave-switch \
--hub=aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee \
--channel=11111111-2222-3333-4444-555555555555
```

### Other Useful Deployment Commands

```bash
# List drivers installed on a hub
smartthings edge:drivers:installed --hub=<hub-uuid>

# Stream logs from a driver on the hub
smartthings edge:drivers:logcat <driver-id> --hub=<hub-uuid>

# Uninstall a driver from a hub
smartthings edge:drivers:uninstall <driver-id> --hub=<hub-uuid>

# Remove unused drivers from a hub
smartthings edge:drivers:prune --hub=<hub-uuid>

# Switch a device to a different driver
smartthings edge:drivers:switch <device-id>
```

---

## Sharing Drivers

### Creating an Invite Link

Invite links let other users install your driver from your channel without
giving them ownership of the driver or channel.

```bash
smartthings edge:channels:invites:create
```

You will be prompted to select a channel and a driver. The command returns an
invite URL of the form:

```
https://bestow-regional.api.smartthings.com/invite/<invite-id>
```

Share this URL with users. They open it in a browser or the SmartThings mobile
app to accept the invitation.

### Enrollment Flow for Recipients

1. The recipient opens the invite link.
2. They log in to their Samsung / SmartThings account.
3. They select a hub to enroll in the channel.
4. The driver can be selected to install to that hub.

### Managing Invites

```bash
# List existing invites
smartthings edge:channels:invites

# Delete an invite
smartthings edge:channels:invites:delete <invite-id>
```

### Managing Channel Assignments

```bash
# Assign a specific driver version to a channel
smartthings edge:channels:assign <driver-id> <version>

# List drivers assigned to a channel
smartthings edge:channels:drivers <channel-id>

# Remove a driver from a channel
smartthings edge:channels:unassign <driver-id>
```

---

## Quick Reference

| Task | Command |
|------|---------|
| Create channel | `smartthings edge:channels:create` |
| Enroll hub | `smartthings edge:channels:enroll <hub-id>` |
| Package & deploy | `smartthings edge:drivers:package <dir> --hub=<id> --channel=<id>` |
| Stream logs | `smartthings edge:drivers:logcat <driver-id> --hub=<id>` |
| Create invite | `smartthings edge:channels:invites:create` |
| List installed drivers | `smartthings edge:drivers:installed --hub=<id>` |
96 changes: 96 additions & 0 deletions .agents/skills/linting-and-style/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
---
name: linting-and-style
description: Running luacheck for Lua linting and following code style conventions in Edge Driver development
---

# Linting and Code Style for Edge Drivers

## Running Luacheck

```bash
luacheck --config .github/workflows/.luacheckrc <path>
```

### Examples

```bash
# Lint a specific driver
luacheck --config .github/workflows/.luacheckrc drivers/SmartThings/zigbee-switch/

# Lint a single file
luacheck --config .github/workflows/.luacheckrc drivers/SmartThings/zigbee-switch/src/init.lua

# Lint the entire repo
luacheck --config .github/workflows/.luacheckrc .
```

Luacheck runs automatically in CI on pull requests that modify files under `drivers/` (see `.github/workflows/luacheck.yml`).

## Code Style Conventions

These conventions are observed across the Edge Driver codebase:

### General

- **Indentation**: 2 spaces, no tabs
- **Strings**: Use double quotes `"string"` for module requires and general strings
- **Local variables**: Always use `local` for variables and functions at module scope
- **Line length**: No enforced limit, but most code stays under 120 characters

### Naming

- **Variables and functions**: `snake_case` (e.g., `local mock_device`, `local function test_init()`)
- **Constants**: `UPPER_SNAKE_CASE` for true constants (e.g., `SENSOR_BINARY`)
- **Modules**: Return a table at the end of the file (`return module_name`)

### Requires and Imports

```lua
-- Standard library requires first
local capabilities = require "st.capabilities"
local zw = require "st.zwave"

-- Then test/integration requires
local test = require "integration_test"
local t_utils = require "integration_test.utils"

-- Then protocol-specific requires
local SensorBinary = (require "st.zwave.CommandClass.SensorBinary")({ version = 2 })
```

### Function Style

- Prefer `local function name()` over `local name = function()`
- Handler functions typically receive `(driver, device, ...)` arguments
- Use early returns for guard clauses

### Tables

- Trailing commas are common and acceptable in multi-line tables
- Align table entries for readability in test manifests

### Comments

- Use `--` for single-line comments
- Minimal inline comments; code should be self-documenting

Copyright header at the top of every file:
```lua
-- Copyright 2026 SmartThings, Inc.
-- Licensed under the Apache License, Version 2.0
```

### File Organization for Drivers

```
driver-name/
src/
init.lua -- Main driver entry point
<sub_modules>.lua -- Additional driver modules
test/
test_*.lua -- Test files (must start with test_)
profiles/
*.yml -- Device profiles
fingerprints.yml -- Device fingerprints
config.yml -- Driver configuration
```
Loading
Loading