trip-dashboard

Generates a dark-themed PNG trip card from a SQLite trips database using matplotlib.

2|Updated Jun 26, 2026
One-click install
npx skills add https://github.com/otenycom/talents --skill trip-dashboard-otenycom
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: trip-dashboard
Source: https://github.com/otenycom/talents/tree/main/skills/oteny-travel-talent/trip-dashboard
Command: npx skills add https://github.com/otenycom/talents --skill trip-dashboard-otenycom

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires matplotlib, pyyaml, and includes scripts (resource) components.

What problem does it solve? Travelers and group trip organizers need a single at-a-glance view of a trip — dates, countdown, upcoming plans, bookings, shared expenses, and packing status — without manually assembling it from scattered notes and spreadsheets. ## Core Features & Use Cases - Parameterized trip card rendering: Reads trips.db and profile.yaml to draw a header with countdown, next scheduled items, bookings with last-known status, a settle-up board, and packing status on a Telegram-friendly canvas. - Settle-up integration: Imports the sibling settle_up.py script to compute total spend and who-owes-whom per currency directly on the card. - Graceful degradation: Exits with a handled error code when matplotlib, the database, or the trip is missing, so cron jobs register FAILED instead of crashing. - Use Case: A user asks their Telegram bot for a trip overview before departure; the bot runs trip_card.py, renders the PNG, and replies with the image plus a caption covering the next move, live delays, settle-up summary, and open to-dos. ## Quick Start Ask the bot to show the trip card or dashboard for your upcoming trip and it will render and send the PNG overview.

Frequently Asked Questions about trip-dashboard

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I render a trip overview card from a SQLite database?▼

Run trip_card.py with an optional --trip ID; it reads trips.db and profile.yaml, queries itinerary, bookings, expenses, and todos, then renders a dark-themed PNG with matplotlib and prints the output path.

How to generate a dashboard image for Telegram with matplotlib?▼

Use matplotlib with the Agg backend, a dark color palette, and save at dpi 170-200 so Telegram delivers the PNG as a photo rather than a compressed file. Keep panel titles plain text since DejaVu Sans lacks emoji glyphs.

Why does the trip card script fail with a missing matplotlib error?▼

matplotlib lives in the Talent's uv-managed environment, not the system Python. Invoke the script via talent-run or uv run instead of bare python3; otherwise it degrades to an unavailable message and exits with code 2.

Can I use AI image generation for trip maps and routes?▼

No. AI-fabricated map or route images are banned because they encode nothing real and mislead wayfinding. Use deterministic data renders like this trip card for overviews and maplink.py deeplinks for directions.

What happens when the trip database or trip ID is not found?▼

The script prints an error to stderr and exits with code 2 instead of crashing. The caller should reply that there is nothing to show yet, and cron runs register the job as FAILED.