Release notes
PI Desktop v0.15.2
What's Changed
- docs(spec): renumber sidebar decision D451 to D459 by @Tioit-Wang in https://github.com/vastsa/PI-Desktop/pull/665
- fix(plugins): land npm recovery picker with validation budget and docs fixes by @vastsa in https://github.com/vastsa/PI-Desktop/pull/673
- fix(plugins): recover missing npm with native executable picker by @nbb2025 in https://github.com/vastsa/PI-Desktop/pull/662
- fix(host-core): stop cutting off plugin and MCP tools at 60s by @hxj04121-lab in https://github.com/vastsa/PI-Desktop/pull/668
- fix(host-core): make the desktop tool dispatch budget actually nest by @vastsa in https://github.com/vastsa/PI-Desktop/pull/675
- docs(adr): repair the ADR 0038 budget paragraph by @vastsa in https://github.com/vastsa/PI-Desktop/pull/676
- feat(desktop): report crash dumps found on the next launch by @zhangqingkun976 in https://github.com/vastsa/PI-Desktop/pull/674
- fix(desktop): classify crash dumps and keep them in the data directory by @vastsa in https://github.com/vastsa/PI-Desktop/pull/689
- docs(spec): sync Chinese crash-dump specs with D602 by @vastsa in https://github.com/vastsa/PI-Desktop/pull/690
- docs(readme): drop SignPath and record signed macOS in-app updates by @vastsa in https://github.com/vastsa/PI-Desktop/pull/691
- docs(readme): drop the unsigned macOS quarantine fallback by @vastsa in https://github.com/vastsa/PI-Desktop/pull/693
- fix(desktop): make the login-shell PATH probe pass typecheck by @zhangqingkun976 in https://github.com/vastsa/PI-Desktop/pull/692
- fix(agent-runtime): fail a stream that stops emitting events by @zhangqingkun976 in https://github.com/vastsa/PI-Desktop/pull/672
- fix(host-core): replace the transcript file atomically on Windows by @zhangqingkun976 in https://github.com/vastsa/PI-Desktop/pull/671
- fix(chat): 保持运行提示可见并移除助手空操作栏 by @hui455 in https://github.com/vastsa/PI-Desktop/pull/684
- fix(desktop): guard duplicate native pickers by @catDforD in https://github.com/vastsa/PI-Desktop/pull/677
- fix(host-core): detect MSIX Store pwsh app-execution aliases by @Frank-zhu0404 in https://github.com/vastsa/PI-Desktop/pull/632
- fix(dialogs): keep long content and close controls within bounds by @vastsa in https://github.com/vastsa/PI-Desktop/pull/703
- fix(chat): prevent the retry error message from being clipped on a new chat by @MakkaPakka12138 in https://github.com/vastsa/PI-Desktop/pull/702
- fix(host-core): reference a live regenerate branch instead of copying it by @vastsa in https://github.com/vastsa/PI-Desktop/pull/704
- feat(scheduled): 完善定时任务自动执行与管理体验 by @hui455 in https://github.com/vastsa/PI-Desktop/pull/695
- fix(agent-runtime): cap output tokens to the model window by @angeiv in https://github.com/vastsa/PI-Desktop/pull/716
- fix(plugins): pass HOME/USER into plugin child processes by @vastsa in https://github.com/vastsa/PI-Desktop/pull/722
- fix(network): trust system certificates and stop certificate retries by @hui455 in https://github.com/vastsa/PI-Desktop/pull/720
- fix(agent-runtime): give delegates the session's context budget by @xiaobaZeo in https://github.com/vastsa/PI-Desktop/pull/733
- chore(pi): sync pi 0.86.1 and enable Meta OAuth by @vastsa in https://github.com/vastsa/PI-Desktop/pull/737
- feat(transcript): land nested thinking-process disclosure by @vastsa in https://github.com/vastsa/PI-Desktop/pull/740
- feat(transcript): 支持思考过程多级折叠 by @deqiying in https://github.com/vastsa/PI-Desktop/pull/719
- fix(composer): stabilize reasoning menu and animate slider interactions by @zeroy1024 in https://github.com/vastsa/PI-Desktop/pull/707
- fix(composer): 遮住输入框下方的会话正文 by @Blue-Berrys in https://github.com/vastsa/PI-Desktop/pull/729
- fix(settings): preserve selected default model when saving providers by @yuxino in https://github.com/vastsa/PI-Desktop/pull/734
- fix(composer): preserve existing attachments when switching chats during paste by @yuxino in https://github.com/vastsa/PI-Desktop/pull/732
- fix(host-core): stabilize marketplace fallback and beta release by @vastsa in https://github.com/vastsa/PI-Desktop/pull/741
- fix(composer): preserve file references across workspace remounts by @vastsa in https://github.com/vastsa/PI-Desktop/pull/749
- feat(runtime): honor pi's SYSTEM.md and APPEND_SYSTEM.md files by @catDforD in https://github.com/vastsa/PI-Desktop/pull/595
- fix(browser): 避免会话切换显示过期预览 by @Blue-Berrys in https://github.com/vastsa/PI-Desktop/pull/724
- fix(ui): truncate conversation titles by available width by @vastsa in https://github.com/vastsa/PI-Desktop/pull/755
- feat(agent-runtime): add opt-in infinite provider retry by @vastsa in https://github.com/vastsa/PI-Desktop/pull/759
- fix(mcp): 基于最新 main 落地 Accepted 响应修复 by @vastsa in https://github.com/vastsa/PI-Desktop/pull/758
- fix(mcp): 修复 Accepted 响应解析失败与授权误提示 by @zszz3 in https://github.com/vastsa/PI-Desktop/pull/735
- fix(desktop): preserve plugin crash diagnostics by @vastsa in https://github.com/vastsa/PI-Desktop/pull/766
- fix(landing): land composer, provider, and plugin safety fixes by @vastsa in https://github.com/vastsa/PI-Desktop/pull/768
- fix(desktop): restore archived sessions opened from projects by @Blue-Berrys in https://github.com/vastsa/PI-Desktop/pull/769
- fix(mcp-market): isolate registry header variables from URLs by @ct-jaryn in https://github.com/vastsa/PI-Desktop/pull/706
- fix(desktop): copy the full conversation history by @vastsa in https://github.com/vastsa/PI-Desktop/pull/772
- fix(desktop): copy the full conversation history by @yuxino in https://github.com/vastsa/PI-Desktop/pull/764
- fix(plugins): clear card focus when closing details by @yuxino in https://github.com/vastsa/PI-Desktop/pull/771
…