Разработка WebSocket
Best practices and guidelines for building real-time applications with WebSocket communication
AImindrally
official
Разработка
Что делает навык
Skill предоставляет экспертные рекомендации и лучшие практики для разработки приложений реального времени на базе WebSocket, охватывая управление соединениями, безопасность и масштабируемость. Он помогает агенту реализовывать надежные системы обмена сообщениями с учетом специфики различных сред выполнения.
Когда применять
- Разработка серверной части для приложений реального времени с использованием Node.js или Bun.
- Настройка безопасного обмена данными через защищенное соединение wss:// с аутентификацией по JWT.
- Организация горизонтального масштабирования WebSocket-серверов с использованием брокеров сообщений.
- Реализация клиентских приложений с поддержкой повторных подключений и офлайн-режима.
Как работает
- Использовать протокол wss:// для шифрования данных и внедрить механизм ping-pong для обнаружения зависших соединений.
- Структурировать сообщения в формате JSON с полями type, payload и message ID для корреляции запросов и ответов.
- Реализовать логику повторных подключений с экспоненциальной задержкой и обработку ошибок с логированием контекста.
- Применять аутентификацию на этапе handshake (например, через JWT) и проверять права доступа для каждого сообщения.
- Для Node.js использовать нативный клиент или библиотеку ws, а для Bun — встроенные возможности Bun.serve() и stream handling.
Примеры запросов агенту
Как реализовать безопасное WebSocket-соединение с аутентификацией JWT в Node.js?
Напиши код для обработки сообщений в формате JSON с поддержкой запросов и ответов через message ID.
Как настроить горизонтальное масштабирование WebSocket-серверов с использованием Redis Pub/Sub?
Что понадобится
- Среда выполнения Node.js (версия 21+) или Bun
- Библиотека ws (для серверов на Node.js)
- Брокер сообщений (например, Redis Pub/Sub или RabbitMQ) для масштабирования
Описание составлено по SKILL.md навыка, сверено 06.10.2026.
Как подключить
1Скачать навык
# возьмите папку навыка «websocket-development» из репозитория:
# https://github.com/mindrally/skills
2Положить папку с
SKILL.md к навыкам ассистента# положите папку навыка туда, где ассистент ищет skills:
cp -r websocket-development/ ~/.claude/skills/websocket-development/
Навык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.