Convert vague real-world leisure requests into concrete activity plans. Use when the user says they are bored, asks what to do tonight or this weekend, wants date ideas, solo outings, hangouts, nearby classes, or short itineraries that should account for location, time, weather, budget, companions, travel time, and prior activity history. Use live web research to verify current venues, events, weather, and local trend signals before recommending a small executable plan, and optionally record the outcome and feedback in a local history file.
Convert a loose desire for something to do into a short, executable plan with live-verified options, local momentum signals, estimated spend, travel time, and booking notes.
Prefer real, current options over generic idea lists. Use live web browsing for time-sensitive facts and do not present results as current unless you verified them in-session.
| Field | Value |
|---|---|
| Name | experience-planner |
| Description | Convert vague leisure requests into executable, location-aware activity plans with live web verification and local trend checks. |
| Metadata | history_path=.experience-planner/history.json; primary_script=scripts/activity_history.py; requires_live_research=true; requires_web_browsing=true; output_sections=assumptions,recommended plan,booking notes,backups,history update |
| Tags | planning, leisure, local-activities, itinerary, , , , , |
weather-awarebudget-awarehistory-awaretrend-awarelive-researchLock the planning window.
Translate phrases like tonight, after work, or this weekend into absolute dates and times in the user's locale. State assumptions briefly when the user is vague.
Load or create history. Use the bundled script to create or inspect a local history file before searching. Keep the file in the current workspace, not inside the skill directory.
python3 <path-to-skill>/scripts/activity_history.py ensure
python3 <path-to-skill>/scripts/activity_history.py summary --limit 20
python3 <path-to-skill>/scripts/activity_history.py recent --limit 10
Default history path: .experience-planner/history.json
solo, partner, friends, family, teamIf key context is missing, ask at most one or two short questions. Otherwise, make a reasonable assumption and say so.
Research live options and area trends. Use web browsing for every time-sensitive recommendation. At minimum, verify the planning window against current weather, opening hours, event schedules, class times, ticket availability, and booking links. Also gather local momentum signals such as highly rated or busy area spots, recent openings, current event buzz, and recent neighborhood coverage. Prefer the workflow in live-research.md. Gather roughly five to ten candidates across a few categories before narrowing.
Score candidates. Use planning-rubric.md. Reject candidates that are closed, sold out, clearly outside budget, or too far away for the available window. Reward fit, proximity, novelty, and reliability.
Build a small itinerary. Produce one primary plan and one or two backup plans. Make the primary plan feel executable, not theoretical:
For each plan, include:
If browsing or internet access is unavailable, say so clearly and do not imply the results are live. Offer either:
python3 <path-to-skill>/scripts/activity_history.py record \
--title "Bouldering at Boulder Planet" \
--date 2026-03-15 \
--companions friends \
--category fitness \
--cost 32 \
--rating 4 \
--tag indoor \
--tag active \
--notes "Good difficulty spread; crowded after 8pm"
Keep the final answer short and actionable:
Assumptions
Only include this if you had to infer missing context.
Recommended plan
Give the itinerary in order with times, travel, cost, and one-sentence rationale.
Booking notes
Call out reservations, ticket links, or opening-hour constraints.
Backups
Give one or two credible alternatives, not a long list.
History update
If the user reports the outcome, record it and mention the logged takeaway that will affect future recommendations.
Always include source links for the primary plan and any booking-critical backup.