Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Anything you can do on NFT Marketplace, you can do on Bitte prompts, mint, generate images, using DALL-E 3, list, buy, deploy NFT contract, and now DeFi swaps. Show us your prompts using the X hashtag #bitte Once we learned we can do this, we realized adding DeFi agents was not a massive luft and so we opened the agent building process for all to pave the way for other transaction building agents like DAOs, Assets peggings and so on.
Create a drop link of a movie sci-fi movie poster of an astroid hitting the earth the reads at the top big bold future font "Bitte Will Save us"
And share this link so your community can claim free NFTs without needing crypto.
Create multiple NFTs from a single prompt
Create a series of 3 interconnected NFTs themed around move posters that have the title “Bitte” in bold clearly written sans-serif futuristic font. The scene is a futuristic underwater volcano with sharks and fish circling around it in a photorealistic scene. Make sure the text is spelled “Bitte” in all and build the transaction.
End Result a
to make it better or use as a base to make other EVM agents
Jump in the and hit the AI tab to try.
See a prompt in action
If you deploy your own contract on , you can add "Create a series of 3 interconnected NFTs on my contract xyz.mintbase1.near" instead of minting on an open contract. You can also deploy the contact from the AI prompt.
Currently, we use DALL-E 3 and chat GPT 4o
Free mint, of a vivid movie poster for a science fiction adventure film. The text at the top should be “Bitte” written clearly in bold, sans-serif font, futuristic font. The word ‘Bitte’ should be in the center of the image. The scene should include a futuristic New York cityscape with flying cars and towering skyscrapers. The main character, a brave, beautiful female astronaut in a sleek spacesuit, stands in the foreground holding a glowing artifact. Use a color scheme of only neon and black with a touch of red. Make sure the text is spelled “Bitte”.
Welcome to the Open Agents documentation.
Open Agents are essentially APIs that our runtime communicates with to perform tasks on behalf of users. These agents receive instructions, process data from both on-chain and off-chain sources, and execute transactions across multiple blockchain networks. Each agent is defined using the OpenAPI Specification, which standardizes how they expose their capabilities and interact with other components of the system.
By adhering to the OpenAPI spec, agents provide a clear, machine-readable interface that simplifies integration and ensures consistent communication with the runtime. Acting as intermediaries, these agents simplify complex blockchain interactions, making it easier for users to execute decentralized financial operations through an accessible API interface.
The Bitte Runtime is the core system that manages the execution and coordination of decentralized tasks across the Bitte Protocol. It acts as the intermediary between user requests, agents, and the underlying blockchain networks, ensuring that each task is routed to the appropriate agent for execution. The runtime handles task orchestration, data aggregation, and communication between agents, tools, and networks. Its primary role is to streamline the execution of multi-step transactions, ensuring seamless interactions across different blockchains, APIs, and smart contracts, all while maintaining efficiency and accuracy.
Make sure the plugin manifest file is accessible at /.well-known/ai-plugin.json
on your domain. The URL should be similar to:
We have created an extension for the OpenAPI specification that allows you to include additional metadata.
• Description: Specifies the account ID associated with the plugin. This is typically the account ID on the NEAR blockchain that identifies the owner or operator of the API.
• Example: bitte.near
Provides the configuration for the agent that will guide the user in interacting with the API. This section includes details about its behavior, and the tools it can use.
name
Instructions provided to the agent define its role or behavior. This helps tailor the agent’s responses according to specific requirements.
Example: "Weather Agent"
description
A general summary of the agent's functionalities and tools / endpoints.
instructions
Instructions provided to the agent define its role or behavior. This helps tailor the agent’s responses according to specific requirements.
Example: "You are a helpful agent. When using the get-weather tool make sure to know or ask for the user's location."
tools
A list of tools that the agent can use. Each tool is defined by its type and possibly other configurations.
Tool Type The type of tool that the agent can use. This can vary based on the functionality required by the API.
image
Image URL for your agent (recommended: 256x256px or 512x512px square)
categories
Array of tags that categorize your agent.
Example: ["DeFi", "Meme", "Investing"]
chainIds
Array of evm chains your agent operates in. This makes it easier for other people to find your agent and adds context to the LLMs.
Example: [1, 100, 8453, 42161]
version
Track the version of your agent.
Example: "1.0.2"
Talk to us at Telegram chat.
generate-transaction
Creates a transaction based on the user request
submit-query
Creates a GraphQL query based on Mintbase's Indexer, submits it and returns the result
generate-image
Creates an image, uploads it to Arweave and returns a transaction hash
create-drop
Creates an NFT drop
generate-evm-tx
Creates an evm transaction based on users request
How to get started in 3 minutes creating an Open Agent.
Make sure your make-agent package is running v0.2.4+
In this guide we will:
Clone the agent template
Generate and set API Key
Develop the agent with make-agent
Deploy your agent and go live!
To get started with your Open Agent project, first clone the Bitte Next Agent Template repository. You can use this ready-to-use template as a solid foundation for building your agent
change or copy the root file .env.example to .env and add your newly generate api key
Install dependencies
Run boilerplate, this will automatically run the make-agent library + your agent server
When you run your project, the UI launches in your console, allowing you to access the chat sandbox with local dev environment connections for EVM and NEAR wallets. By testing the boilerplate with a command like "Hey, can you do a coinflip for me", you'll trigger the coinflip tool, which generates a random value.
To send transactions, return the transaction body in your route. In the manifest, specify that the route returns a valid transaction. The runtime will automatically detect this if you have the appropriate tools (generate-evm-tx or generate-transaction) defined, which are already set up in the boilerplate and prepare the transaction in the UI. Check the create-near-transaction and create-evm-transaction routes for examples
Note that your deploy script includes make-agent deploy
. This command will validate your API key, look into the deployment URL (for most common hosting providers) and automatically communicate any changes made to our registry.
In case you want to have more control over your deployment URL, you can set BITTE_AGENT_URL
The templates should have these packages installed. But if you're trying to add this to an existing project, please install make-agent
and concurrently
.
Your package.json
should look like this:
You can now run in development mode.
Learn more about the Manifest file by following the link below.
Make sure the name of the contract is unique, this one will not work
deploy an NFT contract named "sharks" with the symbol "SKS"
Anything you can do on the through our UI you can do with smart actions
You can customize tools by modifying their route's return value and updating the ai-plugin
route manifest to define and provide LLM instructions for tool usage.
You can learn more about your manifest here:
Consider pushing your code to its own GitHub repository and hosting it in a easy to deploy service like . There are other alternatives, but we find Vercel very easy to work with.
is a CLI tool that was built to make the development of an Open Agent as easy as possible-
Deploys a Sharks NFT contract,
The contract-to-agent
tool enables you to scaffold an agent based on a NEAR contract that has an ABI. This process makes integration with the NEAR protocol seamless by providing a structured template for agent development. Here's a step-by-step guide to get started:
Scaffold the Agent: Run the following command to start creating your agent. You will be prompted for necessary inputs:
Contract ID: Provide the contract ID. Ensure the contract has a well-defined ABI.
Description: Offer a detailed description of the contract's functionalities, which will guide the behavior of the agent.
Optional Directory: Specify a directory where you want to generate the agent files, or leave it blank to use the default.
If you just want to run your agent and don't want to know how it works then skip to 2. The rest of the flow will continue as described below, but before following that we can take a look at what was generated, if you open your index.ts you should see a simple express server
This should contain endpoints for each of your smart contract methods regardless of if they are read of write calls, notice the writes return a valid transaction object that will be executed by the runtime using the "generate-transaction" tool
The most important part is this endpoint:
Here your Open API Spec will be handled. This is how your agent knows how to interact with your API. If your agent isn't able to use your api correctly even though its functional this is probably the issue. Make sure your instruction field is explicit, some prompt engineering will be necessary
You can learn more about it here Manifest If your contract is too complex for the scaffolding to work completely this will still work as very easy good starting point for your agent.
Generate an API Key: If everything went well you will see this window open. If you don't already have a wallet you will first be prompted to create one first. Once you have signed the message you will have an API Key automatically generated for you and put into your environment variables.
Develop and Test Agent: After creating an API Key you will be booted into the agent playground where you can start testing your agent. Based on the instructions and the contract methods we can see the agent was able to understand what the available methods are and should be able to make view and write contract calls out of the box
If you ever close the execution you can run everything again by running your server and make-agent again
This guide will walk you through how to deploy and test your Open Agent using the make-agent CLI tool. This method allows you to develop, test, and go live with your agent quickly.
To take your Open Agent live, you can deploy it to a cloud provider such as Vercel, Google Cloud Platform (GCP), or Amazon Web Services (AWS). These services provide scalable hosting solutions and make your agent publicly accessible for real-world interactions.
Recommended cloud providers:
Running make-agent deploy
should take care of all the steps to validate your key, manifest and push updates within our registry. Include this in your CI/CD pipeline for ease of use.
npx make-agent deploy
Once registered, you will receive a debug URL that will take you to the Playground to test your agent.
Note that your Agent ID is the deployed URL without the protocol scheme (no https). If you deployed to https://my-awesome-agent.com
, your Agent ID is my-awesome-agent.com
When agents are registered, they will not be immediately available in the production registry. The verification process is manual for now.
User-Friendly Onboarding: With passkeys and account abstraction, Bitte Wallet offers a seamless onboarding experience, often faster than traditional Web2 platforms.
Secure Custody of Assets: Utilizing biometric features such as Face ID or fingerprints, Bitte Wallet securely stores wallet keys in your chosen password manager, ensuring you have full control over your assets.
No Gas Fees: Leveraging account abstraction and meta-transaction technologies unique to the NEAR blockchain, Bitte Wallet facilitates transactions covering gas fees.
The swiss army knife for multi-chain AI agents
Make Agent CLI is a powerful command-line tool designed to streamline the management and deployment of AI agents across multiple chains. This tool simplifies the process of making your AI agents discoverable and registering them as plugins.
To run the Make Agent CLI:
Currently, the CLI supports the following commands:
dev: Make your AI agent discoverable and register the plugin
Options:
-p, --port <number>
: Specify the local port to expose (required)
deploy: Register or update your AI agent, making it discoverable as a plugin
Options:
-u, --url <url>
: The URL where your agent is hosted (optional)
If no URL is provided, the command will attempt to determine the deployed URL automatically through environment variables.
contract: Scaffold a basic agent from a NEAR contract that has an ABI
You will be prompted to select a contractId, add a description with instructions on how the agent should use the contract and an output directory
delete: Delete your AI agent plugin
Options:
-i, --id <id>
: Specify the plugin ID to delete (required)
verify: Request your plugin's verification
Options:
-u, --url <url>
: (required) Specify the url of the deployed plugin
-e, --email <email>
: (required) Provide an email so we can contact you regarding the verification process
-r, --repo <repoUrl>
: (required) To verify a plugin we need the url for a public repository containing the plugin's code
-v, --version <versionNumber>
: (optional) Specify the version of the plugin in case of an update
-c, --categories <categories>
: (optional) List some categories that describe the type of plugin you're verifying.
-x, --chains <chainIds>
: (optional) If your plugin works on specific evm chains, you can specify them so your plugin is easier to find.
These options can also be defined in the agent spec in the "x-mb"
object.
For more information about any command, you can use:
This project was created using bun init
in Bun v1.1.20. To start developing:
Clone the repository
Run bun install
to install dependencies
Modify the code in the commands
and services
directories as needed
Contributions are welcome! Please feel free to submit a Pull Request.
After deploying your service, ensure your agent's points to the publicly accessible URL of your deployment:
on Telegram to start the verification process when you're ready.
Welcome to , your gateway to seamless crypto transactions. Bitte Wallet prioritizes user-friendly onboarding and smooth functionality, bridging the familiarity of Web2 experiences with the innovation of Web3 technologies.
Now you can enable your community to interact with your smart contracts freely. They will not need crypto to mint, vote on your DAOs, or receive free airdrops.
Head to the APPs tab
Click "New Paymaster"
Enter the contract you want to sponsor on NEAR
Functions will appear below that you can toggle to enable or disable functionalities you want your users to run for free.
Fund your paymaster wallet with enough funds to sponsor gas for transactions
The paymaster is now successfully created and will automatically fund the transactions defined before!
In the previous example, I created a sponsorship for the contract blackdragon.tkn.near and selected the method "ft_transfer". Now, their gas fee will be sponsored whenever someone transacts that contract/method through the wallet.
This makes it easy to use, by adding a wallet connection to any application users can be redirected to Bitte to sign transactions at which point the sponsorship will take effect.
Currently, the sponsorship will affect all the transactions in the wallet. Still, the plan is for the following versions to allow for passing in certain parameters only to allow certain user bases to take advantage of it.
To use the paymaster via code you must have access to accounts from within your application to be able to sign transactions to be sponsored.
Start by copying the relayer URL from the dashboard.
You can restrict access to your Paymaster by generating an api key in the dashboard.
When using near relay you can add it to .env as BITTE_API_KEY. For direct HTTP requests, include the key in the headers as bitte-api-key
.
Go to your dashboard to review the account ID, API call URL, and the total sponsored amount. Then, click "Edit" to make any necessary changes.
Here you can change the smart contract you have selected or change the affected methods.
At the bottom of the edit page, you will find a delete button that will allow you to delete the near account associated with the paymaster automatically giving all of the funds contained in it back to your account.
When viewing the dashboard hit the manage balance button to deposit or withdraw funds, here you can toggle the top tab to fund or withdraw from the near account that is associated with the paymaster.
Not directly. The way you would do that at this point would be to only fund the relayer with the amount you are willing to spend
Is it possible to sponsor specific users or groups using the Paymaster?
This feature is planned soon TM
What happens if my Paymaster wallet runs out of funds?
When the user tries to submit the transaction, they will be prompted to pay gas as normal.
Can I sponsor multiple contracts with a single Paymaster?
No. You can currently set this up by managing more than one Paymaster.
Can I track the transactions that have been sponsored by my Paymaster?
Yes, in the dashboard, you can see the amount that has been sponsored. Eventually, there could be better visualization tools.
Is there a limit to the number of transactions my Paymaster can sponsor?
Not currently but there is a limit for the amount of gas that can be sponsored before KYC is necessary.
Can I sponsor account creation?
Account creation is just a function call so technically, you could but at this point that would affect all users of the wallet, this will be possible to do more conveniently once you can limit usage to certain groups of users.
Paste your link to your community
We suggested claiming the first one so you can track it on your NFTs page.
Bitte Wallet provides functionalities for signing and verifying messages. This documentation outlines the steps for using these features, including signing a message, verifying a message via the UI.
The sign message functionality allows you to sign a message using your Mintbase Wallet. The signed message can then be used for various verification purposes.
message
: The message you want to sign.
callbackUrl
: The URL to which the signed message will be sent.
nonce
: A unique identifier to prevent replay attacks.
Always make sure to encode the parameters when redirecting
You can generate the nonce using this code snippet
The verify message functionality allows you to verify a signed message using the UI or API. Verification ensures that the message was signed by the rightful owner of the specified account.
Endpoint
Parameters
accountId
: The account ID of the signer.
publicKey
: The public key of the signer in base58 format.
signature
: The signature of the signed message in base64 format.
message
: The original message that was signed.
nonce
: A unique identifier used during signing.
recipient
: The intended recipient (e.g., mainnet
).
callbackUrl
: The URL to which the verification result will be sent.
Example
Endpoint
Parameters
accountId
: The account ID of the signer.
publicKey
: The public key of the signer in base58 format.
signature
: The signature of the signed message in base64 format.
message
: The original message that was signed.
nonce
: A unique identifier used during signing.
recipient
: The intended recipient (e.g., mainnet
).
callbackUrl
: The URL to which the verification result will be sent.
Example
Developers can integrate Bitte Wallet either with wallet Selector or directly with callbacks
Using @near-wallet-selector
The easiest way to use this package is to install it from the NPM registry, this package requires near-api-js
v1.0.0 or above:
Then use it in your dApp:
networkId
: (string?
): 'mainnet' or 'testnet' . Defaults to mainnet
.
deprecated
: (boolean?
): Deprecated is optional. Default is false
.
callbackUrl
: (string?
): Valid url to send your user after txn.
This repository is distributed under the terms of both the MIT license and the Apache License (Version 2.0).
This guide explains how to interact with the Mintbase Wallet using URL schemes to perform operations like connecting or creating an account and signing transactions. Depending on your development environment, you can choose between the testnet and mainnet URLs.
testnet
mainnet
To connect or create an account, use the following endpoint. This action will redirect users to authenticate or create a new wallet account
Endpoint: /connect
URL: https://wallet.bitte.ai/connect
success_url
:
The URL to which the wallet redirects after a successful login. It should be able to handle the incoming parameters.
Example: your_schema://`
Callback URL
The callback URL is defined in the success_url
parameter. After successful authentication, the user will be redirected to this URL.
Parameters
account_id
: The authenticated user's account ID.
public_key
: The currently connected public key of the user's account.
To sign a transaction, direct the user to the sign transaction endpoint.
Endpoint: /sign-transaction
URL: https://wallet.bitte.ai/sign-transaction
Parameters
callback_url: The URL to redirect after the transaction signing process.
Callback URL
After signing the transaction, the wallet will redirect to the provided callback_url
with additional transaction details.
Parameters:
transactionHashes
: The hashes of the signed transactions.
The Bitte AI Chat component is a React component that enables AI-powered chat interactions in your application. It supports both NEAR Protocol and EVM blockchain interactions through wallet integrations, allowing users to interact with smart contracts and perform transactions directly through the chat interface.
🔑 Before you begin, make sure you have:
Install package
Add the Chat Component
Setup API Route
Wallet Connection
Create an API route in your Next.js application to proxy requests to the Bitte API to not expose your key
At this point the chat should already work but to be able to send transactions you will need to add a wallet connection
You can integrate with NEAR using either the NEAR Wallet Selector or a direct account connection. If you want to be able to send near transacitons through the chat you will need to define at least one of these
Using Wallet Selector
Using Direct Account
EVM integration uses WalletConnect with wagmi hooks:
Agent Name
Description
Category
Agent ID
CoWSwap Assistant
An assistant that generates transaction data for CoW Protocol Interactions
DeFi
near-cow-agent.vercel.app
Meme.cooking
Generates a transaction payload for creating a new memecoin on the meme.cooking platform
Memes
meme-cooking-bitte-agent.vercel.app
CoinGecko Agent
Provides real-time cryptocurrency data, including prices, market information, and charts
Investing
coingecko-ai.vercel.app
Ref Finance Agent
Provides token metadata and swaps tokens through Ref Finance
DeFi
ref-finance-agent.vercel.app
NEAR Roast Agent
Roasts a NEAR account based on their on-chain activity
Other
near-roast-agent.vercel.app
NEAR Staking
Stake, unstake, and see staking information
Other
staking-agent.intear.tech
Crypto Technical Analyst
Provides in-depth market analysis and sophisticated trading insights based on technical analysis
Investing
technical-analysis-agent.vercel.app
DAO Agent
Interacts with Sputnik DAO Contracts, query DAOs, create proposals, and vote on proposals
DAO
dao-agent.vercel.app
Safe Account Assistant
Manages Near{Safe} Account Structure
Wallet Management
near-safe-agent.vercel.app
Uniswap Assistant
Generates transaction data for Uniswap V3 Interactions
Other
near-uniswap-agent.vercel.app
GrowthMate Discovery
Discovers the ecosystem through relevant activities, news, and offers
Ecosystem
bitte-agent.vercel.app
Python Code Runner
A helpful assistant for running Python code snippets
Computational
bitte-wasmer-agent.fly.dev
PotLock Assistant
Helps users search projects and donations on PotLock platform and create projects
Other
potlockaiagent-hqd5dzcjajhpc3fa.eastus-01.azurewebsites.net
Delta Trade DCA Helper
Helps set up DCA plans to buy NEAR and other tokens
Investing
dcaagent.deltatrade.ai
The component can be customized using the colors
prop:
if you're having issues with your app or wallet containing redirects you can optionally use a history api to maintain context
Create an API route in your Next.js application that will allow your app if you want to save chat context when signing a transaction after getting redirected to the wallet.
This guide will walk you through integrating the Bitte Wallet into your Telegram bot. By the end, users will be able to interact with your bot and open the Bitte Wallet Web App directly from a Telegram message.
Before starting, ensure you have:
A Telegram bot set up using the Telegram Bot API.
A working environment with Node.js and the node-telegram-bot-api
package installed.
Ensure your Telegram bot is up and running. If you haven't created a bot yet, follow the official guide to create one and obtain your bot's API token.
Ensure you have the node-telegram-bot-api
package installed in your Node.js project. If not, install it using npm:
In your bot's code, implement the /connect
command to trigger the Bitte Wallet Web App. The command should look like this:
Chain signatures enable NEAR to sign and execute transactions across multiple blockchains via an MPC (Multi-Party Computation) network. Fortunately, to implement this functionality in your DApp, you won't need to integrate MPC directly, as it's fully operational within Bitte Wallet. Building an EVM transaction is straightforward once you've established a basic connection with the wallet. Redirect to the wallet URL with the evmTx
parameter and the wallet will handle the complexities of generating the EVM signature and sending the transaction.
Note: This functionality currently only works for the NEAR testnet.
Check out NEAR-CA if you would like to implement MPC directly without using a wallet, or to take advantage of its various utilities for interfacing between NEAR and EVM.
launch a meme token called "EXAMPLE" and create a picture of a realistic woman jumping into a pool next to a sign that reads "Example" with description: Do no buy this is an exmaple launching a meme token with one prompt. Set all the other variable to default.
You
Go to the
There are currently 2 ways to use the paymaster, either directly through the or via code.
The next step involves building the transaction and sending it to that URL via a post request, you can check the for more information or use this simple
To create a token drop
Go to the
You can track all the claimers in the
URL:
URL:
URL:
Using @bitte-ai/react You can check the readme NPM:
walletUrl
: (string?
): wallet url: for mainnet and for testnet.
transactions_data: The encoded data for the transaction that needs to be signed. See to learn how to format the transaction object. The transaction object should be URL encoded (`encodeURI(JSON.strinfigy(tx_data))`)
A Bitte API Key - Get your beta BITTE_API_KEY
Import and use BitteAiChat
in your react app and select the agent that you would like to use, browse the available agents and their respective ids on the
The apiUrl
corresponds to a proxy to not expose your api key on the client
All connections work through url schemes so check out
Launched MEME token to
Try this
NFT Drops
Influence & connect deeper.