hivedesk

Темы из приложения

Скачать
1.0Агенты, GPU и экраны в общем доступе, напрямую по P2P



Рабочее P2P-пространство, где ИИ-агенты работают сообща на всех ваших компьютерах.

Настольное приложение даёт всё: модели на вашем GPU, раздачу ресурсов из трея и удалённое управление. Что работает во вкладке браузера

Ваш ПК и ПК друга как два здания на парящих островах вашего City, соединённые мостом с зашифрованными задачами, пока GPU друга одалживает ходы.
Ваш ПК Шифрованный P2P ПК друга с GPU Ваш City

Фильм о 1.0

Всё о 1.0 меньше чем за четыре минуты, записано в настоящем приложении. Текст на экране на португальском.

Как это работает

Один City.
Все компьютеры, которым вы доверяете.

Ваш ПК становится первым зданием. Друзья приносят свои. Агенты живут в комнатах, берут задачи и думают на той машине, которую выберет планировщик, всегда в пределах того, что разрешил владелец.

  1. 1

    Создайте свой City

    Запустите hivedesk. Ваш ПК становится зданием с комнатами, где работают агенты: Design, Code, Review, Test, Ops и Library.

  2. 2

    Пригласите друга

    Поделитесь шестью словами. Вы оба сверяете проверочные слова, вы решаете, что ему можно, и его машина вырастает рядом с вашей.

  3. 3

    Агенты берут задачи

    Архитектор проектирует, разработчик пишет код, QA запускает тесты, а ревьюер читает diff. Неудача возвращается автору, не больше 3 раз.

  4. 4

    GPU взаймы

    Если модель не помещается на вашей машине, планировщик просит у GPU друга аренду, объясняет почему и останавливается, как только любой из вас скажет «стоп».

City

City и есть система.
В нём нет ничего для красоты.

Здания здесь обозначают машины, комнаты служат местами со своими инструментами, а каждая задача проходит по комнатам на пути к завершению. Каждое число измерено, а если нет, панель так и пишет: не измерено.

City в демо-режиме: ваше здание на парящем острове с комнатами Design, Code, Review, Test, Ops, Library и Lobby, башня друга за мостом, доска задач и лента событий.

Комнаты с правилами. Пока агент работает в комнате, его инструменты ограничены инструментами этой комнаты. Доска задач показывает каждую задачу, её состояние и цикл, на котором она находится.

Снимки экрана hivedesk 1.0 в демо-режиме, где каждое событие по сценарию помечено.

Пригласите друга

Шесть слов.
Две проверки. Один клик.

Слова находят друг друга через ретранслятор и создают зашифрованную сессию. Затем на обоих экранах появляются одинаковые проверочные слова, и ничего не передаётся, пока вы не примете приглашение.

  1. Приглашение
  2. Подключение
  3. Рукопожатие
  4. Проверочные слова
  5. Разрешения
  6. Добро пожаловать

Ваш экран

Слова приглашения

honeyorbitlamprivergardencopper

Действует один раз, 10 минут.

Проверка ключей

Проверочные слова

tigervelvetanchormapleribbonocean

Эти слова совпадают на экране Ana?

Что можно Ana

Ana присоединилась к вашему City

p2p.join accepted, grants: city.view

Экран Ana

Ожидание слов

Войти по словам

honeyorbitlamprivergardencopper

Поиск друг друга через ретранслятор

Проверочные слова

tigervelvetanchormapleribbonocean

Ожидание вашего подтверждения

Вы в City

Это симуляция на странице: ничего не отправляется. В приложении приглашение сгорает при первом начатом на нём рукопожатии, удачном или нет, а неверное слово означает новое приглашение.

GPU взаймы

Аренда, лимит
и кнопка «Стоп».

Общий доступ выключен, пока владелец его не включит, отдельно для GPU и CPU, с лимитами на память, задания и время. Одолженное задание держит аренду на 15 секунд, которая продлевается, пока идут токены, а собственные ходы владельца всегда идут первыми.

Задаче нужна

Ваш ПК

GPU 6 ГБ
Память GPU1.8 of 6.0 GB
Загрузка GPU6%
Загрузка CPU12%
Свободная RAM9.0 of 16 GB

Измерено на этой машине

