ARMANOS

Решения

Соцсети

Аккаунты клиентов или нескольких своих брендов, каждый в отдельном профиле: свой аппарат, свой выход в сеть, своё хранилище cookies. Здесь написано, что именно настраивает сценарий «Соцсети», против каких площадок он собран и что остаётся на вас.
6
площадок в сценарии: LinkedIn, Facebook, Instagram, X, TikTok, Pinterest
40 → 200
действий в день: в первый день и после семидневного разгона
29
настоящих аппаратов за телефонным и планшетным шаблонами
30
обычных сайтов обходит робот прогрева, у каждого профиля свой порядок

Работа в том, чтобы аккаунты не связались между собой

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

В ARMANOS профиль это отдельный браузер с отдельным каталогом данных. У ARMANOS Browser это каталог fork-profiles/<номер профиля> внутри данных программы. Cookies, локальное хранилище, IndexedDB, служебные работники, кэш и сохранённые входы лежат там и больше нигде.

Сравните с привычными ответами. Вторая учётная запись в обычном браузере даёт вторую банку cookies на том же аппарате. Режим инкогнито даёт чистую банку на том же аппарате и стирает ровно то, что нужно было сохранить. VPN меняет адрес и не трогает машину. Расширение, подменяющее отпечаток, правит значения изнутри страницы, когда страница уже работает.

  • Свой каталог данных

    Cookies, хранилища, кэш и сохранённые входы лежат в одной папке профиля и никуда из неё не выходят.

  • Свой аппарат

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

  • Свой выход

    HTTP, SOCKS5 или собственный сервер по SSH. Если прокси или туннель не поднялся, запуск отклоняется, а не идёт в сеть с вашего домашнего адреса.

  • Свои часы и язык

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

  • Свои расширения

    Выбираются профилю отдельно: из встроенного каталога на 11 записей или по ссылке магазина, с проверкой подписи.

  • Своя стартовая страница

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

Выбор сценария настраивает шесть вещей разом

Сценарий это запись в packages/shared/src/index.js, её читают при создании профиля. Она решает стартовый адрес, набор внедряемых сценарных скриптов, какие списки слежки грузить, чистить ли ссылки, какие правила первой стороны применять и какие счётчики действий вести.

На ARMANOS Browser всё это пишется до запуска отдельным расширением, собранным для одного этого профиля: скомпилированные правила блокировки, вырезание параметров и часть, работающая в странице. Если написать его не удалось, профиль не открывается вовсе. Браузер, который выглядит защищённым и не защищён, хуже понятного отказа.

Блокировка нарочно узкая. В социальном списке только хосты чужой межсайтовой слежки. Хосты входа, раздачи файлов, медиа, токенов и капчи в нём отсутствуют намеренно: профиль, который не может войти в аккаунт, не защищённый профиль, а сломанный.

  • Стартовый адрес

    https://www.instagram.com, если у профиля не задан свой.

  • Списки слежки

    Общий, LinkedIn и социальный вместе: 74 несовпадающие записи после слияния.

  • Чистка ссылок

    40 следящих параметров вырезаются при переходе, среди них igshid, mibextid, fbclid, ttclid, twclid, epik и li_fat_id.

  • Подавление в странице

    Вызовы navigator.sendBeacon не уходят, кадры WebSocket с типами TYPING, READ_RECEIPT и SEEN не отправляются.

  • Слежка самих площадок

    Два набора правил по путям, каждый заперт на своих хостах: один для LinkedIn, второй для группы Meta, X и Pinterest.

  • Безопасный темп

    Десять счётчиков действий и потолок 200 действий в день, и то и другое с разгоном за первую неделю.

Площадок шесть, и одной достаётся меньше

Сценарий называет LinkedIn, Facebook, Instagram, X, TikTok и Pinterest. Три его списка сливаются в 74 записи: общие счётчики сети, внешние пиксели LinkedIn и межсайтовое хозяйство пяти социальных площадок.

Площадка следит за человеком и своими собственными запросами, со своего же адреса, и доменным списком такие запросы не поймать. Для них есть правила по путям, и каждый набор работает только на своих хостах. В наборе LinkedIn есть голые слова beacon, telemetry и /px/: на одном известном сайте это безопасно, а на пяти чужих перекрыло бы посторонние запросы.

