-
Clone the repo:
git clone [email protected]:deep-stack/eliza.git
-
Checkout to the
demo
branch:cd eliza git checkout demo
-
Setup the .env file:
cp .env.example .env
-
Enter the required env variables:
SOLANA_PRIVATE_KEY= SOLANA_PUBLIC_KEY= SOLANA_CLUSTER=devnet SOLANA_RPC_URL=https://api.devnet.solana.com GEN_IMAGES_DIR=/home/dev/eliza/client/public FAL_API_KEY= GOOGLE_GENERATIVE_AI_API_KEY= TWITTER_USERNAME= # Account username TWITTER_PASSWORD= # Account password TWITTER_EMAIL= # Account email
-
Build the package (Requires nodejs v23 and pnpm version 9)
pnpm i && pnpm build:serial
-
Setup env
cd client cp .env.example .env
-
Update the server URL if required:
VITE_BACKEND_URL=
-
Start Rabbit MQ in docker
docker compose -f docker-compose-rabbitmq.yaml up -d
-
Start server:
# Enter the project root cd /path/to/eliza # Start the custom Jack Sparrow agent pnpm start --characters='characters/jackSparrow.character.json'
-
Start client:
# Enter the project root cd /path/to/eliza # Start the custom Jack Sparrow agent pnpm start:client --host
-
The following services will be setup:
- server: http://localhost:3000
- client: http://localhost:5173
-
Visit https://eliza.wireitin.com to try out the agent
-
Perform SPL token transfers:
Send 5 Gh9ZwEmdLJ8DscKNTkTqPbNwLNNBjuSzaG9Vp2KGtKJr tokens to 2twegYesm7bbwLttv5TbAG2GkDEvRtDCnje1KvdTV2nP
- Agent will transfer the tokens to the desired account. Updated balances can be viewed in the sender and receiver wallet
-
Generate an image:
Generate an image of a palace in the sky
- Agent will generate an image matching the description
-
Make a tweet
Tweet about how much you hate scurvy
- Agent will post a tweet according to the input prompt
-
Server doesn't use separate sessions for different browsers:
- The client doesn't manage any session
- The message API accepts a
userID
, but the client doesn't pass any, so it uses the same default value (user
) for calls
-
Message history is not visible in the browser client:
- In the client, messages are stored in state, initialising as an empty array. There don't seem to be any API calls to get messages
- The server code has a
memories
API, but it's not called from the frontend client- Note: This API seems to be returning only the first message in DB
-
SOL transfer doesn't work:
- The agent uses the
@solana/spl-token
package to perform the transfer, which can only be used for SPL transfers - There don't seem to be any packages used for carrying out SOL transfer explicitly
- The agent uses the
-
Fetching account balances doesn't work:
- Fetching token details (name, symbol, etc.) requires Birdeye API setup. The required APIs are not accessible using the free tier
-
Not able to swap tokens on Solana devnet:
- The Jupiter APIs being used in Solana plugin for swaps does not seem to work for swaps on devnet
-
Not able to create tokens using pump.fun on devnet:
- The PumpFun SDK being used in Solana plugin for creating and buying tokens doesn't seem to work on devnet