← На главную

us-vs-them вычисляет, кто написал каждую строку: человек или агент

09.08.2026 15:25 · hackernews

Инструмент us-vs-them вычисляет line-level provenance: кто автор каждой строки — человек или агент. Он работает как библиотека и как CLI-утилита, а данные берёт из истории версий текста.

Зачем это нужно. В эпоху агентского редактирования происхождение текста становится важным. Строки, написанные или отредактированные человеком, почти священны: агент должен хорошо подумать, прежде чем трогать их. Зато текст, который наплодил другой агент, можно переписывать свободно.

Пример: в приложении, собранном в стиле vibe coding, вы хотите выделить куски кода, за которые отвечаете лично, чтобы следующий агент не снёс их. Другой случай — README.md: он сгенерирован, но вступительные абзацы вы переписали. Агент может править нижнюю часть, но к началу не должен лезть.

Важно: никакой специальной разметки не нужно. Обычный plain text и markdown работают как есть. Алгоритм использует только то, что каждая новая версия текста создана под конкретным авторством — человека или агента. В git-репозитории эта история уже есть.

На выходе — диапазоны строк: «острова» человеческого текста в «море» машинного. В основе простой diff. Алгоритм учитывает объединение, разделение и «разбавление» авторства, чтобы не сойтись ни к полностью машинному тексту, ни к полностью человеческому.

Для локального использования нужен bbin. Команда выглядит так: us-vs-them --ours dan@eighttrigrams.net README.md. Она выдаёт, например, 1-3 — 0.00, 4 — 1.00, 5-7 — 0.00, 8-20 — 0.46, 21-164 — 0.00. Тут 1.00 — диапазон целиком написан человеком, 0.46 — изначально человеческий, но переделан агентом, 0.00 — полностью агентский.

Параметры: --ours задаёт людей, --theirs — агентов. Указывать надо одну сторону, ту, где список короче; оба параметра одновременно не принимаются. Разобраться в поведении проще всего на примере caution_test.clj.

Читать оригинал →