Skip to main content
Glama

X Signal — исследование X (Twitter) для ChatGPT и Codex

CI MIT License

X Signal позволяет ChatGPT или Codex исследовать X через уже имеющийся у вас аккаунт. Задайте обычный вопрос — и он сможет искать в Top и Latest, прослеживать ветки, сравнивать ленты, находить аккаунты и приводить ссылки на посты, стоящие за ответом.

Сервис X Signal, браузер и сохранённые результаты исследований работают на вашем компьютере в Docker. Ваша сессия X хранится в постоянном профиле браузера. X Signal работает только на чтение: он не публикует посты, не ставит лайки, не подписывается и не отправляет сообщения. Для локального использования не нужен ключ API OpenAI или X. Веб-версия ChatGPT использует опциональный транспорт Secure MCP Tunnel от OpenAI, описанный ниже.

Используйте X Signal, чтобы узнать, что разработчики говорят о локальных голосовых агентах на этой неделе. Проверьте Top и Latest, проследите полезные ветки и укажите ссылки на важные посты.

Установка · Подключение ChatGPT или Codex · Пример работы · Принцип работы

Что умеет исследовать

  • Запускать несколько поисков Top, Latest или Media одновременно, с фильтрами по дате, языку, аккаунту, вовлечённости и содержимому.

  • Читать точные ленты Following, For You, закладки, а также ленты пользователей, списков и сообществ.

  • Открывать пост, восстанавливать ветку автора и отделять ответы от цитат-постов.

  • Находить людей и организации, затем читать их ленты.

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

  • Отслеживать тему или ленту во времени и экспортировать результаты в Markdown, CSV, JSON или NDJSON.

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

Related MCP server: RepoRelay

Установка

Вам понадобятся:

  • Docker Engine 25.0 или новее с Docker Compose 2.20.2 или новее. Обычный выбор для Windows и macOS — Docker Desktop; на Windows используйте Linux-контейнеры.

  • Аккаунт X.

  • Chrome — только если вы хотите автоматическую синхронизацию сессии из отдельного профиля Chrome.

  • Node.js 24.19 или новее — только для настройки туннеля ChatGPT, тестов, MCP Inspector, резервного копирования/восстановления или stdio.

Клонируйте репозиторий и откройте его папку:

git clone https://github.com/anotb/x-signal.git
cd x-signal

Вы также можете скачать последнюю версию исходного кода в формате ZIP.

Пусть кодинг-агент выполнит настройку

Если Codex или другой кодинг-агент может работать с вашим терминалом, передайте ему следующее:

Настройте X Signal из этого репозитория на моём компьютере. Сначала определите мою операционную систему и проверьте предварительные требования. Оставьте все сервисы на стандартных loopback-портах. Запустите стек Docker Compose, дождитесь состояния healthy и проверьте /healthz и /readyz. Подключите мой локальный клиент Codex к http://127.0.0.1:7345/mcp. Никогда не просите меня вставлять в чат cookies, токены сессии, ключи API или пароли. Для входа в X проведите меня либо через session companion в отдельном профиле Chrome, либо через локальный браузер noVNC. Не обходите проверку X. Если я попрошу поддержку веб-версии ChatGPT, используйте профиль chatgpt Secure MCP Tunnel из репозитория и попросите меня ввести ID туннеля и ограниченный runtime-ключ прямо в скрытое локальное окно настройки. Никогда не открывайте порт 7345 и не выводите учётные данные в терминал. Сообщите мне, когда потребуется мой видимый шаг.

В репозитории также есть инструкции для кодинг-агентов.

Windows

Copy-Item .env.example .env
docker compose up -d --build --wait
Invoke-RestMethod http://127.0.0.1:7345/readyz

macOS или Linux

cp .env.example .env
docker compose up -d --build --wait
curl -fsS http://127.0.0.1:7345/readyz

Оба сервиса должны показывать healthy в docker compose ps.

Вход в X

Рекомендуется: отдельный профиль Chrome

Это позволяет держать аккаунт для исследований отдельно от аккаунта X, которым вы пользуетесь каждый день.

  1. Создайте профиль Chrome и войдите в аккаунт X, который должен использовать X Signal.

  2. Откройте chrome://extensions, включите режим разработчика и выберите Загрузить распакованное.

  3. Выберите extensions/x-signal-session-companion из этого репозитория.

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

Сессия обновляется при запуске этого профиля Chrome, каждые пять минут, пока он открыт, и при изменении cookies X. Docker хранит собственную авторизованную копию между обновлениями и после перезапусков. Другие профили Chrome не могут незаметно подменить выбранный аккаунт.

О переключении аккаунтов и разовой передаче см. руководство по session companion.

Или войдите внутри Docker

Откройте локальный браузер и один раз войдите в X. Скопируйте сгенерированный пароль VNC в буфер обмена:

# Windows
docker compose exec -T browser sh -lc 'cat /data/.vnc/password.txt' | Set-Clipboard
# macOS
docker compose exec -T browser sh -lc 'cat /data/.vnc/password.txt' | pbcopy

В Linux передайте ту же команду в инструмент буфера обмена рабочего стола: wl-copy в Wayland или xclip -selection clipboard в X11.

Профиль браузера хранится в Docker-томе xsignal_browser.

Подключение ChatGPT или Codex

Codex

В десктопном приложении Codex или в IDE-расширении откройте Настройки → MCP-серверы, добавьте сервер Streamable HTTP и укажите:

