HackerTrans
TopNewTrendsCommentsPastAskShowJobs

jared_stewart

no profile record

Submissions

Show HN: CodeRLM – Tree-sitter-backed code indexing for LLM agents

github.com
81 points·by jared_stewart·vor 5 Monaten·37 comments

comments

jared_stewart
·vor 5 Monaten·discuss
The server exposes a straightforward API so wrapping it in MCP should be straight forward. The agent / skill interacts with the server using the cli implementation (part of the skill definition) at https://github.com/JaredStewart/coderlm/blob/main/plugin/ski...
jared_stewart
·vor 5 Monaten·discuss
Typed languages definitely provide richer signal in there signatures - and my experience has been that I get more reliable generations from those languages.

On the efficiency point, the agent isn't doing any expensive exploration here. There is a standalone server which builds and maintains the index, the agent is only querying it. So it's closer to the deterministic approach implemented in aider (at least in a conceptual sense) with the added benefit that the LLM can execute targeted queries in a recursive manner.
jared_stewart
·vor 5 Monaten·discuss
I see, so the context adapts as the LLM interacts with the codebase across requests?

That's a clever implicit flow for ranking.

The difference in my approach is that exploration is happening within a single task, autonomously. The agent traces through structure, symbols, implementations, callers in many sequential lookups without human interaction. New files are automatically picked up with filesystem watching, but the core value is that the LLM can navigate the code base the same way that I might.
jared_stewart
·vor 5 Monaten·discuss
will take a look at opencode, thanks for sharing!
jared_stewart
·vor 5 Monaten·discuss
Aider's repo-map concept is great! thanks for sharing, I'd not been aware of it. Using tree-sitter to give the LLM structural awareness is the right foundation IMO. The key difference is how that information gets to the model.

Aider builds a static map, with some importance ranking, and then stuffs the most relevant part into the context window upfront. That's smart - but it is still the model receiving a fixed snapshot before it starts working.

What the RLM paper crystallized for me is that the agent could query the structure interactively as it works. A live index exposed through an API lets the agent decide what to look at, how deep to go, and when it has enough. When I watch it work it's not one or two lookups but many, each informed by what the previous revealed. The recursive exploration pattern is the core difference.
jared_stewart
·vor 5 Monaten·discuss
I've been tinkering with it substantially and the most I can say is that it generally doesn't trigger automatically :( Claude has a really, really strong affinity for it's existing tools for exploring a code base.

I'd be happy to add support for scala and java - the current binary size is 11MB on my machine, so I think there's an opportunity to expand what this offers. At this time I don't know where I would draw the line of I'm not planning on supporting a thing. I think to some degree it would depend on usage / availability on my part
jared_stewart
·vor 5 Monaten·discuss
I don't see why it wouldn't - but I'm not familiar with setup / integration on other platforms. Would love to hear more about your stack and see if we can't find a way for you to try it out
jared_stewart
·vor 5 Monaten·discuss
Tree-sitter and LSP solve different problems.

LSP is a full fledged semantics solution providing go-to-definition functionality, trace references, type info etc. But requires a full language server, project configuration, and often a working build. That's great in an IDA, but the burden could be a bit much when it comes to working through an agent.

Tree-sitter handles structural queries giving the LLM the ability to evaluate function signatures, hierarchies and such. Packing this into the recursive language model enables the LLM to decide when it has enough information, it can continue to crawl the code base in bite sized increments to find what it needs. It's a far more minimal solution which lets it respond quickly with minimal overhead.
jared_stewart
·vor 5 Monaten·discuss
anecdotally, it seems like this helps find better places for code to sit, understands the nuances of a code base better, and does a better job avoiding duplicate functionality.

it's still very much a work in progress, the thing I'm struggling with most right now is to have claude even using the capability without directly telling it to.

there seems to be benefits to the native stack (which lists files and then hopes for the best) relative to this sometimes. Frankly, it seems to be better at understanding the file structure. Where this approach really shines is in understanding the code base.
jared_stewart
·vor 9 Monaten·discuss
I've been working to build some tools for detecting and monitoring lookalike domains - the kinds of things used in phishing / brand impersonation attacks.

My current prototype scans potential lookalikes for a target domain and then tracks DNS footprint over time. It's early, but functional - and makes it easier to understand if some lookalike domain is looking more "threat-y".

I've also been working on automating the processing of a parent-survey response for my kid's school using LLMs. The goal is to produce consistent summarization and statistics across multiple years and provide families with a clearer voice and helping staff and leadership at the school best understand what things have been working well (and where the school could improve).
jared_stewart
·vor 9 Monaten·discuss
Location: Denver, CO

Remote: yes

Role: Staff+ Engineer, Tech Lead, Engineering Manager, or Co-founder

I'm a serial builder who thrives in the space between engineering and business. Over the last 10 years I've:

- Designed autonomous driving tech (Mercedes)

- Built threat detection systems + data platforms (Proofpoint)

- Led AI teams tackling real-world problems in support + finance (Velocity Global)

Pattern: I like taking hard technical problems, translating them into real-world value, and iterating fast with whoever's in the room — ops, finance, legal, you name it. I'm most useful where "that's not how we do things" isn't the end of the conversation.

Looking for a team that wants to build ambitious things and have a little fun along the way.

Technologies: Python, Go, SQL, AWS, Kafka, PostgreSQL, Kubernetes, Terraform, LLMs/GPT, Graph ML, Spark

Resume: https://jaredstewart.io/resume/jared-stewart-resume.pdf

Email: [email protected]
jared_stewart
·vor 10 Monaten·discuss
Location: Denver, CO

Remote: yes

Role: Staff+ Engineer, Tech Lead, Engineering Manager, or Co-founder

I'm a serial builder who thrives in the space between engineering and business. Over the last 10 years I've:

- Designed autonomous driving tech (Mercedes)

- Built threat detection systems + data platforms (Proofpoint)

- Led AI teams tackling real-world problems in support + finance (Velocity Global)

Pattern: I like taking hard technical problems, translating them into real-world value, and iterating fast with whoever's in the room — ops, finance, legal, you name it. I'm most useful where "that's not how we do things" isn't the end of the conversation.

Looking for a team that wants to build ambitious things and have a little fun along the way.

Technologies: Python, Go, SQL, AWS, Kafka, PostgreSQL, Kubernetes, Terraform, LLMs/GPT, Graph ML, Spark

Resume: https://jaredstewart.io/resume/jared-stewart-resume.pdf

Email: [email protected]