agentsclimarketplace

Litestar realtime

Skill litestar-org/litestar-skills/plugins/litestar/skills/litestar-realtime

Auto-activate for @websocket, websocket_listener, websocket_stream, WebSocket, ServerSentEvent, ChannelsPlugin, AsyncPgChannelsBackend, RedisChannelsPubSubBackend, SQLSpecChannelsBackend, or fan-out. Not for polling APIs.From its SKILL.md

Install
npx -y skills add litestar-org/litestar-skills --skill litestar-realtime

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 13 stars13 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

2.4 KB, 489 tokens by cl100k_base, as published. Nobody here has run it

Litestar Realtime

Use this skill for WebSockets, SSE, ChannelsPlugin backends, realtime event contracts, and fan-out from workers or services.

Code Style Rules

  • Use plain WebSocket handlers for one-off streams.
  • Use ChannelsPlugin when dynamic topics, history, or cross-process fan-out matter.
  • Choose the backend that matches the existing stack.
  • Treat WebSocket auth separately from HTTP header auth constraints.

Quick Reference

<workflow>

Workflow

  1. Choose WebSocket, SSE, or Channels based on delivery needs.
  2. Define event contracts before wiring transport.
  3. Select a backend that fits the project stack.
  4. Test connection, auth, fan-out, disconnect, and error paths.
</workflow> <guardrails>

Guardrails

  • Do not force Redis into a PostgreSQL-only stack just for Channels.
  • Do not assume browsers can set arbitrary WebSocket headers.
  • Do not publish untyped event dicts across service boundaries.
  • Do not use request-scoped resources after the socket lifecycle ends.
</guardrails> <validation>

Validation Checkpoint

  • Transport choice matches the user experience.
  • Event payloads are typed.
  • Backend choice matches the stack.
  • Auth and disconnect behavior are tested.
</validation> <example>

Example

from litestar import websocket

@websocket("/ws")
async def stream(socket: WebSocket) -> None:
    await socket.accept()
    await socket.send_json({"type": "ready"})
</example>

References Index

Official References

Shared Styleguide Baseline

What ships with it: 2 files

36.2 KB alongside SKILL.md

references/

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.