forked from HKUDS/nanobot
-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathCONFIG_PROFILE_PROD.json
More file actions
116 lines (116 loc) · 3.1 KB
/
CONFIG_PROFILE_PROD.json
File metadata and controls
116 lines (116 loc) · 3.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
{
"agents": {
"defaults": {
"model": "anthropic/claude-opus-4-5",
"temperature": 0.5,
"maxToolIterations": 20,
"memoryWindow": 100,
"maxSubagents": 4
}
},
"providers": {
"openrouter": {
"apiKey": "REPLACE_WITH_PROD_OPENROUTER_KEY"
}
},
"hardware": {
"enabled": true,
"adapter": "ec600",
"host": "0.0.0.0",
"port": 18791,
"controlHost": "0.0.0.0",
"controlPort": 18792,
"controlMaxBodyBytes": 12582912,
"networkProfile": "cellular",
"applyProfileDefaults": true,
"strictStartup": true,
"heartbeatSeconds": 30,
"ttsAudioChunkBytes": 1600,
"audio": {
"enableVad": true,
"prebufferChunks": 4,
"jitterWindow": 12,
"vadSilenceChunks": 8
},
"observabilitySqlitePath": "~/.opencane/data/hardware/observability-prod.db",
"observabilityMaxSamples": 12000,
"auth": {
"enabled": true,
"token": "REPLACE_WITH_PROD_CONTROL_API_TOKEN"
},
"mqtt": {
"host": "REPLACE_WITH_PROD_MQTT_HOST",
"port": 8883,
"username": "REPLACE_WITH_PROD_MQTT_USERNAME",
"password": "REPLACE_WITH_PROD_MQTT_PASSWORD",
"clientId": "opencane-hardware-prod",
"keepaliveSeconds": 60,
"reconnectMinSeconds": 3,
"reconnectMaxSeconds": 90,
"qosControl": 1,
"qosAudio": 0,
"upControlTopic": "device/+/up/control",
"upAudioTopic": "device/+/up/audio",
"downControlTopicTemplate": "device/{device_id}/down/control",
"downAudioTopicTemplate": "device/{device_id}/down/audio",
"replayEnabled": true,
"controlReplayWindow": 100,
"offlineControlBuffer": 200,
"heartbeatTopic": "opencane/hardware/heartbeat",
"heartbeatIntervalSeconds": 30,
"tlsEnabled": true
}
},
"vision": {
"enabled": true
},
"lifelog": {
"enabled": true,
"sqlitePath": "~/.opencane/data/lifelog/lifelog-prod.db",
"chromaPersistDir": "~/.opencane/data/lifelog/chroma-prod",
"imageAssetDir": "~/.opencane/data/lifelog/images-prod",
"imageAssetMaxFiles": 50000,
"ingestQueueMaxSize": 256,
"ingestWorkers": 4,
"ingestOverflowPolicy": "wait",
"ingestEnqueueTimeoutMs": 1500,
"maxTimelineItems": 500
},
"digitalTask": {
"enabled": true,
"sqlitePath": "~/.opencane/data/digital_task/tasks-prod.db",
"defaultTimeoutSeconds": 180,
"maxConcurrentTasks": 4,
"statusRetryCount": 5,
"statusRetryBackoffMs": 800
},
"safety": {
"enabled": true,
"lowConfidenceThreshold": 0.6,
"maxOutputChars": 280,
"prependCautionForRisk": true,
"semanticGuardEnabled": true,
"directionalConfidenceThreshold": 0.9
},
"interaction": {
"enabled": true,
"emotionEnabled": true,
"proactiveEnabled": true,
"silentEnabled": true,
"lowConfidenceThreshold": 0.45,
"highRiskLevels": [
"P0",
"P1"
],
"proactiveSources": [
"vision_reply"
],
"silentSources": [
"task_update"
],
"quietHoursEnabled": true,
"quietHoursStartHour": 23,
"quietHoursEndHour": 7,
"suppressLowPriorityInQuietHours": true
}
}