Catalog PyPI
Back to packageRELEASE DETAILS

1.2.7

PyPI

agentis

A Python toolkit for Solana agents

blockchainsdksolanatools
Published31 Dec 2024
Direct dependencies19
Transitive dependenciesNot calculated

README

Version 1.2.7 documentation

Agentis Framework

A comprehensive toolkit for Solana blockchain interactions, offering seamless integration of DeFi operations, token management, and AI-powered automation.

Core Capabilities

Token Management 🪙

  • Execute SOL and SPL token transfers
  • Monitor wallet balances
  • Participate in SOL staking
  • Create custom tokens
  • Access development funds via faucet
  • Manage token accounts (burn/close operations)
  • Perform bulk token account maintenance

DeFi Operations 💱

  • Seamless Jupiter DEX integration
  • Execute token swaps with configurable slippage
  • Access direct routing capabilities
  • Interface with Raydium liquidity pools

Yield Generation 🏦

  • Access Lulo lending protocols
  • Earn passive income on idle assets

AI Integration 🔗

  • Leverage LangChain's intelligent tools
  • Automate blockchain interactions
  • Access comprehensive tooling for financial operations

Network Analytics 📈

  • Monitor Solana network performance
  • Track real-time TPS (Transactions Per Second)

Token Intelligence 📊

  • Retrieve token information via symbol
  • Access token data through address lookup

Token Launch Tools 🚀

  • Deploy Pump & Fun tokens
  • Customize token parameters

Liquidity Management 🏦

  • Configure and deploy Meteora DLMM pools
  • Fine-tune pool parameters

Getting Started

Setup

pip install agentis

Basic Configuration

from agentis import SolanaAgentKit, create_solana_tools

# Initialize framework
agent = SolanaAgentKit(
    private_key="your-base58-private-key",
    rpc_url="https://api.mainnet-beta.solana.com",
    openai_key="your-openai-api-key"
)

# Set up AI tools
tools = create_solana_tools(agent)

Implementation Examples

Price Discovery

from agentis import SolanaAgentKit

async def main():
    agent = SolanaAgentKit(
        private_key="your-base58-private-key",
        rpc_url="https://api.mainnet-beta.solana.com",
        openai_key="your-openai-api-key"
    )

    price = await agent.fetch_price("FKMKctiJnbZKL16pCmR7ig6bvjcMJffuUMjB97YD7LJs")
    print(f"Current Price: {price} SOL")

import asyncio
asyncio.run(main())

Token Exchange

from agentis import SolanaAgentKit
from solders.pubkey import Pubkey

async def main():
    agent = SolanaAgentKit(
        private_key="your-base58-private-key",
        rpc_url="https://api.mainnet-beta.solana.com",
        openai_key="your-openai-api-key"
    )

    tx_sig = await agent.trade(
        agent,
        output_mint=Pubkey.from_string("target-token-mint"),
        input_amount=100,
        input_mint=Pubkey.from_string("source-token-mint"),
        slippage_bps=300  # 3% slippage tolerance
    )

import asyncio
asyncio.run(main())

Asset Lending

from agentis import SolanaAgentKit

async def main():
    agent = SolanaAgentKit(
        private_key="your-base58-private-key",
        rpc_url="https://api.mainnet-beta.solana.com",
        openai_key="your-openai-api-key"
    )
    
    tx_sig = await agent.lend_assets(amount=100)

import asyncio
asyncio.run(main())

SOL Staking

from agentis import SolanaAgentKit

async def main():
    agent = SolanaAgentKit(
        private_key="your-base58-private-key",
        rpc_url="https://api.mainnet-beta.solana.com",
        openai_key="your-openai-api-key"
    )

    tx_sig = await agent.stake(amount=1)  # Stakes 1 SOL

import asyncio
asyncio.run(main())

Development Fund Access

from agentis import SolanaAgentKit

async def main():
    agent = SolanaAgentKit(
        private_key="your-base58-private-key",
        rpc_url="https://api.mainnet-beta.solana.com",
        openai_key="your-openai-api-key"
    )

    result = await agent.request_faucet_funds()
    print(result)

import asyncio
asyncio.run(main())

Network Performance Monitoring

from agentis import SolanaAgentKit

async def main():
    agent = SolanaAgentKit(
        private_key="your-base58-private-key",
        rpc_url="https://api.mainnet-beta.solana.com",
        openai_key="your-openai-api-key"
    )

    current_tps = await agent.get_tps()
    print(f"Network TPS: {current_tps}")

import asyncio
asyncio.run(main())

Token Data Retrieval

from agentis import SolanaAgentKit

async def main():
    agent = SolanaAgentKit(
        private_key="your-base58-private-key",
        rpc_url="https://api.mainnet-beta.solana.com",
        openai_key="your-openai-api-key"
    )

    # By symbol
    sol_data = await agent.get_token_data_by_ticker("SOL")
    print(sol_data)

    # By address
    token_data = await agent.get_token_data_by_address("token-mint-address")
    print(token_data)

