Skip to content

Commit 81f72e4

Browse files
authored
Merge branch 'develop' into solana_transaction_more_lenient
2 parents 533a5f8 + bbaf626 commit 81f72e4

File tree

229 files changed

+18427
-11566
lines changed

Some content is hidden

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

229 files changed

+18427
-11566
lines changed

.env.example

+84-1
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,12 @@ MEDIUM_GOOGLE_MODEL= # Default: gemini-1.5-flash-latest
184184
LARGE_GOOGLE_MODEL= # Default: gemini-1.5-pro-latest
185185
EMBEDDING_GOOGLE_MODEL= # Default: text-embedding-004
186186

187+
# Mistral Configuration
188+
MISTRAL_MODEL=
189+
SMALL_MISTRAL_MODEL= # Default: mistral-small-latest
190+
MEDIUM_MISTRAL_MODEL= # Default: mistral-large-latest
191+
LARGE_MISTRAL_MODEL= # Default: mistral-large-latest
192+
187193
# Groq Configuration
188194
GROQ_API_KEY= # Starts with gsk_
189195
SMALL_GROQ_MODEL= # Default: llama-3.1-8b-instant
@@ -240,17 +246,30 @@ FAL_AI_LORA_PATH=
240246
LETZAI_API_KEY= # LetzAI API Key
241247
LETZAI_MODELS= # list of Letzai models to add to each prompt, e.g.: "@modelname1, @modelname2"
242248

249+
# Galadriel Configuration
250+
GALADRIEL_API_KEY=gal-* # Get from https://dashboard.galadriel.com/
251+
SMALL_GALADRIEL_MODEL= # Default: gpt-4o-mini
252+
MEDIUM_GALADRIEL_MODEL= # Default: gpt-4o
253+
LARGE_GALADRIEL_MODEL= # Default: gpt-4o
254+
GALADRIEL_FINE_TUNE_API_KEY= # Use an OpenAI key to use a fine-tuned model with the verified inference endpoint
255+
243256
# Remaining Provider Configurations
244257
GOOGLE_GENERATIVE_AI_API_KEY= # Gemini API key
245258
ALI_BAILIAN_API_KEY= # Ali Bailian API Key
246259
NANOGPT_API_KEY= # NanoGPT API Key
247-
GALADRIEL_API_KEY=gal-* # Get from https://dashboard.galadriel.com/
248260
TOGETHER_API_KEY= # Together API Key
249261

250262
######################################
251263
#### Crypto Plugin Configurations ####
252264
######################################
253265

266+
# CoinMarketCap / CMC
267+
COINMARKETCAP_API_KEY=
268+
269+
# CoinGecko
270+
COINGECKO_API_KEY=
271+
COINGECKO_PRO_API_KEY=
272+
254273
# EVM
255274
EVM_PRIVATE_KEY=
256275
EVM_PROVIDER_URL=
@@ -293,6 +312,10 @@ STARKNET_ADDRESS=
293312
STARKNET_PRIVATE_KEY=
294313
STARKNET_RPC_URL=
295314

315+
# Lens Network Configuration
316+
LENS_ADDRESS=
317+
LENS_PRIVATE_KEY=
318+
296319
# Coinbase
297320
COINBASE_COMMERCE_KEY= # From Coinbase developer portal
298321
COINBASE_API_KEY= # From Coinbase developer portal
@@ -334,6 +357,8 @@ ZEROG_FLOW_ADDRESS=
334357
TEE_MODE=OFF # LOCAL | DOCKER | PRODUCTION
335358
WALLET_SECRET_SALT= # ONLY define if you want to use TEE Plugin, otherwise it will throw errors
336359

360+
ENABLE_TEE_LOG=false # Set to true to enable TEE logging, only available when running eliza in TEE
361+
337362
# Flow Blockchain Configuration
338363
FLOW_ADDRESS=
339364
FLOW_PRIVATE_KEY= # Private key for SHA3-256 + P256 ECDSA
@@ -344,6 +369,12 @@ FLOW_ENDPOINT_URL= # Default: https://mainnet.onflow.org
344369
INTERNET_COMPUTER_PRIVATE_KEY=
345370
INTERNET_COMPUTER_ADDRESS=
346371

