# 我請 AI agent 找聖誕機票，最便宜的那張並不是答案

> 你可以複製的 AI agent 搜尋機票工作流：包含修正後的行事曆檢查、帶有界線的指示、同時運行處理票價與航空公司質素的四個 agent、每項價格的來源與時間戳記，以及最後由人預訂。內含指示模板。

- URL: https://hyperfocusam.com/blog/ai-agent-flight-search-workflow-tc/
- Language: zh-Hant
- Author: Sam Wong (黃力桐), https://hyperfocusam.com/
- English edition: https://hyperfocusam.com/blog/ai-agent-flight-search-workflow/ (Markdown: https://hyperfocusam.com/blog/ai-agent-flight-search-workflow/index.md)
- Published: 2026-10-02; revised 2026-10-02

---

我的另一半建議在 12 月去歐洲旅行。我用一句指令把任務交給我在 Claude Code 中運行的 AI 幕僚長 Ada：「do a flight check for best pricing and timing in December and over Christmas」（看看 12 月和聖誕期間哪個價錢和日子最好）。之後，我又加了一行：「send some sub-agents」（派幾個 sub-agent 分頭去做）。

接下來發生的過程，最值得複製的部分不是工具本身，而是步驟的順序以及處理中的修正。同樣的模式也適用於 Claude Code、Grok、Moos，或你目前使用的任何個人 agent。

## 第一步：並行檢查背景，並修正正在執行的 agent

Ada 在同一個回合內做了兩件事。它啟動了一個針對整個城市列表的價格 agent，同時也打開了我的行事曆。

行事曆檢查發現了一個固定行程：在成都舉行的客戶工作坊，時間是 11 月 30 日至 12 月 3 日。第一個 agent 已經開始處理 12 月 1 日至 15 日的時段。因此，Ada 向正在運行的 agent 發送了一個修正：時段 A 現在從 12 月 4 日或之後才開始。至於 12 月的其他行程都是可以變動的定期會議，Ada 指出這一點，而不是默默地將它們視為不可移動的阻礙。

啟發點：一個忽略你行事曆的搜尋，會找出你根本無法乘搭的最低價機票。在進行搜索時同步執行背景檢查，並在獲取背景資訊的瞬間修正正在運行的 agent。更直接的啟發是：下次在發出指示前，先檢查行事曆。這樣就能省去一次修正。

## 第二步：帶有限制與界線的指示

指示寫得足夠精確，讓另一個 agent 可以直接執行而不需要詢問我任何細節：

- 從香港 (HKG) 出發，2 位成人，經濟艙。
- 時段 A：出發日期為 12 月 4 日至 15 日（根據修正後），停留 7 至 10 晚。
- 時段 B，聖誕節：出發日期為 12 月 18 日至 23 日，返回日期為 12 月 27 日至 1 月 3 日。在香港，12 月 25 日和 26 日是公眾假期，因此此時段包含這些日期。
- 一份固定的城市列表：倫敦、巴黎、阿姆斯特丹、法蘭克福、慕尼黑、蘇黎世、羅馬、米蘭、巴塞隆拿、馬德里、維也納、布拉格、赫爾辛基、伊斯坦堡、哥本哈根和里斯本。
- 僅限 Google Flights 的實時價格，並以港幣 (HKD) 計價，最佳票價需在第二個網站（Skyscanner 或 Kayak）進行交叉核實。
- 僅供閱讀。不進行預訂、不登入、不輸入任何個人細節。

「界線」不是裝飾。一個可以登入的瀏覽 agent 也可能進行購買。我要求它只是查看，而不是執行動作。

## 第三步：分解任務並平行運行

當我要求更多 agent 時，Ada 並沒有關閉第一個又重新開始。它將那個正在運行的 agent 縮小到一個城市群，並啟動了另外兩個，因此三個價格 agent 同時處理 17 個城市（在拆分時加入了布達佩斯）：