Самые ценные правила здесь это перекличка приложений Meta, facebook.com/ig_xsite_user_ и instagram.com/accounts/xuserid. Именно этот запрос связывает аккаунт Facebook с аккаунтом Instagram, и он уходит при обычной загрузке любой из двух страниц.

TikTok получает меньше, и мы предпочитаем сказать это прямо, а не позволить таблице намекнуть на обратное. У него тринадцать записей в межсайтовом списке и вырезанный из ссылок идентификатор клика, но своего набора правил первой стороны нет: против него ещё ничего не измерено.

ПлощадкаМежсайтовый списокПравила первой стороныИдентификатор клика
LinkedInДаlinkedin.com, licdn.comli_fat_id
FacebookДаfacebook.com, fbcdn.netfbclid, mibextid
InstagramДаinstagram.com, cdninstagram.comigshid
XДаx.com, twitter.com, twimg.comtwclid
TikTokДаttclid
PinterestДаpinterest.com, pinimg.comepik

Телефонный профиль это аппарат целиком, а не строка подписи

Два шаблона отпечатка из пяти мобильные: телефон Android и планшет Android. За ними стоят 22 телефона и 7 планшетов, по строке на аппарат: экран в точках вёрстки, плотность точек, строка видеокарты ровно в том виде, в каком её отдаёт ANGLE на Android, ядра, память и фирменные шрифты производителя.

Профиль получает такой аппарат целиком. По отдельности не тянется ничего: экран Pixel со шрифтами Samsung и видеокартой Xiaomi это не редкая трубка, а примета. Модель едет только в подсказках клиента. Сегодняшний Chrome на Android отдаёт замороженную подпись, Android 10 и букву K, поэтому настоящая версия и модель в подписи выдали бы профиль в первом же заголовке.

Три вещи семенем не задаются, и их делают при запуске. Размер окна ставится по протоколу отладки: настольный Chromium не делает окна уже примерно пятисот точек, а телефон с окном шире собственного экрана опровергает себя одной строкой. Ориентация выводится из размеров, нажатия мышью превращаются в касания, а каждая новая вкладка придерживается, пока её не оденут. Телефонному профилю достаются и три поля связи Android: скорость, задержка и потолок канала, согласованные между собой.

Берите телефон, когда аккаунт живёт в телефоне: автор, который выкладывает из Instagram или TikTok, или страница, чья аудитория и чьи уведомления мобильные. Берите планшет, когда нужна мобильная вёрстка с настольными подсказками клиента: именно так отвечает настоящий Chrome на планшете.

navigator.userAgent
Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/153.0.0.0 Mobile Safari/537.36
navigator.platform
Linux armv8l
Подсказки клиента: model
moto g84 5G
Подсказки клиента: mobile
true
screen
393 x 873, devicePixelRatio 2.75
navigator.maxTouchPoints
5
hardwareConcurrency / deviceMemory
8 / 8
Видеокарта WebGL
ANGLE (Qualcomm, Adreno (TM) 619, OpenGL ES 3.2)
navigator.connection.type
cellular
downlink / downlinkMax / rtt
2 Мбит/с / 100 Мбит/с / 100 мс
Шрифты
12 андроидных семейств, среди них Moto Sans
Часы и языки
America/Argentina/Buenos_Aires, es-AR

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

Телефонный профиль всё равно работает на вашем компьютере

На настольной машине профиль несёт несколько её шрифтов вдобавок к телефонным. Без них ширина текста у всех семейств равна нулю и страницы выходят пустыми. Программа говорит это на вашем языке рядом с выбором шаблона, до того как вы выберете.

Свежий профиль прогревают до первого входа

Профиль, созданный пять минут назад, с пустой банкой cookies, без истории и без кэша, сам по себе примета. Робот прогрева сначала ходит в этом профиле по обычным публичным сайтам, чтобы аккаунт открылся в браузере, которым уже пользовались. В окне это кнопка «Наработать историю посещений».

Набор это 30 адресов в шести группах: поиск, новости, покупки, справочники, медиа и бытовые сайты. Вход не нужен нигде. Робот, упирающийся в стену входа, вместо истории оставляет вереницу несостоявшихся сессий, а это хуже, чем ничего.

