migrate-agent-plugin

A migration guide for moving an agent plugin from a client-specific format to the portable Agent Plugins v1 structure. It explains which parts can be shared and which must remain specific to clients such as Claude, Copilot, or VS Code.

In plain words
What is it for?
Inventory a plugin, classify its files, identify compatibility layers, and plan or carry out a migration to the portable format.
Why use it?
It helps preserve existing behavior while changing the plugin's structure. This reduces the risk of losing commands, agents, integrations, or marketplace behavior during migration.

Skill for Claude CodeCodex

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/vinhnx/vtcode/migrate-agent-plugin
Any agent
npx skills add vinhnx/VTCode --skill migrate-agent-plugin
Clone the repo
git clone --depth 1 https://github.com/vinhnx/VTCode

Made for: Claude Code, Codex.

Per session 71 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 827 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.00071 $0.00827
Opus 5 $0.00036 $0.00413
Sonnet 5 $0.00014 $0.00165
Haiku 4.5 $0.00007 $0.00083

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

Security

Grade A, and why

migrate-agent-plugin 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 2d 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.

crates/common/vtcode-agent-plugins/tests/fixtures/agent-plugins-example/skills/migrate-agent-plugin/SKILL.md · 69 lines

How it starts

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

Migrate an Agent Plugin

Convert an existing plugin to the Agent Plugins v1 portable core without prematurely removing behavior required by its current clients.

Source of truth

Use the current Agent Plugins specification as the normative source.

Read these references before editing:

Workflow

  1. Inventory the current plugin before moving files.

    • Record every manifest, skill, prompt or command, agent, MCP server, hook, LSP server, UI resource, script, secret requirement, and marketplace entry.
    • Identify the clients that currently load each artifact and the install paths or discovery rules they require.
    • Run existing tests or capture a manual smoke-test baseline.
  2. Classify each artifact.

    • Portable core: root plugin.json, Agent Skills in skills/, and MCP servers in mcp.json.
    • Client extension: additional behavior loaded through a reverse-domain namespace owned and documented by a client.
    • Compatibility layer: legacy files or a generated client package retained until that client supports the portable or namespaced form.
    • Distribution metadata: marketplace catalogs, install policy, signing, and release configuration; these are outside the portable package format.
  3. Add the portable manifest.

    • Create plugin.json at the plugin root.
    • Set $schema to https://agent-plugins.org/schemas/1.0.0/plugin.schema.json.
    • Include name and only supported metadata fields.
    • Do not put component paths or client fields such as hooks, agents, skills, or mcpServers at the top level.
  4. Normalize portable components.

    • Put each skill at skills/<skill-name>/SKILL.md; only immediate children of skills/ are discovered.
    • Make each skill name match its parent directory and the Agent Skills naming rules.
    • If MCP is present, convert it to root mcp.json, declare the matching v1.0.0 schema, and give every server an explicit stdio, streamable-http, or sse type.
    • Use ${PLUGIN_ROOT} for packaged read-only resources and ${PLUGIN_DATA} for persistent writable state where the MCP schema permits expansion.

Read the full file on GitHub · 69 lines

Files

What ships with it

3 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.

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. 2d ago First seen · 69 lines · 71 tokens per session scan A 778a7a9d12c1

Subscribe to this mod's changes

migrate-agent-plugin is a skill published in the GitHub repository vinhnx/VTCode (825 stars, last pushed 2d ago), licensed Apache-2.0. It adds 71 tokens to every session and 827 once invoked, about $0.0004 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

unifly

This skill should be used when the user asks to "manage UniFi devices", "configure UniFi networks", "create a VLAN", "provision an SSID", "create firewall rules", "reorder firewall policies", "create a NAT rule", "set up port forwarding", "configure masquerade NAT", "add DNS records", "manage traffic matching lists"…

hyperb1iss/unifly · 265 tokens

verify

Drive an engine app headlessly in a pty, record a video of the whole verification, and open a summary page (video + timeline + checks) with pixel open.

zenbu-labs/terminal-browser · 37 tokens

claude-api

Build, debug, and optimize Claude API / Anthropic SDK apps. Apps built with this skill should include prompt caching. Also handles migrating existing Claude API code between Claude model versions (4.5 → 4.6, 4.6 → 4.7, retired-model replacements). TRIGGER when: code imports anthropic/@anthropic-ai/sdk; user asks for…

warpdotdev/warp · 193 tokens

harbor

Run Terminal-Bench or any Harbor dataset with Ante as the agent, using the Harbor adapter in the ante repo's ante-harbor/ directory. Use when the user wants to benchmark Ante on Harbor or reproduce Ante's published eval results.

AntigmaLabs/ante · 51 tokens

gui-onboarding-verification-skill

GUI desktop app only. Launch two parallel Oz cloud agents with computer use to download and install the latest stable Linux Warp build, capture screenshots while walking through first-time onboarding in both logged-out and logged-in states, then selectively fan out follow-up cloud agents for distinct onboarding…

warpdotdev/warp · 98 tokens

create-skill

Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.

warpdotdev/warp · 64 tokens