WEIPING_WHALE CLI
Небольшой терминальный агент для кода на DeepSeek: правки приходят патчами, а снимок перед каждым ходом дает откат.
- 131 ★ репозитория
- Последний коммит
- MIT
Широкий доступ
Почему такой уровень
- Выполняет команды оболочки с правами пользователя: одобренная команда не ограничена песочницей.
- Пишет файлы в рабочую папку и ведет скрытый снимочный git-репозиторий в `~/.weiping-whale`.
Установка
- Работает в
Ручная установка
git clone https://github.com/appleweiping/WEIPING_WHALE.git && cd WEIPING_WHALE && npm ci && npm linkПакета в npm нет. Нужны Node.js 22.18 или новее и git. Проверка без ключа: `npm run demo`.
Доступ и проверки
Как мы проверяемШирокий доступИнструмент может менять данные, выполнять команды или работать с секретами.
- Выполняет команды оболочки с правами пользователя: одобренная команда не ограничена песочницей.
- Пишет файлы в рабочую папку и ведет скрытый снимочный git-репозиторий в `~/.weiping-whale`.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
WEIPING_WHALE читает репозиторий, запускает команды только после подтверждения и выдает правки патчами, которые вы применяете командой `/apply`. Перед каждым ходом и после него рабочая папка записывается в отдельный git-репозиторий под `~/.weiping-whale`, так что `/undo` откатывает один ход, не трогая ваш `.git`. В составе сессии есть форк и откат разговора, сжатие истории, подсчет стоимости с отдельной ценой для попаданий в кеш, автовыбор между моделями `flash` и `pro` по ключевым словам, субагенты, MCP-серверы через официальный SDK и диагностика LSP после правок. Проект переписывает на TypeScript архитектуру CodeWhale, исходники занимают около 8 500 строк.
Для кого. Разработчикам, которые хотят читать и менять цикл кодового агента.
Подходит, если
- Хочется разобрать, как устроены цикл агента, снимки и очередь подтверждений, на коде в 8,5 тысячи строк.
- Нужен терминальный агент на DeepSeek с ценой каждого хода в строке состояния.
- Каждую правку надо смотреть патчем до применения, а любой ход уметь откатить.
- Стоит попробовать подключение MCP-серверов к небольшому агенту на TypeScript.
Не подходит, если
- Нужен рабочий агент с песочницей на уровне ОС: автор сам советует CodeWhale, Aider или CLI вендоров.
- Нужна установка из npm: пакет там не опубликован, ставят из клона.
- Нужны модели других провайдеров: адреса через `base_url` не проверялись.
Пример запроса к агенту
Найди, почему падает test.mjs, подготовь патч и покажи его до применения.Ограничения
Защита командой оболочки держится на подтверждениях и списках регулярных выражений. Песочницы ОС нет, одобренная команда выполняется с вашими правами. Клиент рассчитан на OpenAI-совместимый чат-API DeepSeek, остальные адреса не проверялись. Цены в `src/cost.ts` со временем устареют, их переопределяют блоком `[pricing]` в конфиге. LSP-диагностика работает для TypeScript, JavaScript и Python при установленных языковых серверах. Демо и тесты проверяют каркас, но не качество правок самой модели. Нужны Node.js 22.18 или новее и git.
Как отключить. Удалите клон и ссылки: `npm unlink` снимает команды `wwhale` и `weiping-whale` с PATH. Данные сессий и снимков лежат в `~/.weiping-whale`, папку можно стереть.
Частые вопросы
Как установить WEIPING_WHALE?
Пакета в npm нет: клонируйте репозиторий, выполните `npm ci`, затем `npm link`, и появятся команды `wwhale` и `weiping-whale`. Нужны Node.js 22.18 или новее и git.
Как откатить неудачный ход?
Команда `/undo` возвращает рабочую папку к снимку перед последним ходом. Снимки лежат в отдельном git-репозитории, поэтому ваш `.git` остается нетронутым. Список снимков показывает `/snapshots`.
Чем WEIPING_WHALE отличается от CodeWhale?
Это переписанная на TypeScript небольшая версия архитектуры CodeWhale для чтения и изучения. Сам автор рекомендует CodeWhale, если нужен рабочий агент с песочницей ОС и большим числом провайдеров.
Нужен ли ключ DeepSeek, чтобы попробовать?
Нет, для знакомства есть `npm run demo`: он запускает поддельный адрес DeepSeek со сценарными ответами и воспроизводит сессию. Для реальной работы задайте DEEPSEEK_API_KEY.
Какие команды оболочки блокируются?
Широкие рекурсивные удаления, команды диска и выключения блокируются всегда. Удаления, перемещения, перенаправления, установка пакетов, `force-push` и `ssh` ждут `/approve`. Остальное выполняется сразу.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
CLI-инструментыОткрытый терминальный агент для кода на Rust: читает проект, правит файлы и запускает команды на любой модели, включая локальную через Ollama
Передает ограниченные задачи кода и тестов безголовому CLI-исполнителю в ветке git и возвращает результат с настоящим diff
MCP-сервер запускает DeepSeek или локальную модель субагентом в Claude Code и Codex с собственным циклом инструментов.
Кодинговый агент на Go для открытых моделей: из беседы делает задачи в отдельных ветках, сам проверяет и вливает результат, ведет все проекты в одном окне
DevChain запускает команду из нескольких ИИ-агентов на вашем компьютере: общая доска, чат, ревью и живые терминалы.
Конфигурация OpenCode v2 на одной модели DeepSeek Flash: агенты, команды и 23 скилла, роли различаются уровнем рассуждения.
Коротко о README
README начинается с демо-сессии, где агент чинит падающий тест, и разбирает цикл агента по восьми шагам: промпт, снимок, маршрутизация, цикл, инструменты, стоимость, сессии, субагенты. Отдельный раздел перечисляет ограничения, а тесты прогоняют восемнадцать сквозных сценариев на поддельной модели.