2026-01-23 11:07:05 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-23 11:07:06 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-23 11:07:06 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-23 11:07:06 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-23 11:07:06 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
⚡️ Bolt app is running!
2026-01-23 11:10:03 - __main__ - INFO - [05e83e69] 📥 ShellBot received: pwd;whoami;ls
2026-01-23 11:10:04 - slack_bot.dispatcher - INFO - [05e83e69] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 11:10:04 - slack_bot.dispatcher - INFO - [05e83e69] Calling Gemini for initial response...
2026-01-23 11:10:04 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are Butler, a personal health assistant for tracking and analyzing health data.\n\nYou help the user manage:\n- Sleep quality and patterns (from Garmin watch)\n- Exercise data: steps, activities, heart rate\n- Diet logs: meals, supplements, fasting modes (OMAD, PSMF)\n- Diet logs: meals, supplements, fasting modes (OMAD, PSMF)\n- Body feelings and symptoms\n\nGuidelines:\n- **DATA INTEGRITY IS PARAMOUNT**: Never hallucinate or invent data. If a tool returns \"No data found\", YOU MUST SAY \"I cannot find data for this date\". Do NOT guess numbers.\n- **VISION & IMAGES**: When analyzing images (e.g., food logs), if the image is unclear or unreadable, say \"I cannot identify the food in this image\". Do NOT guess ingredients you do not see.\n- Be concise and data-driven\n- When the user wants to log something (diet, supplement, etc), use the appropriate tool\n- When asked about health data, retrieve it first befo...
2026-01-23 11:10:08 - slack_bot.dispatcher - INFO - [05e83e69] Gemini response in 4.44s: 0 chars, 1 tools
2026-01-23 11:10:08 - slack_bot.dispatcher - INFO - [05e83e69] Executing 1 tools
2026-01-23 11:10:08 - slack_bot.dispatcher - INFO - [05e83e69] Tool: execute_shell Args: {'command': 'pwd;whoami;ls'}
2026-01-23 11:10:08 - slack_bot.shell.manager - INFO - Creating new ShellSession for channel D0AAG5UKRC2
2026-01-23 11:10:10 - slack_bot.tools.shell_tool - INFO - Executing shell command in D0AAG5UKRC2: pwd;whoami;ls
2026-01-23 11:10:16 - slack_bot.dispatcher - INFO - [05e83e69] ✓ execute_shell finished in 7.12s
2026-01-23 11:10:16 - slack_bot.dispatcher - INFO - [05e83e69] Requesting final analysis...
2026-01-23 11:10:16 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are Butler, a personal health assistant for tracking and analyzing health data.\n\nYou help the user manage:\n- Sleep quality and patterns (from Garmin watch)\n- Exercise data: steps, activities, heart rate\n- Diet logs: meals, supplements, fasting modes (OMAD, PSMF)\n- Diet logs: meals, supplements, fasting modes (OMAD, PSMF)\n- Body feelings and symptoms\n\nGuidelines:\n- **DATA INTEGRITY IS PARAMOUNT**: Never hallucinate or invent data. If a tool returns \"No data found\", YOU MUST SAY \"I cannot find data for this date\". Do NOT guess numbers.\n- **VISION & IMAGES**: When analyzing images (e.g., food logs), if the image is unclear or unreadable, say \"I cannot identify the food in this image\". Do NOT guess ingredients you do not see.\n- Be concise and data-driven\n- When the user wants to log something (diet, supplement, etc), use the appropriate tool\n- When asked about health data, retrieve it first befo...
2026-01-23 11:10:29 - slack_bot.dispatcher - INFO - [05e83e69] Final analysis received in 13.45s
2026-01-23 11:10:29 - slack_bot.dispatcher - INFO - Formatted text (len 300 -> 290)
2026-01-23 11:10:30 - slack_bot.dispatcher - INFO - [05e83e69] 📤 Message updated 1769137804.343769
2026-01-23 11:10:30 - slack_bot.dispatcher - INFO - [05e83e69] Dispatch completed in 25.66s
2026-01-23 11:17:21 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-23 11:17:22 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-23 11:17:22 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-23 11:17:22 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-23 11:17:22 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
⚡️ Bolt app is running!
2026-01-23 11:17:43 - __main__ - INFO - [405191fa] 📥 ShellBot received: pwd;cd ~;pwd
2026-01-23 11:17:44 - slack_bot.dispatcher - INFO - [405191fa] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 11:17:44 - slack_bot.dispatcher - INFO - [405191fa] Calling Gemini for initial response...
2026-01-23 11:17:44 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 11:17:47 - slack_bot.dispatcher - INFO - [405191fa] Gemini response in 2.92s: 0 chars, 1 tools
2026-01-23 11:17:47 - slack_bot.dispatcher - INFO - [405191fa] Executing 1 tools
2026-01-23 11:17:47 - slack_bot.dispatcher - INFO - [405191fa] Tool: execute_shell Args: {'command': 'pwd;cd ~;pwd'}
2026-01-23 11:17:47 - slack_bot.shell.manager - INFO - Creating new ShellSession for channel D0AAG5UKRC2
2026-01-23 11:17:49 - slack_bot.tools.shell_tool - INFO - Executing shell command in D0AAG5UKRC2: pwd;cd ~;pwd
2026-01-23 11:17:54 - slack_bot.dispatcher - INFO - [405191fa] ✓ execute_shell finished in 7.12s
2026-01-23 11:17:54 - slack_bot.dispatcher - INFO - [405191fa] Requesting final analysis...
2026-01-23 11:17:54 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 11:17:58 - slack_bot.dispatcher - INFO - [405191fa] Final analysis received in 4.73s
2026-01-23 11:17:58 - slack_bot.dispatcher - INFO - Formatted text (len 119 -> 119)
2026-01-23 11:17:59 - slack_bot.dispatcher - INFO - [405191fa] 📤 Message updated 1769138264.143189
2026-01-23 11:17:59 - slack_bot.dispatcher - INFO - [405191fa] Dispatch completed in 15.32s
2026-01-23 11:19:20 - __main__ - INFO - [9dc15cfb] 📥 ShellBot received: cpu和内存使用最多的进程有哪些
2026-01-23 11:19:21 - slack_bot.dispatcher - INFO - [9dc15cfb] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 11:19:21 - slack_bot.dispatcher - INFO - [9dc15cfb] Calling Gemini for initial response...
2026-01-23 11:19:21 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 11:19:22 - slack_bot.dispatcher - INFO - [9dc15cfb] Gemini response in 1.46s: 0 chars, 1 tools
2026-01-23 11:19:22 - slack_bot.dispatcher - INFO - [9dc15cfb] Executing 1 tools
2026-01-23 11:19:22 - slack_bot.dispatcher - INFO - [9dc15cfb] Tool: execute_shell Args: {'command': 'ps aux | sort -nrk 3,3 | head -n 5; echo "---"; ps aux | sort -nrk 4,4 | head -n 5'}
2026-01-23 11:19:22 - slack_bot.tools.shell_tool - INFO - Executing shell command in D0AAG5UKRC2: ps aux | sort -nrk 3,3 | head -n 5; echo "---"; ps aux | sort -nrk 4,4 | head -n 5
2026-01-23 11:19:27 - slack_bot.dispatcher - INFO - [9dc15cfb] ✓ execute_shell finished in 5.04s
2026-01-23 11:19:27 - slack_bot.dispatcher - INFO - [9dc15cfb] Requesting final analysis...
2026-01-23 11:19:27 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 11:19:30 - slack_bot.dispatcher - INFO - [9dc15cfb] Final analysis received in 3.16s
2026-01-23 11:19:30 - slack_bot.dispatcher - INFO - Formatted text (len 593 -> 563)
2026-01-23 11:19:30 - slack_bot.dispatcher - WARNING - Final response truncated from 3900 to 3900 chars
2026-01-23 11:19:31 - slack_bot.dispatcher - WARNING - [9dc15cfb] Update failed, posting new: The request to the Slack API failed. (url: https://slack.com/api/chat.update)
The server responded with: {'ok': False, 'error': 'msg_too_long'}
2026-01-23 11:19:31 - slack_bot.dispatcher - INFO - [9dc15cfb] Dispatch completed in 10.78s
2026-01-23 11:49:01 - __main__ - INFO - [7d7f8453] 📥 ShellBot received: 记录补剂 鱼油两颗、维生素D3K2、coq10
2026-01-23 11:49:02 - slack_bot.dispatcher - INFO - [7d7f8453] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 11:49:02 - slack_bot.dispatcher - INFO - [7d7f8453] Calling Gemini for initial response...
2026-01-23 11:49:02 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 11:49:12 - slack_bot.dispatcher - INFO - [7d7f8453] Gemini response in 10.61s: 0 chars, 1 tools
2026-01-23 11:49:12 - slack_bot.dispatcher - INFO - [7d7f8453] Executing 1 tools
2026-01-23 11:49:12 - slack_bot.dispatcher - INFO - [7d7f8453] Tool: execute_shell Args: {'command': 'cd /Users/lili/workspace/bulter; ls -R data/ health/'}
2026-01-23 11:49:12 - slack_bot.tools.shell_tool - INFO - Executing shell command in D0AAG5UKRC2: cd /Users/lili/workspace/bulter; ls -R data/ health/
2026-01-23 11:49:17 - slack_bot.dispatcher - INFO - [7d7f8453] ✓ execute_shell finished in 5.03s
2026-01-23 11:49:17 - slack_bot.dispatcher - INFO - [7d7f8453] Requesting final analysis...
2026-01-23 11:49:17 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 11:49:24 - slack_bot.dispatcher - INFO - [7d7f8453] Final analysis received in 6.65s
2026-01-23 11:49:24 - slack_bot.dispatcher - INFO - Formatted text (len 1186 -> 1180)
2026-01-23 11:49:24 - slack_bot.dispatcher - WARNING - Final response truncated from 3900 to 3900 chars
2026-01-23 11:49:25 - slack_bot.dispatcher - INFO - [7d7f8453] 📤 Message updated 1769140142.107459
2026-01-23 11:49:25 - slack_bot.dispatcher - INFO - [7d7f8453] Dispatch completed in 22.92s
2026-01-23 12:38:11 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-23 12:38:11 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-23 12:38:12 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-23 12:38:12 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-23 12:38:12 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-23 12:38:12 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
⚡️ Bolt app is running!
2026-01-23 12:41:00 - __main__ - INFO - [2f119188] 📥 ShellBot received: ### gmode check ###
2026-01-23 12:41:00 - __main__ - WARNING - [2f119188] 🚨 Received FAILSAFE cmd: check
2026-01-23 12:43:12 - __main__ - INFO - [45461511] 📥 ShellBot received: 查看tmux的code会话的内容
2026-01-23 12:43:12 - slack_bot.dispatcher - INFO - [45461511] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 12:43:12 - slack_bot.dispatcher - INFO - [45461511] Calling Gemini for initial response...
2026-01-23 12:43:12 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 12:43:14 - slack_bot.dispatcher - INFO - [45461511] Gemini response in 2.02s: 0 chars, 1 tools
2026-01-23 12:43:14 - slack_bot.dispatcher - INFO - [45461511] Executing 1 tools
2026-01-23 12:43:14 - slack_bot.dispatcher - INFO - [45461511] Tool: execute_shell Args: {'command': 'tmux ls'}
2026-01-23 12:43:14 - slack_bot.shell.manager - INFO - Creating new ShellSession for channel D0AAG5UKRC2
2026-01-23 12:43:19 - slack_bot.dispatcher - INFO - [45461511] ✓ execute_shell finished in 4.15s
2026-01-23 12:43:19 - slack_bot.dispatcher - INFO - [45461511] Requesting final analysis...
2026-01-23 12:43:19 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 12:43:24 - slack_bot.dispatcher - INFO - [45461511] Final analysis received in 5.13s
2026-01-23 12:43:24 - slack_bot.dispatcher - INFO - Formatted text (len 878 -> 878)
2026-01-23 12:43:24 - slack_bot.dispatcher - INFO - [45461511] 📤 Message updated 1769143392.790529
2026-01-23 12:43:24 - slack_bot.dispatcher - INFO - [45461511] Dispatch completed in 11.88s
2026-01-23 12:45:20 - __main__ - INFO - [20cb1ae0] 📥 ShellBot received: 让tmux的code session执行claude，并且要以无需确认的模式进入，命令行应该是--dang... 开头的
2026-01-23 12:45:21 - slack_bot.dispatcher - INFO - [20cb1ae0] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 12:45:21 - slack_bot.dispatcher - INFO - [20cb1ae0] Calling Gemini for initial response...
2026-01-23 12:45:21 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 12:45:34 - slack_bot.dispatcher - INFO - [20cb1ae0] Gemini response in 12.84s: 2499 chars, 0 tools
2026-01-23 12:45:34 - slack_bot.dispatcher - INFO - Formatted text (len 2499 -> 2493)
2026-01-23 12:45:34 - slack_bot.dispatcher - INFO - [20cb1ae0] 📤 Message updated 1769143521.208229
2026-01-23 12:45:34 - slack_bot.dispatcher - INFO - [20cb1ae0] Dispatch completed in 13.49s
2026-01-23 12:50:38 - __main__ - INFO - [53a4dc7e] 📥 ShellBot received: /exit
2026-01-23 12:50:39 - slack_bot.dispatcher - INFO - [53a4dc7e] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 12:50:39 - slack_bot.dispatcher - INFO - [53a4dc7e] Calling Gemini for initial response...
2026-01-23 12:50:39 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 12:50:42 - slack_bot.dispatcher - INFO - [53a4dc7e] Gemini response in 3.66s: 125 chars, 0 tools
2026-01-23 12:50:42 - slack_bot.dispatcher - INFO - Formatted text (len 125 -> 125)
2026-01-23 12:50:43 - slack_bot.dispatcher - INFO - [53a4dc7e] 📤 Message updated 1769143839.041189
2026-01-23 12:50:43 - slack_bot.dispatcher - INFO - [53a4dc7e] Dispatch completed in 4.13s
2026-01-23 12:51:28 - __main__ - INFO - [e8575ada] 📥 ShellBot received: 给tmux会话code发送"/exit"
2026-01-23 12:51:29 - slack_bot.dispatcher - INFO - [e8575ada] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 12:51:29 - slack_bot.dispatcher - INFO - [e8575ada] Calling Gemini for initial response...
2026-01-23 12:51:29 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 12:51:31 - slack_bot.dispatcher - INFO - [e8575ada] Gemini response in 2.20s: 0 chars, 1 tools
2026-01-23 12:51:31 - slack_bot.dispatcher - INFO - [e8575ada] Executing 1 tools
2026-01-23 12:51:31 - slack_bot.dispatcher - INFO - [e8575ada] Tool: execute_shell Args: {'command': 'tmux send-keys -t code "/exit" C-m && sleep 1 && tmux capture-pane -pt code'}
2026-01-23 12:51:33 - slack_bot.dispatcher - INFO - [e8575ada] ✓ execute_shell finished in 2.08s
2026-01-23 12:51:33 - slack_bot.dispatcher - INFO - [e8575ada] Requesting final analysis...
2026-01-23 12:51:33 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 12:51:38 - slack_bot.dispatcher - INFO - [e8575ada] Final analysis received in 4.61s
2026-01-23 12:51:38 - slack_bot.dispatcher - INFO - Formatted text (len 103 -> 103)
2026-01-23 12:51:38 - slack_bot.dispatcher - INFO - [e8575ada] 📤 Message updated 1769143889.066309
2026-01-23 12:51:38 - slack_bot.dispatcher - INFO - [e8575ada] Dispatch completed in 9.41s
2026-01-23 12:55:00 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-23 12:55:00 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-23 12:55:01 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-23 12:55:01 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-23 12:55:01 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-23 12:55:01 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-01-23 12:59:13 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-23 12:59:13 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-23 12:59:14 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-23 12:59:14 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-23 12:59:14 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-23 12:59:14 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-01-23 13:02:04 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-23 13:02:04 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-23 13:02:05 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-23 13:02:05 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-23 13:02:05 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-23 13:02:05 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-01-23 13:04:03 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-23 13:04:03 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-23 13:04:04 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-23 13:04:04 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-23 13:04:04 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-23 13:04:04 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
⚡️ Bolt app is running!
2026-01-23 13:10:10 - __main__ - INFO - [fa3a9885] 📥 ShellBot received: 给tmux的code会话发送一段话并回车：“现在我已经基本上完成了三个主要模块health, obsidian和shell，请帮我全面审查一下整体结构和逻辑的清晰程度，也尝试找到一些优化空间和未来可以执行的工作。先给出规划，不要写代码 ”
2026-01-23 13:10:10 - slack_bot.dispatcher - INFO - [fa3a9885] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 13:10:10 - slack_bot.dispatcher - INFO - [fa3a9885] Calling Gemini for initial response...
2026-01-23 13:10:10 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 13:10:14 - slack_bot.dispatcher - INFO - [fa3a9885] Gemini response in 4.16s: 0 chars, 1 tools
2026-01-23 13:10:14 - slack_bot.dispatcher - INFO - [fa3a9885] Executing 1 tools
2026-01-23 13:10:14 - slack_bot.dispatcher - INFO - [fa3a9885] Tool: execute_shell Args: {'command': 'tmux send-keys -t code "现在我已经基本上完成了三个主要模块health, obsidian和shell，请帮我全面审查一下整体结构和逻辑的清晰程度，也尝试找到一些优化空间和未来可以执行的工作。先给出规划，不要写代码" C-m && sleep 2 && tmux capture-pane -pt code'}
2026-01-23 13:10:14 - slack_bot.shell.manager - INFO - Creating new ShellSession for channel D0AAG5UKRC2
2026-01-23 13:10:19 - slack_bot.dispatcher - INFO - [fa3a9885] ✓ execute_shell finished in 4.12s
2026-01-23 13:10:19 - slack_bot.dispatcher - INFO - [fa3a9885] Requesting final analysis...
2026-01-23 13:10:19 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 13:10:26 - slack_bot.dispatcher - INFO - [fa3a9885] Final analysis received in 7.40s
2026-01-23 13:10:26 - slack_bot.dispatcher - INFO - Formatted text (len 325 -> 321)
2026-01-23 13:10:26 - slack_bot.dispatcher - INFO - [fa3a9885] 📤 Message updated 1769145010.639709
2026-01-23 13:10:26 - slack_bot.dispatcher - INFO - [fa3a9885] Dispatch completed in 16.24s
2026-01-23 13:11:45 - __main__ - INFO - [1b778f7a] 📥 ShellBot received: 查看现在tmux code会话里的状态
2026-01-23 13:11:45 - slack_bot.dispatcher - INFO - [1b778f7a] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 13:11:45 - slack_bot.dispatcher - INFO - [1b778f7a] Calling Gemini for initial response...
2026-01-23 13:11:45 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 13:11:49 - slack_bot.dispatcher - INFO - [1b778f7a] Gemini response in 3.23s: 0 chars, 1 tools
2026-01-23 13:11:49 - slack_bot.dispatcher - INFO - [1b778f7a] Executing 1 tools
2026-01-23 13:11:49 - slack_bot.dispatcher - INFO - [1b778f7a] Tool: execute_shell Args: {'command': 'tmux capture-pane -pt code'}
2026-01-23 13:11:51 - slack_bot.dispatcher - INFO - [1b778f7a] ✓ execute_shell finished in 2.01s
2026-01-23 13:11:51 - slack_bot.dispatcher - INFO - [1b778f7a] Requesting final analysis...
2026-01-23 13:11:51 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 13:11:57 - slack_bot.dispatcher - INFO - [1b778f7a] Final analysis received in 6.72s
2026-01-23 13:11:57 - slack_bot.dispatcher - INFO - Formatted text (len 303 -> 295)
2026-01-23 13:11:58 - slack_bot.dispatcher - WARNING - [1b778f7a] Update failed, posting new: The request to the Slack API failed. (url: https://slack.com/api/chat.update)
The server responded with: {'ok': False, 'error': 'msg_too_long'}
2026-01-23 13:11:59 - slack_bot.dispatcher - INFO - [1b778f7a] 📤 Continuation message posted
2026-01-23 13:12:00 - slack_bot.dispatcher - INFO - [1b778f7a] Dispatch completed in 14.22s
2026-01-23 13:13:46 - __main__ - INFO - [d592c16d] 📥 ShellBot received: 看起来没有在执行，请发送一个回车给到会话
2026-01-23 13:13:46 - slack_bot.dispatcher - INFO - [d592c16d] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 13:13:46 - slack_bot.dispatcher - INFO - [d592c16d] Calling Gemini for initial response...
2026-01-23 13:13:46 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 13:13:51 - slack_bot.dispatcher - INFO - [d592c16d] Gemini response in 4.55s: 0 chars, 1 tools
2026-01-23 13:13:51 - slack_bot.dispatcher - INFO - [d592c16d] Executing 1 tools
2026-01-23 13:13:51 - slack_bot.dispatcher - INFO - [d592c16d] Tool: execute_shell Args: {'command': 'tmux send-keys -t code C-m && sleep 2 && tmux capture-pane -pt code'}
2026-01-23 13:13:53 - slack_bot.dispatcher - INFO - [d592c16d] ✓ execute_shell finished in 2.04s
2026-01-23 13:13:53 - slack_bot.dispatcher - INFO - [d592c16d] Requesting final analysis...
2026-01-23 13:13:53 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n5. **No Health Data**: You do NOT have access to health data, di...
2026-01-23 13:13:59 - slack_bot.dispatcher - INFO - [d592c16d] Final analysis received in 5.85s
2026-01-23 13:13:59 - slack_bot.dispatcher - INFO - Formatted text (len 491 -> 477)
2026-01-23 13:13:59 - slack_bot.dispatcher - INFO - [d592c16d] 📤 Message updated 1769145226.524829
2026-01-23 13:13:59 - slack_bot.dispatcher - INFO - [d592c16d] Dispatch completed in 13.05s
2026-01-23 13:24:07 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-23 13:24:07 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-23 13:24:08 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-23 13:24:08 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-23 13:24:08 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-23 13:24:08 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
⚡️ Bolt app is running!
2026-01-23 13:25:44 - __main__ - INFO - [e68a96ab] 📥 ShellBot received: 看看claude现在在干什么
2026-01-23 13:25:45 - slack_bot.dispatcher - INFO - [e68a96ab] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 13:25:45 - slack_bot.dispatcher - INFO - [e68a96ab] Calling Gemini for initial response...
2026-01-23 13:25:45 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n6. **No Hallucinations**: You must be 100% faithful to the termi...
2026-01-23 13:25:52 - slack_bot.dispatcher - INFO - [e68a96ab] Gemini response in 6.81s: 1831 chars, 0 tools
2026-01-23 13:25:52 - slack_bot.dispatcher - INFO - Formatted text (len 1831 -> 1829)
2026-01-23 13:25:52 - slack_bot.dispatcher - INFO - [e68a96ab] 📤 Message updated 1769145945.132099
2026-01-23 13:25:52 - slack_bot.dispatcher - INFO - [e68a96ab] Dispatch completed in 7.46s
2026-01-23 13:36:35 - __main__ - INFO - [8a076e12] 📥 ShellBot received: 现在我所使用的gemini模型是什么
2026-01-23 13:36:36 - slack_bot.dispatcher - INFO - [8a076e12] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 13:36:36 - slack_bot.dispatcher - INFO - [8a076e12] Calling Gemini for initial response...
2026-01-23 13:36:36 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n6. **No Hallucinations**: You must be 100% faithful to the termi...
2026-01-23 13:36:40 - slack_bot.dispatcher - INFO - [8a076e12] Gemini response in 4.74s: 0 chars, 1 tools
2026-01-23 13:36:40 - slack_bot.dispatcher - INFO - [8a076e12] Executing 1 tools
2026-01-23 13:36:40 - slack_bot.dispatcher - INFO - [8a076e12] Tool: execute_shell Args: {'command': 'env | grep -i gemini; grep -r "model" . | head -n 20'}
2026-01-23 13:36:40 - slack_bot.shell.manager - INFO - Creating new ShellSession for channel D0AAG5UKRC2
2026-01-23 13:36:44 - slack_bot.dispatcher - INFO - [8a076e12] ✓ execute_shell finished in 4.12s
2026-01-23 13:36:44 - slack_bot.dispatcher - INFO - [8a076e12] Requesting final analysis...
2026-01-23 13:36:44 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n6. **No Hallucinations**: You must be 100% faithful to the termi...
2026-01-23 13:36:47 - slack_bot.dispatcher - INFO - [8a076e12] Final analysis received in 3.00s
2026-01-23 13:36:47 - slack_bot.dispatcher - INFO - Formatted text (len 241 -> 233)
2026-01-23 13:36:48 - slack_bot.dispatcher - INFO - [8a076e12] 📤 Message updated 1769146596.024399
2026-01-23 13:36:48 - slack_bot.dispatcher - INFO - [8a076e12] Dispatch completed in 12.42s
2026-01-23 13:37:47 - __main__ - INFO - [70ef12f6] 📥 ShellBot received: ### gmode api ###
2026-01-23 13:37:47 - __main__ - WARNING - [70ef12f6] 🚨 Received FAILSAFE cmd: api
2026-01-23 13:37:49 - __main__ - WARNING - RESTARTING PROCESS via os.execv...
2026-01-23 13:37:50 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-23 13:37:50 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-2.5-flash
2026-01-23 13:37:51 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-23 13:37:51 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-2.5-flash
2026-01-23 13:37:51 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-23 13:37:51 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
⚡️ Bolt app is running!
2026-01-23 13:38:11 - __main__ - INFO - [c0a977a7] 📥 ShellBot received: 现在我所使用的gemini模型是什么
2026-01-23 13:38:11 - slack_bot.dispatcher - INFO - [c0a977a7] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 13:38:11 - slack_bot.dispatcher - INFO - [c0a977a7] Calling Gemini for initial response...
2026-01-23 13:38:11 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-2.5-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n6. **No Hallucinations**: You must be 100% faithful to the ter...
2026-01-23 13:38:14 - slack_bot.llm.gemini - ERROR - OpenAI API Request Failed: Token error: All accounts are currently limited. Please wait 13s.
2026-01-23 13:38:14 - slack_bot.llm.gemini - ERROR - Dumped failed payload to /Users/lili/workspace/bulter/debug_failed_payload.json
2026-01-23 13:38:14 - slack_bot.dispatcher - INFO - [c0a977a7] Gemini response in 2.45s: 84 chars, 0 tools
2026-01-23 13:38:14 - slack_bot.dispatcher - INFO - Formatted text (len 84 -> 84)
2026-01-23 13:38:14 - slack_bot.dispatcher - INFO - [c0a977a7] 📤 Message updated 1769146691.546529
2026-01-23 13:38:14 - slack_bot.dispatcher - INFO - [c0a977a7] Dispatch completed in 2.97s
2026-01-23 13:38:31 - __main__ - INFO - [91131d61] 📥 ShellBot received: ### gmode openrouter ###
2026-01-23 13:38:31 - __main__ - WARNING - [91131d61] 🚨 Received FAILSAFE cmd: openrouter
2026-01-23 13:38:32 - __main__ - WARNING - RESTARTING PROCESS via os.execv...
2026-01-23 13:38:33 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-23 13:38:33 - __main__ - INFO - Starting Shell Bot with Gemini model: google/gemini-3-flash-preview
2026-01-23 13:38:34 - slack_bot.llm.gemini - INFO - Using OpenRouter: https://openrouter.ai/api
2026-01-23 13:38:34 - slack_bot.llm.gemini - INFO - Initialized Gemini model: google/gemini-3-flash-preview
2026-01-23 13:38:34 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-23 13:38:34 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
⚡️ Bolt app is running!
2026-01-23 13:38:41 - __main__ - INFO - [07ad41a9] 📥 ShellBot received: 现在我所使用的gemini模型是什么
2026-01-23 13:38:42 - slack_bot.dispatcher - INFO - [07ad41a9] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 13:38:42 - slack_bot.dispatcher - INFO - [07ad41a9] Calling Gemini for initial response...
2026-01-23 13:38:42 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "google/gemini-3-flash-preview", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n6. **No Hallucinations**: You must be 100% faithf...
2026-01-23 13:38:45 - slack_bot.dispatcher - INFO - [07ad41a9] Gemini response in 2.66s: 0 chars, 1 tools
2026-01-23 13:38:45 - slack_bot.dispatcher - INFO - [07ad41a9] Executing 1 tools
2026-01-23 13:38:45 - slack_bot.dispatcher - INFO - [07ad41a9] Tool: execute_shell Args: {'command': 'echo $GEMINI_MODEL; cat .gemini.current.env 2>/dev/null'}
2026-01-23 13:38:45 - slack_bot.shell.manager - INFO - Creating new ShellSession for channel D0AAG5UKRC2
2026-01-23 13:38:49 - slack_bot.dispatcher - INFO - [07ad41a9] ✓ execute_shell finished in 4.19s
2026-01-23 13:38:49 - slack_bot.dispatcher - INFO - [07ad41a9] Requesting final analysis...
2026-01-23 13:38:49 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "google/gemini-3-flash-preview", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n6. **No Hallucinations**: You must be 100% faithf...
2026-01-23 13:38:51 - slack_bot.dispatcher - INFO - [07ad41a9] Final analysis received in 1.80s
2026-01-23 13:38:51 - slack_bot.dispatcher - INFO - Formatted text (len 216 -> 212)
2026-01-23 13:38:51 - slack_bot.dispatcher - INFO - [07ad41a9] 📤 Message updated 1769146722.328709
2026-01-23 13:38:51 - slack_bot.dispatcher - INFO - [07ad41a9] Dispatch completed in 9.17s
2026-01-23 13:39:33 - __main__ - INFO - [85d304f8] 📥 ShellBot received: ### gmode local ###
2026-01-23 13:39:33 - __main__ - WARNING - [85d304f8] 🚨 Received FAILSAFE cmd: local
2026-01-23 13:39:35 - __main__ - WARNING - RESTARTING PROCESS via os.execv...
2026-01-23 13:39:36 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-23 13:39:36 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-23 13:39:37 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-23 13:39:37 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-23 13:39:37 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-23 13:39:37 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
⚡️ Bolt app is running!
2026-01-23 13:40:51 - __main__ - INFO - [af0050ac] 📥 ShellBot received: 看看我的~/workspace下面有哪些项目
2026-01-23 13:40:52 - slack_bot.dispatcher - INFO - [af0050ac] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 13:40:52 - slack_bot.dispatcher - INFO - [af0050ac] Calling Gemini for initial response...
2026-01-23 13:40:52 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n6. **No Hallucinations**: You must be 100% faithful to the termi...
2026-01-23 13:40:57 - slack_bot.dispatcher - INFO - [af0050ac] Gemini response in 5.27s: 0 chars, 1 tools
2026-01-23 13:40:57 - slack_bot.dispatcher - INFO - [af0050ac] Executing 1 tools
2026-01-23 13:40:57 - slack_bot.dispatcher - INFO - [af0050ac] Tool: execute_shell Args: {'command': 'ls -F ~/workspace'}
2026-01-23 13:40:57 - slack_bot.shell.manager - INFO - Creating new ShellSession for channel D0AAG5UKRC2
2026-01-23 13:41:01 - slack_bot.dispatcher - INFO - [af0050ac] ✓ execute_shell finished in 4.09s
2026-01-23 13:41:01 - slack_bot.dispatcher - INFO - [af0050ac] Requesting final analysis...
2026-01-23 13:41:01 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n6. **No Hallucinations**: You must be 100% faithful to the termi...
2026-01-23 13:41:06 - slack_bot.dispatcher - INFO - [af0050ac] Final analysis received in 4.49s
2026-01-23 13:41:06 - slack_bot.dispatcher - INFO - Formatted text (len 605 -> 593)
2026-01-23 13:41:06 - slack_bot.dispatcher - INFO - [af0050ac] 📤 Message updated 1769146852.403279
2026-01-23 13:41:06 - slack_bot.dispatcher - INFO - [af0050ac] Dispatch completed in 14.51s
2026-01-23 13:43:53 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-23 13:43:53 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-23 13:43:54 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-23 13:43:54 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-23 13:43:54 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-23 13:43:54 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
⚡️ Bolt app is running!
2026-01-23 13:44:50 - __main__ - INFO - [cd4e112f] 📥 ShellBot received: 在~/Downloads下面有多少是最近一周下载的文档
2026-01-23 13:44:51 - slack_bot.dispatcher - INFO - [cd4e112f] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 13:44:51 - slack_bot.dispatcher - INFO - [cd4e112f] Calling Gemini for initial response...
2026-01-23 13:44:51 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n6. **No Hallucinations**: You must be 100% faithful to the termi...
2026-01-23 13:44:55 - slack_bot.dispatcher - INFO - [cd4e112f] Gemini response in 4.19s: 0 chars, 1 tools
2026-01-23 13:44:55 - slack_bot.dispatcher - INFO - [cd4e112f] Executing 1 tools
2026-01-23 13:44:55 - slack_bot.dispatcher - INFO - [cd4e112f] Tool: execute_shell Args: {'command': 'find ~/Downloads -type f -mtime -7 | wc -l'}
2026-01-23 13:44:55 - slack_bot.shell.manager - INFO - Creating new ShellSession for channel D0AAG5UKRC2
2026-01-23 13:44:59 - slack_bot.dispatcher - INFO - [cd4e112f] ✓ execute_shell finished in 4.09s
2026-01-23 13:44:59 - slack_bot.dispatcher - INFO - [cd4e112f] Requesting final analysis...
2026-01-23 13:44:59 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n6. **No Hallucinations**: You must be 100% faithful to the termi...
2026-01-23 13:45:02 - slack_bot.dispatcher - INFO - [cd4e112f] Final analysis received in 2.50s
2026-01-23 13:45:02 - slack_bot.dispatcher - INFO - Formatted text (len 113 -> 111)
2026-01-23 13:45:02 - slack_bot.dispatcher - INFO - [cd4e112f] 📤 Message updated 1769147091.197329
2026-01-23 13:45:02 - slack_bot.dispatcher - INFO - [cd4e112f] Dispatch completed in 11.28s
2026-01-23 13:46:41 - __main__ - INFO - [3d11eab9] 📥 ShellBot received: 帮我把这下面的 dmg和iso格式的文件删除，一定要小心，别操作别的目录了
2026-01-23 13:46:41 - slack_bot.dispatcher - INFO - [3d11eab9] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 13:46:41 - slack_bot.dispatcher - INFO - [3d11eab9] Calling Gemini for initial response...
2026-01-23 13:46:41 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n6. **No Hallucinations**: You must be 100% faithful to the termi...
2026-01-23 13:46:50 - slack_bot.dispatcher - INFO - [3d11eab9] Gemini response in 8.87s: 2102 chars, 0 tools
2026-01-23 13:46:50 - slack_bot.dispatcher - INFO - Formatted text (len 2102 -> 2098)
2026-01-23 13:46:51 - slack_bot.dispatcher - INFO - [3d11eab9] 📤 Message updated 1769147201.757989
2026-01-23 13:46:51 - slack_bot.dispatcher - INFO - [3d11eab9] Dispatch completed in 9.48s
2026-01-23 13:47:16 - __main__ - INFO - [e54cc09d] 📥 ShellBot received: 1
2026-01-23 13:47:17 - slack_bot.dispatcher - INFO - [e54cc09d] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-23 13:47:17 - slack_bot.dispatcher - INFO - [e54cc09d] Calling Gemini for initial response...
2026-01-23 13:47:17 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n6. **No Hallucinations**: You must be 100% faithful to the termi...
2026-01-23 13:47:20 - slack_bot.dispatcher - INFO - [e54cc09d] Gemini response in 2.95s: 368 chars, 0 tools
2026-01-23 13:47:20 - slack_bot.dispatcher - INFO - Formatted text (len 368 -> 368)
2026-01-23 13:47:20 - slack_bot.dispatcher - INFO - [e54cc09d] 📤 Message updated 1769147237.341039
2026-01-23 13:47:20 - slack_bot.dispatcher - INFO - [e54cc09d] Dispatch completed in 3.47s
Failed to check the state of sock (session id: 00ccb8ff-25c9-446e-96ec-e283e2ad6aa1, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 00ccb8ff-25c9-446e-96ec-e283e2ad6aa1, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 00ccb8ff-25c9-446e-96ec-e283e2ad6aa1, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 00ccb8ff-25c9-446e-96ec-e283e2ad6aa1, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 00ccb8ff-25c9-446e-96ec-e283e2ad6aa1, error: SSLError, message: [SSL: BAD_LENGTH] bad length (_ssl.c:2406))
Failed to establish a connection (session id: 714a0296-4123-47bd-8df9-e2a52d6f338a, error: _ssl.c:983: The handshake operation timed out)
on_error invoked (session id: 3b43cfbd-ec12-42ad-8b29-698eb3d17250, error: TimeoutError, message: _ssl.c:983: The handshake operation timed out)
2026-01-28 15:42:54 - __main__ - INFO - [7208b260] 📥 ShellBot received: 查看本地磁盘还有多少可用空间
2026-01-28 15:42:54 - slack_bot.dispatcher - INFO - [7208b260] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-28 15:42:54 - slack_bot.dispatcher - INFO - [7208b260] Calling Gemini for initial response...
2026-01-28 15:42:54 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n6. **No Hallucinations**: You must be 100% faithful to the termi...
2026-01-28 15:43:00 - slack_bot.dispatcher - INFO - [7208b260] Gemini response in 5.82s: 0 chars, 1 tools
2026-01-28 15:43:00 - slack_bot.dispatcher - INFO - [7208b260] Executing 1 tools
2026-01-28 15:43:00 - slack_bot.dispatcher - INFO - [7208b260] Tool: execute_shell Args: {'command': 'df -h /'}
2026-01-28 15:43:02 - slack_bot.dispatcher - INFO - [7208b260] ✓ execute_shell finished in 2.02s
2026-01-28 15:43:02 - slack_bot.dispatcher - INFO - [7208b260] Requesting final analysis...
2026-01-28 15:43:02 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n6. **No Hallucinations**: You must be 100% faithful to the termi...
2026-01-28 15:43:10 - slack_bot.dispatcher - INFO - [7208b260] Final analysis received in 7.86s
2026-01-28 15:43:10 - slack_bot.dispatcher - INFO - Formatted text (len 111 -> 109)
2026-01-28 15:43:11 - slack_bot.dispatcher - INFO - [7208b260] 📤 Message updated 1769586174.777719
2026-01-28 15:43:11 - slack_bot.dispatcher - INFO - [7208b260] Dispatch completed in 16.27s
2026-01-28 15:43:46 - __main__ - INFO - [7384a5ee] 📥 ShellBot received: 怎么找到特别大的文件呢，然后告诉我路径，我手工去删除掉它
2026-01-28 15:43:46 - slack_bot.dispatcher - INFO - [7384a5ee] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-28 15:43:46 - slack_bot.dispatcher - INFO - [7384a5ee] Calling Gemini for initial response...
2026-01-28 15:43:46 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n6. **No Hallucinations**: You must be 100% faithful to the termi...
2026-01-28 15:43:52 - slack_bot.dispatcher - INFO - [7384a5ee] Gemini response in 6.07s: 0 chars, 1 tools
2026-01-28 15:43:52 - slack_bot.dispatcher - INFO - [7384a5ee] Executing 1 tools
2026-01-28 15:43:52 - slack_bot.dispatcher - INFO - [7384a5ee] Tool: execute_shell Args: {'command': 'find ~ -type f -size +500M 2>/dev/null | xargs du -h 2>/dev/null | sort -rh | head -n 20'}
2026-01-28 15:43:54 - slack_bot.dispatcher - INFO - [7384a5ee] ✓ execute_shell finished in 2.07s
2026-01-28 15:43:54 - slack_bot.dispatcher - INFO - [7384a5ee] Requesting final analysis...
2026-01-28 15:43:54 - slack_bot.llm.gemini - INFO - Sending payload to OpenAI Proxy: {"model": "gemini-3-flash", "messages": [{"role": "system", "content": "You are a Shell Assistant, an expert in zsh and system administration.\n\nYour Goal: Help the user execute commands and understand their system.\n\nCapabilities:\n- You have a persistent zsh session available via the `execute_shell` tool.\n- You can query files, check processes, and manage the system.\n\nGuidelines:\n1. **Always Prefer Execution**: If the user asks for a command (e.g., \"list files\"), DO NOT just explain it. EXECUTE IT using `execute_shell(\"ls -la\")`.\n2. **Numbered Shortcuts**: If you provide options, use a numbered list (1, 2, 3). If the user replies with a number, EXECUTE that option immediately.\n3. **Be Concise**: Output of shell commands can be long. Summarize if necessary, but show the relevant parts.\n4. **Safety**: Warn the user before destructive commands (rm -rf), but assume they know what they are doing if they insist.\n6. **No Hallucinations**: You must be 100% faithful to the termi...
2026-01-28 15:44:10 - slack_bot.dispatcher - INFO - [7384a5ee] Final analysis received in 15.36s
2026-01-28 15:44:10 - slack_bot.dispatcher - INFO - Formatted text (len 2221 -> 2211)
2026-01-28 15:44:10 - slack_bot.dispatcher - INFO - [7384a5ee] 📤 Message updated 1769586226.656439
2026-01-28 15:44:10 - slack_bot.dispatcher - INFO - [7384a5ee] Dispatch completed in 24.20s
Traceback (most recent call last):
  File "/Users/lili/workspace/bulter/slack_bot/shell_main.py", line 15, in <module>
    from slack_bot.dispatcher import MessageDispatcher
  File "/Users/lili/workspace/bulter/slack_bot/dispatcher.py", line 8, in <module>
    from slack_bot.tools.registry import TOOLS_SCHEMA, TOOL_FUNCTIONS
  File "/Users/lili/workspace/bulter/slack_bot/tools/registry.py", line 11, in <module>
    from .system_ops import get_system_status
  File "/Users/lili/workspace/bulter/slack_bot/tools/system_ops.py", line 1, in <module>
    import psutil
ModuleNotFoundError: No module named 'psutil'
Traceback (most recent call last):
  File "/Users/lili/workspace/bulter/slack_bot/shell_main.py", line 15, in <module>
    from slack_bot.dispatcher import MessageDispatcher
  File "/Users/lili/workspace/bulter/slack_bot/dispatcher.py", line 8, in <module>
    from slack_bot.tools.registry import TOOLS_SCHEMA, TOOL_FUNCTIONS
  File "/Users/lili/workspace/bulter/slack_bot/tools/registry.py", line 11, in <module>
    from .system_ops import get_system_status
  File "/Users/lili/workspace/bulter/slack_bot/tools/system_ops.py", line 1, in <module>
    import psutil
ModuleNotFoundError: No module named 'psutil'
Traceback (most recent call last):
  File "/Users/lili/workspace/bulter/slack_bot/shell_main.py", line 15, in <module>
    from slack_bot.dispatcher import MessageDispatcher
  File "/Users/lili/workspace/bulter/slack_bot/dispatcher.py", line 8, in <module>
    from slack_bot.tools.registry import TOOLS_SCHEMA, TOOL_FUNCTIONS
  File "/Users/lili/workspace/bulter/slack_bot/tools/registry.py", line 12, in <module>
    from .process_ops import kill_process, get_process_list
  File "/Users/lili/workspace/bulter/slack_bot/tools/process_ops.py", line 48
    """
    ^
SyntaxError: unterminated triple-quoted string literal (detected at line 85)
2026-01-28 16:18:38 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-28 16:18:38 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-28 16:18:44 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-28 16:18:44 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-28 16:18:44 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-28 16:18:44 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-01-28 16:36:15 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-28 16:36:15 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-28 16:36:16 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-28 16:36:16 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-28 16:36:16 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-28 16:36:16 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-01-29 09:55:55 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-29 09:55:55 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-29 09:55:56 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-29 09:55:56 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-29 09:55:56 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-29 09:55:56 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
⚡️ Bolt app is running!
2026-01-29 12:19:30 - __main__ - INFO - [7cfc74a3] 📥 ShellBot received: 看看我的桌面上有哪些文件
2026-01-29 12:19:31 - slack_bot.dispatcher - INFO - [7cfc74a3] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-29 12:19:31 - slack_bot.dispatcher - INFO - [7cfc74a3] Calling Gemini for initial response...
2026-01-29 12:19:38 - slack_bot.dispatcher - INFO - [7cfc74a3] Gemini response in 7.46s: 1038 chars, 0 tools
2026-01-29 12:19:38 - slack_bot.dispatcher - INFO - Formatted text (len 1038 -> 1038)
2026-01-29 12:19:39 - slack_bot.dispatcher - INFO - [7cfc74a3] 📤 Message updated 1769660370.897439
2026-01-29 12:19:39 - slack_bot.dispatcher - INFO - [7cfc74a3] Dispatch completed in 8.10s
Failed to establish a connection (session id: 07014900-b7aa-431b-8f35-3fa9664107ed, error: _ssl.c:983: The handshake operation timed out)
on_error invoked (session id: 3ee2516c-9b6d-4cc0-bae7-52838652c00f, error: TimeoutError, message: _ssl.c:983: The handshake operation timed out)
2026-01-29 17:32:04 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-29 17:32:04 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-29 17:32:05 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-29 17:32:05 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-29 17:32:05 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-29 17:32:05 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
⚡️ Bolt app is running!
2026-01-29 17:32:19 - __main__ - INFO - [ce92f728] 📥 ShellBot received: 看看我的桌面上有哪些文件


*shell*
2026-01-29 17:32:19 - slack_bot.dispatcher - INFO - [ce92f728] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-29 17:32:19 - slack_bot.dispatcher - INFO - [ce92f728] Calling Gemini for initial response...
2026-01-29 17:32:23 - slack_bot.dispatcher - INFO - [ce92f728] Gemini response in 3.07s: 0 chars, 1 tools
2026-01-29 17:32:23 - slack_bot.dispatcher - INFO - [ce92f728] Executing 1 tools
2026-01-29 17:32:23 - slack_bot.dispatcher - INFO - [ce92f728] Tool: execute_shell Args: {'command': 'ls -la ~/Desktop'}
2026-01-29 17:32:23 - slack_bot.shell.manager - INFO - Creating new ShellSession for channel D0AAG5UKRC2
2026-01-29 17:32:27 - slack_bot.dispatcher - INFO - [ce92f728] ✓ execute_shell finished in 4.18s
2026-01-29 17:32:27 - slack_bot.dispatcher - INFO - [ce92f728] Requesting final analysis...
2026-01-29 17:32:30 - slack_bot.dispatcher - INFO - [ce92f728] Final analysis received in 3.60s
2026-01-29 17:32:30 - slack_bot.dispatcher - INFO - Formatted text (len 260 -> 254)
2026-01-29 17:32:31 - slack_bot.dispatcher - INFO - [ce92f728] 📤 Message updated 1769679139.856829
2026-01-29 17:32:31 - slack_bot.dispatcher - INFO - [ce92f728] Dispatch completed in 11.48s
2026-01-29 17:39:02 - __main__ - INFO - [3a5ce51f] 📥 ShellBot received: sync.py的内容是什么
2026-01-29 17:39:03 - slack_bot.dispatcher - INFO - [3a5ce51f] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-29 17:39:03 - slack_bot.dispatcher - INFO - [3a5ce51f] Calling Gemini for initial response...
2026-01-29 17:39:21 - slack_bot.dispatcher - INFO - [3a5ce51f] Gemini response in 18.24s: 0 chars, 1 tools
2026-01-29 17:39:21 - slack_bot.dispatcher - INFO - [3a5ce51f] Executing 1 tools
2026-01-29 17:39:21 - slack_bot.dispatcher - INFO - [3a5ce51f] Tool: execute_shell Args: {'command': 'cat ~/Desktop/sync.py'}
2026-01-29 17:39:23 - slack_bot.dispatcher - INFO - [3a5ce51f] ✓ execute_shell finished in 2.06s
2026-01-29 17:39:23 - slack_bot.dispatcher - INFO - [3a5ce51f] Requesting final analysis...
2026-01-29 17:39:33 - slack_bot.dispatcher - INFO - [3a5ce51f] Final analysis received in 10.01s
2026-01-29 17:39:33 - slack_bot.dispatcher - INFO - Formatted text (len 596 -> 578)
2026-01-29 17:39:35 - slack_bot.dispatcher - INFO - [3a5ce51f] 📤 Message updated 1769679543.542379
2026-01-29 17:39:36 - slack_bot.dispatcher - INFO - [3a5ce51f] 📤 Continuation message posted
2026-01-29 17:39:36 - slack_bot.dispatcher - INFO - [3a5ce51f] Dispatch completed in 32.82s
2026-01-29 20:41:00 - __main__ - INFO - [a713fa17] 📥 ShellBot received: 列出当前目录下的md文件
2026-01-29 20:41:00 - slack_bot.dispatcher - INFO - [a713fa17] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-29 20:41:00 - slack_bot.dispatcher - INFO - [a713fa17] Calling Gemini for initial response...
2026-01-29 20:41:08 - slack_bot.dispatcher - INFO - [a713fa17] Gemini response in 7.28s: 804 chars, 0 tools
2026-01-29 20:41:08 - slack_bot.dispatcher - INFO - Formatted text (len 804 -> 804)
2026-01-29 20:41:08 - slack_bot.dispatcher - INFO - [a713fa17] 📤 Message updated 1769690460.767849
2026-01-29 20:41:08 - slack_bot.dispatcher - INFO - [a713fa17] Dispatch completed in 7.86s
2026-01-29 20:41:54 - __main__ - INFO - [447d0850] 📥 ShellBot received: 重新执行，明显不对
2026-01-29 20:41:55 - slack_bot.dispatcher - INFO - [447d0850] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-29 20:41:55 - slack_bot.dispatcher - INFO - [447d0850] Calling Gemini for initial response...
2026-01-29 20:42:10 - slack_bot.dispatcher - INFO - [447d0850] Gemini response in 14.66s: 2747 chars, 0 tools
2026-01-29 20:42:10 - slack_bot.dispatcher - INFO - Formatted text (len 2747 -> 2739)
2026-01-29 20:42:10 - slack_bot.dispatcher - INFO - [447d0850] 📤 Message updated 1769690515.244459
2026-01-29 20:42:10 - slack_bot.dispatcher - INFO - [447d0850] Dispatch completed in 15.21s
2026-01-30 09:30:21 - __main__ - INFO - [0e76f5c6] 📥 ShellBot received: gmode help
2026-01-30 09:30:21 - slack_bot.dispatcher - INFO - [0e76f5c6] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-30 09:30:21 - slack_bot.dispatcher - INFO - [0e76f5c6] Calling Gemini for initial response...
2026-01-30 09:30:26 - slack_bot.dispatcher - INFO - [0e76f5c6] Gemini response in 4.68s: 97 chars, 0 tools
2026-01-30 09:30:26 - slack_bot.dispatcher - INFO - Formatted text (len 97 -> 97)
2026-01-30 09:30:27 - slack_bot.dispatcher - INFO - [0e76f5c6] 📤 Message updated 1769736621.676099
2026-01-30 09:30:27 - slack_bot.dispatcher - INFO - [0e76f5c6] Dispatch completed in 5.22s
2026-01-30 09:30:37 - __main__ - INFO - [ddf15e8b] 📥 ShellBot received: ### gmode help ###
2026-01-30 09:30:37 - __main__ - WARNING - [ddf15e8b] 🚨 Received FAILSAFE cmd: help
2026-01-30 09:30:39 - __main__ - WARNING - RESTARTING PROCESS via os.execv...
2026-01-30 09:30:42 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-30 09:30:42 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-30 09:30:43 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-30 09:30:43 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-30 09:30:43 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-30 09:30:43 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-01-30 09:31:21 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-30 09:31:21 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-2.5-flash
/Users/lili/workspace/bulter/slack_bot/llm/gemini.py:117: FutureWarning: 

All support for the `google.generativeai` package has ended. It will no longer be receiving 
updates or bug fixes. Please switch to the `google.genai` package as soon as possible.
See README for more details:

https://github.com/google-gemini/deprecated-generative-ai-python/blob/main/README.md

  import google.generativeai as genai
2026-01-30 09:31:23 - slack_bot.llm.gemini - INFO - Using direct Google API
2026-01-30 09:31:23 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-2.5-flash
2026-01-30 09:31:23 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-30 09:31:23 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-01-30 09:35:49 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-30 09:35:49 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-30 09:35:50 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-30 09:35:50 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-30 09:35:50 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-30 09:35:50 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-01-30 11:25:23 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-30 11:25:23 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-30 11:25:24 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-30 11:25:24 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-30 11:25:24 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-30 11:25:24 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-01-30 12:03:32 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-30 12:03:32 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-30 12:03:33 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-30 12:03:33 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-30 12:03:33 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-30 12:03:33 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-01-30 12:10:28 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-01-30 12:10:28 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-01-30 12:10:30 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-01-30 12:10:30 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-01-30 12:10:30 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-01-30 12:10:30 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
⚡️ Bolt app is running!
2026-01-30 12:24:14 - __main__ - INFO - [d02496e5] 📥 ShellBot received: 找找我的clawdbot命令在哪个路径
2026-01-30 12:24:14 - slack_bot.dispatcher - INFO - [d02496e5] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-30 12:24:14 - slack_bot.dispatcher - INFO - [d02496e5] Calling Gemini for initial response...
2026-01-30 12:24:23 - slack_bot.dispatcher - INFO - [d02496e5] Gemini response in 8.85s: 1847 chars, 0 tools
2026-01-30 12:24:23 - slack_bot.dispatcher - INFO - Formatted text (len 1847 -> 1845)
2026-01-30 12:24:24 - slack_bot.dispatcher - INFO - [d02496e5] 📤 Message updated 1769747054.646399
2026-01-30 12:24:24 - slack_bot.dispatcher - INFO - [d02496e5] Dispatch completed in 9.50s
Failed to check the state of sock (session id: e4440a49-ac4d-4b95-a875-6e1fdd78d051, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: e4440a49-ac4d-4b95-a875-6e1fdd78d051, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: e4440a49-ac4d-4b95-a875-6e1fdd78d051, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: e4440a49-ac4d-4b95-a875-6e1fdd78d051, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: e4440a49-ac4d-4b95-a875-6e1fdd78d051, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
2026-01-31 09:42:28 - __main__ - INFO - [988571e4] 📥 ShellBot received: 查看tmux会话write的最后二十行输出
2026-01-31 09:42:29 - slack_bot.dispatcher - INFO - [988571e4] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-01-31 09:42:29 - slack_bot.dispatcher - INFO - [988571e4] Calling Gemini for initial response...
2026-01-31 09:42:41 - slack_bot.dispatcher - INFO - [988571e4] Gemini response in 12.03s: 2248 chars, 0 tools
2026-01-31 09:42:41 - slack_bot.dispatcher - INFO - Formatted text (len 2248 -> 2244)
2026-01-31 09:42:41 - slack_bot.dispatcher - INFO - [988571e4] 📤 Message updated 1769823749.117829
2026-01-31 09:42:41 - slack_bot.dispatcher - INFO - [988571e4] Dispatch completed in 12.65s
Failed to check the state of sock (session id: bd3c915f-db65-4c00-9de8-c97fb1cd5c13, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: bd3c915f-db65-4c00-9de8-c97fb1cd5c13, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: bd3c915f-db65-4c00-9de8-c97fb1cd5c13, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: bd3c915f-db65-4c00-9de8-c97fb1cd5c13, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: bd3c915f-db65-4c00-9de8-c97fb1cd5c13, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
2026-02-02 10:27:16 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-02 10:27:16 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-02-02 10:27:17 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-02 10:27:17 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-02-02 10:27:17 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-02 10:27:17 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
Failed to check the state of sock (session id: c026e4df-f86d-49ea-a6e1-205702d9104f, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: c026e4df-f86d-49ea-a6e1-205702d9104f, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: c026e4df-f86d-49ea-a6e1-205702d9104f, error: SSLError, message: [SSL: BAD_LENGTH] bad length (_ssl.c:2406))
2026-02-04 11:11:15 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-04 11:11:15 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-2.5-flash
2026-02-04 11:11:16 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-04 11:11:16 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-2.5-flash
2026-02-04 11:11:16 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-04 11:11:16 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-04 11:23:45 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-04 11:23:45 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-2.5-flash
2026-02-04 11:23:46 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-04 11:23:46 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-2.5-flash
2026-02-04 11:23:46 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-04 11:23:46 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-04 11:39:08 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-04 11:39:08 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-2.5-flash
2026-02-04 11:39:09 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-04 11:39:09 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-2.5-flash
2026-02-04 11:39:09 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-04 11:39:09 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-04 15:30:44 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-04 15:30:44 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-2.5-flash
2026-02-04 15:30:45 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-04 15:30:45 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-2.5-flash
2026-02-04 15:30:45 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-04 15:30:45 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-04 15:36:40 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-04 15:36:40 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-pro-high
2026-02-04 15:36:41 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-04 15:36:41 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-pro-high
2026-02-04 15:36:41 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-04 15:36:41 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-04 15:43:21 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-04 15:43:21 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-pro-high
2026-02-04 15:43:22 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-04 15:43:22 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-pro-high
2026-02-04 15:43:22 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-04 15:43:22 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-04 15:51:19 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-04 15:51:19 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-pro-high
2026-02-04 15:51:20 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-04 15:51:20 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-pro-high
2026-02-04 15:51:20 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-04 15:51:20 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-04 16:10:02 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-04 16:10:02 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-pro-high
2026-02-04 16:10:03 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-04 16:10:03 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-pro-high
2026-02-04 16:10:03 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-04 16:10:03 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-04 16:15:37 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-04 16:15:37 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-pro-high
2026-02-04 16:15:38 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-04 16:15:38 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-pro-high
2026-02-04 16:15:38 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-04 16:15:38 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-04 16:16:08 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-04 16:16:08 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-pro-high
2026-02-04 16:16:09 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-04 16:16:09 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-pro-high
2026-02-04 16:16:09 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-04 16:16:09 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-04 16:30:49 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-04 16:30:49 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-pro-high
2026-02-04 16:30:51 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-04 16:30:51 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-pro-high
2026-02-04 16:30:51 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-04 16:30:51 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-04 16:53:07 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-04 16:53:07 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-pro-high
2026-02-04 16:53:08 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-04 16:53:08 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-pro-high
2026-02-04 16:53:08 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-04 16:53:08 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-04 17:00:23 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-04 17:00:23 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-pro-high
2026-02-04 17:00:24 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-04 17:00:24 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-pro-high
2026-02-04 17:00:24 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-04 17:00:24 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-04 17:14:39 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-04 17:14:39 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-pro-high
2026-02-04 17:14:41 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-04 17:14:41 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-pro-high
2026-02-04 17:14:41 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-04 17:14:41 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-04 17:39:12 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-04 17:39:12 - __main__ - INFO - Starting Shell Bot with Gemini model: google/gemini-3-flash-preview
2026-02-04 17:39:13 - slack_bot.llm.gemini - INFO - Using OpenRouter: https://openrouter.ai/api
2026-02-04 17:39:13 - slack_bot.llm.gemini - INFO - Initialized Gemini model: google/gemini-3-flash-preview
2026-02-04 17:39:13 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-04 17:39:13 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
Failed to check the state of sock (session id: 5578ef54-0b79-4cd9-b0cc-91e42b58332b, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 5578ef54-0b79-4cd9-b0cc-91e42b58332b, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 5578ef54-0b79-4cd9-b0cc-91e42b58332b, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 5578ef54-0b79-4cd9-b0cc-91e42b58332b, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 5578ef54-0b79-4cd9-b0cc-91e42b58332b, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 495f83eb-8194-4dbc-92fd-8741289d1df3, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 495f83eb-8194-4dbc-92fd-8741289d1df3, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 495f83eb-8194-4dbc-92fd-8741289d1df3, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 495f83eb-8194-4dbc-92fd-8741289d1df3, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 495f83eb-8194-4dbc-92fd-8741289d1df3, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
2026-02-05 12:52:48 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-05 12:52:48 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-pro-high
2026-02-05 12:52:49 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-05 12:52:49 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-pro-high
2026-02-05 12:52:49 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-05 12:52:49 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-05 13:11:32 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-05 13:11:32 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-pro-high
2026-02-05 13:11:33 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-05 13:11:33 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-pro-high
2026-02-05 13:11:33 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-05 13:11:33 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
Failed to check the state of sock (session id: 75f31bda-9403-4c67-8a5a-7efb3ade2d73, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 75f31bda-9403-4c67-8a5a-7efb3ade2d73, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 75f31bda-9403-4c67-8a5a-7efb3ade2d73, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 75f31bda-9403-4c67-8a5a-7efb3ade2d73, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 75f31bda-9403-4c67-8a5a-7efb3ade2d73, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
2026-02-05 20:49:29 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-05 20:49:29 - __main__ - INFO - Starting Shell Bot with Gemini model: google/gemini-3-flash-preview
2026-02-05 20:49:30 - slack_bot.llm.gemini - INFO - Using OpenRouter: https://openrouter.ai/api
2026-02-05 20:49:30 - slack_bot.llm.gemini - INFO - Initialized Gemini model: google/gemini-3-flash-preview
2026-02-05 20:49:30 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-05 20:49:30 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-05 20:57:55 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-05 20:57:55 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-02-05 20:57:56 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-05 20:57:56 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-02-05 20:57:56 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-05 20:57:56 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-05 20:58:57 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-05 20:58:57 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-02-05 20:58:58 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-05 20:58:58 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-02-05 20:58:58 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-05 20:58:58 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
⚡️ Bolt app is running!
2026-02-05 21:01:56 - __main__ - INFO - [b6993e59] 📥 ShellBot received: ### gmode openrouter ###
2026-02-05 21:01:56 - __main__ - WARNING - [b6993e59] 🚨 Received FAILSAFE cmd: openrouter
2026-02-05 21:01:58 - __main__ - WARNING - RESTARTING PROCESS via os.execv...
2026-02-05 21:01:59 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-05 21:01:59 - __main__ - INFO - Starting Shell Bot with Gemini model: google/gemini-3-flash-preview
2026-02-05 21:02:00 - slack_bot.llm.gemini - INFO - Using OpenRouter: https://openrouter.ai/api
2026-02-05 21:02:00 - slack_bot.llm.gemini - INFO - Initialized Gemini model: google/gemini-3-flash-preview
2026-02-05 21:02:00 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-05 21:02:00 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
⚡️ Bolt app is running!
2026-02-05 21:02:12 - __main__ - INFO - [88cbf79f] 📥 ShellBot received: bot restart all
2026-02-05 21:02:12 - slack_bot.dispatcher - INFO - [88cbf79f] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-05 21:02:12 - slack_bot.dispatcher - INFO - [88cbf79f] Calling Gemini for initial response...
2026-02-05 21:02:22 - slack_bot.dispatcher - INFO - [88cbf79f] Gemini response in 10.02s: 410 chars, 1 tools
2026-02-05 21:02:22 - slack_bot.dispatcher - INFO - [88cbf79f] Executing 1 tools
2026-02-05 21:02:22 - slack_bot.dispatcher - INFO - [88cbf79f] Tool: execute_shell Args: {'command': 'pkill -f clawdbot; nohup /Users/lili/clawdbot > /Users/lili/logs/clawdbot.log 2>&1 & tmux send-keys -t write C-c "python3 -m health.cli.sync sync" Enter'}
2026-02-05 21:02:22 - slack_bot.shell.manager - INFO - Creating new ShellSession for channel D0AAG5UKRC2
2026-02-05 21:02:26 - slack_bot.dispatcher - INFO - [88cbf79f] ✓ execute_shell finished in 4.12s
2026-02-05 21:02:26 - slack_bot.dispatcher - INFO - [88cbf79f] Requesting final analysis...
2026-02-05 21:02:29 - slack_bot.dispatcher - INFO - [88cbf79f] Final analysis received in 2.77s
2026-02-05 21:02:29 - slack_bot.dispatcher - INFO - Formatted text (len 474 -> 466)
2026-02-05 21:02:30 - slack_bot.dispatcher - INFO - [88cbf79f] 📤 Message updated 1770296532.490879
2026-02-05 21:02:30 - slack_bot.dispatcher - INFO - [88cbf79f] Dispatch completed in 17.49s
2026-02-05 21:06:08 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-05 21:06:08 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-02-05 21:06:09 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-05 21:06:09 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-02-05 21:06:09 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-05 21:06:09 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-05 21:06:42 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-05 21:06:42 - __main__ - INFO - Starting Shell Bot with Gemini model: google/gemini-3-flash-preview
2026-02-05 21:06:43 - slack_bot.llm.gemini - INFO - Using OpenRouter: https://openrouter.ai/api
2026-02-05 21:06:43 - slack_bot.llm.gemini - INFO - Initialized Gemini model: google/gemini-3-flash-preview
2026-02-05 21:06:43 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-05 21:06:43 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-06 09:57:32 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-06 09:57:32 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-02-06 09:57:33 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-06 09:57:33 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-02-06 09:57:33 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-06 09:57:33 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-06 10:22:48 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-06 10:22:48 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-02-06 10:22:49 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-06 10:22:49 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-02-06 10:22:49 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-06 10:22:49 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-06 11:34:44 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-06 11:34:44 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-02-06 11:34:45 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-06 11:34:45 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-02-06 11:34:45 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-06 11:34:45 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
⚡️ Bolt app is running!
2026-02-06 11:50:30 - __main__ - INFO - [e082d31c] 📥 ShellBot received: ### gmode openrouter ###
2026-02-06 11:50:30 - __main__ - WARNING - [e082d31c] 🚨 Received FAILSAFE cmd: openrouter
2026-02-06 11:50:32 - __main__ - WARNING - RESTARTING PROCESS via os.execv...
2026-02-06 11:50:33 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-06 11:50:33 - __main__ - INFO - Starting Shell Bot with Gemini model: google/gemini-3-flash-preview
2026-02-06 11:50:35 - slack_bot.llm.gemini - INFO - Using OpenRouter: https://openrouter.ai/api
2026-02-06 11:50:35 - slack_bot.llm.gemini - INFO - Initialized Gemini model: google/gemini-3-flash-preview
2026-02-06 11:50:35 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-06 11:50:35 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
⚡️ Bolt app is running!
2026-02-06 11:50:56 - __main__ - INFO - [1aa0c55c] 📥 ShellBot received: ### bot restart health ###
2026-02-06 11:50:56 - __main__ - WARNING - [1aa0c55c] 🚨 Received FAILSAFE cmd: bot restart health
2026-02-06 14:12:10 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-06 14:12:10 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-flash
2026-02-06 14:12:11 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-06 14:12:11 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-flash
2026-02-06 14:12:11 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-06 14:12:11 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-06 14:34:09 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-06 14:34:09 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-pro-high
2026-02-06 14:34:10 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-06 14:34:10 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-pro-high
2026-02-06 14:34:10 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-06 14:34:10 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-06 14:47:48 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-06 14:47:48 - __main__ - INFO - Starting Shell Bot with Gemini model: gemini-3-pro-high
2026-02-06 14:47:49 - slack_bot.llm.gemini - INFO - Using proxy: http://127.0.0.1:8045
2026-02-06 14:47:49 - slack_bot.llm.gemini - INFO - Initialized Gemini model: gemini-3-pro-high
2026-02-06 14:47:49 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-06 14:47:49 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
2026-02-06 15:33:37 - health.utils.env_loader - INFO - Loading extra configuration from: /Users/lili/workspace/bulter/.gemini.current.env
2026-02-06 15:33:37 - __main__ - INFO - Starting Shell Bot with Gemini model: google/gemini-3-flash-preview
2026-02-06 15:33:38 - slack_bot.llm.gemini - INFO - Using OpenRouter: https://openrouter.ai/api
2026-02-06 15:33:38 - slack_bot.llm.gemini - INFO - Initialized Gemini model: google/gemini-3-flash-preview
2026-02-06 15:33:38 - slack_bot.dispatcher - INFO - Dispatcher initialized with Gemini
2026-02-06 15:33:38 - __main__ - INFO - ⚡️ Shell Bot is connected to Slack!
Failed to check the state of sock (session id: ec6429f5-953b-436d-a12b-59b9734db969, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: ec6429f5-953b-436d-a12b-59b9734db969, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: ec6429f5-953b-436d-a12b-59b9734db969, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: ec6429f5-953b-436d-a12b-59b9734db969, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: ec6429f5-953b-436d-a12b-59b9734db969, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to establish a connection (session id: b95f2c8d-1440-4cc8-8bb8-9319e8b4348c, error: The read operation timed out)
on_error invoked (session id: 5f215707-784b-4bfc-a43f-1d36176b090b, error: TimeoutError, message: The read operation timed out)
Failed to check the state of sock (session id: 98e0a059-305e-4570-a19f-bc38de5a017a, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 98e0a059-305e-4570-a19f-bc38de5a017a, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 98e0a059-305e-4570-a19f-bc38de5a017a, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 98e0a059-305e-4570-a19f-bc38de5a017a, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 98e0a059-305e-4570-a19f-bc38de5a017a, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: d1ba48bc-1870-4276-8c52-b8f0db31334e, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: d1ba48bc-1870-4276-8c52-b8f0db31334e, error: SSLError, message: [SSL: BAD_LENGTH] bad length (_ssl.c:2406))
Failed to check the state of sock (session id: d1ba48bc-1870-4276-8c52-b8f0db31334e, error: SSLError, message: [SSL: BAD_LENGTH] bad length (_ssl.c:2406))
Failed to check the state of sock (session id: d1ba48bc-1870-4276-8c52-b8f0db31334e, error: SSLError, message: [SSL: BAD_LENGTH] bad length (_ssl.c:2406))
Failed to check the state of sock (session id: d1ba48bc-1870-4276-8c52-b8f0db31334e, error: SSLError, message: [SSL: BAD_LENGTH] bad length (_ssl.c:2406))
Failed to check the state of sock (session id: dda858ff-2ee9-45ae-8389-31b3b01d78e3, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: dda858ff-2ee9-45ae-8389-31b3b01d78e3, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: dda858ff-2ee9-45ae-8389-31b3b01d78e3, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: dda858ff-2ee9-45ae-8389-31b3b01d78e3, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: dda858ff-2ee9-45ae-8389-31b3b01d78e3, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: bdaa6fe0-64ef-4f2c-94dd-c0816329593b, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: bdaa6fe0-64ef-4f2c-94dd-c0816329593b, error: SSLError, message: [SSL: BAD_LENGTH] bad length (_ssl.c:2406))
Failed to check the state of sock (session id: 80a1dda8-4fd5-40b5-96b4-c038c9c03605, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: 80a1dda8-4fd5-40b5-96b4-c038c9c03605, error: SSLError, message: [SSL: BAD_LENGTH] bad length (_ssl.c:2406))
Failed to check the state of sock (session id: 80a1dda8-4fd5-40b5-96b4-c038c9c03605, error: SSLError, message: [SSL: BAD_LENGTH] bad length (_ssl.c:2406))
Failed to establish a connection (session id: 9f0e0892-1681-40c6-937b-09d26a9353ac, error: The read operation timed out)
on_error invoked (session id: 80a1dda8-4fd5-40b5-96b4-c038c9c03605, error: TimeoutError, message: The read operation timed out)
Failed to check the state of sock (session id: aefd7c00-ca20-4641-af93-98e9b02791e6, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: aefd7c00-ca20-4641-af93-98e9b02791e6, error: SSLError, message: [SYS] unknown error (_ssl.c:2406))
Failed to check the state of sock (session id: aefd7c00-ca20-4641-af93-98e9b02791e6, error: SSLError, message: [SSL: BAD_LENGTH] bad length (_ssl.c:2406))
⚡️ Bolt app is running!
2026-02-15 08:36:51 - __main__ - INFO - [d22c9f5c] 📥 ShellBot received: ls
2026-02-15 08:36:51 - slack_bot.dispatcher - INFO - [d22c9f5c] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-15 08:36:51 - slack_bot.dispatcher - INFO - [d22c9f5c] Calling Gemini for initial response...
2026-02-15 08:36:51 - slack_bot.dispatcher - INFO - [d22c9f5c] Request config: model=google/gemini-3-flash-preview, tools=1, context=19 msgs
2026-02-15 08:36:54 - slack_bot.dispatcher - WARNING - [d22c9f5c] Gemini returned empty response_text! (This usually means the proxy has issues)
2026-02-15 08:36:54 - slack_bot.dispatcher - INFO - [d22c9f5c] Gemini response: text=0 chars, tool_calls=1
2026-02-15 08:36:54 - slack_bot.dispatcher - INFO - [d22c9f5c] Tool calls successfully generated by Gemini (no SAFETY OVERRIDE needed)
2026-02-15 08:36:54 - slack_bot.dispatcher - INFO - [d22c9f5c] Gemini response in 2.81s: 0 chars, 1 tools
2026-02-15 08:36:54 - slack_bot.dispatcher - INFO - [d22c9f5c] Executing 1 tools
2026-02-15 08:36:54 - slack_bot.dispatcher - INFO - [d22c9f5c] Tool: execute_shell Args: {'command': 'ls -F'}
2026-02-15 08:36:54 - slack_bot.shell.manager - INFO - Creating new ShellSession for channel D0AAG5UKRC2
2026-02-15 08:36:58 - slack_bot.dispatcher - INFO - [d22c9f5c] ✓ execute_shell finished in 4.10s
2026-02-15 08:36:58 - slack_bot.dispatcher - INFO - [d22c9f5c] Requesting final analysis...
2026-02-15 08:37:01 - slack_bot.dispatcher - INFO - [d22c9f5c] Final analysis received in 3.12s
2026-02-15 08:37:01 - slack_bot.dispatcher - INFO - Formatted text (len 726 -> 718)
2026-02-15 08:37:02 - slack_bot.dispatcher - INFO - [d22c9f5c] 📤 Message updated 1771115811.802489
2026-02-15 08:37:02 - slack_bot.dispatcher - INFO - [d22c9f5c] Dispatch completed in 10.83s
2026-02-15 08:39:20 - __main__ - INFO - [ec20619b] 📥 ShellBot received: history | grep tmate
2026-02-15 08:39:21 - slack_bot.dispatcher - INFO - [ec20619b] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-15 08:39:21 - slack_bot.dispatcher - INFO - [ec20619b] Calling Gemini for initial response...
2026-02-15 08:39:21 - slack_bot.dispatcher - INFO - [ec20619b] Request config: model=google/gemini-3-flash-preview, tools=1, context=22 msgs
2026-02-15 08:39:23 - slack_bot.dispatcher - WARNING - [ec20619b] Gemini returned empty response_text! (This usually means the proxy has issues)
2026-02-15 08:39:23 - slack_bot.dispatcher - INFO - [ec20619b] Gemini response: text=0 chars, tool_calls=1
2026-02-15 08:39:23 - slack_bot.dispatcher - INFO - [ec20619b] Tool calls successfully generated by Gemini (no SAFETY OVERRIDE needed)
2026-02-15 08:39:23 - slack_bot.dispatcher - INFO - [ec20619b] Gemini response in 2.24s: 0 chars, 1 tools
2026-02-15 08:39:23 - slack_bot.dispatcher - INFO - [ec20619b] Executing 1 tools
2026-02-15 08:39:23 - slack_bot.dispatcher - INFO - [ec20619b] Tool: execute_shell Args: {'command': 'history | grep tmate'}
2026-02-15 08:39:25 - slack_bot.dispatcher - INFO - [ec20619b] ✓ execute_shell finished in 2.03s
2026-02-15 08:39:25 - slack_bot.dispatcher - INFO - [ec20619b] Requesting final analysis...
2026-02-15 08:39:28 - slack_bot.dispatcher - INFO - [ec20619b] Final analysis received in 3.18s
2026-02-15 08:39:28 - slack_bot.dispatcher - INFO - Formatted text (len 571 -> 563)
2026-02-15 08:39:29 - slack_bot.dispatcher - INFO - [ec20619b] 📤 Message updated 1771115961.146049
2026-02-15 08:39:29 - slack_bot.dispatcher - INFO - [ec20619b] Dispatch completed in 8.26s
2026-02-15 08:40:48 - __main__ - INFO - [33408cf9] 📥 ShellBot received: history | grep pm2
2026-02-15 08:40:48 - slack_bot.dispatcher - INFO - [33408cf9] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-15 08:40:48 - slack_bot.dispatcher - INFO - [33408cf9] Calling Gemini for initial response...
2026-02-15 08:40:48 - slack_bot.dispatcher - INFO - [33408cf9] Request config: model=google/gemini-3-flash-preview, tools=1, context=25 msgs
2026-02-15 08:40:50 - slack_bot.dispatcher - WARNING - [33408cf9] Gemini returned empty response_text! (This usually means the proxy has issues)
2026-02-15 08:40:50 - slack_bot.dispatcher - INFO - [33408cf9] Gemini response: text=0 chars, tool_calls=1
2026-02-15 08:40:50 - slack_bot.dispatcher - INFO - [33408cf9] Tool calls successfully generated by Gemini (no SAFETY OVERRIDE needed)
2026-02-15 08:40:50 - slack_bot.dispatcher - INFO - [33408cf9] Gemini response in 2.13s: 0 chars, 1 tools
2026-02-15 08:40:50 - slack_bot.dispatcher - INFO - [33408cf9] Executing 1 tools
2026-02-15 08:40:50 - slack_bot.dispatcher - INFO - [33408cf9] Tool: execute_shell Args: {'command': 'history | grep pm2'}
2026-02-15 08:40:52 - slack_bot.dispatcher - INFO - [33408cf9] ✓ execute_shell finished in 2.03s
2026-02-15 08:40:52 - slack_bot.dispatcher - INFO - [33408cf9] Requesting final analysis...
2026-02-15 08:40:57 - slack_bot.dispatcher - INFO - [33408cf9] Final analysis received in 4.16s
2026-02-15 08:40:57 - slack_bot.dispatcher - INFO - Formatted text (len 415 -> 411)
2026-02-15 08:40:57 - slack_bot.dispatcher - INFO - [33408cf9] 📤 Message updated 1771116048.615449
2026-02-15 08:40:57 - slack_bot.dispatcher - INFO - [33408cf9] Dispatch completed in 9.26s
2026-02-15 08:42:55 - __main__ - INFO - [8e8f137d] 📥 ShellBot received: pm2 start "tmate -S /tmp/tmate3.sock -F -n t3" --name t3
2026-02-15 08:42:56 - slack_bot.dispatcher - INFO - [8e8f137d] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-15 08:42:56 - slack_bot.dispatcher - INFO - [8e8f137d] Calling Gemini for initial response...
2026-02-15 08:42:56 - slack_bot.dispatcher - INFO - [8e8f137d] Request config: model=google/gemini-3-flash-preview, tools=1, context=28 msgs
2026-02-15 08:43:01 - slack_bot.dispatcher - INFO - [8e8f137d] Gemini response: text=1351 chars, tool_calls=0
2026-02-15 08:43:01 - slack_bot.dispatcher - INFO - [8e8f137d] No tool calls from Gemini - checking SAFETY OVERRIDE keywords...
2026-02-15 08:43:01 - slack_bot.dispatcher - INFO - [8e8f137d] No SAFETY OVERRIDE match found - will return empty response or text
2026-02-15 08:43:01 - slack_bot.dispatcher - INFO - [8e8f137d] Gemini response in 5.54s: 1351 chars, 0 tools
2026-02-15 08:43:01 - slack_bot.dispatcher - INFO - Formatted text (len 1351 -> 1345)
2026-02-15 08:43:02 - slack_bot.dispatcher - INFO - [8e8f137d] 📤 Message updated 1771116176.201669
2026-02-15 08:43:02 - slack_bot.dispatcher - INFO - [8e8f137d] Dispatch completed in 6.22s
2026-02-15 08:43:52 - __main__ - INFO - [47af20f2] 📥 ShellBot received: pm2 logs
2026-02-15 08:43:52 - slack_bot.dispatcher - INFO - [47af20f2] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-15 08:43:52 - slack_bot.dispatcher - INFO - [47af20f2] Calling Gemini for initial response...
2026-02-15 08:43:52 - slack_bot.dispatcher - INFO - [47af20f2] Request config: model=google/gemini-3-flash-preview, tools=1, context=30 msgs
2026-02-15 08:43:55 - slack_bot.dispatcher - WARNING - [47af20f2] Gemini returned empty response_text! (This usually means the proxy has issues)
2026-02-15 08:43:55 - slack_bot.dispatcher - INFO - [47af20f2] Gemini response: text=0 chars, tool_calls=1
2026-02-15 08:43:55 - slack_bot.dispatcher - INFO - [47af20f2] Tool calls successfully generated by Gemini (no SAFETY OVERRIDE needed)
2026-02-15 08:43:55 - slack_bot.dispatcher - INFO - [47af20f2] Gemini response in 2.50s: 0 chars, 1 tools
2026-02-15 08:43:55 - slack_bot.dispatcher - INFO - [47af20f2] Executing 1 tools
2026-02-15 08:43:55 - slack_bot.dispatcher - INFO - [47af20f2] Tool: execute_shell Args: {'command': 'pm2 logs t3 --lines 20 --no-colors', 'timeout': 5}
2026-02-15 08:44:00 - slack_bot.dispatcher - INFO - [47af20f2] ✓ execute_shell finished in 5.02s
2026-02-15 08:44:00 - slack_bot.dispatcher - INFO - [47af20f2] Requesting final analysis...
2026-02-15 08:44:06 - slack_bot.dispatcher - INFO - [47af20f2] Final analysis received in 6.09s
2026-02-15 08:44:06 - slack_bot.dispatcher - INFO - Formatted text (len 1410 -> 1405)
2026-02-15 08:44:07 - slack_bot.dispatcher - INFO - [47af20f2] 📤 Message updated 1771116232.758239
2026-02-15 08:44:07 - slack_bot.dispatcher - INFO - [47af20f2] Dispatch completed in 14.36s
2026-02-15 08:53:58 - __main__ - INFO - [3779eed7] 📥 ShellBot received: pm2 restart  t1
2026-02-15 08:53:59 - slack_bot.dispatcher - INFO - [3779eed7] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-15 08:53:59 - slack_bot.dispatcher - INFO - [3779eed7] Calling Gemini for initial response...
2026-02-15 08:53:59 - slack_bot.dispatcher - INFO - [3779eed7] Request config: model=google/gemini-3-flash-preview, tools=1, context=33 msgs
2026-02-15 08:54:04 - slack_bot.dispatcher - INFO - [3779eed7] Gemini response: text=1004 chars, tool_calls=0
2026-02-15 08:54:04 - slack_bot.dispatcher - INFO - [3779eed7] No tool calls from Gemini - checking SAFETY OVERRIDE keywords...
2026-02-15 08:54:04 - slack_bot.dispatcher - INFO - [3779eed7] No SAFETY OVERRIDE match found - will return empty response or text
2026-02-15 08:54:04 - slack_bot.dispatcher - INFO - [3779eed7] Gemini response in 5.32s: 1004 chars, 0 tools
2026-02-15 08:54:04 - slack_bot.dispatcher - INFO - Formatted text (len 1004 -> 1004)
2026-02-15 08:54:05 - slack_bot.dispatcher - INFO - [3779eed7] 📤 Message updated 1771116839.008109
2026-02-15 08:54:05 - slack_bot.dispatcher - INFO - [3779eed7] Dispatch completed in 6.10s
2026-02-15 08:55:52 - __main__ - INFO - [ca3a404d] 📥 ShellBot received: netstat -ntl
2026-02-15 08:55:53 - slack_bot.dispatcher - INFO - [ca3a404d] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-15 08:55:53 - slack_bot.dispatcher - INFO - [ca3a404d] Calling Gemini for initial response...
2026-02-15 08:55:53 - slack_bot.dispatcher - INFO - [ca3a404d] Request config: model=google/gemini-3-flash-preview, tools=1, context=35 msgs
2026-02-15 08:55:55 - slack_bot.dispatcher - WARNING - [ca3a404d] Gemini returned empty response_text! (This usually means the proxy has issues)
2026-02-15 08:55:55 - slack_bot.dispatcher - INFO - [ca3a404d] Gemini response: text=0 chars, tool_calls=1
2026-02-15 08:55:55 - slack_bot.dispatcher - INFO - [ca3a404d] Tool calls successfully generated by Gemini (no SAFETY OVERRIDE needed)
2026-02-15 08:55:55 - slack_bot.dispatcher - INFO - [ca3a404d] Gemini response in 2.46s: 0 chars, 1 tools
2026-02-15 08:55:55 - slack_bot.dispatcher - INFO - [ca3a404d] Executing 1 tools
2026-02-15 08:55:55 - slack_bot.dispatcher - INFO - [ca3a404d] Tool: execute_shell Args: {'command': 'netstat -antL | head -n 20 || netstat -an | grep LISTEN'}
2026-02-15 08:55:57 - slack_bot.dispatcher - INFO - [ca3a404d] ✓ execute_shell finished in 2.04s
2026-02-15 08:55:57 - slack_bot.dispatcher - INFO - [ca3a404d] Requesting final analysis...
2026-02-15 08:56:01 - slack_bot.dispatcher - INFO - [ca3a404d] Final analysis received in 3.72s
2026-02-15 08:56:01 - slack_bot.dispatcher - INFO - Formatted text (len 522 -> 516)
2026-02-15 08:56:02 - slack_bot.dispatcher - INFO - [ca3a404d] 📤 Message updated 1771116953.107629
2026-02-15 08:56:02 - slack_bot.dispatcher - INFO - [ca3a404d] Dispatch completed in 9.11s
2026-02-15 08:59:25 - __main__ - INFO - [90e7aae7] 📥 ShellBot received: cat ./.tmate.conf
2026-02-15 08:59:26 - slack_bot.dispatcher - INFO - [90e7aae7] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-15 08:59:26 - slack_bot.dispatcher - INFO - [90e7aae7] Calling Gemini for initial response...
2026-02-15 08:59:26 - slack_bot.dispatcher - INFO - [90e7aae7] Request config: model=google/gemini-3-flash-preview, tools=1, context=38 msgs
2026-02-15 08:59:28 - slack_bot.dispatcher - WARNING - [90e7aae7] Gemini returned empty response_text! (This usually means the proxy has issues)
2026-02-15 08:59:28 - slack_bot.dispatcher - INFO - [90e7aae7] Gemini response: text=0 chars, tool_calls=1
2026-02-15 08:59:28 - slack_bot.dispatcher - INFO - [90e7aae7] Tool calls successfully generated by Gemini (no SAFETY OVERRIDE needed)
2026-02-15 08:59:28 - slack_bot.dispatcher - INFO - [90e7aae7] Gemini response in 2.15s: 0 chars, 1 tools
2026-02-15 08:59:28 - slack_bot.dispatcher - INFO - [90e7aae7] Executing 1 tools
2026-02-15 08:59:28 - slack_bot.dispatcher - INFO - [90e7aae7] Tool: execute_shell Args: {'command': 'cat ~/.tmate.conf'}
2026-02-15 08:59:30 - slack_bot.dispatcher - INFO - [90e7aae7] ✓ execute_shell finished in 2.03s
2026-02-15 08:59:30 - slack_bot.dispatcher - INFO - [90e7aae7] Requesting final analysis...
2026-02-15 08:59:32 - slack_bot.dispatcher - INFO - [90e7aae7] Final analysis received in 2.23s
2026-02-15 08:59:32 - slack_bot.dispatcher - INFO - Formatted text (len 251 -> 243)
2026-02-15 08:59:33 - slack_bot.dispatcher - INFO - [90e7aae7] 📤 Message updated 1771117166.173029
2026-02-15 08:59:33 - slack_bot.dispatcher - INFO - [90e7aae7] Dispatch completed in 7.27s
2026-02-15 09:00:43 - __main__ - INFO - [68c11aad] 📥 ShellBot received: 那为什么pm2 logs里显示的连接地址还是官方的地址，而不是这个服务器上
2026-02-15 09:00:44 - slack_bot.dispatcher - INFO - [68c11aad] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-15 09:00:44 - slack_bot.dispatcher - INFO - [68c11aad] Calling Gemini for initial response...
2026-02-15 09:00:44 - slack_bot.dispatcher - INFO - [68c11aad] Request config: model=google/gemini-3-flash-preview, tools=1, context=39 msgs
2026-02-15 09:00:54 - slack_bot.dispatcher - INFO - [68c11aad] Gemini response: text=2502 chars, tool_calls=0
2026-02-15 09:00:54 - slack_bot.dispatcher - INFO - [68c11aad] No tool calls from Gemini - checking SAFETY OVERRIDE keywords...
2026-02-15 09:00:54 - slack_bot.dispatcher - INFO - [68c11aad] No SAFETY OVERRIDE match found - will return empty response or text
2026-02-15 09:00:54 - slack_bot.dispatcher - INFO - [68c11aad] Gemini response in 9.92s: 2502 chars, 0 tools
2026-02-15 09:00:54 - slack_bot.dispatcher - INFO - Formatted text (len 2502 -> 2476)
2026-02-15 09:00:55 - slack_bot.dispatcher - INFO - [68c11aad] 📤 Message updated 1771117244.651869
2026-02-15 09:00:55 - slack_bot.dispatcher - INFO - [68c11aad] Dispatch completed in 10.79s
2026-02-15 09:03:56 - __main__ - INFO - [62f3976f] 📥 ShellBot received: pm2 logs t3
2026-02-15 09:03:57 - slack_bot.dispatcher - INFO - [62f3976f] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-15 09:03:57 - slack_bot.dispatcher - INFO - [62f3976f] Calling Gemini for initial response...
2026-02-15 09:03:57 - slack_bot.dispatcher - INFO - [62f3976f] Request config: model=google/gemini-3-flash-preview, tools=1, context=39 msgs
2026-02-15 09:03:59 - slack_bot.dispatcher - WARNING - [62f3976f] Gemini returned empty response_text! (This usually means the proxy has issues)
2026-02-15 09:03:59 - slack_bot.dispatcher - INFO - [62f3976f] Gemini response: text=0 chars, tool_calls=1
2026-02-15 09:03:59 - slack_bot.dispatcher - INFO - [62f3976f] Tool calls successfully generated by Gemini (no SAFETY OVERRIDE needed)
2026-02-15 09:03:59 - slack_bot.dispatcher - INFO - [62f3976f] Gemini response in 2.17s: 0 chars, 1 tools
2026-02-15 09:03:59 - slack_bot.dispatcher - INFO - [62f3976f] Executing 1 tools
2026-02-15 09:03:59 - slack_bot.dispatcher - INFO - [62f3976f] Tool: execute_shell Args: {'command': 'pm2 logs t3 --lines 20 --raw'}
2026-02-15 09:04:01 - slack_bot.dispatcher - INFO - [62f3976f] ✓ execute_shell finished in 2.09s
2026-02-15 09:04:01 - slack_bot.dispatcher - INFO - [62f3976f] Requesting final analysis...
2026-02-15 09:04:04 - slack_bot.dispatcher - INFO - [62f3976f] Final analysis received in 3.02s
2026-02-15 09:04:04 - slack_bot.dispatcher - INFO - Formatted text (len 325 -> 317)
2026-02-15 09:04:05 - slack_bot.dispatcher - INFO - [62f3976f] 📤 Message updated 1771117437.219019
2026-02-15 09:04:05 - slack_bot.dispatcher - INFO - [62f3976f] Dispatch completed in 7.95s
2026-02-15 09:05:21 - __main__ - INFO - [f50bf274] 📥 ShellBot received: 重新启动t2
2026-02-15 09:05:22 - slack_bot.dispatcher - INFO - [f50bf274] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-15 09:05:22 - slack_bot.dispatcher - INFO - [f50bf274] Calling Gemini for initial response...
2026-02-15 09:05:22 - slack_bot.dispatcher - INFO - [f50bf274] Request config: model=google/gemini-3-flash-preview, tools=1, context=39 msgs
2026-02-15 09:05:29 - slack_bot.dispatcher - INFO - [f50bf274] Gemini response: text=1650 chars, tool_calls=0
2026-02-15 09:05:29 - slack_bot.dispatcher - INFO - [f50bf274] No tool calls from Gemini - checking SAFETY OVERRIDE keywords...
2026-02-15 09:05:29 - slack_bot.dispatcher - INFO - [f50bf274] No SAFETY OVERRIDE match found - will return empty response or text
2026-02-15 09:05:29 - slack_bot.dispatcher - INFO - [f50bf274] Gemini response in 6.82s: 1650 chars, 0 tools
2026-02-15 09:05:29 - slack_bot.dispatcher - INFO - Formatted text (len 1650 -> 1644)
2026-02-15 09:05:29 - slack_bot.dispatcher - INFO - [f50bf274] 📤 Message updated 1771117522.317429
2026-02-15 09:05:29 - slack_bot.dispatcher - INFO - [f50bf274] Dispatch completed in 7.55s
2026-02-15 09:07:35 - __main__ - INFO - [a0c1f68a] 📥 ShellBot received: 连接显示 Invalid or expired session token
2026-02-15 09:07:36 - slack_bot.dispatcher - INFO - [a0c1f68a] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-15 09:07:36 - slack_bot.dispatcher - INFO - [a0c1f68a] Calling Gemini for initial response...
2026-02-15 09:07:36 - slack_bot.dispatcher - INFO - [a0c1f68a] Request config: model=google/gemini-3-flash-preview, tools=1, context=39 msgs
2026-02-15 09:07:42 - slack_bot.dispatcher - INFO - [a0c1f68a] Gemini response: text=598 chars, tool_calls=1
2026-02-15 09:07:42 - slack_bot.dispatcher - INFO - [a0c1f68a] Tool calls successfully generated by Gemini (no SAFETY OVERRIDE needed)
2026-02-15 09:07:42 - slack_bot.dispatcher - INFO - [a0c1f68a] Gemini response in 6.41s: 598 chars, 1 tools
2026-02-15 09:07:42 - slack_bot.dispatcher - INFO - [a0c1f68a] Executing 1 tools
2026-02-15 09:07:42 - slack_bot.dispatcher - INFO - [a0c1f68a] Tool: execute_shell Args: {'command': 'pm2 delete t2; rm -f /tmp/tmate2.sock; pm2 start "tmate -S /tmp/tmate2.sock -f /Users/lili/.tmate.conf -F -n t2" --name t2 && sleep 3 && pm2 logs t2 --lines 5 --raw'}
2026-02-15 09:07:44 - slack_bot.dispatcher - INFO - [a0c1f68a] ✓ execute_shell finished in 2.03s
2026-02-15 09:07:44 - slack_bot.dispatcher - INFO - [a0c1f68a] Requesting final analysis...
2026-02-15 09:07:50 - slack_bot.dispatcher - INFO - [a0c1f68a] Final analysis received in 5.81s
2026-02-15 09:07:50 - slack_bot.dispatcher - INFO - Formatted text (len 1536 -> 1526)
2026-02-15 09:07:51 - slack_bot.dispatcher - INFO - [a0c1f68a] 📤 Message updated 1771117656.218199
2026-02-15 09:07:51 - slack_bot.dispatcher - INFO - [a0c1f68a] Dispatch completed in 15.00s
2026-02-15 09:48:19 - __main__ - INFO - [29ada326] 📥 ShellBot received: 重启clawdbot
2026-02-15 09:48:19 - slack_bot.dispatcher - INFO - [29ada326] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-15 09:48:19 - slack_bot.dispatcher - INFO - [29ada326] Calling Gemini for initial response...
2026-02-15 09:48:19 - slack_bot.dispatcher - INFO - [29ada326] Request config: model=google/gemini-3-flash-preview, tools=1, context=39 msgs
2026-02-15 09:48:26 - slack_bot.dispatcher - INFO - [29ada326] Gemini response: text=2096 chars, tool_calls=0
2026-02-15 09:48:26 - slack_bot.dispatcher - INFO - [29ada326] No tool calls from Gemini - checking SAFETY OVERRIDE keywords...
2026-02-15 09:48:26 - slack_bot.dispatcher - INFO - [29ada326] No SAFETY OVERRIDE match found - will return empty response or text
2026-02-15 09:48:26 - slack_bot.dispatcher - INFO - [29ada326] Gemini response in 7.07s: 2096 chars, 0 tools
2026-02-15 09:48:26 - slack_bot.dispatcher - INFO - Formatted text (len 2096 -> 2088)
2026-02-15 09:48:27 - slack_bot.dispatcher - INFO - [29ada326] 📤 Message updated 1771120099.834379
2026-02-15 09:48:27 - slack_bot.dispatcher - INFO - [29ada326] Dispatch completed in 7.81s
2026-02-15 09:50:43 - __main__ - INFO - [127cece4] 📥 ShellBot received: tmate
2026-02-15 09:50:44 - slack_bot.dispatcher - INFO - [127cece4] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-15 09:50:44 - slack_bot.dispatcher - INFO - [127cece4] Calling Gemini for initial response...
2026-02-15 09:50:44 - slack_bot.dispatcher - INFO - [127cece4] Request config: model=google/gemini-3-flash-preview, tools=1, context=39 msgs
2026-02-15 09:50:48 - slack_bot.dispatcher - INFO - [127cece4] Gemini response: text=483 chars, tool_calls=0
2026-02-15 09:50:48 - slack_bot.dispatcher - INFO - [127cece4] No tool calls from Gemini - checking SAFETY OVERRIDE keywords...
2026-02-15 09:50:48 - slack_bot.dispatcher - INFO - [127cece4] No SAFETY OVERRIDE match found - will return empty response or text
2026-02-15 09:50:48 - slack_bot.dispatcher - INFO - [127cece4] Gemini response in 3.90s: 483 chars, 0 tools
2026-02-15 09:50:48 - slack_bot.dispatcher - INFO - Formatted text (len 483 -> 475)
2026-02-15 09:50:49 - slack_bot.dispatcher - INFO - [127cece4] 📤 Message updated 1771120244.534709
2026-02-15 09:50:49 - slack_bot.dispatcher - INFO - [127cece4] Dispatch completed in 4.65s
2026-02-15 09:52:49 - __main__ - INFO - [11cf8219] 📥 ShellBot received: 这个命令返回了什么
2026-02-15 09:52:50 - slack_bot.dispatcher - INFO - [11cf8219] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-15 09:52:50 - slack_bot.dispatcher - INFO - [11cf8219] Calling Gemini for initial response...
2026-02-15 09:52:50 - slack_bot.dispatcher - INFO - [11cf8219] Request config: model=google/gemini-3-flash-preview, tools=1, context=39 msgs
2026-02-15 09:52:54 - slack_bot.dispatcher - INFO - [11cf8219] Gemini response: text=492 chars, tool_calls=0
2026-02-15 09:52:54 - slack_bot.dispatcher - INFO - [11cf8219] No tool calls from Gemini - checking SAFETY OVERRIDE keywords...
2026-02-15 09:52:54 - slack_bot.dispatcher - INFO - [11cf8219] No SAFETY OVERRIDE match found - will return empty response or text
2026-02-15 09:52:54 - slack_bot.dispatcher - INFO - [11cf8219] Gemini response in 4.14s: 492 chars, 0 tools
2026-02-15 09:52:54 - slack_bot.dispatcher - INFO - Formatted text (len 492 -> 480)
2026-02-15 09:52:55 - slack_bot.dispatcher - INFO - [11cf8219] 📤 Message updated 1771120370.135919
2026-02-15 09:52:55 - slack_bot.dispatcher - INFO - [11cf8219] Dispatch completed in 4.91s
2026-02-15 09:59:19 - __main__ - INFO - [3d667a9d] 📥 ShellBot received: 把当前目录通过scp拷贝到ubuntu@43.160.247.227:/home/ubuntu/butler
2026-02-15 09:59:20 - slack_bot.dispatcher - INFO - [3d667a9d] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-15 09:59:20 - slack_bot.dispatcher - INFO - [3d667a9d] Calling Gemini for initial response...
2026-02-15 09:59:20 - slack_bot.dispatcher - INFO - [3d667a9d] Request config: model=google/gemini-3-flash-preview, tools=1, context=39 msgs
2026-02-15 09:59:27 - slack_bot.dispatcher - INFO - [3d667a9d] Gemini response: text=1895 chars, tool_calls=0
2026-02-15 09:59:27 - slack_bot.dispatcher - INFO - [3d667a9d] No tool calls from Gemini - checking SAFETY OVERRIDE keywords...
2026-02-15 09:59:27 - slack_bot.dispatcher - INFO - [3d667a9d] No SAFETY OVERRIDE match found - will return empty response or text
2026-02-15 09:59:27 - slack_bot.dispatcher - INFO - [3d667a9d] Gemini response in 6.93s: 1895 chars, 0 tools
2026-02-15 09:59:27 - slack_bot.dispatcher - INFO - Formatted text (len 1895 -> 1893)
2026-02-15 09:59:28 - slack_bot.dispatcher - INFO - [3d667a9d] 📤 Message updated 1771120760.699449
2026-02-15 09:59:28 - slack_bot.dispatcher - INFO - [3d667a9d] Dispatch completed in 7.68s
2026-02-15 10:00:19 - __main__ - INFO - [a1cca882] 📥 ShellBot received: 通过scp传输
2026-02-15 10:00:20 - slack_bot.dispatcher - INFO - [a1cca882] Processing message in D0AAG5UKRC2 from U0A8ZCK7RJM
2026-02-15 10:00:20 - slack_bot.dispatcher - INFO - [a1cca882] Calling Gemini for initial response...
2026-02-15 10:00:20 - slack_bot.dispatcher - INFO - [a1cca882] Request config: model=google/gemini-3-flash-preview, tools=1, context=39 msgs
2026-02-15 10:00:25 - slack_bot.dispatcher - INFO - [a1cca882] Gemini response: text=1016 chars, tool_calls=0
2026-02-15 10:00:25 - slack_bot.dispatcher - INFO - [a1cca882] No tool calls from Gemini - checking SAFETY OVERRIDE keywords...
2026-02-15 10:00:25 - slack_bot.dispatcher - INFO - [a1cca882] No SAFETY OVERRIDE match found - will return empty response or text
2026-02-15 10:00:25 - slack_bot.dispatcher - INFO - [a1cca882] Gemini response in 5.16s: 1016 chars, 0 tools
2026-02-15 10:00:25 - slack_bot.dispatcher - INFO - Formatted text (len 1016 -> 1016)
2026-02-15 10:00:25 - slack_bot.dispatcher - INFO - [a1cca882] 📤 Message updated 1771120820.014089
2026-02-15 10:00:25 - slack_bot.dispatcher - INFO - [a1cca882] Dispatch completed in 5.87s