1. 北部和西部樞紐：倫敦、巴黎、阿姆斯特丹、法蘭克福、慕尼黑、蘇黎世。
2. 南部：羅馬、米蘭、巴塞隆拿、馬德里、里斯本。
3. 中部和北部，加上伊斯坦堡：維也納、布拉格、布達佩斯、赫爾辛基、哥本哈根、伊斯坦堡。

接著，它增加了一個從不查看價格表的第四個 agent。它的任務是航空公司：座位舒適度、準點記錄、冬季航班中斷風險、行李規定、Asia Miles 累計以及每家航空公司的價格定位。每一項說法都需要引用來源。

按地理區域劃分，可以讓每個 agent 的搜索範圍足夠小，確保能正確完成。將價格與質素分開，可以防止一個 agent 因為追求低價而推薦最差的航空公司。

有一個設定我下次會改：所有 agent 共用同一個瀏覽器。搜尋期間，一個 agent 把另一個 agent 正在使用的分頁轉到了維也納。若要同時運行多個 agent，應為每個 agent 提供獨立的瀏覽器視窗。

## 第四步：在執行中重新調整範圍

「重新調整範圍」值得獨立列出，因為這是大多數人會忽略的習慣。當計劃變動時，你不需要丟棄正在進行的工作。告訴正在運行的 agent 其新的範圍以及它可以放棄的部分。它已經花費的時間並未浪費，而且你也不會得到兩個 agent 在搜索相同的城市。

## 第五步：提供證據，而非摘要

每個 agent 都針對每張票價報告相同的四項內容：價格、來源網址、檢查時間以及注意事項。

「注意事項」正是價值所在。各 agent 的報告指出了單純「最低票價」答案會掩蓋的問題：

- 最便宜的票價路線經過中國大陸，且搜索結果僅顯示出程的時間。Kayak 揭露其中一條的回程長達 27 小時 20 分鐘。
- Google Flights 日期網格上的價格與結果頁面不符，因此 agent 只引用了結果頁面的數字。
- 一份 HK$8,780 的馬德里機票看似物美價廉，直到南歐 agent 開啟回程時才發現：航程長達 30 小時 45 分鐘，其中包括在上海的 14 小時 55 分鐘過夜轉機。
- Skyscanner 因機器人驗證阻擋了南歐 agent，因此它轉而於 Kayak 進行交叉比對並做出說明。當 Kayak 未顯示票價時，報告標註為「於航空公司網站驗證」，而非刪除注意事項。
- 法蘭克福和慕尼黑的聖誕市集分別在 12 月 22 日和 24 日關閉。買了便宜的聖誕機票飛去這兩個城市，抵達時，去的理由已經沒有了。

一個說「約 HKD 6,000」的 agent 沒有提供任何我能採取行動的資訊。一個給我連結、時間戳記和陷阱的 agent，則告訴我該看哪裡、數字的時效性如何以及這會花掉多少錢。這也是我教任何 AI 比較時用的準則：如果無法追溯一個數字的來源，就不能使用它。

## 第六步：質素 agent 改變了答案

最便宜的票價不是答案，原因就在第四個 agent。它的報告（附帶來源）讓價格表呈現出不同的樣貌：

- 最強的直航選擇是國泰航空，其來源將其評為今年世界最佳經濟艙之一。
- 最便宜的轉機選擇是中國國際航空，且其路線比許多其他轉機選項更短。土耳其航空則處於價格中間位置。
- 海灣地區航空公司在今年冬季存在領空風險。如果你預訂其中之一，請選擇可以更改的票價。
- 芬蘭航空有兩個已標記的罷工日：12 月 9 日和 13 日。
- 在冬季，轉機時請保留至少 2.5 小時。
- 若要聖誕節旅行，應在 10 月 12 日左右預訂。

這些內容都不在價格表上。單純的價格搜索會將廉價的某個海灣航空轉機或 27 小時的回程排在最前面，並稱之為勝利。

