Agentverse Hosted Agents
Overview
Hosted Agents are cloud-based Agents managed within the Agentverse, enabling developers to deploy and manage Agents without handling infrastructure. These Agents function as lightweight, efficient tasks, resetting global variables after each call. To maintain state across calls, developers must use Agent Storage for stateful behavior.
Developers can start with blank scripts or use customizable templates for common use cases like retrieving stock prices or finding nearby restaurants. Hosted Agents are highly accessible, requiring no local dependencies, and include an agent.py
file from which you can develop them straightforwardly.
Let’s explore the process and insights you need to get started with Hosted Agents on Agentverse!
Create Hosted Agents
On the Agentverse you can create and host any type of Agent you want to create using the Agents tab.
You can launch an hosted Agent by clicking the + Launch an Agent button and click the Create an Agentverse hosted Agent link. Here, there are 2 different ways you can start creating your agent. You can either choose to create an Agent:
- From a Blank Agent.
- From a Skeleton Agent.
Here, click on the + New Agent button and choose Blank Agent.
You will need to provide a name for the Agent you wish to create.
Once you select it, your agent will be ready to be coded and a box will appear in the My Agents page with different data being displayed about the agent you have just created, including the name and the address of the agent.
If you click on your agent box, the code editor will be displayed. This is the Agent Editor; it allows you to create, edit and refine the code for the Agent you have in mind all in one place. The Agent editor provides various basic information about your Agent, including the Agent address and wallet address. For additional information on Agent addresses, have a look at our dedicated documentation here.
The Agent Editor has an integrated agent.py and .env files that allow you to start programming immediately! The Agent Editor offers you the option of structuring your project into several file windows, which are located on the left-hand side of the editor window. All you have to do is enter a name for the new file to be added. An additional feature of the Agent Editor is the Agent Logs; a built-in terminal that displays the output of your script after it has been executed. The Agent Logs provides multiple filters for the different log levels.
The Agent Logs feature is available by clicking the third bottom icon on the left side of the Agent Editor. The first and second buttons enable you to explore Agents Secrets and Agent Storage features.
This way, we aim at making Agents’ development as quick and efficient as possible. This is a great tool to determine if your code runs smoothly and to check if any error arises and solve it immediately!
Documentation and customization for your Agents
Whenever you create an Agent, it is always a good practice to provide a README file, metadata and an Agent’s icon for better reference. The README helps in providing a clear and concise overview of the Agent’s purpose, functionality, and setup instructions. You will be able to see this file within your Agent’s Overview page in Agentverse. On the other hand, the Metadata should serve as a structured summary of your Agent’s configuration, such as its name, description, creator details, and any other specific settings or dependencies. This will help your Agents getting higher score on Agentverse Marketplace, thus increasing their discoverability and usage. Head over to the Agents README Structure guide for guidelines and tips on writing your Agents’ README files. Also, check out the Agent Search Optimization guide for a complete overview on how to enhance the discoverability of Agents across the ecosystem.
Check out the following guide if you have a local Agent which you want to register into the Agentverse using a Mailbox or a Proxy. The guide will help in understanding how to enroll the Agent using these tools, how to possibly set up a README file locally and then publish it on Agentverse for your local Agent.
Customize your Agents profile image
Additionally, every Agent should have a custom icon (i.e., an Avatar) to visually distinguish it from others. This icon improves the Agent’s identity and usability within the Agentverse. It is possible to customize your agent’s avatar by clicking on your current Agent’s avatar icon and choose either an existing avatar or upload your own! You can do this straightforwardly from the full list of your Hosted Agents or from the Agent Editor when editing information for a particular Agent!
Test network (Testnet) vs Main Network (Mainnet)
We can distinguish between:
-
Testnet: it is a separate blockchain environment that developers and users can use to test new features or applications without risking real tokens. It allows for experimentation in a controlled environment.
-
Mainnet: it is the actual production blockchain where real transactions occur with real tokens. It is the live version of the blockchain.
By setting up and experimenting on a testnet first, developers can ensure that everything works as intended before deploying it on the mainnet. This helps in avoiding potential issues or vulnerabilities in a live environment.
Create your first hosted Agent on the Agentverse!
You are now ready to start using the Agentverse to create and edit your Agents in few minutes! Let’s begin with creating a simple Agent printing “Hello world!” in the Agent Logs on an interval of 3 seconds by using the .on_interval()
Agent Handler.
Here’s an example:
To run the agent, simply click on the Run button. You can stop the script by clicking on the Stop button.
The output will be printed in the Agent Logs window:
Within the Agent Editor, you can import and utilize a predefined set of modules to develop your ideas. These pre-approved modules offer a diverse range of functionalities, allowing you to build complex Agents. For further information on modules being available within the Agentverse Editor, have a look at the following resource: Agentverse: allowed imports.
For additional information on Agent Handlers, check out this guide.
Launch an Agent with Chat Protocol
In the Agents page, you can launch any existing Agents and list them on Agentverse and ASI:One thanks to the Chat Protocol. Doing this will increase their discoverability and monetization opportunities. Just click on + Launch an Agent button. Then, select the Chat Protocol button and follow the steps required.
Support for Local Agent Code
You can now import the Agent
class and create your agent with my_agent = Agent(...)
. Note that this is simply a wrapper for your pre-loaded agent
instance, so any custom configuration you add to the Agent will be ignored. This is because the configuration, seed, name, and address for hosted Agents is already set, and is not allowed to be overwritten.
Additionally, you can now use agent.run()
method, but this is also not required. Clicking Run
will cause your agent to run whether you include this command or not. The main reason for supporting this is to unify local and hosted Agent code, so that your Agent code can run as either local or hosted without any modifications.
Exceptions:
- Use of
Bureau
is not allowed as each Agent project can contain only a single Agent.
uagents
Build fast and lightweight for decentralized scenarios using the uagents
Framework. Check out the Agents documentation:
-
Available classes:
Model
,Context
,Protocol
.Example:
copy
requests
This package allows you to interact with HTTP requests and responses.
-
Available functions:
get
,post
,put
,patch
,delete
.Example:
copy
cosmpy
A Python library for interacting with Cosmos-based blockchains. Checkout the CosmPy documentation:
-
Full access to all functions and features.
Example:
copy
pydantic
A package to ensure data validation and settings management. It simplifies the process of defining and validating data models by providing a way to declare and enforce data types, constraints, and validation rules on Python data structures.
-
Full access to all functions and features.
Example:
copy
pymongo
pymongo
allows Python applications to interact with MongoDB databases, making it easy to perform various database operations such as inserting, updating, deleting, and querying documents.
-
Full access to all functions and features.
Example:
copy
bs4 (BeautifulSoup)
bs4
make it easy to parse and interact with HTML and XML documents for web scraping or data extraction.
Example:
fetchai-babble
fetchai-babble
allows you to interact with the Fetch.ai messaging service (called Memorandum):
Example:
langchain-anthropic
langchain-anthropic
contains the LangChain integration for Anthropic’s generative models:
Example:
langchain-community
langchain-community
contains third-party integrations that implement the base interfaces defined in LangChain Core, making them ready-to-use in any LangChain application. It is automatically installed by langchain, but can also be used separately:
Example:
langchain-core
langchain-core
contains the base abstractions that power the rest of the LangChain ecosystem:
Example:
langchain-google-genai
langchain-google-genai
contains the LangChain integrations for Gemini through their generative-ai SDK:
Example:
langchain-google-vertexai
langchain-google-vertexai
contains the LangChain integrations for Google Cloud generative models:
Example:
langchain-openai
langchain-openai
contains the LangChain integrations for OpenAI through their openai
SDK:
Example:
langchain-text-splitters
langchain-text-splitters
contains utilities for splitting into chunks a wide variety of text documents:
Example:
langchain
langchain
assists in the development of applications integrating with LLMs:
Example:
nltk
nltk
is a package for natural language processing.
Example:
openai
openai
provides easy access to the OpenAI REST API. The library includes type definitions for all request params and response fields, and offers both synchronous and asynchronous clients powered by httpx.
Example:
tenacity
tenacity
is a general-purpose retrying library to simplify the task of adding retry behavior to just about anything.
Example:
unstructured
unstructured
is a library for processing and extracting data from unstructured file formats such as PDFs, Word documents, and more.
Example:
validators
validators
is a Python library designed for data validation. It provides simple functions to verify the validity of various types of data:
Example:
web3
web3
is a Python library for interacting with the Ethereum blockchain. It provides functionalities for sending transactions, interacting with smart contracts, and querying blockchain data:
Example:
anthropic
anthropic
is a Python SDK for interacting with Anthropic’s AI models, such as Claude. It allows developers to send prompts, configure responses, and integrate natural language processing into their applications.
Example:
mcp
mcp
(Model Context Protocol) is a specification and set of tools for connecting AI models with external data sources, applications, and tools through a unified protocol. It allows developers to integrate AI assistants with structured APIs and real-time services.
Example:
httpx
httpx
is a fully featured HTTP client for Python, supporting HTTP/1.1, HTTP/2, connection pooling, timeouts, streaming, and async requests. It’s a modern alternative to requests
with built-in async support.
Example:
asyncpg
asyncpg
is an asynchronous PostgreSQL client library for Python, designed for high-performance database interactions.
Example:
faiss-cpu
faiss-cpu
is a library for efficient similarity search and clustering of dense vectors, optimized for CPUs.
Example:
google-genai
google-genai
is Google’s client for accessing Gemini models and other generative AI features.
Example:
huggingface-hub
huggingface-hub
provides utilities to interact with the Hugging Face Hub, allowing you to download and upload models, datasets, and spaces.
Example:
langgraph
langgraph
is a framework for building stateful, graph-based workflows around LLMs using LangChain primitives.
Example:
pypdf
pypdf
is a pure-Python library for reading, manipulating, and writing PDFs.
Example:
Additional Supported Packages
uagents-core
It contains the core components and abstractions used by the uAgents framework.
agentverse-client
Client library for interacting with the Agentverse platform.
aiofiles
Asynchronous file handling for Python.
aiohappyeyeballs
Implements the “Happy Eyeballs” algorithm for concurrent IPv4/IPv6 connection attempts.
aiohttp
Asynchronous HTTP client/server framework.
aiohttp-retry
Retry support for aiohttp requests.
aiosignal
Signal handling helpers for asyncio programs.
annotated-types
Runtime-usable type annotations, extending Python typing.
anyio
Asynchronous compatibility layer across asyncio, trio, and curio.
attrs
Declarative, boilerplate-free class creation library.
backoff
Function decorator for retrying with exponential backoff.
beautifulsoup4
HTML and XML parser for web scraping.
bech32
Implementation of Bech32 encoding/decoding, used in blockchain addresses.
bitarray
Efficient arrays of booleans stored as bits.
Bottleneck
Fast array operations for NumPy.
cachetools
Extensible caching collections and decorators.
certifi
Root certificates for SSL validation.
cffi
Foreign Function Interface for calling C code from Python.
chardet
Character encoding detector.
charset-normalizer
Alternative to chardet for encoding detection.
ckzg
Cryptographic library for polynomial commitments (KZG).
click
Package for creating command-line interfaces.
coincurve
Cryptographic library for elliptic curve operations (secp256k1).
cryptography
General-purpose cryptography library for Python.
cytoolz
Cython implementation of toolz for fast functional utilities.
dataclasses-json
JSON support for dataclasses.
distlib
Distribution utilities for Python packaging.
distro
Linux distribution information library.
dnspython
DNS toolkit for Python.
docstring_parser
Parse Python docstrings into structured data.
ecdsa
Elliptic Curve Digital Signature Algorithm library.
eciespy
Elliptic Curve Integrated Encryption Scheme for Python.
emoji
Library for handling emojis in Python.
eth_abi
Ethereum ABI encoding/decoding.
eth-account
Ethereum account management.
eth-hash
Ethereum-specific hashing utilities.
eth-keyfile
Ethereum keyfile management.
eth-keys
Ethereum key utilities.
eth-rlp
Ethereum RLP encoding/decoding.
eth-typing
Ethereum-specific typing definitions.
eth-utils
General Ethereum utilities.
fetchai-babble
Messaging protocol used in Fetch.ai agents.
filelock
Cross-platform file locking library.
filetype
Infer file type and MIME type from binary data.
frozenlist
Immutable list implementation for async frameworks.
fsspec
Filesystem specification for unified file access.
google-ai-generativelanguage
Google API client for Generative Language models.
google-api-core
Core utilities for Google API clients.
google-auth
Authentication library for Google APIs.
google-cloud-aiplatform
Google Cloud AI Platform client library.
google-cloud-bigquery
BigQuery client library.
google-cloud-core
Shared library for Google Cloud Python clients.
google-cloud-resource-manager
Client for Google Cloud Resource Manager.
google-cloud-storage
Client for Google Cloud Storage.
google-crc32c
CRC32C checksum implementation.
google-resumable-media
Support for resumable uploads and downloads.
googleapis-common-protos
Common protocol buffer definitions for Google APIs.
greenlet
Lightweight in-process concurrent coroutines.
grpc-google-iam-v1
IAM policy API client for gRPC.
grpcio
gRPC framework for Python.
grpcio-status
Status code utilities for gRPC.
h11
HTTP/1.1 protocol library.
hexbytes
Hexadecimal byte representation for Ethereum.
html5lib
HTML parser based on the WHATWG specification.
httpcore
Low-level HTTP client library used by httpx.
httpx-sse
Server-Sent Events (SSE) extension for httpx.
idna
Internationalized Domain Names in Applications (IDNA) support.
jiter
Fast JSON parser.
joblib
Lightweight pipelining and parallelism library.
jsonpatch
Implementation of JSON Patch standard.
jsonpointer
Implementation of JSON Pointer standard.
jsonschema
Validation of JSON documents against schemas.
jsonschema-specifications
Base specifications for JSON Schema.
langdetect
Language detection library.
langgraph-checkpoint
Checkpointing utilities for LangGraph.
langgraph-prebuilt
Prebuilt components for LangGraph workflows.
langgraph-sdk
SDK for working with LangGraph.
langsmith
LangChain observability and evaluation platform.
lru-dict
Fast, pure-Python LRU (Least Recently Used) dictionary.
lxml
High-performance XML and HTML library.
marshmallow
Object serialization/deserialization library.
multidict
Multi-value dictionary implementation.
mypy_extensions
Extensions to Python typing for mypy.
numexpr
Fast array expression evaluator.
numpy
Core scientific computing library.
olefile
Parser for OLE (Object Linking and Embedding) files.
orjson
Fast JSON parser and serializer.
ormsgpack
Optimized MessagePack serializer/deserializer.
packaging
Utilities for version and dependency handling.
parsimonious
PEG parser library.
pip
Python package installer.
platformdirs
Determine platform-specific directories.
propcache
Property caching decorator.
proto-plus
Pythonic interface to protocol buffers.
protobuf
Google’s protocol buffers implementation.
psutil
Process and system monitoring utilities.
py-ecc
Elliptic curve cryptography for Ethereum.
pyarrow
Apache Arrow Python bindings.
pyasn1
ASN.1 data structures and codecs.
pyasn1_modules
Common ASN.1 modules.
pycparser
C parser in pure Python.
pycryptodome
Cryptographic library as a drop-in for PyCrypto.
pydantic_core
Core validation logic for Pydantic.
pydantic-settings
Settings management with Pydantic.
PyJWT
JSON Web Token implementation in Python.
python-dateutil
Date/time utilities.
python-dotenv
Loads environment variables from .env files.
python-iso639
Utilities for ISO 639 language codes.
python-magic
File type identification using libmagic.
python-multipart
Multipart parsing for form-data (file uploads).
python-oxmsg
OXMSG file parser.
pyunormalize
Unicode text normalization utilities.
PyYAML
YAML parser and emitter.
RapidFuzz
Fuzzy string matching.
referencing
JSON schema reference resolution.
regex
Alternative regular expression engine.
requests-toolbelt
Extensions for the requests library.
rlp
Recursive Length Prefix (RLP) encoding for Ethereum.
rpds-py
Immutable data structures in Rust for Python.
rsa
RSA cryptographic library.
shapely
Geometry manipulation and analysis library.
six
Compatibility utilities between Python 2 and 3.
sniffio
Detect currently running async library.
sortedcontainers
Sorted collection types.
soupsieve
CSS selector library for BeautifulSoup.
SQLAlchemy
SQL toolkit and ORM.
sse-starlette
Server-Sent Events (SSE) support for Starlette.
starlette
ASGI framework for building web apps.
tiktoken
Tokenizer for OpenAI models.
toolz
Functional programming utilities.
tqdm
Progress bar library.
typing_extensions
Backports of newer typing features.
typing-inspect
Inspection utilities for typing objects.
typing-inspection
Additional runtime inspection for typing.
uagents-adapter
Adapter tools for uAgents framework.
uagents-ai-engine
AI Engine integration for uAgents.
unstructured-client
Client library for the Unstructured data processing API.
urllib3
HTTP client library.
uvicorn
ASGI server implementation.
virtualenv
Virtual environment manager.
webencodings
Web encoding standards for HTML/CSS.
websockets
WebSocket client and server library.
wrapt
Function decorators and wrappers.
yarl
URL parsing and manipulation library.
zstandard
Zstandard compression library.