fix-plugin-paths

fix-plugin-paths is a skill for Claude Code, Codex from richfrem/agent-plugins-skills. It costs 133 tokens per session (1,886 once invoked), scanned A, original, MIT.

A portability fixer for paths used by plugin skills and agent files. It replaces references that depend on the original source repository with paths that work after installation.

In plain words
What is it for?
Use it to audit and fix path references in one file, a plugin directory, or a whole repository after installing or reorganizing skills.
Why use it?
It prevents installed skills from breaking when repository-only folders or source-specific paths are no longer available.

Skill for Claude CodeCodex

Installs and runs on its own, but its text points at files inside its plugin — anything it tells you to read at a ${CLAUDE_PLUGIN_ROOT} path is only there once the plugin is installed. Installing the plugin gets both.

Part of the agent-scaffolders plugin — 33 skills, 2 plugins 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 skills/richfrem/agent-plugins-skills/fix-plugin-paths
Any agent
npx skills add richfrem/agent-plugins-skills --skill fix-plugin-paths
Clone the repo
git clone --depth 1 https://github.com/richfrem/agent-plugins-skills

Made for: Claude Code, Codex.

Or install agent-scaffolders, the plugin that ships this one along with the rest of its 33 skills, 2 plugins.

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 fix-plugin-paths

README.md
[![agentmods](https://agentmods.dev/badge/skills/richfrem/agent-plugins-skills/fix-plugin-paths.svg)](https://agentmods.dev/skills/richfrem/agent-plugins-skills/fix-plugin-paths)
Your own site
<a href="https://agentmods.dev/skills/richfrem/agent-plugins-skills/fix-plugin-paths"><img src="https://agentmods.dev/badge/skills/richfrem/agent-plugins-skills/fix-plugin-paths.svg" alt="Measured on agentmods" height="20"></a>
Per session 133 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,886 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.00133 $0.01886
Opus 5 $0.00067 $0.00943
Sonnet 5 $0.00027 $0.00377
Haiku 4.5 $0.00013 $0.00189

Measured yesterday against content hash 285ac9090311, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

fix-plugin-paths 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 yesterday.

The scan reads SKILL.md. This mod also ships 1 executable file (scripts/audit_plugin_paths.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

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/agent-scaffolders/skills/fix-plugin-paths/SKILL.md · 191 lines

How it starts

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

Identity: Plugin Path Portability Enforcer

You audit, fix, and continuously improve plugin path portability in skill and agent files. You ensure they work correctly when installed via npx skills add, the plugin installer, or uvx.

The core rule: When a skill is installed, only its own directory exists:

.agents/skills/<skill-name>/
  SKILL.md
  scripts/
  ./assets/
  references/

No plugins/ folder. No CLAUDE_PLUGIN_ROOT. No source repo structure.

This applies equally to Python scripts called by skills — a script must not use PROJECT_ROOT / "plugins/other-plugin/..." at runtime. Cross-plugin script references must use .agents/skills/<skill>/scripts/<script> or a self-contained copy.

The full ruleset is in references/fix-plugin-paths.prompt.md.


Phase 0: Intake

If the user specifies a file or directory, confirm and proceed. Otherwise ask one question:

Scope:  <single file | plugin directory | full repository>
Mode:   A) Single audit     — fix one file now
        B) Repository audit — generate task tracker, fix all flagged files
        C) In-session evolve — continuously score SKILL.md after each edit

Auto-detect the scope if inferable from context. If mode is clear from the request, skip the question.


Phase 1: Audit a File

For each target file, check which rules from references/fix-plugin-paths.prompt.md apply using the auditor script:

python ./scripts/audit_plugin_paths.py <directory-or-file>

The auditor runs two passes:

  1. Standard pass (whitelist-aware) — flags plugins/<name> and /Users/ references in .md and .py files. False positives can be suppressed via scripts/plugin_paths_whitelist.json.
  2. CRITICAL pass (non-whitelistable) — flags Python runtime Path() constructions in .py files where PROJECT_ROOT, ROOT, SCRIPT_DIR, or Path(__file__) is used to build a path into plugins/<name>. These cannot be whitelisted and must always be fixed.

For CRITICAL violations the correct fix is always one of:

  • Replace with a relative scripts/<script>.py path (self-contained, portable)
  • Replace with .agents/skills/<skill-name>/scripts/<script>.py (cross-skill installed reference)
  • Invoke via uvx / subprocess calling the GitHub-native installer (for installer bootstrapping)

Read the full file on GitHub · 191 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. yesterday First seen · 191 lines · 133 tokens per session scan A 285ac9090311

Subscribe to this mod's changes

fix-plugin-paths is a skill published in the GitHub repository richfrem/agent-plugins-skills (6 stars, last pushed yesterday), licensed MIT. It adds 133 tokens to every session and 1,886 once invoked, about $0.0007 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-09-03.

Related

Other skills, from other repositories

kapso-whatsapp

How to interact with Kapso WhatsApp from the swarm — read inbound webhook payloads (text AND media), fetch message history, send free-form messages within the 24h session window (and template messages outside it), mark-as-read, show the typing indicator, send reactions, download media, verify webhook signatures, and…

desplega-ai/agent-swarm · 156 tokens

composio

Use Composio from Agent Swarm through the agent-swarm x composio CLI route, the swarmx MCP tool, or a registered ctx.api.composio script connection. Trigger when a task needs connected third-party app tools such as Gmail, Google Calendar, Google Docs, Google Drive, GitHub, Slack, Notion, or HubSpot through Tool Router…

desplega-ai/agent-swarm · 128 tokens

attio-interaction

Generic Attio CRM REST API v2 recipes for querying records, upserting companies/people/deals, writing notes/tasks/comments, managing lists, and handling webhooks.

desplega-ai/agent-swarm · 39 tokens

swarm-scripts

Bulk, repeat, fan-out, or data-heavy work: write and run swarm scripts (inline script-run, named script-upsert, durable launch-script-run). Covers the script-vs-tool rubric, the authoring contract (args first, ctx second), the seed catalog, connections and secrets, dbquery, and exposing a script as an API.

desplega-ai/agent-swarm · 82 tokens

user-management

How to manage the user registry — creating users for new Slack/GitHub/GitLab/Linear identities, managing aliases, resolving users across platforms. Use when a new human interacts with the swarm or when user identity needs updating.

desplega-ai/agent-swarm · 49 tokens

scheduled-task-resilience

Guardrails for polling, scheduled jobs, and long-running external operations. Use whenever a task waits on CI, builds, deploys, browser jobs, or another asynchronous API so work survives heartbeat checks without duplicate delivery.

desplega-ai/agent-swarm · 48 tokens