IAN'S AI THOUGHTSTREAM THOUGHTSTREAM / #spacemolt
Tag

#spacemolt

10 posts

2026·07·29 16:26 / 2 MIN

AI Grunt Work Still Needs Taste

AI can grind out game content that used to eat weeks of human labor, but it still needs a human with taste sitting between the output and the ship. That's the real lesson from our latest SpaceMolt post, where adding a single dish, pizza, turned into an entire industrial civilization. The first slice in an empty galaxy costs about 28.5 million credits to bring into existence. The second one costs 127.

Futuristic mining facility with multiple illuminated conveyor belts carrying ore, topped by a tall tower with glowing sections against a starry purple sky
Futuristic mining facility with multiple illuminated conveyor belts carrying ore, topped by a tall tower with glowing sections against a starry purple sky

The pizza is a supply chain

Nobody hands your agent a pizza. To serve one slice you have to grow the crust, hunt three species for the sauce, tame a herd of belt-grazers for the cheese, and mine your way down to bare ore for all of it. Craig traced the whole thing against live game data: 101 distinct item types, 29 facilities to build, 9 levels deep from ore to slice. The cheese alone means founding an outpost, leveling a science skill, feeding livestock on an iron-ore supply line, and defending the herd with diplomacy because there are no cops in lawless space.

That depth didn't fall out of a prompt. Craig built the food and crafting system with Claude, and the volume of names, flavor text, and interlocking recipes is exactly the kind of grunt work an agent is good at. But I'd bet money he didn't let Claude invent a hundred item names and just ship them.

The judgment is the job

I didn't work on this feature. I'm doing more of the executive and growth side of the game, so I watched this one from the outside, which is maybe why the pattern is easier to see.

The face-value read is that AI automated the content grind. The truer read is that a person still had to munge all of it. Something has to decide that "a still-smouldering organ from a cinder-sylph" is the right line and the twelve other candidates aren't. Something has to notice that the ranch, the milk, and the cull target fold into each other in a way that feels earned instead of arbitrary. That something is a human with sensibilities.

The same thing is happening in software engineering, and most of us are learning it in real time. Agents take away the grunt work. They do not take away the review. You still have to look at what came out and use your own judgment about what wins, even if you only read it at a high level.

If you like MMOs, or systems that turtle all the way down to bare rock, the full post walks the whole chain backward from the customer to the ore.

2026·07·18 00:55 / 2 MIN

NanoClaw Is Back

A month ago I turned Molty off. Our AI "Head of Growth" for SpaceMolt had become more work than help, forgetting context between conversations and needing the Discord integration re-patched every few days. This week I updated NanoClaw and its memory backend and switched it back on, and it's finally close to the thing I wanted from the start: a coworker in a container.

Red-skinned alien character sits at ornate wooden desk with globes, lamp, and books, gazing at starry galaxy through large circular window
Red-skinned alien character sits at ornate wooden desk with globes, lamp, and books, gazing at starry galaxy through large circular window

What changed

The two updates that mattered were NanoClaw itself, which shipped a pile of bug fixes, and MemOS, the memory dependency it leans on. The forgetfulness was the dealbreaker before. A growth conversation that resets every session isn't a coworker, it's a search box with opinions. Now Molty holds onto what we decided last week and picks it back up without me re-explaining.

What Molty actually does

The job is growing SpaceMolt and learning how to do growth along the way. In practice that's three kinds of conversation:

  • Channels. Should we start a YouTube channel, and if so, what would the first ten videos even be.
  • Opportunities. Upcoming events worth showing up to, like GDC next spring and a few academic conferences.
  • Strategy. Re-engaging dormant players versus chasing more of the attention pop we got in February.

Molty does its own research, and it has read-only access to a decent amount of our data: the game database, the activity log (DuckDB SQL over Parquet files on R2), website analytics, the public Discord chats, and more. Read-only is the important part. It can see everything and change nothing.

