Phase 1 - Configuration Infrastructure (WS1): - Add instance-level AI env vars (VOYAGE_AI_PROVIDER, VOYAGE_AI_MODEL, VOYAGE_AI_API_KEY) - Implement fallback chain: user key → instance key → error - Add UserAISettings model for per-user provider/model preferences - Enhance provider catalog with instance_configured and user_configured flags - Optimize provider catalog to avoid N+1 queries Phase 1 - User Preference Learning (WS2): - Add Travel Preferences tab to Settings page - Improve preference formatting in system prompt with emoji headers - Add multi-user preference aggregation for shared collections Phase 2 - Day-Level Suggestions Modal (WS3): - Create ItinerarySuggestionModal with 3-step flow (category → filters → results) - Add AI suggestions button to itinerary Add dropdown - Support restaurant, activity, event, and lodging categories - Backend endpoint POST /api/chat/suggestions/day/ with context-aware prompts Phase 3 - Collection-Level Chat Improvements (WS4): - Inject collection context (destination, dates) into chat system prompt - Add quick action buttons for common queries - Add 'Add to itinerary' button on search_places results - Update chat UI with travel-themed branding and improved tool result cards Phase 3 - Web Search Capability (WS5): - Add web_search agent tool using DuckDuckGo - Support location_context parameter for biased results - Handle rate limiting gracefully Phase 4 - Extensibility Architecture (WS6): - Implement decorator-based @agent_tool registry - Convert existing tools to use decorators - Add GET /api/chat/capabilities/ endpoint for tool discovery - Refactor execute_tool() to use registry pattern
38 lines
707 B
Plaintext
38 lines
707 B
Plaintext
Django==5.2.12
|
|
djangorestframework>=3.16.1
|
|
django-allauth==0.63.6
|
|
django-money==3.6.0
|
|
django-invitations==2.1.0
|
|
drf-yasg==1.21.15
|
|
django-cors-headers==4.9.0
|
|
coreapi==2.3.3
|
|
python-dotenv==1.2.2
|
|
psycopg2-binary==2.9.11
|
|
pillow==12.1.1
|
|
whitenoise==6.12.0
|
|
django-resized==1.0.3
|
|
django-geojson==4.2.0
|
|
setuptools==79.0.1
|
|
gunicorn==23.0.0
|
|
qrcode==8.2
|
|
slippers==0.6.2
|
|
django-allauth-ui==1.8.1
|
|
django-widget-tweaks==1.5.1
|
|
django-ical==1.9.2
|
|
icalendar==6.3.2
|
|
ijson==3.5.0
|
|
tqdm==4.67.3
|
|
overpy==0.7
|
|
publicsuffix2==2.20191221
|
|
geopy==2.4.1
|
|
psutil==6.1.1
|
|
geojson==3.2.0
|
|
gpxpy==1.6.2
|
|
pymemcache==4.0.0
|
|
legacy-cgi==2.6.4
|
|
requests>=2.32.5
|
|
cryptography>=46.0.5
|
|
django-mcp-server>=0.5.7
|
|
litellm>=1.72.3
|
|
duckduckgo-search>=4.0.0
|