Back to the Finder

ThinkRail

Open-source desktop app for Mac, Windows and Linux. Agents run on your computer.

Product websitethinkrail.ai Compare with others Missing or wrong data?

ThinkRail product interface, supplied by its publisher
Desktop app
Mac, Windows and Linux
Browser
Yes
Phone
Phone browser
Command line
Yes
Agents
Pi
Your subscription
Works with your own plan
Agents run
On your computer
Laptop closed
Not listed
Isolation
Worktree
Parallel agents
Yes
Scheduled runs
No
Coordinator agent
Yes
Built-in issues
Yes
Pull requests
Yes
Review screen
Yes
Team
No
Self-hosting
Yes
Licence
Apache-2.0
Price from
Free
How it charges
No paid plan and bring your own key
Paid plans from
Not listed

Receipts

Checked
Findings
50 published · 49 cross-checked by a second agent · read them all
Sources
47 public pages on 2 sites: thinkrail.ai, github.com
GitHub stars
8,189 on · github.com · repository attention, not users or capability
Screenshot
github.com, retrieved · first party repository · shows appearance, not capability
Method
Same rules for all 103 researched ADEs. How we check · Report wrong data

What it does

Where you use it

Desktop apps ship for macOS 14+ (Apple Silicon and Intel), Windows x64 and Linux x64/ARM64; the complete install matrix omits native phone apps and editor extensions. The thinkrail CLI opens the same app in any browser, the web UI adapts to phone viewports over Tailscale, and notifications arrive via desktop alerts plus in-app waiting markers. Same-task state rebuilds on another surface, but running execution does not hand off.

Source and scope for Where you use it

Agents it runs

The only harness is pi, run in-process with no second runtime. Model choice comes from pi provider auth plus JetBrains AI through the user-owned central CLI and user-added OpenAI-compatible servers (1,639 provider/model pairs in the pi 1.5.1 catalogue). Other coding-agent CLIs are only detected as provider-setup signals, never run as harnesses; mixed-harness operation is excluded by the single-engine design.

Source and scope for Agents it runs

Accounts and subscriptions

ThinkRail uses provider API keys and Pi's native OAuth login, including Anthropic subscription credentials recognized by the embedded runtime. External CLI accounts are setup signals rather than borrowed credentials; there is no ThinkRail credit system.

Source and scope for Accounts and subscriptions

Where agents run

Execution is local: the desktop app and the CLI host run the in-process pi engine on the user’s own machine, provisioned by the installer, with no vendor cloud, no user-server path and no resource, region or expiry concepts. State rebuilds on other surfaces over the wire, but execution does not survive the originating host.

Source and scope for Where agents run

How work is kept apart

Isolation is git worktrees: separate directories, branches and cwds per workspace on the same machine and OS user, with env-based secret handling. No container, VM, OS-sandbox, process or network boundary exists; pi runs in-process. A worktree is file separation, not a security boundary.

Source and scope for How work is kept apart

Parallel work

Several sessions run concurrently per workspace and several workspaces run in parallel, each isolated on its own branch and cwd — implemented in the session manager with parallel Agent calls and background commands. The Projects rail and Resources views show running work. No quotas exist.

Source and scope for Parallel work

Scheduled runs

