2025-04-25 21:28:05 -04:00
|
|
|
import dotenv from 'dotenv';
|
|
|
|
|
dotenv.config();
|
|
|
|
|
|
|
|
|
|
export default {
|
|
|
|
|
|
|
|
|
|
clients: [
|
|
|
|
|
{
|
2025-05-04 18:46:09 +00:00
|
|
|
id: 'SysAI',
|
2025-04-25 21:28:05 -04:00
|
|
|
enabled: true,
|
2025-05-01 21:10:20 +00:00
|
|
|
owner: process.env.OWNER_ID,
|
2025-04-25 21:28:05 -04:00
|
|
|
|
|
|
|
|
discord: {
|
2025-05-04 18:46:09 +00:00
|
|
|
appId: process.env.SYSAI_DISCORD_APPID,
|
|
|
|
|
token: process.env.SYSAI_DISCORD_TOKEN
|
2025-04-25 21:28:05 -04:00
|
|
|
},
|
|
|
|
|
|
|
|
|
|
logging: {
|
|
|
|
|
console: {
|
|
|
|
|
enabled: true,
|
|
|
|
|
colorize: true,
|
|
|
|
|
level: 'silly',
|
|
|
|
|
},
|
|
|
|
|
file: {
|
|
|
|
|
dateFormat: 'YYYY-MM-DD',
|
|
|
|
|
timestampFormat: 'YYYY-MM-DD HH:mm:ss',
|
|
|
|
|
combined: {
|
|
|
|
|
enabled: true,
|
|
|
|
|
level: 'silly',
|
|
|
|
|
location: 'logs',
|
|
|
|
|
maxSize: '12m',
|
|
|
|
|
maxFiles: '30d',
|
|
|
|
|
},
|
|
|
|
|
error: {
|
|
|
|
|
enabled: true,
|
|
|
|
|
level: 'error',
|
|
|
|
|
location: 'logs',
|
|
|
|
|
maxSize: '12m',
|
|
|
|
|
maxFiles: '365d',
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
2025-04-28 20:05:04 +00:00
|
|
|
pocketbase: {
|
|
|
|
|
url: process.env.SHARED_POCKETBASE_URL,
|
|
|
|
|
username: process.env.SHARED_POCKETBASE_USERNAME,
|
|
|
|
|
password: process.env.SHARED_POCKETBASE_PASSWORD
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
responses: {
|
|
|
|
|
apiKey: process.env.SHARED_OPENAI_API_KEY,
|
|
|
|
|
defaultModel: 'gpt-4.1',
|
|
|
|
|
defaultMaxTokens: 1000,
|
|
|
|
|
defaultTemperature: 0.7,
|
|
|
|
|
conversationExpiry: 30 * 60 * 1000,
|
|
|
|
|
minScore: 1.0,
|
|
|
|
|
tools: {
|
2025-04-30 00:30:34 +00:00
|
|
|
webSearch: true,
|
2025-04-28 20:05:04 +00:00
|
|
|
fileSearch: false,
|
|
|
|
|
imageGeneration: true,
|
|
|
|
|
},
|
|
|
|
|
imageGeneration: {
|
|
|
|
|
defaultModel: 'gpt-image-1',
|
|
|
|
|
defaultQuality: 'standard',
|
|
|
|
|
imageSavePath: './images'
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
modules: [
|
2025-05-04 14:29:13 +00:00
|
|
|
'ansi',
|
2025-05-01 22:58:30 +00:00
|
|
|
'botUtils',
|
2025-04-28 20:05:04 +00:00
|
|
|
'pbUtils',
|
2025-05-02 16:45:36 +00:00
|
|
|
'gitUtils',
|
2025-04-28 20:05:04 +00:00
|
|
|
'responses',
|
2025-05-02 16:45:36 +00:00
|
|
|
'responsesPrompt',
|
2025-05-04 18:26:56 +00:00
|
|
|
'responsesQuery',
|
|
|
|
|
'tempvc'
|
2025-04-28 20:05:04 +00:00
|
|
|
]
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
id: 'ASOP',
|
|
|
|
|
enabled: true,
|
2025-05-02 16:45:36 +00:00
|
|
|
owner: process.env.OWNER_ID,
|
2025-04-28 20:05:04 +00:00
|
|
|
|
|
|
|
|
discord: {
|
|
|
|
|
appId: process.env.ASOP_DISCORD_APPID,
|
|
|
|
|
token: process.env.ASOP_DISCORD_TOKEN
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
logging: {
|
|
|
|
|
console: {
|
|
|
|
|
enabled: true,
|
|
|
|
|
colorize: true,
|
|
|
|
|
level: 'silly',
|
|
|
|
|
},
|
|
|
|
|
file: {
|
|
|
|
|
dateFormat: 'YYYY-MM-DD',
|
|
|
|
|
timestampFormat: 'YYYY-MM-DD HH:mm:ss',
|
|
|
|
|
combined: {
|
|
|
|
|
enabled: true,
|
|
|
|
|
level: 'silly',
|
|
|
|
|
location: 'logs',
|
|
|
|
|
maxSize: '12m',
|
|
|
|
|
maxFiles: '30d',
|
|
|
|
|
},
|
|
|
|
|
error: {
|
|
|
|
|
enabled: true,
|
|
|
|
|
level: 'error',
|
|
|
|
|
location: 'logs',
|
|
|
|
|
maxSize: '12m',
|
|
|
|
|
maxFiles: '365d',
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
2025-04-25 21:28:05 -04:00
|
|
|
condimentX: {
|
|
|
|
|
dryRun: false,
|
|
|
|
|
guildID: '983057544849272883',
|
|
|
|
|
debugChannel: '1247179154869325865',
|
|
|
|
|
blacklistUsers: [
|
|
|
|
|
'1162531805006680064' // Crow
|
|
|
|
|
],
|
|
|
|
|
blacklistRoles: [
|
|
|
|
|
'1173012816228274256', // @Bots
|
|
|
|
|
'1209570635085520977', // @Kevin Arby
|
|
|
|
|
'1226903935344971786', // @Werebeef
|
|
|
|
|
'1250141348040933407' // @RIP
|
|
|
|
|
],
|
|
|
|
|
graylistRoles: [
|
|
|
|
|
'1246749335866310656' // @Most Active
|
|
|
|
|
],
|
|
|
|
|
whitelistRoles: [
|
|
|
|
|
'1256082910163767378' // @"Crow"
|
|
|
|
|
],
|
2025-04-27 02:22:13 +00:00
|
|
|
indexRoleID: '1209570635085520977', // Kevin's Vessel
|
2025-04-25 21:28:05 -04:00
|
|
|
viralRoleID: '1226903935344971786', // Werebeef
|
|
|
|
|
antiIndexRoleID: '1241228932037214358', // Exorcised
|
|
|
|
|
antiViralRoleID: '1241230334079795330', // Immunized
|
|
|
|
|
firstCycleInterval: 30000,
|
|
|
|
|
cycleInterval: 3600000,
|
|
|
|
|
cycleIntervalRange: 900000,
|
|
|
|
|
incidenceDenominator: 40,
|
|
|
|
|
cessationDenominator: 20,
|
|
|
|
|
probabilityLimit: 20,
|
|
|
|
|
antiViralEffectiveness: 90,
|
|
|
|
|
proximityWindow: 120000,
|
|
|
|
|
messageHistoryLimit: 50,
|
|
|
|
|
ephemeralDelay: 60000,
|
|
|
|
|
openAI: true,
|
|
|
|
|
openAITriggerOnlyDuringIncident: true,
|
|
|
|
|
openAIResponseDenominator: 1,
|
2025-05-02 16:45:36 +00:00
|
|
|
openAIInstructionsFile: './assets/kevinarby.txt',
|
2025-04-25 21:28:05 -04:00
|
|
|
openAITriggers: [
|
|
|
|
|
'kevin',
|
|
|
|
|
'arby',
|
|
|
|
|
'werebeef'
|
|
|
|
|
],
|
|
|
|
|
openAIWebhookID: '1251666161075097640',
|
2025-05-04 18:46:09 +00:00
|
|
|
openAIWebhookToken: process.env.SYSAI_CONDIMENTX_WEBHOOK_TOKEN,
|
2025-04-25 21:28:05 -04:00
|
|
|
openAIToken: process.env.SHARED_OPENAI_API_KEY
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
pocketbase: {
|
|
|
|
|
url: process.env.SHARED_POCKETBASE_URL,
|
|
|
|
|
username: process.env.SHARED_POCKETBASE_USERNAME,
|
|
|
|
|
password: process.env.SHARED_POCKETBASE_PASSWORD
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
responses: {
|
|
|
|
|
apiKey: process.env.SHARED_OPENAI_API_KEY,
|
2025-04-28 20:05:04 +00:00
|
|
|
defaultModel: 'gpt-4.1-mini',
|
2025-04-25 21:28:05 -04:00
|
|
|
defaultMaxTokens: 1000,
|
|
|
|
|
defaultTemperature: 0.7,
|
|
|
|
|
conversationExpiry: 30 * 60 * 1000,
|
2025-05-02 16:45:36 +00:00
|
|
|
minScore: 0.5,
|
2025-04-25 21:28:05 -04:00
|
|
|
tools: {
|
2025-05-02 16:45:36 +00:00
|
|
|
webSearch: false,
|
2025-04-25 21:28:05 -04:00
|
|
|
fileSearch: false,
|
|
|
|
|
imageGeneration: true,
|
|
|
|
|
},
|
|
|
|
|
imageGeneration: {
|
|
|
|
|
defaultModel: 'gpt-image-1',
|
|
|
|
|
defaultQuality: 'standard',
|
|
|
|
|
imageSavePath: './images'
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
scorekeeper: {
|
|
|
|
|
baseOutput: 1000,
|
2025-04-30 00:30:34 +00:00
|
|
|
commendationValue: 0.25,
|
|
|
|
|
citationValue: 0.35,
|
2025-04-30 16:06:35 +00:00
|
|
|
cooldown: 43200000,
|
2025-04-30 00:30:34 +00:00
|
|
|
decay: 80,
|
2025-04-25 21:28:05 -04:00
|
|
|
schedule: '0 0 * * 0'
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
modules: [
|
2025-05-04 14:29:13 +00:00
|
|
|
'ansi',
|
2025-05-02 16:45:36 +00:00
|
|
|
'botUtils',
|
2025-04-25 21:28:05 -04:00
|
|
|
'pbUtils',
|
2025-05-03 20:01:29 +00:00
|
|
|
'gitUtils',
|
2025-05-05 11:09:27 +00:00
|
|
|
'condimentX',
|
2025-04-25 21:28:05 -04:00
|
|
|
'responses',
|
2025-05-02 16:45:36 +00:00
|
|
|
'responsesPrompt',
|
2025-04-25 21:28:05 -04:00
|
|
|
'responsesQuery',
|
|
|
|
|
'scorekeeper',
|
|
|
|
|
'scorekeeper-example',
|
2025-05-02 16:45:36 +00:00
|
|
|
'scExecHangarStatus'
|
2025-04-25 21:28:05 -04:00
|
|
|
]
|
|
|
|
|
|
2025-04-30 00:33:18 +00:00
|
|
|
},
|
|
|
|
|
|
2025-04-30 00:58:05 +00:00
|
|
|
{
|
2025-04-30 00:33:18 +00:00
|
|
|
id: 'Crowley',
|
|
|
|
|
enabled: true,
|
2025-05-02 16:45:36 +00:00
|
|
|
owner: process.env.OWNER_ID,
|
2025-04-30 00:33:18 +00:00
|
|
|
|
|
|
|
|
discord: {
|
|
|
|
|
appId: process.env.CROWLEY_DISCORD_APPID,
|
|
|
|
|
token: process.env.CROWLEY_DISCORD_TOKEN
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
logging: {
|
|
|
|
|
console: {
|
|
|
|
|
enabled: true,
|
|
|
|
|
colorize: true,
|
|
|
|
|
level: 'silly',
|
|
|
|
|
},
|
|
|
|
|
file: {
|
|
|
|
|
dateFormat: 'YYYY-MM-DD',
|
|
|
|
|
timestampFormat: 'YYYY-MM-DD HH:mm:ss',
|
|
|
|
|
combined: {
|
|
|
|
|
enabled: true,
|
|
|
|
|
level: 'silly',
|
|
|
|
|
location: 'logs',
|
|
|
|
|
maxSize: '12m',
|
|
|
|
|
maxFiles: '30d',
|
|
|
|
|
},
|
|
|
|
|
error: {
|
|
|
|
|
enabled: true,
|
|
|
|
|
level: 'error',
|
|
|
|
|
location: 'logs',
|
|
|
|
|
maxSize: '12m',
|
|
|
|
|
maxFiles: '365d',
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
pocketbase: {
|
|
|
|
|
url: process.env.SHARED_POCKETBASE_URL,
|
|
|
|
|
username: process.env.SHARED_POCKETBASE_USERNAME,
|
|
|
|
|
password: process.env.SHARED_POCKETBASE_PASSWORD
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
responses: {
|
|
|
|
|
apiKey: process.env.SHARED_OPENAI_API_KEY,
|
|
|
|
|
defaultModel: 'gpt-4.1',
|
|
|
|
|
defaultMaxTokens: 1000,
|
|
|
|
|
defaultTemperature: 0.7,
|
|
|
|
|
conversationExpiry: 30 * 60 * 1000,
|
2025-05-02 16:45:36 +00:00
|
|
|
minScore: 0,
|
2025-04-30 00:33:18 +00:00
|
|
|
tools: {
|
2025-05-02 16:45:36 +00:00
|
|
|
webSearch: false,
|
2025-04-30 00:33:18 +00:00
|
|
|
fileSearch: false,
|
2025-05-02 16:45:36 +00:00
|
|
|
imageGeneration: false,
|
2025-04-30 00:33:18 +00:00
|
|
|
},
|
|
|
|
|
imageGeneration: {
|
|
|
|
|
defaultModel: 'gpt-image-1',
|
|
|
|
|
defaultQuality: 'standard',
|
|
|
|
|
imageSavePath: './images'
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
modules: [
|
2025-05-02 16:45:36 +00:00
|
|
|
'botUtils',
|
2025-04-30 00:33:18 +00:00
|
|
|
'pbUtils',
|
|
|
|
|
'responses',
|
2025-05-02 16:45:36 +00:00
|
|
|
'responsesPrompt',
|
|
|
|
|
'responsesQuery'
|
2025-04-30 00:33:18 +00:00
|
|
|
]
|
|
|
|
|
|
2025-04-25 21:28:05 -04:00
|
|
|
},
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
id: 'Smuuush',
|
|
|
|
|
enabled: true,
|
2025-05-02 16:45:36 +00:00
|
|
|
owner: process.env.OWNER_ID,
|
2025-04-25 21:28:05 -04:00
|
|
|
|
|
|
|
|
discord: {
|
|
|
|
|
appId: process.env.SMUUUSH_DISCORD_APPID,
|
|
|
|
|
token: process.env.SMUUUSH_DISCORD_TOKEN
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
logging: {
|
|
|
|
|
console: {
|
|
|
|
|
enabled: true,
|
|
|
|
|
colorize: true,
|
|
|
|
|
level: 'silly',
|
|
|
|
|
},
|
|
|
|
|
file: {
|
|
|
|
|
dateFormat: 'YYYY-MM-DD',
|
|
|
|
|
timestampFormat: 'YYYY-MM-DD HH:mm:ss',
|
|
|
|
|
combined: {
|
|
|
|
|
enabled: true,
|
|
|
|
|
level: 'silly',
|
|
|
|
|
location: 'logs',
|
|
|
|
|
maxSize: '12m',
|
|
|
|
|
maxFiles: '30d',
|
|
|
|
|
},
|
|
|
|
|
error: {
|
|
|
|
|
enabled: true,
|
|
|
|
|
level: 'error',
|
|
|
|
|
location: 'logs',
|
|
|
|
|
maxSize: '12m',
|
|
|
|
|
maxFiles: '365d',
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
pocketbase: {
|
|
|
|
|
url: process.env.SHARED_POCKETBASE_URL,
|
|
|
|
|
username: process.env.SHARED_POCKETBASE_USERNAME,
|
|
|
|
|
password: process.env.SHARED_POCKETBASE_PASSWORD
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
responses: {
|
|
|
|
|
apiKey: process.env.SHARED_OPENAI_API_KEY,
|
2025-04-26 15:47:10 -04:00
|
|
|
defaultModel: 'gpt-4.1-mini',
|
2025-04-25 21:28:05 -04:00
|
|
|
defaultMaxTokens: 1000,
|
|
|
|
|
defaultTemperature: 0.7,
|
|
|
|
|
conversationExpiry: 30 * 60 * 1000,
|
2025-04-30 00:58:05 +00:00
|
|
|
minScore: 0,
|
2025-04-25 21:28:05 -04:00
|
|
|
tools: {
|
|
|
|
|
webSearch: false,
|
|
|
|
|
fileSearch: false,
|
|
|
|
|
imageGeneration: true,
|
|
|
|
|
},
|
|
|
|
|
imageGeneration: {
|
2025-04-28 20:05:04 +00:00
|
|
|
defaultModel: 'gpt-image-1',
|
|
|
|
|
defaultQuality: 'standard',
|
2025-04-25 21:28:05 -04:00
|
|
|
imageSavePath: './images'
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
modules: [
|
2025-05-02 16:45:36 +00:00
|
|
|
'botUtils',
|
2025-04-25 21:28:05 -04:00
|
|
|
'pbUtils',
|
|
|
|
|
'responses',
|
2025-05-02 16:45:36 +00:00
|
|
|
'responsesPrompt',
|
2025-04-25 21:28:05 -04:00
|
|
|
'responsesQuery'
|
|
|
|
|
],
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
}
|