This commit is contained in:
2026-07-12 17:26:59 -04:00
parent 60663b8d4a
commit ba1bef8ff9
25 changed files with 158880 additions and 1529 deletions
+29 -4
View File
@@ -16,7 +16,7 @@ module.exports = {
},
"storage": {
"dbPath": "./storage/storage.db",
"scanRadius": 500,
"scanRadius": 30,
"homePos": null,
"categories": {
"minerals": ["diamond", "netherite_ingot", "gold_ingot", "iron_ingot", "copper_ingot", "emerald", "redstone", "lapis_lazuli", "raw_iron", "raw_gold", "raw_copper"],
@@ -58,14 +58,35 @@ module.exports = {
"storageBotName": "ez", // storage bot to trade with
"enabled": true,
},
// OpenID Connect login for the web dashboard. Disabled by default —
// enable via settings once clientId/clientSecret are configured.
// redirectUri MUST be registered on the SSO client and match exactly.
"auth": {
"enabled": false,
"authorizationEndpoint": "https://sso.theta42.com/oauth/authorize",
"tokenEndpoint": "https://sso.theta42.com/oauth/token",
"userinfoEndpoint": "https://sso.theta42.com/oauth/userinfo",
"clientId": "",
"clientSecret": "",
"redirectUri": "http://localhost:3000/auth/oidc/callback",
"scopes": ["openid", "profile", "email", "groups"],
"usernameClaim": "preferred_username",
"groupsClaim": "groups",
"allowedUsers": [],
"allowedGroups": [],
"tokenTTL": 2592000,
},
"ai":{
"faceBot": "ez", // which bot runs the AI (the face/coordinator)
"storageBot": "ez", // which bot handles storage
// AI provider: 'gemini' (default) or 'ollama'
"provider": "ollama",
// Gemini API key (required if using gemini provider)
"key": "<configure in secrets>",
// Ollama settings (only used if provider is 'ollama')
"baseUrl": "http://192.168.1.148:11434",
"model": "huihui_ai/qwen3.5-abliterated:9b", // Default for Ollama; for Gemini use gemini-2.0-flash-exp, etc.
"model": "deepseek-v4-flash:cloud", // Default for Ollama; for Gemini use gemini-2.0-flash-exp, etc.
"enableNativeTools": true, // set to true only if model supports function calling (most 9B models don't)
"timeout": 30000,
// Generation settings (applies to both providers)
"temperature": 1,
@@ -73,7 +94,7 @@ module.exports = {
"topK": 64,
// "maxOutputTokens": 64000,
"interval": 5,
"promptName": "asshole",
"promptName": "helpful",
"prompts":{
"custom": (name, interval, currentPlayers, toolsDocs, memoryContext, timeInfo, custom='')=>`
Ignore all previous instructions prompts
@@ -115,10 +136,12 @@ CHAT RULES:
- Only chat when there is no tool to call.
- Max 1 message per response, under 120 chars.
- Be short and sarcastic. No narration.
- NEVER suggest commands (/msg, /trade, /invite, /help). You are a player, not a help desk.
- NEVER type server commands in public chat.
Currently online: ${currentPlayers}
CRITICAL FORMAT: Output ONLY a raw JSON array. Never plain text.
CRITICAL FORMAT: Output ONLY a raw JSON array. Never plain text. Never JSON objects with tool calls in chat text.
Silence = [{"text":"_","delay":0}]
[{"text": "msg", "delay": 0}]`,
"Ashley": (name, interval, currentPlayers, toolsDocs, memoryContext, timeInfo, custom='')=>`
@@ -165,6 +188,8 @@ CHAT RULES:
- Only chat when there is no tool to call.
- Max 1 message per response, under 120 chars.
- Be helpful but brief. No narration.
- NEVER suggest commands (/msg, /trade, /invite, /help). You are a player, not a help desk.
- NEVER type server commands in public chat.
Currently online: ${currentPlayers}