import asyncio
asyncio.run(main())

Token Launch

from agentis import SolanaAgentKit
from agentis.types import PumpfunTokenOptions

async def main():
    agent = SolanaAgentKit(
        private_key="your-base58-private-key",
        rpc_url="https://api.mainnet-beta.solana.com",
        openai_key="your-openai-api-key"
    )

    options = PumpfunTokenOptions()
    result = await agent.launch_pump_fun_token(
        token_name="MyToken",
        token_ticker="MTK",
        description="Example token description",
        image_url="https://example.com/token.png",
        options=options
    )
    print(result)

import asyncio
asyncio.run(main())

DLMM Pool Creation

from agentis import SolanaAgentKit
from solders.pubkey import Pubkey
from agentis.utils.meteora_dlmm.types import ActivationType

async def main():
    agent = SolanaAgentKit(
        private_key="your-base58-private-key",
        rpc_url="https://api.mainnet-beta.solana.com",
        openai_key="your-openai-api-key"
    )

    result = await agent.create_meteora_dlmm_pool(
        bin_step=1,
        token_a_mint=Pubkey.from_string("token-a-mint"),
        token_b_mint=Pubkey.from_string("token-b-mint"),
        initial_price=1.0,
        price_rounding_up=True,
        fee_bps=30,
        activation_type=ActivationType.Timestamp,
        has_alpha_vault=True,
        activation_point=None
    )
    print(result)

import asyncio
asyncio.run(main())

Core Functions Reference

Asset Operations

  • transfer(): Execute token transfers
  • trade(): Perform token swaps
  • get_balance(): Check wallet balances
  • lend_asset(): Lend assets via Lulo
  • stake(): Participate in SOL staking
  • request_faucet_funds(): Access development funds
  • deploy_token(): Create new tokens
  • fetch_price(): Retrieve token prices

Analytics & Data

  • get_tps(): Monitor network performance
  • get_token_data_by_ticker(): Token lookup by symbol
  • get_token_data_by_address(): Token lookup by address

Advanced Features

  • launch_pump_fun_token(): Deploy custom tokens
  • create_meteora_dlmm_pool(): Configure liquidity pools
  • buy_with_raydium(): Execute Raydium purchases
  • sell_with_raydium(): Execute Raydium sales
  • burn_and_close_accounts(): Manage token accounts
  • multiple_burn_and_close_accounts(): Bulk account management

Technical Requirements

Essential dependencies:

  • solana-py
  • spl-token-py

Community Participation

We welcome contributions! Feel free to submit pull requests.

Licensing

ISC License

Security Advisory

Exercise caution with private keys and ensure secure implementation practices.

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Declared dependencies 19

Native requirements
19 direct targetsNot calculated transitive count
Package / targetRequirementRelationship
aiohttp
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
aiohttp<4.0.0,>=3.11.11runtime
anchorpy
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
anchorpy<0.21.0,>=0.20.1runtime
base58
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
base58<3.0.0,>=2.1.1runtime
langchain
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
langchain<0.4.0,>=0.3.12runtime
numpy
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
numpy>=1.26.0runtime
openai
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
openai<2.0.0,>=1.58.1runtime
pillow
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
pillow<12.0.0,>=11.0.0runtime
pre-commit
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
pre-commit<5.0.0,>=4.0.1runtime
pydantic
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
pydantic<3.0.0,>=2.10.4runtime
python-dotenv
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
python-dotenv<2.0.0,>=1.0.1runtime
requests
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
requests==2.32.3runtime
setuptools
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
setuptools<76.0.0,>=75.6.0runtime
solana
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
solana<0.36.0,>=0.35.0runtime
solders
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
solders<0.22.0,>=0.21.0runtime
sphinx
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
sphinx<9.0.0,>=8.1.3runtime
sphinx-autodoc-typehints
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
sphinx-autodoc-typehints<3.0.0,>=2.5.0runtime
sphinx-rtd-theme
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
sphinx-rtd-theme<4.0.0,>=3.0.2runtime
twine
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
twine<7.0.0,>=6.0.1runtime
wheel
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": "<3.13,>=3.8",
  "evaluation": "NOT_EVALUATED"
}
wheel<0.46.0,>=0.45.1runtime

Distribution files

2 collected
agentis-1.2.7-py3-none-any.whl

bdist_wheel · 59.81 KB · Python py3

Source file
agentis-1.2.7.tar.gz

sdist · 48.55 KB · Python source

Source file

Repository

PENDING
traddoo/agentis-framework

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 22:28 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package_version:9c47f8331a6e4eb8702fd15f8a3b7ac3a78485c103b25a17fa2bb7cdba4692de

Other collected versions

View all collected versions →