Основы
Очистка AI-текста
Обнаружение и удаление паттернов AI-письма из текста с использованием признаков AI-письма из Википедии.
Используйте навык Dagu для создания рабочего процесса очистки AI-текста. Обратитесь к справочникам по схеме, coding agent и известным подводным камням для правильного синтаксиса. Спросите у пользователя: - Обработать файл или вставить текст напрямую? (поддержка обоих параметров: input_file и input_text) - Сколько раундов переписывания? (по умолчанию: 2) - Уровень строгости? (low/medium/high, по умолчанию: medium) Предварительные требования: как минимум один установленный AI coding agent CLI (claude или gemini). curl для загрузки справочника из Википедии. Рабочий процесс состоит из 4 шагов: detect_agent, setup, review_loop, finalize. Шаг 1 — detect_agent: Вывести полный путь к бинарному файлу (а не только имя), так как скрипты Dagu могут не иметь полного PATH пользователя. Проверить стандартные расположения, такие как ~/.local/bin/, как запасной вариант. Добавить PATH: "${HOME}/.local/bin:${PATH}" в переменные окружения верхнего уровня. Шаг 2 — setup: - Загрузить последнюю страницу Википедии «Signs of AI Writing» (сырой викитекст) через curl. URL должен быть переменной окружения верхнего уровня, чтобы пользователи могли его заменить. - Подготовить входной текст. Для input_file — cp. Для input_text — использовать `printenv input_text` для безопасной записи в файл. НЕ используйте ${input_text} напрямую в скриптах, потому что Dagu раскрывает переменные до запуска оболочки. См. описание подводного камня с printenv. - Записать все многострочные/пользовательские переменные окружения (WRITING_STYLE, ADDITIONAL_RULES, CHECK_STRICTNESS) во вспомогательные файлы с общим префиксом в DAG_DOCS_DIR. Эти файлы читаются шагом цикла и очищаются в finalize. Шаг 3 — review_loop: Один шаг-скрипт с bash-циклом for (НЕ repeat_policy, НЕ sub-DAG). Цикл выполняется до max_rounds итераций: a. Построить промпт со справочником из вики, стилем (из файла), строгостью (из файла) и текущим текстом. Использовать heredoc-разделитель в одинарных кавычках (<<'INSTR') для системных инструкций, чтобы оболочка не раскрывала их. b. Вызвать AI-агента (CHECK_MODEL, например sonnet) для проверки текста. Первая строка вывода: количество проблем. Остальные строки: обратная связь по каждой проблеме в формате: ISSUE: "<цитата>" | SIGN: <категория> | FIX: <исправление>. c. Сохранить обратную связь в файл для каждого раунда (например, ${P}_feedback_round${ROUND}.txt), чтобы finalize мог включить её в отчёт. d. Извлечь количество. Если 0, немедленно прервать цикл (переписывание не требуется). e. Вызвать AI-агента (REWRITE_MODEL, например opus) для переписывания. Записать вывод напрямую в текстовый файл, перезаписывая на месте. КРИТИЧНО: НЕ ссылайтесь на многострочные переменные окружения, такие как WRITING_STYLE или ADDITIONAL_RULES, напрямую в скрипте — Dagu раскрывает их до запуска оболочки, что может нарушить парсинг. Читайте их из вспомогательных файлов, записанных в setup, через cat. Только простые переменные окружения (пути, имена моделей, числа) безопасны для прямого использования. Шаг 4 — finalize: Собрать полный отчёт с: заголовком метаданных (дата, количество слов, строгость, количество проблем по раундам), затем раздел «Найденные и исправленные проблемы» со списком обратной связи по всем раундам, затем раздел «Итоговый текст» с переписанным текстом. Очистить все вспомогательные файлы, включая файлы обратной связи по раундам. Настраиваемые переменные окружения (все верхнего уровня, легко настраиваются): - WRITING_STYLE: многострочный (|) — инструкции по целевому стилю письма - CHECK_STRICTNESS: low/medium/high - CHECK_MODEL: модель для проверки (дешевле, например sonnet) - REWRITE_MODEL: модель для переписывания (качественнее, например opus) - ADDITIONAL_RULES: дополнительные правила помимо справочника Википедии - WIKI_URL: URL сырого текста Википедии (заменяемый) - WIKI_EXCERPT_LINES: сколько строк вики передавать AI Используйте строго типизированные параметры (name, type, description, default, minimum, maximum). Важно: просмотрите справочник по подводным камням для известных обходных решений. Следуйте справочнику по coding agent для правильных неинтерактивных команд и флагов моделей.
Начало работы
1. Установить Dagu
curl -L https://raw.githubusercontent.com/dagu-org/dagu/main/scripts/installer.sh | bash2. Установить навык Dagu
claude mcp add dagu -- dagu mcp3. Запустить Dagu
dagu start-allПодробнее смотрите в руководстве по быстрому старту