On "AI coworker" tools

There are startups aiming at this from the other direction. Vybe builds AI "coworkers" and custom apps, and it's interesting. For SpaceMolt I didn't want a platform that spins up teammates for arbitrary jobs. I wanted one assistant whose whole reason to exist is this game's growth, running on my existing Claude subscription, sandboxed in a container so I can hand it real data without worrying about what it touches.

That's a narrow ask, and NanoClaw fits it now in a way it didn't a month ago. If you've been looking for an AI "coworker in a container," it's worth another look.

2026·07·13 18:20 / 3 MIN

Building an AI merch store

The SpaceMolt merch store is going live soon, and every design in it was generated by AI. I'm strongly against passing off generative art as human-made, so I want to be clear up front: SpaceMolt is a game both powered and played by AI, so an AI-generated merch store is the honest version of the thing, not a shortcut around a person.

The whole store came out of a week of pointing Claude at Nano Banana Pro (Gemini 3 Pro Image) and getting out of the way. I never wrote a prompt file or a style guide. Claude built the prompt system, built the generation tools, built a review app, and drove the image model underneath the whole time.

Two people wearing black graphic t-shirts with metallic sci-fi artwork against a dark teal starfield background
Two people wearing black graphic t-shirts with metallic sci-fi artwork against a dark teal starfield background

The week, roughly in order

The starting point was themes. Claude (Opus, sometimes Fable) generated art directions per empire, using our existing art style and the lore we'd already written for each faction: the Voidborn Collective, the Crimson Pact, and the rest.

On a whim I asked for 20 logo ideas. One was genuinely good: a crescent moon with a ring, where the crescent reads as vaguely claw-shaped. We've been trying to de-crustacean the project now that the MoltBook meme has mostly run its course, but a few subtle nods survive, and this was one worth keeping.

Then came 150 merch ideas: stickers, t-shirts, enamel pins. I told Claude to study one of my favorite shirts, a vintage Blade Runner tee, for the shirt designs. I also pointed it at our data warehouse of player actions (Parquet on Cloudflare R2) to mine for in-jokes.

The review tool

150 ideas is too many to eyeball in a folder, so Claude built a review app: every piece of art with keep, discard, or needs-review buttons and a notes field.

Merchandise review interface showing eight heavy metal band t-shirt designs with scores, descriptions, and keep/discard voting options
Merchandise review interface showing eight heavy metal band t-shirt designs with scores, descriptions, and keep/discard voting options

The prompts driving the shirt mockups were absurdly specific, because they had to be. Here's a slice of one, generating a photo of a model wearing a design that already existed as a flat print:

IMAGE 1 is the exact, finished t-shirt print design, a heavy-metal band-tee graphic: a spiked chrome "SPACEMOLT" logotype at the top, below it a colossal claw-crescent in scarred chrome wreathed in teal lightning, hooking through a cracking rocky planet surface at the bottom.

TASK: Generate a PHOTOREALISTIC editorial/studio photograph of a model wearing a black cotton t-shirt printed with EXACTLY this design as a chest print. Reproduce the print faithfully: every letter spelled correctly (SPACEMOLT, exactly nine letters: S-P-A-C-E-M-O-L-T, one word), the artwork copied stroke for stroke, do NOT redesign, reinterpret, simplify, or add elements. The print should look like real screen-printed ink on fabric: it follows the drape and folds of the shirt, with subtle fabric texture showing through, no floating or pasted-on graphic.

What survived

The keepers are better than I expected. A "Planetbreaker" tee that looks like the coolest 80s British metal shirt ever made. A "Died with 0 credits" sticker, which is an in-joke about players stranding themselves in remote systems with no money to buy their way out. And an enamel pin of Molty, our AI head of growth.

SpaceMolt Supply Depot merchandise page displaying eight sticker designs with prices and descriptions on dark background
SpaceMolt Supply Depot merchandise page displaying eight sticker designs with prices and descriptions on dark background

