aptos-object-model

Convert Aptos resources into transferable on-chain objects using ObjectCore and refs.

Updated Nov 25, 2025
One-click install
npx skills add https://github.com/gounthar/bazel-riscv --skill aptos-object-model
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: aptos-object-model
Source: https://github.com/gounthar/bazel-riscv/tree/main/.claude/skills/aptos/move-object-model
Command: npx skills add https://github.com/gounthar/bazel-riscv --skill aptos-object-model

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Guides Aptos Object Model concepts, ObjectCore, Object<T>, and lifecycle.

Core Features & Use Cases

  • ObjectModel Fundamentals: ObjectCore, Object<T>, and ownership patterns.
  • Lifecycle & Transfer: constructor refs, ExtendRef, TransferRef.
  • Migration & Composability: moving from resources to objects.
  • Use Case: Build composable, transferable on-chain assets.

Quick Start

Ask: "Create a named object with a deterministic address in Move."

Frequently Asked Questions about aptos-object-model

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

FAQPage Schema
How do I convert Move resources into transferable objects on Aptos?

The Aptos Object Model converts resources into transferable, composable on-chain objects using ObjectCore and Object<T>. This replaces resource-only patterns, enabling controlled ownership, transfer via TransferRef, and lifecycle management through constructor and extension references for Digital Assets, NFTs, and Fungible Assets.

What are ObjectCore and Object<T> in the Aptos Object Model?

ObjectCore is the foundational abstraction in Aptos's Object Model; Object<T> is a generic wrapper that holds typed data. Together they enable named objects with deterministic addresses, distinct object and owner addresses, and composable on-chain structures with controlled lifecycle management via refs.

How do constructor refs, ExtendRef, DeleteRef, and TransferRef work in Move?

These are lifecycle management references in the Aptos Object Model. Constructor refs create objects, ExtendRef enables extension, DeleteRef removes objects, and TransferRef controls transfer semantics. Together they enforce the required typed-reference semantics and ownership constraints for safe object composition.

Can I migrate existing Move code from resource patterns to the Object Model?

Yes. The Aptos Object Model provides migration patterns from resource-only designs to object-based architectures. This applies across Digital Assets, NFTs, and Fungible Assets, enabling better composability, transferability, and lifecycle control while maintaining type safety.

What's the difference between object address and owner address in Aptos objects?

In the Aptos Object Model, the object address is the unique identifier of the object itself, while the owner address tracks who controls it. This distinction enables composability and transfer semantics distinct from simple resource ownership, supporting nested and shared object patterns.