Kandev: как я управляю ИИ-агентами с доски задач и даже из постели
Ещё недавно моя работа с ИИ-агентами выглядела так: виртуалка в облаке, на ней tmux, в нём пять-шесть окон. В одном Claude Code чинит Android-приложение, в другом Codex смотрит дифф, в третьем Gemini что-то исследует, в остальных я уже не помню что. Работало. Но я всё чаще ловил себя на том, что не пишу код и даже не думаю над задачами, а хожу по окнам и проверяю, кто из агентов ждёт моего ответа.
Сейчас всё это живёт в Kandev. Расскажу, какие мои проблемы он решил, как его поставить и почему я выбрал его, а не что-то другое.
Что было не так
Мешали не агенты, а всё, что было вокруг них.
- Не видно, кто ждёт. Агент за пять минут сделал полдела и задал вопрос. Окно где-то в tmux. Я узнаю об этом через час, когда случайно туда загляну.
- Агенты мешают друг другу. Два агента в одном рабочем дереве — это рано или поздно чужой незакоммиченный файл в твоём коммите или ветка, переключённая под носом у соседа.
- Терминал не для телефона. Через SSH с телефона всё технически доступно. На практике набирать ответ агенту в мобильном терминале — мучение, а прочитать дифф там почти невозможно.
- Всё в голове. Какая задача в работе, какая ждёт ревью, что я уже проверил, а что нет, — я держал в голове. Голова для этого плохо подходит.
Что такое Kandev
Kandev — это доска задач (как в Trello или Jira), где исполнители — ИИ-агенты. Открытый проект под AGPL-3.0, ставится к себе, телеметрии нет. Бэкенд — один бинарник на Go, интерфейс открывается в браузере.
Как это выглядит в работе:
- Задача — это карточка. Пишу её как сообщение коллеге: что не так, что хочу, что важно. Выбираю репозиторий и агента. Дальше агент работает сам.
- У каждой задачи своя копия репозитория (git worktree) и своя ветка. Агенты не правят одни и те же файлы и не переключают друг другу ветки, а я могу держать в работе пять задач по одному проекту одновременно.
- Агентов много, и не только одного вендора. Claude Code, Codex, Copilot, Gemini CLI, OpenCode, Auggie, Cursor и ещё полтора десятка. Большинство подключаются через ACP (Agent Client Protocol) — открытый протокол между агентом и интерфейсом. Kandev не подменяет агента своим: при локальном запуске это тот же Claude Code, что и в терминале, с теми же файлами правил, навыками и MCP-серверами.
- Колонки — это статусы. В моём процессе карточка после хода агента уезжает в «Review». Я вижу это сразу, а не через час.
- Ревью внутри. Дифф, файлы, терминал в той же копии репозитория, превью — всё в одном окне. Оттуда же создаётся PR.
- Агент умеет работать с доской. Kandev даёт агенту свои MCP-инструменты: тот может переименовать задачу, сохранить план, задать мне вопрос с вариантами ответа или завести подзадачу. Вопрос приходит в интерфейс, а не теряется в чьём-то окне.
По описанию это обычный менеджер задач. На практике он заметно изменил мой рабочий день.
Разработка из постели
Самым полезным неожиданно оказалось вот что. Kandev работает на виртуалке в облаке и открывается в браузере, поэтому управлять разработкой можно с чего угодно. В том числе с телефона, лёжа в постели.
Вечером я пишу с телефона пару задач. Не код, а нормальный человеческий текст, иногда с опечатками: агенты их прекрасно понимают. Утром смотрю колонку «Review»: что сделано, что агент проверил, где он сомневается. Отвечаю на вопросы, прошу поправить, одобряю. Ноутбук открываю, когда нужно посмотреть что-то внимательно или подумать над архитектурой.
На телефоне это не урезанная версия: тот же дифф, тот же чат, тот же план. Агенту всё равно, откуда пришёл ответ, а компилирует и тестирует всё машина с 32 ГБ памяти, а не телефон.
Работать круглосуточно я не стал, скорее наоборот. Раньше, чтобы ответить агенту на вопрос в одно слово, надо было идти к компьютеру. Теперь ответил и вернулся к своим делам.
Как поставить
Я опишу свою схему: облачная виртуалка с Linux, доступ только через Tailscale. Если вам нужен Kandev только на своём ноутбуке, хватит первого шага.
1. Установка. Я ставил через npm. Сам Kandev — бинарник на Go со встроенным интерфейсом, Node.js ему для работы не нужен:
npm install -g kandev@latest
kandev
Без Node.js можно поставить через brew install kdlbs/kandev/kandev (macOS и Linux) или Scoop на Windows. При первом запуске Kandev создаёт рабочее пространство, процесс «Development» и исполнителей: локальный и Worktree.
2. Служба. На сервере Kandev должен жить сам по себе, а не в моей SSH-сессии:
# systemd-служба пользователя
kandev service install
# работать и без моего входа
sudo loginctl enable-linger "$USER"
3. Доступ снаружи — только для себя. Виртуалка в моей сети Tailscale, и Tailscale Serve отдаёт Kandev по HTTPS только моим устройствам. Сначала стоит привязать Kandev к localhost и закрепить порт: по умолчанию он слушает все интерфейсы, а если порт 38429 занят, берёт случайный. Для службы это две строки в override.conf (systemctl --user edit kandev):
[Service]
Environment=KANDEV_SERVER_HOST=127.0.0.1
Environment=KANDEV_BACKEND_PORT=38429
Потом — Tailscale Serve:
tailscale serve --bg --https=8443 http://127.0.0.1:38429
На телефоне стоит приложение Tailscale, и адрес вида https://<машина>.<сеть>.ts.net:8443 открывается как обычный сайт. Агенты в Kandev запускают команды на сервере, и любой, кто дотянулся до Kandev без входа, в нём администратор. Поэтому без VPN, Cloudflare Access или включённой авторизации выставлять его наружу нельзя.
4. Агенты. Settings → Agents: Kandev сам находит установленные CLI. Каждый CLI один раз авторизуется своим обычным способом (подписка, OAuth или API-ключ) — в терминале на сервере, под тем же пользователем, под которым работает Kandev.
5. Репозитории. Settings → Workspaces → Repositories → Add repository. Там же можно задать скрипты, которые выполняются при создании копии репозитория: например, npm ci.
6. Первая задача. New Task, выбрать репозиторий и агента, исполнитель Worktree, написать, что сделать. Дальше смотреть, как агент работает, и не торопиться с PR, пока не проверили сами.
Грабли, на которые я наступил
- Служба не видит вашего PATH. Systemd не читает
~/.profile. Kandev сам добавляет пару стандартных каталогов, но если агенты и Node.js лежат где-то ещё, служба их «не найдёт». Лечится тем жеoverride.confсо своимEnvironment=PATH=.... - После обновления — переустановить службу. Я обновляюсь через
npm install -g kandev@latest, и после этого нужно ещё раз выполнитьkandev service installи перезапустить службу (kandev service restart): в описании службы записаны версия и путь к бинарнику. Своёoverride.confпри этом сохраняется. Я завёл маленький скриптupdate.sh, который делает всё сразу. В новых версиях обновиться можно и из интерфейса: Settings → System → Updates. - Не все агенты говорят по ACP. Для части нужен адаптер или обёртка. Для одного агента мне пришлось сделать свою обёртку.
- Окружение агента — не ваш терминал. Например, у меня внутри сессий Kandev глобальный префикс npm указывает во временную папку, и
npm install -gставит пакеты туда. Если агент ставит себе инструменты, пусть делает это с явным--prefix. - Общие ресурсы делите явно. Worktree разделяет код, но не машину. Эмулятор Android, порты dev-серверов, память под сборку — общие. У меня в файле правил для всех агентов написано: эмулятор один, сначала проверь, не запущен ли он; чужие процессы не убивай; порты бери выше 3000. Без этого агенты рано или поздно начнут друг другу мешать.
- Копии репозиториев занимают место. История git у worktree общая, но файлы,
node_modulesи результаты сборки у каждой задачи свои. Старые задачи стоит архивировать: Kandev после этого убирает их копии.
Почему он лучше почти всех альтернатив
Инструментов для параллельных агентов за последний год появилось много. Я присматривался к основным. Коротко, как я их вижу:
- Claude Squad — TUI поверх tmux и worktree. Лёгкий и честный, но это всё тот же терминал. С телефона им пользоваться неудобно, и доски задач нет.
- Conductor — красивое приложение с хорошим ревью диффов. Но только для Mac, код закрытый, агентов немного: Claude Code, Codex и Cursor. И смотреть на работу можно только с того Mac, где он стоит.
- Vibe Kanban — ближе всех к Kandev по идее: доска задач, worktree, много агентов. Но компания-автор весной 2026 года свернула работу, и будущее проекта теперь зависит от сообщества.
- Emdash — самый серьёзный соперник: открытый, понимает десятки агентов и умеет запускать их на удалённой машине по SSH. Но это десктопное приложение: агенты могут жить на сервере, а смотреть на них можно только с того компьютера, где стоит клиент. С телефона — нет.
- Облачные агенты (Claude Code в вебе, Codex в облаке, агент Copilot) — ставить ничего не надо, и с телефона работает. Но каждый живёт на своей платформе, а код выполняется в чужом облаке. Окружение там приходится воспроизводить и поддерживать отдельно, и Android-эмулятор с моими настроенными инструментами сам там не появится.
Для меня решило дело не одно свойство, а их сочетание:
- Это сервер, а не приложение. Он работает там, где есть ресурсы и окружение, а смотрю я на него откуда угодно. Ноутбук закрыт — агенты работают.
- Разные агенты вперемешку. Пишет один, ревьюит другой, исследует третий. Если у одного кончился лимит, задачу берёт другой. Ни к кому не привязан.
- Моё окружение — их окружение. Агенты работают на моей машине с моими инструментами и правилами. Файлы
CLAUDE.mdиAGENTS.mdдействуют как есть, ничего переносить не нужно. - Код и данные мои. Открытый код, ставится к себе, телеметрии нет.
- Задачи, а не окна. Доска, статусы, планы, вопросы агентов в одном месте. Это то, чего не хватало в терминале.
Где он уступает
Недостатки у Kandev тоже есть:
- Порог входа. Это инструмент для тех, кто готов настраивать: агенты, исполнители, процессы, профили. Настроек много, и не все очевидны. Если вам нужен один агент на одном ноутбуке, Kandev будет лишним.
- Молодой и быстро меняется. Релизы выходят часто. Иногда что-то ломается, и после обновления приходится разбираться. Мне это не мешает, но для команды я бы закрепил версию.
- Ресурсы. Пять агентов параллельно, каждый со своей сборкой, — это нагрузка. Мне на 8 ядрах и 32 ГБ хватает, на слабом ноутбуке будет тесно.
- AGPL-3.0. Для себя неважно. Если вы собираетесь менять Kandev и предоставлять его как сервис другим, лицензию стоит прочитать.
- Агент — всё ещё агент. Kandev не делает агентов умнее. Он делает удобнее работу с ними. Проверять результат, держать правила и тесты по-прежнему ваша работа. Я писал об этом в статье «Студия из одного человека и ИИ-команды».
Итог
Если вы работаете с одним агентом и вам удобно в терминале, Kandev не нужен. Если агентов несколько, задач больше одной и хочется заглядывать в работу не только из-за рабочего стола, попробуйте. Мне он вернул ощущение, что я руковожу работой, а не бегаю между окнами. А возможность ответить агенту из постели оказалась не баловством, а самым полезным, что он мне дал.
Ссылки: репозиторий Kandev, документация.