Join the discussion

Write your take first — we'll ask for email only when you're ready to publish.

  • Hacker News
  • So it is the same thing when I ask Claude to build me mermaid charts of code flows? So no point in this tool?
  • This was my conclusion, too! Over time as agentic coders get better at handling higher-complexity tasks, this kind of bracing will become less and less necessary.
  • Btw, claude code is a lot better at graphviz than mermaid! I have been using it a lot for architecture designs.
  • Feature request: add a Github Action so I can generate a codemap for my repo and throw it on my README. Then update it when major PRs change the codemap.
  • I really like the idea of visualizing code in any other way than text and have given it some thought from time to time. However, I think the problem here can quickly become that you tend to fall in love with a bad idea. No one, and I don't mean that in bad faith, wants to look at these diagrams. Usually they do not communicate the meaning they intend to do, and I find that I have to spend some time understanding what exactly is meant by any type of box or arrow. What people might want to look at is their mental visualization of the code or math they are working on (or their LLM made for them). At least to me, that is much more tied to what the data will look like at runtime and how different parts from different data-structures will interact with each other. If you were to visualize a flutter app, and nowhere in that visualization the tree-like structure of the widget-tree would appear as such, that would collide with my mental model of how such an app functions. This visualization will be induced by reading the code, much like reading a novel will produce pictures in your head. I'm not sure LLMs are the technology that will produce code-movies you would rather watch.
  • for people too lazy to download windsurf to try it, codemaps is also in deepwiki

    example: https://deepwiki.com/search/how-do-react-hooks-work-under_7a...

    this does a pretty good job of going in the weeds of how the useState hook works in react

  • I created a side project ~3 years ago based on a similar idea. It was before LLMs were a big thing, and AI could render the code relationships for you.

    I started with go and java (the two languages I was using in my job) and built AST parsers that would extract the relationships between the classes and functions and draw them with graphviz. Then I created a filter syntax based on regex to filter the graphs.

    I never followed through on the idea to a production ready version, but it helped massively as a personal tool when working on unfamiliar codebases.

    The site is still here, but lots of it is probably broken by now..

    https://packagemap.co

  • I did something similar but for non-classes based language (Go) and in 3D [1]

    But I saw it as next step towards shifting programming from sitting and scanning texts into something more tangible, where developer has broad overview of software, and can work on smaller parts while seeing context of how these parts are connected. Ended up concluding that this stuff should work in VR.

    [1] https://divan.dev/posts/visual_programming_go/

  • Well, interesting idea, but can you trust that it generates it properly? Because if it doesn't, then your understanding of the code will be incorrect, even worse than lack of knowledge; and if you do need to check all the things it has generated for you, as a description - doesn't it defeat the purpose of the tool?
  • Arguably, if you vibe code you don't really care about the code, thus even less about the diagram. So you'll vibe something, get a diagram of something to show your boss, and you can move on.
    by soco
  • (coauthor) happy to take any questions! see 1 min demo video here https://x.com/cognition/status/1985755284527010167

    this is brainchild of cognition cto steven who doesn't like the spotlight but he deserves it for this one https://x.com/stevenkplus1/status/1985767277376241827

    if you leave qtns here he'll see it

    by swyx
  • Do you have any examples/demos for very large codebases? Because it's easy to get decent quality output using LLMs on small codebases. But large, messy codebases is where you really need help with understanding.
  • Less a question and more a strong suggestion: codemaps should be viewable in the main pain. The sidebar is FAR too small. Either default or a button or something to open it like an editor tab.
  • this is the right way to try and tackle this problem imo. too much focus in AI dev tooling has been on building "products" that only half work.

    making codebases understandable to humans, and LLMs etc, is a better approach

    self documenting, interpretable systems would actually solve a lot of dev churn in big companies

    plus it's not like artifacts have to be limited to code once that's figured out

  • I don't think it's a choice; I use both. Code understanding is especially useful in new code bases, but once that's over you need to get work done.
  • A feature like this isn't useful because knowing what connects to what, dependencies, etc. means nothing without business context. AI will never know the why behind the architecture, it will only take it at face value. I think technical design docs which have some context and reading the code is more than enough. This sits in the middle ground where it lacks the context of a doc and is less detailed than the code.
  • > AI will never know the why behind the architecture, it will only take it at face value.

    There is no reason to believe that at some point in the future AI will know the business context for apps when they are vibecoded (because the prompts should contain the business context).

  • > because knowing what connects to what, dependencies, etc. means nothing without business context. AI will never know the why behind the architecture

    since when has coding become so trivial that things are only useful if it helps with the "why" and "business context"?

  • you might be surprised how much business context leaks into a codebase and that's plenty to work on :)

    https://deepwiki.com/search/vimfnfnname-lets-you-call-neov_e...

    but also how much you kinda dont need it when you're just debugging code

    https://windsurf.com/codemaps/87532afd-092d-401d-aa3f-0121c7...

    by swyx
  • > AI will never know the why behind the architecture…

    That's true only if you don't provide that context. The answer is: Do provide that context. My experience is that LLM output will be influenced and improved by the why's you provide.

  • To add to that, a lot of business context is stuck in people‘s heads. To reach the level of a human engineer, the coding agent would have to autonomously reach out and ask them directed questions.
  • I really think more people should give Windsurf a go. It's really good. I'm a senior engineer and do a mix of agentic and regular coding and I really think people are looking past Windsurf.

    As the conversation shifted towards Cursor vs Claude code vs Codex people seem to have stopped mentioning it which is a shame.

    Source: user for 12 months - not a shill.

    Codemaps was a very pleasant surprise when it showed up.

  • I've used it, and I thought it was absolute trash. Goes crazy doing shit I don't want. I spend more time deleting crap I didn't want and reviewing and changing its code than I do just writing it myself.

    I know what you're going to say: I need to learn to use this groundbreaking technology that is so easy to use that my product manager will soon be doing my job but also is too hard for me a senior engineer, to find value in.

    Kindly: no, I trust my judgement, and the data backs me up.

    Have you taken measurements of how many features and bugs you've shipped over the last twelve months or are you just like the engineers in the METR study who self reported an improvement but when measured, had been impaired? What evidence do you have that your attitude is not simply informed by the sunk cost of your subscription?

    Please share your data below

  • I just tried out windsurf yesterday, The only thing I hate for now is that when there are changes and I accept one of them, then trying to accept the others gives an error saying the file was changed
  • I as a big Windsurf advocate, miles ahead of Cursor IMO but I've fully switched to Codex these days. The cloud environments are just such a nice feature.

    Still like Windsurf though their pricing is what drove me to not roll it out across my company.

  • Agreed. I'm back and forth about whether I want to spend the time with an agentic coding editor yet, because it's sitting right on the cusp of distraction/enhancement.

    I've also tried the 3 C's, and it still feels like Windsurf has the net best user experience.

  • I'm surprised that people still aren't discussing Github Copilot baked into VSCode. I pair agent mode + Sonnet 4 + Sequential Thinking + Tavily MCP servers and it works wonders. I recently prototyped the first version of our SaaS with this setup in a minimal amount of time. Also worth nothing, the pricing is extremely reasonable. Free credits + pay per use. I frequently max out the free tier and have never spent more than $40 per month.
  • This is enough for me to give this a go. I've tried a few different tools; abacus.ai (and their IDE), claude CLI, crush-cli. My workflows are still mostly on the command line, and a little in VS Code. I haven't found a flow that works "right", yet.
    by all2
  • I prefer IDEs like Zed that don't lock me in to their ecosystem and force me to "log in" to use them.
  • I co-sign this as a similarly-credentialed person. I use windsurf at work and recently started enjoying Claude Code, but the UX of Windsurf is actually a legit value add. Codemaps especially - been using them for weeks and they're excellent. Ask me again in a year maybe; churn in code could make maintaining codemaps annoying, but even that seems solvable.