@@ -18,6 +18,7 @@ const (
1818 openclawConfigEnvName = "OPENCLAW_CONFIG_JSON"
1919 openclawConfigB64EnvName = "OPENCLAW_CONFIG_B64"
2020 openclawConfigFileEnvName = "OPENCLAW_CONFIG_FILE"
21+ openclawEyesReaction = "\U0001F440 "
2122)
2223
2324type channelInstallationConfigPayload struct {
@@ -148,6 +149,45 @@ func defaultOpenClawConfig() map[string]any {
148149 "headless" : true ,
149150 "executablePath" : "/usr/bin/chromium" ,
150151 },
152+ "messages" : defaultOpenClawMessagesConfig (),
153+ "mcp" : map [string ]any {
154+ "servers" : map [string ]any {
155+ "spritz-channel-actions" : map [string ]any {
156+ "command" : "node" ,
157+ "args" : []any {"/usr/local/bin/spritz-channel-actions-mcp.js" },
158+ "env" : map [string ]any {
159+ "SPRITZ_CHANNEL_ACTIONS_BASE_URL" : "${SPRITZ_CHANNEL_ACTIONS_BASE_URL}" ,
160+ "SPRITZ_CHANNEL_ACTIONS_TOKEN" : "${SPRITZ_CHANNEL_ACTIONS_TOKEN}" ,
161+ },
162+ },
163+ },
164+ },
165+ }
166+ }
167+
168+ func defaultOpenClawMessagesConfig () map [string ]any {
169+ statusEmojiConfig := map [string ]any {}
170+ for _ , state := range []string {
171+ "thinking" ,
172+ "tool" ,
173+ "coding" ,
174+ "web" ,
175+ "done" ,
176+ "error" ,
177+ "stallSoft" ,
178+ "stallHard" ,
179+ "compacting" ,
180+ } {
181+ statusEmojiConfig [state ] = openclawEyesReaction
182+ }
183+ return map [string ]any {
184+ "ackReaction" : openclawEyesReaction ,
185+ "ackReactionScope" : "group-all" ,
186+ "removeAckAfterReply" : true ,
187+ "statusReactions" : map [string ]any {
188+ "enabled" : true ,
189+ "emojis" : statusEmojiConfig ,
190+ },
151191 }
152192}
153193
0 commit comments