@@ -28,16 +28,16 @@ import {
28
28
stringToUuid ,
29
29
validateCharacterConfig ,
30
30
} from "@elizaos/core" ;
31
+ import { TrustScoreDatabase } from "@elizaos/plugin-trustdb" ;
31
32
// import { zgPlugin } from "@elizaos/plugin-0g";
32
33
import { bootstrapPlugin } from "@elizaos/plugin-bootstrap" ;
33
34
import createGoatPlugin from "@elizaos/plugin-goat" ;
34
35
// import { intifacePlugin } from "@elizaos/plugin-intiface";
35
36
import { DirectClient } from "@elizaos/client-direct" ;
36
- import { ThreeDGenerationPlugin } from "@elizaos/plugin-3d-generation" ;
37
+ // import { ThreeDGenerationPlugin } from "@elizaos/plugin-3d-generation";
37
38
// import { abstractPlugin } from "@elizaos/plugin-abstract";
38
39
// import { aptosPlugin } from "@elizaos/plugin-aptos";
39
40
// import { avalanchePlugin } from "@elizaos/plugin-avalanche";
40
- import { birdeyePlugin } from "@elizaos/plugin-birdeye" ;
41
41
import {
42
42
advancedTradePlugin ,
43
43
coinbaseCommercePlugin ,
@@ -72,6 +72,8 @@ import path from "path";
72
72
import { fileURLToPath } from "url" ;
73
73
import yargs from "yargs" ;
74
74
75
+ import { trustScoreProvider } from "@elizaos/plugin-solana" ;
76
+ import { trustScoreEvaluator } from "./trustScoreEvaluator" ;
75
77
import { whaleDataEvaluator } from "./whaleDataEvaluator" ;
76
78
import { whaleDataProvider } from "./whaleDataProvider" ;
77
79
@@ -383,9 +385,14 @@ function initializeDatabase(dataDir: string) {
383
385
} else {
384
386
const filePath =
385
387
process . env . SQLITE_FILE ?? path . resolve ( dataDir , "db.sqlite" ) ;
386
- // ":memory:";
387
- const db = new SqliteDatabaseAdapter ( new Database ( filePath ) ) ;
388
- return db ;
388
+ const sqliteDb = new Database ( filePath ) ;
389
+ const db = new SqliteDatabaseAdapter ( sqliteDb ) ;
390
+
391
+ // Initialize TrustScoreDatabase
392
+ const trustDb = new TrustScoreDatabase ( sqliteDb ) ;
393
+ elizaLogger . info ( "Initialized TrustScoreDatabase" ) ;
394
+
395
+ return { db, trustDb } ;
389
396
}
390
397
}
391
398
@@ -491,7 +498,8 @@ export async function createAgent(
491
498
character : Character ,
492
499
db : IDatabaseAdapter ,
493
500
cache : ICacheManager ,
494
- token : string
501
+ token : string ,
502
+ trustDb : TrustScoreDatabase
495
503
) : Promise < AgentRuntime > {
496
504
elizaLogger . success (
497
505
elizaLogger . successesTitle ,
@@ -570,7 +578,7 @@ export async function createAgent(
570
578
getSecret ( character , "LIVEPEER_GATEWAY_URL" )
571
579
? imageGenerationPlugin
572
580
: null ,
573
- getSecret ( character , "FAL_API_KEY" ) ? ThreeDGenerationPlugin : null ,
581
+ // getSecret(character, "FAL_API_KEY") ? ThreeDGenerationPlugin : null,
574
582
...( getSecret ( character , "COINBASE_API_KEY" ) &&
575
583
getSecret ( character , "COINBASE_PRIVATE_KEY" )
576
584
? [
@@ -609,14 +617,14 @@ export async function createAgent(
609
617
// getSecret(character, "AVALANCHE_PRIVATE_KEY")
610
618
// ? avalanchePlugin
611
619
// : null,
612
- getSecret ( character , "BIRDEYE_API_KEY" ) ? birdeyePlugin : null ,
613
620
getSecret ( character , "ECHOCHAMBERS_API_URL" ) &&
614
621
getSecret ( character , "ECHOCHAMBERS_API_KEY" )
615
622
? echoChamberPlugin
616
623
: null ,
624
+ trustDb ? { name : "trustdb" , instance : trustDb } : null ,
617
625
] . filter ( Boolean ) ,
618
- evaluators : [ whaleDataEvaluator ] ,
619
- providers : [ whaleDataProvider ] ,
626
+ evaluators : [ whaleDataEvaluator , trustScoreEvaluator ] ,
627
+ providers : [ whaleDataProvider , trustScoreProvider ] ,
620
628
actions : [ ] ,
621
629
services : [ ] ,
622
630
managers : [ ] ,
@@ -680,7 +688,9 @@ async function startAgent(
680
688
character : Character ,
681
689
directClient : DirectClient
682
690
) : Promise < AgentRuntime > {
683
- let db : IDatabaseAdapter & IDatabaseCacheAdapter ;
691
+ let dbAdapter : IDatabaseAdapter & IDatabaseCacheAdapter ;
692
+ let trustDb : TrustScoreDatabase ;
693
+
684
694
try {
685
695
character . id ??= stringToUuid ( character . name ) ;
686
696
character . username ??= character . name ;
@@ -692,22 +702,25 @@ async function startAgent(
692
702
fs . mkdirSync ( dataDir , { recursive : true } ) ;
693
703
}
694
704
695
- db = initializeDatabase ( dataDir ) as IDatabaseAdapter &
696
- IDatabaseCacheAdapter ;
705
+ const { db, trustDb : tdb } = initializeDatabase ( dataDir ) as any ;
706
+ dbAdapter = db ;
707
+ trustDb = tdb ;
697
708
698
- await db . init ( ) ;
709
+ await dbAdapter . init ( ) ;
699
710
700
711
const cache = initializeCache (
701
712
process . env . CACHE_STORE ?? CacheStore . DATABASE ,
702
713
character ,
703
714
"" ,
704
- db
705
- ) ; // "" should be replaced with dir for file system caching. THOUGHTS: might probably make this into an env
715
+ dbAdapter
716
+ ) ;
717
+
706
718
const runtime : AgentRuntime = await createAgent (
707
719
character ,
708
- db ,
720
+ dbAdapter ,
709
721
cache ,
710
- token
722
+ token ,
723
+ trustDb
711
724
) ;
712
725
713
726
// start services/plugins/process knowledge
@@ -729,8 +742,8 @@ async function startAgent(
729
742
error
730
743
) ;
731
744
elizaLogger . error ( error ) ;
732
- if ( db ) {
733
- await db . close ( ) ;
745
+ if ( dbAdapter ) {
746
+ await dbAdapter . close ( ) ;
734
747
}
735
748
throw error ;
736
749
}
0 commit comments