Files
python-sdk/test_fallback.py
T
zeekay fb00cd26bc feat: Add intelligent fallback and memory management to hanzo dev
- Automatic fallback handler tries all available AI options
- Memory persistence with #memory commands (like Claude Desktop)
- Smart context management with priority-based memories
- Session tracking and user preferences
- Export/import memory capabilities
- Enhanced AI responses with contextual awareness
- Version bump to 0.3.20
2025-08-19 22:11:42 -05:00

44 lines
1.3 KiB
Python

#!/usr/bin/env python3
"""Test the fallback handler."""
import asyncio
import sys
from pathlib import Path
from rich.console import Console
# Add src to path
sys.path.insert(0, str(Path(__file__).parent / "pkg" / "hanzo" / "src"))
from hanzo.fallback_handler import FallbackHandler, smart_chat
async def test_fallback():
"""Test the fallback handler."""
console = Console()
console.print("\n[bold cyan]Testing Fallback Handler[/bold cyan]\n")
# Create handler and check status
handler = FallbackHandler()
handler.print_status(console)
# Test smart chat
console.print("\n[bold]Testing smart chat with automatic fallback:[/bold]")
test_message = "What is 2 + 2? Reply with just the number."
console.print(f"\nMessage: [cyan]{test_message}[/cyan]")
response = await smart_chat(test_message, console)
if response:
console.print(f"\n[green]Success! AI responded:[/green]")
console.print(f"[bold]{response}[/bold]")
else:
console.print("\n[red]Failed to get response from any AI option[/red]")
console.print("\n[yellow]Setup suggestions:[/yellow]")
console.print(handler.suggest_setup())
return response is not None
if __name__ == "__main__":
success = asyncio.run(test_fallback())
sys.exit(0 if success else 1)