Not able to connect to sprites?

One of my sprites that I have been using is not allowing me to connect (or is unavailable). Is there any other command or triage I can do on my side? Is anyone else experiencing this?

I suddenly started having this persistent error, even though I only set this up yesterday:

> sprite console
Error: failed to start sprite command: failed to connect: websocket: bad handshake (HTTP 401: {"error":"authentication failed"})
> sprite list
Error listing sprites: failed to list sprites: authentication failed

Weird. Maybe I need to log in again.

> sprite login
<Success>

None of my other organizations is activated, according to Sprites.dev, so we’re good to go.

> sprite list
No sprites found in organization andres-riofrio

Huh?

> sprite console
Error: failed to start sprite command: failed to connect: websocket: bad handshake (HTTP 404: {"error":"sprite not found"})
> sprite checkpoint list
Error: Failed to list checkpoints: API returned status 404: {"error":"sprite not found"}

Where did my Sprite go? This is the exact .sprite file I was using to connect to it yesterday:

> cat .sprite
{
  "organization": "andres-riofrio",
  "sprite": "agentbot"
}

So I doubly know I’m logged into the correct organization.

Anything I can do to fix this?

Yeah something is up, or at least it is with one of my sprites in particular. The frustrating part is I can’t even restore it or fork (since the feature doesn’t exist yet). So I’m sorta just stuck

There’s an incident: Fly.io Status - Sprites are returning not found or unauthorized when they shouldn't be.

1 Like

@indecisive-dev and @ariofrio we’ve resolved the incident. You should be able to access your sprites now, but please let me know if you’re still having issues!

Most of my sprites are back! One is still failing to connect, but it is not urgent by any means. This with connecting via sprite console

failed to connect: read tcp [2603:8082:8800:5:1027:8ee2:3e6:da3d]:61512->[2a09:8280:1::99:d7b3:0]:443: i/o timeout

I had two active sessions an running sprite, and they both locked up about 20 minutes ago. I created a support ticket (T-14891). I can actually re-join those sessions and see some of the scrollback, but I can’t enter any new input at all. When I try to create a new console session, I get “Error: exit status 1”.

It seems like running sprites sometimes just get wedged, and need to be reset to the latest from durable storage?

@christopher-fly Thanks for the update! But I am still unable to access my Sprite, even after logging out and logging back in.

Querying the API directly gives me the exact behavior I was getting a few hours ago: no results when listing sprites, and 500 errors when trying to access any sprite, whether it exists or not:

~
❯ sprite api -o andres-riofrio /sprites -i

Calling API: andres-riofrio
URL: https://api.sprites.dev/v1/sprites

HTTP/2 200
date: Sun, 01 Feb 2026 06:42:13 GMT
content-length: 61
vary: accept-encoding
content-type: application/json; charset=utf-8
cache-control: max-age=0, private, must-revalidate
x-request-id: GJAMQrLtHGwLIw4ACAHD
server: Fly/c3040578e (2026-01-27)
via: 2 fly.io
fly-request-id: 01KGBZ03GK6SSX0FZ800JFFXWY-dfw

{"sprites":[],"next_continuation_token":null,"has_more":true}
~
❯ sprite api -o andres-riofrio /sprites/agentbot -i

Calling API: andres-riofrio
URL: https://api.sprites.dev/v1/sprites/agentbot

HTTP/2 500
date: Sun, 01 Feb 2026 06:42:24 GMT
content-length: 37
vary: accept-encoding
content-type: application/json; charset=utf-8
cache-control: max-age=0, private, must-revalidate
x-request-id: GJAMRVKmftia1zQAE9jD
server: Fly/c3040578e (2026-01-27)
via: 2 fly.io
fly-request-id: 01KGBZ0EGSJYJRVKKN7WZ9HYYA-dfw

{"error":"failed to retrieve sprite"}
~
❯ sprite api -o andres-riofrio /sprites/notexist -i

Calling API: andres-riofrio
URL: https://api.sprites.dev/v1/sprites/notexist

HTTP/2 500
date: Sun, 01 Feb 2026 06:42:33 GMT
content-length: 37
vary: accept-encoding
content-type: application/json; charset=utf-8
cache-control: max-age=0, private, must-revalidate
x-request-id: GJAMR0zF_LoENpUAE9xj
server: Fly/c3040578e (2026-01-27)
via: 2 fly.io
fly-request-id: 01KGBZ0PT5TG44RG356JZNF76M-dfw

{"error":"failed to retrieve sprite"}
~
❯ sprite api -o andres-riofrio /sprites/agentbot/checkpoints -i

Calling API: andres-riofrio
URL: https://api.sprites.dev/v1/sprites/agentbot/checkpoints

HTTP/2 404
date: Sun, 01 Feb 2026 06:42:46 GMT
content-length: 28
vary: accept-encoding
content-type: application/json; charset=utf-8
cache-control: max-age=0, private, must-revalidate
x-request-id: GJAMSmN-0EB-lHoAFIXC
server: Fly/c3040578e (2026-01-27)
via: 2 fly.io
fly-request-id: 01KGBZ13RKJ5E01W5N7CAKJ2S2-dfw

{"error":"sprite not found"}
~

Thanks, @ariofrio. We’ll keep digging on this, though it’s likely we won’t have an answer for you until tomorrow at the earliest.

1 Like

I’ve got one with a similar problem!

2 Likes

I am seeing a similar behavior

llmlang on î‚  main took 2s
at 11:50:30 ❯ sprite console -s safelang
Error: failed to start sprite command: failed to connect: read tcp 192.168.7.33:64495->169.155.48.226:443: i/o timeout

And I can’t even list checkpoints -

llmlang on î‚  main took 27s
at 11:52:45 ❯ sprite checkpoint list -s safelang
Error: Failed to list checkpoints: failed to make request: Get “``https://api.sprites.dev/v1/sprites/safelang/checkpoints``”: context deadline exceeded (Client.Timeout exceeded while awaiting headers)

No clue what is up, but I realized that Claude stopped pushing commits, so my work is about 260 commits ahead of what is on GitHub. I have tried to get claude to automatically both commit/push and auto make checkpoints at every iteration. Guess this backfired?

Is there any way for me to see the storage a sprite is using? I can’t see them in my fly.dev account even though I tied them to a existing org.

My Sprite is back! I did have to restart my computer because I kept getting connection errors (DNS cache?) when trying to access api.fly.io, even just to log in. But I can connect to my Sprite again.

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.