Track K-Pop idol updates from official and fan sources, summarized in Traditional Chinese.
<workspace>/kpop-tracker/config.json — artist list and sources.
If the file doesn't exist, create it with the user's first artist. Schema:
json
{
"artists": [
{
"name": "顯示名稱",
"group": "團名(solo 可省略)",
"keywords": ["搜尋關鍵字", "韓文名", "英文名"],
"chinese_members": [
{
"name": "中文名",
"weibo": "@weibo_account"
}
],
"sources": {
"instagram": "https://www.instagram.com/official_account/",
"x": "https://x.com/official_account",
"youtube": "https://www.youtube.com/@official_channel",
"weverse": "https://weverse.io/community-name/feed",
"berriz": "https://berriz.in/group-name",
"taiwan_fan_sources": [
"台灣粉絲團FB或IG"
]
}
}
],
"last_check": null,
"check_history_file": "kpop-tracker/check_history.json"
}
artists[].Every check MUST output exactly these 6 categories per group, in this order.
What to find:
Output rules:
Split into two sub-sections: 專輯 and 周邊/聯名商品.
What to find:
Output rules:
List album name + versions
Table or list comparing store benefits: text
📀 專輯名稱:《XXX》
| 通路 | 特典 | 價格 |
|------|------|------|
| Weverse Shop | 隨機小卡 A ver. | ₩18,000 |
| Ktown4u | 海報 + 小卡 | ₩16,500 |
| Yes24 | 摺疊海報 | ₩17,200 |
Include a 💡 分析 section recommending which store is best value
⚠️ IVE 特別規則: Always check Starship US official store ( https://www.starshipent.com or https://shop.starship-ent.com) for signed albums (親簽專輯). If found, output with 🚨 alert:
text
🚨 IVE 親簽專輯警報!
Starship 美國官網現正販售親簽版本!
💰 價格:$XX.XX USD
🔗 <link>
⏰ 數量有限,建議立即搶購!
What to find:
Output rules:
What to find:
Output rules:
New tour → full table: text
🎪 巡演名稱:《XXX World Tour》
| 日期 | 城市 | 場地 | 搶票日期 | 票價 |
|------|------|------|----------|------|
| 6/27-28 | 香港 | 啟德主場館 | 5/10 12:00 | HK$880-1,880 |
This week's concert news → summarize interesting moments with YouTube links if available
If no concert news → "目前無演唱會新消息"
What to find:
Output rules:
List each event: text
📋 活動名稱:2026 MAMA Awards
📍 地點:日本京瓷巨蛋
📅 日期:11/25-26
⏰ 時間:18:00 KST
📺 直播:Mnet YouTube
If no upcoming events → "目前無團體活動消息"
What to find:
Output rules:
只列出本週(7 天內)上傳的影片,超過一週的不要列
List recent videos with title + upload date + link: text
📺 官方 YT 更新(本週)
• [巡演幕後] Syncopation Behind the Rhythm EP.02 (3/27)
🔗 https://youtube.com/watch?v=...
If no uploads this week → "本週官方 YT 無新影片"
What to find:
Output rules:
Group by member name: text
👤 成員 Solo 消息
✦ Miyeon (薇娟)
• Solo 專輯《XXX》預計 5/20 發行
🔗 <link>
✦ Shuhua (舒華)
• 出席 Dior 2026 秋冬秀,巴黎
📅 4/15
🔗 <link>
If no solo news for any member → "本週無成員 Solo 消息"
Every check outputs this exact structure:
text
🌟 K-Pop 追星快報 — YYYY/MM/DD HH:MM
━━━━━━━━━━━━━━━━━━━━
🏷️ <團體名稱>
━━━━━━━━━━━━━━━━━━━━
🎵 1. 團體回歸
<content or "目前無回歸消息">
💿 2. 專輯 & 周邊商品
【專輯】
<content or "目前無新專輯消息">
【周邊 & 聯名】
<content or "目前無新周邊消息">
🎪 3. 演唱會消息
<content or "目前無演唱會新消息">
📋 4. 團體活動
<content or "目前無團體活動消息">
📺 5. 官方 YouTube 更新
<content or "本週官方 YT 無新影片">
👤 6. 成員 Solo 消息
<content or "本週無成員 Solo 消息">
━━━━━━━━━━━━━━━━━━━━
🏷️ <下一個團體>
━━━━━━━━━━━━━━━━━━━━
...
✅ 更新完成 | 下次自動檢查:YYYY/MM/DD HH:MM
Rules:
按照以下順序進行搜尋,確保涵蓋所有重要來源:
官方 Instagram text
browser open → https://www.instagram.com/<official_account> (profile=openclaw)
browser act evaluate → extract recent posts (本週內)
官方 Berriz / Weverse
text
browser open → https://berriz.in/<group> OR https://weverse.io/<group>/feed
browser act evaluate → 抓取官方 Notice + From.藝人貼文
官方 X (Twitter) text
browser open → https://x.com/<official_account> (profile=openclaw)
browser act evaluate → extract recent tweets (本週內)
官方 YouTube text
DDG search: "site:youtube.com @<channel> 2026" (filter 本週上傳)
或 Google: "site:youtube.com <channel> <group>" + time filter (past week)
中國成員微博檢查 ⭐ 新增規則
text
web_search: "<中文名> 微博 weibo.com" (找官方微博帳號)
browser open → https://weibo.com/<account> (if found)
browser act evaluate → 抓取近期動態 (本週內)
韓國娛樂媒體 text
DDG/Google: "<group> comeback OR concert OR album 2026 site:soompi.com"
DDG/Google: "<group> 2026 site:allkpop.com"
DDG/Google: "<group> 2026 site:naver.com"
訪談節目與綜藝 text
DDG/Google: "<group> interview OR variety show OR 訪談 OR 節目 2026"
DDG/Google: "<group> Running Man OR 知音 OR 我獨自生活 2026"
國際媒體報導 text
DDG/Google: "<group> news OR announcement 2026 site:billboard.com OR site:variety.com"
台灣 K-Pop 社群 text
DDG/Google: "<group> 台灣 OR Taiwan OR 粉絲團 2026"
DDG/Google: "<group> 演唱會 OR 見面會 台北 OR 高雄 2026"
台灣購買資訊 text
DDG/Google: "<group> 專輯 OR 預購 五大 OR 博客來 OR 誠品 2026"
IVE Starship US Store — 親簽專輯檢查 (每次必檢) text
browser open → https://shop.starship-ent.com (profile=openclaw)
搜尋: "signed", "autograph", "IVE", "親簽", "hand-signed"
For official YouTube channels, use DDG search (more reliable than direct web_fetch on YT):
text
web_fetch DDG: "site:youtube.com @<channel> 2026" (filter for this week's uploads)
Or use Google search with time filter:
text
browser open → https://www.google.com/search?q=site:youtube.com+<channel>+<group>&tbs=qdr:w
Only include videos uploaded within the past 7 days. Discard anything older.
Filter for (priority order):
For IVE only, always include this step. Use browser (web_fetch often gets blocked):
text
browser(action=open, targetUrl="https://shop.starship-ent.com", profile=openclaw)
browser(action=act, ..., request={kind: "wait", timeMs: 3000})
browser(action=snapshot, ...) or browser(action=act, ..., request={kind: "evaluate", fn: "() => document.body.innerText"})
Search page content for: "signed", "autograph", "IVE", "親簽", "hand-signed" If found → trigger 🚨 alert at top of IVE section After checking → close tab
Track reported items in kpop-tracker/check_history.json:
json
{
"last_check": "2026-04-02T14:00:00+08:00",
"reported_urls": ["https://..."],
"ive_signed_album_alerted": false
}
text
openclaw cron add --schedule "0 9 * * *" --task "Run kpop-tracker skill: check all tracked artists for updates and report via webchat" --label kpop-morning
openclaw cron add --schedule "0 21 * * *" --task "Run kpop-tracker skill: check all tracked artists for updates and report via webchat" --label kpop-evening
Only set up cron when user explicitly asks.
User saysAction「查偶像動態」「追星更新」Full check all artists「查 IVE 最新消息」Check single group「加追蹤 aespa」Add artist to config「移除追蹤 xxx」Remove from config「追蹤清單」Show tracked artists「設定自動更新」Set up cron jobs
⚠️ Always use
profile=openclaw+targetIdfor all browser actions.
evaluate to extract text, not screenshotbrowser(action=close, targetId=..., profile=openclaw)web_fetch