372+
373+
#Cloudflare AI Gateway
374+
CLOUDFLARE_GW_ENABLED= # Set to true to enable Cloudflare AI Gateway
375+
CLOUDFLARE_AI_ACCOUNT_ID= # Cloudflare AI Account ID - found in the Cloudflare Dashboard under AI Gateway
376+
CLOUDFLARE_AI_GATEWAY_ID= # Cloudflare AI Gateway ID - found in the Cloudflare Dashboard under AI Gateway
377+
347378
# Aptos
348379
APTOS_PRIVATE_KEY= # Aptos private key
349380
APTOS_NETWORK= # Must be one of mainnet, testnet
@@ -426,6 +457,8 @@ GIPHY_API_KEY=
426457
# OpenWeather
427458
OPEN_WEATHER_API_KEY= # OpenWeather API key
428459

460+
461+
429462
# EchoChambers Configuration
430463
ECHOCHAMBERS_API_URL=http://127.0.0.1:3333
431464
ECHOCHAMBERS_API_KEY=testingkey0011
@@ -459,3 +492,53 @@ TAVILY_API_KEY=
459492
# Verifiable Inference Configuration
460493
VERIFIABLE_INFERENCE_ENABLED=false # Set to false to disable verifiable inference
461494
VERIFIABLE_INFERENCE_PROVIDER=opacity # Options: opacity
495+
496+
497+
# Autonome Configuration
498+
AUTONOME_JWT_TOKEN=
499+
AUTONOME_RPC=https://wizard-bff-rpc.alt.technology/v1/bff/aaa/apps
500+
501+
####################################
502+
#### Akash Network Configuration ####
503+
####################################
504+
AKASH_ENV=mainnet
505+
AKASH_NET=https://raw.githubusercontent.com/ovrclk/net/master/mainnet
506+
RPC_ENDPOINT=https://rpc.akashnet.net:443
507+
AKASH_GAS_PRICES=0.025uakt
508+
AKASH_GAS_ADJUSTMENT=1.5
509+
AKASH_KEYRING_BACKEND=os
510+
AKASH_FROM=default
511+
AKASH_FEES=20000uakt
512+
AKASH_DEPOSIT=500000uakt
513+
AKASH_MNEMONIC=
514+
AKASH_WALLET_ADDRESS=
515+
# Akash Pricing API
516+
AKASH_PRICING_API_URL=https://console-api.akash.network/v1/pricing
517+
# Default values # 1 CPU = 1000 1GB = 1000000000 1GB = 1000000000
518+
AKASH_DEFAULT_CPU=1000
519+
AKASH_DEFAULT_MEMORY=1000000000
520+
AKASH_DEFAULT_STORAGE=1000000000
521+
AKASH_SDL=example.sdl.yml
522+
# Close deployment
523+
# Close all deployments = closeAll
524+
# Close a single deployment = dseq and add the value in AKASH_CLOSE_DSEQ
525+
AKASH_CLOSE_DEP=closeAll
526+
AKASH_CLOSE_DSEQ=19729929
527+
# Provider Info we added one to check you will have to pass this into the action
528+
AKASH_PROVIDER_INFO=akash1ccktptfkvdc67msasmesuy5m7gpc76z75kukpz
529+
# Deployment Status
530+
# AKASH_DEP_STATUS = dseq or param_passed when you are building you wil pass the dseq dinamically to test you
531+
# you can pass the dseq using AKASH_DEP_DSEQ 19729929 is an example of a dseq we test while build.
532+
AKASH_DEP_STATUS=dseq
533+
AKASH_DEP_DSEQ=19729929
534+
# Gas Estimation Options: close, create, or update
535+
# qseq is required when operation is "close" 19729929 is an example of a dseq we test while build.
536+
AKASH_GAS_OPERATION=close
537+
AKASH_GAS_DSEQ=19729929
538+
# Manifest
539+
# Values: "auto" | "manual" | "validate_only" Default: "auto"
540+
AKASH_MANIFEST_MODE=auto
541+
# Default: Will use the SDL directory
542+
AKASH_MANIFEST_PATH=
543+
# Values: "strict" | "lenient" | "none" - Default: "strict"
544+
AKASH_MANIFEST_VALIDATION_LEVEL=strict

