superteam-academy-dev

This skill enables AI agents to develop, test, and manage on-chain programs for the Superteam Academy, a decentralized learning platform on Solana. It handles soulbound XP tokens, course registry, Metaplex Core credentials, and achievements.

12 stars
Complexity: medium

About this skill

This AI agent skill is designed for interacting with and developing for the Superteam Academy, a decentralized learning platform built on the Solana blockchain. It provides comprehensive capabilities for managing various aspects of the platform's smart contracts, including the issuance of soulbound XP tokens (Token-2022) and Metaplex Core credentials. Agents can leverage this skill to implement course registry and enrollment logic, track lesson completion, manage achievement systems, and handle minter role assignments. The skill is particularly suited for Anchor program development, offering insights into testing methodologies using tools like LiteSVM, Mollusk, and Trident. It covers the entire lifecycle from development to deployment on devnet and mainnet. By abstracting the core concepts like account structures (PDAs, Metaplex Core NFTs) and a detailed list of platform instructions, it empowers an AI agent to perform complex on-chain operations and development tasks with a deep understanding of the Superteam Academy's architecture.

Best use case

The primary use case for this skill is to assist developers and project maintainers in building, extending, and managing the Superteam Academy platform on Solana. It is invaluable for tasks involving smart contract development, feature implementation, and maintenance, especially for those working with Solana's Anchor framework. Developers can benefit from an AI agent that understands the intricate details of the Academy's on-chain logic, account structures, and instruction sets, enabling faster and more accurate development, testing, and deployment cycles for new features or bug fixes.

This skill enables AI agents to develop, test, and manage on-chain programs for the Superteam Academy, a decentralized learning platform on Solana. It handles soulbound XP tokens, course registry, Metaplex Core credentials, and achievements.

The user should expect well-structured code snippets, deployment scripts, or detailed architectural explanations specific to Superteam Academy's Solana programs, enabling efficient on-chain development and management.

Practical example

Example input

I need to implement a new instruction in the Superteam Academy Anchor program to allow minters to revoke their role. Can you provide the Anchor instruction definition and associated account structure?

Example output

```rust
// In lib.rs
pub fn revoke_minter(ctx: Context<RevokeMinter>) -> Result<()> {
    ctx.accounts.minter_role.close(ctx.accounts.authority.to_account_info())?; // Close the PDA
    Ok(())
}

// In instructions.rs
#[derive(Accounts)]
pub struct RevokeMinter<'info> {
    #[account(mut, has_one = authority, close = authority)] // Mark for closing and returning rent to authority
    pub minter_role: Account<'info, MinterRole>, // The minter role account to be revoked
    #[account(mut)]
    pub authority: Signer<'info>, // The entity authorized to revoke (e.g., the minter or an admin)
}
```
This instruction closes the `MinterRole` PDA, returning its lamports to the `authority` account. Proper authorization checks would be crucial here to ensure only authorized entities can revoke roles.

When to use this skill

  • Developing new features or modifying existing smart contracts for the Superteam Academy on Solana.
  • Implementing logic for XP token minting or Metaplex Core credential issuance.
  • Debugging or testing on-chain interactions related to courses, enrollments, or achievements.
  • Automating deployment scripts or upgrades for Superteam Academy programs.

When not to use this skill

  • For general Solana development tasks unrelated to the Superteam Academy platform.
  • If the task primarily involves off-chain data processing or frontend UI development.
  • When the user needs a high-level overview or conceptual explanation of Solana without specific development tasks.
  • For tasks requiring expertise in other blockchain ecosystems.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/skills/SKILL.md --create-dirs "https://raw.githubusercontent.com/solanabr/superteam-academy/main/.claude/skills/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/skills/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How superteam-academy-dev Compares

Feature / Agentsuperteam-academy-devStandard Approach
Platform SupportClaudeLimited / Varies
Context Awareness High Baseline
Installation ComplexitymediumN/A

Frequently Asked Questions

What does this skill do?

