Repository navigation
Releases
KDEck v0.9.6
KDEck v0.6.0
v0.6.0: TextField keyboard, search box, send validation, progress ani…
KDEck v0.5.5
- Bluetooth: RFCOMM channel 22 with SDP service registration. PC and phone can discover and connect via Bluetooth.
Reuses existing TLS + protocol handler. Graceful degradation when Bluetooth is unavailable. - Send file: full-screen page via Decky routerHook. Three tabs for screenshots, recordings, and logs. Accessible from
the Decky sidebar. - Dev deployment:
:kdeck update <url>hidden command downloads and installs KDEck.zip.tools/deploy_to_deck.ps1
for one-click SSH deploy. - Build: version injected from package.json via rollup. CI automatically builds and uploads release artifact.
- Fake client:
recv-filecommand for reverse file transfer testing. - i18n: 6 send-file error codes added in both Chinese and English.
- Code cleanup: 115 lines of dead code removed. React hooks violation fixed. Unusable Steam keyboard API removed.
- Removed
defaults/defaults.txtplaceholder.
KDEck v0.5.4
KDEck v0.5.2
Changes since v0.4.3
Pairing: restore auto-accept
v0.4.3 required manual confirmation on Deck for first-time pairings. v0.5.2
restores auto-accept for all new devices, matching pre-0.4.3 behavior.
Diagnostic log fix
Event buffer is now flushed before log export, ensuring the zip contains the
latest TCP/TLS/pair events.
Frontend version fix
The version string in the Decky panel was stuck at 0.4.3. Now correctly
displays 0.5.2, in sync with package.json.
Documentation
README status descriptions updated. STORE_SUBMISSION.md verification steps
now include ruff check.
Repo cleanup
Removed test.txt accidentally tracked in version control.
KDEck v0.4.3
Breaking / Behavior Change
- Pairing now requires manual confirmation on Deck before a device is added to the trusted whitelist. Previously any
device on the LAN could auto-pair. Already-paired devices reconnect automatically as before.
Fixes
- Thread safety: tcp_port, peer_connect_attempts, and connection threads are now properly locked. Anonymous handler
threads are tracked and joined on stop to prevent socket leaks. - Event log writes are buffered in memory (flushed every 64 lines or on stop) to reduce unnecessary disk I/O on the
Deck's internal storage. - _is_owned_plugin_dir now uses exact directory name matching instead of substring match, preventing accidental
deletion of unrelated directories containing "kdeck". - _tail_file switched from full-file read to seek-from-end, cutting memory usage for large daemon logs.
Improvements
- Clipboard now tries wl-paste/wl-copy → xclip → tkinter fallback, working across Wayland and X11 without spawning a
Python subprocess in most cases. - Backend error messages switched to English as fallback; frontend error code dictionary now has full zh-CN / en
coverage. Non-Chinese users no longer see untranslated errors. - Duplicate interface classification logic (interface_path_type, interface_priority, is_usable_ipv4,
is_ignored_interface) extracted to shared module-level functions.
Frontend
- Split src/index.tsx (was ~540 lines) into types.ts, i18n.ts, utils.ts, components.tsx, index.tsx.
Engineering
- ruff lint config added (pyproject.toml). All source passes.
- GitHub Actions CI: Python lint + 42 tests + pnpm build on push/PR.
KDEck v0.4.2
KDEck v0.4.0
KDEck v0.4.0
KDEck is a Decky Loader plugin for receiving KDE Connect clipboard text and files from your phone in Steam Deck game
mode.
Changelog
-
Improved paired device reconnection logic
KDEck now records trusted device metadata: recent addresses, UDP source ports, TCP ports, device names, and
connection timestamps. -
Better rediscovery after returning from desktop mode
On receiver restart or resuming from desktop mode, KDEck sends directed identity packets to recently connected
trusted devices first, improving reconnection speed. -
Shorter cooldown for trusted devices
The connect cooldown for already-paired devices is reduced from 30 seconds to 5 seconds, preventing brief network
hiccups from blocking fast reconnects. -
New receiver diagnostic summary
The backend now tracks whether the receiver is expected to run, whether it is paused by desktop mode, UDP/TCP
listener status, recent discoveries, connection errors, and the latest clipboard and file transfer state. -
New hidden log export commands
Type any of the following into the KDEck clipboard text box and press Enter::kdeck export logs :kdeck logs
KDEck v0.3.8
KDEck v0.3.8
- Ignore local desktop KDE Connect discovery and local TCP connections so game mode does not show the Deck's own desktop KDE Connect instance as an external device.
- When phone clipboard text is received, save it to the KDEck text box and also try to write it into the Deck graphical clipboard.
- Improve hidden log export with manifest, receiver rotated logs, recent Decky logs, and redacted state files.
- Do not include raw device-id, trusted-devices.json, certificates, or private keys in exported support logs.