Skip to main content

Plataforma open source de ferramentas para desenvolvedores da Arc blockchain (Circle)

Project description

Arc DevKit

Python 3.11+ MIT License Testnet Status

Arc DevKit is a Python toolkit for developers building applications on the Arc blockchain — Circle's Layer 1 with USDC as the gas token and sub-second finality.

It solves a practical problem: Arc has unique characteristics (USDC gas, Malachite consensus, Circle Agent Stack) that don't exist on Ethereum or other EVMs. Without a dedicated kit, developers must dig through scattered documentation, configure Arc-specific middleware, and manually figure out how to estimate costs in USDC, debug reverted transactions, or structure an economic agent. Arc DevKit packages all of that.


What is Arc?

Arc is a Layer 1 blockchain developed by Circle (creators of USDC), designed for programmable payments and autonomous economic agents.

Feature Detail
EVM-compatible Solidity contracts work without modification
USDC as gas No need for ETH or a separate native token
Malachite consensus Sub-second finality
Circle Agent Stack Native infrastructure for AI economic agents
Testnet Live since October 2025; mainnet expected summer 2026

What you can build with Arc DevKit

On-chain contracts and scripts

Use the Dev Copilot to ask questions, generate Solidity boilerplate, deploy scripts, and Circle ecosystem integrations — all with Arc-specific context built in.

Examples of what to generate:

  • Recurring USDC payment contract
  • ERC-20 token deployed to Arc testnet
  • USDC approval and transfer script
  • Circle CCTP (Cross-Chain Transfer Protocol) integration

Autonomous economic agents

Use the Agent Starter Kit to build agents that interact with Arc programmatically — monitor wallets, execute conditional payments, react to on-chain events.

Examples of what to build:

  • Agent that monitors a wallet and triggers actions when USDC is received
  • Recurring payment bot (e.g. monthly subscription in USDC)
  • Balance control agent with threshold alerts
  • Automated payment processing pipeline

Transaction debugging

Use the Tx Debugger to understand why a transaction failed — without manually decoding raw EVM traces. It fetches the transaction data, decodes the error, and produces a plain-language explanation with a suggested fix.

Useful for:

  • Reverted transactions with generic error messages
  • Gas estimation failures in USDC
  • Diagnosing interactions with external contracts
  • Analyzing the real cost of an operation

Modules

Dev Copilot

AI assistant (Claude Sonnet) with built-in Arc context. Answers technical questions, generates code, and explains Circle ecosystem concepts — without you needing to paste documentation into a chat window.

Agent Starter Kit

Base classes and templates for economic agents. Includes PaymentAgent (USDC payments) and MonitorAgent (wallet monitoring). Supports read-only mode (no private key) and write mode (with private key).

Tx Debugger

Fetches the transaction via RPC (eth_getTransaction + eth_getTransactionReceipt), decodes the result, and calls the Dev Copilot to generate a natural-language analysis with diagnosis and suggestion.


Installation

Requirements: Python 3.11 or higher.

# Standard install via PyPI
pip install arc-devkit

# Development install (clone + editable mode)
git clone https://github.com/Jeielsantosdev/arc-devkit.git
cd arc-devkit
pip install -e ".[dev]"

Environment variables

# Required — Anthropic API key (used by Dev Copilot and Tx Debugger)
export ANTHROPIC_API_KEY="your-key-here"

# Arc RPC URL (default: public testnet)
export ARC_RPC_URL="https://rpc.arc.io/testnet"

# Optional — required only to send transactions (agents in write mode)
export ARC_PRIVATE_KEY="your-private-key"

Create a .env file at the project root so you don't need to export these on every session.


Usage

Check testnet connection

arcdevkit status
Arc testnet: connected
Chain ID:    7777777
Latest block: 4821903
Gas (USDC):  0.000021 USDC/tx

Dev Copilot — ask questions and generate code

Via CLI:

arcdevkit copilot ask "How do I deploy an ERC-20 contract on Arc testnet?"
arcdevkit copilot ask "What is the difference between ETH gas and USDC gas on Arc?"
arcdevkit copilot ask "How do I integrate Circle CCTP into my Solidity contract?"

Via Python:

from arc_devkit.copilot.agent import DevCopilot

copilot = DevCopilot()

response = copilot.ask(
    "How do I implement recurring USDC payments on Arc using Solidity?"
)
print(response)

Agent Starter Kit — create and manage agent wallets

