Releases: xiaoyuyu6420/anykey-ai
Releases · xiaoyuyu6420/anykey-ai
Release list
v0.12.0 改名 AnyKey AI——任意键盘的 AI 控制台 + AI 层热键
AnyKey AI v0.12.0 —— 项目更名:任意键盘的 AI 控制台
原名 RK87 AIKey。这个版本起,工具不再绑定一把键盘——任何键盘都能把 F 键区变成 12 个 AI 快捷键。RK R87 Pro AI 的深度适配(AI 键 + 麦克风桥接)完整保留。
灵感与定位:OpenAI 的 Codex Micro 桌面控制台卖 $230 还一板难求——AnyKey AI 免费把你已有的键盘变成同款 AI 控制台。
🤖 新功能:AI 层(任意键盘可用)
- 按住
Ctrl+Alt+F1~F12= 12 个可自定义动作:打开 Claude / ChatGPT / Gemini、系统语音输入(Win+H)、截图、启动任何程序、发送任意快捷键 - 「Coding 预设」一键填入常用组合,每个格子可改、可即时试跑
- 不占用 F 键原功能(微软 Copilot 键抢 Right Ctrl 被骂两年的教训):
- 默认不启用 = 不注册任何热键,F 键 100% 原样
- 启用后组合键由系统拦截,不会串进当前应用
- 进阶 Alt 方案自动跳过 F4(Alt+F4 永远留给系统)
- 位置:设置页「AI 层」卡片(仅 Windows)
📦 从 RK87 AIKey 升级
直接安装覆盖即可——配置、键位档、统计数据自动迁移(安装版)。
🔧 其他改进
- 打字统计热力图/轴体寿命延续 v0.11 的独立持久化
- 改名后配置目录为
%APPDATA%/AnyKey AI(旧目录自动迁移) - 新增安全加固:配置迁移仅限白名单文件与白名单根目录
- 教训文档新增:koffi「写入型」参数的正确用法(alloc+decode)
🐛 本版包含 v0.11.0 的全部修复
- F10 唤醒微信输入法失效的根因修复(SendInput 初始化静默失败)
- 链路劣化自动重连、AI 模式误判修复、3D 外设控制台界面
📦 下载
| 系统 | 文件 |
|---|---|
| Windows | AnyKey-AI-0.12.0-portable.exe(免安装,推荐) |
| Windows | AnyKey-AI-Setup-0.12.0.exe(安装版,开机自启) |
| macOS | 见下方 Assets(CI 自动构建,arm64 + x64) |
未做代码签名,SmartScreen 拦截点「仍要运行」;也可从源码构建。
💬 反馈
AI 层是你的键盘用起来的第一版——触发键顺不顺手、预设合不合口味,去这里说一句,吐槽最有价值。
v0.11.0 3D 外设控制台——液态玻璃 UI + 3D 键盘首屏 + 稳定性大修
RK87 AIKey v0.11.0 —— 3D 外设控制台
全新视觉 + 大量稳定性修复。这是史上最大的一次改版。
🎨 新界面(3D 外设控制台)
- 液态玻璃质感 UI + 动态极光背景,全量重做了设置窗口的观感
- 3D 键盘首屏:87 键程序化成型的 RK R87 Pro AI 三维模型,可拖拽旋转、悬浮展示,配置过的键会发光
- 动画开场:标题逐字浮现 + 键帽升起 + 滚动视差(支持系统「减少动态效果」自动关闭)
- 状态胶囊:窗口顶部实时显示 在线状态 · 连接方式 · RTT 延迟 · 一键重连
- 热力图直接铺到 3D 键盘上(按使用频率点亮对应键帽,比平面图直观得多)
📊 打字统计加强
- 统计断连自动暂停、重连自动恢复("未发现键盘时不计数")
- 轴体寿命持久化:单独
lifetime.json文件,软件升级不丢失;统计页新增「每颗轴体」Top5 寿命视图 - 远控模式可手动暂停统计,避免远程串键污染数据
- 修饰键(Ctrl/Shift/Alt/Win…)参与计数但不再有音效,F13–F24 完全不参与轮询
🐛 关键修复
- 【重大】F10 唤醒微信输入法失效:SendInput 注入库初始化异常被静默吞掉,导致所有按键透传从未真正生效。已修复并加了异常日志兜底(这次是真修好了)
- 链路劣化自愈:键盘音频流卡顿连续 4 秒自动重连,不用手动拔插
- AI 键布局修正为真实键位(顶部 AI 切换键 + 底部 Fn+1 AI 动作键),模型不再错位
- 移除键盘上没有的 E1–E4 卫星键
- 热力图改为显示全部按键;3D 键帽全部有字
📦 下载
| 系统 | 文件 |
|---|---|
| Windows | RK87-AIKey-0.11.0-portable.exe(免安装,推荐) |
| Windows | RK87-AIKey-Setup-0.11.0.exe(安装版,开机自启) |
未做代码签名,SmartScreen 拦截点「仍要运行」;也可从源码构建。
升级说明:直接运行安装包即可覆盖旧版,配置与统计数据自动保留(轴体寿命在单独的 lifetime.json,跨版本不丢)。
💬 反馈
每次更新都想知道你用起来怎么样——去这里说一句,好用在哪 / 哪里难用 / 还想要什么,吐槽最有价值。
v0.10.3
feat: 远控防串键 + AI 模式误判修复 + 闪退三重加固 v0.10.3 feat 远控防串键(Windows,配合微信输入法): - 新增 remoteSafeMode:语音键透传主键改发冷门键码 F13(合成修饰键不变), 实际序列 Ctrl+F13 → 微信里配 Ctrl+F13。转发到被控端修饰键退化也只可能 是 F13,打不中远端任何常见配置;UU远程「仅控制端响应的快捷键」白名单 只收单键,加一条 F13 即可彻底不转发。仅影响语音触发键,其他绑定不变 - F13 探针:注入后轮询 GetAsyncKeyState,按住全程未见落地(键盘流被远控 全屏独占吞掉)弹托盘提示,5 分钟节流;up/down 按实际发出键名配对,杜绝 按住中改配置的卡键。决策逻辑抽纯函数 pt-alias.js(单测覆盖) - 设置页开关 + 引导文案(修饰键未选时警示),actions 增 asyncKeyDown fix AI 模式检测反了(用户报告,日志实锤): - 删除「cmd=159 到达=键盘处于 AI 模式」错误兜底:蓝牙/2.4G 下普通模式 按键同样走 159,每按一次语音键误判进 AI、固件伴随的 209(0) 又拉回, 徽章随语音键来回震荡。模式状态唯一真源为 cmd=209(握手 cmd=12 与每 5 分钟电量查询自动带回一帧,丢帧周期自愈,tools/probe-aimode.js 实证: cmd=12 → 156/208/209 三连帧) fix 闪退(另机 Windows 日志实锤:2 天 11 次 boot,断点 6/7 落在断线- 重连循环、零 JS 异常=native 崩溃,且不经 uncaughtException 故自启失效): - 设备缺席(no-cmd-interface)重连风暴 3s 无限循环 → 退避 10s→20s→40s →60s 封顶(HID.devices 高频枚举为 native 崩溃高发区,日志曾有 22 分钟 连续风暴);exclusive 撞墙保持原 3s→24s - _readLoop 的 dev.read 发起包 try:句柄延迟关闭窗口期同步 throw 按 read-throw 断线处理,不再炸穿 HID 回调栈 - silent-crash 检测:每分钟刷心跳 alive.json,正常退出打 clean 标; 下次启动发现「心跳新鲜但无 clean 标」= 上次非正常死亡,弹通知告知 (native 崩溃进程内无从自启,只能下次 boot 回看);crashDumps 定点 userData/Crashpad 留 minidump 供事后取证
v0.10.2
深度审查修复批次(稳定性专项)
P0 修复
- 打包版语音降噪失效(双 bug 叠加):
df.dll与模型此前被打进 app.asar,koffi/Rust 原生读取不了 asar 虚拟路径 → 打包版 DFN3 必然加载失败;回退的 RNNoise 输出缓冲又从不回拷 → 降噪实际完全透传。现已 asarUnpack 解包 + 输出回拷,打包产物实测打出「DeepFilterNet3 降噪已就绪」 - 键盘会话重连竞态:手动重连与挂起的定时重连叠加会双开 HID 句柄、泄漏心跳;旧句柄的迟到回调可杀死新会话。引入设备代际隔离,旧回调一律丢弃
- 宏中断卡修饰键:Escape 中断/开始录制/退出时,已注入未抬起的 Ctrl 等修饰键现在会倒序补发抬起,不再出现「打字全变快捷键」
稳定性
- 崩溃自启加代数上限(3 代封顶)+ 参数去累积,杜绝重启风暴
- 启动链路异常不再变成无托盘僵尸进程;音效隐藏页崩溃自动重建
- 修复推流后电源阻塞(prevent-app-suspension)泄漏
- 降噪开关改即时生效(无需重启);引擎异常自动旁路并冷却重试恢复
性能
- 键状态轮询空闲时降频(15ms→30ms,CPU 唤醒减半)
- 窗口隐藏到托盘时不再每击键发 2 条 IPC;调试日志默认关闭(
RK87_PROBE=1开启) - 打字统计落盘异步化,不再抖动主进程
其他
- portable 版配置随 exe 目录(U 盘携带)
- SendInput 补扩展键标志(E0)与返回值检查;安装包剔除 hidapi 源码树(-15MB)
验证:单测 7 文件 137 项全绿(新增 3 个回归测试);Windows e2e 17 项全 pass(含打包 asar 解包实证与打包产物 DFN3 加载冒烟)。
v0.10.1
ci: CI 现场编译 DFN3 原生库——macOS 不再降级 RNNoise - build.yml 两条腿各自 cargo build:Windows 出 df.dll,macOS 出 x86_64+arm64 lipo 合成的 universal2 libdf.dylib(x64 包同样享受 DFN3) - rust-cache 缓存 target 目录,二次构建大幅提速 - df.js 按平台选库名(df.dll / libdf.dylib / libdf.so),缺失仍回退 RNNoise - v0.10.1
v0.10.0
docs: 协议勘误与标定工具——USB 口会话/音频格式实测记录 - protocol.md 7.1 勘误:推翻「有线口固件零回应」,8102 走 0xF1 通道全帧响应; 2.4G 接收器实测枚举 8102(非 8243);USB 音频 = 0x1C/64B 帧 16kHz PCM - README 已知限制更新:三种连接方式功能等价 - 标定工具入库:wired-probe(通道标定)、usb-session-test(完整会话)、 audio-analysis(底噪频谱分析)
v0.9.0
v0.9.0: 配置档体系/宏录制回放/打字音效/每日打字报告/电量监视+轴体寿命/回放Escape中断
v0.8.2
chore: v0.8.2——版本号对齐 + 回归测试入库 - package.json 0.8.0 → 0.8.2(含 v0.8.1 深度 review 修复 20+ 项与 v0.8.2 down-down 不变量自愈) - stub 隔离测试(kb-session 状态机 11 例 + 自愈 5 例)搬入 tests/, 供 Windows 适配时直接跑回归:pnpm test