Выбор и порядок перемешиваются для каждого профиля тасованием Фишера и Йетса, а не сортировкой со случайным сравнением: смещённое тасование делает одни порядки много чаще других. Два профиля, обошедшие одни сайты в одном порядке, просто поменяли одну связку на другую.

На каждый сайт робот строит шесть шагов: открыть, дать странице устояться, прокрутить, подождать, прокрутить дальше, подождать. Время на сайте это разброс вокруг заданного числа, от 0,6 до 1,4 от него, и расстояния прокрутки тоже разные. Работает он на том же ходе сценариев, что и ваши собственные, с тем же счётом хода, той же остановкой и той же одновременностью.

  1. 1

    Создайте профиль со сценарием, шаблоном и прокси

    Выберите страну, из которой будете работать. Часы и язык следуют за выходом, и решаются они именно здесь.

  2. 2

    Прогрейте его до первого входа

    От шести до двенадцати сайтов по двадцать секунд это разумный первый заход. Прогревать можно до пяти профилей разом.

  3. 3

    Войдите и держитесь первого дня

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

  4. 4

    Дайте разгону закончиться

    Потолок растёт каждый день и достигает полных 200 на седьмой. Карточка показывает, какой день разгона идёт.

  • Сайтов за заход

    От 1 до 40, по умолчанию шесть. Если в выбранных группах адресов меньше, чем запрошено, программа считает настоящее число и говорит о нём.

  • Секунд на сайт

    От 5 до 300, по умолчанию двадцать, с разбросом от 0,6 до 1,4 на каждом сайте.

  • Группы

    Поиск, новости, покупки, справочники, медиа и бытовые сайты, в любом сочетании.

  • Свой список

    До 60 своих адресов, и тогда они заменяют встроенный набор на этот заход.

  • Одновременно

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

Темп считается за вас и ничего не запрещает

Сценарий несёт рекомендованный потолок в 200 действий в день. Действие это переход верхнего уровня в окне профиля: окно сообщает о нём программе, счёт ведётся по профилям, обнуляется при первом обращении в новый день и лежит в небольшом файле, чтобы перезапуск не терял день.

Свежий профиль начинает не с 200. Разгон даёт 20, 35, 50, 65, 80, 90 и 100 процентов потолка за первые семь дней, и день создания считается первым. Первый день это 40 действий.

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

Эти числа наша рекомендация, а не правило площадки. Свои площадки не публикуют, и терпимость у них зависит от возраста, истории и веса каждого аккаунта. Считайте потолок тормозом, а не разрешением.

ДействиеДневной пределПервый деньПорог
Просмотры профилей501070%
Приглашения15360%
Поисковые запросы30675%
Подписки40860%
Лайки1202470%
Комментарии30660%
Личные сообщения25560%
Заявки в друзья20450%
Посты15370%
Смены аккаунта2150%
Экран профилей: карточки с безопасным темпом, днём разгона и дневными пределами
У каждой карточки свой счётчик, свой день разгона и свои дневные пределы. На снимке профили электронной коммерции, поэтому у них пять действий того сценария; у социального профиля это десять действий из таблицы выше.

Десять окон и одна пара рук

Синхронизатор повторяет действия одного открытого профиля в остальных вживую. Вы выбираете ведущий профиль среди открытых, затем целевые, которые за ним повторяют. Минимум это два открытых профиля, и два профиля бесплатного тарифа ровно его закрывают.

У ARMANOS Browser нет предзагрузки, которой можно было бы ловить действия, поэтому в страницу ведущего внедряется небольшой сборщик под случайным именем свойства, не попадающим в перечисление. Он копит до 500 событий, программа вычерпывает очередь каждые 120 миллисекунд и применяет каждое событие к целевым. Переходы повторяются по адресу ведущего, а закрывшийся целевой профиль выпадает из набора.

