Skip to content
Back to skills

Plugin Syncer

ASecurity

Synchronizes agent environments from plugin-sources.json. Refreshes every registered plugin while honoring the should_install choices in .agents/ownership/, cleans up orphaned artifacts, and removes disabled components. This is what "sync", "resync", "plugin sync" and "update plugins" mean: run sync_with_inventory.py, never plugin_add.py.

  • 7 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 2, 2026
ai-agentspythonbash

Works with

  • cli

Security analysis

A100/100

Pro scans all 4 files and shows the line behind each finding

Scanned October 3, 2026

npx -y skills add richfrem/agent-plugins-skills --skill plugin-syncer --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Plugin Syncer?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Plugin Syncer
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/richfrem-plugin-syncer/badge)](https://www.skillsdirectory.com/skills/richfrem-plugin-syncer)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: plugin-syncer
plugin: plugin-manager
description: >-
  Synchronizes agent environments from plugin-sources.json. Refreshes every registered
  plugin while honoring the should_install choices in .agents/ownership/, cleans up
  orphaned artifacts, and removes disabled components. This is what "sync", "resync",
  "plugin sync" and "update plugins" mean: run sync_with_inventory.py, never plugin_add.py.
allowed-tools: Bash, Read, Write
---

# Plugin Syncer (plugin-syncer)

Synchronizes registered plugins from `plugin-sources.json` while enforcing `.agents/ownership/` desired-state manifests.

## Contents
- [Critical Constraints](#critical-constraints)
- [Quick start](#quick-start)
- [Workflow](#workflow)
- [Verification](#verification)
- [References](#references)

## Critical Constraints
- **Canonical Sync Tool**: Always run `sync_with_inventory.py` for "sync" or "resync" requests; never call `plugin_add.py`.
- **Preserve Ownership States**: Honoring `should_install: false` choices in `.agents/ownership/<plugin>.json` is strictly required; disabled components must not be resurrected.
- **Dry-Run Preview**: Preview proposed file modifications and symlink updates before executing live sync.
- **Orphan Pruning**: Stale or unreferenced symlinks pointing to disabled components must be cleaned automatically.

## Quick start

```bash
# Preview synchronization changes (dry-run)
python3 plugins/plugin-manager/scripts/sync_with_inventory.py --dry-run

# Run full synchronization
python3 plugins/plugin-manager/scripts/sync_with_inventory.py

# Clean up stale artifacts only
python3 plugins/plugin-manager/scripts/sync_with_inventory.py --cleanup-only
```

## Workflow

1. **Phase 1: Registry Scan**: Read `.agents/plugin-sources.json` and load ownership manifests from `.agents/ownership/`.
2. **Phase 2: Preview & Diff**: Execute with `--dry-run` to inventory additions, deletions, and component toggles.
3. **Phase 3: Component Synchronization**: Deploy enabled components to `.agents/` and remove assets marked `"should_install": false`.
4. **Phase 4: Multi-IDE Pruning & Audit**: Refresh symlinks across `.claude/` and `.gemini/` environments and audit link health.

## Verification

```bash
# Verify environment symlink health
python3 plugins/dev-utils/scripts/symlink_manager.py audit

# Audit skill compliance
python3 plugins/agent-scaffolders/scripts/audit_skill.py plugins/plugin-manager/skills/plugin-syncer --mode source
```

## References
- [syncer-cli-guide.md](references/syncer-cli-guide.md) - Rules merging, retention enforcement, and validation details.
- [acceptance-criteria.md](references/acceptance-criteria.md) - Synchronization invariants and safety requirements.
- [fallback-tree.md](references/fallback-tree.md) - Fallback procedures and recovery trees.

Files in this skill

  • SKILL.md1.1 KB
  • evals/evals.json673 B
  • references/acceptance-criteria.md42 B
  • scripts/sync_with_inventory.py39 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.