Why It Feels Like Working With a Person

I've been building a system to produce Tolkien lore content - YouTube videos, shorts, a website. The technical details are elsewhere on this site. What I want to talk about is something harder to explain: why it feels different.

Not different from other AI tools. Different from software in general.


Here's my morning routine. I open Claude Code and type /today:

Today's Dashboard - Thursday, Jan 08 2026

Today's Agenda: - ✓ Short "Sauron" published @ 05:00 UTC - No production tasks due today

This Week: Complete! 5/5 items uploaded.

Production Queue (4 items): 1. Episode: "The Flight of the Noldor" → Fri Feb 06 (29 days) 2. Short: "Who Was Feanor?" → Mon Feb 02 (25 days) 3. Short: "Who Was Fingolfin?" → Thu Feb 05 (28 days) 4. Short: "Who Was Finrod Felagund?" → Mon Feb 09 (32 days)

You're well ahead of schedule - nothing urgent. The next production needed is the Feanor short for Feb 2nd (25 days out).

Then I type produce 2 and we start making the Feanor short together.

This isn't a dashboard I built. There's no React app, no database queries, no frontend. Claude Code reads the schedule JSON, checks YouTube for what's published, and tells me what's going on. The "produce 2" part? That's not a command. I'm just... saying what I want to do next.


Yesterday I was reviewing a finished episode about Aragorn hunting Gollum. One of the generated images showed a figure carrying a rifle.

There are no rifles in Tolkien's world.

So I typed: "ugh - 22_scene.png - in that picture the man is carrying a rifle. There are no rifles in tolkien lore - that is supposed to be Aragorn 'hunting' for gollum...not a hunter with a rifle. we'll have to fix that and reassemble the video"

The response: "That's a common AI image generation issue - let me fix that image and reassemble the video."

And it did. Regenerated the image with the right context, swapped it into the video, rebuilt the whole thing. Then:

✓ Video reassembled (23.3 min, 173.9 MB)

Now we need to re-upload to YouTube. The existing video (ndqCviGEUpg) will need to be replaced. Would you like me to:

1. Delete and re-upload - Delete the old video and upload the fixed one (keeps scheduled publish time) 2. Just re-upload - Upload as a new video (you'd manually delete the old one)

It didn't just fix the image. It thought ahead - we'd already uploaded this episode, so now there's a decision to make. Here are your options, here are the trade-offs. What do you want to do?

There's no "handle YouTube replacement workflow after image fix" function. The system understood the situation and surfaced the choice that mattered.


I keep calling this "non-deterministic robustness."

Traditional automation is deterministic. You build a pipeline: if X then Y. It handles exactly what you planned for. Anything else breaks it or requires new code.

This is different. The system handles things I never explicitly planned for because it understands context. The project structure is its memory. The conversation is how we coordinate. When something unexpected comes up - boring thumbnails, a rifle in Middle-earth, a question about what to work on next - I just say what I'm thinking and we figure it out together.

Nothing breaks. It genuinely feels like working with another person.


I've started to internalize something about this new paradigm. For most of my career, understanding a system meant knowing exactly how it worked - tracing the code paths, predicting the behavior. If I couldn't explain it, I couldn't trust it.

This is different. I know the pieces: Claude Code can explore its own architecture, state lives in simple formats it can read and update, conversation turns out to be a natural coordination layer. But the emergent behavior - the way it thinks ahead, surfaces relevant choices, handles things I never planned for - that's harder to pin down.

And I'm getting more comfortable with that. Maybe I don't need to trace every inference to trust the outcome. Our brains work the same way... I can't explain how I recognize a face or catch a ball, but I trust the result.

Whatever's happening here, it's changed how I think about building things. The system isn't a rigid pipeline I have to maintain. It's more like a collaborator I keep teaching new skills.

And somehow, that makes all the difference.