Какая вкладка считается рабочей, спрашивают у самих страниц через document.visibilityState, и ответ запоминается на сессию. Это важнее, чем звучит. У профиля со стартовой страницей вкладок две, наша открывается первой, и выбор по порядку появления повторял бы страницу, на которую никто не смотрит.

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

  • Повторяется: переход

    Меняется адрес у ведущего, и тот же адрес грузят все целевые.

  • Повторяется: нажатие

    Сначала по пути CSS, а если элемент там не нашёлся, по доле от видимой области.

  • Повторяется: прокрутка

    Положение прокрутки ведущего, не чаще одного события в 120 миллисекунд.

  • Повторяется: значение поля

    Значение поля ввода или области текста: оно ставится и объявляется странице событием input.

  • Повторяются: клавиши перехода

    Enter, Tab, Backspace, Delete, Escape и четыре стрелки.

  • Не повторяется

    Редакторы без свойства value, отправка файлов, перетаскивание, наведение и всё, что рисуется на холсте.

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

Человеческое поведение остаётся на вас

Всё написанное выше про аппарат, сеть и счётчики. Ничто из этого не пишет подпись, не подбирает хештег и не решает, что ответить под комментарием. Ни генератора текстов, ни планировщика публикаций в программе нет, и мы предпочитаем это назвать, а не позволить слову «автоматизация» намекнуть на обратное.

Синхронизатор повторяет то, что делаете вы. Десять окон, делающих то, чего человек не делает, это одно и то же десять раз. Берите его для механической половины: тот же переход, та же форма, та же правка настроек, а то, что обязано выглядеть человеческим, делайте по одному окну.

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

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

Чего это не делает

  • Не делает ваше поведение человеческим. Пределы считаются и подсвечиваются, но никогда не запрещают, и программа не может судить, читается ли комментарий как написанный человеком.
  • Не пишет, не планирует и не публикует посты. Ни генератора содержания, ни планировщика публикаций внутри нет.
  • Телефонный профиль это не телефон. На настольной машине он несёт и несколько её шрифтов, потому что без них страницы выходят пустыми, и сайт, который меряет шрифты, их увидит.
  • Не запускает мобильные приложения площадок. Телефонный профиль это Chrome на Android, поэтому всё, что живёт только внутри приложения, остаётся недоступным.
  • Правила слежки первой стороны закрывают LinkedIn, Facebook, Instagram, X и Pinterest. TikTok получает межсайтовый список и вырезанный идентификатор клика, и ничего сверх того.
  • Синхронизатор повторяет нажатия, прокрутку, значения полей и шесть клавиш перехода. Редакторы текста, отправка файлов и перетаскивание не повторяются.

Как проверить

У каждого утверждения на этой странице есть файл, который его исполняет, и стенд, который его стережёт. И то и другое лежит в хранилище кода.

Сценарий действительно задаёт стартовый адрес, списки, чистку и десять счётчиков
packages/shared/src/index.js (SCENARIOS.social) · apps/desktop/test/слитый-сценарий.js · apps/desktop/test/сценарий-живьём.js
Правила слежки первой стороны работают только на своих хостах, а правила LinkedIn доходят до сценария «Соцсети»
apps/desktop/src/lib/tracker-rules.js · apps/desktop/test/слежка-по-хостам.js
Телефонный профиль отвечает телефоном в тех полях, которые читают сайты, и внутри чужих кадров тоже
apps/desktop/src/lib/mobileEmulation.js · apps/desktop/src/lib/mobileWindow.js · apps/desktop/test/телефон-живьём.js · apps/desktop/test/mobile-really-mobile.js
Робот прогрева тасует набор для каждого профиля и обещает ровно тот заход, который сделает
apps/desktop/src/lib/cookieRobot.js · apps/desktop/test/cookie-robot.js · apps/desktop/test/robot-promise-kept.js
Синхронизатор повторяет действия ведущего в той вкладке, на которую вы смотрите
apps/desktop/src/lib/forkPage.js · apps/desktop/test/синхронизатор-берёт-видимую-вкладку.js · apps/desktop/test/синхронизатор-живьём.js
Восемь профилей открываются разом, десять одной переменной среды, и раскладка действительно двигает окна
apps/desktop/test/восемь-окон.js · apps/desktop/test/раскладка-живьём.js

Двух профилей хватит, чтобы увидеть

Бесплатный тариф даёт два профиля, и это же минимум для синхронизатора. Создайте один социальный профиль, прогрейте его и прочитайте стартовую страницу до того, как войдёте куда-либо.