patina — редактор примет ИИ в тексте

patina

Скилл и CLI убирают приметы ИИ в корейском, английском, китайском и японском тексте и проверяют, что смысл и цифры не изменились

  • 388 ★ репозитория
  • Последний коммит
  • MIT
Скилл

Расширенный доступ

Почему такой уровень

  • Скилл запускает локальный помощник на Node.js через оболочку и читает указанные файлы
  • Для переписывания текст уходит выбранной модели через ее CLI или по вашему ключу
  • Скрипт установки скачивается по сети и выполняется в оболочке
Все причины и проверки

devswha/patina

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add skills/patina

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • Скилл запускает локальный помощник на Node.js через оболочку и читает указанные файлы
  • Для переписывания текст уходит выбранной модели через ее CLI или по вашему ключу
  • Скрипт установки скачивается по сети и выполняется в оболочке

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

patina — редактор текста, который работает по 189 именованным шаблонам ИИ-стиля и правит их, не меняя утверждения, числа, полярность и причинные связи. Он поддерживает корейский, английский, китайский и японский. Для русского языка шаблонов нет. Скилл в Claude Code, Codex, Cursor и OpenCode по умолчанию запускает локальный помощник на Node.js: команда `/patina --lang en` с вставленным текстом переписывает его, а режим `--strict` дополнительно проверяет сохранение смысла. Режимы CLI: переписывание, проверка с порогами верности, только поиск шаблонов, оценка и вывод различий. Флаг `--diff` показывает, какой шаблон что изменил. Правка управляется тремя независимыми осями: тип документа задает жанр и политику шаблонов, персона задает голос по образцу ваших прошлых текстов, регистр выбирает разговорную или деловую подачу. Если ось не указана, исходный стиль сохраняется. Для пакетной работы есть `--batch` с папкой результата, для проверки в CI режим `--score --offline --exit-on 30` без ключа API. Есть также браузерная площадка и платный API, но скилл работает и без них.

Для кого. Для авторов, редакторов и разработчиков, которые пишут по-корейски, английски, китайски или японски с помощью ИИ и хотят убрать машинные обороты, не исказив смысл.

Подходит, если

  • Черновик письма или поста от ИИ звучит шаблонно, а цифры и сроки менять нельзя
  • Нужно понять, какие обороты в тексте выдают ИИ, не переписывая его: режим `--audit` покажет шаблоны
  • Хочется закрепить свой голос: команда `patina persona new` учится на образцах ваших старых постов
  • В репозитории с документацией нужен барьер в CI, который падает, если оценка ИИ-стиля выше порога
  • Одной командой надо обработать папку markdown-файлов и положить результат в отдельный каталог

Не подходит, если

  • Текст на русском: шаблонов для него нет, для русского подойдут отдельные скиллы вроде humanizer-ru из каталога
  • Ожидаете гарантий при проверке детекторами ИИ: автор такого не обещает, позиционирует инструмент как редактор и пишет, что оценки ошибаются в обе стороны
  • Юридический, научный или нормативный текст, где канцелярит и пассив считаются нормой жанра
  • Нужна гарантия подлинности текста: оценка patina служит подсказкой для правки и ничего не доказывает

Пример запроса к агенту

/patina --lang en --document-type email --register professional: перепиши это письмо про дату запуска без шаблонных оборотов и оставь все цифры и сроки как есть.

Ограничения

Нужен Node.js 18.1 или новее. Скилл по умолчанию обращается к проверенному CLI: для переписывания требуется модель-бэкенд, это может быть залогиненный `codex`, `claude` или `gemini` без ключа API (флаг `--backend codex-cli`) либо ваш ключ. Режим `--score --offline` обходится без модели.

В README сказано, что публикация в npm остается отдельным шагом, поэтому `npx patina-cli` может быть недоступна: надежнее ставить через плагин, `npx skills add devswha/patina` или скрипт установки из INSTALLATION.md. Установка через плагин кладет файлы скилла, и запуск среды выполнения стоит проверить командой `node bin/patina.js --version`.

По данным самого автора, шаблоны ловят 67,3% проблемных мест, а ложные срабатывания на текстах людей составляют 16,0%. Автор называет оценки сигналами для правки и не считает их доказательством авторства. Лицензия MIT. Скилл работает только с текстами на четырех языках.

Как отключить. В Claude Code выполните `/plugin uninstall patina@patina`. Установленный скриптом скилл удаляет `uninstall.sh` из репозитория, а ручную установку можно убрать, удалив папку `~/.claude/skills/patina` и символьные ссылки в каталогах Codex, OpenCode и Gemini CLI.

Частые вопросы

Как поставить patina в Claude Code?

Выполните `/plugin marketplace add devswha/patina`, затем `/plugin install patina@patina` и включите автообновление на вкладке Marketplaces. Скилл вызывается командой `/patina --lang en`, после нее вставляется текст.

Чем patina отличается от Humanizer?

patina работает по каталогу из 189 шаблонов с проверкой сохранения смысла и охватывает корейский, английский, китайский и японский. У нее есть режимы оценки, различий и пакетной обработки, а также персоны и CLI для CI.

Гарантирует ли patina результат у детекторов ИИ?

Нет. Автор описывает инструмент как редактор для разрешенной работы с черновиками и ничего не обещает детекторам. Оценки patina он называет сигналами для правки с ложными срабатываниями в обе стороны.

Нужен ли ключ API, чтобы переписывать текст?

