🖥️ PCTools
Simple Python program for seamless integration of Windows with Home Assistant, enabling hardware monitoring, remote control, and more.
✨ Features
| Feature | Description |
|------|------|
| 📊 Aida64 Monitoring | Periodically update selected sensor data |
| 🎮 Remote Commands | Automatically sync .bat and .lnk files in commands folder to HA |
| 📸 Web Monitoring | Screenshots / Camera / Live stream |
| 💬 Message Notifications | Listen to HA text input and display as Toast messages |
| 🌐 Sidebar Webpage | Hotkey to call up HA web sidebar |
| ⌨️ Hotkey Linkage | Hotkeys trigger HA binary sensors |
| 📱 Foreground App Feedback | Automatically report current app name, supports Runtime Tracker |
| 🖥️ Monitor Control | Multi-monitor brightness / on-off / DDC-CI commands |
| 🔊 Volume Control | Control Windows system volume |
| 🌙 Dark Mode | Toggle system/app dark mode |
| 📶 Bluetooth Control | Turn system Bluetooth on/off |
| ⚡ Command Line | Execute custom CMD/PowerShell |
| 🎨 Wallpaper Engine | Control Wallpaper Engine |
| ⌨️ Key Simulation | Simulate keyboard input (including media keys) |
| 🔗 URL Launcher | Open custom URLs |
Web monitoring endpoints:
- Screenshot:
http://127.0.0.1:5000/screenshot.jpg - Camera:
http://127.0.0.1:5000/video_feed - Live screen:
http://127.0.0.1:5000/screen
📷 Screenshot Showcase
🖼️ 软件界面
📱 HA 界面
另类副屏 (推荐配合 HA_Helper)

主页面

🚀 快速开始
1️⃣ 安装环境
方式一:下载 Releases 内的压缩包(内置运行环境)
方式二:手动配置
# Python 3.12
pip install -r requirements.txt
2️⃣ 安装第三方依赖软件(可选)
| 依赖 | 用途 | |------|------| | MQTT 服务器 | 接入 Home Assistant | | Aida64 | 硬件信息监控 | | Twinkle Tray | 显示器亮度调节 |
3️⃣ 配置依赖
- Aida64:开启内存共享并勾选需要的传感器数据
- Twinkle Tray:确保能正常读取显示器信息
- 壁纸引擎:启动以支持相关操作
4️⃣ 运行程序
- 运行
打开GUI.bat启动界面 - 进入设置配置参数(按回车保存)
- 启用所需插件(建议重启程序)
- 点击启动,在 HA 的 MQTT 集成中查看新设备
5️⃣ 开机自启(可选)
设置中点击 自启动,程序将后台运行,在系统托盘查看图标
📋 开发计划
- [x] 键盘快捷键联动
- [x] 代码优化
- [x] 插件逻辑优化
- [ ] 电脑风扇控制
- [ ] Toast 多按钮回调
- [ ] 插件市场
- [ ] 媒体控制
- [ ] 网易云歌词同步
💡 推荐搭配
| 软件 | 描述 | |------|------| | OpenRGB | RGB 灯光控制,支持 HA 接入 | | HASS.Agent | 更稳定的同类工具 |
致谢
- python_aida64 - Aida64 数据读取
📝 其他
- 支持无头模式:
python core.py - 部分页面需切换后才会刷新