fanout

fanout is a skill for Claude Code from mifunedev/openharness. It costs 98 tokens per session (2,022 once invoked), scanned A, original, Apache-2.0.

A workflow for shipping several related software issues as separate pull requests in parallel. Each task uses its own Git worktree, an isolated copy of the repository.

In plain words
What is it for?
Use it when multiple issues need to be worked on at the same time and each completed change should become a merged pull request.
Why use it?
It prevents parallel coding sessions from overwriting one another while still coordinating review, merging, and cleanup.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter.

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/mifunedev/openharness/fanout
Any agent
npx skills add mifunedev/openharness --skill fanout
Clone the repo
git clone --depth 1 https://github.com/mifunedev/openharness

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for fanout

README.md
[![agentmods](https://agentmods.dev/badge/skills/mifunedev/openharness/fanout.svg)](https://agentmods.dev/skills/mifunedev/openharness/fanout)
Your own site
<a href="https://agentmods.dev/skills/mifunedev/openharness/fanout"><img src="https://agentmods.dev/badge/skills/mifunedev/openharness/fanout.svg" alt="Measured on agentmods" height="20"></a>
Per session 98 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,022 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00098 $0.02022
Opus 5 $0.00049 $0.01011
Sonnet 5 $0.00020 $0.00404
Haiku 4.5 $0.00010 $0.00202

Measured 6d ago against content hash cee1718b1c71, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

fanout scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.oh/skills/fanout/SKILL.md · 214 lines

How it starts

The opening of the file, as written. The whole thing — 214 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Fanout

Take N units of work to N merged PRs, in parallel, without the agents colliding.

The runner is a swappable detail. What makes this work is worktree isolation, a brief that front-loads the traps, and a merge phase that assumes conflicts are semantic. Encode those; pick whatever runner is installed.

Mechanics this skill does not own: /worktrees for worktree lifecycle, /herdr for the herdr CLI, /git for branch and PR conventions. Compose them; do not restate them. /delegate is the sibling for in-process Agent-tool waves — use it when the work does not need isolated checkouts or long-running interactive sessions.

Terminal states

State Meaning
SHIPPED Every unit merged, every issue verified closed, all worktrees removed.
PARTIAL Some units merged; the rest named with their blocker and left intact.
BLOCKED Stopped before launching. Nothing created.
DRY-RUN Plan reported; no worktree, branch, or session created.

1. Group by coupling — before anything is created

Do not treat the issue list as the unit list. Read each issue and find the dependencies between them.

  • If fixing A alone would create or multiply the defect B fixes, A and B are one unit and one PR. Splitting them ships a regression.
  • If two issues touch the same component, note it — they will conflict at merge.
  • If an issue's priority depends on an unmade decision, drop it from this run and say so rather than guessing.

State the grouping and the reason for each merge before continuing. This step is the highest-leverage part of the skill; a wrong grouping cannot be recovered by a good brief.

Stop with BLOCKED if the units cannot be separated into independently mergeable PRs.

2. Check the ground

git -C "$REPO" fetch origin --quiet
git -C "$REPO" log --oneline -1
git -C "$REPO" status --short
git -C "$REPO" worktree list
ps aux | grep -Ei 'vite|uvicorn|next|taskiq|worker' | grep -v grep

Establish and record:

Read the full file on GitHub · 214 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 6d ago First seen · 214 lines · 98 tokens per session scan A cee1718b1c71

Subscribe to this mod's changes

fanout is a skill published in the GitHub repository mifunedev/openharness (37 stars, last pushed today), licensed Apache-2.0. It adds 98 tokens to every session and 2,022 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

data-visualization

Use for creating publication-quality charts and multi-panel analysis summaries. Triggers when tasks involve visualizing data, plotting results, creating charts, or producing visual reports from analysis output.

langchain-ai/deepagents · 40 tokens

cuml-machine-learning

Use for GPU-accelerated machine learning on tabular data using NVIDIA cuML. Triggers when tasks involve classification, regression, clustering, dimensionality reduction, or model training on datasets.

langchain-ai/deepagents · 43 tokens

social-media

Drafts engaging social media posts, writes hooks, suggests hashtags, creates thread structures, and generates companion images. Use when the user asks to write a LinkedIn post, tweet, Twitter/X thread, social media caption, social post, or repurpose content for social platforms.

langchain-ai/deepagents · 58 tokens

blog-post

Writes and structures long-form blog posts, creates tutorial outlines, and optimizes content for SEO with cover image generation. Use when the user asks to write a blog post, article, how-to guide, tutorial, technical writeup, thought leadership piece, or long-form content.

langchain-ai/deepagents · 58 tokens

schema-exploration

Lists tables, describes columns and data types, identifies foreign key relationships, and maps entity relationships in a database. Use when the user asks about database schema, table structure, column types, what tables exist, ERD, foreign keys, or how entities relate.

langchain-ai/deepagents · 57 tokens

remember

Review the current conversation and capture valuable knowledge — best practices, coding conventions, architecture decisions, workflows, and user feedback — into persistent memory (AGENTS.md) or reusable skills. Use when the user says: (1) remember this, (2) save what we learned, (3) update memory, (4) capture…

langchain-ai/deepagents · 71 tokens