TripIt Calendar
Use this skill to retrieve the user's upcoming travel plans from a TripIt iCal feed.
Routing
Use this skill when the user asks about:
- - their next trip
- upcoming trips this week or this month
- flight, hotel, train, or car bookings that are already in TripIt
- travel itinerary details already saved in TripIt
- whether they have any travel coming up
Do not use this skill when the user asks about:
- - live flight status, delays, gates, baggage belts, or airport operations
- finding new flights or hotels on the web
- visa rules, weather, or destination advice
- anything that is not based on the user's TripIt itinerary
What this skill needs
- -
TRIPIT_ICAL_URL must be available - Python with
requests and icalendar installed
OpenClaw can load environment variables from ~/.openclaw/.env. This script also falls back to reading ~/.openclaw/.env directly if TRIPIT_ICAL_URL is not already present in the process environment.
Expected entry in ~/.openclaw/.env:
CODEBLOCK0
Execution
Prefer the OpenClaw virtual environment Python when it exists:
CODEBLOCK1
If that exact path is not available, use:
CODEBLOCK2
Use --pretty only when a human-readable terminal view is explicitly needed.
Output
The script returns JSON with:
- -
next_trip: the next detected trip group - INLINECODE9 : up to 20 future itinerary items
- INLINECODE10 : number of upcoming events and detected trips
- INLINECODE11 : timestamp of the lookup
Each event may include:
- - summary
- start and end time
- location
- status
- short description
How to respond
- 1. Run the script.
- Read
next_trip first. - Give the user a concise summary of the next trip.
- If useful, list the most relevant itinerary items in chronological order.
- If there are no upcoming events, clearly say there is no upcoming TripIt itinerary.
- Never invent flight numbers, hotels, dates, or locations that are not in the JSON.
Examples
User requests that should trigger this skill:
- - What is my next trip?
- Do I have any travel coming up?
- Show my upcoming TripIt itinerary.
- Any flights or hotels this month?
- What bookings do I have in TripIt next week?
Example commands:
CODEBLOCK3
Troubleshooting
- - If the skill does not appear, confirm
TRIPIT_ICAL_URL is available to OpenClaw. - If the agent is running in a sandboxed Docker session, the environment variable must also be passed into the sandbox.
- If Python packages are missing, install them into the same Python environment used for the command.
TripIt 日历
使用此技能从 TripIt iCal 订阅源检索用户即将到来的旅行计划。
路由
当用户询问以下内容时使用此技能:
- - 他们的下一次旅行
- 本周或本月即将到来的旅行
- 已在 TripIt 中的航班、酒店、火车或汽车预订
- 已保存在 TripIt 中的旅行行程详情
- 他们是否有即将到来的旅行
当用户询问以下内容时不要使用此技能:
- - 实时航班状态、延误、登机口、行李传送带或机场运营
- 在网上查找新的航班或酒店
- 签证规定、天气或目的地建议
- 任何不基于用户 TripIt 行程的内容
此技能需要
- - TRIPITICALURL 必须可用
- 已安装 requests 和 icalendar 的 Python
OpenClaw 可以从 ~/.openclaw/.env 加载环境变量。如果 TRIPITICALURL 尚未存在于进程环境中,此脚本也会直接回退读取 ~/.openclaw/.env。
~/.openclaw/.env 中的预期条目:
bash
TRIPITICALURL=https://www.tripit.com/feed/ical/private/.../tripit.ics
执行
优先使用 OpenClaw 虚拟环境 Python(如果存在):
bash
/home/picoclaw/.openclaw/workspace/openclawvenv/bin/python {baseDir}/finaltripit_ical.py
如果该确切路径不可用,则使用:
bash
python3 {baseDir}/finaltripitical.py
仅当明确需要人类可读的终端视图时才使用 --pretty。
输出
脚本返回 JSON,包含:
- - nexttrip:检测到的下一个旅行组
- upcomingevents:最多 20 个未来的行程项目
- counts:即将到来的事件数量和检测到的旅行数量
- generated_at:查询的时间戳
每个事件可能包含:
如何回复
- 1. 运行脚本。
- 首先读取 next_trip。
- 向用户提供下一次旅行的简洁摘要。
- 如果有用,按时间顺序列出最相关的行程项目。
- 如果没有即将到来的事件,明确说明没有即将到来的 TripIt 行程。
- 切勿编造 JSON 中不存在的航班号、酒店、日期或地点。
示例
应触发此技能的用户请求:
- - 我的下一次旅行是什么?
- 我最近有旅行安排吗?
- 显示我即将到来的 TripIt 行程。
- 这个月有航班或酒店吗?
- 下周我在 TripIt 中有哪些预订?
示例命令:
bash
/home/picoclaw/.openclaw/workspace/openclawvenv/bin/python {baseDir}/finaltripit_ical.py
/home/picoclaw/.openclaw/workspace/openclawvenv/bin/python {baseDir}/finaltripit_ical.py --pretty
python3 {baseDir}/finaltripitical.py
故障排除
- - 如果技能未出现,请确认 TRIPITICALURL 对 OpenClaw 可用。
- 如果代理在沙盒 Docker 会话中运行,环境变量也必须传递到沙盒中。
- 如果缺少 Python 包,请将它们安装到用于命令的同一 Python 环境中。