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.
npx skills add PaulRBerg/agent-skills --skill repo-harmonizationgit clone --depth 1 https://github.com/PaulRBerg/agent-skillsWrote 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.
[](https://agentmods.dev/skills/paulrberg/agent-skills/repo-harmonization)<a href="https://agentmods.dev/skills/paulrberg/agent-skills/repo-harmonization"><img src="https://agentmods.dev/badge/skills/paulrberg/agent-skills/repo-harmonization/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/paulrberg/agent-skills/repo-harmonization"><img src="https://agentmods.dev/badge/skills/paulrberg/agent-skills/repo-harmonization.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Excessive Agency · line 47 Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00048 | $0.04855 |
| Opus 5.5 | $0.00019 | $0.01942 |
| Sonnet 5.5 | $0.00010 | $0.00971 |
| Haiku 4.5 | $0.00005 | $0.00485 |
Grade A, and why
repo-harmonization 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 1mo 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.
How it starts
The opening of the file, as written. The whole thing — 333 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Repo Harmonization
If a slash or dollar invocation already added these instructions to the conversation, follow them directly. In that case, do not invoke this skill again through a skill tool.
Use a list of interdependent repositories to produce verified findings, user-approved decisions, and surgical changes. The audit covers two kinds of work:
- Alignment: drift, stale cross-references, duplicated content, and competing workflows among the repositories.
- Transfer: agent guidance, workflows, and dependencies that one repository uses well and another would benefit from. Adapt each transfer to the recipient's conventions.
Arguments
$ARGUMENTS is a whitespace-separated list of repository paths. Tilde expansion is allowed.
- Require at least two paths, each an existing Git repository root, resolving to distinct repositories. The inventory helper enforces these rules and exits 2 with the offending inputs. In that case, stop and relay its message.
- The user's request, not
$ARGUMENTS, may narrow the focus to alignment or to transfers. Without such a request, do both. Pass only repository paths to the inventory helper. The one exception is the--driftflag in Template Drift. - Do not infer additional repositories from links, remotes, or installed copies. The supplied list defines the audit boundary.
Contract
- Research before any edit and keep research strictly read-only. When the host supports subagents, parallelize across them. Otherwise, investigate serially.
- Verify every alignment or duplication claim mechanically with a diff, content hash, regeneration round-trip, or symlink resolution. Never rely on prose inspection alone. Attach file:line evidence to every finding.
- Treat every repository as both donor and recipient. Evaluate each transfer candidate per direction: donor, practice, recipient.
- A transfer unit is one practice: a guidance rule or project skill, a workflow (task recipe, script, CI job, hook, toolchain pin, lint, format, type-check, test, or release configuration), or a dependency together with the workflow or code that uses it. Never transfer a dependency the recipient would not use.
- Attach evidence to every transfer candidate. Include donor file:line showing the practice and that it is exercised (called by a task, CI, a hook, or code). Also include recipient search commands proving the gap, including functional equivalents under other names, and recipient evidence of the need the practice addresses.
- Classify each material finding exactly once, with the classes in Consolidate and Evaluate.
- Adapt rather than copy. Rewrite each transfer for the recipient's language, runtime versions, package manager, task runner, naming, file layout, formatting, and guidance voice. Transferred guidance names only commands, paths, and tools that exist in the recipient once the plan is applied.
- Never carry donor secrets, credentials, personal identifiers, hostnames, addresses, or project-specific names and assumptions into a recipient.
- Prefer surgical fixes to restructuring. Unless it removes more complexity than it adds, introduce no include pipeline, templating layer, shared reference, or other machinery.
- Prefer the smallest transfer that delivers the benefit: a task recipe over a new script, a config file over a wrapper, a short rule over a copied document. Shared packages, template repositories, sync pipelines, and submodules are judgment calls.
- Send every judgment call to the user before planning. Never expand beyond the approved decisions.
- Treat the approved outcome and resolved judgment calls, not the initial file manifest, as the implementation authorization boundary. When implementation discovers a related in-repository prerequisite needed to carry out those decisions, the orchestrator may extend the manifest, acquire coordination for the new scope, and delegate the smallest sufficient follow-on fix without asking again. Examples are a dev dependency, lockfile update, config stub, or ignore entry. Workers still stop at their assigned write scopes and return the evidence to the orchestrator.
- Respect every repository's generation pipelines and hooks. Edit canonical sources only. Regenerate artifacts through build-only non-committing paths. Let designed commit hooks run at commit time.
- Keep implementation agents from committing or pushing. The orchestrator commits per repository, scopes commits to task files, and honors the host's coordination and shared-worktree rules.
- Report progress at phase changes with measured counts (repositories inventoried, and findings found, verified, classified, and implemented) rather than elapsed time.
What ships with it
2 files 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.
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.
- 1mo ago Changed · +26 lines f39d341a6a82
- 1mo ago Changed · +125 lines · +24 tokens per session 55a87f57a81d
- 1mo ago Changed b97f9ebfae22
- 1mo ago Changed 9307daa27102
- 1mo ago Changed · +3 lines f5fb77b080a5
- 2mo ago Changed · +1 lines 0cfbec920d3c
- 2mo ago First seen · 178 lines · 24 tokens per session scan A 9384adefc38d
repo-harmonization is a skill published in the GitHub repository PaulRBerg/agent-skills (104 stars, last pushed 2d ago), licensed MIT. It adds 48 tokens to every session and 4,855 once invoked, about $0.0002 per session on Opus 5.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.
repo-harmonization compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| repo-harmonizationPaulRBerg/agent-skills | Skill | 104 | 2d ago | MIT | A | 48 | Claude Code, Codex |
| git-advanced-workflowswshobson/agents | Skill | 42k | today | MIT | A | 54 | Claude Code |
| agent-merge-conflict-arbiterNousResearch/hermes-agent | Skill | 262k | today | MIT | A | 19 | Claude Code, Codex |
| enable-check-includes-strictchromium/chromium | Skill | 25k | today | BSD-3-Clause | A | 70 | Claude Code, Codex |
| resolve-handoffomnigent-ai/omnigent | Skill | 11k | today | Apache-2.0 | A | 23 | Claude Code, Codex |
| reproduce-and-fix-issuesbacknotprop/pstack | Skill | 3.8k | yesterday | MIT | A | 48 | Claude Code, Cursor |
| cy-orquestrate-issuecompozy/compozy | Skill | 2.9k | today | MIT | A | 94 | Claude Code, Codex |