Unattended triggers do not exist: bounded v0.3.2 inspection of packages/server, apps/* and packages/* for schedul|cron|trigger|recur|setInterval-based scheduling found only UI polling, update checks and request replay. No schedules, event triggers, recurring tasks or completion-driven runs exist.

Source and scope for Scheduled runs

Git and pull requests

The full GitHub loop is integrated in the topbar: own branches and worktrees, per-step commits, PR open/update through gh with templates or agent drafts, CI response with Fix-with-agent, rebase preview, and merge/reopen/branch-delete actions — all present in the pinned pr/github modules. PR-comment round-trips and GitLab review actions are the limits.

Source and scope for Git and pull requests

Licence and source

ThinkRail is Apache-2.0 across the public repo: desktop app, CLI host, engine library, contracts, web UI and all bundled extensions ship from one codebase with no proprietary twin or licence exception. The revision is pinned to release v0.3.2 (commit 1bc1a9b).

Source and scope for Licence and source

Price

ThinkRail itself is free: Apache-2.0 source, free downloads, no accounts, no paid plan and no metered units. Model and compute spend belongs to the user’s own providers and hardware and is never billed or marked up by ThinkRail. Billing dimensions do not apply to a product with no paid offering.

Source and scope for Price

JSON for agentsMarkdown for agents

Report wrong dataSuggest a missing ADE

Typed filters

Every value links to its receipt below. Read plan and surface restrictions before using a filter to decide.

Typed filter values
FilterValue
Desktop OS: macOSYes cross-checked
Desktop OS: WindowsYes cross-checked
Desktop OS: LinuxYes cross-checked
Web clientYes cross-checked
Phone access: Native iOSNo cross-checked
Phone access: Native AndroidNo cross-checked
Phone access: Phone browserYes cross-checked
CLIYes cross-checked
Coding agents: Claude CodeNo cross-checked
Coding agents: CodexNo cross-checked
Coding agents: Cursor AgentNo cross-checked
Coding agents: Gemini CLINo cross-checked
Coding agents: OpenCodeNo cross-checked
Coding agents: PiYes cross-checked
Coding agents: GrokNo cross-checked
Coding agents: AiderNo cross-checked
Coding agents: AntigravityNo cross-checked
Use my subscriptionYes
Where agents run: On your computerYes cross-checked
Where agents run: On your own serverNo cross-checked
Where agents run: In the vendor's cloudNo cross-checked
Workspace isolation: Git worktreeYes cross-checked
Workspace isolation: ContainerNo cross-checked
Workspace isolation: VM or microVMNo cross-checked
Parallel runsYes cross-checked
CoordinatorYes cross-checked
Native issue trackingYes
Unattended triggersNo cross-checked
Shared promptingNo cross-checked
Team rolesNo cross-checked
SSONo cross-checked
Pull request workflowYes cross-checked
Review interfaceYes cross-checked
Product license: Apache-2.0Yes. Apache-2.0 cross-checked
Product license: MITNo. Apache-2.0 cross-checked
Product license: GPL-3.0No. Apache-2.0 cross-checked
Product license: GPL-3.0-or-laterNo. Apache-2.0 cross-checked
Product license: AGPL-3.0No. Apache-2.0 cross-checked
Product license: AGPL-3.0-or-laterNo. Apache-2.0 cross-checked
Product license: Elastic License 2.0No. Apache-2.0 cross-checked
Product license: Custom termsNo. Apache-2.0 cross-checked
Product license: ProprietaryNo. Apache-2.0 cross-checked
Self-hostingYes cross-checked
Telemetry opt-outNo cross-checked
Free accessYes cross-checked
Starting price: FreeYes. Free cross-checked
Starting price: Up to $20/monthNo. Free cross-checked
Starting price: $21–40/monthNo. Free cross-checked
Starting price: $41–100/monthNo. Free cross-checked
Starting price: Over $100/monthNo. Free cross-checked
Starting price: Contact for pricingNo. Free cross-checked
Pricing model: Free, no paid planYes cross-checked
Pricing model: Free planNo
Pricing model: SubscriptionNo
Pricing model: Per seatNo
Pricing model: Usage-basedNo
Pricing model: Per machine or computeNo
Pricing model: Bring your own keyYes
Pricing model: One-time purchaseNo
Paid plans from: No paid planUnknown
Paid plans from: $10 or less/monthUnknown
Paid plans from: $11–20/monthUnknown
Paid plans from: $21–40/monthUnknown
Paid plans from: $41–100/monthUnknown
Paid plans from: Over $100/monthUnknown
Paid plans from: Contact salesUnknown
Lifecycle status: ActiveUnknown
Lifecycle status: SunsettingUnknown
Keeps going with laptop closedUnknown
Open-source licenseYes. Apache-2.0 cross-checked
Any desktop appYes cross-checked
Paid plan up to $20/monthUnknown
Paid plan up to $40/monthUnknown
Any phone clientYes cross-checked

Filter receipts

Desktop OS: macOS: Yes cross-checked

Desktop OS: macOS

Typed value: Yes.

Desktop apps ship for macOS 14+ (Apple Silicon and Intel), Windows x64 and Linux x64/ARM64; the complete install matrix omits native phone apps and editor extensions. The thinkrail CLI opens the same app in any browser, the web UI adapts to phone viewports over Tailscale, and notifications arrive via desktop alerts plus in-app waiting markers. Same-task state rebuilds on another surface, but running execution does not hand off.

  • Desktop os: Desktop installers cover macOS 14+ Apple Silicon/Intel (DMG), Windows x64 (setup zip) and Linux x64/ARM64 (setup tarball plus installer).
  • Mobile apps: Client access, mobile_apps: the install matrix (README Installation plus landing install section) is the complete first-party list of shipped clients — macOS, Windows and Linux desktop plus the CLI browser host — and omits any native iOS or Android app. No mobile packaging exists in apps/ (cli, desktop, web, website only).
  • Browser: The thinkrail CLI opens the same app in a browser; desktop and browser hosts embed the same engine host.
  • Cli: The product-owned thinkrail launcher CLI installs, updates (stable/nightly channels), opens projects and prints help/version; model and agent work stay pi’s.
  • Notifications: Desktop notifications plus in-app waiting markers: attention engine with per-session unread holds (apps/web/src/notifications) and the palette urgency list; Linux desktop builds require libnotify.
  • The complete install list omits native phone apps and editor extensions. Cross-device state rebuilds; running execution stays on the originating host.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

Desktop OS: Windows: Yes cross-checked

Desktop OS: Windows

Typed value: Yes.

Desktop apps ship for macOS 14+ (Apple Silicon and Intel), Windows x64 and Linux x64/ARM64; the complete install matrix omits native phone apps and editor extensions. The thinkrail CLI opens the same app in any browser, the web UI adapts to phone viewports over Tailscale, and notifications arrive via desktop alerts plus in-app waiting markers. Same-task state rebuilds on another surface, but running execution does not hand off.

  • Desktop os: Desktop installers cover macOS 14+ Apple Silicon/Intel (DMG), Windows x64 (setup zip) and Linux x64/ARM64 (setup tarball plus installer).
  • Mobile apps: Client access, mobile_apps: the install matrix (README Installation plus landing install section) is the complete first-party list of shipped clients — macOS, Windows and Linux desktop plus the CLI browser host — and omits any native iOS or Android app. No mobile packaging exists in apps/ (cli, desktop, web, website only).
  • Browser: The thinkrail CLI opens the same app in a browser; desktop and browser hosts embed the same engine host.
  • Cli: The product-owned thinkrail launcher CLI installs, updates (stable/nightly channels), opens projects and prints help/version; model and agent work stay pi’s.
  • Notifications: Desktop notifications plus in-app waiting markers: attention engine with per-session unread holds (apps/web/src/notifications) and the palette urgency list; Linux desktop builds require libnotify.
  • The complete install list omits native phone apps and editor extensions. Cross-device state rebuilds; running execution stays on the originating host.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

Desktop OS: Linux: Yes cross-checked

Desktop OS: Linux

Typed value: Yes.

Desktop apps ship for macOS 14+ (Apple Silicon and Intel), Windows x64 and Linux x64/ARM64; the complete install matrix omits native phone apps and editor extensions. The thinkrail CLI opens the same app in any browser, the web UI adapts to phone viewports over Tailscale, and notifications arrive via desktop alerts plus in-app waiting markers. Same-task state rebuilds on another surface, but running execution does not hand off.

  • Desktop os: Desktop installers cover macOS 14+ Apple Silicon/Intel (DMG), Windows x64 (setup zip) and Linux x64/ARM64 (setup tarball plus installer).
  • Mobile apps: Client access, mobile_apps: the install matrix (README Installation plus landing install section) is the complete first-party list of shipped clients — macOS, Windows and Linux desktop plus the CLI browser host — and omits any native iOS or Android app. No mobile packaging exists in apps/ (cli, desktop, web, website only).
  • Browser: The thinkrail CLI opens the same app in a browser; desktop and browser hosts embed the same engine host.
  • Cli: The product-owned thinkrail launcher CLI installs, updates (stable/nightly channels), opens projects and prints help/version; model and agent work stay pi’s.
  • Notifications: Desktop notifications plus in-app waiting markers: attention engine with per-session unread holds (apps/web/src/notifications) and the palette urgency list; Linux desktop builds require libnotify.
  • The complete install list omits native phone apps and editor extensions. Cross-device state rebuilds; running execution stays on the originating host.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

Web client: Yes cross-checked

Web client

Typed value: Yes.

Desktop apps ship for macOS 14+ (Apple Silicon and Intel), Windows x64 and Linux x64/ARM64; the complete install matrix omits native phone apps and editor extensions. The thinkrail CLI opens the same app in any browser, the web UI adapts to phone viewports over Tailscale, and notifications arrive via desktop alerts plus in-app waiting markers. Same-task state rebuilds on another surface, but running execution does not hand off.

  • Desktop os: Desktop installers cover macOS 14+ Apple Silicon/Intel (DMG), Windows x64 (setup zip) and Linux x64/ARM64 (setup tarball plus installer).
  • Mobile apps: Client access, mobile_apps: the install matrix (README Installation plus landing install section) is the complete first-party list of shipped clients — macOS, Windows and Linux desktop plus the CLI browser host — and omits any native iOS or Android app. No mobile packaging exists in apps/ (cli, desktop, web, website only).
  • Browser: The thinkrail CLI opens the same app in a browser; desktop and browser hosts embed the same engine host.
  • Cli: The product-owned thinkrail launcher CLI installs, updates (stable/nightly channels), opens projects and prints help/version; model and agent work stay pi’s.
  • Notifications: Desktop notifications plus in-app waiting markers: attention engine with per-session unread holds (apps/web/src/notifications) and the palette urgency list; Linux desktop builds require libnotify.
  • The complete install list omits native phone apps and editor extensions. Cross-device state rebuilds; running execution stays on the originating host.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

Phone access: Native iOS: No cross-checked

Phone access: Native iOS

Typed value: No.

Desktop apps ship for macOS 14+ (Apple Silicon and Intel), Windows x64 and Linux x64/ARM64; the complete install matrix omits native phone apps and editor extensions. The thinkrail CLI opens the same app in any browser, the web UI adapts to phone viewports over Tailscale, and notifications arrive via desktop alerts plus in-app waiting markers. Same-task state rebuilds on another surface, but running execution does not hand off.

  • Desktop os: Desktop installers cover macOS 14+ Apple Silicon/Intel (DMG), Windows x64 (setup zip) and Linux x64/ARM64 (setup tarball plus installer).
  • Mobile apps: Client access, mobile_apps: the install matrix (README Installation plus landing install section) is the complete first-party list of shipped clients — macOS, Windows and Linux desktop plus the CLI browser host — and omits any native iOS or Android app. No mobile packaging exists in apps/ (cli, desktop, web, website only).
  • Browser: The thinkrail CLI opens the same app in a browser; desktop and browser hosts embed the same engine host.
  • Cli: The product-owned thinkrail launcher CLI installs, updates (stable/nightly channels), opens projects and prints help/version; model and agent work stay pi’s.
  • Notifications: Desktop notifications plus in-app waiting markers: attention engine with per-session unread holds (apps/web/src/notifications) and the palette urgency list; Linux desktop builds require libnotify.
  • The complete install list omits native phone apps and editor extensions. Cross-device state rebuilds; running execution stays on the originating host.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

Phone access: Native Android: No cross-checked

Phone access: Native Android

Typed value: No.

Desktop apps ship for macOS 14+ (Apple Silicon and Intel), Windows x64 and Linux x64/ARM64; the complete install matrix omits native phone apps and editor extensions. The thinkrail CLI opens the same app in any browser, the web UI adapts to phone viewports over Tailscale, and notifications arrive via desktop alerts plus in-app waiting markers. Same-task state rebuilds on another surface, but running execution does not hand off.

  • Desktop os: Desktop installers cover macOS 14+ Apple Silicon/Intel (DMG), Windows x64 (setup zip) and Linux x64/ARM64 (setup tarball plus installer).
  • Mobile apps: Client access, mobile_apps: the install matrix (README Installation plus landing install section) is the complete first-party list of shipped clients — macOS, Windows and Linux desktop plus the CLI browser host — and omits any native iOS or Android app. No mobile packaging exists in apps/ (cli, desktop, web, website only).
  • Browser: The thinkrail CLI opens the same app in a browser; desktop and browser hosts embed the same engine host.
  • Cli: The product-owned thinkrail launcher CLI installs, updates (stable/nightly channels), opens projects and prints help/version; model and agent work stay pi’s.
  • Notifications: Desktop notifications plus in-app waiting markers: attention engine with per-session unread holds (apps/web/src/notifications) and the palette urgency list; Linux desktop builds require libnotify.
  • The complete install list omits native phone apps and editor extensions. Cross-device state rebuilds; running execution stays on the originating host.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

Phone access: Phone browser: Yes cross-checked

Phone access: Phone browser

Typed value: Yes.

Desktop apps ship for macOS 14+ (Apple Silicon and Intel), Windows x64 and Linux x64/ARM64; the complete install matrix omits native phone apps and editor extensions. The thinkrail CLI opens the same app in any browser, the web UI adapts to phone viewports over Tailscale, and notifications arrive via desktop alerts plus in-app waiting markers. Same-task state rebuilds on another surface, but running execution does not hand off.

  • Mobile browser: The mobile-first React UI adapts below 767px (viewport phone queries) and a phone reaches the selected host over Tailscale; no native app exists.
  • Cross device continuity: Client access, cross_device_continuity: hydrate-then-stream rebuilds the same projects, workspaces, sessions and transcripts on a second tab, phone or restart (contracts session.list/session.getMessages), but execution stays on the originating host with no handoff of running work.
  • The complete install list omits native phone apps and editor extensions. Cross-device state rebuilds; running execution stays on the originating host.
  1. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

CLI: Yes cross-checked

CLI

Typed value: Yes.

The product-owned thinkrail CLI is a launcher with an exhaustive inventory: open, update and uninstall plus connection flags; it exposes no agent operations. The engine-to-UI wire is internal (/ws plus /health and static routes), with no public API, SDK, MCP server or webhooks in the pinned release.

  • Cli: thinkrail opens projects, takes channel/version/uninstall flags and --help/--version; agent operations live in the UI, not the CLI.
  • All agent operations are UI-driven. The CLI inventory is complete and omits them; no programmable surface exists.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

Coding agents: Claude Code: No cross-checked

Coding agents: Claude Code

Typed value: No.

The only harness is pi, run in-process with no second runtime. Model choice comes from pi provider auth plus JetBrains AI through the user-owned central CLI and user-added OpenAI-compatible servers (1,639 provider/model pairs in the pi 1.5.1 catalogue). Other coding-agent CLIs are only detected as provider-setup signals, never run as harnesses; mixed-harness operation is excluded by the single-engine design.

  • Harnesses: pi is the only engine, run in-process — explicitly no second runtime (no claude-agent-sdk). Claude Code, Codex, Copilot, Kimi CLI and Grok Build appear only as detected provider configs, never as run harnesses.
  • Model providers: Providers connect through pi auth, JetBrains AI via the central CLI, and user-added OpenAI-compatible servers; the 1.5.1 catalogue held 1,639 provider/model pairs.
  • Mixed harness operation: Agent and model choice, mixed_harness_operation: pi is the only engine with no second runtime and no adapter code; there is nothing to mix.
  • Single-engine product: no second harness exists and mixed-harness operation is excluded.
  1. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Coding agents: Codex: No cross-checked

Coding agents: Codex

Typed value: No.

The only harness is pi, run in-process with no second runtime. Model choice comes from pi provider auth plus JetBrains AI through the user-owned central CLI and user-added OpenAI-compatible servers (1,639 provider/model pairs in the pi 1.5.1 catalogue). Other coding-agent CLIs are only detected as provider-setup signals, never run as harnesses; mixed-harness operation is excluded by the single-engine design.

  • Harnesses: pi is the only engine, run in-process — explicitly no second runtime (no claude-agent-sdk). Claude Code, Codex, Copilot, Kimi CLI and Grok Build appear only as detected provider configs, never as run harnesses.
  • Model providers: Providers connect through pi auth, JetBrains AI via the central CLI, and user-added OpenAI-compatible servers; the 1.5.1 catalogue held 1,639 provider/model pairs.
  • Mixed harness operation: Agent and model choice, mixed_harness_operation: pi is the only engine with no second runtime and no adapter code; there is nothing to mix.
  • Single-engine product: no second harness exists and mixed-harness operation is excluded.
  1. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Coding agents: Cursor Agent: No cross-checked

Coding agents: Cursor Agent

Typed value: No.

The only harness is pi, run in-process with no second runtime. Model choice comes from pi provider auth plus JetBrains AI through the user-owned central CLI and user-added OpenAI-compatible servers (1,639 provider/model pairs in the pi 1.5.1 catalogue). Other coding-agent CLIs are only detected as provider-setup signals, never run as harnesses; mixed-harness operation is excluded by the single-engine design.

  • Harnesses: pi is the only engine, run in-process — explicitly no second runtime (no claude-agent-sdk). Claude Code, Codex, Copilot, Kimi CLI and Grok Build appear only as detected provider configs, never as run harnesses.
  • Model providers: Providers connect through pi auth, JetBrains AI via the central CLI, and user-added OpenAI-compatible servers; the 1.5.1 catalogue held 1,639 provider/model pairs.
  • Mixed harness operation: Agent and model choice, mixed_harness_operation: pi is the only engine with no second runtime and no adapter code; there is nothing to mix.
  • Single-engine product: no second harness exists and mixed-harness operation is excluded.
  1. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Coding agents: Gemini CLI: No cross-checked

Coding agents: Gemini CLI

Typed value: No.

The only harness is pi, run in-process with no second runtime. Model choice comes from pi provider auth plus JetBrains AI through the user-owned central CLI and user-added OpenAI-compatible servers (1,639 provider/model pairs in the pi 1.5.1 catalogue). Other coding-agent CLIs are only detected as provider-setup signals, never run as harnesses; mixed-harness operation is excluded by the single-engine design.

  • Harnesses: pi is the only engine, run in-process — explicitly no second runtime (no claude-agent-sdk). Claude Code, Codex, Copilot, Kimi CLI and Grok Build appear only as detected provider configs, never as run harnesses.
  • Model providers: Providers connect through pi auth, JetBrains AI via the central CLI, and user-added OpenAI-compatible servers; the 1.5.1 catalogue held 1,639 provider/model pairs.
  • Mixed harness operation: Agent and model choice, mixed_harness_operation: pi is the only engine with no second runtime and no adapter code; there is nothing to mix.
  • Single-engine product: no second harness exists and mixed-harness operation is excluded.
  1. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Coding agents: OpenCode: No cross-checked

Coding agents: OpenCode

Typed value: No.

The only harness is pi, run in-process with no second runtime. Model choice comes from pi provider auth plus JetBrains AI through the user-owned central CLI and user-added OpenAI-compatible servers (1,639 provider/model pairs in the pi 1.5.1 catalogue). Other coding-agent CLIs are only detected as provider-setup signals, never run as harnesses; mixed-harness operation is excluded by the single-engine design.

  • Harnesses: pi is the only engine, run in-process — explicitly no second runtime (no claude-agent-sdk). Claude Code, Codex, Copilot, Kimi CLI and Grok Build appear only as detected provider configs, never as run harnesses.
  • Model providers: Providers connect through pi auth, JetBrains AI via the central CLI, and user-added OpenAI-compatible servers; the 1.5.1 catalogue held 1,639 provider/model pairs.
  • Mixed harness operation: Agent and model choice, mixed_harness_operation: pi is the only engine with no second runtime and no adapter code; there is nothing to mix.
  • Single-engine product: no second harness exists and mixed-harness operation is excluded.
  1. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Coding agents: Pi: Yes cross-checked

Coding agents: Pi

Typed value: Yes.

The only harness is pi, run in-process with no second runtime. Model choice comes from pi provider auth plus JetBrains AI through the user-owned central CLI and user-added OpenAI-compatible servers (1,639 provider/model pairs in the pi 1.5.1 catalogue). Other coding-agent CLIs are only detected as provider-setup signals, never run as harnesses; mixed-harness operation is excluded by the single-engine design.

  • Harnesses: pi is the only engine, run in-process — explicitly no second runtime (no claude-agent-sdk). Claude Code, Codex, Copilot, Kimi CLI and Grok Build appear only as detected provider configs, never as run harnesses.
  • Model providers: Providers connect through pi auth, JetBrains AI via the central CLI, and user-added OpenAI-compatible servers; the 1.5.1 catalogue held 1,639 provider/model pairs.
  • Custom adapters: Any OpenAI-compatible server fits: company gateways or on-machine models via Settings Providers with Find models, saved into pi models.json for the app and the pi CLI.
  • Mixed harness operation: Agent and model choice, mixed_harness_operation: pi is the only engine with no second runtime and no adapter code; there is nothing to mix.
  • Single-engine product: no second harness exists and mixed-harness operation is excluded.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Coding agents: Grok: No cross-checked

Coding agents: Grok

Typed value: No.

The only harness is pi, run in-process with no second runtime. Model choice comes from pi provider auth plus JetBrains AI through the user-owned central CLI and user-added OpenAI-compatible servers (1,639 provider/model pairs in the pi 1.5.1 catalogue). Other coding-agent CLIs are only detected as provider-setup signals, never run as harnesses; mixed-harness operation is excluded by the single-engine design.

  • Harnesses: pi is the only engine, run in-process — explicitly no second runtime (no claude-agent-sdk). Claude Code, Codex, Copilot, Kimi CLI and Grok Build appear only as detected provider configs, never as run harnesses.
  • Model providers: Providers connect through pi auth, JetBrains AI via the central CLI, and user-added OpenAI-compatible servers; the 1.5.1 catalogue held 1,639 provider/model pairs.
  • Mixed harness operation: Agent and model choice, mixed_harness_operation: pi is the only engine with no second runtime and no adapter code; there is nothing to mix.
  • Single-engine product: no second harness exists and mixed-harness operation is excluded.
  1. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Coding agents: Aider: No cross-checked

Coding agents: Aider

Typed value: No.

The only harness is pi, run in-process with no second runtime. Model choice comes from pi provider auth plus JetBrains AI through the user-owned central CLI and user-added OpenAI-compatible servers (1,639 provider/model pairs in the pi 1.5.1 catalogue). Other coding-agent CLIs are only detected as provider-setup signals, never run as harnesses; mixed-harness operation is excluded by the single-engine design.

  • Harnesses: pi is the only engine, run in-process — explicitly no second runtime (no claude-agent-sdk). Claude Code, Codex, Copilot, Kimi CLI and Grok Build appear only as detected provider configs, never as run harnesses.
  • Model providers: Providers connect through pi auth, JetBrains AI via the central CLI, and user-added OpenAI-compatible servers; the 1.5.1 catalogue held 1,639 provider/model pairs.
  • Mixed harness operation: Agent and model choice, mixed_harness_operation: pi is the only engine with no second runtime and no adapter code; there is nothing to mix.
  • Single-engine product: no second harness exists and mixed-harness operation is excluded.
  1. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Coding agents: Antigravity: No cross-checked

Coding agents: Antigravity

Typed value: No.

The only harness is pi, run in-process with no second runtime. Model choice comes from pi provider auth plus JetBrains AI through the user-owned central CLI and user-added OpenAI-compatible servers (1,639 provider/model pairs in the pi 1.5.1 catalogue). Other coding-agent CLIs are only detected as provider-setup signals, never run as harnesses; mixed-harness operation is excluded by the single-engine design.

  • Harnesses: pi is the only engine, run in-process — explicitly no second runtime (no claude-agent-sdk). Claude Code, Codex, Copilot, Kimi CLI and Grok Build appear only as detected provider configs, never as run harnesses.
  • Model providers: Providers connect through pi auth, JetBrains AI via the central CLI, and user-added OpenAI-compatible servers; the 1.5.1 catalogue held 1,639 provider/model pairs.
  • Mixed harness operation: Agent and model choice, mixed_harness_operation: pi is the only engine with no second runtime and no adapter code; there is nothing to mix.
  • Single-engine product: no second harness exists and mixed-harness operation is excluded.
  1. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Use my subscription: Yes

Use my subscription

Typed value: Yes.

ThinkRail uses provider API keys and Pi's native OAuth login, including Anthropic subscription credentials recognized by the embedded runtime. External CLI accounts are setup signals rather than borrowed credentials; there is no ThinkRail credit system.

  • Agent subscriptions: The embedded Pi runtime uses its own OAuth sign-in and explicitly recognizes active Anthropic subscription authentication.
  • This source pass establishes only the named atomic answers. Other parts retain their documented source gaps; no hands-on test was performed.
  1. ThinkRail native Pi subscription authentication

    Finding: ThinkRail starts Pi's own OAuth login flow, and its runtime explicitly recognizes active Anthropic subscription OAuth credentials for extra-usage warnings. Detected Claude/Codex CLI account plans are setup signals, not borrowed credentials. This establishes subscription use through the embedded Pi provider login rather than a separate CLI runtime.

Where agents run: On your computer: Yes cross-checked

Where agents run: On your computer

Typed value: Yes.

Execution is local: the desktop app and the CLI host run the in-process pi engine on the user’s own machine, provisioned by the installer, with no vendor cloud, no user-server path and no resource, region or expiry concepts. State rebuilds on other surfaces over the wire, but execution does not survive the originating host.

  • Local: Desktop and CLI hosts run the in-process pi engine on the user’s computer; both embed the same engine host.
  • Byo remote: Laptop-independent execution, byo_remote: running the host on a user-owned server is not a product path; the architecture names remote-host dialling as later shared-client work, and installers plus code cover local machines only.
  • Self hosted: The whole product runs on user-controlled machines with no vendor compute; state lives under ~/.thinkrail.
  • Managed cloud: No vendor cloud exists: the desktop profile is local only and ThinkRail keeps no accounts or hosted compute.
  • Provisioning: Laptop-independent execution, provisioning: the user-run installer (install.sh/install.ps1 with stable/nightly channels) provisions the app on the local machine; no vendor provisioning applies.
  • Payer: The user pays with their own hardware; ThinkRail bills nothing and model spend goes to the user’s own providers.
  • Local-only execution with no remote, hosted or laptop-independent operation; state follows surfaces, execution does not.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Where agents run: On your own server: No cross-checked

Where agents run: On your own server

Typed value: No.

Execution is local: the desktop app and the CLI host run the in-process pi engine on the user’s own machine, provisioned by the installer, with no vendor cloud, no user-server path and no resource, region or expiry concepts. State rebuilds on other surfaces over the wire, but execution does not survive the originating host.

  • Local: Desktop and CLI hosts run the in-process pi engine on the user’s computer; both embed the same engine host.
  • Byo remote: Laptop-independent execution, byo_remote: running the host on a user-owned server is not a product path; the architecture names remote-host dialling as later shared-client work, and installers plus code cover local machines only.
  • Self hosted: The whole product runs on user-controlled machines with no vendor compute; state lives under ~/.thinkrail.
  • Managed cloud: No vendor cloud exists: the desktop profile is local only and ThinkRail keeps no accounts or hosted compute.
  • Provisioning: Laptop-independent execution, provisioning: the user-run installer (install.sh/install.ps1 with stable/nightly channels) provisions the app on the local machine; no vendor provisioning applies.
  • Payer: The user pays with their own hardware; ThinkRail bills nothing and model spend goes to the user’s own providers.
  • Resources: Laptop-independent execution, resources: bounded v0.3.2 inspection found no provisioned-compute resource concepts; execution is the local machine.
  • Region: Laptop-independent execution, region: regions do not apply to local execution; bounded v0.3.2 inspection found no region concept.
  • Other device continuation: Laptop-independent execution, other_device_continuation: a second tab or phone rebuilds the same state over the wire, but execution does not survive the host laptop sleeping and is not handed off.
  • Local-only execution with no remote, hosted or laptop-independent operation; state follows surfaces, execution does not.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

Where agents run: In the vendor's cloud: No cross-checked

Where agents run: In the vendor's cloud

Typed value: No.

Execution is local: the desktop app and the CLI host run the in-process pi engine on the user’s own machine, provisioned by the installer, with no vendor cloud, no user-server path and no resource, region or expiry concepts. State rebuilds on other surfaces over the wire, but execution does not survive the originating host.

  • Local: Desktop and CLI hosts run the in-process pi engine on the user’s computer; both embed the same engine host.
  • Byo remote: Laptop-independent execution, byo_remote: running the host on a user-owned server is not a product path; the architecture names remote-host dialling as later shared-client work, and installers plus code cover local machines only.
  • Self hosted: The whole product runs on user-controlled machines with no vendor compute; state lives under ~/.thinkrail.
  • Managed cloud: No vendor cloud exists: the desktop profile is local only and ThinkRail keeps no accounts or hosted compute.
  • Payer: The user pays with their own hardware; ThinkRail bills nothing and model spend goes to the user’s own providers.
  • Resources: Laptop-independent execution, resources: bounded v0.3.2 inspection found no provisioned-compute resource concepts; execution is the local machine.
  • Region: Laptop-independent execution, region: regions do not apply to local execution; bounded v0.3.2 inspection found no region concept.
  • Other device continuation: Laptop-independent execution, other_device_continuation: a second tab or phone rebuilds the same state over the wire, but execution does not survive the host laptop sleeping and is not handed off.
  • Local-only execution with no remote, hosted or laptop-independent operation; state follows surfaces, execution does not.
  1. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  2. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

Workspace isolation: Git worktree: Yes cross-checked

Workspace isolation: Git worktree

Typed value: Yes.

Isolation is git worktrees: separate directories, branches and cwds per workspace on the same machine and OS user, with env-based secret handling. No container, VM, OS-sandbox, process or network boundary exists; pi runs in-process. A worktree is file separation, not a security boundary.

  • Checkout: Each workspace is its own worktree directory (for example ~/.thinkrail/worktrees/<project>/workspace-1) with its own cwd for files, terminals and chats.
  • Branch: Each workspace has its own branch; main stays clean until merge.
  • Worktree: Isolation uses real git worktree functionality to create and manage the environments.
  • Filesystem: Workspace directories separate files, diffs, terminals and chats per workspace; same-machine, same-OS-user boundaries only.
  • Secrets: Extra environment variables apply per host for agents, terminals and MCP; MCP secrets must be ${VAR} or !command with URL credentials refused.
  • Code separation: Workspace and process isolation, code_separation: separate worktree directories, branches and cwds separate concurrent changes; same OS user and process, so not a security boundary.
  • Security boundary: Workspace and process isolation, security_boundary: a worktree separates files and is not a security sandbox; no hostile-containment evidence exists.
  • File separation only: same machine, user and process; no security boundary is claimed.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

Workspace isolation: Container: No cross-checked

Workspace isolation: Container

Typed value: No.

Isolation is git worktrees: separate directories, branches and cwds per workspace on the same machine and OS user, with env-based secret handling. No container, VM, OS-sandbox, process or network boundary exists; pi runs in-process. A worktree is file separation, not a security boundary.

  • Container: Workspace and process isolation, container: bounded v0.3.2 inspection found no such isolation primitive; the product isolates with git worktrees on the local machine.
  • Vm: Workspace and process isolation, vm: bounded v0.3.2 inspection found no such isolation primitive; the product isolates with git worktrees on the local machine.
  • Os sandbox: Workspace and process isolation, os_sandbox: bounded v0.3.2 inspection found no such isolation primitive; the product isolates with git worktrees on the local machine.
  • File separation only: same machine, user and process; no security boundary is claimed.
  1. ThinkRail v0.3.2 — workspaces.ts

    Finding: Flat workspace model with available/detached status and settled/active lifecycle. No epics, labels, priorities, queues, blockers, readiness gates or dependencies in code.

Workspace isolation: VM or microVM: No cross-checked

Workspace isolation: VM or microVM

Typed value: No.

Isolation is git worktrees: separate directories, branches and cwds per workspace on the same machine and OS user, with env-based secret handling. No container, VM, OS-sandbox, process or network boundary exists; pi runs in-process. A worktree is file separation, not a security boundary.

  • Container: Workspace and process isolation, container: bounded v0.3.2 inspection found no such isolation primitive; the product isolates with git worktrees on the local machine.
  • Vm: Workspace and process isolation, vm: bounded v0.3.2 inspection found no such isolation primitive; the product isolates with git worktrees on the local machine.
  • Os sandbox: Workspace and process isolation, os_sandbox: bounded v0.3.2 inspection found no such isolation primitive; the product isolates with git worktrees on the local machine.
  • File separation only: same machine, user and process; no security boundary is claimed.
  1. ThinkRail v0.3.2 — workspaces.ts

    Finding: Flat workspace model with available/detached status and settled/active lifecycle. No epics, labels, priorities, queues, blockers, readiness gates or dependencies in code.

Parallel runs: Yes cross-checked

Parallel runs

Typed value: Yes.

Several sessions run concurrently per workspace and several workspaces run in parallel, each isolated on its own branch and cwd — implemented in the session manager with parallel Agent calls and background commands. The Projects rail and Resources views show running work. No quotas exist.

  • Concurrent sessions: Several concurrent work sessions run per workspace, each with its own model, streaming concurrently.
  • Concurrent tasks: Parallel workspaces each run an agent on its own branch; side workspaces run without waiting for each other.
  • Status visibility: The Projects panel shows workspaces per project with the Settled shelf, and Resources tracks background commands and subagents per chat.
  • No concurrency quotas exist in docs or code.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Coordinator: Yes cross-checked

Coordinator

Typed value: Yes.

ThinkRail-bundled pi-subagents and pi-delegation give every parent session Agent and get_subagent_result tools over isolated child sessions, with per-session model and effort choice, live progress and retained outcomes in Resources. Delegation is pi-only with no cross-harness teams; child messaging detail and auth are undescribed, and follow-up is re-reading, not reopening.

  • Roles: Parent sessions delegate to isolated child sessions in the foreground, in parallel or in the background.
  • Messages: Parents and children exchange work and results through the delegation tools; message-level inspection detail is undescribed.
  • Results return: Children return results via get_subagent_result and finished outcomes persist in resource history.
  • Cross harness: Delegation runs on pi only: pi is the only engine with no second runtime, so cross-harness teams are excluded.
  • Orchestration owner: Orchestration is product-owned: ThinkRail bundles the portable pi-subagents and pi-delegation packages into every parent session from its server registry.
  • Activation: Delegation tools are bundled into every parent session with no activation flag or experimental gate described.
  • Authentication: Inspectable delegation and communication, authentication: in-process sessions with no accounts; bounded v0.3.2 inspection found no delegation auth surface.
  • Live progress: The Resources popup follows background commands and subagents while they run, per chat.
  • Retained results: Finished background work keeps outcomes and command log tails for the workspace lifetime, across host restarts.
  • Followup: Inspectable delegation and communication, followup: finished subagent reports can be re-read via get_subagent_result with outcomes retained in resource history; reopening a completed child as a new run is undescribed.
  • Invocation: Documented invocation is delegating to subagents plus natural-language side-workspace requests; bundled workflow skills add project setup, brainstorming and ship-PR flows.
  • Delegation is pi-only with no cross-harness teams; messaging detail, auth and reopening are undescribed or absent.
  1. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  2. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

Native issue tracking: Yes

Native issue tracking

Typed value: Yes.

ThinkRail manages work as projects, workspaces (active to Settled shelf) and shared TODO plans rather than a labelled tracker: creation, edit, discussion, search, archive/Trash, reopen, dispatch-by-handoff and durable states exist and were confirmed in code, but prioritisation, labels, assignment and filters do not. No external tracker is required for core work.

  • Create: Projects, workspaces, scratch chats and TODO plans are created in-app from prompts.
  • Edit: Chats rename, plans edit, specs edit as Markdown, and review comments collect on lines and diffs.
  • Discuss: Anchored review comments collect without starting the agent and go to chats as structured context; plan discussion happens in the shared TODO plan. Dedicated issue threads were not established.
  • Prioritize: Native issue management and idea backlog, prioritize: bounded v0.3.2 inspection (workspaces, todos, reviews code) found no such work-item model.
  • Label: Native issue management and idea backlog, label: bounded v0.3.2 inspection (workspaces, todos, reviews code) found no such work-item model.
  • Assign: Native issue management and idea backlog, assign: bounded v0.3.2 inspection (workspaces, todos, reviews code) found no such work-item model.
  • Filter: Native issue management and idea backlog, filter: bounded v0.3.2 inspection (workspaces, todos, reviews code) found no such work-item model.
  • Idea parking: Chats without a project park an idea as a scratch-folder draft with no execution, later continued into a real workspace via agent-written handoff.
  • Explicit dispatch: Parked chats dispatch later through Continue in workspace, and side-workspace requests start workspace chats on demand.
  • Task session separation: Workspaces (durable work entities with branch and state) are separate from chats (sessions), with several sessions per workspace.
  • Durable states: Workspaces move through active and Settled states with PR merge/close transitions; TODO steps review independently.
  • External tracker requirement: Core planning, specs, review and merge-prep work without any external tracker; GitHub is needed only for the PR leg.
  • No labelled, prioritised or assigned issue model exists in docs or code; work tracking is workspaces plus TODO plans.
  1. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  2. ThinkRail v0.3.2 — workspaces.ts

    Finding: Flat workspace model with available/detached status and settled/active lifecycle. No epics, labels, priorities, queues, blockers, readiness gates or dependencies in code.

  3. ThinkRail v0.3.2 — todos.ts

    Finding: Completed plan steps are immutable history with per-step commits and revision shas; steps carry review states.

Unattended triggers: No cross-checked

Unattended triggers

Typed value: No.

Unattended triggers do not exist: bounded v0.3.2 inspection of packages/server, apps/* and packages/* for schedul|cron|trigger|recur|setInterval-based scheduling found only UI polling, update checks and request replay. No schedules, event triggers, recurring tasks or completion-driven runs exist.

  • Schedules: Unattended triggers, schedules: bounded v0.3.2 inspection (JetBrains/thinkrail@v0.3.2) found no scheduler or trigger mechanism; the only timer-driven code is polling, update checks and request replay.
  • Events: Unattended triggers, events: bounded v0.3.2 inspection (JetBrains/thinkrail@v0.3.2) found no scheduler or trigger mechanism; the only timer-driven code is polling, update checks and request replay.
  • Recurring tasks: Unattended triggers, recurring_tasks: bounded v0.3.2 inspection (JetBrains/thinkrail@v0.3.2) found no scheduler or trigger mechanism; the only timer-driven code is polling, update checks and request replay.
  • Completion conditions: Unattended triggers, completion_conditions: bounded v0.3.2 inspection (JetBrains/thinkrail@v0.3.2) found no scheduler or trigger mechanism; the only timer-driven code is polling, update checks and request replay.
  • Scheduler location: Unattended triggers, scheduler_location: bounded v0.3.2 inspection (JetBrains/thinkrail@v0.3.2) found no scheduler or trigger mechanism; the only timer-driven code is polling, update checks and request replay.
  • Overlaps: Unattended triggers, overlaps: bounded v0.3.2 inspection (JetBrains/thinkrail@v0.3.2) found no scheduler or trigger mechanism; the only timer-driven code is polling, update checks and request replay.
  • Retries: Unattended triggers, retries: bounded v0.3.2 inspection (JetBrains/thinkrail@v0.3.2) found no scheduler or trigger mechanism; the only timer-driven code is polling, update checks and request replay.
  • Client independence: Unattended triggers, client_independence: bounded v0.3.2 inspection (JetBrains/thinkrail@v0.3.2) found no scheduler or trigger mechanism; the only timer-driven code is polling, update checks and request replay.
  • No scheduler, trigger, recurrence or completion-condition mechanism exists in the pinned release.
  1. ThinkRail v0.3.2 — src

    Finding: Bounded inspection found no user-facing schedules, event triggers, recurring tasks or completion-driven runs.

Shared prompting: No cross-checked

Shared prompting

Typed value: No.

Live human collaboration does not exist: ThinkRail is a single-owner local product whose auth model (Tailscale ACLs plus an owner field, no login UI) has no second user, shared prompting, presence, ordering, attribution or permission constructs. The launch post’s Git-and-GitHub line does not establish co-steering.

  • Visibility: Live human collaboration, visibility: bounded v0.3.2 inspection found no second-user concept; auth is Tailscale ACLs plus a single owner field, so co-steering cannot exist.
  • Discussion: Live human collaboration, discussion: bounded v0.3.2 inspection found no second-user concept; auth is Tailscale ACLs plus a single owner field, so co-steering cannot exist.
  • Comments: Live human collaboration, comments: bounded v0.3.2 inspection found no second-user concept; auth is Tailscale ACLs plus a single owner field, so co-steering cannot exist.
  • Presence: Live human collaboration, presence: bounded v0.3.2 inspection found no second-user concept; auth is Tailscale ACLs plus a single owner field, so co-steering cannot exist.
  • Coprompting: Live human collaboration, coprompting: bounded v0.3.2 inspection found no second-user concept; auth is Tailscale ACLs plus a single owner field, so co-steering cannot exist.
  • Ordering: Live human collaboration, ordering: bounded v0.3.2 inspection found no second-user concept; auth is Tailscale ACLs plus a single owner field, so co-steering cannot exist.
  • Conflicts: Live human collaboration, conflicts: bounded v0.3.2 inspection found no second-user concept; auth is Tailscale ACLs plus a single owner field, so co-steering cannot exist.
  • Attribution: Live human collaboration, attribution: bounded v0.3.2 inspection found no second-user concept; auth is Tailscale ACLs plus a single owner field, so co-steering cannot exist.
  • Permissions: Live human collaboration, permissions: bounded v0.3.2 inspection found no second-user concept; auth is Tailscale ACLs plus a single owner field, so co-steering cannot exist.
  • Plan restrictions: Live human collaboration, plan_restrictions: bounded v0.3.2 inspection found no second-user concept; auth is Tailscale ACLs plus a single owner field, so co-steering cannot exist.
  • Owner online: Live human collaboration, owner_online: bounded v0.3.2 inspection found no second-user concept; auth is Tailscale ACLs plus a single owner field, so co-steering cannot exist.
  • Single-owner product: no multi-user construct exists in docs or code.
  1. ThinkRail v0.3.2 — auth

    Finding: No user, organisation, role, SSO, membership or provisioning model in code. Single-owner external auth.

Team roles: No cross-checked

Team roles

Typed value: No.

Roles and access boundaries do not exist: no organisations, project or task roles, membership, SSO, provisioning, revocation or plan scoping, because there are no accounts. Host reach is a network (Tailscale) matter, and SSO is excluded by the no-login-UI non-goal.

  • Organization roles: Roles and access boundaries, organization_roles: bounded v0.3.2 inspection found no such model; there are no accounts, so no roles, membership or provisioning exist.
  • Project roles: Roles and access boundaries, project_roles: bounded v0.3.2 inspection found no such model; there are no accounts, so no roles, membership or provisioning exist.
  • Task roles: Roles and access boundaries, task_roles: bounded v0.3.2 inspection found no such model; there are no accounts, so no roles, membership or provisioning exist.
  • Membership: Roles and access boundaries, membership: bounded v0.3.2 inspection found no such model; there are no accounts, so no roles, membership or provisioning exist.
  • Provisioning: Roles and access boundaries, provisioning: bounded v0.3.2 inspection found no such model; there are no accounts, so no roles, membership or provisioning exist.
  • Unauthorized access: Roles and access boundaries, unauthorized_access: bounded v0.3.2 inspection found no such model; there are no accounts, so no roles, membership or provisioning exist.
  • Revocation: Roles and access boundaries, revocation: bounded v0.3.2 inspection found no such model; there are no accounts, so no roles, membership or provisioning exist.
  • Plan scope: Roles and access boundaries, plan_scope: bounded v0.3.2 inspection found no such model; there are no accounts, so no roles, membership or provisioning exist.
  • No role, membership, SSO or provisioning construct exists.
  1. ThinkRail v0.3.2 — auth

    Finding: No user, organisation, role, SSO, membership or provisioning model in code. Single-owner external auth.

SSO: No cross-checked

SSO

Typed value: No.

Roles and access boundaries do not exist: no organisations, project or task roles, membership, SSO, provisioning, revocation or plan scoping, because there are no accounts. Host reach is a network (Tailscale) matter, and SSO is excluded by the no-login-UI non-goal.

  • Organization roles: Roles and access boundaries, organization_roles: bounded v0.3.2 inspection found no such model; there are no accounts, so no roles, membership or provisioning exist.
  • Project roles: Roles and access boundaries, project_roles: bounded v0.3.2 inspection found no such model; there are no accounts, so no roles, membership or provisioning exist.
  • Task roles: Roles and access boundaries, task_roles: bounded v0.3.2 inspection found no such model; there are no accounts, so no roles, membership or provisioning exist.
  • Membership: Roles and access boundaries, membership: bounded v0.3.2 inspection found no such model; there are no accounts, so no roles, membership or provisioning exist.
  • Sso: Enterprise SSO is excluded by decision: ThinkRail accounts and any login UI are non-goals.
  • Provisioning: Roles and access boundaries, provisioning: bounded v0.3.2 inspection found no such model; there are no accounts, so no roles, membership or provisioning exist.
  • Unauthorized access: Roles and access boundaries, unauthorized_access: bounded v0.3.2 inspection found no such model; there are no accounts, so no roles, membership or provisioning exist.
  • Revocation: Roles and access boundaries, revocation: bounded v0.3.2 inspection found no such model; there are no accounts, so no roles, membership or provisioning exist.
  • Plan scope: Roles and access boundaries, plan_scope: bounded v0.3.2 inspection found no such model; there are no accounts, so no roles, membership or provisioning exist.
  • No role, membership, SSO or provisioning construct exists.
  1. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  2. ThinkRail v0.3.2 — auth

    Finding: No user, organisation, role, SSO, membership or provisioning model in code. Single-owner external auth.

Pull request workflow: Yes cross-checked

Pull request workflow

Typed value: Yes.

The full GitHub loop is integrated in the topbar: own branches and worktrees, per-step commits, PR open/update through gh with templates or agent drafts, CI response with Fix-with-agent, rebase preview, and merge/reopen/branch-delete actions — all present in the pinned pr/github modules. PR-comment round-trips and GitLab review actions are the limits.

  • Branches: Every workspace owns its branch; the topbar tracks it against origin with ahead/behind state.
  • Worktrees: Work happens in git worktrees with publish, push and sync from the topbar.
  • Commits: Completed plan steps commit on their own when provably theirs; PR descriptions can come from the plan, commits, template or agent draft.
  • Pull requests: Open or update the GitHub PR through gh from the plan or topbar (GitLab: prefilled MR page); drafts supported with Ready-for-review promotion.
  • Comments: Anchored local comments send structured context to chats; responding to forge PR review comments is undescribed.
  • Ci response: Open PRs show checks and review decisions with Fix with agent on failure and diverged-branch integration with the agent.
  • Rebase: Sync previews the git pull --rebase it would run and never force-pushes.
  • Conflicts: Diverged branches integrate with the agent; conflict detection detail is undescribed.
  • Product state: The topbar owns Remote/PR segments, dialogs and merge actions through gh — an integrated workflow, not bare git commands.
  • GitLab is limited to a prefilled MR page; forge PR-comment round-trips are undescribed in code.
  1. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Review interface: Yes cross-checked

Review interface

Typed value: Yes.

Review is a guided loop: the palette and Review-turn button surface pending work, stacked Changes tabs with Keep/Revert/Ask-agent plus Next-unreviewed (J key in code) navigate evidence, anchored comments and Fix-with-agent request changes, and the topbar names the next shipping step. Phone viewports adapt; effort timing, missed-evidence analysis and switching costs are not measured.

  • Pending reviews: Waiting chats surface in the empty palette ordered by urgency; turn receipts carry Review turn buttons and the topbar shows open PR state.
  • Change understanding: Read-only diff tabs, rendered Markdown with source toggle, and turn summaries show what changed without reading the transcript.
  • Evidence navigation: One stacked Changes tab per run, One-file view mode, hunk Keep/Revert/Ask agent, progress bar and Next unreviewed (J); big diffs collapse with a switch hint past 50 files.
  • Comments: The Review panel collects anchored comments on lines of files and diffs and sends them to the agent as structured context.
  • Keyboard: J steps through unreviewed hunks; palette and file search have full keyboard access; complete keyboard-only review is undescribed.
  • Retained context: Keep marks survive line shifts and lapse only when the agent re-edits the hunk; One-file and stacked views share progress.
  • Review effort, missed evidence and switching costs are not measured. Bulk and cross-branch review queues are judged in SHIP-06.
  1. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  2. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

Product license: Apache-2.0: Yes. Apache-2.0 cross-checked

Product license: Apache-2.0

Typed value: Yes. Apache-2.0.

ThinkRail is Apache-2.0 across the public repo: desktop app, CLI host, engine library, contracts, web UI and all bundled extensions ship from one codebase with no proprietary twin or licence exception. The revision is pinned to release v0.3.2 (commit 1bc1a9b).

  • Client license: Desktop and browser clients ship from the Apache-2.0 repository from the same codebase.
  • Server license: The engine host library ships from the same Apache-2.0 repository; no separate server licence exists.
  • Hosted extensions: Source and license, hosted_extensions: all extensions ship from the same Apache-2.0 repository (pi-extensions, thinkrail-extensions, server registry); no differently-licensed or hosted-only extension was found.
  • Source visibility: The full source is public at github.com/JetBrains/thinkrail under the JetBrains organisation.
  • Source revision: This pass covers stable v0.3.2 (2026-11-06) with default-branch commit e473363 observed 2026-11-12.
  • Single-repo finding: no component carries a different licence.
  1. JetBrains/thinkrail

    Finding: Public repository in the JetBrains organisation, default branch main, pushed 2026-11-12. 8,189 stars, 518 forks and 257 open issues observed 2026-11-12. Licensed Apache-2.0; homepage thinkrail.ai.

  2. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

Product license: MIT: No. Apache-2.0 cross-checked

Product license: MIT

Typed value: No. Apache-2.0.

ThinkRail is Apache-2.0 across the public repo: desktop app, CLI host, engine library, contracts, web UI and all bundled extensions ship from one codebase with no proprietary twin or licence exception. The revision is pinned to release v0.3.2 (commit 1bc1a9b).

  • Client license: Desktop and browser clients ship from the Apache-2.0 repository from the same codebase.
  • Server license: The engine host library ships from the same Apache-2.0 repository; no separate server licence exists.
  • Hosted extensions: Source and license, hosted_extensions: all extensions ship from the same Apache-2.0 repository (pi-extensions, thinkrail-extensions, server registry); no differently-licensed or hosted-only extension was found.
  • Source visibility: The full source is public at github.com/JetBrains/thinkrail under the JetBrains organisation.
  • Source revision: This pass covers stable v0.3.2 (2026-11-06) with default-branch commit e473363 observed 2026-11-12.
  • Single-repo finding: no component carries a different licence.
  1. JetBrains/thinkrail

    Finding: Public repository in the JetBrains organisation, default branch main, pushed 2026-11-12. 8,189 stars, 518 forks and 257 open issues observed 2026-11-12. Licensed Apache-2.0; homepage thinkrail.ai.

  2. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

Product license: GPL-3.0: No. Apache-2.0 cross-checked

Product license: GPL-3.0

Typed value: No. Apache-2.0.

ThinkRail is Apache-2.0 across the public repo: desktop app, CLI host, engine library, contracts, web UI and all bundled extensions ship from one codebase with no proprietary twin or licence exception. The revision is pinned to release v0.3.2 (commit 1bc1a9b).

  • Client license: Desktop and browser clients ship from the Apache-2.0 repository from the same codebase.
  • Server license: The engine host library ships from the same Apache-2.0 repository; no separate server licence exists.
  • Hosted extensions: Source and license, hosted_extensions: all extensions ship from the same Apache-2.0 repository (pi-extensions, thinkrail-extensions, server registry); no differently-licensed or hosted-only extension was found.
  • Source visibility: The full source is public at github.com/JetBrains/thinkrail under the JetBrains organisation.
  • Source revision: This pass covers stable v0.3.2 (2026-11-06) with default-branch commit e473363 observed 2026-11-12.
  • Single-repo finding: no component carries a different licence.
  1. JetBrains/thinkrail

    Finding: Public repository in the JetBrains organisation, default branch main, pushed 2026-11-12. 8,189 stars, 518 forks and 257 open issues observed 2026-11-12. Licensed Apache-2.0; homepage thinkrail.ai.

  2. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

Product license: GPL-3.0-or-later: No. Apache-2.0 cross-checked

Product license: GPL-3.0-or-later

Typed value: No. Apache-2.0.

ThinkRail is Apache-2.0 across the public repo: desktop app, CLI host, engine library, contracts, web UI and all bundled extensions ship from one codebase with no proprietary twin or licence exception. The revision is pinned to release v0.3.2 (commit 1bc1a9b).

  • Client license: Desktop and browser clients ship from the Apache-2.0 repository from the same codebase.
  • Server license: The engine host library ships from the same Apache-2.0 repository; no separate server licence exists.
  • Hosted extensions: Source and license, hosted_extensions: all extensions ship from the same Apache-2.0 repository (pi-extensions, thinkrail-extensions, server registry); no differently-licensed or hosted-only extension was found.
  • Source visibility: The full source is public at github.com/JetBrains/thinkrail under the JetBrains organisation.
  • Source revision: This pass covers stable v0.3.2 (2026-11-06) with default-branch commit e473363 observed 2026-11-12.
  • Single-repo finding: no component carries a different licence.
  1. JetBrains/thinkrail

    Finding: Public repository in the JetBrains organisation, default branch main, pushed 2026-11-12. 8,189 stars, 518 forks and 257 open issues observed 2026-11-12. Licensed Apache-2.0; homepage thinkrail.ai.

  2. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

Product license: AGPL-3.0: No. Apache-2.0 cross-checked

Product license: AGPL-3.0

Typed value: No. Apache-2.0.

ThinkRail is Apache-2.0 across the public repo: desktop app, CLI host, engine library, contracts, web UI and all bundled extensions ship from one codebase with no proprietary twin or licence exception. The revision is pinned to release v0.3.2 (commit 1bc1a9b).

  • Client license: Desktop and browser clients ship from the Apache-2.0 repository from the same codebase.
  • Server license: The engine host library ships from the same Apache-2.0 repository; no separate server licence exists.
  • Hosted extensions: Source and license, hosted_extensions: all extensions ship from the same Apache-2.0 repository (pi-extensions, thinkrail-extensions, server registry); no differently-licensed or hosted-only extension was found.
  • Source visibility: The full source is public at github.com/JetBrains/thinkrail under the JetBrains organisation.
  • Source revision: This pass covers stable v0.3.2 (2026-11-06) with default-branch commit e473363 observed 2026-11-12.
  • Single-repo finding: no component carries a different licence.
  1. JetBrains/thinkrail

    Finding: Public repository in the JetBrains organisation, default branch main, pushed 2026-11-12. 8,189 stars, 518 forks and 257 open issues observed 2026-11-12. Licensed Apache-2.0; homepage thinkrail.ai.

  2. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

Product license: AGPL-3.0-or-later: No. Apache-2.0 cross-checked

Product license: AGPL-3.0-or-later

Typed value: No. Apache-2.0.

ThinkRail is Apache-2.0 across the public repo: desktop app, CLI host, engine library, contracts, web UI and all bundled extensions ship from one codebase with no proprietary twin or licence exception. The revision is pinned to release v0.3.2 (commit 1bc1a9b).

  • Client license: Desktop and browser clients ship from the Apache-2.0 repository from the same codebase.
  • Server license: The engine host library ships from the same Apache-2.0 repository; no separate server licence exists.
  • Hosted extensions: Source and license, hosted_extensions: all extensions ship from the same Apache-2.0 repository (pi-extensions, thinkrail-extensions, server registry); no differently-licensed or hosted-only extension was found.
  • Source visibility: The full source is public at github.com/JetBrains/thinkrail under the JetBrains organisation.
  • Source revision: This pass covers stable v0.3.2 (2026-11-06) with default-branch commit e473363 observed 2026-11-12.
  • Single-repo finding: no component carries a different licence.
  1. JetBrains/thinkrail

    Finding: Public repository in the JetBrains organisation, default branch main, pushed 2026-11-12. 8,189 stars, 518 forks and 257 open issues observed 2026-11-12. Licensed Apache-2.0; homepage thinkrail.ai.

  2. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

Product license: Elastic License 2.0: No. Apache-2.0 cross-checked

Product license: Elastic License 2.0

Typed value: No. Apache-2.0.

ThinkRail is Apache-2.0 across the public repo: desktop app, CLI host, engine library, contracts, web UI and all bundled extensions ship from one codebase with no proprietary twin or licence exception. The revision is pinned to release v0.3.2 (commit 1bc1a9b).

  • Client license: Desktop and browser clients ship from the Apache-2.0 repository from the same codebase.
  • Server license: The engine host library ships from the same Apache-2.0 repository; no separate server licence exists.
  • Hosted extensions: Source and license, hosted_extensions: all extensions ship from the same Apache-2.0 repository (pi-extensions, thinkrail-extensions, server registry); no differently-licensed or hosted-only extension was found.
  • Source visibility: The full source is public at github.com/JetBrains/thinkrail under the JetBrains organisation.
  • Source revision: This pass covers stable v0.3.2 (2026-11-06) with default-branch commit e473363 observed 2026-11-12.
  • Single-repo finding: no component carries a different licence.
  1. JetBrains/thinkrail

    Finding: Public repository in the JetBrains organisation, default branch main, pushed 2026-11-12. 8,189 stars, 518 forks and 257 open issues observed 2026-11-12. Licensed Apache-2.0; homepage thinkrail.ai.

  2. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

Product license: Custom terms: No. Apache-2.0 cross-checked

Product license: Custom terms

Typed value: No. Apache-2.0.

ThinkRail is Apache-2.0 across the public repo: desktop app, CLI host, engine library, contracts, web UI and all bundled extensions ship from one codebase with no proprietary twin or licence exception. The revision is pinned to release v0.3.2 (commit 1bc1a9b).

  • Client license: Desktop and browser clients ship from the Apache-2.0 repository from the same codebase.
  • Server license: The engine host library ships from the same Apache-2.0 repository; no separate server licence exists.
  • Hosted extensions: Source and license, hosted_extensions: all extensions ship from the same Apache-2.0 repository (pi-extensions, thinkrail-extensions, server registry); no differently-licensed or hosted-only extension was found.
  • Source visibility: The full source is public at github.com/JetBrains/thinkrail under the JetBrains organisation.
  • Source revision: This pass covers stable v0.3.2 (2026-11-06) with default-branch commit e473363 observed 2026-11-12.
  • Single-repo finding: no component carries a different licence.
  1. JetBrains/thinkrail

    Finding: Public repository in the JetBrains organisation, default branch main, pushed 2026-11-12. 8,189 stars, 518 forks and 257 open issues observed 2026-11-12. Licensed Apache-2.0; homepage thinkrail.ai.

  2. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

Product license: Proprietary: No. Apache-2.0 cross-checked

Product license: Proprietary

Typed value: No. Apache-2.0.

ThinkRail is Apache-2.0 across the public repo: desktop app, CLI host, engine library, contracts, web UI and all bundled extensions ship from one codebase with no proprietary twin or licence exception. The revision is pinned to release v0.3.2 (commit 1bc1a9b).

  • Client license: Desktop and browser clients ship from the Apache-2.0 repository from the same codebase.
  • Server license: The engine host library ships from the same Apache-2.0 repository; no separate server licence exists.
  • Hosted extensions: Source and license, hosted_extensions: all extensions ship from the same Apache-2.0 repository (pi-extensions, thinkrail-extensions, server registry); no differently-licensed or hosted-only extension was found.
  • Source visibility: The full source is public at github.com/JetBrains/thinkrail under the JetBrains organisation.
  • Source revision: This pass covers stable v0.3.2 (2026-11-06) with default-branch commit e473363 observed 2026-11-12.
  • Single-repo finding: no component carries a different licence.
  1. JetBrains/thinkrail

    Finding: Public repository in the JetBrains organisation, default branch main, pushed 2026-11-12. 8,189 stars, 518 forks and 257 open issues observed 2026-11-12. Licensed Apache-2.0; homepage thinkrail.ai.

  2. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

Self-hosting: Yes cross-checked

Self-hosting

Typed value: Yes.

The core ADE runs entirely on user-controlled machines with no vendor services to keep: optional companions are the user’s git, gh, central CLI and Tailscale. Uninstall removes the binary and optionally ~/.thinkrail state. Task, context and history export formats do not exist.

  • Self hosting: Desktop and CLI hosts run on the user’s own machines; no vendor-hosted control plane or compute exists.
  • Vendor dependencies: Only optional user-owned services: git, gh for PRs, central CLI for JetBrains AI, Tailscale for phone reach, and PostHog for analytics.
  • Import: Git URLs clone into projects, existing worktrees attach in place, and skills/packages import from user, repo and third-party agent folders.
  • Cancellation: There is no account to cancel: thinkrail uninstall removes the binary and PATH entry and optionally deletes ~/.thinkrail with confirmation.
  • Account independence: Everything except provider-authenticated model calls works with no vendor account; analytics extras switch off.
  • Export formats and history portability do not exist.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

Telemetry opt-out: No cross-checked

Telemetry opt-out

Typed value: No.

Code, prompts and credentials stay with the user: in-process pi sends them to the user’s own providers, never to ThinkRail servers. Telemetry is basic install-ID events plus always-on error reports via PostHog; extra sharing is opt-in at first run and in Settings Privacy (or --no-analytics). Retention beyond a 30-day link expiry, training use and residency are unstated business facts.

  • Code data: Code is processed in-process and by the user’s providers; usage analytics explicitly never include code, prompts or files.
  • Prompts: Prompts go to the user’s providers; analytics never include prompts and feedback answers send only on explicit Send.
  • Credentials: Provider credentials stay in pi auth and the OS; analytics never include credentials and the model key never reaches the browser.
  • Logs: Error reports carry the error type, code and ThinkRail code location only — never messages, paths, names, URLs or project content.
  • Artifacts: Data handling and telemetry, artifacts: artifacts live in local workspaces; analytics and error reports exclude code, prompts, files, paths and project content, but no artifact-specific routing policy is stated.
  • Retention: The website-visit link for installed builds expires after 30 days; general retention and deletion timelines are unstated.
  • Deletion: Chats delete to Trash, uninstall optionally removes ~/.thinkrail data, and survey answers delete on emailed request; a general deletion policy is unstated.
  • Subprocessors: Analytics run on PostHog services for apps and website (surveys collect email only when volunteered); PostHog policy linked.
  • Telemetry disclosure: Launches, chat creation, message sends, provider connections and error reports are disclosed as collected, tied to a random install ID.
  • Telemetry defaults: Additional sharing defaults to the first-run choice (off unless enabled); error reports are always sent.
  • Telemetry controls: Settings Privacy toggles additional sharing and thinkrail --no-analytics (or THINKRAIL_NO_ANALYTICS=1) disables it per launch.
  • Consent prompt: The privacy switch is offered during first-run setup (or right after skipping it).
  • Provider separation: Orchestration-vendor data (basic ThinkRail events) is separate from model-provider data (user code and prompts to their providers).
  • Retention timelines, training use and residency are unstated.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

Free access: Yes cross-checked

Free access

Typed value: Yes.

Free outright: Apache-2.0 source with free desktop and CLI downloads and no paid plan, card, trial, credit programme, gated early access or usage caps. Meaningful evaluation needs only provider credentials (JetBrains AI or own keys/local models); two-person same-work collaboration is limited by the single-user design.

  • Ongoing free: Apache-2.0 repository with free downloads and no paid plan: free with no time limit.
  • Trial: Useful free tier and evaluation access, trial: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Credits trial: Useful free tier and evaluation access, credits_trial: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Self host cost: Self-hosting cost is the user’s own machine plus provider spend; no ThinkRail charge.
  • Paid only: No paid-only gate exists: the whole ADE is free with no paid tier.
  • Early access: Useful free tier and evaluation access, early_access: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Free scenarios: Local workspaces, BYO keys and local models, phone-browser reach, local issue-style plans and review all work free; same-work two-person collaboration is limited by the single-user design.
  • Card required: No payment exists anywhere in the product, so no card is required.
  • Usage caps: Useful free tier and evaluation access, usage_caps: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Paid evaluation: Evaluation needs provider credentials but no payment to ThinkRail and no sales approval.
  • Evaluation needs provider credentials; same-work two-person scenarios are limited by the single-user design.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

Starting price: Free: Yes. Free cross-checked

Starting price: Free

Typed value: Yes. Free.

Free outright: Apache-2.0 source with free desktop and CLI downloads and no paid plan, card, trial, credit programme, gated early access or usage caps. Meaningful evaluation needs only provider credentials (JetBrains AI or own keys/local models); two-person same-work collaboration is limited by the single-user design.

  • Ongoing free: Apache-2.0 repository with free downloads and no paid plan: free with no time limit.
  • Trial: Useful free tier and evaluation access, trial: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Credits trial: Useful free tier and evaluation access, credits_trial: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Self host cost: Self-hosting cost is the user’s own machine plus provider spend; no ThinkRail charge.
  • Paid only: No paid-only gate exists: the whole ADE is free with no paid tier.
  • Early access: Useful free tier and evaluation access, early_access: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Free scenarios: Local workspaces, BYO keys and local models, phone-browser reach, local issue-style plans and review all work free; same-work two-person collaboration is limited by the single-user design.
  • Card required: No payment exists anywhere in the product, so no card is required.
  • Usage caps: Useful free tier and evaluation access, usage_caps: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Paid evaluation: Evaluation needs provider credentials but no payment to ThinkRail and no sales approval.
  • Evaluation needs provider credentials; same-work two-person scenarios are limited by the single-user design.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

Starting price: Up to $20/month: No. Free cross-checked

Starting price: Up to $20/month

Typed value: No. Free.

Free outright: Apache-2.0 source with free desktop and CLI downloads and no paid plan, card, trial, credit programme, gated early access or usage caps. Meaningful evaluation needs only provider credentials (JetBrains AI or own keys/local models); two-person same-work collaboration is limited by the single-user design.

  • Ongoing free: Apache-2.0 repository with free downloads and no paid plan: free with no time limit.
  • Trial: Useful free tier and evaluation access, trial: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Credits trial: Useful free tier and evaluation access, credits_trial: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Self host cost: Self-hosting cost is the user’s own machine plus provider spend; no ThinkRail charge.
  • Paid only: No paid-only gate exists: the whole ADE is free with no paid tier.
  • Early access: Useful free tier and evaluation access, early_access: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Free scenarios: Local workspaces, BYO keys and local models, phone-browser reach, local issue-style plans and review all work free; same-work two-person collaboration is limited by the single-user design.
  • Card required: No payment exists anywhere in the product, so no card is required.
  • Usage caps: Useful free tier and evaluation access, usage_caps: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Paid evaluation: Evaluation needs provider credentials but no payment to ThinkRail and no sales approval.
  • Evaluation needs provider credentials; same-work two-person scenarios are limited by the single-user design.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

Starting price: $21–40/month: No. Free cross-checked

Starting price: $21–40/month

Typed value: No. Free.

Free outright: Apache-2.0 source with free desktop and CLI downloads and no paid plan, card, trial, credit programme, gated early access or usage caps. Meaningful evaluation needs only provider credentials (JetBrains AI or own keys/local models); two-person same-work collaboration is limited by the single-user design.

  • Ongoing free: Apache-2.0 repository with free downloads and no paid plan: free with no time limit.
  • Trial: Useful free tier and evaluation access, trial: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Credits trial: Useful free tier and evaluation access, credits_trial: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Self host cost: Self-hosting cost is the user’s own machine plus provider spend; no ThinkRail charge.
  • Paid only: No paid-only gate exists: the whole ADE is free with no paid tier.
  • Early access: Useful free tier and evaluation access, early_access: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Free scenarios: Local workspaces, BYO keys and local models, phone-browser reach, local issue-style plans and review all work free; same-work two-person collaboration is limited by the single-user design.
  • Card required: No payment exists anywhere in the product, so no card is required.
  • Usage caps: Useful free tier and evaluation access, usage_caps: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Paid evaluation: Evaluation needs provider credentials but no payment to ThinkRail and no sales approval.
  • Evaluation needs provider credentials; same-work two-person scenarios are limited by the single-user design.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

Starting price: $41–100/month: No. Free cross-checked

Starting price: $41–100/month

Typed value: No. Free.

Free outright: Apache-2.0 source with free desktop and CLI downloads and no paid plan, card, trial, credit programme, gated early access or usage caps. Meaningful evaluation needs only provider credentials (JetBrains AI or own keys/local models); two-person same-work collaboration is limited by the single-user design.

  • Ongoing free: Apache-2.0 repository with free downloads and no paid plan: free with no time limit.
  • Trial: Useful free tier and evaluation access, trial: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Credits trial: Useful free tier and evaluation access, credits_trial: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Self host cost: Self-hosting cost is the user’s own machine plus provider spend; no ThinkRail charge.
  • Paid only: No paid-only gate exists: the whole ADE is free with no paid tier.
  • Early access: Useful free tier and evaluation access, early_access: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Free scenarios: Local workspaces, BYO keys and local models, phone-browser reach, local issue-style plans and review all work free; same-work two-person collaboration is limited by the single-user design.
  • Card required: No payment exists anywhere in the product, so no card is required.
  • Usage caps: Useful free tier and evaluation access, usage_caps: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Paid evaluation: Evaluation needs provider credentials but no payment to ThinkRail and no sales approval.
  • Evaluation needs provider credentials; same-work two-person scenarios are limited by the single-user design.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

Starting price: Over $100/month: No. Free cross-checked

Starting price: Over $100/month

Typed value: No. Free.

Free outright: Apache-2.0 source with free desktop and CLI downloads and no paid plan, card, trial, credit programme, gated early access or usage caps. Meaningful evaluation needs only provider credentials (JetBrains AI or own keys/local models); two-person same-work collaboration is limited by the single-user design.

  • Ongoing free: Apache-2.0 repository with free downloads and no paid plan: free with no time limit.
  • Trial: Useful free tier and evaluation access, trial: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Credits trial: Useful free tier and evaluation access, credits_trial: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Self host cost: Self-hosting cost is the user’s own machine plus provider spend; no ThinkRail charge.
  • Paid only: No paid-only gate exists: the whole ADE is free with no paid tier.
  • Early access: Useful free tier and evaluation access, early_access: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Free scenarios: Local workspaces, BYO keys and local models, phone-browser reach, local issue-style plans and review all work free; same-work two-person collaboration is limited by the single-user design.
  • Card required: No payment exists anywhere in the product, so no card is required.
  • Usage caps: Useful free tier and evaluation access, usage_caps: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Paid evaluation: Evaluation needs provider credentials but no payment to ThinkRail and no sales approval.
  • Evaluation needs provider credentials; same-work two-person scenarios are limited by the single-user design.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

Starting price: Contact for pricing: No. Free cross-checked

Starting price: Contact for pricing

Typed value: No. Free.

Free outright: Apache-2.0 source with free desktop and CLI downloads and no paid plan, card, trial, credit programme, gated early access or usage caps. Meaningful evaluation needs only provider credentials (JetBrains AI or own keys/local models); two-person same-work collaboration is limited by the single-user design.

  • Ongoing free: Apache-2.0 repository with free downloads and no paid plan: free with no time limit.
  • Trial: Useful free tier and evaluation access, trial: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Credits trial: Useful free tier and evaluation access, credits_trial: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Self host cost: Self-hosting cost is the user’s own machine plus provider spend; no ThinkRail charge.
  • Paid only: No paid-only gate exists: the whole ADE is free with no paid tier.
  • Early access: Useful free tier and evaluation access, early_access: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Free scenarios: Local workspaces, BYO keys and local models, phone-browser reach, local issue-style plans and review all work free; same-work two-person collaboration is limited by the single-user design.
  • Card required: No payment exists anywhere in the product, so no card is required.
  • Usage caps: Useful free tier and evaluation access, usage_caps: bounded v0.3.2 inspection (docs, releases, code) found no such programme or cap; nightly builds are public and no ThinkRail-side caps exist.
  • Paid evaluation: Evaluation needs provider credentials but no payment to ThinkRail and no sales approval.
  • Evaluation needs provider credentials; same-work two-person scenarios are limited by the single-user design.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

Pricing model: Free, no paid plan: Yes cross-checked

Pricing model: Free, no paid plan

Typed value: Yes.

ThinkRail itself is free: Apache-2.0 source, free downloads, no accounts, no paid plan and no metered units. Model and compute spend belongs to the user’s own providers and hardware and is never billed or marked up by ThinkRail. Billing dimensions do not apply to a product with no paid offering.

  • Model cost: Model spend is the user’s own provider billing (including JetBrains AI quota via central); ThinkRail charges nothing and marks nothing up.
  • No paid plans exist, so billing atoms are moot business facts; model and compute spend is the user’s own provider and hardware cost.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail releases

    Finding: Stable v0.3.2 published 2026-11-06; v0.4.0 stable published 2026-11-12 (latest at check time). Free desktop and CLI assets per platform with SHA256SUMS.

Pricing model: Free plan: No

Pricing model: Free plan

Typed value: No.

ThinkRail itself is free: Apache-2.0 source, free downloads, no accounts, no paid plan and no metered units. Model and compute spend belongs to the user’s own providers and hardware and is never billed or marked up by ThinkRail. Billing dimensions do not apply to a product with no paid offering.

  • Model cost: Model spend is the user’s own provider billing (including JetBrains AI quota via central); ThinkRail charges nothing and marks nothing up.
  • Compute cost: Compute is the user’s own machine with no vendor compute fees; user hardware cost is unstated.
  • No paid plans exist, so billing atoms are moot business facts; model and compute spend is the user’s own provider and hardware cost.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Pricing model: Subscription: No

Pricing model: Subscription

Typed value: No.

ThinkRail itself is free: Apache-2.0 source, free downloads, no accounts, no paid plan and no metered units. Model and compute spend belongs to the user’s own providers and hardware and is never billed or marked up by ThinkRail. Billing dimensions do not apply to a product with no paid offering.

  • Model cost: Model spend is the user’s own provider billing (including JetBrains AI quota via central); ThinkRail charges nothing and marks nothing up.
  • Compute cost: Compute is the user’s own machine with no vendor compute fees; user hardware cost is unstated.
  • No paid plans exist, so billing atoms are moot business facts; model and compute spend is the user’s own provider and hardware cost.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Pricing model: Per seat: No

Pricing model: Per seat

Typed value: No.

ThinkRail itself is free: Apache-2.0 source, free downloads, no accounts, no paid plan and no metered units. Model and compute spend belongs to the user’s own providers and hardware and is never billed or marked up by ThinkRail. Billing dimensions do not apply to a product with no paid offering.

  • Model cost: Model spend is the user’s own provider billing (including JetBrains AI quota via central); ThinkRail charges nothing and marks nothing up.
  • Compute cost: Compute is the user’s own machine with no vendor compute fees; user hardware cost is unstated.
  • No paid plans exist, so billing atoms are moot business facts; model and compute spend is the user’s own provider and hardware cost.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Pricing model: Usage-based: No

Pricing model: Usage-based

Typed value: No.

ThinkRail itself is free: Apache-2.0 source, free downloads, no accounts, no paid plan and no metered units. Model and compute spend belongs to the user’s own providers and hardware and is never billed or marked up by ThinkRail. Billing dimensions do not apply to a product with no paid offering.

  • Model cost: Model spend is the user’s own provider billing (including JetBrains AI quota via central); ThinkRail charges nothing and marks nothing up.
  • Compute cost: Compute is the user’s own machine with no vendor compute fees; user hardware cost is unstated.
  • No paid plans exist, so billing atoms are moot business facts; model and compute spend is the user’s own provider and hardware cost.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Pricing model: Per machine or compute: No

Pricing model: Per machine or compute

Typed value: No.

ThinkRail itself is free: Apache-2.0 source, free downloads, no accounts, no paid plan and no metered units. Model and compute spend belongs to the user’s own providers and hardware and is never billed or marked up by ThinkRail. Billing dimensions do not apply to a product with no paid offering.

  • Model cost: Model spend is the user’s own provider billing (including JetBrains AI quota via central); ThinkRail charges nothing and marks nothing up.
  • Compute cost: Compute is the user’s own machine with no vendor compute fees; user hardware cost is unstated.
  • No paid plans exist, so billing atoms are moot business facts; model and compute spend is the user’s own provider and hardware cost.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Pricing model: Bring your own key: Yes

Pricing model: Bring your own key

Typed value: Yes.

ThinkRail uses provider API keys and Pi's native OAuth login, including Anthropic subscription credentials recognized by the embedded runtime. External CLI accounts are setup signals rather than borrowed credentials; there is no ThinkRail credit system.

  • Api accounts: Provider API keys and in-app sign-in flow through pi’s own auth, including custom OpenAI-compatible servers; secrets are referenced as ${VAR} or !command, never pasted into URLs.
  • Vendor credits: ThinkRail has no accounts of its own and no credit system; the recurring AI-credit quota that exists belongs to JetBrains AI via the user-owned central CLI, not to ThinkRail.
  • Local models: On-machine models connect as custom servers with Ollama, LM Studio, vLLM and llama.cpp presets; the key never reaches the browser.
  • Account switching: Settings chooses the pi config folder (for example a personal versus work setup) plus extra environment variables, applied per host on next start; the model picker switches provider and model per chat.
  • Vendor account requirement: No ThinkRail account exists or is required; what still requires credentials is the chosen model provider (including JetBrains AI sign-in through central).
  • This source pass establishes only the named atomic answers. Other parts retain their documented source gaps; no hands-on test was performed.
  1. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

  2. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  3. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Pricing model: One-time purchase: No

Pricing model: One-time purchase

Typed value: No.

ThinkRail itself is free: Apache-2.0 source, free downloads, no accounts, no paid plan and no metered units. Model and compute spend belongs to the user’s own providers and hardware and is never billed or marked up by ThinkRail. Billing dimensions do not apply to a product with no paid offering.

  • Model cost: Model spend is the user’s own provider billing (including JetBrains AI quota via central); ThinkRail charges nothing and marks nothing up.
  • Compute cost: Compute is the user’s own machine with no vendor compute fees; user hardware cost is unstated.
  • No paid plans exist, so billing atoms are moot business facts; model and compute spend is the user’s own provider and hardware cost.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

Open-source license: Yes. Apache-2.0 cross-checked

Open-source license

Typed value: Yes. Apache-2.0.

ThinkRail is Apache-2.0 across the public repo: desktop app, CLI host, engine library, contracts, web UI and all bundled extensions ship from one codebase with no proprietary twin or licence exception. The revision is pinned to release v0.3.2 (commit 1bc1a9b).

  • Client license: Desktop and browser clients ship from the Apache-2.0 repository from the same codebase.
  • Server license: The engine host library ships from the same Apache-2.0 repository; no separate server licence exists.
  • Hosted extensions: Source and license, hosted_extensions: all extensions ship from the same Apache-2.0 repository (pi-extensions, thinkrail-extensions, server registry); no differently-licensed or hosted-only extension was found.
  • Source visibility: The full source is public at github.com/JetBrains/thinkrail under the JetBrains organisation.
  • Source revision: This pass covers stable v0.3.2 (2026-11-06) with default-branch commit e473363 observed 2026-11-12.
  • Single-repo finding: no component carries a different licence.
  1. JetBrains/thinkrail

    Finding: Public repository in the JetBrains organisation, default branch main, pushed 2026-11-12. 8,189 stars, 518 forks and 257 open issues observed 2026-11-12. Licensed Apache-2.0; homepage thinkrail.ai.

  2. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

Any desktop app: Yes cross-checked

Any desktop app

Typed value: Yes.

Desktop apps ship for macOS 14+ (Apple Silicon and Intel), Windows x64 and Linux x64/ARM64; the complete install matrix omits native phone apps and editor extensions. The thinkrail CLI opens the same app in any browser, the web UI adapts to phone viewports over Tailscale, and notifications arrive via desktop alerts plus in-app waiting markers. Same-task state rebuilds on another surface, but running execution does not hand off.

  • Desktop os: Desktop installers cover macOS 14+ Apple Silicon/Intel (DMG), Windows x64 (setup zip) and Linux x64/ARM64 (setup tarball plus installer).
  • Mobile apps: Client access, mobile_apps: the install matrix (README Installation plus landing install section) is the complete first-party list of shipped clients — macOS, Windows and Linux desktop plus the CLI browser host — and omits any native iOS or Android app. No mobile packaging exists in apps/ (cli, desktop, web, website only).
  • Browser: The thinkrail CLI opens the same app in a browser; desktop and browser hosts embed the same engine host.
  • Cli: The product-owned thinkrail launcher CLI installs, updates (stable/nightly channels), opens projects and prints help/version; model and agent work stay pi’s.
  • Notifications: Desktop notifications plus in-app waiting markers: attention engine with per-session unread holds (apps/web/src/notifications) and the palette urgency list; Linux desktop builds require libnotify.
  • The complete install list omits native phone apps and editor extensions. Cross-device state rebuilds; running execution stays on the originating host.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

Any phone client: Yes cross-checked

Any phone client

Typed value: Yes.

Desktop apps ship for macOS 14+ (Apple Silicon and Intel), Windows x64 and Linux x64/ARM64; the complete install matrix omits native phone apps and editor extensions. The thinkrail CLI opens the same app in any browser, the web UI adapts to phone viewports over Tailscale, and notifications arrive via desktop alerts plus in-app waiting markers. Same-task state rebuilds on another surface, but running execution does not hand off.

  • Mobile browser: The mobile-first React UI adapts below 767px (viewport phone queries) and a phone reaches the selected host over Tailscale; no native app exists.
  • Cross device continuity: Client access, cross_device_continuity: hydrate-then-stream rebuilds the same projects, workspaces, sessions and transcripts on a second tab, phone or restart (contracts session.list/session.getMessages), but execution stays on the originating host with no handoff of running work.
  • The complete install list omits native phone apps and editor extensions. Cross-device state rebuilds; running execution stays on the originating host.
  1. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

All public findings

Findings may summarize a source. They are not presented as verbatim statements.

thinkrail:ACC-01: Desktop apps ship for macOS 14+ (Apple Silicon and Intel), Windows x64 and Linux x64/ARM64; the complete install matrix omits native phone apps and editor extensions. The thinkrail CLI opens the same app in any browser, the web UI adapts to phone viewports over Tailscale, and notifications arrive via desktop alerts plus in-app waiting markers. Same-task state rebuilds on another surface, but running execution does not hand off. cross-checked

thinkrail:ACC-01

Desktop apps ship for macOS 14+ (Apple Silicon and Intel), Windows x64 and Linux x64/ARM64; the complete install matrix omits native phone apps and editor extensions. The thinkrail CLI opens the same app in any browser, the web UI adapts to phone viewports over Tailscale, and notifications arrive via desktop alerts plus in-app waiting markers. Same-task state rebuilds on another surface, but running execution does not hand off.

  • The complete install list omits native phone apps and editor extensions. Cross-device state rebuilds; running execution stays on the originating host.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. Introducing ThinkRail

    Finding: ThinkRail is an agentic IDE for the Pi coding agent that complements its CLI. Desktop installers for macOS, Windows x64 and Linux x64/ARM64, or a CLI host that opens a browser tab. Every working session operates on a separate git branch merged only after review; LLM providers are configured in Settings.

  3. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  4. ThinkRail 0.3.1 release

    Finding: Command palette finds chats, workspaces, commands and settings. Custom OpenAI chat-completions servers (Ollama, LM Studio, vLLM, llama.cpp presets) are saved into pi models.json. pi packages install from Settings for the user or a repository. Post notes ThinkRail is backed by JetBrains and links X (@ThinkRailAI), YouTube, TikTok, Discord and the GitHub repository.

  5. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  6. An agentic IDE that follows Pi's philosophy

    Finding: ThinkRail embeds its own pi coding agent as a library running inside ThinkRail’s own process and shares pi’s ~/.pi folder, so CLI and app sessions keep history both ways. Skills and extensions from pi, Claude, Codex, Copilot and Gemini project folders are reused with per-chat switches. Desktop apps packaged with Electrobun run identically to the CLI browser host.

  7. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  8. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  9. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  10. JetBrains/thinkrail

    Finding: Public repository in the JetBrains organisation, default branch main, pushed 2026-11-12. 8,189 stars, 518 forks and 257 open issues observed 2026-11-12. Licensed Apache-2.0; homepage thinkrail.ai.

  11. ThinkRail v0.3.2 — wsProtocol.ts

    Finding: Hydrate-then-stream: clients rebuild projects, workspaces, sessions and transcripts on reload, second tab, phone or host restart; reconnect repairs missed deltas.

  12. ThinkRail v0.3.2 — attentionNotificationEngine.ts

    Finding: Attention engine with per-session unread holds plus desktop notifications.

  13. ThinkRail v0.3.2 — editors.ts

    Finding: Fixed external-editor launcher list (VS Code, Emacs, JetBrains IDEs, Vim). No ThinkRail editor extension ships.

  14. ThinkRail v0.3.2 — viewport.ts

    Finding: Phone-viewport detection adapts the UI below 767px width.

thinkrail:ACC-02: The only harness is pi, run in-process with no second runtime. Model choice comes from pi provider auth plus JetBrains AI through the user-owned central CLI and user-added OpenAI-compatible servers (1,639 provider/model pairs in the pi 1.5.1 catalogue). Other coding-agent CLIs are only detected as provider-setup signals, never run as harnesses; mixed-harness operation is excluded by the single-engine design. cross-checked

thinkrail:ACC-02

The only harness is pi, run in-process with no second runtime. Model choice comes from pi provider auth plus JetBrains AI through the user-owned central CLI and user-added OpenAI-compatible servers (1,639 provider/model pairs in the pi 1.5.1 catalogue). Other coding-agent CLIs are only detected as provider-setup signals, never run as harnesses; mixed-harness operation is excluded by the single-engine design.

  • Single-engine product: no second harness exists and mixed-harness operation is excluded.
  1. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  2. ThinkRail 0.3.1 release

    Finding: Command palette finds chats, workspaces, commands and settings. Custom OpenAI chat-completions servers (Ollama, LM Studio, vLLM, llama.cpp presets) are saved into pi models.json. pi packages install from Settings for the user or a repository. Post notes ThinkRail is backed by JetBrains and links X (@ThinkRailAI), YouTube, TikTok, Discord and the GitHub repository.

  3. An agentic IDE that follows Pi's philosophy

    Finding: ThinkRail embeds its own pi coding agent as a library running inside ThinkRail’s own process and shares pi’s ~/.pi folder, so CLI and app sessions keep history both ways. Skills and extensions from pi, Claude, Codex, Copilot and Gemini project folders are reused with per-chat switches. Desktop apps packaged with Electrobun run identically to the CLI browser host.

  4. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  5. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  6. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  7. JetBrains AI via the Central CLI

    Finding: JetBrains AI models reach ThinkRail through the user-owned central CLI with a recurring AI-credit quota; sign-in, status and quota orchestration span the provider card and shell, with quota snapshots on a 1–3600 second cadence (30 seconds by default).

  8. Pi compatibility

    Finding: Host tracks pi releases with per-upgrade re-checks (pi 1.5.2 verified against the installed dist). Bundled chat catalogue holds 1,639 provider/model pairs in pi 1.5.1 (66 added, 19 removed); unavailable models follow the existing selection rules.

  9. ThinkRail v0.3.2 — detectAccounts.ts

    Finding: Third-party CLIs are read as provider-setup signals only; sign-in stays pi’s own flow.

thinkrail:ACC-03: ThinkRail uses provider API keys and Pi's native OAuth login, including Anthropic subscription credentials recognized by the embedded runtime. External CLI accounts are setup signals rather than borrowed credentials; there is no ThinkRail credit system.

thinkrail:ACC-03

ThinkRail uses provider API keys and Pi's native OAuth login, including Anthropic subscription credentials recognized by the embedded runtime. External CLI accounts are setup signals rather than borrowed credentials; there is no ThinkRail credit system.

  • This source pass establishes only the named atomic answers. Other parts retain their documented source gaps; no hands-on test was performed.
  1. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  2. ThinkRail 0.3.1 release

    Finding: Command palette finds chats, workspaces, commands and settings. Custom OpenAI chat-completions servers (Ollama, LM Studio, vLLM, llama.cpp presets) are saved into pi models.json. pi packages install from Settings for the user or a repository. Post notes ThinkRail is backed by JetBrains and links X (@ThinkRailAI), YouTube, TikTok, Discord and the GitHub repository.

  3. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  4. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

  5. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  6. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  7. JetBrains AI via the Central CLI

    Finding: JetBrains AI models reach ThinkRail through the user-owned central CLI with a recurring AI-credit quota; sign-in, status and quota orchestration span the provider card and shell, with quota snapshots on a 1–3600 second cadence (30 seconds by default).

  8. Pi compatibility

    Finding: Host tracks pi releases with per-upgrade re-checks (pi 1.5.2 verified against the installed dist). Bundled chat catalogue holds 1,639 provider/model pairs in pi 1.5.1 (66 added, 19 removed); unavailable models follow the existing selection rules.

  9. ThinkRail v0.3.2 — detectAccounts.ts

    Finding: Third-party CLIs are read as provider-setup signals only; sign-in stays pi’s own flow.

  10. ThinkRail native Pi subscription authentication

    Finding: ThinkRail starts Pi's own OAuth login flow, and its runtime explicitly recognizes active Anthropic subscription OAuth credentials for extra-usage warnings. Detected Claude/Codex CLI account plans are setup signals, not borrowed credentials. This establishes subscription use through the embedded Pi provider login rather than a separate CLI runtime.

thinkrail:ACC-04: A first-run wizard (intro, privacy question, Connect a model) drops the user on Start/Open project; Start a new project creates an empty git repo, and Clone repository accepts a Git URL. Any local git repo opens as a project, chats without a project work in scratch folders, and GitHub works through the user’s git credentials and gh CLI. No vendor-cloud or user-server hosting path exists. cross-checked

thinkrail:ACC-04

A first-run wizard (intro, privacy question, Connect a model) drops the user on Start/Open project; Start a new project creates an empty git repo, and Clone repository accepts a Git URL. Any local git repo opens as a project, chats without a project work in scratch folders, and GitHub works through the user’s git credentials and gh CLI. No vendor-cloud or user-server hosting path exists.

  • Local-only product: no vendor-cloud or BYO-server onboarding exists; remote-host dialling is described as future work.
  1. Introducing ThinkRail

    Finding: ThinkRail is an agentic IDE for the Pi coding agent that complements its CLI. Desktop installers for macOS, Windows x64 and Linux x64/ARM64, or a CLI host that opens a browser tab. Every working session operates on a separate git branch merged only after review; LLM providers are configured in Settings.

  2. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  3. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  4. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  5. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

thinkrail:ACC-05: The product-owned thinkrail CLI is a launcher with an exhaustive inventory: open, update and uninstall plus connection flags; it exposes no agent operations. The engine-to-UI wire is internal (/ws plus /health and static routes), with no public API, SDK, MCP server or webhooks in the pinned release. cross-checked

thinkrail:ACC-05

The product-owned thinkrail CLI is a launcher with an exhaustive inventory: open, update and uninstall plus connection flags; it exposes no agent operations. The engine-to-UI wire is internal (/ws plus /health and static routes), with no public API, SDK, MCP server or webhooks in the pinned release.

  • All agent operations are UI-driven. The CLI inventory is complete and omits them; no programmable surface exists.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  3. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  4. ThinkRail v0.3.2 — args.ts

    Finding: Complete CLI inventory: launch flags plus update and uninstall subcommands only. No session, task, steering or review operations exist in the launcher.

  5. ThinkRail v0.3.2 — server.ts

    Finding: The host exposes only the internal /ws wire, /health and static/file routes. No public REST API, SDK surface, MCP server transport or webhooks exist in code.

  6. ThinkRail v0.3.2 — sessionHost.ts

    Finding: MCP confirmation is product code: data-changing calls confirm with Deny, Allow once, Allow in this chat or Always allow, and fail closed with no UI attached.

thinkrail:ACC-06: MCP servers come from pi mcp.json and Settings with presets, per-chat visibility and in-chat confirm for data-changing calls. pi packages (extensions, skills, prompts) install from npm, git or local folders for the user or a repo with per-item switches. Skills import from Claude, Codex and other agents’ folders; repo-defined resources stay off until a per-project trust grant, and repo MCP entries need per-entry approval. cross-checked

thinkrail:ACC-06

MCP servers come from pi mcp.json and Settings with presets, per-chat visibility and in-chat confirm for data-changing calls. pi packages (extensions, skills, prompts) install from npm, git or local folders for the user or a repo with per-item switches. Skills import from Claude, Codex and other agents’ folders; repo-defined resources stay off until a per-project trust grant, and repo MCP entries need per-entry approval.

  1. ThinkRail 0.3.1 release

    Finding: Command palette finds chats, workspaces, commands and settings. Custom OpenAI chat-completions servers (Ollama, LM Studio, vLLM, llama.cpp presets) are saved into pi models.json. pi packages install from Settings for the user or a repository. Post notes ThinkRail is backed by JetBrains and links X (@ThinkRailAI), YouTube, TikTok, Discord and the GitHub repository.

  2. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  3. An agentic IDE that follows Pi's philosophy

    Finding: ThinkRail embeds its own pi coding agent as a library running inside ThinkRail’s own process and shares pi’s ~/.pi folder, so CLI and app sessions keep history both ways. Skills and extensions from pi, Claude, Codex, Copilot and Gemini project folders are reused with per-chat switches. Desktop apps packaged with Electrobun run identically to the CLI browser host.

  4. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

  5. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  6. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  7. ThinkRail v0.3.2 — sessionHost.ts

    Finding: MCP confirmation is product code: data-changing calls confirm with Deny, Allow once, Allow in this chat or Always allow, and fail closed with no UI attached.

  8. ThinkRail v0.3.2 — skillAdmission.ts

    Finding: Project resources load only after per-project trust grants (trusted, piResourceTrust); untrusted is the default.

thinkrail:ACC-07: The desktop app is an Electrobun package: a native system-webview shell around the same engine host the CLI uses. No native mobile client exists (apps/ holds cli, desktop, web and website only; the install matrix omits mobile) and no hybrid construction exists beyond the system-webview shell. cross-checked

thinkrail:ACC-07

The desktop app is an Electrobun package: a native system-webview shell around the same engine host the CLI uses. No native mobile client exists (apps/ holds cli, desktop, web and website only; the install matrix omits mobile) and no hybrid construction exists beyond the system-webview shell.

  • No native mobile client or hybrid construction exists to classify.
  1. An agentic IDE that follows Pi's philosophy

    Finding: ThinkRail embeds its own pi coding agent as a library running inside ThinkRail’s own process and shares pi’s ~/.pi folder, so CLI and app sessions keep history both ways. Skills and extensions from pi, Claude, Codex, Copilot and Gemini project folders are reused with per-chat switches. Desktop apps packaged with Electrobun run identically to the CLI browser host.

  2. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  3. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  4. JetBrains/thinkrail

    Finding: Public repository in the JetBrains organisation, default branch main, pushed 2026-11-12. 8,189 stars, 518 forks and 257 open issues observed 2026-11-12. Licensed Apache-2.0; homepage thinkrail.ai.

thinkrail:PLAN-01: Projects, workspaces and scratch chats are created locally from prompts, and asking for work in a side workspace makes the agent start the workspace and its chat itself. External intake is repository-shaped (clone URL, attached worktrees) with GitHub PR metadata read back into the topbar and PR round-trips through gh. No issue tracker, sync, or chat/git triggers exist in docs or the pinned release. cross-checked

thinkrail:PLAN-01

Projects, workspaces and scratch chats are created locally from prompts, and asking for work in a side workspace makes the agent start the workspace and its chat itself. External intake is repository-shaped (clone URL, attached worktrees) with GitHub PR metadata read back into the topbar and PR round-trips through gh. No issue tracker, sync, or chat/git triggers exist in docs or the pinned release.

  • No external issue-tracker relationship exists; PR round-trips are GitHub-only and partial on GitLab.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  3. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  4. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  5. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  6. ThinkRail Workspaces

    Finding: Workspaces are git worktrees under ~/.thinkrail/worktrees with their own branch and cwd; parallel agents stay on their branches and merge back (or open a PR) only on request.

  7. ThinkRail v0.3.2 — workspaces.ts

    Finding: Flat workspace model with available/detached status and settled/active lifecycle. No epics, labels, priorities, queues, blockers, readiness gates or dependencies in code.

  8. ThinkRail v0.3.2 — src

    Finding: Bounded inspection found no user-facing schedules, event triggers, recurring tasks or completion-driven runs.

  9. ThinkRail v0.3.2 — pr.ts

    Finding: PR open/update/ready/merge/reopen/delete-branch through gh with checks display. Forge review-comment ingestion not found.

thinkrail:PLAN-02: Shared TODO plans carry the work with per-step review and independent reviewers, editable by user and agent, with implementation links through per-step commits and turn receipts. Plans survive restarts and mid-run steering. Completed steps form immutable history; explicit acceptance-criteria fields and a separate plan-edit history are undescribed. cross-checked

thinkrail:PLAN-02

Shared TODO plans carry the work with per-step review and independent reviewers, editable by user and agent, with implementation links through per-step commits and turn receipts. Plans survive restarts and mid-run steering. Completed steps form immutable history; explicit acceptance-criteria fields and a separate plan-edit history are undescribed.

  • Acceptance criteria live in plan steps, not a dedicated object; plan-edit history beyond step commits is undescribed.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  3. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

  4. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  5. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  6. ThinkRail v0.3.2 — todos.ts

    Finding: Completed plan steps are immutable history with per-step commits and revision shas; steps carry review states.

thinkrail:PLAN-03: The pinned release implements a flat workspace model (own branch/cwd, settled/active states) with side workspaces and handoff growth, but no epics, parent/child depth, blockers, readiness gates, dependency enforcement or state propagation. A bundled workflow skill set routes by default without a mandatory gate. cross-checked

thinkrail:PLAN-03

The pinned release implements a flat workspace model (own branch/cwd, settled/active states) with side workspaces and handoff growth, but no epics, parent/child depth, blockers, readiness gates, dependency enforcement or state propagation. A bundled workflow skill set routes by default without a mandatory gate.

  • No hierarchy, dependency or enforcement constructs exist; only the workflow routing default was found.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  3. ThinkRail v0.3.2 — workspaces.ts

    Finding: Flat workspace model with available/detached status and settled/active lifecycle. No epics, labels, priorities, queues, blockers, readiness gates or dependencies in code.

thinkrail:PLAN-04: Project knowledge persists in the mtime-guarded SPEC.md graph the agent searches and maintains, plus pi skills, project skills and session state shared between CLI and app. Per-project trust grants scope what loads. Provenance, correction and freshness beyond index revalidation are only partly established. cross-checked

thinkrail:PLAN-04

Project knowledge persists in the mtime-guarded SPEC.md graph the agent searches and maintains, plus pi skills, project skills and session state shared between CLI and app. Per-project trust grants scope what loads. Provenance, correction and freshness beyond index revalidation are only partly established.

  • Provenance is trust scoping, correction is file edits plus reload; deeper memory controls are undescribed.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  3. An agentic IDE that follows Pi's philosophy

    Finding: ThinkRail embeds its own pi coding agent as a library running inside ThinkRail’s own process and shares pi’s ~/.pi folder, so CLI and app sessions keep history both ways. Skills and extensions from pi, Claude, Codex, Copilot and Gemini project folders are reused with per-chat switches. Desktop apps packaged with Electrobun run identically to the CLI browser host.

  4. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  5. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  6. ThinkRail v0.3.2 — skillAdmission.ts

    Finding: Project resources load only after per-project trust grants (trusted, piResourceTrust); untrusted is the default.

  7. ThinkRail v0.3.2 — index.ts

    Finding: Spec CRUD plus validate and grep tools; the index revalidates by mtime/size and never serves stale. No approval, citation or conflict-detection tools.

thinkrail:PLAN-05: The agent retrieves code and specs through pi tools, spec_search and a ranked spec index that also powers palette # search; file text search, web research and MCP knowledge presets extend it. Voice dictation and @ files add input modalities. Retrieval freshness and scope are partly established; citations, conflict detection and review-time rule enforcement are not. cross-checked

thinkrail:PLAN-05

The agent retrieves code and specs through pi tools, spec_search and a ranked spec index that also powers palette # search; file text search, web research and MCP knowledge presets extend it. Voice dictation and @ files add input modalities. Retrieval freshness and scope are partly established; citations, conflict detection and review-time rule enforcement are not.

  • Freshness and scope are partly established; no citation, conflict-detection or rule-enforcement mechanism exists.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  3. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

  4. The Chat

    Finding: Chat groups pi messages into styled batches with folded thinking and tool use, renders Markdown with Mermaid diagrams, highlights 36 languages with Shiki, and opens read-only code and diff tabs from Files. The composer references @ files.

  5. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  6. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  7. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  8. ThinkRail v0.3.2 — index.ts

    Finding: Spec CRUD plus validate and grep tools; the index revalidates by mtime/size and never serves stale. No approval, citation or conflict-detection tools.

thinkrail:PLAN-06: ThinkRail manages work as projects, workspaces (active to Settled shelf) and shared TODO plans rather than a labelled tracker: creation, edit, discussion, search, archive/Trash, reopen, dispatch-by-handoff and durable states exist and were confirmed in code, but prioritisation, labels, assignment and filters do not. No external tracker is required for core work. cross-checked

thinkrail:PLAN-06

ThinkRail manages work as projects, workspaces (active to Settled shelf) and shared TODO plans rather than a labelled tracker: creation, edit, discussion, search, archive/Trash, reopen, dispatch-by-handoff and durable states exist and were confirmed in code, but prioritisation, labels, assignment and filters do not. No external tracker is required for core work.

  • No labelled, prioritised or assigned issue model exists in docs or code; work tracking is workspaces plus TODO plans.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  3. ThinkRail 0.3.1 release

    Finding: Command palette finds chats, workspaces, commands and settings. Custom OpenAI chat-completions servers (Ollama, LM Studio, vLLM, llama.cpp presets) are saved into pi models.json. pi packages install from Settings for the user or a repository. Post notes ThinkRail is backed by JetBrains and links X (@ThinkRailAI), YouTube, TikTok, Discord and the GitHub repository.

  4. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  5. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

  6. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  7. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  8. ThinkRail v0.3.2 — workspaces.ts

    Finding: Flat workspace model with available/detached status and settled/active lifecycle. No epics, labels, priorities, queues, blockers, readiness gates or dependencies in code.

  9. ThinkRail v0.3.2 — todos.ts

    Finding: Completed plan steps are immutable history with per-step commits and revision shas; steps carry review states.

thinkrail:PLAN-07: The agent works the same workspaces, chats and PRs the human sees: it starts side workspaces with chats, checks their chats, PRs and diffs, delegates to subagents and reports results, all visible in the Resources view. Reads, creates and result reporting are established in docs and tool code. Claims, assignment, state changes, dependencies, issue children, attribution and conflict handling do not exist. cross-checked

thinkrail:PLAN-07

The agent works the same workspaces, chats and PRs the human sees: it starts side workspaces with chats, checks their chats, PRs and diffs, delegates to subagents and reports results, all visible in the Resources view. Reads, creates and result reporting are established in docs and tool code. Claims, assignment, state changes, dependencies, issue children, attribution and conflict handling do not exist.

  • Agent issue operations are limited to the documented tool set; tracker-style claim/assign/state/dependency operations do not exist.
  1. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  2. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

  3. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  4. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  5. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  6. ThinkRail v0.3.2 — extension.ts

    Finding: Delegation tools are product-bundled: Agent with per-call model and thinking choice plus background runs, and get_subagent_result for status and finished reports. Subagents cannot call MCP tools.

  7. ThinkRail v0.3.2 — extension.ts

    Finding: Background commands are session-owned with start, list, output and stop; at most 8 active with the latest 20 finished records retained.

thinkrail:PLAN-08: SPEC.md files form a versioned, human- and agent-editable requirement graph beside the code with frontmatter parent links, maintained by spec_* tools and retrieved in later work through agent search and palette # search. Approval rules, automated drift checks and review-time spec gates do not exist. cross-checked

thinkrail:PLAN-08

SPEC.md files form a versioned, human- and agent-editable requirement graph beside the code with frontmatter parent links, maintained by spec_* tools and retrieved in later work through agent search and palette # search. Approval rules, automated drift checks and review-time spec gates do not exist.

  • Approval rules and review-time spec gates do not exist; drift control is convention plus a validate tool.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  3. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  4. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  5. ThinkRail v0.3.2 — reviews.ts

    Finding: Per-step independent review with locks and reviewer roles. No spec-conformance checks at review.

  6. ThinkRail v0.3.2 — index.ts

    Finding: Spec CRUD plus validate and grep tools; the index revalidates by mtime/size and never serves stale. No approval, citation or conflict-detection tools.

thinkrail:COORD-01: Several sessions run concurrently per workspace and several workspaces run in parallel, each isolated on its own branch and cwd — implemented in the session manager with parallel Agent calls and background commands. The Projects rail and Resources views show running work. No quotas exist. cross-checked

thinkrail:COORD-01

Several sessions run concurrently per workspace and several workspaces run in parallel, each isolated on its own branch and cwd — implemented in the session manager with parallel Agent calls and background commands. The Projects rail and Resources views show running work. No quotas exist.

  • No concurrency quotas exist in docs or code.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  3. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  4. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  5. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  6. ThinkRail v0.3.2 — extension.ts

    Finding: Delegation tools are product-bundled: Agent with per-call model and thinking choice plus background runs, and get_subagent_result for status and finished reports. Subagents cannot call MCP tools.

  7. ThinkRail v0.3.2 — extension.ts

    Finding: Background commands are session-owned with start, list, output and stop; at most 8 active with the latest 20 finished records retained.

thinkrail:COORD-02: Dispatch is user-initiated: people create workspace chats and agents delegate to subagents; worktree isolation prevents file collision. No queues, claims, routing, duplicate prevention or enforced ownership exist in docs or code. cross-checked

thinkrail:COORD-02

Dispatch is user-initiated: people create workspace chats and agents delegate to subagents; worktree isolation prevents file collision. No queues, claims, routing, duplicate prevention or enforced ownership exist in docs or code.

  • No queue, claim, routing, duplicate-prevention or ownership-enforcement construct exists.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  3. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  4. ThinkRail v0.3.2 — workspaces.ts

    Finding: Flat workspace model with available/detached status and settled/active lifecycle. No epics, labels, priorities, queues, blockers, readiness gates or dependencies in code.

  5. ThinkRail v0.3.2 — auth

    Finding: No user, organisation, role, SSO, membership or provisioning model in code. Single-owner external auth.

thinkrail:COORD-03: ThinkRail-bundled pi-subagents and pi-delegation give every parent session Agent and get_subagent_result tools over isolated child sessions, with per-session model and effort choice, live progress and retained outcomes in Resources. Delegation is pi-only with no cross-harness teams; child messaging detail and auth are undescribed, and follow-up is re-reading, not reopening. cross-checked

thinkrail:COORD-03

ThinkRail-bundled pi-subagents and pi-delegation give every parent session Agent and get_subagent_result tools over isolated child sessions, with per-session model and effort choice, live progress and retained outcomes in Resources. Delegation is pi-only with no cross-harness teams; child messaging detail and auth are undescribed, and follow-up is re-reading, not reopening.

  • Delegation is pi-only with no cross-harness teams; messaging detail, auth and reopening are undescribed or absent.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  3. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  4. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  5. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  6. ThinkRail v0.3.2 — extension.ts

    Finding: Delegation tools are product-bundled: Agent with per-call model and thinking choice plus background runs, and get_subagent_result for status and finished reports. Subagents cannot call MCP tools.

  7. ThinkRail v0.3.2 — auth

    Finding: No user, organisation, role, SSO, membership or provisioning model in code. Single-owner external auth.

thinkrail:COORD-04: Unattended triggers do not exist: bounded v0.3.2 inspection of packages/server, apps/* and packages/* for schedul|cron|trigger|recur|setInterval-based scheduling found only UI polling, update checks and request replay. No schedules, event triggers, recurring tasks or completion-driven runs exist. cross-checked

thinkrail:COORD-04

Unattended triggers do not exist: bounded v0.3.2 inspection of packages/server, apps/* and packages/* for schedul|cron|trigger|recur|setInterval-based scheduling found only UI polling, update checks and request replay. No schedules, event triggers, recurring tasks or completion-driven runs exist.

  • No scheduler, trigger, recurrence or completion-condition mechanism exists in the pinned release.
  1. ThinkRail v0.3.2 — src

    Finding: Bounded inspection found no user-facing schedules, event triggers, recurring tasks or completion-driven runs.

thinkrail:COORD-05: Running turns accept steering and queued follow-ups; background commands and subagents can be watched, inspected and stopped from Resources. MCP data-changing calls and structured agent questions surface as pending decisions with allow/deny control, and history persists. Pause, resume, escalation and terminal-side intervention do not exist; errors surface as toasts. cross-checked

thinkrail:COORD-05

Running turns accept steering and queued follow-ups; background commands and subagents can be watched, inspected and stopped from Resources. MCP data-changing calls and structured agent questions surface as pending decisions with allow/deny control, and history persists. Pause, resume, escalation and terminal-side intervention do not exist; errors surface as toasts.

  • No pause, resume, escalation or terminal-side intervention exists.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. ThinkRail 0.3.1 release

    Finding: Command palette finds chats, workspaces, commands and settings. Custom OpenAI chat-completions servers (Ollama, LM Studio, vLLM, llama.cpp presets) are saved into pi models.json. pi packages install from Settings for the user or a repository. Post notes ThinkRail is backed by JetBrains and links X (@ThinkRailAI), YouTube, TikTok, Discord and the GitHub repository.

  3. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  4. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

  5. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  6. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  7. ThinkRail v0.3.2 — sessionHost.ts

    Finding: MCP confirmation is product code: data-changing calls confirm with Deny, Allow once, Allow in this chat or Always allow, and fail closed with no UI attached.

  8. ThinkRail v0.3.2 — ChatTranscript.tsx

    Finding: User-facing error toasts exist; silent waits and escalation paths do not.

  9. ThinkRail v0.3.2 — terminal

    Finding: No approval or intervention model in terminal code.

thinkrail:COORD-06: The Projects panel lists workspaces across projects with settled states, attention markers and per-branch PR status; no parent/child, dependency or workload views exist and no fleet fixture was exercised. Navigation errors cannot be determined without running the product. cross-checked

thinkrail:COORD-06

The Projects panel lists workspaces across projects with settled states, attention markers and per-branch PR status; no parent/child, dependency or workload views exist and no fleet fixture was exercised. Navigation errors cannot be determined without running the product.

  • No parent/child, dependency or workload views exist; no fleet fixture was exercised. Navigation errors need interaction and stay unknown.
  1. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  2. ThinkRail 0.3.1 release

    Finding: Command palette finds chats, workspaces, commands and settings. Custom OpenAI chat-completions servers (Ollama, LM Studio, vLLM, llama.cpp presets) are saved into pi models.json. pi packages install from Settings for the user or a repository. Post notes ThinkRail is backed by JetBrains and links X (@ThinkRailAI), YouTube, TikTok, Discord and the GitHub repository.

  3. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  4. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  5. ThinkRail v0.3.2 — workspaces.ts

    Finding: Flat workspace model with available/detached status and settled/active lifecycle. No epics, labels, priorities, queues, blockers, readiness gates or dependencies in code.

  6. ThinkRail v0.3.2 — attentionNotificationEngine.ts

    Finding: Attention engine with per-session unread holds plus desktop notifications.

thinkrail:COORD-07: Quick scratch chats grow into workspace work via Continue-in-workspace handoff, and plain-language side-workspace requests configure delegation; per-session model and effort plus mid-run steering adapt execution live. Bundled workflow skills exist without a mandatory preset gate. Roles during work and retained relationships are only partly described. cross-checked

thinkrail:COORD-07

Quick scratch chats grow into workspace work via Continue-in-workspace handoff, and plain-language side-workspace requests configure delegation; per-session model and effort plus mid-run steering adapt execution live. Bundled workflow skills exist without a mandatory preset gate. Roles during work and retained relationships are only partly described.

  • Only the cited atomic findings are established. Live role labelling, retained relationship views and coordinator docs are only partly described.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  3. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  4. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  5. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  6. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

thinkrail:RUN-01: Execution is local: the desktop app and the CLI host run the in-process pi engine on the user’s own machine, provisioned by the installer, with no vendor cloud, no user-server path and no resource, region or expiry concepts. State rebuilds on other surfaces over the wire, but execution does not survive the originating host. cross-checked

thinkrail:RUN-01

Execution is local: the desktop app and the CLI host run the in-process pi engine on the user’s own machine, provisioned by the installer, with no vendor cloud, no user-server path and no resource, region or expiry concepts. State rebuilds on other surfaces over the wire, but execution does not survive the originating host.

  • Local-only execution with no remote, hosted or laptop-independent operation; state follows surfaces, execution does not.
  1. An agentic IDE that follows Pi's philosophy

    Finding: ThinkRail embeds its own pi coding agent as a library running inside ThinkRail’s own process and shares pi’s ~/.pi folder, so CLI and app sessions keep history both ways. Skills and extensions from pi, Claude, Codex, Copilot and Gemini project folders are reused with per-chat switches. Desktop apps packaged with Electrobun run identically to the CLI browser host.

  2. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  3. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  4. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  5. ThinkRail v0.3.2 — workspaces.ts

    Finding: Flat workspace model with available/detached status and settled/active lifecycle. No epics, labels, priorities, queues, blockers, readiness gates or dependencies in code.

  6. ThinkRail v0.3.2 — wsProtocol.ts

    Finding: Hydrate-then-stream: clients rebuild projects, workspaces, sessions and transcripts on reload, second tab, phone or host restart; reconnect repairs missed deltas.

thinkrail:RUN-02: Isolation is git worktrees: separate directories, branches and cwds per workspace on the same machine and OS user, with env-based secret handling. No container, VM, OS-sandbox, process or network boundary exists; pi runs in-process. A worktree is file separation, not a security boundary. cross-checked

thinkrail:RUN-02

Isolation is git worktrees: separate directories, branches and cwds per workspace on the same machine and OS user, with env-based secret handling. No container, VM, OS-sandbox, process or network boundary exists; pi runs in-process. A worktree is file separation, not a security boundary.

  • File separation only: same machine, user and process; no security boundary is claimed.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. Introducing ThinkRail

    Finding: ThinkRail is an agentic IDE for the Pi coding agent that complements its CLI. Desktop installers for macOS, Windows x64 and Linux x64/ARM64, or a CLI host that opens a browser tab. Every working session operates on a separate git branch merged only after review; LLM providers are configured in Settings.

  3. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

  4. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  5. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  6. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  7. ThinkRail v0.3.2 — server.ts

    Finding: The host exposes only the internal /ws wire, /health and static/file routes. No public REST API, SDK surface, MCP server transport or webhooks exist in code.

  8. ThinkRail v0.3.2 — workspaces.ts

    Finding: Flat workspace model with available/detached status and settled/active lifecycle. No epics, labels, priorities, queues, blockers, readiness gates or dependencies in code.

thinkrail:RUN-03: State reconstructs from host reads on reload, second tab, phone or host restart, with request replay and delta repair on reconnect; transcripts persist on disk. Disconnect, crash and multi-day behaviour on one machine are partly established. Expiry, duplicates handling and repair flows do not exist. cross-checked

thinkrail:RUN-03

State reconstructs from host reads on reload, second tab, phone or host restart, with request replay and delta repair on reconnect; transcripts persist on disk. Disconnect, crash and multi-day behaviour on one machine are partly established. Expiry, duplicates handling and repair flows do not exist.

  • Continuity is same-machine persistence plus state rebuild; crash recovery, duplicates and repair are undescribed or absent.
  1. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  2. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  3. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  4. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  5. ThinkRail v0.3.2 — workspaces.ts

    Finding: Flat workspace model with available/detached status and settled/active lifecycle. No epics, labels, priorities, queues, blockers, readiness gates or dependencies in code.

  6. ThinkRail v0.3.2 — wsProtocol.ts

    Finding: Hydrate-then-stream: clients rebuild projects, workspaces, sessions and transcripts on reload, second tab, phone or host restart; reconnect repairs missed deltas.

  7. ThinkRail v0.3.2 — src

    Finding: Bounded inspection found no user-facing schedules, event triggers, recurring tasks or completion-driven runs.

thinkrail:RUN-04: The only environment mechanism is per-host environment-variable injection for agents, terminals and MCP servers. Dependency setup, caches, snapshots, services, ports, duplication, collisions, remote setup and automatic repair do not exist in the product. cross-checked

thinkrail:RUN-04

The only environment mechanism is per-host environment-variable injection for agents, terminals and MCP servers. Dependency setup, caches, snapshots, services, ports, duplication, collisions, remote setup and automatic repair do not exist in the product.

  • Environment support is env injection only; all other reliability mechanisms are absent.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

thinkrail:RUN-05: Limits and failure handling do not exist: bounded v0.3.2 inspection of the server found only model maxTokens passthrough and an internal session-shutdown budget. No time, turn, token or spend limits, timeouts, retries or provider-failure budgets exist. Token and cost displays are visibility, not enforcement. cross-checked

thinkrail:RUN-05

Limits and failure handling do not exist: bounded v0.3.2 inspection of the server found only model maxTokens passthrough and an internal session-shutdown budget. No time, turn, token or spend limits, timeouts, retries or provider-failure budgets exist. Token and cost displays are visibility, not enforcement.

  • No limits, timeouts, retries or failure budgets exist in the pinned release.
  1. ThinkRail v0.3.2 — agent

    Finding: No user-facing time, turn, token or spend limits, retries or failure budgets in code.

thinkrail:RUN-06: Turn receipts, folded tool steps, command log tails, per-chat token and cost ticks, MCP pending-confirm cards and topbar PR checks and review decisions give live status; per-chat token stats are the only statistics, and reconnects repair state. Usage export and measured responsiveness do not exist. cross-checked

thinkrail:RUN-06

Turn receipts, folded tool steps, command log tails, per-chat token and cost ticks, MCP pending-confirm cards and topbar PR checks and review decisions give live status; per-chat token stats are the only statistics, and reconnects repair state. Usage export and measured responsiveness do not exist.

  • Statistics stop at per-chat tokens and cost; no export, aggregates or measured timings exist.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  3. ThinkRail 0.3.1 release

    Finding: Command palette finds chats, workspaces, commands and settings. Custom OpenAI chat-completions servers (Ollama, LM Studio, vLLM, llama.cpp presets) are saved into pi models.json. pi packages install from Settings for the user or a repository. Post notes ThinkRail is backed by JetBrains and links X (@ThinkRailAI), YouTube, TikTok, Discord and the GitHub repository.

  4. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  5. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

  6. The Chat

    Finding: Chat groups pi messages into styled batches with folded thinking and tool use, renders Markdown with Mermaid diagrams, highlights 36 languages with Shiki, and opens read-only code and diff tabs from Files. The composer references @ files.

  7. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  8. ThinkRail v0.3.2 — wsProtocol.ts

    Finding: Hydrate-then-stream: clients rebuild projects, workspaces, sessions and transcripts on reload, second tab, phone or host restart; reconnect repairs missed deltas.

  9. ThinkRail v0.3.2 — src

    Finding: No history, usage or task export in code.

  10. ThinkRail v0.3.2 — web app source

    Finding: No interaction-timing, review-effort or measurement instrumentation in code; shown figures are single documented cases and analytics.

thinkrail:RUN-07: Every chat ticks pi-reported tokens (input, output, cache reads and writes) and cost live; JetBrains AI quota snapshots on a 30-second default cadence with a 20-second PR-check refresh. Child, epic and aggregate costs, reconciliation, alerts, export and drill-down do not exist, and unknown subscription marginal cost is never rendered as zero. cross-checked

thinkrail:RUN-07

Every chat ticks pi-reported tokens (input, output, cache reads and writes) and cost live; JetBrains AI quota snapshots on a 30-second default cadence with a 20-second PR-check refresh. Child, epic and aggregate costs, reconciliation, alerts, export and drill-down do not exist, and unknown subscription marginal cost is never rendered as zero.

  • Cost visibility is per-chat tokens plus quota snapshots only; no aggregation, reconciliation, alerts or export exists.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  3. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  4. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  5. JetBrains AI via the Central CLI

    Finding: JetBrains AI models reach ThinkRail through the user-owned central CLI with a recurring AI-credit quota; sign-in, status and quota orchestration span the provider card and shell, with quota snapshots on a 1–3600 second cadence (30 seconds by default).

thinkrail:RUN-08: Parallel sessions and workspaces run with no declared concurrency limits, queues or resource awareness; the only controls are session ownership and stopping background commands or subagents. No bounded load behaviour was established in code. cross-checked

thinkrail:RUN-08

Parallel sessions and workspaces run with no declared concurrency limits, queues or resource awareness; the only controls are session ownership and stopping background commands or subagents. No bounded load behaviour was established in code.

  • No limits, queues, resource awareness or bounded testing exist.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  3. ThinkRail v0.3.2 — extension.ts

    Finding: Delegation tools are product-bundled: Agent with per-call model and thinking choice plus background runs, and get_subagent_result for status and finished reports. Subagents cannot call MCP tools.

  4. ThinkRail v0.3.2 — extension.ts

    Finding: Background commands are session-owned with start, list, output and stop; at most 8 active with the latest 20 finished records retained.

thinkrail:TEAM-01: Live human collaboration does not exist: ThinkRail is a single-owner local product whose auth model (Tailscale ACLs plus an owner field, no login UI) has no second user, shared prompting, presence, ordering, attribution or permission constructs. The launch post’s Git-and-GitHub line does not establish co-steering. cross-checked

thinkrail:TEAM-01

Live human collaboration does not exist: ThinkRail is a single-owner local product whose auth model (Tailscale ACLs plus an owner field, no login UI) has no second user, shared prompting, presence, ordering, attribution or permission constructs. The launch post’s Git-and-GitHub line does not establish co-steering.

  • Single-owner product: no multi-user construct exists in docs or code.
  1. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  2. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  3. ThinkRail v0.3.2 — auth

    Finding: No user, organisation, role, SSO, membership or provisioning model in code. Single-owner external auth.

thinkrail:TEAM-02: Roles and access boundaries do not exist: no organisations, project or task roles, membership, SSO, provisioning, revocation or plan scoping, because there are no accounts. Host reach is a network (Tailscale) matter, and SSO is excluded by the no-login-UI non-goal. cross-checked

thinkrail:TEAM-02

Roles and access boundaries do not exist: no organisations, project or task roles, membership, SSO, provisioning, revocation or plan scoping, because there are no accounts. Host reach is a network (Tailscale) matter, and SSO is excluded by the no-login-UI non-goal.

  • No role, membership, SSO or provisioning construct exists.
  1. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  2. ThinkRail v0.3.2 — auth

    Finding: No user, organisation, role, SSO, membership or provisioning model in code. Single-owner external auth.

thinkrail:TEAM-03: MCP data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow (per project, lapsing on entry change); repo resources and repo MCP entries stay off until explicit grants; shell-credential hygiene is host-enforced. The human user approves merges. Shell-command and network approvals are not a product surface, and no tunnels exist. cross-checked

thinkrail:TEAM-03

MCP data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow (per project, lapsing on entry change); repo resources and repo MCP entries stay off until explicit grants; shell-credential hygiene is host-enforced. The human user approves merges. Shell-command and network approvals are not a product surface, and no tunnels exist.

  • No product-owned shell or network approval and no tunnels exist; MCP, trust-grant and delivery approvals do.
  1. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  2. ThinkRail 0.3.1 release

    Finding: Command palette finds chats, workspaces, commands and settings. Custom OpenAI chat-completions servers (Ollama, LM Studio, vLLM, llama.cpp presets) are saved into pi models.json. pi packages install from Settings for the user or a repository. Post notes ThinkRail is backed by JetBrains and links X (@ThinkRailAI), YouTube, TikTok, Discord and the GitHub repository.

  3. An agentic IDE that follows Pi's philosophy

    Finding: ThinkRail embeds its own pi coding agent as a library running inside ThinkRail’s own process and shares pi’s ~/.pi folder, so CLI and app sessions keep history both ways. Skills and extensions from pi, Claude, Codex, Copilot and Gemini project folders are reused with per-chat switches. Desktop apps packaged with Electrobun run identically to the CLI browser host.

  4. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

  5. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  6. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  7. ThinkRail v0.3.2 — server.ts

    Finding: The host exposes only the internal /ws wire, /health and static/file routes. No public REST API, SDK surface, MCP server transport or webhooks exist in code.

  8. ThinkRail v0.3.2 — terminal

    Finding: No approval or intervention model in terminal code.

thinkrail:TEAM-04: Turn receipts, resource history, anchored review comments and PR states persist across sessions and host restarts; Settled workspaces and Trash give retention shape. History alteration is delete-only, export and integrity models do not exist, and no audit claim is made. cross-checked

thinkrail:TEAM-04

Turn receipts, resource history, anchored review comments and PR states persist across sessions and host restarts; Settled workspaces and Trash give retention shape. History alteration is delete-only, export and integrity models do not exist, and no audit claim is made.

  • Retention shape only; no export or integrity model exists and no audit claim is made.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  3. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  4. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

  5. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  6. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  7. ThinkRail v0.3.2 — auth

    Finding: No user, organisation, role, SSO, membership or provisioning model in code. Single-owner external auth.

  8. ThinkRail v0.3.2 — src

    Finding: No history, usage or task export in code.

  9. ThinkRail v0.3.2 — server source

    Finding: No audit, retention or integrity model in code.

thinkrail:TEAM-05: Review is a guided loop: the palette and Review-turn button surface pending work, stacked Changes tabs with Keep/Revert/Ask-agent plus Next-unreviewed (J key in code) navigate evidence, anchored comments and Fix-with-agent request changes, and the topbar names the next shipping step. Phone viewports adapt; effort timing, missed-evidence analysis and switching costs are not measured. cross-checked

thinkrail:TEAM-05

Review is a guided loop: the palette and Review-turn button surface pending work, stacked Changes tabs with Keep/Revert/Ask-agent plus Next-unreviewed (J key in code) navigate evidence, anchored comments and Fix-with-agent request changes, and the topbar names the next shipping step. Phone viewports adapt; effort timing, missed-evidence analysis and switching costs are not measured.

  • Review effort, missed evidence and switching costs are not measured. Bulk and cross-branch review queues are judged in SHIP-06.
  1. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  2. ThinkRail 0.3.1 release

    Finding: Command palette finds chats, workspaces, commands and settings. Custom OpenAI chat-completions servers (Ollama, LM Studio, vLLM, llama.cpp presets) are saved into pi models.json. pi packages install from Settings for the user or a repository. Post notes ThinkRail is backed by JetBrains and links X (@ThinkRailAI), YouTube, TikTok, Discord and the GitHub repository.

  3. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  4. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

  5. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  6. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  7. ThinkRail v0.3.2 — viewport.ts

    Finding: Phone-viewport detection adapts the UI below 767px width.

  8. ThinkRail v0.3.2 — ChangesReviewPane.tsx

    Finding: Keyboard operation including J for next-unreviewed plus palette and file-search shortcuts.

  9. ThinkRail v0.3.2 — web app source

    Finding: No interaction-timing, review-effort or measurement instrumentation in code; shown figures are single documented cases and analytics.

thinkrail:TEAM-06: Same-user continuity is implemented: previous conversations reopen with history and sessions move between the pi CLI and the app. Second-person takeover, ownership transfer, permissions, runtime handoff and context-loss handling do not exist in this single-owner product. cross-checked

thinkrail:TEAM-06

Same-user continuity is implemented: previous conversations reopen with history and sessions move between the pi CLI and the app. Second-person takeover, ownership transfer, permissions, runtime handoff and context-loss handling do not exist in this single-owner product.

  • Same-user session continuity only; no second-person handoff exists to evaluate.
  1. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  2. An agentic IDE that follows Pi's philosophy

    Finding: ThinkRail embeds its own pi coding agent as a library running inside ThinkRail’s own process and shares pi’s ~/.pi folder, so CLI and app sessions keep history both ways. Skills and extensions from pi, Claude, Codex, Copilot and Gemini project folders are reused with per-chat switches. Desktop apps packaged with Electrobun run identically to the CLI browser host.

  3. ThinkRail v0.3.2 — auth

    Finding: No user, organisation, role, SSO, membership or provisioning model in code. Single-owner external auth.

thinkrail:SHIP-01: Diffs, documents, file previews, UI mockups, test outputs and reviewer outputs persist with the transcript and branch; per-run Changes tabs and per-hunk review carry the evidence. Screenshot capture, recordings, a cross-task gallery and prompt leakage into outputs do not exist in the pinned release. cross-checked

thinkrail:SHIP-01

Diffs, documents, file previews, UI mockups, test outputs and reviewer outputs persist with the transcript and branch; per-run Changes tabs and per-hunk review carry the evidence. Screenshot capture, recordings, a cross-task gallery and prompt leakage into outputs do not exist in the pinned release.

  • No screenshot/record capture, cross-task gallery or prompt leakage path exists.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  3. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

  4. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  5. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  6. ThinkRail v0.3.2 — src

    Finding: No artifact gallery, screenshot or recording capture in code.

thinkrail:SHIP-02: Verification is agent-driven and displayed, not product-enforced: the agent runs tests in terminals, CI checks display on the PR, and plan steps can route to an independent reviewer. Required gates, lint/type gates, failure blocking, requirement-conflict handling and configured or enforced policy do not exist. cross-checked

thinkrail:SHIP-02

Verification is agent-driven and displayed, not product-enforced: the agent runs tests in terminals, CI checks display on the PR, and plan steps can route to an independent reviewer. Required gates, lint/type gates, failure blocking, requirement-conflict handling and configured or enforced policy do not exist.

  • ThinkRail configures and enforces no verification gates of its own.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  3. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

  4. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  5. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  6. ThinkRail v0.3.2 — index.ts

    Finding: Spec CRUD plus validate and grep tools; the index revalidates by mtime/size and never serves stale. No approval, citation or conflict-detection tools.

  7. ThinkRail v0.3.2 — src

    Finding: No required or enforced verification gates in code.

thinkrail:SHIP-03: The full GitHub loop is integrated in the topbar: own branches and worktrees, per-step commits, PR open/update through gh with templates or agent drafts, CI response with Fix-with-agent, rebase preview, and merge/reopen/branch-delete actions — all present in the pinned pr/github modules. PR-comment round-trips and GitLab review actions are the limits. cross-checked

thinkrail:SHIP-03

The full GitHub loop is integrated in the topbar: own branches and worktrees, per-step commits, PR open/update through gh with templates or agent drafts, CI response with Fix-with-agent, rebase preview, and merge/reopen/branch-delete actions — all present in the pinned pr/github modules. PR-comment round-trips and GitLab review actions are the limits.

  • GitLab is limited to a prefilled MR page; forge PR-comment round-trips are undescribed in code.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  3. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  4. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  5. ThinkRail v0.3.2 — pr.ts

    Finding: PR open/update/ready/merge/reopen/delete-branch through gh with checks display. Forge review-comment ingestion not found.

thinkrail:SHIP-04: The human user approves (Ready for review), merges (repo-allowed methods, remembered per project), reopens and deletes remote branches from the topbar, governed by GitHub merge state. Release and deploy authority do not exist in the product. cross-checked

thinkrail:SHIP-04

The human user approves (Ready for review), merges (repo-allowed methods, remembered per project), reopens and deletes remote branches from the topbar, governed by GitHub merge state. Release and deploy authority do not exist in the product.

  • Release and deployment authority do not exist in the product.
  1. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  3. ThinkRail v0.3.2 — args.ts

    Finding: Complete CLI inventory: launch flags plus update and uninstall subcommands only. No session, task, steering or review operations exist in the launcher.

thinkrail:SHIP-05: Turn receipts and per-step commits link work to code, the topbar links branches to PRs with delivery state and retained transcripts, and local revert (hunk/file Keep/Revert) plus stale-approval invalidation (Keep lapses on re-edit) are built in. Build/deployment links and post-merge rollback do not exist. cross-checked

thinkrail:SHIP-05

Turn receipts and per-step commits link work to code, the topbar links branches to PRs with delivery state and retained transcripts, and local revert (hunk/file Keep/Revert) plus stale-approval invalidation (Keep lapses on re-edit) are built in. Build/deployment links and post-merge rollback do not exist.

  • Build and deployment links plus post-merge rollback do not exist.
  1. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  2. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  3. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

  4. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  5. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  6. ThinkRail v0.3.2 — pr.ts

    Finding: PR open/update/ready/merge/reopen/delete-branch through gh with checks display. Forge review-comment ingestion not found.

thinkrail:SHIP-06: Per-branch review is implemented (receipts, retained findings, anchored change requests, next-step topbar, stale-Keep invalidation), and the Projects/Settled views list reviewable work — but grouping, risk filters, exact-revision batch approval, dependency queues and check dedup do not exist. No batch queue exists. cross-checked

thinkrail:SHIP-06

Per-branch review is implemented (receipts, retained findings, anchored change requests, next-step topbar, stale-Keep invalidation), and the Projects/Settled views list reviewable work — but grouping, risk filters, exact-revision batch approval, dependency queues and check dedup do not exist. No batch queue exists.

  • Per-branch review only, not a coordinated batch review-and-delivery queue.
  1. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  2. ThinkRail 0.3.1 release

    Finding: Command palette finds chats, workspaces, commands and settings. Custom OpenAI chat-completions servers (Ollama, LM Studio, vLLM, llama.cpp presets) are saved into pi models.json. pi packages install from Settings for the user or a repository. Post notes ThinkRail is backed by JetBrains and links X (@ThinkRailAI), YouTube, TikTok, Discord and the GitHub repository.

  3. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  4. ThinkRail 0.2.0: review the turn, not the chat log

    Finding: Turn receipts (files changed plus Review turn button) and a stacked Changes tab with per-hunk Keep, Revert and Ask agent plus Next-unreviewed (J). MCP runs on pi’s built-in engine with presets (Context7, DeepWiki, Linear read-only, Sentry, Playwright); secrets must be ${VAR} or !command and repo .pi/mcp.json entries need per-entry approval; data-changing calls confirm in the chat with Deny, Allow once, Allow in this chat or Always allow.

  5. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  6. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  7. ThinkRail v0.3.2 — src

    Finding: No batch review or dependency-aware merge queues in code.

thinkrail:OWN-01: ThinkRail is Apache-2.0 across the public repo: desktop app, CLI host, engine library, contracts, web UI and all bundled extensions ship from one codebase with no proprietary twin or licence exception. The revision is pinned to release v0.3.2 (commit 1bc1a9b). cross-checked

thinkrail:OWN-01

ThinkRail is Apache-2.0 across the public repo: desktop app, CLI host, engine library, contracts, web UI and all bundled extensions ship from one codebase with no proprietary twin or licence exception. The revision is pinned to release v0.3.2 (commit 1bc1a9b).

  • Single-repo finding: no component carries a different licence.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  3. ThinkRail releases

    Finding: Stable v0.3.2 published 2026-11-06; v0.4.0 stable published 2026-11-12 (latest at check time). Free desktop and CLI assets per platform with SHA256SUMS.

  4. JetBrains/thinkrail

    Finding: Public repository in the JetBrains organisation, default branch main, pushed 2026-11-12. 8,189 stars, 518 forks and 257 open issues observed 2026-11-12. Licensed Apache-2.0; homepage thinkrail.ai.

  5. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

thinkrail:OWN-02: The core ADE runs entirely on user-controlled machines with no vendor services to keep: optional companions are the user’s git, gh, central CLI and Tailscale. Uninstall removes the binary and optionally ~/.thinkrail state. Task, context and history export formats do not exist. cross-checked

thinkrail:OWN-02

The core ADE runs entirely on user-controlled machines with no vendor services to keep: optional companions are the user’s git, gh, central CLI and Tailscale. Uninstall removes the binary and optionally ~/.thinkrail state. Task, context and history export formats do not exist.

  • Export formats and history portability do not exist.
  1. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  2. An agentic IDE that follows Pi's philosophy

    Finding: ThinkRail embeds its own pi coding agent as a library running inside ThinkRail’s own process and shares pi’s ~/.pi folder, so CLI and app sessions keep history both ways. Skills and extensions from pi, Claude, Codex, Copilot and Gemini project folders are reused with per-chat switches. Desktop apps packaged with Electrobun run identically to the CLI browser host.

  3. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  4. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  5. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  6. ThinkRail v0.3.2 — src

    Finding: No history, usage or task export in code.

thinkrail:OWN-03: Code, prompts and credentials stay with the user: in-process pi sends them to the user’s own providers, never to ThinkRail servers. Telemetry is basic install-ID events plus always-on error reports via PostHog; extra sharing is opt-in at first run and in Settings Privacy (or --no-analytics). Retention beyond a 30-day link expiry, training use and residency are unstated business facts. cross-checked

thinkrail:OWN-03

Code, prompts and credentials stay with the user: in-process pi sends them to the user’s own providers, never to ThinkRail servers. Telemetry is basic install-ID events plus always-on error reports via PostHog; extra sharing is opt-in at first run and in Settings Privacy (or --no-analytics). Retention beyond a 30-day link expiry, training use and residency are unstated business facts.

  • Retention timelines, training use and residency are unstated.
  1. ThinkRail 0.3.1 release

    Finding: Command palette finds chats, workspaces, commands and settings. Custom OpenAI chat-completions servers (Ollama, LM Studio, vLLM, llama.cpp presets) are saved into pi models.json. pi packages install from Settings for the user or a repository. Post notes ThinkRail is backed by JetBrains and links X (@ThinkRailAI), YouTube, TikTok, Discord and the GitHub repository.

  2. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  3. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  4. ThinkRail v0.3.2 — auth

    Finding: No user, organisation, role, SSO, membership or provisioning model in code. Single-owner external auth.

thinkrail:OWN-04: ThinkRail itself is free: Apache-2.0 source, free downloads, no accounts, no paid plan and no metered units. Model and compute spend belongs to the user’s own providers and hardware and is never billed or marked up by ThinkRail. Billing dimensions do not apply to a product with no paid offering. cross-checked

thinkrail:OWN-04

ThinkRail itself is free: Apache-2.0 source, free downloads, no accounts, no paid plan and no metered units. Model and compute spend belongs to the user’s own providers and hardware and is never billed or marked up by ThinkRail. Billing dimensions do not apply to a product with no paid offering.

  • No paid plans exist, so billing atoms are moot business facts; model and compute spend is the user’s own provider and hardware cost.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  3. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  4. JetBrains AI via the Central CLI

    Finding: JetBrains AI models reach ThinkRail through the user-owned central CLI with a recurring AI-credit quota; sign-in, status and quota orchestration span the provider card and shell, with quota snapshots on a 1–3600 second cadence (30 seconds by default).

  5. ThinkRail releases

    Finding: Stable v0.3.2 published 2026-11-06; v0.4.0 stable published 2026-11-12 (latest at check time). Free desktop and CLI assets per platform with SHA256SUMS.

  6. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

thinkrail:OWN-05: Fixed ThinkRail cost is $0 for one, two or five developers (free installs, parallel workspaces included, no seats). Variable cost is the team’s own provider spend on tokens; no invented per-task averages are used. Two-person collaboration is limited by the single-user design and shared via git. cross-checked

thinkrail:OWN-05

Fixed ThinkRail cost is $0 for one, two or five developers (free installs, parallel workspaces included, no seats). Variable cost is the team’s own provider spend on tokens; no invented per-task averages are used. Two-person collaboration is limited by the single-user design and shared via git.

  • Fixed $0 cost is established; variable provider spend cannot be fixed without usage assumptions, which are not invented.
  1. ThinkRail — the agentic IDE that gets better every time you use it

    Finding: Agentic IDE around the pi agent: git-worktree workspaces with own branch and cwd, Monaco editor tabs, terminals, diffs, concurrent chats with per-session model and live token/cost ticks, and a spec graph the agent reads. Desktop apps for macOS, Windows and Linux plus a thinkrail CLI that opens the same app in a browser. Open source Apache-2.0; a JetBrains InnovationHub project.

  2. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  3. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  4. JetBrains AI via the Central CLI

    Finding: JetBrains AI models reach ThinkRail through the user-owned central CLI with a recurring AI-credit quota; sign-in, status and quota orchestration span the provider card and shell, with quota snapshots on a 1–3600 second cadence (30 seconds by default).

  5. ThinkRail releases

    Finding: Stable v0.3.2 published 2026-11-06; v0.4.0 stable published 2026-11-12 (latest at check time). Free desktop and CLI assets per platform with SHA256SUMS.

  6. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

thinkrail:OWN-06: Pre-1.0 beta under active development: stable v0.3.2 plus public nightlies with daily commits, free of access restrictions beyond provider credentials. Support is Discord plus GitHub issues with no committed response times and no published status history; uninstall documents exit without export. cross-checked

thinkrail:OWN-06

Pre-1.0 beta under active development: stable v0.3.2 plus public nightlies with daily commits, free of access restrictions beyond provider credentials. Support is Discord plus GitHub issues with no committed response times and no published status history; uninstall documents exit without export.

  • Response commitments, status history and export options are unpublished or absent.
  1. ThinkRail 0.3.0: the whole loop in one window

    Finding: Topbar Remote and Pull request segments drive publish, push, sync, open-PR and merge through the user-owned gh CLI, showing CI checks and review decision re-read every 20 seconds; merging locally and GitLab review actions are not yet available. First-run wizard detects signed-in Claude Code, Codex, Copilot, Kimi CLI or Grok Build configs and connects through pi auth without borrowing their credentials.

  2. ThinkRail 0.3.1 release

    Finding: Command palette finds chats, workspaces, commands and settings. Custom OpenAI chat-completions servers (Ollama, LM Studio, vLLM, llama.cpp presets) are saved into pi models.json. pi packages install from Settings for the user or a repository. Post notes ThinkRail is backed by JetBrains and links X (@ThinkRailAI), YouTube, TikTok, Discord and the GitHub repository.

  3. GUI overview

    Finding: Fifteen numbered components: chat tabs with turn summaries and Review turn, read-only file and diff tabs, chat history popup, terminals, per-chat token usage, Resources popup (background commands, subagents, MCP servers), Skills popup, model picker, Projects/workspaces/Settled panel, Specs/Files/Changes/Review/TODO panels, command palette, and provider, MCP, prompt, Pi-config and chat-tuning settings.

  4. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  5. ThinkRail releases

    Finding: Stable v0.3.2 published 2026-11-06; v0.4.0 stable published 2026-11-12 (latest at check time). Free desktop and CLI assets per platform with SHA256SUMS.

  6. JetBrains/thinkrail

    Finding: Public repository in the JetBrains organisation, default branch main, pushed 2026-11-12. 8,189 stars, 518 forks and 257 open issues observed 2026-11-12. Licensed Apache-2.0; homepage thinkrail.ai.

  7. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

  8. ThinkRail issues

    Finding: GitHub issues is the venue for bugs and feature requests, with Discord linked for discussion. No roadmap document, changelog file or milestones were found; release history is spread across the blog and releases.

  9. ThinkRail v0.3.2 — src

    Finding: No history, usage or task export in code.

thinkrail:OWN-08: Free outright: Apache-2.0 source with free desktop and CLI downloads and no paid plan, card, trial, credit programme, gated early access or usage caps. Meaningful evaluation needs only provider credentials (JetBrains AI or own keys/local models); two-person same-work collaboration is limited by the single-user design. cross-checked

thinkrail:OWN-08

Free outright: Apache-2.0 source with free desktop and CLI downloads and no paid plan, card, trial, credit programme, gated early access or usage caps. Meaningful evaluation needs only provider credentials (JetBrains AI or own keys/local models); two-person same-work collaboration is limited by the single-user design.

  • Evaluation needs provider credentials; same-work two-person scenarios are limited by the single-user design.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  3. ThinkRail — top-level architecture

    Finding: Engine host (Bun HTTP+WS with one in-process pi session per chat) launched by the CLI or the Electrobun desktop shell; typed versioned wire protocol; mobile-first React UI that dials any host over the network, with a phone reaching the selected host over Tailscale. Desktop profile is local only; a later shared-client profile can dial an existing host. Bundled extensions pi-spec-graph, pi-thinkrail-workflow and pi-todos; portable packages pi-delegation, pi-background-commands and pi-subagents (Agent plus get_subagent_result tools) bundled into every parent session.

  4. ThinkRail releases

    Finding: Stable v0.3.2 published 2026-11-06; v0.4.0 stable published 2026-11-12 (latest at check time). Free desktop and CLI assets per platform with SHA256SUMS.

  5. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.

thinkrail:OWN-09: Pricing is transparent because there is nothing to hide: free with no paid plan, no metered units, no overages, no markups, no minimums and nothing sales-gated. Model and compute economics are the user’s own provider and hardware spend, never marked up. cross-checked

thinkrail:OWN-09

Pricing is transparent because there is nothing to hide: free with no paid plan, no metered units, no overages, no markups, no minimums and nothing sales-gated. Model and compute economics are the user’s own provider and hardware spend, never marked up.

  • Billing atoms do not apply to a free product with no paid tier.
  1. ThinkRail README

    Finding: Native desktop installer plus self-contained thinkrail CLI with stable and nightly channels and checksum verification. Workspaces are git worktrees with own branch and cwd; finished ones settle after PR merge/close or a quiet week. Concurrent sessions per workspace each with its own model; shared TODO plans with per-step review; subagents and background commands watched from a per-chat Resources view; spec tools; skills import from Claude/Codex agents; MCP from pi mcp.json; JetBrains AI or any pi provider auth with no ThinkRail accounts. App state lives under ~/.thinkrail. Basic usage events tie to a random install ID; extra sharing is opt-in via Settings Privacy or --no-analytics.

  2. ThinkRail — product goal and scope

    Finding: pi is the only engine, run in-process, with no second runtime. Git, GitHub and model access go through the user-owned git, gh and central CLI plus pi provider auth; ThinkRail keeps no accounts or tokens. Cloned-repository resources and repo MCP servers load only after a per-project trust grant. Capabilities include projects-to-workspaces, scratch chats, concurrent steerable chats, plans with per-step independent review, subagents and background commands, agent-started workspaces, anchored review comments, PR open/update via gh, specs, workflows, providers, pi config, agent tools, pi packages and MCP. Non-goals: a second agent runtime, and ThinkRail accounts or a login UI — who may reach a host is decided by Tailscale ACLs.

  3. JetBrains AI via the Central CLI

    Finding: JetBrains AI models reach ThinkRail through the user-owned central CLI with a recurring AI-credit quota; sign-in, status and quota orchestration span the provider card and shell, with quota snapshots on a 1–3600 second cadence (30 seconds by default).

  4. ThinkRail releases

    Finding: Stable v0.3.2 published 2026-11-06; v0.4.0 stable published 2026-11-12 (latest at check time). Free desktop and CLI assets per platform with SHA256SUMS.

  5. Apache License 2.0

    Finding: Repository licensed under the Apache License, Version 2.0.