Today, I wrote my own extension, called collaborating agents, for the Pi coding agent — which the famous (or infamous) OpenClaw is based upon. It allows me to easily work with multiple agents that can collaborate with one another by sending and receiving messages, and to allow an orchestrator agent to spawn multiple subagents.
My idea is inspired by Jeffrey Emanuel’s Agentic Coding Flywheel, and in particular its MCP Agent Mail. Spawning multiple agents is definitely helpful from a context engineering point of view, but they need to be able to communicate with one another, and to reserve and release files so that conflicts can be avoided.
Jeffrey Emanuel’s system can be effective, but it is way too complex for me to use. In contrast, my new Pi extension is designed for agents to be easily spawned and to talk to one another, but with only around 3400 lines of TypeScript code. I wrote the extension with less than a day of work, written by working with Pi itself. It may need a bit more fine-tuning to be battle-tested, but it is very usable already.
To install this collaborating agents extension and its included skill, install Pi first:
bun install -g @mariozechner/pi-coding-agent
And then choose one of the installation options:
- To install the extension as an npm package, run:
pi install npm:@baochunli/pi-collaborating-agents
- To install it from the git repository, run:
pi install https://github.com/baochunli/pi-collaborating-agents
To update the extension and skill to the latest release:
pi update
To remove the extension and skill:
pi remove npm:@baochunli/pi-collaborating-agents
or (if installed from a git repository):
pi remove https://github.com/baochunli/pi-collaborating-agents