供旅行摄影师复用的模板,生成调研简报和逐日拍摄行程,可选输出幻灯片、表格和地图文件。
# 摄影之旅规划提示词
## 旅行摄影师可复用模板
### v3.0
---
> **使用本模板的两种方式:**
>
> **轻量模式** — 跳过所有标记为 `[OPTIONAL]` 的章节以及整个“技术说明”部分。填写你的风格档案和旅行详情,然后让 Claude 生成基于文本的研究简报和逐日行程表。无需运行脚本。
>
> **完整制作模式** — 使用所有章节。Claude 将通过 Node.js + pptxgenjs 生成 PowerPoint 幻灯片、通过 Python + openpyxl 生成 Excel 工作簿,以及 Google 地图 CSV 文件 —— 全部采用颜色编码并经过质量检查。需要你熟悉从命令行运行脚本。
>
> 两种模式下:请填写所有标记为 `[FILL IN]` 的部分。标记为 `[EXAMPLE]` 的部分展示的是已完成条目的示例 —— 请用你自己的信息替换。标记为 `[OPTIONAL]` 的部分若与你的工作流程无关,可删除。
---
## 我是谁
我是一名旅行摄影师,计划一次 [与 / 不与] 伴侣同行的旅行。我的名字是 [FILL IN]。我使用的相机是 [FILL IN — 例如:Canon EOS R5 和 Sony A7IV]。我的旅行镜头套装:[FILL IN — 例如:16-35mm 广角、24-70mm 标准变焦、100mm 微距]。我携带的三脚架是 [FILL IN — 例如:碳纤维旅行三脚架 / 无三脚架 / 迷你八爪鱼三脚架]。我的携带系统是 [FILL IN — 例如:胸前挂带搭配 Peak Design 快拆扣,将相机固定在肩带上 / 带有模块内胆的相机背包]。
> [EXAMPLE]:我使用 Canon 5D Mark II 和 Canon EOS-R 配 EF 转接环进行拍摄。镜头组合:16-35mm(主力镜头)、24-105mm(街头/中焦段)、100mm 微距(细节/近摄)。携带系统:Condor Stowaway 胸前挂带搭配两个 Peak Design 快拆扣。本次旅行不携带 ND 滤镜。
---
## 我的摄影风格
这是最重要的部分。在推荐任何地点之前,请仔细阅读本节。
**核心主题:** [FILL IN — 描述你作品的一贯主线。你拍摄什么?为什么?是什么吸引你关注某个主题?]
> [EXAMPLE]:我拍摄那些持久存在的事物 —— 超越时间的建筑、景观和瞬间。我作品的主线是那些曾被建造或使用、如今已超越其原始用途却依然矗立的事物。
**技术特征:** [FILL IN — 列出你在构图和技术上的固定选择。]
> [EXAMPLE]:
> - 对称或接近对称的构图,具有强烈的中心消失点
> - 低角度或仰拍以夸张尺度并消除地平线 —— 我一贯如此操作
> - 使用单一人像作为比例参照,而非主要主体
> - 长曝光或慢快门以抹去水体、云层和人群的动态痕迹
> - 对结构性、工业性和衰败主题使用黑白;当色彩本身成为主题时则使用彩色
> - 强烈的影调对比 —— 我的打印风格偏暗
> - 我更关注事物的底部、内部骨架和结构骨骼,而非表面外观
**反复出现的主题类别:** [FILL IN — 列出你一贯寻找的场所和主题类型。]
> [EXAMPLE]:
> - 衰败与废弃 —— 已失去原有功能的事物(飞机残骸、毁坏的教堂、废弃机构)
> - 具有重量感和边缘感的神圣空间 —— 不是漂亮的教堂,而是曾发生过事件的空间
> - 古老与工业的并置(发电厂中的古代大理石、现代广场中的罗马柱)
> - 地下与地底空间 —— 墓穴、隧道、现代城市之下的古老层次
> - 几何结构形式 —— 桥梁、码头、拱门、重复元素
> - 安静空旷的街道 —— 我在人群到来前拍摄
> - Atlas Obscura 类型的地点 —— 不寻常、隐秘、被遗忘之处
**我一贯避免的内容:** [FILL IN — 列出你不希望被推荐的内容。]
> [EXAMPLE]:
> - 明信片式构图的著名景点
> - 摆拍的人物
> - 柔和或感伤的光线
> - 将拥挤的旅游热点作为主要目标
> - 将市场作为计划中的停靠点(偶然遇到则可接受)
---
## 旅行伴侣 [OPTIONAL]
[FILL IN 或删除本节] — 如果你与伴侣同行,请在此描述他们的兴趣,以便 Claude 能制定出适合双方的计划,而不是仅为摄影师设计、另一个人被动跟随的行程。
> [EXAMPLE]:我的伴侣全程同行。他们喜欢精品购物、开胃酒文化、街区漫步,以及包括骨冢和地下墓穴在内的非寻常文化体验。他们乐于前往奇特地点。几乎所有摄影目标都是共同经历 —— 他们在绝大多数拍摄中都在场,并非在别处等待。唯一真正独处的时间是黎明前的拍摄。请将共享体验纳入计划,而非并行安排。
**关于冒险与体力消耗:** 默认情况下,一个经过全面研究、已购票且预先安排好的行程可能显得毫无风险且被动——没有任何意外,无需体力付出,也没有不确定性。如果存在更具挑战性、需要更多体力投入的抵达方式(例如攀爬下到某个地点而非乘船,徒步穿越小径而非驾车),应明确将其作为可选项呈现,而不是静默地默认选择较轻松的选项。不仅要描述更具挑战性的选项——还需检查其返程后勤安排(例如,若从山顶徒步下山,车辆最终停在哪里?你如何返回取车?)。
**关于疲劳:** 不要假设在多城市旅行中精力是无限的。需计算凌晨拍摄、时差和每日步行距离带来的累积负荷,并标记出行程中完全没有真正休息早晨的情况。包含五次高质量的黎明前拍摄的行程,胜过六次平庸的拍摄。建议在行程中期左右安排至少一次无需闹钟、完全无计划的休息早晨,而不仅仅是在抵达当天安排休息。
列:Name, Description, Category, Best Time, Latitude, Longitude, Address。
**关键要求**:使用 Python 的 csv.writer 并采用 utf-8 编码。不得包含特殊字符——仅使用纯 ASCII 字符,并进行显式字符替换(例如 é→e, —→--, '→')。包含坐标前务必验证其准确性。
类别:Shooting Location, Shared Activity, Base, High Viewpoint, Transit, Optional Day Trip, CLOSED - DO NOT USE, Atlas Obscura Optional。
**文件命名规范**:[destination]-trip-[year]-v[N].pptx / .xlsx / [city]-locations-v[N].csv。每次重建时递增版本号,并确保演示文稿、工作簿和所有 CSV 文件保持相同的版本号,即使只有一个文件发生更改——需对未更改的文件进行重命名或复制,以保证整个交付文件集同步一致。
- **星期几:** 始终使用 Python datetime 模块根据实际旅行年份进行计算。绝不猜测。
- **光线时间:** 始终使用 Python astral 库,结合城市精确坐标和旅行日期进行计算。绝不估算。
- **门票价格与预订窗口:** 搜索当前价格——不要依赖训练数据
- **不得产生幻觉**——若对某个事实不确定,应进行搜索或明确说明。若被直接问及“你为何在 X 上产生幻觉”,应坦率承认,而非试图解释开脱。
- **当新信息与先前研究相矛盾时**(例如场馆官方邮件回复),应在同一次修改中将更正内容同步至所有受影响的交付物——包括日程表、地点幻灯片、预订幻灯片、Excel 笔记、CSV 文件——而不仅限于对话中更正。
---
## ATLAS OBSCURA 选点原则
严格依据你的风格画像筛选 Atlas Obscura 推荐地点。以下为通常适用与不适用的类型参考:
**高度契合类型:**
- 地下或地底空间(墓穴、隧道、古代地层)
- 荒废或衰败空间(旧机构场所、工业遗址)——纳入前须核实当前安全状况与合法进入权限;无论摄影吸引力多高,凡需非法侵入者一律排除
- 骨骸教堂与骨库
- 隐藏的建筑异常点(小巷中的螺旋楼梯、公园里的炼金术士之门)
- 已进入诡异领域的神圣空间
**低度契合类型——禁止推荐:**
- 缺乏强烈视觉潜力的古怪博物馆
- 历史意义浓厚但摄影表现力不足的地点
- 任何需要非法或危险途径进入的地点——若进入权限存疑,应标注并标记为待研究,而非直接推荐
---
## 开胃酒/餐饮调研标准
每座城市需调研 3–4 家具体本地酒吧或餐厅,要求如下:
- 本地人群聚集,非面向游客
- 具体命名场所,并附街道地址
- 一句话描述其值得前往的原因
- 标注重要关闭信息(每周某日、每日时段)
- 优先选择靠近拍摄地点的场所,以便同一地点可在黎明(拍摄)和傍晚(开胃酒)两次使用——如能实现此搭配则尤为理想
- 将这些选项以菜单形式呈现,覆盖整个旅程的晚间安排,而非单晚行程——除非用户明确表示希望如此,否则不得暗示每晚都需辗转多个酒吧
---
## 规划流程
按以下顺序执行:
1. 若未提供,则先询问旅行日期、城市及交通方式
2. 使用 Python 验证星期几,再进行其他任何操作
3. 使用 Python astral 库为所有拍摄日计算光线时间
4. 调研并提出拍摄地点——需符合我的风格画像——提出前需请求确认后再继续构建
5. 调研并提出各城市的住宿区域建议——提出前需请求确认
6. 调研各城市的 Atlas Obscura 推荐点——提出时需如实评估契合度
7. 调研各城市的本地特色餐饮/饮品场所
8. 调研各城市的高点观景位置,按“日落后可登”与“仅黄金时段可登”分类
9. 确定需提前预订的项目及其预订开放时间窗口
10. 构建完整日程——包含破晓前拍摄、共享体验、餐饮/开胃酒、自由时间,以及至少一个真正无计划的休息早晨
11. **提交前审计所构建的日程:** (a) 是否包含任何真实的体力消耗或未计划的时间?还是所有项目均为购票入场且被动参与?(b) 累计的破晓前起床与步行负荷是否留有充分空间以真正享受旅程,还是疲劳会在中途累积加剧?
12. 一次性构建全部交付物:PowerPoint、Excel、CSV
13. 交付前对幻灯片进行 QA:通过 soffice 转为 PDF,再用 pdftoppm -jpeg -r 120 生成图像,逐页审查
**批量处理变更,仅在明确被告知时才重新构建。** 在修改任何文件前必须确认所有变更。将用户请求的变更暂存于持续更新的列表中,统一一次性重建全部内容,而非每次变更后立即重建。
---
## 技术备注 【可选——仅在使用 PowerPoint、Excel 或 CSV 交付物时相关】
### pptxgenjs:
- 切勿将 lambda 作为位置参数 y 传入辅助函数——应使用内联 `s.addText()` 并指定明确坐标
- 所有项目符号列表文本框必须添加 `valign: "top"`
- 每个项目符号数组的最后一项必须显式包含 `options: { bullet: true }`
- 不得在十六进制颜色值中使用 `#`——传递时不带井号
- 构建内容长度不一的卡片网格时,不可假设行高统一——应根据条目数量测量/估算每张卡片高度,或为每列维护独立的累计 y 偏移量,防止较高卡片与下一行重叠
- 每次重建后均需 QA:`soffice --headless --convert-to pdf`,然后 `pdftoppm -jpeg -r 120`,审查后再交付
### openpyxl:
- 所有单元格填充均使用 `PatternFill("solid")`
- 冻结窗格应设在可滚动数据区域的左上角(若使用带有标题行和日期列轴的日历网格 Master 表格,该位置会变动)
- 所有工作表设置 `showGridLines = False`
- 当工作表为扁平列表时,在标题行自动启用筛选;日历网格型主表无需自动筛选
- 对于日历网格布局:在合并单元格前,需先解决一天内时间块重叠的问题(按开始时间排序,将一个时间块的结束时间截断至下一个时间块的开始时间);对于命名的或大致的时间段标签(如“傍晚”),必须提供明确的锚定小时映射,因为它们没有确切的时钟时间
### CSV 文件:
- 始终使用 Python 的 `csv.writer`,并采用 utf-8 编码
- 不使用特殊字符 — 仅使用纯 ASCII 字符,并进行显式字符替换(如 é→e,—→--,'→')
- 在包含坐标前,务必验证其准确性
### 日程分页(PowerPoint):
- 默认情况下,不要将一个城市的每日行程拆分到多个幻灯片中。应将同一城市的所有天数合并到单张幻灯片上。
- 仅当实际渲染内容超出可用幻灯片高度时,才拆分至续页 — 应根据总行数与可用垂直空间进行判断,而非依赖固定阈值。
---
## 风格偏好
[FILL IN — 描述你的整体规划理念。示例如下。]
> [EXAMPLE]:
> - 重质不重量 — 少而精的地点优于全面但浅显的清单
> - 最小化后勤摩擦 — 若可将目标地点聚类,则避免跨城穿行
> - 偏好真实体验而非游客导向 — 若存在较少人访问的同等替代地点,则优先推荐
> - 日出前拍摄为优先事项 — 但几乎所有摄影目标都与同伴共享体验
> - 偏好独特而非著名 — 全程体现 Atlas Obscura 式的探索精神
> - 冒险与未计划的时间应被刻意预留,而非仅追求持票活动的效率
> - 若对某一事实存疑,务必先搜索核实 — 若无法验证,应明确说明,而非将推断当作确认事实呈现
---
## 同行者优先事项 [可选]
[FILL IN 或删除本节] — 若与同伴同行,请列出对他们重要的事项,以便将其优先级融入共用活动及餐饮/餐前酒 slides 中,而非事后补加。
> [EXAMPLE]:
> - 精品购物(非连锁店,非百货公司)
> - 餐前酒文化 — 分散安排在旅行的各个夜晚,而非默认每晚例行
> - 在具有本地氛围的街区漫步
> - 独特的文化体验 — 愿意尝试骨棺室、地下墓穴及诡异场所
> - 美食与本地餐厅
请记住:绝大多数摄影地点本就应是共享体验。应将行程视为联合行程表,仅包含少数独享的日出前时段,而非一份摄影师的行程表,仅附带一名随行同伴。
---
*本模板源自一次真实的多城意大利旅行规划工作流,历经多次完整交付物重建周期优化而成。适用于 Claude、ChatGPT、Gemini 或任何现代 LLM。*# Photography Trip Planning Prompt
## Reusable Template for Travel Photographers
### v3.0
---
> **Two ways to use this template:**
>
> **Lightweight mode** — Skip all sections marked `[OPTIONAL]` and the entire Technical Notes section. Fill in your style profile and trip details, then ask Claude for a text-based research brief and day-by-day schedule. No scripting required.
>
> **Full production mode** — Use every section. Claude will produce a PowerPoint slide deck (via Node.js + pptxgenjs), an Excel workbook (via Python + openpyxl), and Google Maps CSVs — all color-coded and QA'd. Requires comfort running scripts from the command line.
>
> In both modes: fill in every section marked `[FILL IN]`. Sections marked `[EXAMPLE]` show what a completed entry looks like — replace them with your own details. Sections marked `[OPTIONAL]` can be removed if not relevant to your workflow.
---
## WHO I AM
I am a travel photographer planning a trip [with / without] a companion. My name is [FILL IN]. I shoot with [FILL IN — e.g., Canon EOS R5 and Sony A7IV]. My lens kit for travel: [FILL IN — e.g., 16-35mm wide, 24-70mm standard, 100mm macro]. I travel with [FILL IN — e.g., a carbon fiber travel tripod / no tripod / a compact gorilla-pod]. My carry system is [FILL IN — e.g., a chest rig with Peak Design clips to secure cameras to the straps / a camera backpack with a cube insert].
> [EXAMPLE]: I shoot with a Canon 5D Mark II and Canon EOS-R with EF adapter. Lens kit: 16-35mm (primary workhorse), 24-105mm (street/mid-range), 100mm macro (details/close work). Carry system: a Condor Stowaway chest rig with two Peak Design clips. No ND filters on this trip.
---
## MY PHOTOGRAPHIC STYLE
This is the most important section. Read it carefully before suggesting any locations.
**The core subject:** [FILL IN — Describe the through-line of your work. What do you photograph and why? What draws you to a subject?]
> [EXAMPLE]: I photograph things that endure — structures, landscapes, and moments that exist outside of time. The through-line across my work is things built or lived in that now outlive their original purpose, still standing.
**Technical signatures:** [FILL IN — List your consistent compositional and technical choices.]
> [EXAMPLE]:
> - Symmetrical or near-symmetrical composition with a strong central vanishing point
> - Low angle or looking straight up to exaggerate scale and eliminate horizon — I do this consistently
> - A single human figure used for scale, not as the primary subject
> - Long exposure or slow shutter to pull motion out of water, clouds, and crowds
> - B&W for structural, industrial, and decay subjects; color when the palette itself is the subject
> - Strong tonal contrast — I print dark
> - The underside, interior skeleton, and structural bones of things interest me more than facades
**Recurring subject categories:** [FILL IN — List the types of places and subjects you consistently seek out.]
> [EXAMPLE]:
> - Decay and abandonment — things that have outlived their purpose (plane wrecks, ruined churches, abandoned institutions)
> - Sacred spaces with weight and edge — not pretty churches, spaces where something happened
> - Old-meets-industrial juxtapositions (ancient marble in a power plant, Roman columns in a modern piazza)
> - Underground and subterranean spaces — crypts, tunnels, ancient layers beneath modern cities
> - Geometric structural form — bridges, piers, arches, repeating elements
> - Quiet and empty streets — I shoot before crowds arrive
> - Atlas Obscura-type locations — the unusual, the hidden, the forgotten
**What I consistently avoid:** [FILL IN — List what you do not want recommended.]
> [EXAMPLE]:
> - Postcard framing of famous places
> - Posed subjects
> - Soft or sentimental light
> - Crowded tourist spots as primary targets
> - Markets as planned stops (open to stumbling upon them)
---
## TRAVEL COMPANION [OPTIONAL]
[FILL IN or delete this section] — If you are traveling with a companion, describe their interests here so Claude can build a plan that works for both of you, not a photographer's itinerary with someone along for the ride.
> [EXAMPLE]: My partner travels with me for the entire trip. They enjoy boutique shopping, aperitivo culture, neighborhood wandering, and unusual cultural experiences including ossuaries and catacombs. They are game for unusual locations. Nearly all photography targets are shared experiences — they are present for the vast majority of shoots, not waiting elsewhere. The only genuinely solo time is pre-dawn sessions. Build shared experiences into the plan, not a parallel track.
**On adventure and physical effort:** By default, a fully researched, ticketed, pre-scheduled itinerary can feel risk-free and passive — nothing left to chance, no physical exertion, no uncertainty. If a harder, more physically engaged way to reach a location exists (climbing down to a site instead of taking a boat, hiking a trail instead of driving), surface it explicitly as a choice rather than silently defaulting to the easier option. Don't just describe the harder option — check the return logistics too (e.g., if hiking down from a summit, where does the car end up, and how do you get back to it?).
**On fatigue:** Don't assume unlimited energy across a multi-city trip. Calculate the cumulative load of pre-dawn shoots, jet lag, and daily walking distance, and flag when a trip has no genuine rest morning built in. A trip with five excellent pre-dawn sessions beats one with six mediocre ones. Recommend at least one no-alarm, fully unplanned rest morning roughly mid-trip, not just on arrival day.
---
## THE TRIP
**Destination:** [FILL IN — e.g., "Italy: Rome, Venice, Milan"]
**Departure:** [FILL IN — e.g., "LAX, Sept 16, 3:05 PM"]
**Return:** [FILL IN — e.g., "LIN (Milan Linate), Sept 28, 9:50 AM"]
**Outbound arrival:** [FILL IN — e.g., "FCO (Rome), Sept 17, 2:05 PM"]
**Cities and nights:** [FILL IN — e.g., "Rome 3 nights, Venice 3 nights, Milan 3 nights"]
**City-to-city transport:** [FILL IN — e.g., "Frecciarossa train, targeting ~5 PM arrival at each new city to protect the outgoing city's final morning"]
**Base neighborhoods:** [FILL IN, or ask Claude to recommend based on shooting targets and companion interests]
---
## WHAT I WANT CLAUDE TO BUILD
### 1. PowerPoint Slide Deck [OPTIONAL — requires Node.js and pptxgenjs]
> This deliverable is for users comfortable running Node.js scripts. If you want a simpler output, replace this section with a request for a formatted document or text plan.
**Format:** LAYOUT_WIDE (13.3 x 7.5 inches), built with pptxgenjs in Node.js. Dark navy background with gold accent text on divider and reference slides. Off-white background on content/schedule slides. Version number on cover and filename.
**Badges/flags on slide header or inline:**
- Red badge: "★ ADVANCE BOOKING REQUIRED" — for locations requiring pre-purchase tickets
- Green badge: "★ ATLAS OBSCURA" — for unusual/hidden locations in that spirit
- Gold banner: "SHARED EXPERIENCE" — for meaningful shared visits
- Dark red badge: "⊘ PHOTOGRAPHY PROHIBITED" — only after direct verification (see Location Research Standards)
- Dark red badge on High Viewpoints cards: "⊘ CONFIRMED CLOSED" — for viewpoints that no longer exist or have shut down
**Slides to include:**
- Cover (trip title, cities, dates, version number)
- Trip overview (card layout, one card per city stop with dates/nights/base)
- Photography approach (style summary, gear)
- Schedule color legend
- For each city:
- City section divider (full dark background)
- Light timing table (blue hour start, sunrise, golden hour AM, golden hour PM, sunset, blue hour end — calculated with Python astral library, exact coordinates, actual trip dates)
- Base camp slide (why this neighborhood, proximity to shooting targets, highlights nearby, transit)
- Location slides for each confirmed shooting target: About / Shot List (4–5 shots) / Unconventional Perspectives (3–4 angles), plus a Key Notes bar (hours, access, cost)
- High Viewpoints slide (card layout, 3 viewpoints; flag confirmed closures; distinguish true post-sundown viewpoints from golden-hour-only ones that close before dark)
- Daily schedule — combine all days for a city onto a single slide; only split to a continuation slide if the content would actually overflow the slide height. Do not split preemptively at a fixed row count.
- Time Allocation pie chart (hours by category, pulled from actual schedule data)
- Tickets and booking slide (3 columns: book in advance / pay on day / free)
- Gear list slide (cameras, lenses, support, carry system, accessories, notes on where tripods/photography are restricted)
- Aperitivo/food bars slide — specific named bars by city, local picks only, with address and description. These are options spread across multiple evenings, not a single-night bar crawl.
- Train/transport connections summary slide [OPTIONAL]
- **Appendix — Shot Diagrams:** plan-view and cross-section schematics for every photography location. Camera position (red dot), shooting direction (dashed line), field-of-view cone (dotted lines), recommended lens, all numbered to match the location's shot list. Every plan-view diagram must include a north arrow/compass indicator. Cross-section diagrams (showing vertical relationships like a flooded crypt or a cliff-face) don't need one.
**Schedule color coding (7 categories):**
- Pre-Dawn Shoot / Photography: dark navy bg, light blue text
- Aperitivo: dark purple bg, light purple text
- Shared Activity: dark gold bg, light gold text
- Free / Optional: dark green bg, light green text
- Travel / Arrival: dark gray bg, light gray text
- Rest / Checkout: medium gray bg, light gray text
- Advance Booking Required: dark red bg, light red text
- (Sunset/golden-hour blocks can get a dark-orange variant if useful)
---
### 2. Excel Workbook [OPTIONAL — requires Python and openpyxl]
**Master tab — ask which format the person wants:**
- **List format:** chronological rows (Date, Day, City, Time, Activity, Category, Duration, Notes), one row per activity across the whole trip.
- **Calendar grid format:** horizontal week view — all trip days as columns left to right, a shared time axis down both sides (e.g. 5:00 AM–10:30 PM in 30-minute rows), each activity rendered as a color-coded block merged vertically across the rows it spans. Travel/transition-day columns get a visually distinct header and background tint. Sunrise, sunset, blue hour, and golden hour rows are highlighted on the time axis (label as trip-average approximations with a footnote — point to per-city Light Timing slides for precision). One sheet, all days, no tab splits.
One tab per city (vertical day-by-day format regardless of which Master style is chosen), plus a Legend tab.
Same color coding as schedule slides. Freeze panes, hide gridlines, auto-filter on header rows where the sheet is a flat list. Include a Duration column.
---
### 3. Google Maps CSVs — one per city [OPTIONAL]
Columns: Name, Description, Category, Best Time, Latitude, Longitude, Address.
**Critical:** Use Python csv.writer with utf-8 encoding. No special characters — plain ASCII only, with explicit character substitution (e.g. é→e, —→--, '→'). Verify coordinates before including.
Categories: Shooting Location, Shared Activity, Base, High Viewpoint, Transit, Optional Day Trip, CLOSED - DO NOT USE, Atlas Obscura Optional.
**File naming convention:** [destination]-trip-[year]-v[N].pptx / .xlsx / [city]-locations-v[N].csv. Increment the version number on every rebuild, and keep the deck, workbook, and all CSVs at the same version number even if only one file changed — rename/re-copy unchanged files so the full deliverable set stays in sync.
---
## LOCATION RESEARCH STANDARDS
### For each shooting location, provide:
1. **Description** — what it is, why it matters photographically, best conditions, connection to my style profile where relevant
2. **Shot list** — 4–5 standard shots worth getting
3. **Unconventional perspectives** — 3–4 angles or approaches most photographers miss, matched to my style profile above
4. **Key notes** — hours, access, cost, transit, proximity to other targets
5. **Best time** — pre-dawn / early morning / morning / afternoon / golden hour
### Photography policy verification — non-negotiable:
Before listing any location as a photography target, **verify the actual photography policy directly** — official site, or by contacting the venue if the policy is ambiguous or high-stakes. Do not assume "no photography" or "photography allowed" based on general reputation or partial information. Two real examples: a location assumed fully off-limits turned out to allow personal use with equipment-timing restrictions once the venue was emailed directly; a separate underground site turned out to prohibit photography completely despite initially being treated as a shooting target. When a venue's written policy restricts *equipment* (tripods, DSLRs) to specific hours rather than restricting photography outright, treat it as a scheduling constraint, not a footnote.
### For each city, also research:
- The best base neighborhood (balancing proximity to shooting targets and companion interests)
- **High viewpoints — split into two categories:** (a) true post-sundown/night viewpoints that stay open into darkness, and (b) golden-hour-only viewpoints that close before true dark (many rooftop terraces do — check exact closing time against that city's actual sunset time before assuming a rooftop works for night photography). Confirm current open/closed status; flag confirmed permanent closures clearly rather than omitting them silently.
- Optional day trips (3–4 options matched to both your aesthetic and companion interests)
- Atlas Obscura locations that genuinely fit your style — filter carefully, not everything qualifies
- Specific aperitivo/food bars: local picks only, not tourist-facing, with name, address, and what makes them worth going to
- Self-drive or no-license rental options (boats, small vehicles) where they'd give more compositional control than a scheduled ferry/tour — verify pricing and access logistics directly, don't extrapolate from aggregated blog content [OPTIONAL]
### Research and verification requirements:
- **Verify all locations exist** before including — web search any location you are not certain about
- **Confirm current access status** — search for closures before recommending any viewpoint or attraction
- **Days of week:** always calculate with Python datetime for the actual trip year. Never guess.
- **Light timing:** always calculate with Python astral library using exact city coordinates and trip dates. Never estimate.
- **Ticket prices and booking windows:** search for current prices — do not rely on training data
- **Do not hallucinate** — if uncertain about a fact, search or say so. If asked directly "why did you hallucinate X," own it plainly rather than explaining it away.
- **When new information contradicts prior research** (e.g., an official email reply from a venue), propagate the correction across every affected deliverable in the same pass — schedule, location slide, booking slide, Excel notes, CSV — not just in conversation.
---
## ATLAS OBSCURA APPROACH
Filter Atlas Obscura picks strictly against your style profile. Use these as a guide for what typically works and what doesn't:
**Strong fits:**
- Underground or subterranean spaces (crypts, tunnels, ancient layers)
- Abandoned or decaying spaces (former institutions, industrial ruins) — verify current safety and legal access status before including; drop anything requiring trespass regardless of photographic appeal
- Bone chapels and ossuaries
- Hidden architectural anomalies (a spiral staircase down an alley, an alchemist's gate in a park)
- Sacred spaces that have crossed into the uncanny
**Weak fits — do not suggest:**
- Quirky museums without strong visual potential
- Locations that are historically interesting but not photographically compelling
- Anything requiring illegal or unsafe access — note if access is uncertain and flag for research rather than recommending
---
## APERITIVO/FOOD RESEARCH STANDARD
For each city, research 3–4 specific local bars or restaurants. Requirements:
- Local crowd, not tourist-facing
- Named venue with street address
- One-sentence description of what makes it worth going to
- Flag any important closures (day of week, time of day)
- Prioritize venues near shooting locations so the same place can be visited at dawn (shooting) and evening (aperitivo) — this is a strong pairing when possible
- Present these as a menu of options across the trip's evenings, not a single night's itinerary — don't imply nightly bar-hopping unless the person says that's what they want
---
## PLANNING PROCESS
Follow this order:
1. Ask for trip dates, cities, and transport if not provided
2. Verify days of week with Python before doing anything else
3. Calculate light timing with Python astral for all shooting days
4. Research and propose shooting locations — filter against my style profile — ask to confirm before building
5. Research and propose base neighborhoods per city — ask to confirm
6. Research Atlas Obscura picks per city — propose with honest assessment of fit
7. Research specific local food/drink venues per city
8. Research high viewpoints per city, split by post-sundown vs. golden-hour-only access
9. Identify advance booking requirements and booking windows
10. Build the schedule — pre-dawn shoots, shared experiences, food/aperitivo, free time, and at least one genuine unplanned rest morning
11. **Audit the built schedule before presenting it:** (a) does it contain any real physical effort or unplanned time, or is everything ticketed and passive? (b) does the cumulative pre-dawn + walking load leave room to actually enjoy the trip, or will fatigue compound by mid-trip?
12. Build all deliverables in one go: PowerPoint, Excel, CSVs
13. QA slides before delivering: convert to PDF via soffice, then pdftoppm -jpeg -r 120, review per-slide images
**Batch changes, then rebuild only when explicitly told to.** Confirm all changes before touching any files. Hold requested changes in a running list and rebuild everything together, rather than rebuilding after each individual change.
---
## TECHNICAL NOTES [OPTIONAL — relevant only if using the PowerPoint, Excel, or CSV deliverables]
### pptxgenjs:
- Never pass a lambda as a positional y argument to helper functions — use inline `s.addText()` with explicit coordinates
- Always add `valign: "top"` to bulleted list text boxes
- Every bullet array's last item must include `options: { bullet: true }` explicitly
- Never use `#` in hex color values — pass without the hash
- When building card grids where content length varies, don't assume uniform row heights — either measure/estimate per-card height from item count, or use independently-tracked running y-offsets per column so taller cards don't overlap the next row
- QA every rebuild: `soffice --headless --convert-to pdf`, then `pdftoppm -jpeg -r 120`, review before delivering
### openpyxl:
- Use `PatternFill("solid")` for all cell fills
- Freeze panes at the top-left of the scrollable data region (this shifts if using a calendar-grid Master with header rows and a day-column axis)
- Set `showGridLines = False` on all sheets
- Auto-filter on header rows where the sheet is a flat list; a calendar-grid Master doesn't need auto-filter
- For calendar-grid layouts: resolve overlapping time blocks within a day before merging cells (sort by start time, clip a block's end to the next block's start); named/approximate time-of-day labels need an explicit anchor-hour mapping since they have no literal clock time
### CSVs:
- Always use Python `csv.writer` with utf-8 encoding
- No special characters — plain ASCII only, with explicit character substitution (é→e, —→--, '→')
- Verify coordinates are accurate before including
### Schedule splits (PowerPoint):
- Do not split a city's daily schedule across slides by default. Combine all days for one city onto a single slide.
- Only split to a continuation slide if the actual rendered content would overflow the available slide height — check total row count against available vertical space, not a fixed threshold.
---
## STYLE PREFERENCES
[FILL IN — describe your general planning philosophy. Examples below.]
> [EXAMPLE]:
> - Quality over quantity — fewer, richer locations beat comprehensive lists
> - Minimal logistics friction — don't route across a city when targets can be clustered
> - Authentic over tourist-facing — if a less-visited equivalent exists, recommend it
> - Pre-dawn access is a priority — but nearly all photography targets are shared experiences with my companion
> - The unusual over the famous — Atlas Obscura sensibility throughout
> - Adventure and unplanned time deserve deliberate room, not just ticketed efficiency
> - When in doubt about a fact, search before answering — and say so if you can't verify something rather than presenting an inference as confirmed
---
## COMPANION PRIORITIES [OPTIONAL]
[FILL IN or delete this section] — If traveling with a companion, list what matters to them so their priorities are built into the shared activities and food/aperitivo slides, not treated as an afterthought.
> [EXAMPLE]:
> - Boutique shopping (not chain stores, not department stores)
> - Aperitivo culture — spread across the trip's evenings, not a nightly ritual by default
> - Neighborhood wandering in places that feel local
> - Unusual cultural experiences — game for ossuaries, catacombs, and the uncanny
> - Good food and local restaurants
Remember: the large majority of photography locations should already be shared experiences. Treat the schedule as a joint itinerary with a few solo pre-dawn windows, not a photographer's itinerary with a companion along for the ride.
---
*Template built from a real multi-city Italy trip planning workflow, refined across multiple full deliverable rebuild cycles. Works with Claude, ChatGPT, Gemini, or any modern LLM.*