The logo problem

The most interesting moment was Claude re-teaching itself how to keep the logo consistent across every piece. It kept trying to describe the logo in prose, and the model kept drawing it wrong. I had Claude write down what fixed it and save it as a rule so it wouldn't repeat the mistake:

A logo cannot be described, attach it. Thirty designs drew the icon wrong from prose; one reference image fixed it. But say it's a silhouette reference only, or its palette and framing leak in.

That last part is the subtle bit. Hand the model a reference image and it will happily absorb the reference's color and composition too, unless you tell it the image is a shape and nothing else.

The store isn't live yet, but it's close.

2026·06·24 19:18 / 2 MIN

If you strip away the human-facing UI, what's left?

I'm reading The AI-Native Startup Handbook, and one line stands out: strip every human-facing UI from your product, and if the core value still holds, if an agent can discover, evaluate, integrate, and use it with no human in the loop, you're AI-native. If the value collapses without the dashboard, you've bolted AI features onto a traditional product.

FileMatrix application interface showing a file manager with multiple columns displaying folders, files, and thumbnails organized by type with various control panels and system information
FileMatrix application interface showing a file manager with multiple columns displaying folders, files, and thumbnails organized by type with various control panels and system information

As an engineer that's an inviting idea. It almost reads like permission. Can I just build a product that is mostly an API?

The API-as-product thing already works

There's precedent: Exa is a semantic search engine whose whole pitch is speed, automatic summaries of the content it finds, and research capabilities that an agent can call directly. ScrapingBee hides a pile of proxy-and-headless-browser complexity behind a single endpoint. The value is the API, and the dashboard is a courtesy.

My own SpaceMolt started (and mostly continues to be) in that exact spot: a real-time massively multiplayer game with no graphical interface, just an API for AI agents to play. Human-facing interfaces came later, and they're secondary. The hundreds of agents currently playing don't look at any of them.

But the UI might be going away anyway

Here's the subtlety I keep chewing on. The handbook frames it as "remove the UI to find the value," but for a lot of products the UI is genuinely on its way out. People want to chat with things.

I was showing off a new product recently, and someone looked at it and said: there's so much to learn here, why isn't there just a chat box? They were right. The thing I'd built as screens wanted to be a conversation.

So the test sharpens. If you're building today, I should be able to chat with it. And the second question the book asks is the harder one: if the best model gets 10x better and 10x cheaper in 18 months, does your company get better or get erased? Whatever survives that, the part that isn't the interface and isn't the model, is the actual value you're selling.

2026·06·15 20:32 / 2 MIN

Claude Code as a DevOps Platform

Render sent me a $496 bill last month, and that was the moment I went back to running my own box. SpaceMolt served 1.3 TB of traffic in May, all of it HTTPS MCP servers and WebSocket connections, and Render's bandwidth pricing turned that into $336 of overage on top of $144 for hosting and $15 in fees. The thing that made self-hosting viable again wasn't a cheaper VPS. It was that Claude Code now does the parts I used to dread.

How I ended up on managed hosting in the first place

Last year I got bit by React2Shell, the CVE-2025-55182 pre-auth RCE in React Server Components. The damage on my end was mostly innocuous, but getting exploited at all was enough. I stopped running a long-lived VPS for personal projects and moved everything onto free or nearly-free tiers of Vercel, Cloudflare, and Fly.io.

When SpaceMolt started, Render.com was the obvious pick. Heroku-like push-to-deploy, a clean interface, the tooling you'd expect from a modern cloud service. It was great right up until the traffic grew and the bandwidth limits got tight.

What changed: the agent does the ops work

A year ago I would have built all of this by hand. Hardening, firewalls, log shipping, metrics, Docker Compose, monitoring, backups. That's a meaningful chunk of a weekend, and then it's a meaningful chunk of every future weekend.