## 第七步：合併結果，答案就在這裡改變

Ada 是協調者。它將四份報告合併到每個時段的表格中，並給出一個建議，同時用一句話說明其中的權衡。接著，它就停止工作。最後的預訂由我負責，而旅程則是我與另一半共同決定的。

合併的過程正是價值顯現之時。沒有任何一個 agent 的最佳選擇能毫髮無傷地保留下來。北部和西部 agent 喜歡蘇黎世；南歐 agent 喜歡米蘭和羅馬；中部 agent 喜歡維也納。而質素 agent 則剔除了一個 Google 評為「低價」的票價：那是 12 月 7 日至 14 日的芬蘭航空直航赫爾辛基航班，因為這些日期涵蓋了它標記出的 12 月 9 日和 13 日罷工日期。這個標記僅來自單一來源，但這正是並行 agent 的用途所在：一個 agent 的發現，可以修正另一個 agent 找到的便宜票。

兩個模式在各個 agent 中重複出現，這是我確認它們是真實有效的依據。其中兩個 agent 各自被 Skyscanner 的機器人檢查擋住，於是改用 Kayak 交叉核實。此外，中部 agent 也發現了與第一個相同的日期網格問題：一旦選擇回程航班，價格就會上漲。

### 建議

價格於 2026 年 10 月 2 日，香港時間 01:23 至 02:25 之間，於 Google Flights（香港）查詢，針對 2 位成人、來回程、經濟艙。票價會變動，請將所有數字視為當下的快照。

- **整體首選：維也納。**
    - 12 月初：12 月 7 日至 14 日，2 人共 HK$10,660。經由蘇黎世的瑞士國際航空，去程 16h10，回程 14h20。Google Flights 將其評為低價，比平時便宜 HK$3,084，且聖誕市集已全面開放。
    - 聖誕節：12 月 21 日至 29 日，2 人共 HK$11,400。去程經由蘇黎世的瑞士國際航空或奧地利航空（16h10），回程經由法蘭克福的漢莎航空（15h）。於 12 月 22 日抵達，在 24 日前擁有兩個完整的市集日。於 02:20 HKT 時重新確認實時數據。
- **歐洲航空公司中最便宜：羅馬。** 12 月 7 日至 14 日為 HK$9,220（Kayak 確認），或 12 月 23 日至 29 日為 HK$10,574（Kayak 未確認）。在聖誕節期間，維也納比羅馬約貴 HK$826，但擁有聖誕市集。
- 最低票價（巴塞隆拿、馬德里、米蘭，約 HK$8,450–8,550）均經北京乘搭中國國際航空，單程約 16 至 19 小時。
- **性價比最高的直航選擇，也是意外之選：伊斯坦堡。** 乘坐土耳其航空直航航班，去程約 12 小時，回程 10 小時。12 月 5 日至 13 日為 HK$10,044（Kayak 符合），或 12 月 19 日至 28 日為 HK$10,604。伊斯坦堡在 12 月 25 日至 26 日期間正常營運，但缺乏聖誕節氣氛。
- **剩餘的風險：** 維也納聖誕節去程在蘇黎世轉機時間為 1 小時 10 分鐘，而質素 agent 建議在冬季至少保留 2.5 小時。若在同一張機票上，航空公司會重新預訂錯過轉機的航班，但下雪延誤的風險確實存在。這是預訂前需要權衡的代價。

### 各 agent 回報的全部票價

