Tianshu Harness CLI

Кодинг-агент для терминала и рабочего стола: не засчитывает «готово» без тестов или diff и работает с DeepSeek, GLM, Kimi, Claude, Codex и Gemini

  • 1 149 ★ репозитория
  • Последний коммит
  • Apache-2.0
CLI

Широкий доступ

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

  • Агент сам запускает команды оболочки, правит и откатывает файлы проекта и ходит в сеть к выбранным моделям; в режиме `/yolo` подтверждения отключены
  • Ключи провайдеров хранятся на машине, а вход в Codex идет через аккаунт ChatGPT
  • Удаленное одобрение с телефона или планшета включается отдельно: сеанс агента становится доступен с другого устройства
Все причины и проверки

huiliyi37/tianshu-harness

Установка

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

npx skillfoxx add cli/tianshu-harness

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

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

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

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

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • Агент сам запускает команды оболочки, правит и откатывает файлы проекта и ходит в сеть к выбранным моделям; в режиме `/yolo` подтверждения отключены
  • Ключи провайдеров хранятся на машине, а вход в Codex идет через аккаунт ChatGPT
  • Удаленное одобрение с телефона или планшета включается отдельно: сеанс агента становится доступен с другого устройства

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

Что делает

Tianshu Harness — кодинг-агент на TypeScript с терминальным интерфейсом и настольным приложением на одном ядре. CLI ставится из npm командой `npm install -g tianshu-harness` (нужен Node.js 24 или новее) и запускается командой `tianshu`; прежнее имя `rivet` осталось псевдонимом. При первом запуске открывается мастер `/connect`: в нем выбирают провайдера и вставляют ключ API. Дальше агент читает проект, ищет по коду, правит файлы, запускает тесты и использует языковые серверы: переход к определению и поиск ссылок доступны ему как инструменты, а ошибки типов после правки сразу попадают в контекст модели. Главная идея проекта — слой CVM, «когнитивная виртуальная машина». Цель, состояние, доказательства, ресурсы и условия остановки хранятся в нем отдельно от истории диалога, чтобы агент не терял их по ходу долгой сессии. Цель записана в контракте задачи, а в конце агент вызывает `deliver_task` и выдает отчет: статус сдачи (GREEN, YELLOW или RED), измененные файлы, запущенные проверки и поэлементную сверку с задачей. Без доказательств завершение не принимается. 75 хуков времени выполнения перехватывают типичные сбои модели, например сдачу при первом возражении или потерю цели, а отдельный детектор следит за зацикливанием. Для больших задач есть многоагентные режимы: `/scout` для разведки только на чтение, `/team` для параллельной работы, `/council` для обсуждения несколькими ролями и `/galaxy` для трудных задач, где нужно несколько точек зрения сразу. Команда `/domain` переключает один из 16 «звездных доменов», то есть настроек поведения: один сначала взвешивает выгоды и цену, другой считает работу сделанной, только когда исходная проблема больше не воспроизводится. В сценариях работают `tianshu -p "задача"` для разового запроса, `--stream-json` для потока событий NDJSON и `--goal "цель" --budget 50` для автономного запуска без интерфейса.

Для кого. Для разработчиков, которым нужен терминальный или настольный кодинг-агент с проверкой результата и выбором между моделями DeepSeek, GLM, Kimi, Claude, Codex и Gemini или любым адресом, совместимым с OpenAI.

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

  • Задача большая, и агент обычно теряет цель на середине: контракт задачи и проверка сдачи требуют доказательств, прежде чем принять «готово»
  • Нужен один агент для нескольких провайдеров: DeepSeek, GLM, Kimi, MiniMax, Grok и Gemini по ключу, Claude по ключу через прокси `cc-switch`, Codex через вход в аккаунт ChatGPT, а также Ollama или vLLM
  • Агента вызывают из сценария или CI: `tianshu --stream-json -p "задача"` отдает события в формате NDJSON, а `--goal` ведет цель без интерфейса
  • Чтение и правки надо разделить: `/scout` только исследует код, `/team` делит работу между исполнителями по волнам с проверкой после каждой
  • Опасные действия хочется подтверждать с телефона или планшета: настольное приложение поддерживает удаленное одобрение

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

  • На машине Node.js ниже 24 и обновить его нельзя: для CLI это жесткое требование
  • Вы работаете на Linux с Wayland или с glibc старше 2.35: AppImage рассчитан на glibc 2.35 и новее, Wayland автор пока не проверял
  • Вам нужны руководства на русском: основные документы по командам, провайдерам и разрешениям написаны по-китайски, по-английски есть README и часть страниц
  • Нужен плагин внутрь Claude Code или Codex: Tianshu Harness — самостоятельный агент со своей средой, поверх чужого он не ставится

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

Прочитай проект, найди первый падающий тест, исправь его и покажи отчет сдачи с командами проверки