Планировщик

    Выберите, что нужно задаче, и запустите.

    ПК Ana

    GPU 12 ГБ
    Память GPU1.6 of 12 GB
    Загрузка GPU3%
    Загрузка CPU8%

    Данные от ПК Ana

    Симуляция с примерными числами. В приложении каждое число берётся из датчика на той машине (утилита производителя GPU, счётчики производительности Windows или ядро Linux), числа друга помечены как переданные им, а значение, которое нельзя прочитать, помечено как не измеренное.

    Рабочая среда

    Настоящая среда для кода.
    Файлы, поиск, терминал и git.

    Открывайте выбранные вами папки рядом с рабочим пространством команды. Каждая папка выдаётся как разрешение, которое можно отозвать, а команда пишет только туда, куда вы разрешили.

    Проводник и редакторы

    Создание, переименование, перемещение и удаление. Вкладки в разделённых группах, до трёх, диагностика, переход к определению и символы для JavaScript и TypeScript. Перед удалением папки вас попросят подтвердить, сколько в ней файлов.

    Поиск и замена

    По всем файлам, с регулярными выражениями, учётом регистра, поиском целого слова и шаблонами включения и исключения. Замена сначала показывает diff для каждого файла и пропускает файл, который с тех пор изменился.

    Терминал

    Настоящий терминал на Windows и macOS. На Linux нужна сборка его нативной части, иначе работает простой терминал через каналы, с соответствующей пометкой. Агенты никогда не получают терминал.

    Контроль версий

    Статус, diff, индексирование и его отмена, сброс изменений, коммит, ветки, checkout, stash и журнал в одной панели.

    Общий терминал

    Позвольте другу смотреть или печатать 5, 15 или 60 минут. На вкладке видны значок общего доступа и кнопка завершения, а журнал аудита считает байты, но никогда не записывает текст.

    Code together

    Общие документы с курсорами обоих поверх той же зашифрованной сессии. Правки друга ждут вашего одобрения, в том числе новые файлы.

    Удалённый экран

    Смотрите экран друга.
    Управление, только когда он разрешит.

    10-значный адрес находит машину, но паролем не является: владелец видит, кто звонит, вместе с его проверочными словами, и все флажки изначально сняты.

    • Выключено, пока вы не разрешите. Машина отвечает на свой адрес, только пока включён параметр «Разрешить партнёрам подключаться к этому компьютеру», а по умолчанию он выключен.
    • Каждое разрешение истекает. 5, 15 или 60 минут, только просмотр, если не отмечено управление, и 60 секунд на ответ на запрос.
    • Аварийная кнопка. Пока экран показывается, виден баннер с кнопкой «Стоп», а Ctrl Alt Shift K завершает всё в Windows.
    • Никакого ввода на заблокированном экране. Пока экран заблокирован, зритель видит карточку, а все нажатия клавиш отбрасываются.
    • Несколько экранов, пресеты качества и чат. Текст и изображения через буфер обмена, а также файлы до 2 ГБ, которые докачиваются с места остановки.
    • Доступ без подтверждения, если вы его настроите. Для известных пиров с паролем; после 5 неверных попыток он блокируется на 15 минут.

    И с телефона тоже. Свяжите телефон по QR-коду в окне hivedesk, а затем одобряйте, общайтесь в чате и следите за задачами с него. У каждого телефона свои разрешения.

    Где управление работает в 1.0: Windows, а также Linux на X11 с установленными xdotool и loginctl. На macOS только просмотр, потому что для управления нужно подписанное приложение, а загрузки пока не подписаны. На Wayland тоже только просмотр.

    Модели

    Подходящая модель для каждой машины.
    И счётчик для гигантских.

    Каталог из 57 моделей с открытым кодом, от 0.5B до 72B параметров, для кода, рассуждений и чата, каждая в квантованных файлах от 2 до 8 бит. hivedesk рекомендует модель под ваше железо и спрашивает перед любой загрузкой, показывая размер, лицензию и источник.

    Гигантская модель вскладчину с друзьями

    Модели 70B в 4 битах нужно около 45 ГБ вместе с контекстом. Столько нет ни у одного домашнего ПК, а у City может найтись.

    Экспериментально, по умолчанию выключено
    1

    Общая память GPUОбщая RAMЧто нужно модели

    Собрано 27 ГБ, нужно 45 ГБ: не хватает 18 ГБ.

    В приложении счётчик считает по-настоящему: память GPU и RAM отдельно, скорость памяти CPU и один сетевой обмен туда и обратно на каждую удалённую машину для каждого токена, и он разблокируется только при скорости от 1 токена в секунду. Объединение входит в 1.0 как экспериментальный переключатель, по умолчанию выключенный: модель работает на машинах друзей, которые это разрешили, через зашифрованное p2p-соединение, и её скорость зависит от сетевого соединения между ними.

    Плейбуки

    Около 500 экспертных плейбуков.
    Самые подходящие для каждой задачи.

    Лендинги, формы с валидацией, README, планы тестирования, доступные компоненты, сообщения git и многое другое, у каждого есть шаги, планка качества, подводные камни и проверки. Перед началом задачи самые близкие плейбуки выбираются по релевантности ключевых слов, роли и комнате, и их проверки запускаются в QA.

    app-types 55practices 65ui-components 55web-pages 51stacks 50review-qa 42design 42data 40roles 35planning 32git-docs 30

    1. Введите задачу, чтобы увидеть, что будет выбрано

    Безопасность

    По умолчанию всё запрещено.
    Каждое право названо, выдано, ограничено по времени и записано.

    Решает движок машины, которой принадлежит ресурс, а не вкладка браузера. Гость не может выбрать вашу модель, открыть оболочку или увидеть файл, которым вы не поделились.

    Идентичность на каждую установку в щите, все разрешения выключены по умолчанию, кроме просмотра City, и журнал аудита, где каждая строка связана с предыдущей.

    Своя идентичность у каждой установки

    Ключ Ed25519, который людям показывается как шесть слов отпечатка. Нечитаемый ключ считается ошибкой и никогда молча не заменяется новой идентичностью.

    Сгорающие приглашения

    Шесть слов, 66 бит, одно использование, 10 минут; приглашение сгорает при первом начатом рукопожатии. Затем проверочные слова на обоих экранах и ваше «Принять».

    Разрешения выключены по умолчанию

    Когда друг присоединяется, отмечено только «Видеть City». GPU, CPU, RAM, хранилище, терминал, экран, буфер обмена и файлы выдаются отдельными разрешениями с лимитами; разрешения на экран и терминал заканчиваются не позже чем через 60 минут.

    Аренда со сроками

    Одолженное задание держит аренду на 15 секунд, которую продлевают сигналы heartbeat, а также жёсткий срок и лимит токенов. Оно выполняется только на локальной модели того, кто одалживает, и никогда на его облачном ключе.

    Журнал аудита с хеш-цепочкой

    Присоединения, разрешения, отзывы, задания и удалённые сессии, по месяцам, каждая строка связана с предыдущей. Журнал никогда не хранит слова, ключи, промпты или ответы.

    Сквозное шифрование

    X25519 и HKDF для ключей, ChaCha20-Poly1305 для каждого кадра, смена ключей каждые 60 минут. Ретрансляторы передают только шифротекст.

    Ответы с другой машины считаются недоверенными. Любой вызов инструмента из хода, который обслужил GPU друга, требует вашего одобрения в любом режиме одобрения, в том числе для новых файлов.

    Приложение или браузер

    Что где работает.
    Без сюрпризов.

    Настольное приложение и npx hivedesk запускают один и тот же движок на вашей машине; разница только в окне. Веб-страница сама по себе работает в песочнице браузера, поэтому ничего из этого не умеет.

    ФункцияНастольное приложениеВкладка браузера с npx hivedeskТолько браузер, без установки
    Локальная модель на вашем GPUДаДа. Движок работает в Node.js на вашей машине; вкладка только показывает его.Нет. Веб-страница не может запустить нативную программу или загрузить с диска файл модели в несколько ГБ.
    Общий доступ к GPU и CPUДа, даже с закрытым окном: приложение продолжает работать в трее.Да, пока вкладка открыта. P2P-соединение работает в окне, а браузеры замедляют или замораживают фоновые вкладки.Нет. Нет движка, которым можно поделиться.
    Удалённое управлениеWindows и Linux на X11. На macOS только просмотр, пока приложение не подписано.Просмотр работает в браузерах на основе Chromium. Управление, системный буфер обмена и вставку файлов обеспечивает помощник ввода, как и в приложении.Нет. Страница не может двигать мышь или нажимать клавиши в вашей системе.
    Переключение мониторовДа. Зритель просит, хост выбирает экран.Да, но браузер каждый раз просит хоста выбрать экран в своём диалоге: страница никогда не может выбрать экран сама.Нет
    Терминал (PTY)Да на Windows и macOS. На Linux, если собирается его нативная часть, иначе простой терминал с пометкой.Так же: терминал работает в движке.Нет. Страница не может запустить оболочку.
    Доступ к файловой системеПапки, которые вы добавили, через системный диалог выбора папки.Те же папки. Путь вводится вручную, потому что у страницы нет системного выбора папки.Только файлы, которые вы выбираете или перетаскиваете по одному, как требуют правила браузера.
    Ctrl Alt DelНикогда не передаётся на удалённую машину. Windows резервирует это сочетание для защищённого экрана входа, поэтому hivedesk намеренно отбрасывает его, а также Win+L.Никогда не передаётся. К тому же ваша система перехватывает его раньше, чем его увидит любая страница.Нет
    УведомленияСистемные уведомления от приложения.После разрешения в браузере и только пока вкладка открыта; иначе на странице.Нет
    Работа в фонеДа. Закройте окно, и приложение останется в трее с пунктами «Открыть», «Пауза» и «Выход».Движок продолжает работать в своём терминале, но пирам нужна открытая вкладка, а уснувшая вкладка может застопорить одолженное задание.Нет. Закрытие вкладки всё завершает.

    Для полного опыта рекомендуется настольное приложение. Окно приложения использует системный веб-движок, а на macOS и Linux показ экрана открывается в вашем браузере на основе Chromium, потому что эти веб-движки не умеют надёжно захватывать экран.

    Скачать

    Постройте свой City.
    Бесплатно, с открытым кодом, на ваших машинах.

    Настольное приложение даёт весь hivedesk: модели на вашем GPU, раздачу ресурсов из трея, удалённое управление и системные уведомления. Каждая загрузка несёт свой Node.js, так что заранее ничего ставить не нужно.

    Ваша система

    Windows

    hivedesk-setup.exeWindows 10 и 11, x64

    Скачать для Windows

    Запустите его: он устанавливается для вашего пользователя, без прав администратора, и скачивает приложение. Для машины без сети возьмите офлайн-установщик. У него нет подписи кода платным сертификатом, поэтому SmartScreen пишет «Windows защитила ваш компьютер»: нажмите Подробнее, затем Выполнить в любом случае.

    Ваша система

    macOS

    hivedesk-macos.dmgApple Silicon и Intel

    Скачать для macOS

    Откройте dmg и перетащите hivedesk.app в Программы. Приложение не заверено платным сертификатом: в первый раз откройте Системные настройки, Конфиденциальность и безопасность и нажмите Всё равно открыть.

    Ваша система

    Linux

    hivedesk-linux-x86_64.AppImagex64 или пакет

    Скачать для Linux

    Выполните chmod +x для файла, затем запустите его. Или используйте скрипт установки, который проверяет SHA-256 и ставит в ~/.local, либо .deb и .rpm на странице релизов. Окну нужен WebKitGTK; без него hivedesk откроется в браузере.

    или выполните
    npx hivedesk
    Все версии

    Установленные приложения обновляются сами: сначала проверяют подпись Ed25519 у манифеста обновления, затем спрашивают: Обновить сейчас, При закрытии или Напомнить позже. Установщики не подписаны платными сертификатами, поэтому SmartScreen и Gatekeeper спрашивают один раз; модель скачивается только после вашего согласия. Для npx hivedesk нужен Node.js 20 или новее, а окно открывается в вашем браузере.

    Из терминала

    У каждой части City есть команда: hivedesk invite, hivedesk join, hivedesk peers, hivedesk share, hivedesk city и hivedesk doctor --p2p, которая проверяет ретрансляторы, ваши порты и тип вашей сети.

    npm i -g hivedesk

    Исходный код

    Читайте каждую строку, открывайте issues, присылайте pull request. Звезда помогает другим найти проект.

    Честно об ограничениях

    Чего 1.0 не умеет.
    Пока или намеренно.

    Каждый пункт помечен и в приложении. Ничего здесь не подделано под готовое.

    Пирам нужно окно

    Через интернет P2P-соединение работает в окне приложения или во вкладке браузера. Пиру без окна нужна нативная часть WebRTC, которая ещё не собрана; в одной сети hivedesk invite --lan работает из терминала.

    Нет TURN-сервера

    Две очень строгие сети могут не соединиться. hivedesk doctor --p2p покажет, на чьей стороне проблема, а два пира в одной сети могут использовать LAN.

    Пока без подписи

    Загрузки не подписаны и не прошли нотаризацию. Поэтому удалённое управление на macOS ограничено просмотром, а система предупреждает вас перед первым запуском.

    Одна модель на машину друга

    Машина друга обслуживает только загруженную в ней модель. Она никогда не меняет модель владельца и никогда не скачивает модель для пира.

    Гигантские модели: экспериментально

    Объединить одну модель на машинах друзей через зашифрованное p2p-соединение можно уже в 1.0, но по умолчанию это выключено, и скорость зависит от сетевого соединения между машинами.

    Малые модели медленные

    Работники по очереди используют одну модель, поэтому задание занимает минуты. Только на CPU модель пишет несколько токенов в секунду. Большие приложения за один заход недостижимы.

    На что способно ваше железо

    ЖелезоКакая модель работаетСкоростьПодходит для
    Без GPUМодель для кода 0.5B или 1.5B, или 3B при 16 ГБ RAMМедленно, несколько токенов в секундуНебольшие задачи в одном файле. Придётся подождать.
    GPU с 4 до 7 ГБМодель для кода 3B, целиком на GPUТерпимоНебольшие задачи, компоненты, скрипты, тексты.
    GPU от 7 до 10 ГБ или GPU другаМодель для кода 7BХорошоНебольшие и средние задачи, если вы направляете.
    10 ГБ или больше, или ключМодель для кода 14B, более крупная модель в локальной среде, которой вы уже пользуетесь, или облачная модель с вашим API-ключомБыстрееБолее крупные работы и длинные планы.

    Ваши файлы остаются на вашей машине. GPU друга видит только промпты и ответы заданий, которые вы ему отправляете, и никогда ваши файлы, инструменты или память. Сеть используется только для того, что вы включаете сами: друзья и их разрешения, GitHub, облачные провайдеры с вашим собственным ключом, расширения по URL и распознавание речи браузера в голосовом режиме.

    Вопросы

    Вопросы,
    простые ответы.

    Нужен ли аккаунт или API-ключ?

    Нет. По умолчанию используется модель, которая работает на вашей машине, а друзья подключаются к вам напрямую. Ключи необязательны и нужны, только чтобы использовать свой API-ключ для облачной модели; они хранятся в хранилище ключей на вашей машине.

    Может ли друг видеть мои файлы?

    Только если вы отметите для него «Читать рабочее пространство». Когда друг присоединяется, включено только «Видеть City». Предложенные им правки ждут вашего одобрения, в том числе новые файлы.

    Что видит GPU друга, когда я его одалживаю?

    Промпты и ответы отправленных ему заданий, и больше ничего: ни файлов, ни инструментов, ни памяти. Его владелец может остановить любое задание, а любой вызов инструмента, пришедший из его ответа, требует вашего одобрения.

    Нужно ли настольное приложение?

    Нет. npx hivedesk запускает тот же движок и открывает окно в браузере. Приложение добавляет трей, системные уведомления и выбор папки, а также продолжает одалживать ресурсы с закрытым окном. В таблице выше перечислены все различия.

    Может ли кто-то захватить мой экран?

    Без вашего клика нет. Удалённый экран выключен, пока вы не разрешите свой адрес, каждый запрос требует вашего «Принять», по умолчанию только просмотр, каждое разрешение истекает, заблокированный экран не принимает ввод, а одно сочетание клавиш или кнопка «Стоп» всё завершает.

    Будет ли он работать на ноутбуке без GPU?

    Да, на CPU с маленькой моделью, но медленно: несколько токенов в секунду. Небольшие задачи работают. GPU друга, с его разрешения, открывает модели побольше.

    Что, если две сети не могут соединиться?

    Запустите hivedesk doctor --p2p. Команда проверит ретрансляторы, ваши порты и тип сети и скажет, какая сторона блокирует соединение. Встроенного TURN-сервера нет; в одной сети используйте вариант LAN.

    Можно осмотреться, не скачивая модель?

    Да: npx hivedesk --demo проигрывает City в собственной временной папке, и каждое сценарное событие помечено как демо. Ваши проекты не затрагиваются.

    Как его удалить?

    Удалите ~/.hivedesk/ (ваша идентичность, известные пиры, среда выполнения, модели и настройки) и папку .hivedesk/ в вашем проекте. Если вы устанавливали через npm, выполните также npm rm -g hivedesk.

    До вашего City одна команда.

    Начните со своего ПК. Пригласите друга, когда будете готовы.

    npx hivedesk
    Постройте свой City