{
"path": "/3lzbslvbyu226",
"site": "at://did:plc:2cxgdrgtsmrbqnjkwyplmp43/site.standard.publication/3lxsr74rnk22h",
"$type": "site.standard.document",
"title": "Using jj instead of git with Claude",
"content": {
"$type": "pub.leaflet.content",
"pages": [
{
"$type": "pub.leaflet.pages.linearDocument",
"blocks": [
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"src": "https://alper.nl/dingen/2025/07/keeping-claude-in-check-with-jujutsu/",
"$type": "pub.leaflet.blocks.website",
"title": "Keeping Claude in check with Jujutsu",
"description": "I’ve found it very useful to use jj to continuously and automatically snapshot the changes that Claude makes. This way if it does anything that I didn’t want, it’s incredibly easy…",
"previewImage": {
"$type": "blob",
"ref": {
"$link": "bafkreid7z4a3m6t22lmtyavzel7o4wcmbtk7jfyxhel7lafnr6umpxcf24"
},
"mimeType": "image/png",
"size": 27128
}
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [
{
"index": {
"byteEnd": 20,
"byteStart": 18
},
"features": [
{
"uri": "https://jj-vcs.github.io/jj/latest/",
"$type": "pub.leaflet.richtext.facet#link"
}
]
}
],
"plaintext": "A write up of how jj can be great to use with generative coding. "
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "The last paragraph is telling:"
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.blockquote",
"facets": [],
"plaintext": "I think at this point I kinda forgot how I would do this in git and I’m also not particularly interested in learning it anymore either."
}
}
]
}
]
},
"description": "",
"publishedAt": "2025-09-20T16:32:59.784Z"
}