[HN Gopher] Codemaps: Understand Code, Before You Vibe It
___________________________________________________________________
Codemaps: Understand Code, Before You Vibe It
Author : janpio
Score : 151 points
Date : 2025-11-04 17:47 UTC (5 hours ago)
(HTM) web link (cognition.ai)
(TXT) w3m dump (cognition.ai)
| bluelightning2k wrote:
| 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.
| sama004 wrote:
| 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
| lord_sudo wrote:
| I'm sorry to hear about that. What version are you on?
| Looking to fix / repro this asap
| swyx wrote:
| (also you can hit "share conversation" or "view response
| statistics" and then "copy request id" and send to
| support!)
| all2 wrote:
| 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.
| swyx wrote:
| first mention i've heard of abacus.ai and IDE. what do you
| think stands out about them?
|
| you might struggle with Windsurf since you're so command line
| heavy. but pro tip - ask for command line work to be done
| inside of Windsurf's Cascade agent. they were first to the
| terminal-inside-aichat pattern and i really like how it's
| much better at command line stuff than i am (or can do the
| legwork to specify command line commands based on a few
| english descriptions)
| all2 wrote:
| > first mention i've heard of abacus.ai and IDE. what do
| you think stands out about them?
|
| Their reasoning agent is better than anything else I've
| used, tbh. The inability to use it in a CLI environment is
| why I stopped using it. They have a router that they hook
| into that "intelligently" chooses models for you in a
| normal "chat" setting. The power comes with their DeepThink
| (or whatever) mode that has a VM hooked up to it, as well
| as many, many well designed agents and internal prompts
| that handle all sorts of interesting things, from planning
| to front-end dev, to reasoning about requirements and
| requirements fulfillment.
| dingnuts wrote:
| 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
| ghurtado wrote:
| Sir, this is a Wendy's.
| gnarlouse wrote:
| Stop, I bruised a rib laughing at this
| chrisweekly wrote:
| https://knowyourmeme.com/memes/sir-this-is-a-wendys
| gslepak wrote:
| I prefer IDEs like Zed that don't lock me in to their ecosystem
| and force me to "log in" to use them.
| gnarlouse wrote:
| `codeium` which is now `windsurf` started out as a vscode
| fork IIRC
| froober wrote:
| Not to be confused with `vscodium` which is an open source
| build of vscode
| gnarlouse wrote:
| 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.
| swyx wrote:
| (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
| bluelightning2k wrote:
| 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.
| swyx wrote:
| acked. you can also open it in a browser window for now https
| ://windsurf.com/codemaps/9e2791c4-0b14-4757-b4be-a71488...
| ChrisbyMe wrote:
| 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
| esafak wrote:
| 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.
| dennisy wrote:
| Looks an interesting enough feature to give Windsurf a try!
| yunyu wrote:
| Great idea. I always end up having to tag the relevant
| files/abstractions anyways to avoid having the LLM produce
| duplicated slop, and something like this makes collecting this
| info much easier.
| rmonvfer wrote:
| This looks awesome. I'm a very heavy Claude Code user (and Codex)
| in both the CLI and VS Code (and now in the web too!) and it's
| quite infuriating when the agent just gets lost after context
| compaction and I have to point it to read CLAUDE/AGENTS.md (and
| update it if a lot of changes have been made)
|
| I tried Windsurf a while back but I'll definitely come back ASAP
| just to play with this and see how it does in a somewhat complex
| project I'm working on.
|
| Kudos to the team!
| asdev wrote:
| 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.
| CharlesW wrote:
| > _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.
| dingnuts wrote:
| it takes longer to explain the context to the model than it
| does to just write the code based on the context I already
| understand, especially since code is more terse than natural
| language
| Jaxan wrote:
| But wouldn't the context also be useful, in written form,
| to colleagues?
| fizx wrote:
| Definitely, iff you have to provide the context with every
| task. If agent memory worked better and across your whole
| team, then providing context might be much easier
| asdev wrote:
| if you know that context, you don't need a codemap
| baq wrote:
| this is possible if you have a couple two-pizza teams.
| beyond that, good luck.
| swyx wrote:
| 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...
| asdev wrote:
| agree that AI can kinda infer business context sometimes. in
| my experience, it doesn't work that well.
|
| a lot of the time, debugging isn't a logic issue, but more of
| a state exploration issue. hence you need to add logging to
| see the inputs of what's going on, just seeing a control flow
| isn't super useful. maybe codemaps could simulate some inputs
| in a flow which would be super cool, but probably quite hard
| to do.
| philippta wrote:
| 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.
| alansaber wrote:
| I really like this kind of applied statistical data
| infrastructure approach, feels much more natural than just raw
| text + immediate HIL
| swyx wrote:
| huh? whats statistical about it? i hope i didnt give the wrong
| impression in the post.
|
| but yes, keeping the human in the loop, in charge, on top of
| the code, is the way to prevent ai slop code
| gnarlouse wrote:
| A few things to point out after reading and thinking about this:
|
| - Another AI firm building products focused on Fortune 500 scale
| problems. If you're not at a F500, this tool isn't necessarily a
| _good_ fit for you, so YMMV.
|
| - static analysis tools that produce flowcharts and diagrams like
| this have existed since antiquity, and I'm not seeing any new
| real innovation other than "letting the LLM produce it".
|
| They say it's ZDR, so maybe I don't fully understand what problem
| they're trying to solve, but in general I don't see the value add
| for a system like this. Also onboarding isn't necessarily just
| presenting flow charts and diagrams: one of the biggest things
| you can do to onboard somebody is level-set and provide them with
| problem context. You _COULD_ go into a 30 minute diatribe about
| how "this is the X service, which talks to the Y service, and
| ..." and cover a whiteboard in a sprawling design diagram, or you
| could just explain to them "this is the problem we're working
| on", using simple, compact analogies where/when applicable. If
| the codebase is primarily boilerplate patterns, like CRUD, MVC,
| or Router/Controller/Service/DB, why talk about them? Focus on
| the deviant patterns your team uses. Focus on the constraints
| your team faces, and how you take the unbeaten path to navigate
| those constraints.
| _jayhack_ wrote:
| > static analysis tools that produce flowcharts and diagrams
| like this have existed since antiquity, and I'm not seeing any
| new real innovation other than "letting the LLM produce it".
|
| Inherent limitation of static analysis-only visualization tools
| is lack of flexibility/judgement on what should and should not
| be surfaced in the final visualization.
|
| The produced visualizations look like machine code themselves.
| Advantage of having LLMs produce code visualizations is the
| judgement/common sense on the resolution things should be
| presented at, so they are intuitive and useful.
| gnarlouse wrote:
| Although I haven't personally experienced the feeling of
| "produced visualizations looking like machine code", I can
| appreciate the argument you're making wrt judgment-based
| resolution scaling.
| jrochkind1 wrote:
| Figuring out new codebases is definitely one of the most
| challenging and time-intensive things I have had to do in my
| jobs.
| stevenkplus wrote:
| 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
| apstls wrote:
| Sounds very cool.
|
| I wanted to try this out, so I opened Windsurf for the first time
| in ages and clicked the "Upgrade Available" button, which sent me
| to: https://windsurf.com/editor/update-linux Did
| you install using apt or apt-get? If so... 1. Update
| package lists sudo apt-get update 2.
| Upgrade Windsurf sudo apt-get upgrade windsurf
|
| Whle `apt-get upgrade windsurf` will technically upgrade
| Windsurf, instructing users to run a command that will attempt to
| upgrade all packages on their system is nuts when the command is
| provided in a context that strongly implies it will only upgrade
| Windsurf and has no warnings or footnotes to the contrary. Good
| thing I didn't ask Windsurf's agent to ugprade itself for me, I
| guess.
|
| EDIT - I don't want to detract from the topic at hand, however -
| after upgrading (with `sudo apt-get install --only-upgrade
| windsurf` :)) and playing around a bit, the Codemaps feature
| indeed seems very nifty and worth checking out. Good job!
| kps wrote:
| So `apt-get upgrade $PACKAGE` has ridiculous semantics that no
| one would expect, and the _actual_ syntax for upgrading a
| package is in neither the man page nor the command help.
___________________________________________________________________
(page generated 2025-11-04 23:00 UTC)