Нет, если на машине залогинен `codex`, `claude` или `gemini`: тогда подходит флаг `--backend codex-cli` и подобные. Проверка шаблонов и оценка с флагом `--offline` модель не используют вовсе.

Как научить patina своему голосу?

Командой `patina persona new my-voice --from-sample past-posts.txt` создайте персону по образцам, затем применяйте ее флагом `--persona my-voice`. Персона отвечает только за голос, жанр и регистр задаются отдельно.

Обсуждение

Вопросов и отзывов пока нет.

Скиллы

Скилл для Claude Code, Codex и Cursor: убирает признаки ИИ-письма в тексте и сверяет результат со шкалой человеческих текстов.

СкиллРасширенный доступ66Звезды репозитория

im-not-ai

im-not-ai (humanize-korean)

Скилл-плагин для Claude Code, который переписывает корейский текст, написанный ИИ, в живой человеческий стиль, не трогая смысл

СкиллРасширенный доступ6,5 тыс.Звезды репозитория

Скилл для очистки текста от примет ИИ: чинит структуру художественной прозы и правит рабочие документы по правилам их жанра

СкиллМинимальный доступ3,8 тыс.Звезды репозитория

Скилл и CLI на Node.js оценивают английский текст по шаблонам ИИ-письма и статистике и подсказывают правки от 0 до 100

СкиллМинимальный доступ132Звезды репозитория

Скилл находит приметы машинного текста, переписывает его в выбранном голосе и по желанию дает оценку от 0 до 100

СкиллМинимальный доступ308Звезды репозитория

Скилл находит в английской прозе приметы ИИ и точечно правит их; три Python-сканера работают отдельно, а команда teach учит голосу автора

СкиллМинимальный доступ1 тыс.Звезды репозитория

Сравнение с похожими

Карточки с тем же главным запросом: чем они отличаются.

ИнструментОфициальныйЗвезды репозиторияГлавное отличие
patina — редактор примет ИИ в тексте (эта карточка)нет388
unslopнет1 048правит только английскую прозу и учит голосу автора командой teach
Stop Slopнет18 896короткий скилл со строгими правилами чистки прозы от шаблонных фраз ИИ

Коротко о README

README открывается примером правки письма до и после и ссылкой на браузерную площадку. Затем идут быстрый старт для агента, CLI и Node, таблица трех осей, список команд, конфигурация `.patina.yaml` и таблица фактов с калибровкой. В конце собраны ссылки на документацию, исследования и правила участия.

Бейдж для README

Исходный SKILL.md

---
name: patina
version: "9.1.0"
description: Detect and rewrite AI writing patterns in Korean, English, Chinese, and Japanese text so it reads as if a human wrote it. Meaning-preservation (MPS) verified.
allowed-tools:
  - Read
  - Write
  - Edit
  - Grep
  - Glob
  - AskUserQuestion
  - Task
  - Bash
---

# patina: AI 글쓰기 패턴 제거 오케스트레이터

당신은 AI가 생성한 텍스트에서 AI 특유의 패턴을 찾아 제거하여, 글을 자연스럽고 사람이 쓴 것처럼 만드는 편집자입니다. 처리 언어는 1단계에서 결정된 언어 코드에 따른다.

---

## 0단계: 실행 경로 결정 (라우팅)

이 스킬에는 두 실행 경로만 있다. 요청을 처리하기 전에 경로를 하나 선택하고, 선택한 경로 밖으로 절대 빠져나가지 않는다.

### 기본 경로: 검증된 CLI 실행

`--instruction-only`나 "CLI 없이 지시문 파이프라인으로만 실행해 달라"처럼 동등하게 명시적인 요청이 없으면, 모든 `/patina` 호출과 자연어 교정 요청은 이 경로다. `--strict`도 이 경로에서 같은 검증 재작성을 뜻한다.

실행 절차:

1. 설치된 `SKILL.md`의 실제 부모 디렉터리를 스킬 디렉터리로 정한다. 호스트가 스킬을 심볼릭 링크로 연결한 경우에도 링크 위치가 아니라 실제 설치 위치를 기준으로 한다.
2. 기존 입력 파일은 실제 사용자 원본 경로를 그대로 헬퍼의 `--input`에 전달한다. 미리 복사하지 않는다. 헬퍼가 비공개 스냅샷을 만들고 실행 후 원본 파일의 변경 여부를 직접 확인한다. 붙여 넣은 텍스트만 호스트의 파일 도구로 비공개 임시 파일에 기록하고, 처리가 끝나면 그 임시 파일을 지운다. 원문 내용을 명령행 인자로 전달하지 않는다.
3. 호스트의 명령 실행 도구로 헬퍼를 실행한다.

```sh
node <skill-directory>/bin/patina-skill.js --input <source-file> [--lang ko] [--backend codex-cli]
```

지원 플래그는 헬퍼의 `--help` 출력이 전부다. `--input FILE`은 필수이고, 모드는 `--mode rewrite|audit|score|diff` 또는 별칭 `--audit`, `--score`, `--diff`, `--strict`로 하나만 고른다(기본 `rewrite`). 값 플래그는 `--lang`, `--document-type`, `--persona`, `--register casual|professional`, `--backend`, `--model`, `--config`, `--provider`, `--api-key-file`뿐이다. 모드 플래그를 겹쳐 쓰면 사용법 오류로 거부된다. 여기 없는 옵션은 존재하지 않으므로 새로 만들어 내지 않는다.

Сообщить о проблеме