| 時段 | 路線與日期 | 2 人票價 (HKD) | 備註 |
|---|---|---|---|
| A | 巴塞隆拿，12 月 8 日至 16 日 | 8,454 | 發現的最低票價。經北京乘搭中國國際航空，去程約 18h45，回程已核實。Kayak 2 人 HK$8,594 |
| A | 米蘭，12 月 6 日至 13 日 | 8,494 | 便宜票價中航程最短，單程約 16h；回程已核實；未顯示於 Kayak：請於航空公司網站核實 |
| A | 馬德里，12 月 5 日至 12 日 | 8,531 | 經北京乘搭中國國際航空，去程約 18h，回程已核實。Kayak 2 人 HK$8,690 |
| A | 羅馬，12 月 7 日至 14 日 | 9,220 | 去程瑞士國際航空，回程瑞士國際航空或漢莎航空，約 15 至 16h。Kayak 完全吻合 |
| A | 伊斯坦堡，12 月 5 日至 13 日 | 10,044 | 土耳其航空直航，去程約 12h，回程 10h。Kayak 符合 |
| A | 法蘭克福，12 月 4 日至 13 日 | 10,158 | 北部與西部組中最便宜的。經由北京的中國國際航空，去程 15h45 |
| A | 慕尼黑，12 月 5 日至 13 日 | 10,236 | 中國國際航空 |
| A | 維也納，12 月 7 日至 14 日 | 10,660 | 整體首選。經由蘇黎世的瑞士國際航空，去程 16h10，回程 14h20。Google：偏低 |
| A | 巴黎，12 月 4 日至 14 日 | 10,670 | 中國國際航空。Kayak 顯示回程為 27h20 |
| A | 蘇黎世，12 月 6 日至 14 日 | 14,286 | 北部與西部組中最佳價值。瑞士國際航空直航，13h40 |
| A | 赫爾辛基，12 月 7 日至 14 日 | 14,958 | 芬蘭航空直航，Google：偏低。日期涵蓋質素 agent 標記的 12 月 9 日及 13 日罷工日期 |
| B | 羅馬，12 月 23 日至 29 日 | 10,574 | 經由法蘭克福的漢莎航空，去程 16h20，回程 14h55。Kayak 未確認此票價 |
| B | 伊斯坦堡，12 月 19 日至 28 日 | 10,604 | 土耳其航空直航 |
| B | 倫敦，12 月 18 日至 1 月 3 日 | 11,040 | 北部與西部組中最便宜的。經由北京大興的中國南方航空，去程 17h45 |
| B | 馬德里，12 月 23 日至 28 日 | 11,254 | 阿提哈德航空，Kayak 確認。海灣地區航空公司：只應預訂可更改的票價 |
| B | 阿姆斯特丹，12 月 18 日至 1 月 1 日 | 11,290 | 中國南方航空 |
| B | 維也納，12 月 21 日至 29 日 | 11,400 | 整體首選。去程經由蘇黎世的瑞士國際航空或奧地利航空（16h10，轉機 1h10），回程經由法蘭克福的漢莎航空（15h） |
| B | 巴黎，12 月 20 日至 27 日 | 11,806 | 經由上海的中國東方航空 |
| B | 法蘭克福，12 月 23 日至 28 日 | 16,376 | 北部與西部組中最便宜的直航航班。漢莎航空 |
| B | 蘇黎世，12 月 22 日至 1 月 3 日 | 16,696 | 直航。國泰航空 |

倫敦：Google 的「最便宜」分頁顯示由 HK$10,520 起，但我們沒有檢查該行程；Kayak 最便宜的同類選項需時 36h30。

羅馬：畫面上的 HK$9,100 是相同去程配 20 小時回程；多付 HK$120，回程可縮短至約 15 小時。

里斯本已從聖誕清單中剔除：所有低於 HK$16,000 的票價，其航程皆為 31 至 37 小時。

## 可以直接複製的指示範本

將括號內容替換為你的旅程。這可以作為發送給任何具備瀏覽能力的 agent 的單一指示。

