원클릭으로
websocket-flow
Guide for adding new WebSocket commands and API endpoints to Visdom
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Guide for adding new WebSocket commands and API endpoints to Visdom
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Diagnose and fix GitHub Actions workflow failures. Use when CI jobs fail for lint, tests, JS build updates, or release automation.
Safely modify environment serialization, reload data, and view layout persistence. Use when changing env save/load formats or storage behavior.
Build and debug pane lifecycle behavior in the React frontend. Use when adding pane actions, layout behavior, rendering updates, or pane-level interactions.
Keep feature behavior identical across WebSocket and polling transport modes. Use when adding socket commands, event flows, or transport-sensitive UI updates.
Step-by-step guide for adding a new visualization pane type to Visdom (client, server, frontend, tests)
Modify login/authentication paths safely for browser and Python client flows
| name | websocket-flow |
| description | Guide for adding new WebSocket commands and API endpoints to Visdom |
Use this skill when adding new real-time WebSocket commands or HTTP API endpoints to Visdom.
Socket handler (py/visdom/server/handlers/socket_handlers.py):
elif cmd == "my_command": in AnySocketHandlerOrWrapper.on_message()broadcast() to push updates to subscriberssend_to_sources() to push events to Python clientsFrontend (js/api/ApiProvider.js):
sendMyCommand function that calls sendSocketMessage({cmd: 'my_command', ...})ApiContext.Provider valueMessage handling (js/api/ApiProvider.js):
case 'my_response': in handleMessage() switch statementHandler (py/visdom/server/handlers/web_handlers.py):
BaseHandlerinitialize(self, app) copying required app attributespost() with @check_auth decoratorRoute (py/visdom/server/app.py):
Application.__init__() (lines 97-116)(r"%s/my_endpoint" % self.base_url, MyHandler, {"app": self})IndexHandler routeClient (py/visdom/__init__.py):
self._send(msg, endpoint="my_endpoint")@check_auth decoratorinitialize() — do not use self.appfunctional-test and functional-test-polling CI jobspy/visdom/server/app.pypy/visdom/server/handlers/socket_handlers.pypy/visdom/server/handlers/web_handlers.pyjs/api/ApiProvider.jsAGENTS.mdCONTRIBUTING.mdassets/README.md and store templates/resources in assets/.references/TESTS.md.