~ knotless Search/
↑↓ move↵ open⇧↵ all results

chadtmiller.com/knotless

git that lives in your Atmosphere account

7
36 lines · 1.3 KB Raw History

Prior art

pds.js @pdsjs/git

@pdsjs/git stored a repository as one record holding every ref, plus a chain of git bundles. Any two pushes to the repository contended on that one record. knotless splits refs into records with a compare-and-swap each, and replaces bundles with self-contained packs that arrive inline with the listing.

Tangled

Tangled keeps git on separate servers ("knots") and the social records in the PDS. knotless keeps git in the PDS as well. Its server, knotless-serve, is optional: a cache that anyone can run and nobody has to trust, and a gateway that only the owners who delegate to it trust.

Anthropic's Scion

Scion ("Redesigning source control at Anthropic", October 2026) replaced git inside Anthropic once agents pushed merges past 30,000 a day. These of its lessons carry over:

  • Clients are online, so fetch by immutable hash through tiers of caches (knotless-serve, the object API).
  • Shared mutable state should be a compare-and-swap on one row (one record per ref).
  • Refs are the scaling problem, so agents should work on their own branches.
  • A working copy is optional (knotless commit).

Cursor Origin

Cursor Origin keeps git's wire protocol and builds the agent-facing forge around it. knotless-serve makes the same bet for reads: plain git clients, with no special client required.