sync-sibling-php-repos

sync-sibling-php-repos is a command for coding agents from specsnl/agent-specs. It costs 22 tokens per session (1,223 once invoked), scanned A, original, MIT.

A change-propagation command for related PHP image repositories. It copies applicable commits to sibling repositories, such as versions for different PHP releases, while creating separate branches and pull requests.

In plain words
What is it for?
Use it from a feature branch with a clean working tree and an existing pull request when synchronizing changes to sibling PHP-version repositories.
Why use it?
It avoids manually repeating the same compatible changes across several repositories and stops when required safety checks fail.

Command

Part of the docker plugin — 1 skill, 2 commands shipped together

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 commands/specsnl/agent-specs/sync-sibling-php-repos
Clone the repo
git clone --depth 1 https://github.com/specsnl/agent-specs

Or install docker, the plugin that ships this one along with the rest of its 1 skill, 2 commands.

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 sync-sibling-php-repos

README.md
[![agentmods](https://agentmods.dev/badge/commands/specsnl/agent-specs/sync-sibling-php-repos.svg)](https://agentmods.dev/commands/specsnl/agent-specs/sync-sibling-php-repos)
Your own site
<a href="https://agentmods.dev/commands/specsnl/agent-specs/sync-sibling-php-repos"><img src="https://agentmods.dev/badge/commands/specsnl/agent-specs/sync-sibling-php-repos.svg" alt="Measured on agentmods" height="20"></a>
Per session 22 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,223 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 $0.00022 $0.01223
Opus 5 $0.00011 $0.00611
Sonnet 5 $0.00004 $0.00245
Haiku 4.5 $0.00002 $0.00122

Measured 3d ago against content hash e463e948f32d, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

sync-sibling-php-repos 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 3d 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.

plugins/docker/commands/sync-sibling-php-repos.md · 100 lines

How it starts

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

See skill @../skills/php-images/SKILL.md for general information about the PHP images, their repository structure, and how to find sibling images.

Goal

Propagate relevant changes from the current PHP image repository to all sibling repositories. Each sibling receives its own branch, commit history, and pull request that mirrors the original — adjusted where necessary for PHP version differences.

This command must be run from a PHP image repository on a feature branch that has a pull request (any status). If you are in the php85 repository with updates on a branch, run this command to propagate the applicable changes to php84 and php83.

If any step fails, STOP immediately and report the error.

Phase 1 --- Safety Checks

  1. Confirm the current branch is not main. If it is, abort and instruct the user to switch to the feature branch first.
  2. Ensure the working tree is clean:
    • No staged changes
    • No unstaged changes
    • No untracked files
    • If not clean: abort and instruct the user to commit or stash all changes first.
  3. Confirm the current branch has a pull request (any status). If none exists, abort and instruct the user to open one first.

Phase 2 --- Context Gathering

  1. Identify the current repository name (e.g., php85) and the active branch name — this branch name will be reused in every sibling.
  2. List all commits on the current branch that are not yet on main: git log main..HEAD --oneline For each commit, also retrieve its full diff: git show <sha>.
  3. Find the pull request for the current branch. Record its title — this will be reused verbatim when creating sibling PRs.
  4. Locate the sibling repositories using the PHP images skill. Check locally first (sibling directories alongside the current repository). Confirm each sibling by verifying its git remote URL or README. Record the local path of every sibling that exists.
  5. For every located sibling, check whether its working tree is clean (no staged changes, no unstaged changes, no untracked files). If any sibling is dirty, stop immediately, list every dirty sibling and what it has outstanding, and instruct the user to commit or stash those changes before re-running this command. Do not proceed with any sibling until all are clean.

Read the full file on GitHub · 100 lines

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. 3d ago First seen · 100 lines · 22 tokens per session scan A e463e948f32d

Subscribe to this mod's changes

sync-sibling-php-repos is a command published in the GitHub repository specsnl/agent-specs (2 stars, last pushed 18d ago), licensed MIT. It adds 22 tokens to every session and 1,223 once invoked, about $0.0001 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-31.