HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
Ataraxy-Labs
sem
Rust2026–2026
Ataraxy-Labs / sem

sem

Semantic version control => entity-level diffs, blame, and impact analysis on top of git. 28 languages via tree-sitter. Built for coding agents.

7Distinct people
15Mentions
0Explicit recommenders
3.5KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Semantic version control => entity-level diffs, blame, and impact analysis on top of git. 28 languages via tree-sitter. Built for coding agents.

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 8–Nov 15 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/15/2026, 5:05:26 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by week15 dated mentions

Observed mentions: 2026-02-05 23:58:02 UTC to 2026-07-13 02:03:56 UTC. Weeks start Monday, UTC.

02462026-02-02 00:00:00 UTC to 2026-02-09 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 commentsFeb 22026-02-09 00:00:00 UTC to 2026-02-16 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-16 00:00:00 UTC to 2026-02-23 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-23 00:00:00 UTC to 2026-03-02 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-03-02 00:00:00 UTC to 2026-03-09 00:00:00 UTC (exclusive): 7 mentions; 2 submissions, 5 comments2026-03-09 00:00:00 UTC to 2026-03-16 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-03-16 00:00:00 UTC to 2026-03-23 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2026-03-23 00:00:00 UTC to 2026-03-30 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2026-03-30 00:00:00 UTC to 2026-04-06 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2026-04-06 00:00:00 UTC to 2026-04-13 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-04-13 00:00:00 UTC to 2026-04-20 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2026-04-20 00:00:00 UTC to 2026-04-27 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsApr 202026-04-27 00:00:00 UTC to 2026-05-04 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-05-04 00:00:00 UTC to 2026-05-11 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-05-11 00:00:00 UTC to 2026-05-18 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-05-18 00:00:00 UTC to 2026-05-25 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-05-25 00:00:00 UTC to 2026-06-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-06-01 00:00:00 UTC to 2026-06-08 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-06-08 00:00:00 UTC to 2026-06-15 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-06-15 00:00:00 UTC to 2026-06-22 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-06-22 00:00:00 UTC to 2026-06-29 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-06-29 00:00:00 UTC to 2026-07-06 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-06 00:00:00 UTC to 2026-07-13 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-13 00:00:00 UTC to 2026-07-20 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsJul 13

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Feb 22026-02-02 00:00:00 UTC2026-02-09 00:00:00 UTC202
Feb 92026-02-09 00:00:00 UTC2026-02-16 00:00:00 UTC000
Feb 162026-02-16 00:00:00 UTC2026-02-23 00:00:00 UTC000
Feb 232026-02-23 00:00:00 UTC2026-03-02 00:00:00 UTC000
Mar 22026-03-02 00:00:00 UTC2026-03-09 00:00:00 UTC725
Mar 92026-03-09 00:00:00 UTC2026-03-16 00:00:00 UTC000
Mar 162026-03-16 00:00:00 UTC2026-03-23 00:00:00 UTC101
Mar 232026-03-23 00:00:00 UTC2026-03-30 00:00:00 UTC101
Mar 302026-03-30 00:00:00 UTC2026-04-06 00:00:00 UTC202
Apr 62026-04-06 00:00:00 UTC2026-04-13 00:00:00 UTC000
Apr 132026-04-13 00:00:00 UTC2026-04-20 00:00:00 UTC101
Apr 202026-04-20 00:00:00 UTC2026-04-27 00:00:00 UTC000
Apr 272026-04-27 00:00:00 UTC2026-05-04 00:00:00 UTC000
May 42026-05-04 00:00:00 UTC2026-05-11 00:00:00 UTC000
May 112026-05-11 00:00:00 UTC2026-05-18 00:00:00 UTC000
May 182026-05-18 00:00:00 UTC2026-05-25 00:00:00 UTC000
May 252026-05-25 00:00:00 UTC2026-06-01 00:00:00 UTC000
Jun 12026-06-01 00:00:00 UTC2026-06-08 00:00:00 UTC000
Jun 82026-06-08 00:00:00 UTC2026-06-15 00:00:00 UTC000
Jun 152026-06-15 00:00:00 UTC2026-06-22 00:00:00 UTC000
Jun 222026-06-22 00:00:00 UTC2026-06-29 00:00:00 UTC000
Jun 292026-06-29 00:00:00 UTC2026-07-06 00:00:00 UTC000
Jul 62026-07-06 00:00:00 UTC2026-07-13 00:00:00 UTC000
Jul 132026-07-13 00:00:00 UTC2026-07-20 00:00:00 UTC101

What Hacker News says

2 sources
Git diffs are great for humans scanning line noise. But agents need to understand changes: "added function X", "renamed symbol Y", "moved block Z". sem computes semantic diffs on top of your Git repo—no repo rewrite needed. Repo: https://github.com/Ataraxy-Labs/sem Key ideas: Parses code to AST, computes tree‑edit ops (add/remove/move/change). Outputs human‑/agent‑readable patches: "diff_sem" shows intent, not whitespace churn. Applies deterministically via git apply --sem—survives formatting shifts or unrelated edits. Use cases popping up: Agent codemods: output semantic patches instead of brittle hunks. Review tools: "explain this PR as semantic changes". Stacked diffs / Graphite: semantic base for stacks. Bulk refactors: apply "rename all X to Y" across noisy repos.
In Show HN: Sem – Semantic diffs and patches for Git
We ran 24 API calls through Claude Sonnet 4.6 - same questions about code changes, same model, same temperature. One gets git diff output. The other gets structured JSON from sem diff. Results: 95.9% accuracy vs 41.5%. The failure modes are systematic, not random: 1. git diff has no concept of "entity." Ask an agent to count added functions and it counts + lines instead. On one commit it reported 238 adds - that was the number of + lines. Actual: 32 entities. 2. No way to distinguish add vs modify. A modified function shows +/- hunks, same as a new function in a changed file. The model listed 9 "added" functions - 4 were actually modified. Precision: 55.6%. 3. No entity type vocabulary. Asked for entity type counts, the model returned {"file": 11}. It counted files because line diffs have no AST. Truth: 15 functions, 12 interfaces, 3 vari
Read the rest
ables, 1 class. 4. Config files are invisible. JSON/YAML changes are just +/- key-value lines. The model doesn't classify them as entities. Missed package.json entirely. 5. Large diffs get truncated. A 3,905-line diff hit the 100KB cap. The model saw partial context and found 25/67 functions (37% recall). Structured JSON is compact enough to fit - 64% recall on the same commit. sem is a Rust CLI (30ms, single binary) that sits on top of git. It uses tree-sitter to parse your code into entities - functions, classes, properties - then does three-phase matching (exact ID, content hash, fuzzy similarity) to classify each change as added/modified/deleted/renamed. Output is JSON. Pipe it into your agent, CI, or whatever. git stays your source of truth - sem just reads from it. brew install sem-diff Benchmark script + full results: https://github.com/Ataraxy-Labs/sem/blob/main/bench/agent-ac...
In Agents should not use Git anymore

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.