Can sprite URLs do non-HTTP traffic?

I have a sprite running a nats-server on port 4222. I verified I can access the server using the localhost proxy that sprites makes, but I can’t seem to connect via the public URL.

❯ nats --server nats://localhost:4222 pub hello world
16:18:53 Published 5 bytes to "hello"

❯ sprite -s nats-loves-sprite url
URL: https://nats-loves-sprite-bmpy.sprites.app
Auth: public

❯ nats --server nats://nats-loves-sprite-bmpy.sprites.app:4222 pub hello world
nats: error: read tcp 192.168.50.240:54086->169.155.48.226:4222: i/o timeout

The public endpoint is HTTP only. Do you need nats to be public or just to have multiples nats in multiple Sprites?

I got Claude to do some interesting networking stuff with Tailscale. I fired one up, gave it a Sprite token, and told it to write a script to bring up Sprites, install Tailscale, and get credentials for each one. I think this would work for NATs? You may even be able to do tailscale DNS to let nats nodes discover each other.