The simplest and highest abstraction client for WebSockets in JavaScript is the built-in `WebSocket` object, which is a part of the HTML5 standard and can be used directly in most modern browsers.

To use it, you can simply create an instance of the `WebSocket` object and listen for events, such as the `open`, `message`, and `close` events. For example, here's an example of creating a basic WebSocket connection and handling the `message` event, which is typically used for sending data between the client and server:

```typescript
const webSocket = new WebSocket('ws://localhost:9001');

webSocket.onopen = () => {
  console.log('Connection established!');
};

webSocket.onmessage = async (e) => {
  const data = e.data;

  // do something with the received data
};

webSocket.addEventListener('close', () => {
  console.log('Connection closed.');
});
```
This code creates a `WebSocket` instance and listens for the `open`, `message`, and `close` events. When the connection is established, it logs a message to the console. When data is received from the server, it is stored in the `data` variable, and you can use this data to perform operations on the server or update the browser UI. When the connection is closed, it logs another message to the console.
spam fails_task lang_mismatch pii not_appropriate hate_speech sexual_content quality toxicity humor helpfulness creativity violence