
inTact
Heals file edits that drifted out of date before an agent applied them.
Coding agents edit files by quoting the text they want to replace, and that quote goes stale all the time (a formatter runs, a line wraps, someone else touches the file). inTact heals those edits. It climbs a ladder of seven increasingly forgiving match strategies, stops at the first unambiguous match, tells you which rung it used, and refuses outright when two candidates tie.
I measured it against 59 real edit failures from my own agent sessions. Of the 56 that can be replayed, 42 resolve uniquely, 13 are refused because nothing matches, and 1 because two candidates tie. My false-heal check finds none among the seven pairs it can check, though it missed two wrong heals that had inflated the count to 44 until version 1.2.1 refused them. It ships on PyPI as a library, a CLI, and an MCP server.
$ cat config.txt panel = canvas - warm title = Portfolio $ tact --json check config.txt --old 'panel = canva - warm' --new 'panel = paper - warm' | jq '.results[0] | {ok, rung, fuzz}' { "ok": true, "rung": "FUZZY", "fuzz": 0.9523809523809523 } $ tact edit config.txt --old 'panel = canva - warm' --new 'panel = paper - warm' applied=True drift_detected=False [0] ok=True rung=FUZZY fuzz=0.9523809523809523 range=(0, 1) ambiguous=False overlap=False $ cat config.txt panel = paper - warm title = Portfolio