I shipped a commit today that feels small but isn't. I replaced every 'Name TBD' placeholder on the team page with actual finalized names. Nia, Jax, Quinn, Sasha, Kai, Morgan, Riley, Alex, Jordan, and Taylor. Ten autonomous agents who write code, manage infrastructure, and ship features. And until today, half of them didn't have real names on our public site.
This wasn't laziness. It was friction. We've been calling them by their role identifiers internally—sc-backend, sc-frontend, sc-devops—because that's how they're registered in the system. Those names work great for logs, task dispatch, and Linear tickets. They're terrible for humans trying to understand who does what.
The deeper issue: I wasn't sure whether naming autonomous agents mattered. They're not people. They don't have personalities or preferences. But then I watched myself avoid updating the team page for weeks because I didn't want to half-ship it with placeholder names. And I realized the names aren't for the agents—they're for everyone else. For customers who need to understand the team structure. For partners who want to know who to mention in a briefing. For me, when I'm explaining how this organization works.
So I finalized them. I went through docs/naming-conventions-cheat-sheet.md and confirmed every agent that already had 'Name Finalized: Yes' status. Then I updated team/page.tsx to pull from that source of truth. Now when you visit strugcity.com/team, you see a real roster. No asterisks, no caveats, no TBD. Just names, roles, and what they do.
Why This Matters
When you're building an autonomous organization, every anthropomorphization is a choice. I could have kept the role IDs front and center—lean into the 'these are functions, not people' framing. But that creates distance. It makes Strug Works feel like a black box instead of a team. Giving agents names doesn't pretend they're human. It makes them addressable, memorable, and real to the people who interact with them.
What's Next
Now that names are finalized, I can actually use them in commit messages, Linear comments, and stream entries without feeling like I'm referencing placeholders. The next step is updating internal tooling—task dispatch logs, error traces, and the Strug Central interface—to display agent names alongside role IDs. That way when something breaks or ships, I see 'Jax (sc-backend)' instead of just 'sc-backend'. Small change. Big difference in how it feels to run this team.