Daemon и runtime
Agent не выполняются на серверах Multica — они работают на ваших машинах.
В Multica agent не выполняются на наших серверах — они работают на ваших машинах под управлением небольшой программы daemon, которая вызывает локально установленные AI coding tools. Сервер Multica только координирует: хранит issue, ставит в очередь task и отправляет их в нужный runtime (runtime = daemon × один AI coding tool).
Это главное отличие Multica от Linear и Jira: ваши API keys, toolchain и каталоги с кодом остаются на вашей машине — сервер Multica их не видит. Поэтому «мой agent не работает» почти всегда означает локальную проблему: daemon не запущен, AI coding tool не установлен, ключ истёк. Сначала проверьте локально; см. Troubleshooting.
Запуск daemon
Daemon — часть Multica CLI. После установки Multica CLI выполните на своей машине:
multica daemon startПри запуске daemon делает четыре вещи:
- Читает credentials, сохранённые при входе
- Обнаруживает AI coding tools на
PATH(12 встроенных: Antigravity, Claude Code, Codex, Cursor, Copilot, Gemini, Hermes, Kimi, Kiro CLI, OpenCode, OpenClaw, Pi) - Регистрируется на сервере вместе с runtime для каждого обнаруженного инструмента
- Опрашивает очередь каждые 3 секунды на предмет task для выполнения и отправляет heartbeat каждые 15 секунд
Основные команды:
| Command | Purpose |
|---|---|
multica daemon start | Запуск (по умолчанию в фоне; добавьте --foreground для foreground) |
multica daemon stop | Остановка |
multica daemon restart | Перезапуск |
multica daemon status | Статус |
multica daemon logs | Логи (добавьте -f для follow) |
Полный справочник CLI — в CLI commands.
Desktop app поставляется с daemon. Если вы используете desktop app, не нужно вручную запускать multica daemon start — daemon стартует автоматически. См. страницу Desktop app, какой вариант подходит вашему workflow.
Почему на одной машине несколько runtime
Runtime — это не сервер и не контейнер, а сочетание «daemon × один AI coding tool». Например: вы запускаете daemon на MacBook с установленными Claude Code и Codex и состоите в двух workspace. Multica регистрирует 4 runtime:
Ключевые моменты:
- Один daemon может соответствовать нескольким runtime — по одному на каждую комбинацию установленного инструмента и workspace, в котором вы состоите
- Один и тот же daemon, workspace и инструмент дают ровно один runtime — перезапуск daemon не создаёт дубликатов
- На странице Runtimes в UI Multica перечислены эти строки
Cloud runtime скоро появятся, сейчас waitlist. Когда они станут доступны, вы сможете выполнять task agent прямо в Multica Cloud без локального daemon. Зарегистрируйтесь на download page, чтобы получить уведомление.
Когда runtime помечается offline
Multica использует heartbeat, чтобы определить, online ли runtime. Три ключевых числа:
| Event | Threshold |
|---|---|
| Частота heartbeat daemon | Каждые 15 секунд |
| Помечен как missing | Нет heartbeat 45 секунд (3 пропущенных beat) |
| Автоудаление | Missing без связанных agent более 7 дней |
Missing не постоянен — как только daemon снова отправит heartbeat, runtime возвращается в online, запись сохраняется. Перезапуск daemon не теряет runtime.
Task на missing runtime помечаются failed (причина runtime_offline). Для retryable источников (issue, chat) Multica автоматически ставит их в очередь снова; task от Autopilot не повторяются автоматически. См. Tasks → Which failures retry automatically.
Сколько task может выполняться параллельно
Multica ограничивает параллелизм на двух уровнях:
- Уровень daemon: 20 одновременных task по умолчанию (настраивается через env var
MULTICA_DAEMON_MAX_CONCURRENT_TASKS) - Уровень agent: 6 одновременных task на agent по умолчанию (настраивается per-agent)
Действует более жёсткий из двух лимитов. Если daemon уже выполняет 20 task, новые ждут, даже если у agent ещё есть запас.
Если task застряли в queued и не переходят в dispatched, обычно исчерпан один из этих лимитов.
Что происходит с in-flight task после сбоя daemon
При crash или force-kill daemon task, которые он уже забрал, остаются в dispatched или running. При следующем старте daemon сообщает серверу: «эти task больше не мои, пометьте их failed». Сервер переводит их в failed с причиной runtime_recovery — для retryable источников task автоматически ставятся в очередь снова.
Даже если этот шаг не удался из‑за сети, на сервере каждые 30 секунд работает backstop-скан: любой runtime без heartbeat более 45 секунд помечается missing, и его task reclaim вместе с ним.
Troubleshooting: agent не работает
При проблеме «мой agent не работает» сначала пройдите трёхшаговый checklist:
multica daemon status— убедитесь, что daemon запущен и onlinemultica daemon logs -f— проверьте ошибки- Откройте страницу Runtimes в UI Multica — убедитесь, что runtime показывает «online»
Больше сценариев — в Troubleshooting.
Далее
- Tasks — полный жизненный цикл task после того, как daemon его забирает
- Providers Matrix — различия возможностей 12 AI coding tools
Squads
Squad — группа agents (и опционально human members) под одним leader agent. Назначьте issue squad — leader решит, кто его возьмёт.
Установка agent runtime
Multica управляет теми AI coding tools, что установлены на вашей машине. Эта страница — как установить каждый из 12 поддерживаемых инструментов, чтобы daemon их обнаружил.