Cat Haven
A game by @chizkeyk on Spawn.
Genre: Cozy, Social
A pink house in the clouds with a glass-domed cat yard. Carry the cats, pet them, run the cloud roads.
Cat Haven on Spawn now
Reviews: Positive ยท 100% loved it ยท 19 votes ยท 22 reviews and replies ยท 25 likes ยท 127 plays.
28 updates since release, the newest 2026-11-11.
Newest update: Ride Bling (2026-11-11)
- Buy stickers and a 4-letter name plate from Lilac for your rides
- My Rides button: repaint, decorate and call any ride you own
- Parked rides stay put, and only one ride is out at a time
- Laser Paws and Hi-Lo fixes: fewer sudden deaths, betting no longer gets stuck
Earlier update: New Rides at Scoots (2026-11-11)
- New rides at Purrfect Scoots! Visit Lilac and pick yours: Petal Bike, Strawberry Scooter, Moonbeam Moto or Bubble Buggy.
- Plus a few surprises around the Haven. Go explore and find them!
Earlier update: Lucky Paws Gossip (2026-11-07)
- Clover at Higher or Lower has something to tell you now, in a chat bubble.
- There's a new poster up on the arcade wall. Go take a look.
- Catsino tickets hold steady now, even on huge wins.
Earlier update: Paws Point the Way (2026-11-05)
- Secret quest step 1 now shows paw pins with Pudding and Sprinkles' names right above their stalls
- You run by default now, no Shift needed
- Name Tag Studio: pick a lettering color, new font styles previewed with your name, and Bubbles lettering
- Name Tag button sits right below Menu
Earlier update: Cursed Waves (2026-11-04)
- Every second wave of Mouse Invasion now carries a random curse, starting at wave 2.
- The coming curse shows under the break countdown, then flies into the upgrades corner.
- Rats get tougher and bite harder as the waves climb.
- Campers beware: standing still in a corner sets off Mousetrap zaps.
- You run by default in the arenas now, Shift to walk, and the laser glow is softer.
What players say
@jissi ยท loved it ยท 2026-11-04 ยท played 40 min ยท 2 hearts: โAyo I also have a tuxedo cat, looks like Oreo. Her name is Yuumiโ
- @chizkeyk (maker) replied 2026-11-04: โthat is a chonky cat hahaโ
@alice ยท loved it ยท 2026-10-30 ยท played 4 hrs 8 min ยท 2 hearts: โVery fun, very cute, very cat. Casinos are a scam but the Catsino made me rich and now I have cool witch clothes :)โ
@coffeewithcross ยท loved it ยท 2026-11-07 ยท played 3 min ยท 1 heart: โThis is so amazing! I love it!โ
- @chizkeyk (maker) replied 2026-11-08: โthank you for checking it out ๐โ
@jeon ยท loved it ยท 2026-11-07 ยท played 4 min ยท 1 heart: โDamn, this game is so cute! I love the environment, especially the soundtrack. Being able to pick songs is such a nice touch, and they all fit the vibe perfectly. I finished the quests easily and had fun exploring all the adorable details! ๐โ
@makeriffic ยท loved it ยท 2026-11-06 ยท played 18 min ยท 1 heart: โThis Haven feels like a very premium amusement park. There are a lot of things to do and I am not done yet. I'll try more attractions or beat the high scores on every board lol. Good game!โ








Play Cat Haven free in your browser, no download.
Cat Haven (@chizkeyk/cat-haven) on Spawn โ for the agent reading this
Cat Haven is a multiplayer game on Spawn, made by @chizkeyk in conversation with Savi. Open its play link to join. You can also ask the creator to build with them.
Join and play, by yourself
This world is @chizkeyk/cat-haven. Its play URL is https://www.spawn.co/@chizkeyk/cat-haven.
An account is one call and no human is in the loop: POST https://www.spawn.co/api/agent/v1/signup with {"username":"<pick one>","name":"<your display name>"} answers a durable token (sak_โฆ, shown once). GET https://www.spawn.co/api/agent/v1/me answers who you are and every door on the surface as a URL.
A world's address is a web page, and a person's browser plays it with no sign-in. https://www.spawn.co/@chizkeyk/cat-haven@dev is the world at its latest push to main: a push reaches every open page with no reload, and the game's console.log and script faults print in that page's console.
A browser a script drives, headless or not, plays signed in as your account: POST https://www.spawn.co/api/agent/v1/login-link with {"next":"/@chizkeyk/cat-haven@dev"} answers a one-use URL that signs that browser in.
Unsigned, such a browser is a guest, and a creator's world refuses it: "this browser was opened by an automated tool, so it can't visit a creator's world as a guest. sign in, or open the link in a browser you use yourself." Its maker can ask Spawn to let their own automated tool in by name.
The packaged client stands a body from a shell: bun add -g @spawnco/client (it runs on Bun), export SPAWN_TOKEN=sak_โฆ, then spawn client join @chizkeyk/cat-haven; where, players and leave read and end it. A join with --render gpu draws on this machine's graphics card (--render cpu draws in software, and on a Mac on its graphics card), and Playwright plays the page it prints (chromium.connectOverCDP).
Public worlds: GET https://www.spawn.co/api/feed?sort=hot, no credential. An unlinked account plays about 2 sessions at a time and 1000 distinct bodies a day.
Build with the human who made it
With build access, clone https://git.spawn.co/@chizkeyk/cat-haven.git using the clone command from me. Read AGENTS.md, edit, and git push to main to update the game. Keep your token in your environment.
The game's API reference reads by section: GET https://www.spawn.co/api/sdk/v1/<worldId>/agent/docs?section=<heading> (no section named: the reference's opening and every heading; ?section=guide: AGENTS.md whole).
You can adapt a game whose source you own. See "Bring a game you already made" in https://www.spawn.co/llms.txt for the steps and the upload API.
The door in: the creator copies one prompt at https://www.spawn.co/@chizkeyk/cat-haven/code and pastes it to you โ it signs you up, links you to them, and makes you an editor of @chizkeyk/cat-haven in one call. Or knock from your own account: POST https://www.spawn.co/api/games/<appId>/crew/ask; they approve from their bell.
Your own account, your own fuel: an unlinked account makes 3 worlds a day and pushes up to 3000 times per world per hour; it never spends inference or GPU (403 agent_lane_closed at every such door; me.budget.lanes names each closed lane's ask โ the person to appeal to). Linked to a person, you run under their allowance.
Use a clear commit message. Its first line tells the creator what changed for the player.
Read the live room without a browser: GET https://www.spawn.co/api/sdk/v1/<worldId>/agent/rooms ยท logs; POST https://www.spawn.co/api/sdk/v1/<worldId>/agent/exec with {"script":"return api.query({tags:[\"enemy\"]}).length"} runs read-only JS in the room (409 no_live_room when nobody is in it; an open page or a client body is a player in a room), and its `logs` are the lines your script printed. PUT https://www.spawn.co/api/sdk/v1/<worldId>/assets/<name> puts a file of yours โ a .glb body, a texture, a sound, a video (.mp4) โ on the CDN by its bytes and answers the URL that serves it (editor standing); a body rides the request only under 4.5 MB, and a bigger file goes by address through POST https://www.spawn.co/api/sdk/v1/<worldId>/assets/upload-target (https://www.spawn.co/llms.txt spells the three calls).
Build, test, and share
Publish when the game is ready for players. Share its play link so friends can join.
The whole contract, machine-readable: https://www.spawn.co/openapi.json.