http://127.0.0.1:7345/mcp

Или добавьте это в ~/.codex/config.toml:

[mcp_servers.x-signal]
url = "http://127.0.0.1:7345/mcp"
tool_timeout_sec = 900

Перезапустите клиент после сохранения. Увеличенный таймаут хоста предназначен для глубокого чтения лент; широкие поиски используют долговечные задания и могут опрашиваться без начала заново. В документации Codex по MCP описана общая конфигурация для десктопа, CLI и IDE.

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

ChatGPT web

ChatGPT не может напрямую обращаться к localhost. X Signal включает Secure MCP Tunnel от OpenAI как опциональный контролируемый сервис Compose. Он сохраняет MCP-сервер закрытым, даёт подключению стабильный идентификатор и переподключается после перезапусков Docker или компьютера.

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

  2. Создайте отдельный runtime-ключ API. В разделе Ограниченный доступ предоставьте только Туннели → Чтение, Использование.

  3. Запустите локальную команду настройки и введите ID туннеля и ключ по запросу. Ввод ключа скрыт; оба значения сохраняются только в игнорируемых локальных файлах.

npm run tunnel:secure:configure
docker compose --profile chatgpt up -d --build --wait
  1. В ChatGPT откройте Настройки → Безопасность и вход и включите режим разработчика.

  2. Откройте Плагины, нажмите кнопку «плюс» и создайте приложение с именем X Signal.

  3. Выберите Туннель, укажите туннель, просмотрите обнаруженные инструменты и создайте приложение.

  4. Добавьте X Signal из меню инструментов в новом чате.

Runtime-ключ аутентифицирует только приватный туннельный транспорт. X Signal не вызывает с его помощью модели OpenAI, а для локального использования Codex по-прежнему не нужен ключ OpenAI. Туннель остаётся доступным, пока запущен Docker; состояние показывает docker compose --profile chatgpt ps и локальная страница готовности.

Режим разработчика и доступ к туннелю зависят от политики аккаунта и рабочего пространства. См. руководство по Secure MCP Tunnel от OpenAI и подробную настройку клиента.

Пример работы

Это реальный ответ ChatGPT по результатам живого поиска X Signal. Запрос был намеренно простым; ChatGPT выбрал широкое сканирование Top + Latest, обобщил примерно 100 недавних постов и привёл ссылки на подтверждающие материалы.

Используйте X Signal, чтобы узнать, что сейчас происходит на X с открытыми AI-агентами.

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

Примеры запросов

  • «Что сегодня происходит с этой компанией на X? Проверь с разных сторон и скажи, что подтверждено, оспаривается или просто повторяется.»

  • «Сравни, как разработчики обсуждают эти два продукта за последние семь дней. Отдели официальные анонсы от отчётов о практическом использовании.»

  • «Найди важные аккаунты по этой теме, затем изучи утверждения, по которым они расходятся.»

  • «Прочитай мою точную ленту Following с сегодняшнего утра, сохрани полезные ответы и открой ветки, стоящие за пятью пунктами, достойными моего внимания.»

  • «Прочитай этот пост, восстанови ветку автора и отдели поддерживающие ответы от контраргументов в цитатах-постах.»

  • «Создай ежедневный мониторинг этой темы и экспортируй последние изменения в Markdown.»

Принцип работы

flowchart LR
  C["ChatGPT or Codex"] -->|"MCP"| A["X Signal"]
  A --> B["persistent Chromium"]
  B -->|"read-only"| X["X"]
  A --> D["saved research"]
  B --> P["signed-in browser profile"]

Стек Compose по умолчанию состоит из двух сервисов: небольшого приложения Node/SQLite и интерактивного сайдкара Chromium. Опциональный профиль chatgpt добавляет закреплённый туннельный клиент OpenAI. Поиски используют один постоянный браузер с ограниченной конкурентностью, интервалами между запросами, кэшированием и адаптивной задержкой. Сохранённые задания, доказательства и профиль браузера переживают перезапуски.

Конфиденциальность и ограничения

Приложение, отладчик браузера и noVNC по умолчанию привязываются к localhost. Тома браузера и резервные копии содержат многократно используемое состояние входа, поэтому обращайтесь с ними как с паролями. Нормализованные результаты отправляются выбранному вами клиенту ChatGPT, Codex или MCP, когда он вызывает инструмент. Проверки X требуют видимого входа через локальный браузер; X Signal не обходит их.

X Signal — это независимый инструмент исследования для аккаунтов, которыми вы управляете. Он не связан с X или OpenAI и не предназначен для обхода API X, аутентификации, контроля доступа, проверок, лимитов запросов или других мер защиты. Используйте его только с контентом, доступным вашему аккаунту, и соблюдайте условия X.

Документация проекта

X Signal доступен по лицензии MIT.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    A local MCP bridge that gives ChatGPT bounded read and search access to exactly one approved repository, with fixed handoff writers for task delegation to a separate coding agent.
    61 npm
    29
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables coding agents like Codex to use the ChatGPT web app as a planning and review brain, letting ChatGPT read only needed code via OAuth MCP and submit locally authorized tasks without API keys or repository uploads.
    4
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables ChatGPT conversations to directly inspect local workspaces and delegate coding tasks to a local Codex agent, with controlled concurrency, reusable sessions, and task/usage tracking.
    755 npm
    MIT