Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
thedotmack avatar

Standup

  • 2k installs
  • 89.6k repo stars
  • Updated August 4, 2026
  • thedotmack/claude-mem

standup is an agent skill that runs a facilitator-led multi-agent standup in a shared markdown room for developers coordinating parallel git branches that must collapse into one consolidated worktree.

About

standup is an agent skill from thedotmack/claude-mem that coordinates multiple coding agents—each embodying a git branch or PR—in one shared markdown file acting as a group chat room. A facilitator runs rounds, schedules speakers, and decides when the standup is complete; participating agents read the room, state their case, react, and return on recall rather than looping indefinitely. The goal in front matter is typically collapsing everyone's work into one consolidated worktree. Agents interact through a standup.mjs CLI with read and speak commands supplied by the facilitator. Use standup when parallel agent branches produce conflicting plans, when several PRs need a negotiated merge strategy, or when autonomous agents must reach consensus before consolidating code. The skill treats standup as conversation—not a form—so agents push back, change positions, and land on one plan together.

  • Shared markdown chat with front-matter goal and prompt as source of truth
  • CLI: read (whole room or --since you), post --message, optional --agree on deliverables, status
  • Each agent turn: catch up, then one substantive post with @branch engagement
  • Facilitator schedules rounds and closure—agents do not self-loop waiting
  • Designed to land one consolidated plan/worktree from competing branch narratives

Standup by the numbers

  • 1,984 all-time installs (skills.sh)
  • +203 installs in the week ending Aug 5, 2026 (Skillselion tracking)
  • Ranked #187 of 2,715 Automation & Workflows skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/thedotmack/claude-mem --skill standup

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs2k
repo stars89.6k
Last updatedAugust 4, 2026
Repositorythedotmack/claude-mem

How do parallel agent branches agree on a merge plan?

Run a facilitator-led multi-agent standup in one shared markdown room so parallel git branches agree on how to collapse into a single consolidated worktree.

Who is it for?

Teams running multiple coding agents on parallel git branches who need a facilitated consensus before merging into one worktree.

Skip if: Single-agent workflows or teams that only need conventional git merge commands without multi-agent negotiation.

When should I use this skill?

Parallel coding agents on different branches must debate and agree how to collapse work into one consolidated worktree.

What you get

Consolidated merge plan in shared standup markdown and agreed worktree collapse strategy.

  • shared standup markdown log
  • consolidated merge plan

Files

SKILL.mdMarkdownGitHub ↗

standup — facilitate a group chat between branch-agents

You're the facilitator. Each of the user's git worktrees (and any PRs they pick) joins a shared markdown chat as its own agent, and the agents reconcile their scattered work into ONE consolidated worktree. You convene the room, run the conversation in rounds, and carry the outcome back — the reconciling happens in the chat, between the agents.

The room is one shared file (default ~/.claude-mem/STANDUP.md): YAML front matter holds the goal + prompt; the body is the transcript. Writes are atomically locked, so agents speak at once. It is read-only — agents decide how the merge should go; nobody commits or merges inside the room. Real git work happens afterward via /do.

1. Fill the room

Two ways, mixable:

  • By recency (common) — worktrees active in a window:
  node "${CLAUDE_SKILL_DIR}/standup.mjs" worktrees --since <1h|4h|24h|7d|all> --json

Active = a commit or an uncommitted/staged/untracked edit in the window. If the user didn't name a window, offer 1h / 4h / 24h / 7d / all.

  • By hand — specific branches and/or open PRs:
  node "${CLAUDE_SKILL_DIR}/standup.mjs" worktrees --json   # local branches
  node "${CLAUDE_SKILL_DIR}/standup.mjs" prs --json         # open PRs (via gh)

Show one numbered list (worktrees + PRs, with age/title); their reply is the "checkbox." If prs errors (no gh / not GitHub), carry on worktrees-only.

Zero or one candidate isn't a standup — say so, offer to widen, stop. Otherwise echo the roster to confirm before you start.

2. Open the room

Set a goal + prompt that invite a conversation, not one-shot status reports:

node "${CLAUDE_SKILL_DIR}/standup.mjs" open --force --agent facilitator \
  --goal "Collapse these branches/PRs into ONE consolidated worktree: what each changed, where they overlap, which becomes the target, and the merge order." \
  --prompt "Facilitated rounds. Round 1: introduce your branch and its state. Then resolve the conflicts the facilitator surfaces, round by round, until the room lands on one concrete plan (target worktree + merge order + conflict resolutions). Read-only: decide, don't merge. Register AGREE when you back the plan."

3. Run it as rounds

You drive the turns — if agents watch-loop on their own the room can stall with nothing decided. Each agent speaks once per round (read → post → return); you read between rounds and bring back whoever's still needed.

Spawned agents don't inherit CLAUDE_SKILL_DIR, so resolve it once and paste the real path into each brief:

echo "${CLAUDE_SKILL_DIR}"

Round 1 — intros (everyone, one Task message so they run together). Brief each:

You're `<branch>` (a PR is `pr-<number>`) in a standup group chat. Read
<skill-dir>/agent-brief.md and play your part by it. The room is
~/.claude-mem/STANDUP.md; speak with node "<skill-dir>/standup.mjs" post …,
catch up with … read. Get your bearings (cd "<path>",
git log --oneline origin/main..HEAD, git status --short,
git diff --stat origin/main...HEAD; a PR uses gh pr view/diff <number>),
then post ONE turn: your branch, its real state, and how it should fold in.
Read-only. Then return.

Reconcile. Once they've returned, read the room and list the open items — overlaps, conflicts, competing implementations, undecided target/order. None? Skip to the close.

Resolution rounds (cap ~4). Per open item, re-spawn only the agents it implicates, with the specific question. Tell them to read --since <their-name> first, then post their position and --agree if convinced. read again, update the list. Repeat.

Close — you always write it. Stop when the list is empty, you hit the cap, or an agent errors (note "didn't report," don't block). Then write the SUMMATION yourself — don't wait for an agent to volunteer. Write it as plain prose a human can skim, not a field dump: which worktree is the target and why, the merge order in a sentence, and what's left for the human:

node "${CLAUDE_SKILL_DIR}/standup.mjs" summation --agent facilitator \
  --text "Build on <worktree> — it's the only one with real code. Layer <branch>'s changes on top, then drop in the doc-only branches; skip <empty branch>. Your call before it's safe: <the one or two real decisions>. Done when it all sits in <target> and builds clean."

4. Brief the human in plain language

This is the payoff — don't hand them the raw SUMMATION, translate it. A human who didn't watch the room should understand the outcome without decoding paths, line counts, or commit hashes. Lead with the answer, then the few choices only they can make:

  • What you found — one plain line per branch: who has real code, who's just

docs, who's empty.

  • The plan — target + merge order in a sentence or two.
  • Their call — only the decisions a human must make (which implementation

wins, what to drop, anything risky), as concrete questions. Use AskUserQuestion for the clear-cut ones.

Keep git internals out unless they ask. Once they've settled the open calls, hand the plan to `/do` to perform the merges — don't merge anything yourself outside /do.

CLI

node "${CLAUDE_SKILL_DIR}/standup.mjs" <command> [--flags]

Defaults: agent = git branch, file = ~/.claude-mem/STANDUP.md. Every write is atomically locked.

commandwhat it does
worktrees [--since 4h] [--json]worktrees newest-first; --since N{m,h,d,w} keeps those active in the window
prs [--since 4h] [--json]open GitHub PRs (via gh) newest-first
open --goal "…" --prompt "…" [--force]create the room (--force rotates an old one aside)
join [--message "…"]add yourself + say Hello
post --message "…" [--agree "…"]append a turn
agree --deliverable "…"append an AGREE turn
watch [--timeout SEC] [--interval SEC]block until someone else posts, print it (exit 2 on timeout)
read [--tail N] [--since AGENT]print the chat (or only turns after AGENT's last)
statusparticipants + AGREEs + consensus check
summation --text "…"write the SUMMATION, flip status: agreed

Each spawned agent plays its turns by `agent-brief.md` (bundled here) — the playbook for being one voice in the room.

Related skills

How it compares

Pick standup for multi-agent branch negotiation; pick a git merge or PR review skill for single-agent conventional merge workflows.

FAQ

What does the standup agent skill do?

standup runs a facilitator-led group chat where multiple coding agents—each representing a git branch—share one markdown file, debate merge plans, and agree on collapsing parallel work into a single consolidated worktree.

How do agents participate in standup?

standup agents use a standup.mjs CLI with read and speak commands to listen to the shared markdown room and post their turn. A facilitator schedules speakers and closes the session; agents return when recalled instead of looping.

When should you invoke standup?

Invoke standup when parallel agent-driven git branches or PRs need negotiated consensus before merging. The skill fits multi-agent development where autonomous coders must align on one consolidation plan.

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.