機構處理技能(單一機構)
您將完整處理一個房地產仲介機構:
- 從首頁快速提取品牌、聯絡資訊與圖片(單次提取)。
- 根據機構類型選擇適當的設計系統。
- 生成一個聚焦轉換的示範登陸頁面。
- 持續更新進度與活動,讓 UI 能順暢串流。
嚴格規則
- 不衍生其他代理。
- 不在任何您撰寫的文字中使用表情符號。
- 僅使用提示中提供的絕對路徑。
- 不使用 WebSearch——僅從首頁提取。
- 最多 1 次 WebFetch 呼叫(僅限首頁)。
輸入(來自提示)
agencyId:URL 安全短語(例如:ray-white-surry-hills)sessionId:管線階段 IDname:機構名稱(盡力而為)website:機構網站 URLprogressFilePath:data/progress/agency-{agencyId}.json的絕對路徑activityFilePath:data/progress/agency-activity-{agencyId}.json的絕對路徑demoHtmlPath:public/demo/{agencyId}.html的絕對路徑agencyDataPath:data/agencies/{agencyId}.json的絕對路徑
允許使用的工具
- 僅限:
WebFetch、Read、Write、Glob - 不可使用:
WebSearch、瀏覽器自動化工具
輸出檔案(必須全部寫入)
1) 活動串流(activityFilePath)
儲存單一 JSON 物件並附加到 messages:
{
"sessionId": "pipe-...",
"agencyId": "ray-white-surry-hills",
"agencyName": "Ray White Surry Hills",
"messages": [
{
"id": "msg-<timestamp>-<rand>",
"type": "thinking|tool|fetch|results|identified|warning",
"text": "簡短、面向使用者的更新",
"detail": "可選:URL 或查詢",
"source": "Subagent",
"timestamp": "2026-01-17T12:34:56.789Z"
}
]
}
規則:
- 每個
id必須唯一(使用時間戳加隨機後綴)。 - 在
WebFetch之前,附加一個fetch訊息,detail設為 URL。 - 每個里程碑之後,附加一條簡短的
identified/results/thinking訊息。 - 僅保留最後 250 條訊息。
2) 進度檔案(progressFilePath)
始終寫入有效 JSON,並使用穩定鍵值:
{
"agencyId": "...",
"sessionId": "...",
"status": "skeleton|extracting|generating|complete|error",
"updatedAt": "ISO timestamp",
"name": "...",
"website": "...",
"phone": null,
"address": null,
"email": null,
"logoUrl": null,
"primaryColor": null,
"secondaryColor": null,
"tagline": null,
"heroImageUrl": null,
"teamSize": null,
"listingCount": null,
"designSystem": null,
"htmlProgress": 0,
"demoUrl": null,
"steps": [
{ "id": "website", "label": "找到網站", "status": "pending|in_progress|complete|error" },
{ "id": "details", "label": "已提取詳細資料", "status": "pending|in_progress|complete|error" },
{ "id": "generating", "label": "正在生成示範頁面", "status": "pending|in_progress|complete|error" },
{ "id": "complete", "label": "就緒", "status": "pending|in_progress|complete|error" }
],
"error": null
}
規則:
- 每次寫入時更新
updatedAt。 - 絕不刪除鍵值;將遺失的欄位設為
null。
3) 機構記錄(agencyDataPath)
寫入系統其餘部分使用的持久記錄:
{
"id": "ray-white-surry-hills",
"name": "Ray White Surry Hills",
"website": "https://...",
"phone": "02 ...",
"email": null,
"address": "完整街道地址",
"tagline": null,
"branding": {
"logoUrl": null,
"primaryColor": "#0f172a",
"secondaryColor": "#ffffff",
"heroImageUrl": null
},
"metrics": {
"teamSize": null,
"listingCount": null
},
"researchedAt": "ISO timestamp",
"dataQuality": "complete|partial|minimal",
"notes": null,
"demoPage": {
"generated": true,
"generatedAt": "ISO timestamp",
"url": "/demo/ray-white-surry-hills",
"designSystem": "editorial-prestige"
}
}
效能目標
| 指標 | 目標 |
|---|---|
| WebFetch 呼叫次數 | 1(僅限首頁) |
| WebSearch 呼叫次數 | 0(無) |
| 進度檔案寫入次數 | 4-5 |
| 每家機構總耗時 | <30 秒 |
如果提取首頁後資料仍不明確,則將未知欄位設為 null 並繼續進行。
不要為了缺失資料而進行額外的提取。
資訊提取格式
從首頁 HTML 中一次提取以下欄位:
必要(必須找到或設為 null)
| 欄位 | 尋找位置 | 格式 |
|---|---|---|
logoUrl | src/alt/class 包含 "logo" 的 <img>,或 <link rel="icon"> | 完整 URL |
phone | 包含 tel: 的連結,或符合電話模式(02、04、1300、1800)的文字 | 澳洲格式 |
address | 頁尾、聯絡區塊、schema.org LocalBusiness 標記 | 完整街道地址 |
盡力而為(若在首頁可見則提取)
| 欄位 | 尋找位置 | 格式 |
|---|---|---|
email | 包含 mailto: 的連結、可見的電子郵件文字 | [email protected] |
primaryColor | 頁首/導覽列背景、品牌元素、商標顏色 | 十六進制 (#RRGGBB) |
secondaryColor | CTA 按鈕、強調元素、連結 | 十六進制 (#RRGGBB) |
tagline | Hero 區塊文字、<meta name="description">、標語 | 簡短字串 |
teamSize | 包含「X 位代理人」的文字、團隊數量(若可見) | 數字或 null |
listingCount | 包含「X 個房源」的文字、房源數量(若可見) | 數字或 null |
圖片(需嚴格驗證)
重要:大多數提取的圖片 URL 將無法使用。 僅使用通過所有這些檢查的圖片:
圖片 URL 驗證規則
拒絕,如果 URL:
- 是相對路徑(不是以 http:// 或 https:// 開頭)
- 包含 "placeholder"、"default"、"blank"、"spacer"
- 來自需要驗證的 CDN(cloudinary transforms、帶 token 的 imgix)
- 是 base64 資料 URI
- 是 SVG 檔案(通常是圖示,非照片)
- 小於 100x100(可能是圖示)
- 包含追蹤參數(?utm_、?ref= 等)
- 來自社交媒體 CDN(fbcdn、twimg)——通常會過期
偏好使用:
- 來自機構自有網域的 URL
- 來自穩定 CDN 的 URL(amazonaws、cloudfront 且無簽署 URL)
- 具有常見圖片副檔名的 URL(.jpg、.jpeg、.png、.webp)
- 名稱明確的 URL(hero.jpg、team-photo.png、office.jpg)
提取優先順序
| 欄位 | 尋找位置 | 格式 |
|---|---|---|
logoUrl | src/alt/class 包含 "logo" 的 <img>,或 <link rel="icon"> | 完整 URL(已驗證) |
heroImageUrl | Hero 區塊背景、主要橫幅 <img> | 完整 URL(已驗證) |
不要提取這些(通常無法使用、使頁面雜亂):
teamImageUrl——通常失效或需要驗證officeImageUrl——通常失效或需要驗證
不確定時:不要使用圖片
如果您不確定某個圖片 URL 能否載入,請不要包含它。 一個沒有圖片的乾淨頁面,勝過一個圖片失效的頁面。 使用純色背景而非可能失效的 Hero 圖片。
不要提取(為提升速度而移除)
- soldCount、forRentCount、priceRangeMin、priceRangeMax
- painScore、painReasons
- hasPropertyManagement、hasChatWidget、hasAfterHoursNumber、hasOnlineBooking
設計系統選擇
在生成 HTML 之前,根據機構選擇一個設計系統:
選擇邏輯
機構類型 → 設計系統
─────────────────────────────────────────────────────────────────
全國性加盟品牌(Ray White、LJ Hooker、 → "swiss-precision"
Century 21、Raine & Horne、McGrath、Belle) (乾淨、專業)
精品/獨立機構 → "editorial-prestige"
(獨特、高級)
頂級/高端市場指標 → "quiet-luxury"
(包含 "prestige"、"exclusive"、"luxury" 等詞)(精緻、獨家)
現代/技術領先的機構 → "cinematic-reveal"
(時尚網站、現代品牌) (戲劇性、有影響力)
傳統/老牌機構 → "warm-authority"
(創立年份、社區焦點) (值得信賴、平易近人)
預設(不確定時) → "editorial-prestige"
(適用於大多數)
將所選的設計系統寫入 progress.designSystem 與 agencyRecord.demoPage.designSystem。
設計系統限制(必須遵守)
禁用色彩(AI 泛濫色彩——絕對不要使用)
- 任何紫色/紫羅蘭/靛藍色:#6366F1、#8B5CF6、#A855F7、#7C3AED、#7a00df、#6200b3
- 螢光青色/藍綠色:#00FF88、#00DDFF、#06B6D4
- ChatGPT 綠色:#10A37F
- 任何紫色+綠色組合
- 任何藍色到紫色的漸層
- Hero 區塊中的任何漸層背景
禁用字型(過度使用——絕對不要使用)
- Inter(排名第一的 AI 泛濫字型)
- Roboto、Open Sans、Lato
- Poppins、Montserrat
核准字型(請改用這些)
標題:Playfair Display、Space Grotesk、Cabinet Grotesk、Fraunces
內文:Source Serif 4、DM Sans、IBM Plex Sans、Outfit
禁用版面配置(AI 泛濫模式)
- 三個帶有圖示的等寬卡片水平排列
- 對稱的 2x2 或 3x3 網格,無層次感
- 漸層 Hero 背景(改用純色)
- 通用的「功能卡片」:圖示 + 標題 + 說明
- 痛點卡片或「機會分析」區塊
- 統計/指標網格(團隊人數、房源數量等)
色彩對比規則(關鍵)
文字必須始終可讀。遵守以下規則:
淺色背景(白色、奶油色、淺灰色):
- 使用深色文字:#1a1a1a、#333333、slate-900
- 絕對不要使用白色或淺色文字
深色背景(海軍藍、炭灰色、黑色):
- 使用白色或淺色文字:#ffffff、#f5f5f5
- 絕對不要使用深色文字
品牌色背景:
- 如果品牌色是淺色(黃色、淺藍色、米色):使用深色文字
- 如果品牌色是深色(海軍藍、森林綠、酒紅色):使用淺色文字
- 不確定時,使用淺色背景搭配深色文字
絕對不要做:
- 在黃色/金色背景上使用白色文字
- 在白色背景上使用淺灰色文字
- 在深色背景上使用深色文字
- 任何對比度未達 4.5:1 的文字顏色
必要
- 預設使用淺色主題(暖白:#FAFAF9、#F8F6F1、#ffffff)
- 僅將機構提取的品牌色用於強調(按鈕、邊框),而非背景
- 備用強調色:海軍藍(#1E3A5F)、赤陶色(#C2703A)、森林綠(#2D5A47)
- 內文:在淺色背景上始終使用深色(#1a1a1a 或 slate-900)
- 行動裝置響應式(測試 375px 寬度)
- 任何地方都不要使用表情符號