upgradeability

Detect upgradeability vulnerabilities in UUPS, Transparent, and Beacon proxies.

60|18|Updated Jan 21, 2026
One-click install
npx skills add https://github.com/PurpleAILAB/Vigilo --skill upgradeability
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: upgradeability
Source: https://github.com/PurpleAILAB/Vigilo/tree/main/packages/opencode/skills/upgradeability
Command: npx skills add https://github.com/PurpleAILAB/Vigilo --skill upgradeability

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill addresses critical vulnerabilities in smart contract upgradeability patterns, preventing potential exploits that could lead to significant financial losses or contract bricking.

Core Features & Use Cases

  • Vulnerability Detection: Identifies common pitfalls in Transparent Proxy, UUPS, and Beacon proxy patterns, including initialization issues, storage collisions, and unprotected upgrade functions.
  • Pattern Analysis: Provides detailed explanations and detection patterns for various proxy architectures and their associated risks.
  • Use Case: An auditor can use this Skill to quickly identify if a smart contract implementation has a storage collision vulnerability that could be exploited during an upgrade, or if an initializer function is not properly protected against re-entrancy.

Quick Start

Analyze the provided smart contract code for upgradeability vulnerabilities.

Frequently Asked Questions about upgradeability

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I detect storage collision vulnerabilities in smart contract upgradeability patterns?

Detecting storage collision vulnerabilities in upgradeability patterns involves examining Solidity code and deployment configurations for conflicting state variable layouts. This Skill identifies storage collision risks in UUPS, Transparent, and Beacon proxies and provides detailed mitigation strategies for secure proxy implementations.

What are common initialization flaws in UUPS and Transparent proxy patterns?

Common initialization flaws in UUPS and Transparent proxy patterns include unprotected initializer functions susceptible to re-entrancy attacks. This Skill analyzes smart contract upgradeability to identify these initialization issues and provides mitigation strategies to secure proxy implementations against unauthorized setup.

How do I audit Solidity smart contracts for unprotected upgrade mechanisms?

Auditing Solidity smart contracts for unprotected upgrade mechanisms requires analyzing proxy patterns for missing access controls on upgrade functions. This Skill detects unprotected upgrade mechanisms in UUPS, Transparent, and Beacon proxies by examining the codebase and deployment configurations for exploitable authorization flaws.

Can this tool analyze function selector clashes across Beacon proxy implementations?

Yes, this tool can analyze function selector clashes across Beacon proxy implementations. It detects and analyzes vulnerabilities within smart contract upgradeability patterns by examining Solidity code to identify selector collision risks and provides detailed mitigation strategies for secure proxy architectures.

What is the best way to prevent contract bricking when implementing upgradeability patterns?

Preventing contract bricking when implementing upgradeability patterns requires identifying architectural risks like initialization flaws and storage collisions early. This Skill examines Solidity code and deployment configurations to detect these vulnerabilities in UUPS, Transparent, and Beacon proxies, providing mitigation strategies for secure implementations.

When should I use UUPS proxy patterns instead of Transparent proxies for smart contract upgrades?

Choosing between UUPS and Transparent proxy patterns depends on identifying specific vulnerability risks like storage collisions and unprotected upgrade mechanisms. This Skill analyzes both upgradeability patterns in Solidity code, detailing their associated risks and providing detection patterns to inform secure proxy selection.