Top
Best
New

Posted by akshaysg 3 days ago

Show HN: Haystack – Review pull requests like you wrote them yourself(haystackeditor.com)
Hi HN! We’re Akshay and Jake. We put together a tool called Haystack to make pull requests straightforward to read.

What Haystack does:

-- Builds a clear narrative. Changes in Haystack aren’t just arranged as unordered diffs. Instead, they unfold in a logical order, each paired with an explanation in plain, precise language

-- Focuses attention where it counts. Routine plumbing and refactors are put into skimmable sections so you can spend your time on design and correctness

-- Provides full cross-file context. Every new or changed function/variable is traced across the codebase, showing how it’s used beyond the immediate diff

Here’s a quick demo: https://youtu.be/w5Lq5wBUS-I

If you’d like to give it a spin, head over to haystackeditor.com/review! We set up some demo PRs that you should be able to understand and review even if you’ve never seen the repos before!

We used to work at big companies, where reviewing non-trivial pull requests felt like reading a book with its pages out of order. We would jump and scroll between files, trying to piece together the author’s intent before we could even start reviewing. And, as authors, we would spend time to restructure our own commits just to make them readable. AI has made this even trickier. Today it’s not uncommon for a pull request to contain code the author doesn’t fully understand themselves!

So, we built Haystack to help reviewers spend less time untangling code and more time giving meaningful feedback. We would love to hear about whether it gets the job done for you!

How we got here:

Haystack began as (yet another) VS Code fork where we experimented with visualizing code changes on a canvas. At first, it was a neat way to show how pieces of code worked together. But customers started laying out their entire codebase just to make sense of it. That’s when we realized the deeper problem: understanding a codebase is hard, and engineers need better ways to quickly understand unfamiliar code.

As we kept building, another insight emerged: with AI woven into workflows, engineers don’t always need to master every corner of a codebase to ship features. But in code review, deep and continuous context still matters, especially to separate what’s important to review from plumbing and follow-on changes.

So we pivoted. We took what we’d learned and worked closely with engineers to refine the idea. We started with simple code analysis (using language servers, tree-sitter, etc.) to show how changes relate. Then we added AI to explain and organize those changes and to trace how data moves through a pull request. Finally, we fused the two by empowering AI agents to use static analyses. Step by step, that became the Haystack we’re showing today.

We’d love to hear your thoughts, feedback, or suggestions!

85 points | 59 commentspage 2
joloooo 2 days ago|
I immediately thought this was an update by Deepset and their Haystack framework. https://haystack.deepset.ai/

Just FYI.

aqula 3 days ago||
This is a cool problem to solve! especially as more and more code is being generated with AI. But are you pivoting away entirely from code visualization? Curious to hear why it didn't work out.
akshaysg 3 days ago|
We may go back to code visualization for editors, but after testing it with a lot of engineers, we found that it was too confusing for code reviews. The main issue was just how alien the interface is!
ripped_britches 3 days ago||
This is an amazing idea and I would like to try it.

I hope you (eventually) ship something for AR to visualize software components interacting in 3D space

If AI writes all of the code, we will need to max out humans’ ability to do architecture and systems design.

akshaysg 3 days ago|
>If AI writes all of the code, we will need to max out humans’ ability to do architecture and systems design.

Strongly agree with this. There are demos that you're able to try, by the way!

jasonjmcghee 3 days ago||
I have vague recollections of an infinite canvas IDE with the same name.

Are you the same folks that worked on that?

akshaysg 3 days ago|
Yes! We haven't wholly given up on that idea by the way ;)
koinedad 3 days ago||
I love the AI of adding context and logical ordering to PRs! Really cool concept
sea-gold 3 days ago||
Any ideas what pricing will look like?

What is your privacy policy around AI?

Any plans for a locally-runnable version of this?

akshaysg 3 days ago|
1. Pricing would be $20 per person and we'd spin up an analysis for every PR you create/are assigned to review 2. We don't train or retain anything related to your codebase. We do send all the diffs to Open AI and/or Anthropic (and we have agentic grepping so it can see other parts of the codebase as well) 3. Do you mean the ability to run this on your own servers (or even on your own computer with local LLMs)? We do have plans for the former, but I don't know how big the lift on the latter will be so I'm not sure!
perryizgr8 2 days ago||
> We don't train or retain anything related to your codebase.

It would be good to have this mentioned on the website somewhere, as part of a privacy policy. Right now I can't find any details on the site, which is preventing me from trying this out with a production repository.

akshaysg 1 day ago||
Will add this then!
potamic 3 days ago||
This is cool. What are you using to trace data flow?
akshaysg 3 days ago|
We use a mixture of LLMs (e.g. to identify the important variables to trace), language servers (to understand where a variable is originally defined and where it's used).
gobdovan 3 days ago||
Pretty cool. Not from a big firm, but I really like the idea of adding metadata to PRs! One counterintuitive thing about navigation is that I keep hitting the Back button, hoping to go back to `Pull request summary`, which feels like the main navigation page, but nothing happens. You already implement navigation back and forward in history, so why not do it in the browser router too?
akshaysg 3 days ago|
Sorry to clarify: you hit "back" after traversing from the summary but it doesn't go back? If so, that's a bug!

Or do you mean that doing the browser navigation of "back" should bring you to the summary (initial page)?

gobdovan 3 days ago||
Sorry for the confusion! Missing browser navigation is the problem. The virtual back buttons you put in the top left are working as I'd expect browser nav to do. I keep trying to go back, it would feel so natural.
akshaysg 3 days ago||
Ahah! Thanks for the feedback.
rishabhaiover 3 days ago|
[dead]