# Create a new wallet for an agent
arcdevkit agent wallet create

# Check balance (USDC and gas)
arcdevkit agent wallet balance --address 0xYourWalletHere

Via Python — monitor agent:

from arc_devkit.agents.monitor_agent import MonitorAgent

agent = MonitorAgent(private_key=None)  # read-only mode, no private key

balance = agent.get_balance("0xYourWalletHere")
print(f"Balance: {balance} USDC")

Via Python — payment agent:

from arc_devkit.agents.payment_agent import PaymentAgent
import os

agent = PaymentAgent(private_key=os.environ["ARC_PRIVATE_KEY"])

result = agent.execute({
    "to": "0xDestinationHere",
    "amount_usdc": "10.00",
})
print(result)

Tx Debugger — analyze transactions

Via CLI:

arcdevkit debug tx 0xyour_transaction_hash_here

Via Python:

from arc_devkit.debugger.tx_analyzer import TxAnalyzer

analyzer = TxAnalyzer()
analysis = analyzer.analyze("0xyour_transaction_hash_here")
print(analysis)

Example output for a reverted transaction:

Status:     reverted
Error:      ERC20: transfer amount exceeds balance
Cost:       0.0008 USDC
Diagnosis:  The sender wallet did not have enough USDC balance at execution
            time. Check the balance before calling transfer().

REST API

Arc DevKit also exposes a REST API for integrating with other systems or frontends:

uvicorn arc_devkit.api.main:app --reload

Available endpoints:

Method Route Description
POST /copilot/ask Send a question to the Dev Copilot
GET /agents/balance/{address} Query wallet balance
POST /agents/payment Execute a USDC payment
GET /debugger/tx/{hash} Analyze a transaction
GET /debugger/block Current block information

CORS pre-configured for localhost:3000, localhost:5173, and localhost:8080.


Project Structure

arc_devkit/
├── config.py           # Global config; reads .env and validates required vars
├── core/
│   ├── connection.py   # web3.py client with PoA middleware for Arc
│   └── wallet.py       # Wallet utilities
├── copilot/
│   └── agent.py        # DevCopilot — Anthropic SDK wrapper with Arc system prompt
├── agents/
│   ├── base_agent.py   # ABC with get_balance() and execute()
│   ├── payment_agent.py
│   └── monitor_agent.py
├── debugger/
│   └── tx_analyzer.py  # Fetches tx via RPC + analysis with DevCopilot
├── api/
│   ├── main.py         # FastAPI app
│   └── routes/         # copilot.py, agents.py, debugger.py
└── cli/
    ├── main.py         # Typer entry point (arcdevkit)
    └── commands/       # copilot.py, agent.py, debug.py

Tests

# Unit tests (no testnet connection required)
pytest

# Single test
pytest -k "test_copilot"

# Integration tests (require ARC_RPC_URL and ANTHROPIC_API_KEY)
pytest -m integration

License

MIT — see LICENSE for details.


About Arc

Arc is developed by Circle, the company behind USDC. For more information about the blockchain and the economic agents ecosystem, see Circle's official documentation.


Actively in development. Arc DevKit is in early stage — the Arc testnet is still running and mainnet is expected in summer 2026. APIs and interfaces may change between versions. Keep this in mind for production use.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

arc_devkit-0.2.1.tar.gz (27.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

arc_devkit-0.2.1-py3-none-any.whl (28.8 kB view details)

Uploaded Python 3

File details

Details for the file arc_devkit-0.2.1.tar.gz.

File metadata

  • Download URL: arc_devkit-0.2.1.tar.gz
  • Upload date:
  • Size: 27.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for arc_devkit-0.2.1.tar.gz
Algorithm Hash digest
SHA256 21ed13e6002d322315a742dc72218b38ed8a5e942d8de6c8141def53b3916068
MD5 69192388a065aecc79c12f21f28f189a
BLAKE2b-256 3e5702d4f3438174322cce5eaa660635a202daddc05609f7ceef3f3a95d45cf0

See more details on using hashes here.

File details

Details for the file arc_devkit-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: arc_devkit-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 28.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for arc_devkit-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6ee954a1ba010c9049115e65d1d73c311330cb1d41afb65d684ce5855a9309c1
MD5 b5b0d38a0ee2c045cf615afdfce6bb47
BLAKE2b-256 9c2977abf000bb4b99de7f201ab566ad39756a820deb703b8734a24e35d27098

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page