Help us improve
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
By wan-huiyan
Coordination toolkit for parallel Claude Code sessions sharing one repo — issue-pickup claim protocol (assignee + wip label), worktree & session-isolation pitfalls, parallel-PR conflict recovery, subagent-integrity edge cases, and squash/merge mechanics for parallel-PR workflows.
npx claudepluginhub wan-huiyan/agent-squad-hrResolve rebase/merge conflicts in the the-project-repo repo when an old PR is being merged into a much-newer main. Use when: (1) `git rebase origin/main` or `git merge origin/main` reports CONFLICTs limited to `docs/generate_tracker.py`, `docs/site/index.html`, `docs/site/roadmap.html`, `docs/site/active-sprint.html`, or `docs/site/assets/site.{css,js}`, (2) you are cleaning up stale PRs authored in earlier sessions, (3) an add/add conflict appears in `docs/overnight/<date>/state/*.json` or `docs/handoffs/session_NNN_*.md` because both branches wrote the same session artefact. Covers the "union the generator, regenerate the HTML" playbook discovered while clearing 12 open PRs in Session 102. v1.3.0 (2026-05-08) adds Step 2a (ID-collision: your Item() ID claimed on main → renumber to next free ID + propagate rename to PR body / commit msgs / handoff) and Step 2b (recurring-rebase loop in dense parallel-PR windows, with `gh pr merge --auto` footgun warning for solo-contributor repos without required-status-check branch protection). v1.4.0 (2026-05-08, an earlier session) adds Step 2c (silent ID collision: two Items with same ID at different file positions produce NO rebase conflict but still collide logically; audit via `grep -c | sort | uniq -c | sort -rn` post-rebase AND post-merge — the id-fn favicon-vs-an earlier session-retro case where collision was only caught in the next session's handoff PR via `wc -l` audit, not at rebase time).
Recover gracefully when an Anthropic credit/billing failure stalls multiple in-flight parallel subagents mid-orchestration, then later resolves. Use when: (1) you've dispatched 2+ parallel subagents (Task tool with `run_in_background: true`) and a credit/billing issue, MCP outage, or other transient harness failure has frozen them, (2) the user reports the issue is now resolved and asks you to continue, (3) you're about to relaunch "resume" agents to pick up where stalled originals left off. Defends against the silent-revive trap: when API access is restored, ORIGINAL stalled subagents can auto-resume from where they froze and continue working IN PARALLEL with any "resume" agents you dispatch — leading to two agents racing on the same branch / PR / files, duplicate review comments, or one agent overwriting the other's work. Captures the diagnostic recipe (JSONL mtime + worktree-state inspection, NOT just agent status) and the safe resume pattern (state-aware briefs that detect current state and pivot to value-add if originals already recovered). Sister skill to `subagent-reports-complete-but-pr-unmerged` (different gap: completed status vs unmerged PR) and `anthropic-credit-balance-error-vs-app-bug` (different layer: diagnosing fake vs real credit errors, not recovering from real ones).
Diagnose "I edited the template / view / CSS but Flask debug-mode keeps serving the old version" when running a local dev server (Flask, Django runserver, Rails server, etc.) from one git worktree while editing files in a sibling worktree of the same repo. Use when: (1) you have multiple `git worktree` checkouts of the same repo (typical with `.claude/worktrees/<feature>` directories), (2) a dev server is running in worktree A serving its working tree, (3) you're making edits in worktree B because branch X is checked out at A and you can't `git checkout X` in B too, (4) `curl http://127.0.0.1:PORT/page` returns byte-identical responses despite your edits, (5) you're tempted to blame Jinja bytecode cache, Flask `@_ttl_cache`, or browser caching. Root cause is filesystem-level: each git worktree has its own independent working tree on disk; Flask is reading worktree A's files, not worktree B's. Cache-busting tricks (`touch app.py`, browser hard refresh, restart Flask) won't help. Sister skill to `flask-debug-ttl-cache-stale-after-rebake` (genuine TTL cache trap) and `gh-pr-merge-worktree-checkout-trap` (branch-checked-out-elsewhere errors). Different from `deploy-from-stale-worktree-silent-rollback` (which covers Cloud Run / Docker production deploys, not localhost).
Coordinate GitHub issue pickup across parallel Claude Code sessions (or human + agent) using BOTH `assignees` and a `wip` label, so sibling sessions detect the claim and skip. Use BEFORE writing any code that closes / addresses a GitHub issue when there's any chance another session is working the same repo. Trigger on phrases like "pick up issue
Diagnose and bypass `gh pr merge --squash --delete-branch` failing with "failed to run git: fatal: 'main' is already used by worktree at ..." when another git worktree has main checked out. Use when: (1) you run gh pr merge and see this exact error, (2) you have multiple worktrees in the repo (e.g. `.claude/worktrees/*`), (3) the error appears even though the GitHub merge itself looks fine. The merge SUCCEEDED on GitHub — only gh's local-side effect (post-merge `git checkout main`) failed. Verify via `gh pr view N --json state,mergedAt`; if state=MERGED, you're done. This also applies to `gh pr checkout` and any other `gh` subcommand that tries to touch the local main branch while another worktree has it claimed.
Share bugs, ideas, or general feedback.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Harness-native ECC plugin for engineering teams - 63 agents, 249 skills, 79 legacy command shims, reusable hooks, rules, MCP conventions, and operator workflows for Claude Code plus adjacent agent harnesses
Plugin-safe Claude Code distribution of Antigravity Awesome Skills with 1,443 supported skills.
Core skills library for Claude Code: TDD, debugging, collaboration patterns, and proven techniques
Tools to maintain and improve CLAUDE.md files - audit quality, capture session learnings, and keep project memory current.
Reliable automation, in-depth debugging, and performance analysis in Chrome using Chrome DevTools and Puppeteer
Multi-agent adversarial review panel — 4-6 AI reviewers debate your code/plans, then a judge delivers a structured verdict with epistemic labels. Bundles plan-review-integrator for applying review findings back into implementation plans.
Add a cute, hand-authored SVG favicon to a web app. Three techniques (emoji, gradient blob, 16×16 pixel art) — ships with 13 pixel-art mascots and 9 emotion-variant gradient blobs.
Coordination toolkit for parallel Claude Code sessions sharing one repo — issue-pickup claim protocol (assignee + wip label), worktree & session-isolation pitfalls, parallel-PR conflict recovery, subagent-integrity edge cases, and squash/merge mechanics for parallel-PR workflows.
Existence/strategy audit for a portfolio of published Claude Code skills, plugin bundles, or adjacent repos — should each exist at all? Per-artifact KEEP / CONSOLIDATE / KILL / PIVOT verdicts from an existence-pinned adversarial panel with web-verified differentiation against competitor tools and redundancy / maintenance / coherence analysis. The strategy axis the sibling skills skip: quality (skill-portfolio-audit), placement (skill-portfolio-repo-placement-scan), usage (ecosystem-audit).
Keep locally installed Claude Code skills in sync with their GitHub repos
A coordination toolkit of 24 Claude Code skills for running multiple parallel sessions against the same repo without collisions, stranded work, or rebase loops — issue-pickup claim protocol, worktree & session-isolation pitfalls, parallel-PR conflict recovery, subagent-integrity edge cases, and the squash/merge mechanics that bite when multiple PRs converge on the same branch.
# Add the marketplace
/plugin marketplace add wan-huiyan/agent-squad-hr
# Install the plugin — one shot, gets all 24 skills
/plugin install agent-squad-hr@wan-huiyan-agent-squad-hr
This is a single multi-skill plugin (modeled on superpowers), not a marketplace of individual plugins. One install gets you the full before / during / after / orchestrator-aware / merge-mechanics arc; you can't pick-and-choose per-skill via /plugin install. If you only want one or two of these skills, copy them directly into ~/.claude/skills/<skill-name>/ instead.
The 24 skills split into a before / during / after / orchestrator-aware / merge-mechanics arc:
Before any code is written, claim the issue so sibling sessions detect it and skip.
| Skill | Role |
|---|---|
| gh-issue-claim-coordination | 60-second protocol: preflight (gh issue view --json assignees,labels,updatedAt) + atomic claim (--add-assignee @me --add-label wip) + 24h stale-claim sweep + label-drop on PR merge. Self-heals: idempotent gh label create runs every pickup. |
See also: superpowers:dispatching-parallel-agents — when to fan out vs. not (not bundled here; ships with the official superpowers plugin).
The cheap-isolation primitive (git worktree) has surprising failure modes when paired with parallel sessions, async post-commit hooks, and sibling subagents.
| Skill | Role |
|---|---|
| using-git-worktrees | Create isolated worktrees with smart directory selection + safety verification — the right starting move for parallel feature work. |
| git-worktree | General git-worktree workflow patterns. |
| gh-pr-merge-worktree-checkout-trap | Diagnose branch is checked out elsewhere errors when merging a PR while the same branch is checked out in another worktree. |
| worktree-index-corrupt-async-post-commit-hook | Fix fatal: unable to read <sha> errors that surface in worktree B after committing in worktree A — when an async post-commit hook (& / nohup) is in play. |
| worktree-historical-test-replay-missing-dirs | When a historical test replay fails because directories that exist in HEAD don't exist at the older commit. |
| subagent-bash-cd-wrong-worktree | Subagents inheriting the wrong CWD when dispatched from a worktree. |
| flask-debug-cross-worktree-edit-stale | Flask debug server reading stale code because the file you edited lives in a sibling worktree. |
When two sessions DO collide (or an old PR drifts behind a fast-moving main), these resolve the rebase cleanly.