This skill enables AI agents to develop, test, and manage on-chain programs for the Superteam Academy, a decentralized learning platform on Solana. It handles soulbound XP tokens, course registry, Metaplex Core credentials, and achievements.

Which AI agents support this skill?

This skill is designed for Claude.

How difficult is it to install?

The installation complexity is rated as medium. You can find the installation instructions above.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

Related Guides

SKILL.md Source

# Superteam Academy Skill

## What this Skill is for

Use this Skill when the user asks for:
- On-chain program development for the Academy platform
- XP token minting (soulbound Token-2022)
- Course registry and enrollment logic
- Lesson completion and bitmap tracking
- Finalize course / award XP flows
- Metaplex Core credential issuance and upgrades (soulbound via PermanentFreezeDelegate)
- Achievement system (create, award, deactivate)
- Minter role management (register, revoke, reward XP)
- Anchor program development, testing, security
- Deployment workflows (devnet → mainnet)

## Core Concepts

### Account Structure (6 PDAs + Metaplex Core NFTs)

| Account | Seeds | Purpose |
|---------|-------|---------|
| Config | `["config"]` | Singleton: authority, backend signer, XP mint |
| Course | `["course", course_id.as_bytes()]` | Course metadata, creator, track, XP amounts |
| Enrollment | `["enrollment", course_id.as_bytes(), user.key()]` | Lesson bitmap, completion timestamps, credential ref (closeable) |
| MinterRole | `["minter", minter.key()]` | Registered XP minter with optional per-call cap (closeable via revoke_minter) |
| AchievementType | `["achievement", achievement_id.as_bytes()]` | Achievement definition: name, collection, supply cap, XP reward |
| AchievementReceipt | `["achievement_receipt", achievement_id.as_bytes(), recipient.key()]` | Proof of award — PDA collision prevents double-awarding |
| Credential NFT | Metaplex Core asset (1 per learner per track) | Soulbound, wallet-visible, upgradeable via URI + Attributes plugin |

### Instructions (16 Total)

| Category | Instructions |
|----------|-------------|
| **Platform Management (2)** | `initialize`, `update_config` |
| **Courses (2)** | `create_course`, `update_course` |
| **Enrollment & Progress (6)** | `enroll`, `complete_lesson`, `finalize_course`, `close_enrollment`, `issue_credential`, `upgrade_credential` |
| **Minter Roles (3)** | `register_minter`, `revoke_minter`, `reward_xp` |
| **Achievements (3)** | `create_achievement_type`, `award_achievement`, `deactivate_achievement_type` |

### Core Learning Loop

```
ENROLL → COMPLETE LESSONS → FINALIZE COURSE → ISSUE CREDENTIAL → CLOSE ENROLLMENT
```

1. **Enroll**: Learner signs, prerequisite check, create Enrollment PDA
2. **Complete Lessons**: Backend signs, set bitmap bit, mint lesson XP (Token-2022 CPI)
3. **Finalize Course**: Backend signs, verify all lessons done, mint completion bonus + creator XP
4. **Issue Credential**: Backend signs, Metaplex Core createV2 CPI (PermanentFreezeDelegate + Attributes plugins)
5. **Close Enrollment**: Learner signs, reclaim rent (immediate if completed, 24h cooldown if not)

### Key Design Decisions

- **XP = soulbound Token-2022 token** (NonTransferable + PermanentDelegate)
- **Credentials = Metaplex Core NFTs** — soulbound via PermanentFreezeDelegate, wallet-visible, upgradeable
- **Config PDA = update authority** of all track collection NFTs
- **`finalize_course` and `issue_credential` are split** — XP awards don't depend on credential CPI
- **Completion bonus merged into `finalize_course`** — bonus XP = floor(xp_per_lesson * lesson_count / 2)
- **No LearnerProfile PDA** — XP balance tracked via Token-2022 ATA
- **Rotatable backend signer** stored in Config
- **Reserved bytes** on all accounts for future-proofing without migrations
- **`revoke_minter` closes the MinterRole PDA** (not a soft deactivation)

## Technology Stack

