A Twitter bot built with ElizaOS and TypeScript that tracks crypto Key Opinion Leaders (KOLs) and market data, posting insights to Twitter. This project auto-posts:
- KOL Token Mentions: Tokens mentioned by crypto KOLs (≥5 mentions) daily at 12:00 PM (noon).
- Market Data: Token and AI agent trends from sentient.market and cookie.fun daily at 2:00 PM.
- Replies: Responds to @-mentions about Solana tokens with basic analysis (planned).
Built for collaboration, this repo integrates Python (ElizaOS) for Twitter interactions and TypeScript for market data scraping and Solana analysis.
- Tracks tweets from a predefined list of crypto KOLs.
- Posts the most-mentioned token (if ≥5 mentions) with sentiment analysis at noon daily.
- Scrapes token prices from sentient.market and AI agent mindshare from cookie.fun.
- Posts a market update (e.g., top token by price) at 2 PM daily.
- Responds to @-mentions with basic Solana token data (e.g., supply) via TypeScript analysis (planned).
Ensure the following tools are installed with these specific versions (or later, if compatible):
- WSL (Ubuntu recommended) on Windows.
- Node.js: v20.18.3
- npm: v10.8.2 (comes with Node.js)
- pnpm: v9.15.0
- Python: v3.12.3 (or compatible version in virtual environment)
- Git: v2.39.2 (or later)
- Twitter API Keys (create an app at developer.x.com)
sudo apt update
sudo apt install -y build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev libpng-dev python3-dev g++ python3 python3-pip python3-venv git
sudo ln -s /usr/bin/python3 /usr/bin/python
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo npm install -g pnpm
# Clone the repository
git clone https://github.com/elizaos/eliza.git
pnpm i
pnpm build
pnpm start
# The project iterates fast, sometimes you need to clean the project if you are coming back to the project
pnpm clean
# interact via browser
pnpm start:client
ElizaOS AI Agent: Single-agent, multi-actions, Python-based, integrated with a TypeScript agent.
Team Responsibilities: Mandes (Phase 1 & 3), Zhou (Phase 2)
- Assigned: Mandes
- Tasks:
- Environment setup ->
- elizaOs env, connect to twitter, set AI model
- set up Ts Token agent for data analysis
- Steps:
- Clone
https://github.com/ai16z/eliza
intoeliza/
, install dependencies. - Configure Twitter API in
eliza/.env
. - Initialize
token-agent/
with TypeScript,@solana/web3.js
, etc. - Create
eliza/output/
for data handoff.
- Clone
- Assigned: Zhou
- Function:
- Read KOL post and find out the highlight Token
- Auto posting for x times of mentions (text & img)
- Set character (funny, professional, present using data)
- Setup:
pip install tweepy vaderSentiment
(for track Twitter KOL post)
- Steps:
- Create posting action for agent (
post_kol_mentions.py
) - Configure Character
- Test
- Create posting action for agent (
- Dependencies:
@0glabs/[email protected]
@coinbase/[email protected]
@deepgram/[email protected]
@elizaos-plugins/adapter-sqlite@<version>
(linked:packages/adapter-sqlite
)@injectivelabs/[email protected]
@vitest/[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
- Dev Dependencies:
@biomejs/[email protected]
@commitlint/[email protected]
@commitlint/[email protected]
@types/[email protected]
cli@<version>
(linked:packages/cli
)[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
- Assigned: Mandes
- Data Sources:
- Function:
- Get data from source, like maketcap, token price, trends, AI Agent mind share
- Analyze data
- Steps:
- Find API doc of those webs
- Create posting action for agent (
marketAgent.ts
) - Integrate with elizaOs
- Update character config
- Test
- Dependencies:
- Dev Dependencies:
- Function:
- Reply those mentions on Twitter
- Update character to limit the reply topics
- Function:
- Get Token data mentioned by KOL and analyze