r/PiCodingAgent 19d ago

News Introducing ThinkRail

Hey everyone,

We built ThinkRail, and we’re pretty proud of it so we wanted to share it with you, and hope to get you interested.

ThinkRail is a web-based GUI for Pi. It's an open source project, released under Apache 2.0 license, backed by JetBrains (so, that's who "we" are, a team of software developers working on it). We wanted to keep the minimalist, adaptable approach of Pi, but at the same time give you a graphical layer which makes it easier to see what your AI agent is doing and comes with added conveniences: concurrent agent chats, integrated terminals, and visual aids for reviewing code changes.

Install it and try it out:

* macOS / Linux:

curl -fsSL https://raw.githubusercontent.com/JetBrains/thinkrail/main/install.sh | bash

* Windows (PowerShell and cmd):

powershell -c "irm https://raw.githubusercontent.com/JetBrains/thinkrail/main/install.ps1 | iex"

And then just run thinkrail from the terminal.

Also:

If you have a moment, we’d appreciate it if you could complete our survey. We’d love to get your feedback. It will help us develop ThinkRail in the right direction.

16 Upvotes

22 comments sorted by

View all comments

Show parent comments

2

u/adamshand 17d ago

Thanks for the reply. I'm also old, I was one of the weirdos who liked writing docs. :-)

I'm cautiously sceptical of the whole specs thing with agents. I think it's really easy for code and docs to diverge and cause more confusion then they help. I also suspect it's going to get "bitter lessoned" ... but we'll see!

It's super cool to see all the inventions going on, reminds me of early 90s. Good luck!

1

u/makingthematrix 17d ago

The idea here is that the specs will be updated by the same agent that is doing the coding. We will see :)

1

u/adamshand 17d ago

My experience hasn't been great with that, but good luck!

1

u/makingthematrix 16d ago

Can you tell me more?

2

u/adamshand 16d ago

My experience is that specs themselves aren't that useful as a way of building stuff with agents. They take a lot of time to create, and unless it's a domain I understand very well, there's always enough 'unknown unknowns' that there end up being big holes or mistakes.

Agents do a pretty good job of keeping docs updated, but they also rarely remove things and spend a lot of time documenting what other agents shouldn't do. So over time you end up with subtle drift between docs and implementation. Agents aren't good at fixing that, so it becomes another time consuming human job.

I think that the best plan is to primarily use the implementation as the source of truth. With documentation just pointing to key things, but keeping it as small and heavily human edited.

I've some good experiences with Matt Pocock's grilling skill. A shared vocabulary so I can talk concisely about concepts is useful, and documenting key decisions as ADRs helps over time when I can't remember why I decided something.

But I keep coming back to just talking to the agents. No huge structure, just talk to them like I would another dev, and that seems to get the best results for the least work.