AgentSkillsCN

cairo-contract-classes

当请求涉及 ABI JSON、入口点元数据,或了解合约的 calldata 编码方式时,讲解 Starknet 合约类的 ABI、入口点、选择器以及调度器的使用方法。

SKILL.md
--- frontmatter
name: cairo-contract-classes
description: Explain Starknet contract classes vs instances, class hash, contract deployment, and upgrade patterns; use when a request involves declaring/deploying contracts or understanding class hashes in Cairo.

Cairo Contract Classes and Instances

Overview

Clarify what a contract class is, how instances are deployed, and how class hashes relate to code and ABI.

Quick Use

  • Read references/contract-classes.md before answering.
  • Distinguish class (code + ABI) from instance (storage + address).
  • Mention class hash and contract address derivation when deployment is discussed.

Response Checklist

  • Use "class" for the compiled contract definition and "instance" for a deployed contract.
  • Note that a class is immutable; upgrades require a proxy pattern.
  • Mention declare vs deploy and when each step is required.

Example Requests

  • "What is the difference between a class and a contract instance?"
  • "How is a contract address computed?"
  • "Why do I need to declare before deploying?"