Ограничения

  • Код открыт под Apache-2.0, но два документа о теории CVM и об испытаниях выпущены под CC BY-NC-ND 4.0: их можно цитировать со ссылкой, но нельзя переделывать и использовать в коммерческих целях.
  • Главные заявления проверял сам автор. Испытание CVM — две группы по пять задач на одной модели, DeepSeek-V4-Flash, без подсказки убеждений и с ней, оценку ставил Claude Opus 4.7; кэш префикса 95–99% тоже измерен на его сессиях. Независимого повтора нет, а влияние убеждений слабеет на этапе исполнения, как отмечает сам автор.
  • Claude подключается только по ключу API через прокси `cc-switch`, модели Codex — через вход в аккаунт ChatGPT по OAuth.
  • Сборка для macOS подписана без нотаризации Apple: если система пишет, что приложение повреждено, выполните `xattr -cr /Applications/Tianshu.app`. Для Windows нужен WebView2 версии 120 или новее, для Linux — `libwebkit2gtk-4.1` и `libgtk-3`.
  • Проект создан 15 мая 2026 года и быстро меняется: пакет уже на версии 3.32.1. Данные лежат в каталоге `~/.rivet` по старому имени.

Как отключить. CLI удаляется командой `npm uninstall -g tianshu-harness`. Настольное приложение снимается обычным способом: на macOS перенесите Tianshu из «Программ» в корзину, на Windows удалите через список установленных программ, на Linux удалите файл AppImage. Данные и настройки остаются в `~/.rivet`, этот каталог удаляют вручную.

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

Это одна программа с Rivet?

Да. Проект раньше назывался Rivet. Основная команда теперь `tianshu`, а `rivet` остался псевдонимом на тот же вход. При переходе со старого пакета `tianshu-tui` его сначала удаляют командой `npm uninstall -g tianshu-tui`, иначе установка нового пакета остановится с ошибкой `EEXIST`.

Что произойдет, если агент объявит «готово» без проверки?

Вызов `deliver_task` запускает проверку сдачи: завершение должно сопровождаться тестами, diff или командой проверки. Без них работа возвращается на доработку, а механические правки проходят автоматически. После коммита действует второй уровень, проверка изменений.

Где посмотреть, что остановил слой CVM?

`/cvm` показывает перехваты в реальном времени, а `/cockpit` с подкомандами `verify`, `advisory`, `model` и `safety` разбирает проверки, подсказки среды, кэш и уровень опасности. Журнал пишется в `sensorium.jsonl`, путь узнают командой `tianshu logs`; полные записи включаются переменной `RIVET_DEBUG_TELEMETRY=1`.

Какие режимы разрешений есть и что с непроверенными проектами?

Три режима: `/permission supervise` спрашивает перед каждым опасным инструментом, `auto` по умолчанию спрашивает только об опасном, `/yes` или `/yolo` отключает вопросы, но включает песочницу и откат. Проект без доверия не загружает хуки, MCP, память и навыки, пока вы не выполните `/trust` или не передадите `--trust`.

Сохраняется ли память между сессиями?

Знания о проекте пишутся в `.rivet/knowledge/memory.jsonl`, и в новую сессию автоматически попадают только правила и ограничения. `/handoff` готовит передаточный документ из пяти разделов, а двойное нажатие Esc откатывает сессию к выбранной точке.

Можно ли подключить локальную модель?

Да, подойдет любой адрес с интерфейсом OpenAI, в том числе Ollama и vLLM. Кроме основных провайдеров есть 25 готовых пресетов, среди них OpenRouter, SiliconFlow и OpenAI. Модель меняется командой `/model` посреди сессии.

Обсуждение

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

Терминальный кодинг-агент на Python в манере Claude Code: читает репозиторий, правит файлы, запускает команды, с памятью, подагентами и MCP

CLIШирокий доступ1 тыс.Звезды репозитория

Плагин терминального интерфейса для DeepSeek Harness: живая строка статуса, потоковое отображение размышлений, откат по двойному Esc, прогресс контекста и TPS

ПлагинРасширенный доступ5,3 тыс.Звезды репозитория

Открытый терминальный кодинг-агент на TypeScript, заточенный под модели DeepSeek и дешевое кеширование

CLIШирокий доступ787Звезды репозитория
Официальный

Linghun — терминальный кодинг-агент с упором на доказательства: читает код перед выводом, проверяет изменения тестами и фиксирует точки git перед правками

CLIШирокий доступ467Звезды репозитория

Rust SDK для агентов программирования и готовый CLI abstract: REPL, 34 инструмента, MCP, граф памяти, Anthropic и OpenAI, вывод JSON для CI

CLIШирокий доступ462Звезды репозитория

Repository Harness ставит в репозиторий файл AGENTS.md, карту документов и явно вызываемые скиллы для онбординга, а затем безопасно обновляет их

СкиллШирокий доступ1,3 тыс.Звезды репозитория

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

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

ЗаписьОфициальныйЗвезды репозиторияГлавное отличие
Tianshu Harness (эта запись)нет1 149
OpenCodeнет220 388открытый агент для программирования в терминале и на десктопе с режимами разработки и планирования
Crushнет28 756терминальный агент от Charm: смена модели посреди сессии, LSP, MCP и Agent Skills
DeepSeek Harnessда258 402официальный агент DeepSeek, в котором все функции устроены как плагины

Коротко о README

В документации описаны установка настольного приложения для macOS, Windows и Linux и терминального CLI, первый сеанс из чтения проекта и многошаговой задачи, три места проверки результата, режимы разрешений, таблица провайдеров и 16 звездных доменов. Рядом лежат руководство пользователя, инструкции по установке, разрешениям, провайдерам и зрению, архитектура, журнал изменений и правила для вкладчиков. Основной текст переведен на английский, японский и корейский. Автор заявляет более 21 тысячи тестов на `node:test`.

Бейдж для README

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

Foxx AITianshu Harness
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.