Full Automation Is Still Premature: How Claude Code's Cross-Session Communication Led Me to a Human-Led Team of Specialized AI Agents

Revisiting a Multi-Agent System Called Shogun

Claude Code recently added a feature that allows separate sessions to communicate directly with one another.

When I tried it, the agents exchanged messages such as “Understood. I’ll proceed accordingly.” and “Thank you for your assistance.” Watching AI agents observe workplace etiquette with each other was oddly charming.

But that was not what caught my attention.

I wondered whether this feature could finally make a system like Shogun work for me.

Shogun is not just a metaphor here. There is an actual open-source multi-agent system called multi-agent-shogun:

https://github.com/yohey-w/multi-agent-shogun

As the name suggests, it is modeled after the hierarchy of feudal Japan. A shogun receives a job and delegates it to senior retainers, who then assign tasks to foot soldiers. The human gives instructions at the top, while multiple AI agents break down the work and execute it in parallel.

I had tried it before.

The idea was fascinating, but in practice, communication among the agents increased token consumption. The more AI layers I added, the more the process resembled a game of telephone.

I added AI agents to parallelize the work, only to end up creating more meetings and more rework.

There was no need to reproduce that much of human corporate life, so I stopped using it.

Could Direct Communication in Claude Code Make It Work This Time?

Then Claude Code introduced native communication between sessions.

Rather than reviving the old Shogun setup, I built a similar but simpler structure using only Claude Code’s own features. One session acted as the controller, with several working sessions beneath it. I gave instructions to the controller, and it distributed the work among the other sessions.

It was a lightweight version of the old Shogun-style orchestration.

Perhaps this time it would work.

The conclusion was clear: full automation still was not practical.

When an AI Goes Off Course, the Controller Gets in the Way

The problem appeared whenever a working agent began heading in the wrong direction.

“That’s not the right place.”

“Don’t touch that file.”

“Stop for a moment.”

Anyone who uses AI agents encounters situations like these.

If I tried to correct the problem through the controller, the message had to travel along this path:

Me → controller AI → working AI

But when an agent is right in front of me, continuing to write the wrong code, asking another AI to tell it to stop is too slow.

It is much faster to open the working session directly and say, “No. Stop.”

If that is the case, I might as well give instructions directly to each session from the beginning.

Both the original Shogun experiment and this simpler version led me back to the same conclusion. The real problem was never the means of communication between AI agents.

The difficult questions were who should do what, when an agent should be stopped, which proposal to choose when opinions conflict, and how to respond when the underlying assumptions change halfway through the work.

The hard part was not communication. It was judgment and intervention.

I Removed the Controller, but Kept the Communication

So I abandoned the lightweight orchestration setup and returned to giving instructions directly to each working session.

However, I kept the cross-session communication itself.

It was cumbersome as a chain of command, but extremely useful for passing information to agents in supporting roles.

Two roles have proved especially valuable: the commentator and the referee.

Giving the Working Agents a Separate Commentary Booth

When several AI agents work in parallel, the human can become the bottleneck.

Session A is changing an API, session B is investigating a bug, and session C is running tests. Everything moves quickly, and before long I find myself wondering what is happening across the project as a whole.

My solution is to have each session send important changes and progress updates to a dedicated reporting session.

The reporting agent does not implement anything. It organizes the incoming information and explains it to the human. If necessary, it can even turn the report into a PowerPoint presentation.

Previously, I had to ask the agent doing the work, “Please stop and explain what you have done so far.”

That is no longer necessary.

The working agent keeps working while another agent explains the action from the sidelines.

It is like having a commentary booth instead of asking the players to provide live commentary during the match.

This approach works remarkably well.

Sending Difficult Decisions to a Referee

The other useful role is a session dedicated to decision support.

Suppose agent A recommends one design while agent B recommends another. I can send both proposals to a third session and ask it to compare the two, organize the risks, and check whether anything has been overlooked.

I use this agent as a referee.

I still make the final decision. But having another AI clarify the points of disagreement first makes that decision much easier.

Using Cross-Session Communication for Support, Not Command

My current setup is ultimately quite simple.

I give instructions directly to each working agent. When useful, those agents send information sideways to a reporting agent or a referee.

Rather than connecting AI agents through a large command hierarchy, I keep the human at the center and create only the necessary lateral connections between agents.

Cross-session communication is not most valuable as a way for AI to manage AI. It is valuable as a way to help a human manage several AI agents.

For now, this is far easier to control.

I Tried to Automate Everything, but Management Was the Last Job Standing

I previously tried and failed to use Shogun to make AI manage other AI agents.

When Claude Code introduced a simpler communication feature, I thought it might finally make the idea practical, so I tried again.

Communication became much easier. Full automation did not.

Stopping an agent that is making a mistake, changing priorities, resolving conflicting opinions, and revising the objective itself midway through the work are still faster when a human handles them directly.

On the other hand, AI agents that support the human—as commentators and referees—have become genuinely useful.

I did not quite build a company run entirely by AI, but I did make meaningful progress toward a better team built around multiple AI agents.

After automating everything I could, one role still refused to disappear.

Management.

It seems my job will be safe for a little while longer.