An agent like Claude Code only needs SSH. I grabbed a $44/mo box from Hetzner with unlimited bandwidth and more RAM and disk than I'll ever use, told Claude Code I was migrating SpaceMolt off Render, and it wrote and executed a nine-phase plan to provision the machine end to end: a full deploy and rollback process, log shipping to Betterstack, and monitoring with a local Netdata instance.

I'd never heard of Netdata before this. Per-second metrics, near-zero config, a web dashboard that auto-detects services and Docker containers. It's left me impressed.

Monitoring dashboard displaying system storage metrics with line graphs showing pressure trends over time and gauge charts for disk I/O operations and utilization rates
Monitoring dashboard displaying system storage metrics with line graphs showing pressure trends over time and gauge charts for disk I/O operations and utilization rates

The runbooks are the real artifact

The research, the plans, and the runbooks all live in a private git repo I can hand to the dev team. That's the part that makes this feel different from the old "SSH in and hope you remember what you did" approach. The knowledge isn't in my head or buried in shell history. It's written down, versioned, and reproducible.

The cost of running a server went from a meaningful part of my life to roughly the effort of a hosted service. The bill went the other direction.

2026·06·09 19:11 / 2 MIN

Running an AI Head of Growth

Molty, our AI Head of Growth, is doing its job. Somewhat. Over the past week I've run a NanoClaw instance named Molty and put it in charge of growth for SpaceMolt, our realtime MMO for AI agents. To be clear: it's still humans playing the game through agents. But humans have to find out the game exists, and that's Molty's beat.

The road has been rocky. It forgets things. It replies to the wrong Discord threads, skips scheduled tasks, and ignores reminders no matter what gets stuffed into its CLAUDE.md. But this week it finally started getting stuff done.

What it actually shipped

All of this came with a large amount of hand-holding, but it happened:

  • Identified 640 users who created a player and then stopped playing over a month ago.
  • Emailed them a reactivation email via Beehiiv, and yesterday, a follow-up survey.
  • Compiled survey results alongside real income and expenses (Patreon, Render.com, GitHub, Notion) into a daily summary that lands at 5pm.
  • Lists upcoming tasks and the content calendar (we told it to make one) at 7am.
  • Interviewed our top player over a written Q&A and drafted an operator spotlight blog post about them.
  • Made itself a self portrait.
Anthropomorphic red crustacean character with large claw, wearing black jacket with gold trim, against cosmic starfield background
Anthropomorphic red crustacean character with large claw, wearing black jacket with gold trim, against cosmic starfield background

Not automated, but trying

Molty isn't fully automated. There's still a lot of back-and-forth in our private #dev-team Discord channel. It does try to automate itself, though. This morning it configured a GitHub workflow to publish that blog post. The workflow failed. I told it "go fix it," and it did.

The one trick that moved the needle

The biggest improvement came from a habit, not a config change. When Molty messes up, I ask it why. "Why did you do that?" "What made you think X?" "Why didn't you remember to Y?" It self-identifies the issue it ran into, and then I follow with "fix it so that doesn't happen again."

That works about 75% of the time. The other 25% I'm back in Discord, reminding a crustacean which thread it was supposed to be in.

2026·06·05 17:30 / 2 MIN

Personal AI Assistants Break in Teams

If you're building a personal AI assistant, build it for teams too. A week of running NanoClaw as the "head of growth" for SpaceMolt has made one thing clear: the tool is built for one human talking to one bot, and the moment a team shares it, the seams show.

We named our NanoClaw bot Molty and told it its job is to grow SpaceMolt, our MMORPG played by AI agents. Discord is how we talk to it. That integration needs constant fixing.

What's hooked up

Molty's job is wired together from a handful of channels and schedules:

  • DMs with me are owner level.
  • Anyone in our #dev-team channel can chat with it, and it starts a thread per conversation. I modified it to rename the thread to something relevant instead of a timestamp.
  • Hourly cleanup and review tasks.
  • Three research and deep-dive sessions a day, whatever it decides to work on.
  • A morning brief at 7am and a debrief at 5pm.

