1.0.23
🎉 1.0.23
中文
✨ 新功能
- 远程频道运行时(Channel Runtime): 全新的频道运行时核心,涵盖生命周期管理、会话绑定持久化、投递回执与发件箱提交、崩溃恢复、附件存储、交互鉴权、通知路由与策略引擎;新增 Telegram、Discord、QQ、Slack、微信、飞书 六大频道适配器,其中 Slack 支持 Socket Mode 与签名校验,微信 iLink 支持扫码登录与媒体 CDN。
- 频道目录全面改版: 品牌 Logo + 网格卡片布局,每个频道类型单一实例,新增频道状态指示、凭据编辑与微信扫码配对;同时移除遗留的飞书配置/配对/网关 UI。
- Pi 扩展兼容(P0–P2): 第三方 Pi 扩展可在 DeskWand 中完整运行——共享
~/.pi/agent配置与信任门控、包管理器 UI、RPC 模式 ExtensionUIContext 桥(27 个方法)、TUI 模态(虚拟终端 + ANSI 渲染)、以及映射到 DeskWand 会话的会话桥(waitForIdle / reload / newSession / fork / switchSession)。 - Pi 包市场: 在设置页直接浏览、搜索并安装 6437 个 带
pi-package标签的 npm 包(扩展 / 技能 / 提示词 / 主题),双列市场 UI、安装状态联动、详情画廊与下载量展示。 - 插件命令子系统: 斜杠菜单发现插件命令,拦截逻辑与 SDK 会话命令运行器保持单一事实来源,重复命令自动映射到 SDK 调用名(如
/plan:1),并带执行中/错误反馈。 - ModelRuntime 迁移: Pi SDK 迁移至共享模型运行时与 provider 桥,内联 OAuth 模块,每会话模型设置持久化;pi-coding-agent 补丁升级至 0.82.1,新增 pi-subagents 0.14.3。
- Provider 品牌图标: API 设置页为各模型提供商新增品牌图标。
🐛 修复
- 每会话 API Key 隔离: 修复占位 Key 经跨提供商注册表回退后覆盖共享运行时,导致 DeepSeek 会话间歇性 401 的问题;每个 pi 会话现在拥有独立的 ModelRuntime 实例,并在会话关闭、驱逐与 OAuth 登出时统一清理。
- 聊天自动跟随滚动重构: 以单一底部状态标志重写滚动逻辑,彻底解决流式输出时滚动抖动、触控板滚轮误杀跟随、回到底部按钮被阻塞等问题。
- 安全存储降级: safeStorage 不可用时(如未签名的 macOS 构建)自动回退到
0600权限的明文密钥文件并给出警告;已存在的加密密钥仍会报错,防止静默数据丢失。
♻️ 重构
- 移除遗留远程网关后端: 删除旧的网关 Webhook 服务器、消息路由器与隧道管理器,同步精简 IPC 与 preload 暴露面。
🔧 工程
- 版本号提升至 1.0.23;更新远程运行时与配对测试套件,新增兼容性与配对 IPC 测试,并适配配置存储测试。
English
✨ New Features
- Channel Runtime: A brand-new remote channel runtime core covering lifecycle management, session-binding persistence, delivery receipts with outbox commits, crash recovery, attachment storage, interaction authorization, notification routing, and a policy engine — plus six channel adapters for Telegram, Discord, QQ, Slack, WeChat and Feishu, with Slack Socket Mode + signature verification and WeChat iLink QR login with media CDN.
- Channel Catalog Redesign: Brand-new grid layout with brand logos, one instance per channel type, channel status indicators, credential editing and WeChat QR pairing; legacy Feishu config/pairing/gateway UI removed.
- Pi Extension Compatibility (P0–P2): Third-party Pi extensions now run fully inside DeskWand — shared
~/.pi/agentconfig with project trust gating, package manager UI, an RPC-mode ExtensionUIContext bridge (27 methods), TUI modal with virtual terminal + ANSI rendering, and a session bridge mapping waitForIdle / reload / newSession / fork / switchSession onto DeskWand sessions. - Pi Package Marketplace: Browse, search and install 6,437 npm packages tagged
pi-package(extensions / skills / prompts / themes) right from the settings tab, with a two-column market UI, installed-state linkage, preview galleries and download counts. - Plugin Command Subsystem: Slash-menu discoverable plugin commands with interception kept consistent with the SDK's session-bound command runner, duplicate commands auto-mapped to SDK invocation names (e.g.
/plan:1), and immediate executing/error feedback. - ModelRuntime Migration: Pi SDK migrated onto a shared model runtime with a provider bridge, inlined OAuth modules, per-session model settings persistence; pi-coding-agent patch bumped to 0.82.1 with pi-subagents 0.14.3 added.
- Provider Brand Icons: API settings now show brand icons for each model provider.
🐛 Bug Fixes
- Per-Session API Key Isolation: Fixed intermittent 401 errors on DeepSeek sessions caused by a placeholder key overwriting the shared runtime via cross-provider registry fallback; each Pi session now gets its own ModelRuntime instance, cleaned up on session close, eviction and OAuth logout.
- Chat Auto-Follow Rebuild: Rewrote auto-follow scrolling around a single bottom-state flag, eliminating stream-time scroll jitter, trackpad wheels killing follow, and a blocked scroll-to-bottom button.
- Secure Storage Fallback: When safeStorage is unavailable (e.g. unsigned macOS builds), the key store now falls back to a
0600plaintext key file with a visible warning; existing encrypted keys still throw to prevent silent data loss.
♻️ Refactoring
- Legacy Remote Gateway Removed: Deleted the old gateway webhook server, message router and tunnel manager, with a slimmer IPC and preload surface.
🔧 Engineering
- Version bumped to 1.0.23; remote runtime and pairing test suites updated with new compatibility and pairing IPC tests, plus config-store test adaptation.
204 files changed · +41372 −7183
Full Changelog: 1.0.22...1.0.23