Skip to content

andrefontourainvillia/cross-compatible-plugin

v0.2.0

Skills that audit and fix agent plugins so one DRY repository works in GitHub Copilot CLI, VS Code, Claude Code and OpenAI Codex.

plugin-cross-audit

Audits an agent plugin for cross-client compatibility (GitHub Copilot CLI, VS Code agent plugins, Claude Code, OpenAI Codex), reports every issue, and after explicit user approval applies the fixes. Use when the user asks to check, validate, audit, make compatible or "DRY" a plugin, or mentions plugin.json, .claude-plugin, .codex-plugin, com.github.copilot or symlinks.

plugin-cross-fix

Applies the move and symlink fixes proposed by plugin-cross-audit after the user explicitly approves them. Dry-run by default, never overwrites or deletes diverging files, and refuses installed plugin copies. Use only after an audit report exists and the user said yes.

readme-install-badge

Adds "Install Chat Plugin" badges for VS Code and VS Code Insiders to a plugin README when they are missing, using the GitHub owner/repo from plugin.json or the git remote. Use when the user wants install buttons, one-click install links or README badges for an agent plugin.

validate-components

Checks plugin agents, skills, hooks and instruction files for settings that behave differently across Copilot CLI, VS Code, Claude Code and Codex, such as missing agent names, VS Code-only tool ids, skill name mismatches or non-portable hook events. Use when reviewing plugin components for cross-client compatibility.

validate-links

Checks that cross-client plugin files (.claude-plugin/plugin.json, .codex-plugin/plugin.json, .mcp.json, com.github.copilot/agents, commands and hooks) are relative per-file symlinks to one canonical source, and proposes move or link fixes. Use when auditing symlinks, duplicated agent files, or DRY plugin layouts.

validate-manifest

Validates plugin.json and mcp.json against the Agent Plugins 1.0 specification and flags settings that break Claude Code (.mcp.json) or Codex. Use when checking a plugin manifest, MCP server configuration, $schema, plugin name rules or placeholders such as ${PLUGIN_ROOT}.