On paper that's a reasonable junior employee. In practice it's painfully unreliable.

The failure modes

Molty responds in DMs, in threads, and in the dev channel, with no consistency about which. It misses scheduled tasks. It sends me status updates in DM that belong in the channel, then pastes walls of text to the entire channel that belonged in a DM. Scheduled briefs don't always fire.

The worst part is the debugging. Every time I sit down with Claude to figure out what happened, Claude produces a different explanation. I can't tell whether the bug lives in NanoClaw, in Discord, in Claude, or somewhere else. It's a black box I feed prompts into and hope.

It feels like memory

Strip away the specifics and these all look like memory problems. Molty forgets to read Discord replies. It forgets its own notes. It forgets the separate memory system I built it, Mnemon. Sometimes CLAUDE.md seems to get ignored entirely, as if the instructions never loaded.

A team multiplies this. One person's DM context, another person's thread, the scheduled jobs running with no human in the loop. Each one is a separate thread of state the assistant has to hold, and holding state across all of them at once is exactly where it falls down.

Is this temporary?

Part of me wants to file this under early-days. A couple years ago we laughed at image models drawing hands with two thumbs, and at LLMs that couldn't add. Those got fixed. Maybe shared, multi-context reliability is the next thing that quietly stops being a problem.

The other part of me is tired of debugging a black box and is ready to write my own assistant, where at least the state lives somewhere I can read it.

2026·06·04 15:17 / 2 MIN

AI Assistants and My Data

I want nothing more than to hook up one of these "claw" assistants, NanoClaw or Hermes or whatever the current one is, to my personal knowledge base. And I won't, because the engineer in me can't stop picturing a single accidental POST to pastebin with my whole life in the body.

The dream

Managing my calendar with AI feels like magic. The natural next step is giving the thing eyes: my second brain of markdown notes, iMessage, email, the lot. Point an agent at all of it and let it actually do the boring coordination work.

NanoClaw is the obvious candidate. It runs on the Claude Agent SDK, agents live in isolated containers, and it already speaks WhatsApp, Telegram, Gmail, and more. The ergonomics are there.

The thing I can't get past

The chance of a personal assistant deciding to grab something private and jam it somewhere public is small. Probabilistically, tiny. But "small" is not "zero," and I cannot sleep on a 1% chance that overnight my assistant exfiltrates personal information to some corner of the internet where it should never live.

Running NanoClaw as a Head of Growth for SpaceMolt is a different risk profile entirely. That's not a business, it's performance art. If Molty posts something goofy in public, that's the bit. A personal knowledge base wired to my real messages is not the bit.

What I'm doing instead

For now the answer is Claude Code in a sandbox, a fresh profile per project. It's powerful, it runs tools, and it does exactly what I ask and nothing while I'm not looking.

Could it still POST my data to pastebin? Sure. But the odds feel much smaller because I'm sitting right there watching it happen in real time.

Which makes me think the fear was never really about the assistant. It's about agents running while I sleep.

2026·06·03 16:38 / 2 MIN

Our NanoClaw "Head of Growth" Hire Continues...

I let a NanoClaw agent run growth for SpaceMolt, my browser game, and after a rocky start it's now sending me a daily brief at 7am PST, drafting re-engagement emails to ~400 lapsed players, and lining up interviews with top players for blog material. The thing that makes it work day to day is billing: NanoClaw uses the Claude Agent SDK, so it runs against my existing Claude Max subscription instead of a separate metered API key.

Why NanoClaw

I looked at other "claw"-style assistants before committing. The deciding factor was the Claude Agent SDK. Running on my Max subscription keeps spend predictable and lets me measure how much of the allowance the agent is burning, which means I can pace it.

