Skip to content
use-algokit-utils logo

AlgoKit Utils

use-algokit-utils

AlgoKit Utils library for interacting with the Algorand blockchain from TypeScript or Python applications. Use when connecting to Algorand networks (LocalNet, TestNet, MainNet), sending payments or transferring assets, creating and managing accounts, deploying or interacting with smart contracts ...

NeverSight/skills_feed0installs213stars

SKILL.md

Full skill instructions

AlgoKit Utils

Use AlgoKit Utils to interact with the Algorand blockchain from TypeScript or Python applications.

Overview / Core Workflow

  1. Create an AlgorandClient instance
  2. Get or create accounts for signing
  3. Send transactions using algorand.send.* methods
  4. Or compose groups using algorand.newGroup()

How to proceed

  1. Initialize AlgorandClient:

    TypeScript:

    import { AlgorandClient } from '@algorandfoundation/​algokit-utils'
    
    const algorand = AlgorandClient.fromEnvironment()
    // Or: AlgorandClient.defaultLocalNet()
    // Or: AlgorandClient.testNet()
    // Or: AlgorandClient.mainNet()
    

    Python:

    from algokit_utils import AlgorandClient
    
    algorand = AlgorandClient.from_environment()
    # Or: AlgorandClient.default_localnet()
    # Or: AlgorandClient.testnet()
    # Or: AlgorandClient.mainnet()
    
  2. Get accounts:

    TypeScript:

    const account = await algorand.account.fromEnvironment('DEPLOYER')
    

    Python:

    account = algorand.account.from_environment("DEPLOYER")
    
  3. Send transactions:

    TypeScript:

    await algorand.send.payment({
      sender: account.addr,
      receiver: 'RECEIVERADDRESS',
      amount: algo(1),
    })
    

    Python:

    algorand.send.payment(PaymentParams(
      sender=account.address,
      receiver="RECEIVERADDRESS",
      amount=AlgoAmount(algo=1),
    ))
    

Important Rules / Guidelines

  • Use AlgorandClient — It's the main entry point; avoid deprecated function-based APIs
  • Default to fromEnvironment() — Works locally and in production via env vars
  • Register signers — Use algorand.account to get accounts; signers are auto-registered
  • Use algo() helper — For TypeScript, use algo(1) instead of raw microAlgos

Common Variations / Edge Cases

ScenarioApproach
LocalNet developmentAlgorandClient.defaultLocalNet()
TestNet/​MainNetAlgorandClient.testNet() or .mainNet()
Custom nodeAlgorandClient.fromConfig({ algodConfig: {...} })
Deploy contractUse typed app client factory (see app-client docs)
Transaction groupsalgorand.newGroup().addPayment(...).addAssetOptIn(...).send()

References / Further Reading

Language-specific references are organized in subfolders:

External documentation: