askill
aztec-deploy

aztec-deploySafety --Repository

Generate TypeScript deployment scripts for Aztec contracts with fee payment configuration. Use when deploying contracts, setting up deployment pipelines, or configuring fee payment methods.

6 stars
1.2k downloads
Updated 1/21/2026

Package Files

Loading files...
SKILL.md

Aztec Deployment Skill

Generate production-ready TypeScript deployment scripts for Aztec smart contracts.

Subskills

Navigate to the appropriate section based on your task:

Quick Start: Basic Deployment Script

import { MyContract } from "../src/artifacts/MyContract.js";
import { Logger, createLogger } from "@aztec/aztec.js/log";
import { SponsoredFeePaymentMethod } from "@aztec/aztec.js/fee/testing";
import { setupWallet } from "../src/utils/setup_wallet.js";
import { getSponsoredFPCInstance } from "../src/utils/sponsored_fpc.js";
import { SponsoredFPCContract } from "@aztec/noir-contracts.js/SponsoredFPC";
import { deploySchnorrAccount } from "../src/utils/deploy_account.js";
import { getTimeouts } from "../config/config.js";

async function main() {
    const logger = createLogger('aztec:deploy');

    // 1. Setup wallet connection
    const wallet = await setupWallet();

    // 2. Setup sponsored fee payment
    const sponsoredFPC = await getSponsoredFPCInstance();
    await wallet.registerContract(sponsoredFPC, SponsoredFPCContract.artifact);
    const paymentMethod = new SponsoredFeePaymentMethod(sponsoredFPC.address);

    // 3. Deploy account (or use existing)
    const account = await deploySchnorrAccount(wallet);

    // 4. Deploy contract
    const contract = await MyContract.deploy(wallet, account.address).send({
        from: account.address,
        fee: { paymentMethod }
    }).deployed({ timeout: getTimeouts().deployTimeout });

    logger.info(`Contract deployed at: ${contract.address}`);
}

main().catch(console.error);

Deployment Workflow

  1. Setup Wallet - Connect to Aztec node via PXE
  2. Configure Fees - Setup sponsored or other fee payment
  3. Create Account - Deploy Schnorr account or recover existing
  4. Deploy Contract - Send deployment transaction
  5. Verify - Confirm deployment succeeded

Key Imports

// Wallet and node connection
import { createAztecNodeClient } from '@aztec/aztec.js/node';
import { TestWallet } from '@aztec/test-wallet/server';

// Account management
import { Fr, GrumpkinScalar } from "@aztec/aztec.js/fields";
import { AccountManager } from "@aztec/aztec.js/wallet";
import { AztecAddress } from "@aztec/stdlib/aztec-address";

// Fee payment
import { SponsoredFeePaymentMethod } from "@aztec/aztec.js/fee/testing";
import { SponsoredFPCContract } from "@aztec/noir-contracts.js/SponsoredFPC";

// Logging
import { Logger, createLogger } from "@aztec/aztec.js/log";

Using Aztec MCP Server

For detailed API documentation and deployment patterns, use the Aztec MCP tools:

# Sync repos first
aztec_sync_repos()

# Search for deployment patterns
aztec_search_code({ query: "deploy", filePattern: "*.ts" })

# Search documentation
aztec_search_docs({ query: "deployment" })

The aztec-starter repo has reference implementations of deployment scripts, devnet configuration, and integration test patterns.

Install

Download ZIP
Requires askill CLI v1.0+

AI Quality Score

AI review pending.

Metadata

Licenseunknown
Version-
Updated1/21/2026
Publishercritesjosh

Tags

apici-cdgithub-actionsobservabilitytesting