Skip to content

Commit d67265c

Browse files
authored
Merge branch 'develop' into patch-2
2 parents 2b799dc + 0546366 commit d67265c

File tree

1,374 files changed

+65556
-41973
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,374 files changed

+65556
-41973
lines changed

.devcontainer/Dockerfile

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
ARG NODE_VER=23.5.0
2+
ARG BASE_IMAGE=node:${NODE_VER}
3+
FROM $BASE_IMAGE
4+
5+
ENV DEBIAN_FRONTEND=noninteractive
6+
7+
# Install pnpm globally and install necessary build tools
8+
RUN apt-get update \
9+
&& apt-get install -y \
10+
git \
11+
python3 \
12+
make \
13+
g++ \
14+
nano \
15+
vim \
16+
&& apt-get clean \
17+
&& rm -rf /var/lib/apt/lists/*
18+
19+
ARG PNPM_VER=9.15.2
20+
RUN npm install -g pnpm@${PNPM_VER}
21+
22+
# Set Python 3 as the default python
23+
RUN ln -s /usr/bin/python3 /usr/bin/python
24+
ENV DEBIAN_FRONTEND=dialog

.devcontainer/devcontainer.json

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
// See https://aka.ms/vscode-remote/devcontainer.json for format details.
2+
{
3+
"name": "elizaos-dev",
4+
"dockerFile": "Dockerfile",
5+
"build": {
6+
"args": {
7+
"NODE_VER": "23.5.0",
8+
"PNPM_VER": "9.15.2"
9+
}
10+
},
11+
"privileged": true,
12+
"runArgs": [
13+
"-p=3000:3000", // Add port for server api
14+
"-p=5173:5173", // Add port for client
15+
//"--volume=/usr/lib/wsl:/usr/lib/wsl", // uncomment for WSL
16+
//"--volume=/mnt/wslg:/mnt/wslg", // uncomment for WSL
17+
"--gpus=all", // ! uncomment for vGPU
18+
//"--device=/dev/dxg", // uncomment this for vGPU under WSL
19+
"--device=/dev/dri"
20+
],
21+
"containerEnv": {
22+
//"MESA_D3D12_DEFAULT_ADAPTER_NAME": "NVIDIA", // uncomment for WSL
23+
//"LD_LIBRARY_PATH": "/usr/lib/wsl/lib" // uncomment for WSL
24+
},
25+
"customizations": {
26+
"vscode": {
27+
"extensions": [
28+
"vscode.json-language-features",
29+
"vscode.css-language-features",
30+
// "foxundermoon.shell-format",
31+
// "dbaeumer.vscode-eslint",
32+
// "esbenp.prettier-vscode"
33+
"ms-python.python"
34+
]
35+
}
36+
},
37+
"features": {}
38+
}

.env.example

+90-9
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ REDIS_URL= # Redis URL - could be a local redis instance or cloud hosted redis.
66
SUPABASE_URL=
77
SUPABASE_ANON_KEY=
88

9+
PGLITE_DATA_DIR= #../pgLite/ if selecting a directory --- or memory:// if selecting in memory
10+
911
# Discord Configuration
1012
DISCORD_APPLICATION_ID=
1113
DISCORD_API_TOKEN= # Bot token
@@ -23,10 +25,11 @@ IMAGE_OPENAI_MODEL= # Default: dall-e-3
2325
# Eternal AI's Decentralized Inference API
2426
ETERNALAI_URL=
2527
ETERNALAI_MODEL= # Default: "neuralmagic/Meta-Llama-3.1-405B-Instruct-quantized.w4a16"
28+
ETERNALAI_CHAIN_ID=45762 #Default: "45762"
2629
ETERNALAI_API_KEY=
27-
ETERNAL_AI_LOG_REQUEST=false #Default: false
30+
ETERNALAI_LOG=false #Default: false
2831

29-
GROK_API_KEY= # GROK API Key
32+
GROK_API_KEY= # GROK/xAI API Key
3033
GROQ_API_KEY= # Starts with gsk_
3134
OPENROUTER_API_KEY=
3235
GOOGLE_GENERATIVE_AI_API_KEY= # Gemini API key
@@ -41,6 +44,18 @@ SMALL_HYPERBOLIC_MODEL= # Default: meta-llama/Llama-3.2-3B-Instruct
4144
MEDIUM_HYPERBOLIC_MODEL= # Default: meta-llama/Meta-Llama-3.1-70B-Instruct
4245
LARGE_HYPERBOLIC_MODEL= # Default: meta-llama/Meta-Llama-3.1-405-Instruct
4346

47+
48+
# Infera Configuration
49+
50+
INFERA_API_KEY= # visit api.infera.org/docs to obtain an API key under /signup_user
51+
INFERA_MODEL= # Default: llama3.2:latest
52+
INFERA_SERVER_URL= # Default: https://api.infera.org/
53+
54+
SMALL_INFERA_MODEL= #Recommended: llama3.2:latest
55+
MEDIUM_INFERA_MODEL= #Recommended: mistral-nemo:latest
56+
LARGE_INFERA_MODEL= #Recommended: mistral-small:latest
57+
58+
4459
# Livepeer configuration
4560
LIVEPEER_GATEWAY_URL= # Free inference gateways and docs: https://livepeer-eliza.com/
4661
LIVEPEER_IMAGE_MODEL= # Default: ByteDance/SDXL-Lightning
@@ -77,9 +92,11 @@ TWITTER_TARGET_USERS= # Comma separated list of Twitter user names to
7792
TWITTER_RETRY_LIMIT= # Maximum retry attempts for Twitter login
7893
TWITTER_SPACES_ENABLE=false # Enable or disable Twitter Spaces logic
7994

80-
X_SERVER_URL=
81-
XAI_API_KEY=
82-
XAI_MODEL=
95+
# CONFIGURATION FOR APPROVING TWEETS BEFORE IT GETS POSTED
96+
TWITTER_APPROVAL_DISCORD_CHANNEL_ID= # Channel ID for the Discord bot to listen and send approval messages
97+
TWITTER_APPROVAL_DISCORD_BOT_TOKEN= # Discord bot token (this could be a different bot token from DISCORD_API_TOKEN)
98+
TWITTER_APPROVAL_ENABLED= # Enable or disable Twitter approval logic #Default is false
99+
TWITTER_APPROVAL_CHECK_INTERVAL=60000 # Default: 60 seconds
83100

84101
# Post Interval Settings (in minutes)
85102
POST_INTERVAL_MIN= # Default: 90
@@ -89,9 +106,10 @@ POST_IMMEDIATELY=
89106
# Twitter action processing configuration
90107
ACTION_INTERVAL= # Interval in minutes between action processing runs (default: 5 minutes)
91108
ENABLE_ACTION_PROCESSING=false # Set to true to enable the action processing loop
109+
MAX_ACTIONS_PROCESSING=1 # Maximum number of actions (e.g., retweets, likes) to process in a single cycle. Helps prevent excessive or uncontrolled actions.
110+
ACTION_TIMELINE_TYPE=foryou # Type of timeline to interact with. Options: "foryou" or "following". Default: "foryou"
92111

93112
# Feature Flags
94-
IMAGE_GEN= # Set to TRUE to enable image generation
95113
USE_OPENAI_EMBEDDING= # Set to TRUE for OpenAI/1536, leave blank for local
96114
USE_OLLAMA_EMBEDDING= # Set to TRUE for OLLAMA/1024, leave blank for local
97115

@@ -187,6 +205,9 @@ EVM_PROVIDER_URL=
187205
AVALANCHE_PRIVATE_KEY=
188206
AVALANCHE_PUBLIC_KEY=
189207

208+
# Arthera
209+
ARTHERA_PRIVATE_KEY=
210+
190211
# Solana
191212
SOLANA_PRIVATE_KEY=
192213
SOLANA_PUBLIC_KEY=
@@ -205,11 +226,12 @@ BIRDEYE_API_KEY=
205226
SOL_ADDRESS=So11111111111111111111111111111111111111112
206227
SLIPPAGE=1
207228
BASE_MINT=So11111111111111111111111111111111111111112
208-
RPC_URL=https://api.mainnet-beta.solana.com
229+
SOLANA_RPC_URL=https://api.mainnet-beta.solana.com
209230
HELIUS_API_KEY=
210231

211232
# Telegram Configuration
212233
TELEGRAM_BOT_TOKEN=
234+
TELEGRAM_API_ROOT=
213235

214236
# Together Configuration
215237
TOGETHER_API_KEY=
@@ -253,6 +275,9 @@ CHARITY_ADDRESS_ETH=0x750EF1D7a0b4Ab1c97B7A623D7917CcEb5ea779C
253275
CHARITY_ADDRESS_ARB=0x1234567890123456789012345678901234567890
254276
CHARITY_ADDRESS_POL=0x1234567890123456789012345678901234567890
255277

278+
# thirdweb
279+
THIRDWEB_SECRET_KEY= # Create key on thirdweb developer dashboard: https://thirdweb.com/
280+
256281
# Conflux Configuration
257282
CONFLUX_CORE_PRIVATE_KEY=
258283
CONFLUX_CORE_SPACE_RPC_URL=
@@ -277,6 +302,10 @@ WALLET_SECRET_SALT= # ONLY define if you want to use TEE Plugin, oth
277302

278303
# Galadriel Configuration
279304
GALADRIEL_API_KEY=gal-* # Get from https://dashboard.galadriel.com/
305+
SMALL_GALADRIEL_MODEL= # Default: gpt-4o-mini
306+
MEDIUM_GALADRIEL_MODEL= # Default: gpt-4o
307+
LARGE_GALADRIEL_MODEL= # Default: gpt-4o
308+
GALADRIEL_FINE_TUNE_API_KEY= # Use an OpenAI key to use a fine-tuned model with the verified inference endpoint
280309

281310
# Venice Configuration
282311
VENICE_API_KEY= # generate from venice settings
@@ -285,6 +314,10 @@ MEDIUM_VENICE_MODEL= # Default: llama-3.3-70b
285314
LARGE_VENICE_MODEL= # Default: llama-3.1-405b
286315
IMAGE_VENICE_MODEL= # Default: fluently-xl
287316

317+
# Coin Price Configuration
318+
COINMARKETCAP_API_KEY=
319+
COINGECKO_API_KEY=
320+
288321
# Akash Chat API Configuration docs: https://chatapi.akash.network/documentation
289322
AKASH_CHAT_API_KEY= # Get from https://chatapi.akash.network/
290323
SMALL_AKASH_CHAT_API_MODEL= # Default: Meta-Llama-3-2-3B-Instruct
@@ -335,14 +368,24 @@ MVX_NETWORK= # must be one of mainnet, devnet, testnet
335368
NEAR_WALLET_SECRET_KEY=
336369
NEAR_WALLET_PUBLIC_KEY=
337370
NEAR_ADDRESS=
338-
SLIPPAGE=1
339-
RPC_URL=https://rpc.testnet.near.org
371+
NEAR_SLIPPAGE=1
372+
NEAR_RPC_URL=https://rpc.testnet.near.org
340373
NEAR_NETWORK=testnet # or mainnet
341374

342375
# ZKsync Era Configuration
343376
ZKSYNC_ADDRESS=
344377
ZKSYNC_PRIVATE_KEY=
345378

379+
# Avail DA Configuration
380+
AVAIL_ADDRESS=
381+
AVAIL_SEED=
382+
AVAIL_APP_ID=0
383+
AVAIL_RPC_URL=wss://avail-turing.public.blastapi.io/ # (Default) Testnet: wss://avail-turing.public.blastapi.io/ | Mainnet: wss://avail-mainnet.public.blastapi.io/
384+
385+
# Marlin
386+
TEE_MARLIN= # Set "yes" to enable the plugin
387+
TEE_MARLIN_ATTESTATION_ENDPOINT= # Optional, default "http://127.0.0.1:1350"
388+
346389
# Ton
347390
TON_PRIVATE_KEY= # Ton Mnemonic Seed Phrase Join With Empty String
348391
TON_RPC_URL= # ton rpc
@@ -367,6 +410,9 @@ STORY_API_BASE_URL= # Story API base URL
367410
STORY_API_KEY= # Story API key
368411
PINATA_JWT= # Pinata JWT for uploading files to IPFS
369412

413+
# Cosmos
414+
COSMOS_RECOVERY_PHRASE= # 12 words recovery phrase (need to be in quotes, because of spaces)
415+
COSMOS_AVAILABLE_CHAINS= # mantrachaintestnet2,cosmos # Array of chains
370416
# Cronos zkEVM
371417
CRONOSZKEVM_ADDRESS=
372418
CRONOSZKEVM_PRIVATE_KEY=
@@ -377,3 +423,38 @@ FUEL_WALLET_PRIVATE_KEY=
377423
# Tokenizer Settings
378424
TOKENIZER_MODEL= # Specify the tokenizer model to be used.
379425
TOKENIZER_TYPE= # Options: tiktoken (for OpenAI models) or auto (AutoTokenizer from Hugging Face for non-OpenAI models). Default: tiktoken.
426+
427+
#LetzAI
428+
LETZAI_API_KEY= # LetzAI API Key
429+
LETZAI_MODELS= # list of Letzai models to add to each prompt, e.g.: "@modelname1, @modelname2"
430+
431+
432+
# Spheron
433+
SPHERON_PRIVATE_KEY=
434+
SPHERON_PROVIDER_PROXY_URL=
435+
SPHERON_WALLET_ADDRESS=
436+
437+
# Stargaze NFT marketplace from Cosmos (You can use https://graphql.mainnet.stargaze-apis.com/graphql)
438+
STARGAZE_ENDPOINT=
439+
440+
# API key for giphy from https://developers.giphy.com/dashboard/
441+
GIPHY_API_KEY=
442+
443+
# GenLayer
444+
GENLAYER_PRIVATE_KEY= # Private key of the GenLayer account to use for the agent in this format (0x0000000000000000000000000000000000000000000000000000000000000000)
445+
446+
# OpenWeather
447+
OPEN_WEATHER_API_KEY= # OpenWeather API key
448+
449+
# Allora
450+
ALLORA_API_KEY= # Allora API key, format: UP-f8db7d6558ab432ca0d92716
451+
ALLORA_CHAIN_SLUG= # must be one of mainnet, testnet. If not specified, it will use testnet by default
452+
453+
# Opacity zkTLS
454+
OPACITY_TEAM_ID=f309ac8ae8a9a14a7e62cd1a521b1c5f
455+
OPACITY_CLOUDFLARE_NAME=eigen-test
456+
OPACITY_PROVER_URL=https://opacity-ai-zktls-demo.vercel.app
457+
458+
# Verifiable Inference Configuration
459+
VERIFIABLE_INFERENCE_ENABLED=false # Set to false to disable verifiable inference
460+
VERIFIABLE_INFERENCE_PROVIDER=opacity # Options: opacity

.eslintrc.json

+34-45
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,36 @@
11
{
2-
"plugins": [
3-
"@stylistic"
4-
],
5-
"extends": [
6-
"next/core-web-vitals",
7-
"plugin:@stylistic/recommended-extends"
8-
],
9-
"rules": {
10-
"@stylistic/indent": [
11-
"error",
12-
4,
13-
{
14-
"SwitchCase": 1
15-
}
2+
"plugins": ["@stylistic"],
3+
"extends": [
4+
"next/core-web-vitals",
5+
"plugin:@stylistic/recommended-extends"
166
],
17-
"@stylistic/no-tabs": "error",
18-
"@stylistic/member-delimiter-style": [
19-
"error",
20-
{
21-
"multiline": {
22-
"delimiter": "semi",
23-
"requireLast": true
24-
},
25-
"singleline": {
26-
"delimiter": "semi",
27-
"requireLast": false
28-
}
29-
}
30-
],
31-
"@stylistic/eol-last": [
32-
"error",
33-
"always"
34-
],
35-
"@stylistic/multiline-ternary": "off",
36-
"@stylistic/semi": [
37-
"error",
38-
"always"
39-
],
40-
"@stylistic/quotes": "off",
41-
"@stylistic/comma-dangle": "off",
42-
"@stylistic/brace-style": [
43-
"error",
44-
"1tbs"
45-
]
46-
}
47-
}
7+
"rules": {
8+
"@stylistic/indent": [
9+
"error",
10+
4,
11+
{
12+
"SwitchCase": 1
13+
}
14+
],
15+
"@stylistic/no-tabs": "error",
16+
"@stylistic/member-delimiter-style": [
17+
"error",
18+
{
19+
"multiline": {
20+
"delimiter": "semi",
21+
"requireLast": true
22+
},
23+
"singleline": {
24+
"delimiter": "semi",
25+
"requireLast": false
26+
}
27+
}
28+
],
29+
"@stylistic/eol-last": ["error", "always"],
30+
"@stylistic/multiline-ternary": "off",
31+
"@stylistic/semi": ["error", "always"],
32+
"@stylistic/quotes": "off",
33+
"@stylistic/comma-dangle": "off",
34+
"@stylistic/brace-style": ["error", "1tbs"]
35+
}
36+
}

0 commit comments

Comments
 (0)