My coworker Iris isn't a person

vnbrs2 pts0 comments

My coworker Iris isn't a person — Vinicius Brasil<br>My PM dropped a DM:

Hey Vini, users were pasting their API keys into our settings page and<br>getting “invalid key”, but the keys were fine. Mind taking a look at this?

I knew what the issue was before I finished reading it. We weren’t trimming the<br>trailing newline people copy along with the key. I knew, just as fast, what<br>fixing it would cost me:

Leave the Slack thread, stash my current work, create a new branch, open the<br>editor, run Claude Code, review the diff, merge the PR, deploy it to<br>production, come back to Slack to say it’s done.

Nine steps for two lines of logic. So I did what any engineer would do: I<br>decided it could wait until I finished my current task.

People remember unfinished or interrupted tasks better than completed tasks.

What I didn’t know is that just by acknowledging the new task I’d opened a loop<br>my brain refused to close. There’s a name for it: the Zeigarnik<br>effect.

The Zeigarnik effect: unfinished tasks pile up as cognitive load<br>A head in profile stands in for the mind. Unfinished task-loops — small<br>rings left open by a gap — drop into it one after another, each rattling<br>while it stays open. A segmented meter labelled cognitive load climbs a<br>notch with every loop. Then the loops all snap closed at once, go still, and<br>dissolve, and the meter drops back to empty: the relief of clearing them.<br>This is the Zeigarnik effect — unfinished work keeps its grip, and keeps<br>adding load, until it is done.<br>COGNITIVE LOAD OPEN LOOPS<br>This time I typed something different on Slack. @Iris, this is probably lacking a whitespace trim. Open a PR. A PR link appeared in the same thread.<br>She’d found the right handler, trimmed it, and even added a<br>test for the newline case. I skimmed the diff, hit merge, and went back to what<br>I was doing. The loop closed within three minutes.

Iris is the AI agent we provisioned on Slack at CrewAI. She’s built on CrewAI<br>itself and wired into our internal tooling. We tag @Iris and she can kick off<br>crews, file Linear issues, run Claude Code, open PRs, send emails. None of this<br>is new:<br>Linear,<br>GitHub,<br>and Devin all let you hand work to an agent the way you’d<br>assign it to a teammate, and Salesforce now calls Slack the interface for the<br>agentic<br>enterprise.

FIG. The top five types of work I handed Iris<br>I’ll admit I was skeptical about agents autonomously writing to our codebases.<br>And for real engineering work, that skepticism still holds. Hand Iris<br>something complex and the cost of writing the code just becomes the cost of reviewing it, and I<br>end up babysitting threads instead of writing software.

But that’s not what surprised me. What surprised me is that for the small stuff<br>I context switch less, even for code.

It was never the big work that wrecked my day. It was the ten small things I<br>kept half-holding in my head.

Thanks, Iris. And please remember me when robots take over.

iris work open slack code unfinished

Related Articles