github vastsa/PI-Desktop v0.21.0

3 hours ago

What's Changed

  • feat: 同一项目的并行会话隔离在各自的 git worktree 中 by @onerentop in #1604
  • fix(markdown-table): show overflow scrollbars in preview by @vastsa in #1647
  • fix(desktop): open session HTML artifacts from chat and BrowserPreview by @AR307 in #1650
  • fix(plugins): notify the renderer after the startup plugin restore by @mai-ming in #1651
  • fix(deps): patch vulnerable dependencies by @vastsa in #1656
  • fix(plugins): resolve automatic JSX against the host React runtime by @zwqjoy in #1644
  • fix(host-runtime): harden workspace diff Git commands by @vastsa in #1658
  • fix(host-runtime): disable Git textconv for workspace diffs by @vastsa in #1660
  • fix(deps): enforce patched DOMPurify floor by @vastsa in #1659
  • fix(agent-runtime): stamp the session id on self-hosted endpoints by @arsonist-g in #1640
  • fix(desktop): tidy worktree setup menu by @vastsa in #1662
  • fix(images): prevent oversized tool images from breaking sessions by @vastsa in #1663
  • fix(desktop): preserve session reading positions across pane eviction by @new-Beginner in #1665
  • fix(projects): restore archived projects on activation by @vastsa in #1666
  • [Bug] 修复双屏下最大化状态按 F11 全屏导致白屏(最大化/全屏状态互斥) by @anjia0532 in #1667
  • fix(agent-runtime): keep restored tool calls on their assistant across system rows by @teshnizi in #1670
  • fix(transcripts): tolerate torn non-UTF-8 lines during reads by @Totopo27 in #1668
  • fix(transcript): merge the store read after the transcript reload in deleteMessage by @SeanLiu326 in #1675
  • fix(desktop): navigate question toasts to their originating chat by @new-Beginner in #1673
  • fix(storage): migrate first-run profiles, physical archives, and Windows links by @AR307 in #1671
  • fix(providers): ask a plan endpoint for its model list the way it documents by @chengzhi-c in #1680
  • fix(session): one rewrite boundary for replacement and revision activation by @SeanLiu326 in #1674
  • fix(host-core): keep PowerShell output and native exit codes intact by @AR307 in #1685
  • fix(storage): preserve link kinds through Windows migration by @SeanLiu326 in #1688
  • fix(providers): probe the resolved endpoint in the connection test by @SeanLiu326 in #1690
  • 修复(window):任务栏还原最大化窗口后盖住任务栏(补充 #1655) by @anjia0532 in #1672
  • fix(config-sync): strip the Windows extended-length prefix before mapping by @chengzhi-c in #1693
  • fix(sessions): exclude automation sessions from empty-slot reuse by @Totopo27 in #1695
  • fix(storage): recover missing default profile before startup by @vastsa in #1696
  • fix(settings): make market failures retryable by @vastsa in #1697
  • fix(provider): suppress DeepSeek reasoning effort by @vastsa in #1701
  • fix(host-core): isolate Windows Bash runner jobs by @vastsa in #1703
  • feat(composer): 按示例优化任务清单折叠样式 by @vastsa in #1706
  • feat(tools): background Bash tasks that outlive the turn by @algerkong in #1683
  • feat(composer): show each @ file row's full relative path by @kev17in in #1649
  • feat(chat): keep Bash rows visible and add Show thinking toggle by @Tioit-Wang in #1704
  • feat(sidebar): add contextual copy submenus by @vastsa in #1710
  • feat(sidebar): mark projects with running work on the group header by @Tioit-Wang in #1709
  • chore(release): prepare 0.21.0-beta.1 by @vastsa in #1712
  • feat(lifecycle): theme quit and close-behavior confirms by @vastsa in #1714
  • fix(composer): keep model rows on one line and truncate long names by @vastsa in #1717
  • feat(sidebar): show last reply dates in project sessions by @vastsa in #1718
  • feat(plugins): add scoped HTML preview API for Browser by @vastsa in #1719
  • fix(chat): add HTML open-with destinations by @vastsa in #1713
  • fix(host-core): request Windows runner breakaway only when the job allows it by @chengzhi-c in #1716
  • fix(todo-dock): clarify checklist disclosure control by @vastsa in #1723
  • feat(plugins): add ratings and reviews with installed card grid by @Tioit-Wang in #1727
  • feat(todo-dock): sweep the working step and drop per-row chrome by @Tioit-Wang in #1729
  • chore(release): prepare 0.21.0-beta.3 by @Tioit-Wang in #1730
  • fix(sidebar): refine session rows and todo disclosure by @vastsa in #1734
  • feat(composer): open the mode menu instead of cycling the chip by @vastsa in #1737
  • fix(sessions): match placeholder session titles case-insensitively by @Totopo27 in #1725
  • fix(work-panel): lend width to a reopened sidebar instead of storing it by @AR307 in #1735
  • fix(composer): keep finished background tasks out of the composer bar by @vastsa in #1742
  • feat(plugins): follow the selected session and reveal work-panel views by @vastsa in #1745
  • fix(sidebar): default running activity to count badge by @vastsa in #1749
  • feat(plugins): daily review line on marketplace cards by @Tioit-Wang in #1748
  • fix(plugins): allow relative paths inside a drive-root workspace by @Frank-zhu2000 in #1739
  • fix(sessions): recognize the German, French and Spanish placeholder titles by @SeanLiu326 in #1757
  • fix(agent-runtime): discover native sessions in configured sessionDir by @Frank-zhu2000 in #1764
  • fix(providers): handle optional client certificate requests by @yixinforu in #1724
  • fix(importers): discover Pi auth-only model providers by @IswordSun in #1761
  • fix(plugins): keep session follow alive across renderer reloads and inside scope by @SeanLiu326 in #1756
  • fix(agent-runtime): route OpenCode Go Claude through Anthropic by @vastsa in #1772
  • fix(agent-runtime): retry after compaction without failed assistant by @vastsa in #1773
  • fix(work-panel): keep active tab close action visible by @vastsa in #1775
  • chore(deps): upgrade Pi kernel packages from 1.1.0 to 1.3.0 by @vastsa in #1786
  • feat(macos): make the translucent window surface an opt-in setting by @vastsa in #1788
  • fix(macos): keep the translucent window surface on by default by @vastsa in #1790
  • feat(plugins): offer one line of composer suggestion from a plugin by @Tioit-Wang in #1785
  • feat(transcript): unify turn folding and command preferences by @Tioit-Wang in #1793
  • feat(transcript): add display modes and thinking shimmer by @Tioit-Wang in #1798
  • fix(composer): search past a truncated file index for @ mentions by @zszz3 in #1787
  • fix(chat): open worktree references from the branch copy by @zszz3 in #1780
  • fix(transcript): let an unpinned bookmark own the pane reveal by @zszz3 in #1783
  • fix(mcp): fail loudly when a server has no DCR endpoint by @muzimu217 in #1791
  • fix(e2e): escalate to SIGKILL when the certificate probe hangs by @muzimu217 in #1792
  • feat(composer): toggle background task output from the whole row by @vastsa in #1804
  • fix(transcript): center running marker by @Tioit-Wang in #1811
  • chore(release): v0.21.0-beta.6 by @Tioit-Wang in #1813
  • feat(transcript): flatten edit rows and restore group hierarchy by @Tioit-Wang in #1814
  • fix(settings): size segmented controls to their content by @vastsa in #1816
  • fix(runtime): preserve repeated tool executions and repair Gemini Live setup by @Seraph-x in #1819
  • fix(desktop): keep toasts clear of the work panel by @AuhNijGnahz in #1823
  • fix(window): 修复窗口恢复后残留置顶导致的窗口遮挡问题 by @xuesecanmeng in #1810
  • fix(transcript): keep activity details visible after turns settle by @SunkenCost in #1808
  • fix(chat): parse positioned and ambiguous file references safely by @SunkenCost in #1807
  • fix(transcript): fall back to the bookmarked offset when its row is unmounted by @muzimu217 in #1800
  • fix(agent-runtime): skip expired OS trust anchors when merging the CA set by @ls2023wsw in #1799
  • fix(runtime): size the output cap from the folded request transcript by @spacker-343 in #1797
  • fix(asktool): keep card drafts across session switches by @liubai0106 in #1776
  • fix(tests): keep the launch-resolver and sessionDir suites green on unprivileged Windows by @SeanLiu326 in #1803
  • fix(persistence): drop empty assistant rows regardless of status by @liubai0106 in #1778
  • fix(settings): keep the last successful market list when a query fails by @muzimu217 in #1751
  • fix(work-panel): keep the active tab's close button inside the strip by @muzimu217 in #1769
  • fix(agent-runtime): stop stuck tools without hiding side effects by @vastsa in #1829
  • fix(agent-runtime): stop waiting for tools host-core cannot cancel by @liubai0106 in #1779
  • fix(ci): realign stale store and adapter contracts by @Tioit-Wang in #1832
  • feat(chat): show per-turn token usage capsule by @Tioit-Wang in #1818
  • feat(chat): rework the top-level turn fold header by @Tioit-Wang in #1817
  • feat(chat): show project breadcrumb and inline title editing by @Tioit-Wang in #1831
  • chore(release): v0.21.0-beta.7 by @Tioit-Wang in #1835
  • fix(agent-runtime): emit extension context before every request by @zszz3 in #1840
  • fix(composer): prevent stale submits from restoring old drafts by @vastsa in #1841
  • fix(chat): open turn usage popover upward by @Tioit-Wang in #1842
  • fix(browser): keep side-panel pages available in background sessions by @vastsa in #1843
  • feat(chat): render inline generative UI visualizations by @zszz3 in #1826
  • fix: preserve explicit reasoning effort overrides for custom gateways by @Seraph-x in #1846
  • feat(chat): scope background tasks to their session and share one dock with todo by @Tioit-Wang in #1844
  • chore(release): v0.21.0-beta.8 by @Tioit-Wang in #1854
  • fix(transcript): automatically continue restored reading ranges by @new-Beginner in #1850
  • fix(provider): send reasoning_effort to official DeepSeek endpoints by @zszz3 in #1849
  • fix(chat): 切回缓存会话时保留阅读页,修复误显示【加载后续消息】(#1851) by @zszz3 in #1852
  • fix(transcript): 修复思考与轮次的自动折叠及问题徽标排版 by @vastsa in #1859
  • fix(composer): keep the task dock collapse across session switches by @vastsa in #1860
  • chore(release): v0.21.0 by @vastsa in #1862

New Contributors

Full Changelog: v0.20.1...v0.21.0

Don't miss a new PI-Desktop release

NewReleases is sending notifications on new releases.