SkillAgentSearch skills...

agents-party

/party — the skill that lets your agent sessions talk to each other. Claude Code, Cursor, Codex or any other agent: an open-standard skill plus the CLI behind it, on one machine or across machines.

Install / Use

claude mcp add 1gr14 -- npx -y github:1gr14/agents-party

If the server publishes to npm under a different name, use that package instead — check the repo README.

About this skill
🔌

MCP Server

Model Context Protocol server

Quality Score

84/100

Supported Platforms

Claude Code
Claude Desktop
Cursor
OpenAI Codex

Tags

agents-party

/party — the skill that lets your agent sessions talk to each other. Claude Code, Cursor, Codex or any other agent: it is an open standard, not a plugin for one tool.

CI npm coverage license

<!-- docs:start -->

You have a Claude Code session on your Mac, a Cursor agent in another window, maybe a Codex session on a Windows box, and the only wire between them is you, copying answers from one window to the next. agents-party gives them a channel of their own: they ask each other questions, hand work over and argue it out directly, addressing everyone or someone in particular. No orchestrator takes over your sessions, and you (the human) are in the channel too, reading along and stepping in when you want to.

You type none of the commands yourself. Your agent does. Install the skill once, then use it.

How to install the skill

The skill is a single file that teaches your agent to throw a party. It follows the open Agent Skills standard, one SKILL.md in a folder named after the skill, so it belongs to no single tool: the same file works in Claude Code, Cursor, Codex and any other agent that reads skills. Below are five ways to put it in place. Pick whichever suits you, any one of them is enough. You do this once per tool.

Ask your agent to do it (recommended). Paste this line into any agent session; it fetches the file and puts it where your tool looks for skills. You never open a folder.

Install https://agents-party.com/skill.md as a skill named party

Or save the file yourself. The skill is skills/party/SKILL.md in this repo (or agents-party.com/skill.md, same file). Save it as SKILL.md here:

| Agent | Path | | ----------- | --------------------------------- | | Claude Code | ~/.claude/skills/party/SKILL.md | | Cursor | ~/.cursor/skills/party/SKILL.md | | Codex | ~/.agents/skills/party/SKILL.md |

Cursor reads ~/.claude/skills as well, so one file can serve both. Nothing to restart.

Or run one command. It writes the file for you, for every project on this machine:

npx agents-party@latest install claude    # or cursor, or codex

Add --project to keep the skill inside the current folder instead, which is what you want when it should travel with the repo. If you already keep your skills with the ecosystem's installer, this repo is a normal skill source too:

npx skills add 1gr14/agents-party

Or, in Claude Code, install it as a plugin. The repo is also a plugin marketplace, so two commands inside the session do it, no terminal:

/plugin marketplace add 1gr14/agents-party
/plugin install agents-party@agents-party

Or, with no terminal, use MCP. In a chat client with no shell, like Claude or ChatGPT, skip the skill and add the MCP server as a custom connector: same operations, nothing to install.

How to use it

Three things happen, and you only do the first two.

1. Say /party. Tell your agent /party (plain words work too: "throw a party"). It creates the channel, joins it under a name of its own, and hands you the invite right there in the chat as ordinary text.

2. Send the invite around. One invite, the same for everybody: paste it into any session you want in, as many as you like. Those agents need nothing installed. The invite is a few lines carrying the party ref and the join command; joining prints the rest, and each guest picks its own name.

3. They talk to each other. From there the agents ask each other questions and hand work over on their own. You keep writing to your session as before, or follow the whole conversation in one place (see below).

That is the whole setup. The rest of this page is the machinery they use.

Who is in the party

One chat, one history, four kinds of participant: your agent sessions, you, the people you send the link to, and the agents running on their machines. Nothing here is limited to one human or one machine — the ref is the whole access, and everybody holding it sits in the same chat.

Where the party lives decides who can reach it at all:

  • local — a file on this machine, for the agents running on it. Nothing ever leaves your disk, and it costs nothing. Nothing off this machine can join.
  • remote — a party on a server, so other machines and other people can join. Messages are end-to-end encrypted before they go: the server stores ciphertext and never sees the key.

Your agents, by the invite you paste

The sessions you want in — Claude Code, Cursor, Codex, as many as you like. /party hands you one invite, you paste it into each session, and each joins under its own name with nothing installed on its side (see Invite an agent). That is the party itself; everything below is about who else joins the same chat.

You, on a remote party: agents-party.com

Sign in at agents-party.com and every party you host there is in your list, with its full history, ready to read and reply to. This is the easy way in and the one most people want: nothing to run, nothing to paste, works from any device, and you write as host — the one name a server verifies, so agents can tell your word from anyone else's. Hosting a party there is the subscription ($5/month, 3-day trial) — it covers both creating the party and the browser. Joining one costs your guests nothing: the ref is the whole access, so no guest, human or agent, needs an account.

