What's Changed
- feat(analytics): CI-only PostHog key; dev builds never report by @rsolmano in https://github.com/JetBrains/thinkrail/pull/665
- test(server): drop avoidable waits from the slowest server tests by @rsolmano in https://github.com/JetBrains/thinkrail/pull/667
- fix(server): make set_title name an unnamed workspace in the same call by @rsolmano in https://github.com/JetBrains/thinkrail/pull/658
- docs: make the README user-facing with screenshots by @rsolmano in https://github.com/JetBrains/thinkrail/pull/666
- Blog: lightweight -> agentic by @makingthematrix in https://github.com/JetBrains/thinkrail/pull/660
- feat(shell): add Cmd/Ctrl+K session switcher palette by @OLavrik in https://github.com/JetBrains/thinkrail/pull/633
- feat: shared promote-on-work loose TODO queue and a steadier Plan page by @OLavrik in https://github.com/JetBrains/thinkrail/pull/654
- fix(web): hold a diff scroll restore until the renderer has content by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/674
- fix(server): typing past a live ask_user_question supersedes it like after a restart by @rsolmano in https://github.com/JetBrains/thinkrail/pull/669
- feat(extensions): visualize server half, server extension registry; delete pi-visualize by @rsolmano in https://github.com/JetBrains/thinkrail/pull/675
- perf(e2e): add heavy-load render scenarios and weak-machine mode by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/617
- feat(website): track install-intent signals and let phones send the install link by @rsolmano in https://github.com/JetBrains/thinkrail/pull/677
- perf(web): stop Composer and the chat header re-rendering on every stream event by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/619
- Analytics logging for todo list feature by @OLavrik in https://github.com/JetBrains/thinkrail/pull/539
- perf(web): highlight chat code off the main thread by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/626
- fix(delegation): deliver the image autoResize override to subagent children by @OLavrik in https://github.com/JetBrains/thinkrail/pull/657
- fix(server): thaw a terminal frozen by a drain that never arrived by @CommanderTvis in https://github.com/JetBrains/thinkrail/pull/679
- refactor(server): type the WS handler table against the contract by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/662
- refactor(web): split Workbench and isolate layout rerenders by @OLavrik in https://github.com/JetBrains/thinkrail/pull/682
- chat: keep a streaming transcript visible when the chat mounts by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/636
- fix(server): reject malformed terminal and settings params by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/661
- feat(web): redesign the topbar location strip as captioned segments by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/659
- test: fix flaky toolValueText and detached-abort unit tests by @rsolmano in https://github.com/JetBrains/thinkrail/pull/687
- fix(shared): always adopt the login-shell PATH at host start by @rsolmano in https://github.com/JetBrains/thinkrail/pull/686
- feat(workspaces): settle quiet workspaces onto a per-project shelf by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/663
- feat(web): Minimal interface with edge tool rails, and remount-free panel toggles by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/680
- feat: upgrade pi to 1.1.0, gate session reloads and teardown, import the login env by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/689
- feat: configurable per-chat subagent concurrency (global + workspace) by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/699
- perf(web): stop review comment rows re-rendering on every streamed delta by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/700
- ci: fail on React Compiler bailout drift against a census baseline by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/701
- feat(web): continuous Changes review tab with hunk triage, turn receipts and a review guide by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/668
- fix(web): vendor the Pierre fix for the WebKit diff text-selection crash by @OLavrik in https://github.com/JetBrains/thinkrail/pull/684
- perf(web): isolate chat chrome from streaming re-renders by @OLavrik in https://github.com/JetBrains/thinkrail/pull/697
- feat(web): denser UI with named layout tokens and a tighter line-height scale by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/703
- feat: pass each project's trust to pi and name what trusting it loads by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/690
- fix(server): restore chats when their saved model is unavailable by @CommanderTvis in https://github.com/JetBrains/thinkrail/pull/685
- fix(web): use OS-level window focus for desktop notification suppression by @OLavrik in https://github.com/JetBrains/thinkrail/pull/705
- feat: list ThinkRail extensions in Settings and turn them on/off by @rsolmano in https://github.com/JetBrains/thinkrail/pull/709
- feat(web): calm the topbar location bar by @rsolmano in https://github.com/JetBrains/thinkrail/pull/712
- fix(server): resolve the login-shell env only for launchers that opt in by @rsolmano in https://github.com/JetBrains/thinkrail/pull/714
- feat(web): keep the Projects rail in a stable order; sort only the topbar switcher by recent activity by @rsolmano in https://github.com/JetBrains/thinkrail/pull/713
- fix(terminal): stop polluting shell history and clear orphaned completions by @OLavrik in https://github.com/JetBrains/thinkrail/pull/715
- fix(server): keep the attention dot off while background commands or subagents run by @rsolmano in https://github.com/JetBrains/thinkrail/pull/716
- chore(deps): upgrade pi to 1.2.0 by @rsolmano in https://github.com/JetBrains/thinkrail/pull/723
- feat(server): run the MCP servers from mcp.json in chats on pi's built-in engine by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/691
- feat(server): serve MCP server management, status and sign-in to clients by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/692
- feat(workflow): restore the design interview as the default and keep specs amended by @rsolmano in https://github.com/JetBrains/thinkrail/pull/711
- feat(web): track MCP status and list each chat's MCP servers in its resources by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/693
- feat: manage MCP servers in Settings by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/694
- feat(web): render MCP tool calls, resources and tool_search as cards by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/695
- feat(workflow): show rejected alternatives instead of deciding silently in brainstorming by @rsolmano in https://github.com/JetBrains/thinkrail/pull/726
- feat(web): show background work as running and clear unread results when seen by @rsolmano in https://github.com/JetBrains/thinkrail/pull/728
- feat(web): list newest workspaces first in the projects panel by @rsolmano in https://github.com/JetBrains/thinkrail/pull/725
- fix(server): re-apply review and subagent tool gates after session reload by @OLavrik in https://github.com/JetBrains/thinkrail/pull/733
- chore(pi-extensions): publish pi packages under the @thinkrail npm scope by @rsolmano in https://github.com/JetBrains/thinkrail/pull/734
- Making file and diff views virtualized and capable of loading large files by @zhuravlikjb in https://github.com/JetBrains/thinkrail/pull/731
- feat(web): show folder diff counts in the Changes tree only when collapsed by @rsolmano in https://github.com/JetBrains/thinkrail/pull/735
- Fix conflict of scrolling and panel resize by mouse by @zhuravlikjb in https://github.com/JetBrains/thinkrail/pull/736
- Settings redesign by @juliashilovaa in https://github.com/JetBrains/thinkrail/pull/710
- Loader redesign by @juliashilovaa in https://github.com/JetBrains/thinkrail/pull/727
- feat(web): move the plan to a TODO List side rail, add todo_promote, and render the plan summary as a PR body by @OLavrik in https://github.com/JetBrains/thinkrail/pull/706
- Unify notification design system across app by @juliashilovaa in https://github.com/JetBrains/thinkrail/pull/730
- feat(web): group review settings into a Review section on the Models page by @rsolmano in https://github.com/JetBrains/thinkrail/pull/744
- feat(web): set provider groups apart in the model picker by @rsolmano in https://github.com/JetBrains/thinkrail/pull/745
- feat(desktop): open Settings with Cmd+, on macOS and Ctrl+, on Windows/Linux by @rsolmano in https://github.com/JetBrains/thinkrail/pull/747
- fix(web): keep the history search overlay above message copy buttons by @HadesArchitect in https://github.com/JetBrains/thinkrail/pull/748
- feat: ask extension dialogs inside the chat and add MCP "Always allow" by @rsolmano in https://github.com/JetBrains/thinkrail/pull/749
- feat(web): calmer Connect dialog — no raw OAuth URLs, smarter paste fallback by @rsolmano in https://github.com/JetBrains/thinkrail/pull/761
- fix(agent): keep host questionnaires from being shadowed by extensions by @superjackche in https://github.com/JetBrains/thinkrail/pull/754
- fix: list an MCP call's arguments inside its approval prompt by @rsolmano in https://github.com/JetBrains/thinkrail/pull/763
- feat: rename projects from the project context menu by @HadesArchitect in https://github.com/JetBrains/thinkrail/pull/764
New Contributors
- @zhuravlikjb made their first contribution in https://github.com/JetBrains/thinkrail/pull/731
- @HadesArchitect made their first contribution in https://github.com/JetBrains/thinkrail/pull/748
- @superjackche made their first contribution in https://github.com/JetBrains/thinkrail/pull/754
Full Changelog: https://github.com/JetBrains/thinkrail/compare/v0.1.6...v0.2.0