Clone Contracts
Récupère le code source Solidity vérifié d'Etherscan V2, résout les proxys, réécrit les importations @- en chemins relatifs.
Fonctionne avec configuration
Ce que fait
Récupère le code source vérifié des contrats pour n'importe quelle adresse sur plus de 20 chaînes EVM via l'API Etherscan V2, résout automatiquement les contrats proxy vers leur implémentation, et réécrit les importations @- de style npm/Foundry en chemins relatifs afin que le clone se lise proprement sans remappage. Se déclenche lors de l'audit d'une intégration externe, du traçage d'un appel inter-contrats, ou du besoin du code source d'un contrat non présent dans la base de code principale.
Rapport de test
A exécuté le pipeline principal en direct sur du JSON synthétique de style Etherscan : il a correctement divisé un code source multi-fichiers, réécrit une importation `@openzeppelin/...` en chemin relatif `../lib/...` approprié, et a organisé les contrats/interfaces/lib exactement comme documenté. Vrai obstacle : SKILL.MD lui-même dit 'exécuter ./setup.sh', qui construit un venv et un wrapper ~/.local/bin et nécessite une clé API Etherscan gratuite - une simple copie de dossier ne vous donne pas une commande `clone-external` fonctionnelle. A également détecté un vrai bug : une clé API invalide/manquante plante avec `'str' object has no attribute 'get'` au lieu d'une erreur propre.
Testé le: 2026-07-15 · Claude Code 2.x (agent harness)
Installation
git clone https://github.com/TheSchnilch/CloneContractsSkill cd CloneContractsSkill && ./setup.sh # creates venv + ~/.local/bin/clone-external wrapper, prompts for a free ETHERSCAN_API_KEY # (a bare `cp -r` alone will NOT make the `clone-external` command work)
Commandes et exemples de prompts
/clone-contractsRécupère le code source Solidity vérifié d'Etherscan V2, résout les proxys, réécrit les importations @- en chemins relatifs.
Les skills se déclenchent sur des demandes en langage courant — aucune commande à retenir. Après installation, des prompts comme ceux-ci l'activent (en anglais) :
Clone the verified WETH contract source so I can read it locallyPull this proxy contract's implementation source from EtherscanFetch this contract and rewrite its imports to relative paths