add memory
All checks were successful
Build and Publish Docker Image / build-and-push (push) Successful in 16s
All checks were successful
Build and Publish Docker Image / build-and-push (push) Successful in 16s
This commit is contained in:
16
Program.cs
16
Program.cs
@@ -6,6 +6,8 @@ using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using TentacleBot.Services;
|
||||
using TentacleBot.Services.Memory;
|
||||
using TentacleBot.Services.Tools;
|
||||
using TentacleBot.Commands;
|
||||
|
||||
var configuration = new ConfigurationBuilder()
|
||||
@@ -36,11 +38,25 @@ var services = new ServiceCollection()
|
||||
.AddHttpClient()
|
||||
.AddSingleton<PalworldApiService>();
|
||||
|
||||
// Initialize memory database
|
||||
var dbPath = configuration["Memory:DatabasePath"] ?? "data/tentaclebot.db";
|
||||
var dbInit = new DatabaseInitializer(dbPath);
|
||||
dbInit.Initialize();
|
||||
services.AddSingleton(dbInit);
|
||||
services.AddSingleton<MemoryStore>();
|
||||
services.AddSingleton<ToolRegistry>();
|
||||
services.AddSingleton<MemoryTools>();
|
||||
|
||||
var serviceProvider = services.BuildServiceProvider();
|
||||
|
||||
var botService = serviceProvider.GetRequiredService<BotService>();
|
||||
var interactionService = serviceProvider.GetRequiredService<InteractionService>();
|
||||
|
||||
// Register memory tools
|
||||
var toolRegistry = serviceProvider.GetRequiredService<ToolRegistry>();
|
||||
var memoryTools = serviceProvider.GetRequiredService<MemoryTools>();
|
||||
memoryTools.RegisterAll(toolRegistry);
|
||||
|
||||
// Register command modules
|
||||
await interactionService.AddModulesAsync(
|
||||
typeof(Program).Assembly,
|
||||
|
||||
Reference in New Issue
Block a user