```text
目標：尋找 [旅程] 的最佳票價和時間。提供建議；請勿預訂。

先看背景：在你開始搜尋前，先檢查我的行事曆中 [日期] 之間的固定行程。將例行會議視為可以改期。
請告訴我你排除哪些項目以及原因。

旅程：從 [HKG] · [2 成人] · [經濟艙]
時段 A：出發日期 [日期] 至 [日期]，停留 [7 至 10] 晚
時段 B：出發日期 [日期] 至 [日期]，返回日期 [日期] 至 [日期]
目的地：[城市列表]，分為 [3] 組，每組一個 agent

質素：另外增加一個僅針對航空公司的 agent：舒適度、準點記錄、冬季航班中斷風險、行李、[飛行常客計劃]、價格定位。
每項說法請標註來源。

證據：針對每張票價提供 [HKD] 價格、來源網址、檢查時間以及任何注意事項，包括回程。
引用結果頁面而非日期網格。在第二個網站交叉核實最佳票價。

界線：僅供閱讀。不預訂、不登入、不輸入任何個人細節。

輸出：每個時段一張表格，然後給出一個建議，並用一句話說明權衡。由我決定。
```

## 可套用到任何 agent 的內容

| 步驟 | 防止產生的問題 |
|---|---|
| 背景檢查，並修正到正在運行的工作中 | 在你工作的日子裡找到的最低價航班 |
| 帶有界線的書面指示 | agent 猜錯你的旅程，或直接下單 |
| 分拆工作，並平行運行 | 單一 agent 做得太淺層 |
| 獨立評估航空公司質素的 agent | 低價票自動勝出 |
| 重新調整範圍，不重新啟動 | 工作遺失和重複搜索 |
| 每項數字的證據與注意事項 | 沒人可以核實的自信數據 |
| 人類做出最終決定 | 花錢在一個 agent 的判斷上 |

這些都不需要特殊的旅行工具。它需要一個可以閱讀你的行事曆並瀏覽網頁的 agent，以及一個會在要求答案前先撰寫指示的人。我曾寫過關於如何將多個 agent 組成團隊在 [Claude Code 完全攻略：Agent 團隊與自動化](https://hyperfocusam.com/blog/claude-code-mastery-part-4-agent-teams-tc/)，以及在採取行動前檢查 AI 最低報價的內容 [AI 找到了最低報價，為甚麼還不能下單？](https://hyperfocusam.com/blog/checkable-ai-supplier-comparison-tc/)。

## 常見問題

### AI agent 可以幫我訂機票嗎？

有些可以，但我不會讓我的 agent 這樣做。指示中寫明僅供閱讀：不預訂、不登入以及不輸入任何個人細節。Agent 會比較票價並提供建議；我會在再次核實價格後，自行在航空公司或旅遊網站預訂。

### 怎樣用 AI 找平機票？

在開始搜尋前，將你的行事曆限制放入指示中。這是此次行程的教訓：當行事曆出現衝突時，我的 agent 已在搜尋中，且必須中途修正。接著撰寫其餘指示：出發機場、旅客人數、艙位、日期時段、目的地、僅限實時價格以及用於交叉核實的第二個網站。將目的地分配到多個同時運行的 agent 中，並要求每個都報告價格、來源連結、檢查時間以及包含回程在內的注意事項。

### 為甚麼要用多個 agent，而不是一個？

每個 agent 的任務較小，可以處理得更完善，且它們可以同時運行。負責航空公司質素（舒適度、準點率、冬季航班中斷、行李）的獨立 agent，可以防止低價票自動勝出。在這次旅程中，它標示出了領空風險和沒有顯示在票價表上的預訂截止日期。

### AI agent 給出的價格準確嗎？

它們是快照。票價每小時都在變動，且同一個網站的不同視圖也可能不一致，因此每個價格都應附帶其來源連結和檢查時間。在付款前，請在航空公司或預訂網站重新確認。

### 這只適用於 Claude Code 嗎？

不是。工作流程比工具更重要。任何可以閱讀你的行事曆並瀏覽網頁的個人 agent，包括 Grok 和其他助手，都可以遵循相同的指示。
