Rawdog — ваш личный автономный кодогенератор в терминале

28 июл 2025

Репозиторий давно не обновлялся

Последнее обновление было 1 год назад.

1,804
139
14
1 год

Представьте: вместо того чтобы вручную писать скрипт для анализа CSV-файлов или проверки активных портов, вы просто описываете задачу на естественном языке — и получаете готовое решение. Именно это и делает Rawdog, новый инструмент от AbanteAI, который уже собрал почти 2 тысячи звезд на GitHub.

Что такое Rawdog и зачем он нужен

Rawdog (Recursive Augmentation With Deterministic Output Generations) — это CLI-инструмент, который:

  1. Принимает ваш запрос на естественном языке («Покажи статистику по всем CSV в этой папке»)
  2. Генерирует соответствующий Python-скрипт
  3. Автоматически выполняет его
  4. Возвращает результат

Причем делает это рекурсивно — если в процессе выполнения потребуется дополнительная информация, Rawdog может сам сгенерировать и выполнить новый скрипт для ее получения.

Кому пригодится:

  • Разработчикам, уставшим от рутинных скриптов
  • Аналитикам данных для быстрой проверки гипотез
  • Системным администраторам для мониторинга
  • Всем, кто работает с CLI и хочет ускорить workflow

5 причин попробовать Rawdog прямо сейчас

  1. Мгновенная автоматизация Вместо гугления «как посчитать размер папок в Python»:

    rawdog "Plot the size of all files in current directory"
    
  2. Интерактивный режим Можно вести диалог, уточняя задачу:

    Реклама
    rawdog
    >>> What can I do for you?
    >>> > What ports are currently active?
    >>> > What are the Google ones?
    >>> > Cancel those please.
    
  3. Гибкость моделей Под капотом — litellm, поддерживающий GPT-4, Claude, локальные модели через Ollama и другие LLM.

  4. Контроль безопасности Флаг --leash позволяет предварительно проверять сгенерированный код перед выполнением.

  5. Самодостаточность Rawdog умеет «думать»: если скрипт упал, он анализирует ошибку и пробует снова (до 2 раз по умолчанию).

Как это работает технически

Rawdog использует интересный подход RODOG (Recursive Augmentation With Deterministic Output Generations) — альтернативу традиционному RAG:

  1. Получает ваш запрос
  2. Генерирует Python-скрипт для его выполнения
  3. Запускает скрипт и захватывает вывод
  4. Добавляет вывод в контекст диалога
  5. При необходимости повторяет процесс

Это позволяет решать сложные многоэтапные задачи, которые обычные чат-боты не потянули бы.

Практические примеры использования

  1. Анализ данных

    rawdog "Give me pd.describe() for all CSV's in this directory"
    
  2. Работа с Git

    rawdog "How many folders in my home directory are git repos? Plot them by disk size."
    
  3. Системное администрирование

    rawdog "Find all processes using more than 1GB RAM and show their tree"
    
  4. Настройка окружения

    rawdog "Setup the repo per the instructions in the README"
    

Меры предосторожности

Rawdog — мощный инструмент, но с большой силой приходит и большая ответственность:

  • Всегда проверяйте сгенерированный код перед выполнением (используйте --leash)
  • Не давайте инструменту прав, которые вы не хотели бы ему делегировать
  • Помните, что LLM могут ошибаться — критически оценивайте результаты

Как начать использовать

Установка проще некуда:

pip install rawdog-ai
export OPENAI_API_KEY=your-key
rawdog "Ваш запрос"

Для любителей локальных моделей (например, через Ollama):

# ~/.rawdog/config.yaml
llm_custom_provider: ollama
llm_model: mixtral

Вывод: стоит ли пробовать?

Rawdog — это как личный младший разработчик в вашем терминале. Он особенно полезен для:

  • Прототипирования идей
  • Автоматизации рутинных задач
  • Быстрого получения информации о системе
  • Обучения (можно смотреть, какие скрипты генерирует инструмент)

Если вы часто ловите себя на мысли «надо бы написать скрипт для этого...» — Rawdog сэкономит вам часы времени. Главное — использовать его осознанно.

Проект активно развивается, присоединяйтесь к Discord-сообществу для обсуждения!

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.