Files
awoooi/agent99.config.example.json

268 lines
6.3 KiB
JSON

{
"agentName": "Agent99",
"agentRoot": "C:\\Wooo\\Agent99",
"sshUser": "wooo",
"sshIdentityFile": "C:\\Wooo\\Agent99\\keys\\agent99_ed25519",
"sshTransport": {
"serialized": true,
"lockTimeoutSeconds": 90,
"lockPollMilliseconds": 200
},
"sshProcessGuard": {
"enabled": true,
"staleMinutes": 15,
"hardStaleMinutes": 60
},
"sshUsers": {},
"vmrunPath": "",
"hosts": [
"192.168.0.110",
"192.168.0.112",
"192.168.0.120",
"192.168.0.121",
"192.168.0.188"
],
"vms": [
{
"name": "110",
"host": "192.168.0.110",
"vmx": ""
},
{
"name": "112",
"host": "192.168.0.112",
"vmx": ""
},
{
"name": "120",
"host": "192.168.0.120",
"vmx": ""
},
{
"name": "121",
"host": "192.168.0.121",
"vmx": ""
},
{
"name": "188",
"host": "192.168.0.188",
"vmx": ""
}
],
"k3s": {
"jumpHost": "192.168.0.110",
"preferJumpHost": true,
"directHosts": [
"192.168.0.110",
"192.168.0.112"
],
"primary": "192.168.0.120",
"namespace": "awoooi-prod"
},
"autoRecovery": {
"enabled": true,
"triggerOnHostUnreachable": true,
"minimumUnreachableHosts": 1,
"cooldownMinutes": 10
},
"recoverySlo": {
"targetMinutes": 10,
"hostTimeoutSeconds": 90,
"harborTimeoutSeconds": 120,
"workloadTimeoutSeconds": 180
},
"recoveryCoordinator": {
"enabled": true,
"controllerHost": "192.168.0.110",
"readbackTimeoutSeconds": 15,
"pollIntervalSeconds": 10,
"freshWaitTimeoutSeconds": 420,
"maxArtifactAgeSeconds": 600,
"artifactClockSkewSeconds": 90,
"requiredHostAliases": [
"99",
"110",
"111",
"112",
"120",
"121",
"188"
]
},
"publicUrls": [
"awoooi.wooo.work",
"stock.wooo.work",
"2026fifa.wooo.work",
"gitea.wooo.work",
"harbor.wooo.work"
],
"aiServices": [
{
"name": "openclaw",
"url": "http://192.168.0.188:8088/health",
"host": "192.168.0.188",
"expectedStatus": "healthy",
"critical": true
}
],
"providerFreshness": {
"enabled": true,
"lookbackMinutes": 120,
"targets": [
{
"name": "provider_freshness_signal",
"providerWindowMinutes": null,
"directReference": null,
"verifier": "agent99-provider-freshness-triage"
}
]
},
"sreAlertRelay": {
"enabled": true,
"prefix": "http://+:8787/agent99/sre-alert/",
"tokenEnv": "AGENT99_SRE_RELAY_TOKEN",
"allowedRemotePrefixes": [
"127.",
"::1",
"192.168.0."
]
},
"completionCallback": {
"enabled": true,
"url": "https://awoooi.wooo.work/api/v1/agents/agent99/completion-callback",
"tokenEnv": "AGENT99_SRE_RELAY_TOKEN",
"timeoutSeconds": 15,
"maxAttempts": 2,
"batchLimit": 5,
"retryAfterMinutes": 5
},
"telegram": {
"enabled": true,
"botTokenEnv": "AGENT99_TELEGRAM_BOT_TOKEN",
"chatIdEnv": "AGENT99_TELEGRAM_CHAT_ID",
"botTokenEnvAliases": [
"AWOOOI_TG_BOT_TOKEN",
"OPENCLAW_TG_BOT_TOKEN",
"TELEGRAM_BOT_TOKEN",
"TELEGRAM_TOKEN",
"TG_BOT_TOKEN",
"AIDER_WATCH_TELEGRAM_TOKEN"
],
"chatIdEnvAliases": [
"TELEGRAM_CHAT_ID",
"TELEGRAM_ALERT_CHAT_ID",
"TELEGRAM_P0_CHAT_ID",
"TELEGRAM_SECURITY_CHAT_ID",
"OPENCLAW_TG_CHAT_ID",
"TG_CHAT_ID",
"AIDER_WATCH_TELEGRAM_CHAT_ID"
],
"relay": {
"enabled": true,
"host": "192.168.0.110",
"container": "stockplatform-v2-api-1"
},
"allowedCommandChatTitlePattern": "AwoooI SRE|AWOOOI SRE|SRE",
"autoIngestMonitoringAlerts": true,
"alertAllOperations": false,
"alertInfoEvents": false,
"alertOperatorCommands": true,
"alertSreCommandResults": true,
"dedupeMinutes": 30
},
"performance": {
"enabled": true,
"intervalMinutes": 1,
"loadPerCoreWarning": 0.9,
"loadPerCoreCritical": 1.5,
"memoryAvailablePercentCritical": 10,
"diskUsedPercentWarning": 90,
"diskUsedPercentCritical": 95,
"captureTopCpuOnWarning": true,
"topCpuTimeoutSeconds": 10,
"loadShedding": {
"enabled": true,
"actions": []
}
},
"selfHealth": {
"scheduledTasks": [
"Wooo-Agent99-Startup-Recovery",
"Wooo-Agent99-Heartbeat",
"Wooo-Agent99-Performance-Guard",
"Wooo-Agent99-Control-Loop",
"Wooo-Agent99-Telegram-Inbox",
"Wooo-Agent99-SRE-Alert-Inbox",
"Wooo-Agent99-SRE-Alert-Relay",
"Wooo-Agent99-Self-Health",
"Wooo-Agent99-Backup-Health"
],
"requiredHosts": [
"192.168.0.110",
"192.168.0.112",
"192.168.0.120",
"192.168.0.121",
"192.168.0.188"
],
"requireRecentTelegramDelivery": true,
"telegramDeliveryLookbackMinutes": 60,
"evidenceFreshness": [
{
"name": "performance_guard",
"pattern": "agent99-Perf-*.json",
"maxAgeMinutes": 5,
"required": true
},
{
"name": "heartbeat_status",
"pattern": "agent99-Status-*.json",
"maxAgeMinutes": 15,
"required": true
},
{
"name": "self_health",
"pattern": "agent99-SelfCheck-*.json",
"maxAgeMinutes": 15,
"required": false
},
{
"name": "backup_health",
"pattern": "agent99-BackupCheck-*.json",
"maxAgeMinutes": 30,
"required": false
},
{
"name": "startup_recovery",
"pattern": "agent99-Recover-*.json",
"maxAgeMinutes": 1440,
"required": false
},
{
"name": "telegram_inbox",
"pattern": "agent99-TelegramInbox-*.json",
"maxAgeMinutes": 15,
"required": false
},
{
"name": "sre_alert_inbox",
"pattern": "agent99-SreAlertInbox-*.json",
"maxAgeMinutes": 15,
"required": false
},
{
"name": "sre_alert_relay",
"pattern": "agent99-SreAlertRelay-start-*.json",
"maxAgeMinutes": 1440,
"required": false,
"runningTaskName": "Wooo-Agent99-SRE-Alert-Relay"
}
]
},
"backupHealth": {
"host": "192.168.0.110",
"targets": [],
"fileChecks": [],
"cronPatterns": []
}
}