| Layer | Stack |
|-------|-------|
| Programs | Anchor 0.31+, Rust 1.82+ |
| Token Standard | Token-2022 (NonTransferable, PermanentDelegate, MetadataPointer, TokenMetadata) |
| Credentials | Metaplex Core NFTs (soulbound via PermanentFreezeDelegate) |
| Testing | Mollusk, LiteSVM, Trident (fuzz) |
| Client | TypeScript, @coral-xyz/anchor, @solana/web3.js |
| Frontend | Next.js 14+, React, Tailwind CSS |
| RPC | Helius (DAS API for XP leaderboard + credential NFT queries) |
| Content | Arweave (immutable course content) |
| Multisig | Squads (platform authority) |

## Compute Budgets

| Instruction | CU Budget |
|-------------|-----------|
| initialize | ~50K |
| create_course | ~15K |
| complete_lesson | ~30K |
| finalize_course | ~50K |
| issue_credential | ~50-100K |
| upgrade_credential | ~50-100K |
| award_achievement | ~80K |

## Operating Procedure

### 1. Classify the task

- Platform setup (Config, authority)
- Course management (create, update, track assignment)
- Enrollment flow (enroll, lessons, finalize, credentials, close)
- Minter roles (register, revoke, reward XP)
- Achievements (create type, award, deactivate)
- Account structure (PDAs, state)
- Access control (backend signer, authority, minter permissions)
- Testing (unit, integration, fuzz)
- Security (audit, attack vectors)
- Deployment (devnet, mainnet)

### 2. Implementation Checklist

Always verify:
- Account validation (owner, signer, PDA seeds + bump)
- Backend signer matches `Config.backend_signer`
- Checked arithmetic throughout (`checked_add`, `checked_sub`, `checked_mul`)
- Bitmap operations correct for lesson tracking
- Events emitted for state changes
- Canonical PDA bumps stored (never recalculated)
- Reserved bytes preserved on account modifications
- CPI target program IDs validated

### 3. Testing Requirements

- **Unit test** (Mollusk): Each instruction in isolation
- **Integration test** (LiteSVM): Full enroll → complete lessons → finalize → credential flow
- **Fuzz test** (Trident): Random amounts, edge cases, bitmap bounds
- **Attack test**: Unauthorized signer, double completion, supply exhaustion

## Progressive Disclosure (read when needed)

### Programs & Development
- [programs-anchor.md](programs-anchor.md) — Anchor patterns, constraints, testing pyramid, IDL generation

### Testing & Security
- [testing.md](testing.md) — LiteSVM, Mollusk, Trident, CI guidance
- [security.md](security.md) — Vulnerability categories, program checklists

### Deployment
- [deployment.md](deployment.md) — Devnet/mainnet workflows, verifiable builds, multisig

### Ecosystem & Reference
- [ecosystem.md](ecosystem.md) — Token standards, DeFi protocols
- [idl-codegen.md](idl-codegen.md) — Codama/Shank client generation
- [resources.md](resources.md) — Official documentation links

## Task Routing Guide

| User asks about... | Primary file(s) |
|--------------------|-----------------|
| Anchor program code | programs-anchor.md |
| Unit/integration testing | testing.md |
| Fuzz testing (Trident) | testing.md |
| Security review, audit | security.md |
| Deploy to devnet/mainnet | deployment.md |
| Token standards, SPL, Token-2022 | ecosystem.md |
| Generated clients, IDL | idl-codegen.md |
| Official docs and resources | resources.md |

## Canonical Docs

| Document | Purpose |
|----------|---------|
| `docs/SPEC.md` | Source of truth for all program behavior |
| `docs/ARCHITECTURE.md` | Account maps, data flows, CU budgets |
| `docs/INTEGRATION.md` | Frontend integration guide |

Related Skills

workspace-surface-audit

144923
from affaan-m/everything-claude-code

Audit the active repo, MCP servers, plugins, connectors, env surfaces, and harness setup, then recommend the highest-value ECC-native skills, hooks, agents, and operator workflows. Use when the user wants help setting up Claude Code or understanding what capabilities are actually available in their environment.