.github/workflows/integrationTests.yaml

+6-9
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ on:
33
push:
44
branches:
55
- "*"
6-
pull_request_target:
6+
pull_request:
77
branches:
88
- "*"
99

@@ -33,12 +33,9 @@ jobs:
3333
- name: Build packages
3434
run: pnpm build
3535

36-
- name: Check for API key
37-
run: |
38-
if [ -z "$OPENAI_API_KEY" ]; then
39-
echo "Error: OPENAI_API_KEY is not set."
40-
exit 1
41-
fi
42-
4336
- name: Run integration tests
44-
run: pnpm run integrationTests
37+
env:
38+
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
39+
COINBASE_COMMERCE_KEY: ${{ secrets.COINBASE_COMMERCE_KEY }}
40+
run: |
41+
pnpm run integrationTests

.github/workflows/pnpm-lockfile-check.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name: Pnpm Lockfile Check
22

33
on:
44
pull_request:
5-
branches: ["*"]
5+
branches: [main]
66

77
jobs:
88
check-lockfile:
@@ -38,4 +38,4 @@ jobs:
3838
owner: context.repo.owner,
3939
repo: context.repo.repo,
4040
body: '❌ The pnpm-lockfile is out of date. Please run `pnpm install --no-frozen-lockfile` and commit the updated pnpm-lock.yaml file.'
41-
})
41+
})

.gitignore

+4
Original file line numberDiff line numberDiff line change
@@ -57,3 +57,7 @@ coverage
5757
.eslintcache
5858

5959
agent/content
60+
61+
eliza.manifest
62+
eliza.manifest.sgx
63+
eliza.sig

Makefile

+59
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
# Copyright (C) 2024 Gramine contributors
2+
# SPDX-License-Identifier: BSD-3-Clause
3+
4+
THIS_DIR := $(dir $(lastword $(MAKEFILE_LIST)))
5+
NODEJS_DIR ?= /usr/bin
6+
7+
ARCH_LIBDIR ?= /lib/$(shell $(CC) -dumpmachine)
8+
9+
ifeq ($(DEBUG),1)
10+
GRAMINE_LOG_LEVEL = debug
11+
else
12+
GRAMINE_LOG_LEVEL = error
13+
endif
14+
15+
.PHONY: all
16+
all: eliza.manifest
17+
ifeq ($(SGX),1)
18+
all: eliza.manifest.sgx eliza.sig
19+
endif
20+
21+
.PHONY: eliza.manifest
22+
eliza.manifest: eliza.manifest.template
23+
gramine-manifest \
24+
-Dlog_level=$(GRAMINE_LOG_LEVEL) \
25+
-Darch_libdir=$(ARCH_LIBDIR) \
26+
-Dnodejs_dir=$(NODEJS_DIR) \
27+
$< >$@
28+
29+
# Make on Ubuntu <= 20.04 doesn't support "Rules with Grouped Targets" (`&:`),
30+
# for details on this workaround see
31+
# https://github.com/gramineproject/gramine/blob/e8735ea06c/CI-Examples/helloworld/Makefile
32+
eliza.manifest.sgx eliza.sig: sgx_sign
33+
@:
34+
35+
.INTERMEDIATE: sgx_sign
36+
sgx_sign: eliza.manifest
37+
gramine-sgx-sign \
38+
--manifest $< \
39+
--output $<.sgx
40+
41+
ifeq ($(SGX),)
42+
GRAMINE = gramine-direct
43+
else
44+
GRAMINE = gramine-sgx
45+
endif
46+
47+
# Start the default character:
48+
# SGX=1 make start
49+
# Start a specific character by passing arguments:
50+
# SGX=1 make start -- --character "character/your_character_file.json"
51+
.PHONY: start
52+
start: all
53+
$(GRAMINE) ./eliza --loader ts-node/esm src/index.ts --isRoot $(filter-out $@,$(MAKECMDGOALS))
54+
.PHONY: clean
55+
clean:
56+
$(RM) *.manifest *.manifest.sgx *.sig
57+
58+
.PHONY: distclean
59+
distclean: clean

0 commit comments

Comments
 (0)