Sem: New primitive for code understanding – not LSPs, but entities on top of Git
- Developer Tools
- Programming
- AI
- Open Source
- Infrastructure
Sem is a command-line tool for code understanding that sits alongside Git and works at the level of code entities rather than lines. It parses functions, classes, and methods with Tree-sitter, builds dependency graphs across files, and offers commands like impact analysis and structural diffs. The pitch is that this is more useful than raw line diffs for both humans and coding agents because it can answer questions like “what code and tests are downstream of this changed function?” instead of just showing edited hunks.
If you are evaluating coding-agent tooling, the interesting part here is not the benchmark claim. It is the idea of giving humans and models a structural map of a codebase so they can target review, testing, and refactors more precisely. Also, treat install flows that touch Git config or hooks as product-critical UX, because even optional shell setup will trigger backlash if it is unclear.
- ataraxy-labs.github.io
- Discuss on HN