DevelopmentClaude

ui-demo

144923
from affaan-m/everything-claude-code

Record polished UI demo videos using Playwright. Use when the user asks to create a demo, walkthrough, screen recording, or tutorial video of a web application. Produces WebM videos with visible cursor, natural pacing, and professional feel.

Developer ToolsClaude

token-budget-advisor

144923
from affaan-m/everything-claude-code

Offers the user an informed choice about how much response depth to consume before answering. Use this skill when the user explicitly wants to control response length, depth, or token budget. TRIGGER when: "token budget", "token count", "token usage", "token limit", "response length", "answer depth", "short version", "brief answer", "detailed answer", "exhaustive answer", "respuesta corta vs larga", "cuántos tokens", "ahorrar tokens", "responde al 50%", "dame la versión corta", "quiero controlar cuánto usas", or clear variants where the user is explicitly asking to control answer size or depth. DO NOT TRIGGER when: user has already specified a level in the current session (maintain it), the request is clearly a one-word answer, or "token" refers to auth/session/payment tokens rather than response size.

Productivity & Content CreationClaude

skill-comply

144923
from affaan-m/everything-claude-code

Visualize whether skills, rules, and agent definitions are actually followed — auto-generates scenarios at 3 prompt strictness levels, runs agents, classifies behavioral sequences, and reports compliance rates with full tool call timelines

DevelopmentClaude

santa-method

144923
from affaan-m/everything-claude-code

Multi-agent adversarial verification with convergence loop. Two independent review agents must both pass before output ships.

Quality AssuranceClaude

safety-guard

144923
from affaan-m/everything-claude-code

Use this skill to prevent destructive operations when working on production systems or running agents autonomously.

DevelopmentClaude

repo-scan

144923
from affaan-m/everything-claude-code

Cross-stack source code asset audit — classifies every file, detects embedded third-party libraries, and delivers actionable four-level verdicts per module with interactive HTML reports.

DevelopmentClaude

project-flow-ops

144923
from affaan-m/everything-claude-code

Operate execution flow across GitHub and Linear by triaging issues and pull requests, linking active work, and keeping GitHub public-facing while Linear remains the internal execution layer. Use when the user wants backlog control, PR triage, or GitHub-to-Linear coordination.

DevelopmentClaude

product-lens

144923
from affaan-m/everything-claude-code

Use this skill to validate the "why" before building, run product diagnostics, and pressure-test product direction before the request becomes an implementation contract.

Product ManagementClaude

openclaw-persona-forge

144923
from affaan-m/everything-claude-code

为 OpenClaw AI Agent 锻造完整的龙虾灵魂方案。根据用户偏好或随机抽卡, 输出身份定位、灵魂描述(SOUL.md)、角色化底线规则、名字和头像生图提示词。 如当前环境提供已审核的生图 skill,可自动生成统一风格头像图片。 当用户需要创建、设计或定制 OpenClaw 龙虾灵魂时使用。 不适用于:微调已有 SOUL.md、非 OpenClaw 平台的角色设计、纯工具型无性格 Agent。 触发词:龙虾灵魂、虾魂、OpenClaw 灵魂、养虾灵魂、龙虾角色、龙虾定位、 龙虾剧本杀角色、龙虾游戏角色、龙虾 NPC、龙虾性格、龙虾背景故事、 lobster soul、lobster character、抽卡、随机龙虾、龙虾 SOUL、gacha。

AI Tools & UtilitiesClaude

manim-video

144923
from affaan-m/everything-claude-code

Build reusable Manim explainers for technical concepts, graphs, system diagrams, and product walkthroughs, then hand off to the wider ECC video stack if needed. Use when the user wants a clean animated explainer rather than a generic talking-head script.

DevelopmentClaude

laravel-plugin-discovery

144923
from affaan-m/everything-claude-code

Discover and evaluate Laravel packages via LaraPlugins.io MCP. Use when the user wants to find plugins, check package health, or assess Laravel/PHP compatibility.

DevelopmentClaude