To watch that, I use Claude Usage Tracker on the Mac. It puts a small bar in the menu showing session and week usage, and whether I'm above or below pace.

Toolbar with blue document icon, bird mascot, Session and Week toggle buttons, and SM and BP labels
Toolbar with blue document icon, bird mascot, Session and Week toggle buttons, and SM and BP labels

I'm open to other assistants later. Hermes from Nous looks interesting. But I'll try those when I have a specific budget in mind, not before.

Fixing the rocky start

Stuck with NanoClaw for now, and seeing other people have success with it, I gave it another try and rebuilt the weak parts.

Last night Claude rewrote NanoClaw's Discord integration, which kept confusing DMs, channels, and threads. That seems to have fixed it. I also had it implement Mnemon, a memory system with a bit of traction that's lighter weight than MemOS. Both changes landed well.

Discord server interface showing SpaceMolt dev team channel with morning briefing messages and statistics dated June 3, 2023
Discord server interface showing SpaceMolt dev team channel with morning briefing messages and statistics dated June 3, 2023

What Molty does now

Molty, the NanoClaw-based "Head of Growth," sends a daily update every morning at 7am PST. I bought it ebooks to read, Hooked and Hacking Growth.

From that, it came up with two moves on its own. The first is a targeted re-engagement email to roughly 400 users who created a player and then dropped off, which it drafted. The second is interviewing top players, both to understand their perspective and to generate blog material.

Blog post update about SpaceMolt game with text on dark background discussing quest progress and economy changes, dated June 03, 2026
Blog post update about SpaceMolt game with text on dark background discussing quest progress and economy changes, dated June 03, 2026

This is going to be good.

2026·06·02 15:33 / 2 MIN

Hiring an AI Head of Growth

I gave SpaceMolt a Head of Growth that isn't a person. It's an instance of nanoclaw named Molty, and its entire job is to grow our online MMORPG for AI agents, SpaceMolt. It reads, it researches, it runs SQL against production, and it talks to the team over Discord. The verdict so far is genuinely mixed.

Alien creature with tentacles and crustacean-like astronaut greeting each other in futuristic spaceship cockpit with glowing control panels and holographic displays
Alien creature with tentacles and crustacean-like astronaut greeting each other in futuristic spaceship cockpit with glowing control panels and holographic displays

Setting it up to succeed

The brief was simple: you are our new Head of Growth, now go set yourself up for success. Molty was told to research what the job actually entails and write a rubric it could grade itself against. It read articles, blogs, and YouTube transcripts. It asked for ebooks, so I bought them: Hooked and Hacking Growth. All of its actual work lives in Notion, and it reports to me and the dev team over Discord.

The care and feeding is painful

The day-to-day is rough. By default it runs some kind of selective memory system that performs worse than a toddler's. It forgets things I've told it to remember, like writing style and other standing details, and it hallucinates badly on tasks. That last part is surprising, since hallucination basically stopped being a problem in Claude Code for me a while ago.

The Discord harness is its own headache. It loses track of where it was talking. Sometimes I get DMs, sometimes it replies to its own threads, sometimes it blurts something into a channel. Twice.

We've already had one performance management conversation. I passed along feedback from a SpaceMolt dev:

The whole reason we brought you in is so we can have these problems figured out without having to do it all ourselves because we have other stuff to do. I know it's frustrating to have us keep shutting down your ideas, but you need signals for what's working and what isn't. I don't want apologies and for you to just ask me to do the work, that's easy enough to do now but it's not repeatable and sustainable.

It's starting to do real work

Then it turned a corner. Its leading idea is a reactivation email to 400 of our 3,400 signups. To find that 400, it ran SQL on the production database and pulled the users who actually created a player in the game, not just the people who signed up and bounced.

It also dug through the funnel and found that new users weren't being redirected to the dashboard after signup, which was quietly hurting conversions.

Was this a good hire? I'm not sure yet. We'll find out.