#!/usr/bin/env python3
"""Test light tool mode."""

import os
import sys
sys.path.append(os.getcwd())

from health.utils.env_loader import load_env_with_extras
from slack_bot.tools.groups import get_tool_preset
import json

load_env_with_extras()

print("=== Tool Presets Comparison ===\n")

for mode in ["light", "standard", "full", "all"]:
    tools, functions = get_tool_preset(mode)

    tools_json = json.dumps(tools, ensure_ascii=False)
    size_chars = len(tools_json)
    estimated_tokens = size_chars // 3

    print(f"{mode.upper()} Mode:")
    print(f"  Tools: {len(tools)}")
    print(f"  Functions: {len(functions)}")
    print(f"  Schema size: {size_chars:,} chars (~{estimated_tokens:,} tokens)")
    print(f"  Tool names: {', '.join(functions.keys())}")
    print()

# Test with Gemini
print("\n=== Testing Light Mode with Gemini ===\n")

from slack_bot.llm.gemini import GeminiLLM

llm = GeminiLLM()
light_tools, _ = get_tool_preset("light")

response, tool_calls = llm.generate_response(
    message="今天睡得怎么样？",
    context=[],
    tools=light_tools,
    images=None
)

print(f"Response: {response[:200]}...")
print(f"Tool calls: {tool_calls}")

if response and response.strip():
    print("\n✅ SUCCESS: Light mode works with your proxy!")
else:
    print("\n❌ FAILED: Still getting empty response")
