It looks like there are two functions that will create a Client.
NewClient
NewClientFromEnvVars
It is unexpected that NewClient would utilize any environment variables, but in fact, it uses both STREAM_CHAT_URL and STREAM_CHAT_TIMEOUT. This is unexpected behavior that I just ran into since I was using one of those variables in a different way.
I propose that only the NewClientFromEnvVars should load any environment variables. This would be a breaking change though so I wanted to get feedback before making a pull request.