AI Agent Analytics:追蹤 AI Agents 存取行為
建立監控系統,追蹤並分析 AI agents 如何存取網站,包含 User-Agent 識別、行為模式分析、Agent Discovery 使用統計
專案構想(2025.11 更新)
建立監控系統,追蹤 AI agents 如何存取網站,特別是 /.well-known/agent-descriptions 端點的使用情況,分析不同 agents 的行為模式。
核心問題:
- 實作 Agent Discovery 後,如何知道有沒有 AI agents 在使用?
- 哪些 agents 在存取網站?
- 它們如何與網站互動?
解決方案: 建立輕量級 analytics 系統,專注於 AI agent 行為分析。
🆕 2025.11 最新發現
為什麼現在特別重要:
- NLWeb 12+ 企業採用 - Shopify, Snowflake 等已實作,可能有 agents 開始存取
- W3C ANP 標準化啟動 - 早期採用者 agents 可能開始測試
/.well-known/agent-descriptions - MCP 生態快速成長 - 100+ MCP servers,agents 活動增加
實際案例參考:
- Shopify 採用 NLWeb 後的 agent 存取數據(需追蹤是否公開)
- O’Reilly Media 的 NLWeb 實作經驗
- Snowflake 的 agent 互動模式
新增追蹤項目:
- ✅ NLWeb-compatible agents 識別
- ✅ MCP client User-Agents
- ✅ W3C WebAgents CG 測試 bots
目標與價值
短期目標
- ✅ 識別 AI agents(vs. 人類訪客)
- ✅ 追蹤
/.well-known/agent-descriptions存取次數 - ✅ 分析 agents User-Agent patterns
長期目標
- 🔮 建立 AI agent 行為資料庫
- 🔮 預測 agent 存取模式
- 🔮 優化內容以符合 agent 偏好
專案價值
- ⭐⭐⭐⭐⭐ 實用性 - 實際數據驗證 Agent Discovery 效益
- ⭐⭐⭐⭐ 技術展示 - 展示資料驅動決策
- ⭐⭐⭐⭐ 內容機會 - 可撰寫資料分析文章
- ⭐⭐⭐ SEO 影響 - 間接(了解 agents 如何爬取)
技術架構
方案 A:Vercel Analytics + Edge Middleware(推薦)
優點:
- ✅ 與現有架構整合
- ✅ 零額外基礎設施
- ✅ Real-time 資料
- ✅ 簡單易維護
實作步驟:
1. 啟用 Vercel Web Analytics
// site/src/layouts/Layout.astro
---
import { ViewTransitions } from 'astro:transitions';
import { Analytics } from '@vercel/analytics/react';
---
<html>
<head>
<ViewTransitions />
</head>
<body>
<slot />
<Analytics />
</body>
</html>
2. 建立 Edge Middleware 記錄 AI agents
檔案:site/src/middleware.ts
import { defineMiddleware } from 'astro:middleware';
// 已知的 AI agent User-Agents
const AI_AGENTS = {
'GPTBot': 'OpenAI GPT',
'ChatGPT-User': 'ChatGPT',
'Claude-Web': 'Anthropic Claude',
'Google-Extended': 'Google Bard',
'Googlebot': 'Google Search',
'Bingbot': 'Microsoft Bing',
'PerplexityBot': 'Perplexity AI',
'YouBot': 'You.com',
'anthropic-ai': 'Anthropic',
'Applebot': 'Apple Siri'
};
export const onRequest = defineMiddleware(async (context, next) => {
const userAgent = context.request.headers.get('user-agent') || '';
const url = new URL(context.request.url);
// 檢查是否為 AI agent
const detectedAgent = Object.keys(AI_AGENTS).find(key =>
userAgent.toLowerCase().includes(key.toLowerCase())
);
// 特別追蹤 Agent Discovery 端點
if (url.pathname === '/.well-known/agent-descriptions') {
console.log('[Agent Discovery] Accessed by:', {
agent: detectedAgent || 'Unknown',
userAgent: userAgent,
timestamp: new Date().toISOString(),
ip: context.request.headers.get('x-forwarded-for') ||
context.request.headers.get('x-real-ip')
});
}
// 追蹤所有 AI agent 存取
if (detectedAgent) {
console.log('[AI Agent] Page view:', {
agent: AI_AGENTS[detectedAgent],
path: url.pathname,
timestamp: new Date().toISOString()
});
}
return next();
});
3. Vercel Log Drain(進階)
將 logs 導向分析平台:
# Vercel CLI
vercel logs --follow --project pw-astro
或整合到:
- Datadog - Full analytics platform
- Logtail - Log management
- Axiom - Serverless analytics
缺點:
- 需要付費方案(Vercel Pro: $20/月)
方案 B:Custom Analytics Endpoint(免費方案)
如果不想用 Vercel Pro,可建立自訂 analytics:
1. 建立 Analytics API Route
檔案:site/src/pages/api/track.ts
import type { APIRoute } from 'astro';
export const POST: APIRoute = async ({ request }) => {
const data = await request.json();
// 記錄到 Vercel KV(免費)或檔案
console.log('[Analytics]', JSON.stringify(data));
return new Response(JSON.stringify({ success: true }), {
status: 200,
headers: { 'Content-Type': 'application/json' }
});
};
2. 前端追蹤腳本
// site/src/components/AgentTracker.astro
<script>
const trackPageView = async () => {
await fetch('/api/track', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
path: window.location.pathname,
userAgent: navigator.userAgent,
timestamp: new Date().toISOString()
})
});
};
// Track on page load
trackPageView();
</script>
缺點:
- ❌ 無法追蹤沒有執行 JavaScript 的 agents(大部分 AI agents)
- ❌ 只能追蹤人類訪客
結論: 此方案不適合追蹤 AI agents
方案 C:Cloudflare Web Analytics(免費 + 完整)
優點:
- ✅ 完全免費
- ✅ Server-side tracking(不依賴 JS)
- ✅ 可追蹤所有請求(包含 agents)
實作步驟:
- 註冊 Cloudflare(免費)
- 設定 DNS 指向 Vercel(CNAME)
- 啟用 Web Analytics
- 加入 beacon 腳本
<script defer src='https://static.cloudflare.com/beacon.min.js'
data-cf-beacon='{"token": "YOUR_TOKEN"}'></script>
注意: 需要將 domain DNS 指向 Cloudflare
建議方案:混合式(推薦)✅
結合 Vercel Analytics + Custom Logging:
實作清單
-
✅ 啟用 Vercel Web Analytics(免費方案)
- 追蹤人類訪客
- 基本 page views, referrers
-
✅ 實作 Edge Middleware logging
- 追蹤 AI agents User-Agent
- 特別監控
/.well-known/agent-descriptions - 輸出到 Vercel logs
-
✅ 定期匯出 Vercel logs
vercel logs --project pw-astro --since 24h > logs.txt -
✅ 手動分析 logs(初期)
- 使用
grep,awk,jq分析 - 建立簡單的統計報表
- 使用
-
🔶 進階:整合 Google Sheets(可選)
- 使用 GitHub Actions 定期抓取 logs
- 解析並寫入 Google Sheets
- 建立視覺化 dashboard
開發時間
| 階段 | 工作項目 | 時間 |
|---|---|---|
| Phase 1 | Vercel Analytics 設定 | 30 分鐘 |
| Phase 2 | Edge Middleware 實作 | 2-3 小時 |
| Phase 3 | Log 分析腳本 | 2-3 小時 |
| Phase 4 | Google Sheets 整合(可選) | 4-6 小時 |
| 總計 | 5-13 小時 |
資料分析項目
基礎指標
-
AI Agent 識別率
- 多少 % 的請求來自 AI agents?
- 哪些 agents 最活躍?
-
Agent Discovery 使用率
/.well-known/agent-descriptions存取次數- 首次存取時間(驗證實作效益)
-
Agent 行為模式
- Agents 最常存取哪些頁面?
- 平均停留時間(如果可追蹤)
- Crawl frequency
進階分析
-
Agent 類型分類
- Search engines (Googlebot, Bingbot)
- AI assistants (ChatGPT, Claude, Perplexity)
- Unknown agents(需要識別)
-
內容偏好
- Agents 偏好哪些 content types?(blog, tutorial, project)
- 哪些標籤最受 agents 關注?
-
時間模式
- Agents 何時最活躍?
- Crawl 頻率變化
視覺化 Dashboard 構想
使用 Google Sheets + Google Data Studio:
Dashboard 頁面
-
Overview
- Total page views(人類 vs. Agents)
- Agent Discovery 存取次數
- Top AI agents
-
Agent Details
- Agent breakdown(pie chart)
- Crawl frequency timeline
- Top pages per agent
-
Content Performance
- Most visited posts(by agents)
- Tag popularity(for agents)
- Content type distribution
技術挑戰
1. User-Agent Spoofing
- 問題: Agents 可以偽造 User-Agent
- 解決: 結合 IP 分析、行為模式識別
2. Log Volume
- 問題: 大量 logs 難以處理
- 解決:
- 只記錄關鍵端點
- 使用 sampling(取樣)
- 定期 aggregate
3. 隱私考量
- 問題: 記錄 IP 可能涉及 GDPR
- 解決:
- Hash IP addresses
- 不記錄個人資料
- 遵守 privacy policy
投資報酬率
成本
- 開發時間: 5-13 小時
- 維護成本: 低(每週 30 分鐘分析 logs)
- 基礎設施成本: $0(使用免費方案)
效益
- ⭐⭐⭐⭐⭐ 實用性 - 驗證 Agent Discovery 實作效益
- ⭐⭐⭐⭐ 資料驅動決策 - 了解 agents 如何使用網站
- ⭐⭐⭐⭐ 內容機會 - 撰寫資料分析文章
- ⭐⭐⭐ 技術展示 - 展示完整的 monitoring 能力
建議(2025.11 更新)
考量 NLWeb/ANP 最新發展後:
- ✅ 強烈推薦立即執行(價值大幅提升)
- NLWeb 12+ 企業採用,agents 活動預期增加
- W3C ANP 標準化啟動,測試 bots 可能出現
- 實際數據可驗證 Agent Discovery 投資報酬率
- 可撰寫「我追蹤了 30 天的 AI Agent 行為」數據文章
優先級調整:
- ✅ Phase 1-2:立即實作(3-5 小時)
- Vercel Analytics + Edge Middleware
- 特別追蹤
/.well-known/agent-descriptions和/llms.txt
- ✅ Phase 3:兩週後(2-3 小時)
- 收集初步數據後分析
- 建立 User-Agent patterns database
- 🔶 Phase 4:視數據量決定(4-6 小時)
- 若發現有 agents 存取,建立視覺化 dashboard
- 若無,保持簡單 log 分析即可
新增追蹤指標:
- 📊 NLWeb-related endpoints (
/llms.txt, RSS feed) 存取率 - 📊 Known AI agents 比例(GPTBot, Claude-Web, Perplexity等)
- 📊 Unknown agents 識別與分類
- 📊 與 Shopify/Snowflake 等案例的對比分析(若數據公開)
技術文章構想
文章:《我追蹤了 30 天的 AI Agent 行為,發現了這些》
大綱:
-
為什麼要追蹤 AI Agents?
- 實作 Agent Discovery 後的疑問
- 數據驅動的好奇心
-
實作方法
- Vercel Analytics + Edge Middleware
- User-Agent 識別技巧
- Log 分析流程
-
資料發現(假設性)
- GPTBot 是最活躍的 agent
/.well-known/agent-descriptions被存取 X 次- Agents 偏好教學類文章(tutorial)
-
意外發現
- 有 Unknown agents 存取
- Crawl pattern 分析
- 某些 agents 忽略 robots.txt
-
結論與建議
- Agent Discovery 是否值得實作?
- 如何優化內容給 AI agents?
- 未來趨勢預測
參考資源
- Vercel Analytics: https://vercel.com/docs/analytics
- AI Agent User-Agents List: https://darkvisitors.com/agents
- Web Analytics Best Practices: https://web.dev/vitals/
專案狀態: ✅ 可立即執行 建議行動: Phase 1-3 實作(5-8 小時),追蹤 30 天後撰寫分析文章 預期完成: 2025.12(1 個月追蹤期 + 文章撰寫)