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