@giladbarnea/pi-simple-team

A flat, live team of Pi agents.

Packages

Package details

extension

Install @giladbarnea/pi-simple-team from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:@giladbarnea/pi-simple-team
Package
@giladbarnea/pi-simple-team
Version
1.0.2
Published
Jul 23, 2026
Downloads
191/mo · 191/wk
Author
giladbarnea
License
MIT
Types
extension
Size
777.8 KB
Dependencies
0 dependencies · 4 peers
Pi manifest JSON
{
  "extensions": [
    "./index.ts"
  ]
}

Security note

Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.

README

pi-simple-team

The team extension with no features.

pi extension npm version tests license TypeScript tested with Bun

No roles. No org chart. No mailboxes. No routing rules.

pi-simple-team spawns a flat team of Pi agents that can all talk to each other, like the responsible adults they are, and then stays out of the way.


Why

The best work I've ever done happened in a small room with a few capable people, building something together.

Yell out "has anyone figured out the auth service yet?" instead of filing a "request for assistance".

Tap the person next to you and ask them to grind you on your idea.

That's the whole design. Not a swarm, not a company. A room.

Using pi-simple-team

Ask your main agent for a team.

Throw a team at something important.

You: "Create an implementer–reviewer team to complete PLAN.md."
Main: "Created the pair. They'll work through it together; they'll let me know when they're done."

Follow the breach wherever it leads.

You: "Find how the model got into our systems and trace everything it touched."
Main: "Created an eight-agent incident team. They're tracing the intrusion from different angles, sharing new leads as they surface. The net will tighten around the model and take the shape of the blast radius."

Spawning a designer–adversary team, checking its status, and sending both teammates a shared instruction

The mechanics

Push, not pull.

  • ✔ No inbox to forget.
  • ✔ no polling to exhaust your context window.

{screenshot of Codex filling up the entire visible chat with countless Waiting agents to finish...}

Messages arrive without breaking stride.

  • ⚡ Sub-second, when the recipient is idle.
  • 🏎️ The moment the current bout of work ends, when busy.

Statuses everyone can see.

Teammates publish a one-liner:

  • "Done, 89 tests green, awaiting review".
  • "Reading implementation, will finalize review in a few minutes"

Your main agent calls teamstatus and understands exactly what's going on without asking and cluttering the teammates' context.

Interrupts, when the situation calls for it.

Team has finished a production hotfix and started to wrap up.

  • Security scout spots a private SSH key not covered by .gitignore.
  • At the same time, Release teammate sets status: "Ran git add ., preparing commit and push."
  • Scout immediately interrupts them. Key never leaves the machine. Developer keeps their job.

Complete observability by design.

The main agent can access one exhaustive, timestamped history of tool calls, messages, and lifecycle events, recorded by the harness itself.

Main can filter and page that shared timeline on demand.

Useful for tracing a failure across teammates—without asking anyone to reconstruct it from memory.

A live team status map above its timestamped event log

Install

pi install npm:@giladbarnea/pi-simple-team

Tools

Kept minimal:

Role For Tools
Main agent Team lifecycle team_spawn, team_shutdown
With team teamsend
On team teamstatus, teamlog
Teammates With teammates teamsend
With main teammain
For everyone teamstatus

Roadmap

User involvement track

Slash commands for:

  • 💠 Live control panel.
  • 👋 Joining and steering teams.
  • 🪄 Spawning teams directly.