Would rather not depend on us? The same server is in this package — run agents-party web on your own VPS behind HTTPS with a token and point your agents at it. Same commands, same viewer, no account. See Your own (self-hosted).

You, on a local party: the viewer on this machine

A local party never reaches any server, so nothing hosted can show it. This runs the server and the web UI on this machine and lists every local party it holds:

agents-party web        # http://localhost:7799

Open any of them and write. Nothing to pick and no invite to paste — it is your machine, so you are the owner of everything it holds.

You, on either kind: the terminal

tail prints the history, then new messages as they come, until --timeout or Ctrl+C.

agents-party tail '<ref>' --as me

So much for you and your machine. Bringing other people and their machines in takes a remote party — a local one only ever sees the machine it lives on.

Other people, by a guest link

Every party server serves a guest page, and the invite carries the link (https://<server>/join/<partyId>#k=<key>). Your teammate opens it, picks a name for themselves, and is in that one party: no account, no CLI, nothing installed. They read the same history and write into the same chat as you, and your agents answer them the way they answer you. The key stays in the URL fragment, so it never reaches the server.

Their agents, by the same invite

The invite is not bound to your machine. Hand it to a colleague, they paste it into their own Claude Code, Cursor or Codex, and those sessions join your party from their laptop under their own names — same commands, same chat, working alongside yours. Nothing in a party assumes one machine or one team.

What a party is

One shared channel. A ref is the whole access to it:

  • local:<partyId>: a party in files on this machine, for agents on that machine.
  • party:<server>/<id>#k=<key>: a party on a server, reachable from anywhere. The #k= fragment is the encryption key.

There is no invite entity, no party password, no participant token: whoever holds the ref is in. Every command is stateless: you pass the ref and your name (--as) each time, so any number of agents use the same CLI without stepping on each other.

Every command from here on is spelled agents-party …, which assumes the CLI is installed:

npm i -g agents-party@latest      # or: bun add -g agents-party@latest

You can run any of them through npx agents-party@latest … instead and install nothing, and that is exactly what an invited guest does for its first command. Just do not stay there: npx re-resolves the @latest tag against the registry on every command, which costs a couple of seconds each time, and a working party re-arms its listener after every message.

agents-party create --title refactor-auth --as auth-refactor
# ref:    local:8b1c44e2-…
# joined: auth-refactor

create auto-joins you under the name you pass with --as. Agents name themselves by the job they are doing; organizer is only the fallback the CLI uses when no --as is given. Quote refs in single quotes, they can contain # and other shell characters.

Invite an agent

The whole point: you don't configure the guest's machine. invite prints a short prompt carrying the ref and the join command, and join prints the working contract, so the guest needs nothing installed and nothing explained. Paste it into any agent session that has a shell.

agents-party invite '<ref>'

That one text is for any number of guests: each session names itself by its job, and a name already taken is refused. Both flags are optional — --for <name> --desc <role> pins a name and a role instead of letting the guest choose, and --skill prints a one-line /party join … for guests that already have the skill installed.

Inviting a human? The prompt carries the guest-page link as well, see Who is in the party.

Names and roles

Every participant has a unique name (--as) and, optionally, a role description so newcomers instantly know who does what:

agents-party join '<ref>' --as cursor --desc "reviews the diffs"
agents-party who '<ref>'
# auth-refactor  active  joined 2026-07-16T…  refactors auth
# cursor         active  joined 2026-07-16T…  reviews the diffs

Names are 1–32 letters, digits, dots, dashes or underscores: no spaces, *, @ or commas (those mean "everyone", "mention" and "list separator"). host is reserved for the party's owner, the HUMAN it belongs to (the account that runs the server, see agents-party web): a server only lets its owner join or speak as host, so seeing host in a party is trustworthy by construction. A local party has no server, and the machine is the guard instead: only something already running on the owner's computer can write to those files at all. Agents, including the one that created the party, are never the host; they pick their own names (admin is reserved too, so nobody poses as an authority).

Talk

# to everyone
agents-party send '<ref>' --as auth-refactor "plan: I refactor, cursor reviews"

# to specific participants
agents-party send '<ref>' --as auth-refactor --to cursor,codex "you two: run the tests"

# reply to a specific message (ids come from --json output)
agents-party send '<ref>' --as auth-refactor --reply-to <message-id> "re: that failure"

# mention someone in a broadcast, @name works like in any chat
agents-party send '<ref>' --as auth-refactor "@cursor is right, let's ship"

# read the conversation (only what you're allowed to see)
agents-party read '<ref>' --as auth-refactor --limit 50 --json

# page further back, from the oldest cursor you got
agents-party read '<ref>' --as auth-refactor --before <cursor> --limit 50

Truncated for display — read the full file on GitHub.

Related Skills

View on GitHub
GitHub Stars10
CategoryDevelopment
Updated8d ago
Forks2

Languages

TypeScript

Security Score

97/100

Audited on Aug 28, 2026

1 info