wetrace
npx skills add https://github.com/afumu/wetrace-skill --skill wetrace
Agent 安装分布
Skill 文档
å¾®ä¿¡æ°æ®åæå©æ
æ¥è¯¢ãåæå导åºå¾®ä¿¡èå¤©æ°æ®ï¼æä¾ AI 驱å¨çæºè½æ´å¯åç²¾ç¾çå¯è§å页é¢ã
â ï¸ éè¦æç¤º
- æ¬ Skill ä¾èµ Wetrace æå¡
- ä» æ¯æ Windows å¹³å°ï¼å¾®ä¿¡æ°æ®åºä½äº Windows ç³»ç»ï¼
- éè¦å å®è£ å¹¶è¿è¡ Wetrace æå¡æè½ä½¿ç¨æ¬ Skill
åç½®æ¡ä»¶
- Wetrace æå¡ï¼å¿ é¡»å å®è£ å¹¶è¿è¡ Wetrace
- æå¡å°åï¼Wetrace æå¡è¿è¡å¨
http://127.0.0.1:5200 - å¾®ä¿¡æ°æ®åºï¼å·²è§£å¯å¹¶å è½½
- æä½ç³»ç»ï¼Windows 10/11
- 妿æå¡æªè¿è¡ï¼å æç¤ºç¨æ·å¯å¨ Wetrace æå¡
æ ¸å¿å·¥ä½æµç¨
1. çè§£ç¨æ·æå¾
å°ç¨æ·è¯·æ±å类为以ä¸ç±»å«ï¼
- æ¥è¯¢ï¼Queryï¼ï¼æ¥çæ¶æ¯ãä¼è¯ãè系人ã群è
- æç´¢ï¼Searchï¼ï¼éè¿å ³é®è¯æ¥æ¾æ¶æ¯
- åæï¼Analysisï¼ï¼åææ¨¡å¼ãçæç»è®¡æ°æ®
- 导åºï¼Exportï¼ï¼å¯¼åºå¤ç§æ ¼å¼çæ°æ®
- æ´å¯ï¼Insightï¼ï¼ç»¼ååæå¹¶æä¾å»ºè®®
- å¯è§åï¼Visualizationï¼ï¼çæç²¾ç¾ç HTML 页é¢
2. æååæ°
ä»ç¨æ·è¯·æ±ä¸è¯å«å ³é®åæ°ï¼
- è系人åç§°ï¼æå人åæç¾¤å
- æ¶é´èå´ï¼æåæ¶é´æ®µ
- å ³é®è¯ï¼æåæç´¢è¯
- æ ¼å¼ï¼æåå¯¼åºæ ¼å¼
3. è°ç¨ API
æ¬ Skill æä¾äº Python èæ¬å·¥å ·æ¥è°ç¨ Wetrace APIï¼æ¯ç´æ¥ä½¿ç¨ WebFetch æ´æ¹ä¾¿ã
æ¹å¼ä¸ï¼ä½¿ç¨ Python èæ¬ï¼æ¨èï¼
ä½¿ç¨ wetrace_api.py èæ¬ï¼ä½äº scripts/wetrace_api.pyï¼
# æ¥è¯¢ä¼è¯
python scripts/wetrace_api.py sessions --keyword "å¼ ä¸" --limit 20
# è·åæ¶æ¯
python scripts/wetrace_api.py messages --talker wxid_abc123 --limit 50
# æç´¢å
³é®è¯
python scripts/wetrace_api.py search --keyword "项ç®" --limit 30
# åææ°æ®
python scripts/wetrace_api.py analysis hourly wxid_abc123
python scripts/wetrace_api.py analysis daily wxid_abc123
# 导åºè天记å½
python scripts/wetrace_api.py export chat --talker wxid_abc123 --format html
宿´èæ¬ææ¡£ï¼æ¥ç scripts/README.md
æ¹å¼äºï¼ç´æ¥è°ç¨ API
åºç¡ URLï¼http://127.0.0.1:5200/api/v1
宿´ API ææ¡£ï¼åè references/api.md
å¸¸ç¨ API 模å¼
GET /sessions?keyword={åç§°}&limit=50
GET /messages?talker_id={id}&time_range={èå´}&limit=100
GET /search?keyword={å
³é®è¯}&time_range={èå´}&limit=50
GET /analysis/hourly/{session_id}
GET /analysis/daily/{session_id}
GET /export/chat?talker={id}&format={æ ¼å¼}&time_range={èå´}
4. å¤çååç°æ°æ®
ç®åæ¥è¯¢/æç´¢
ä»¥æ¸ æ°ãç»æåçæ ¼å¼åç°æ°æ®ã
åæä»»å¡
- ä»åæ API è·ååå§æ°æ®
- ä½¿ç¨ references/analysis-prompts.md ä¸ç模æ¿çæ AI æ»ç»
- ä»¥æ¸ æ°çç»æåç°
导åºä»»å¡
è°ç¨å¯¼åº APIï¼åç¥ç¨æ·ä¸è½½ä¿¡æ¯ã
æ´å¯ä»»å¡
- ä»å¤ä¸ª API æ¶éæ°æ®
- 综åä¿¡æ¯
- çæå ¨é¢çæ´å¯å建议
- ä½¿ç¨ analysis-prompts.md ä¸çé彿¨¡æ¿
5. é误å¤ç
- API è¿å 404ï¼æ°æ®åºå¯è½æªå è½½ï¼è系人/ä¼è¯å¯è½ä¸åå¨
- API è¿å 500ï¼æå¡å¨é误ï¼å»ºè®®æ£æ¥æ¥å¿
- æ æ°æ®è¿åï¼éªè¯æ¶é´èå´åè系人åç§°
- æå¡å¨æ ååºï¼æç¤ºç¨æ·å¯å¨ Wetrace æå¡
ð¨ æºè½ç½é¡µçæåè½
Wetrace æä¾ 8 ä¸ªæ ¸å¿å¯è§ååè½ï¼æ¯ä¸ªåè½é½ä¼ï¼
- è°ç¨ Wetrace API è·åæ°æ®
- ä½¿ç¨ AI åæçææ»ç»
- 使ç¨ç»ä¸ç设计系ç»çæç²¾ç¾ç HTML 页é¢
- ä¿å HTML æä»¶å°
~/wetrace-exports/å¹¶æä¾è®¿é®é¾æ¥
å¯ç¨çå¯è§ååè½
å½ç¨æ·è¯·æ±çæå¯è§å页颿¶ï¼æ ¹æ®è§¦åå ³é®è¯éæ©å¯¹åºçåè½ï¼
-
æºè½æè¦çæ – 触åè¯ï¼æ»ç»è天记å½ãçææè¦ãæºè½æ»ç»
-
å¾ åäºé¡¹æå – 触åè¯ï¼æåå¾ åãæ¾åºä»»å¡ãå¾ åäºé¡¹
-
è天活è·åº¦çåå¾ – 触åè¯ï¼æ´»è·åº¦çåå¾ãè天æ¶é´åå¸
-
äºå¨è¶å¿åæ – 触åè¯ï¼è¶å¿åæãäºå¨è¶å¿
-
æºè½å¨æ¥ææ¥ – 触åè¯ï¼çæå¨æ¥ãçæææ¥
-
æ°æ®ä»ªè¡¨æ¿ – 触åè¯ï¼çæä»ªè¡¨æ¿ãæ°æ®æ»è§
- è¯¦è§ references/06-dashboard.md
-
æºè½å¯¹è¯æè¦ – 触åè¯ï¼å¯¹è¯æè¦ãæºè½æ»ç»ãåç±»æè¦
-
客æ·å ³ç³»å¥åº·åº¦ – 触åè¯ï¼å®¢æ·å¥åº·åº¦ãCRM 仪表æ¿
设计系ç»
ææçæç HTML 页é¢é½éµå¾ªç»ä¸ç设计系ç»ï¼è¯¦è§ references/design-system.mdï¼å æ¬ï¼
- é¢è²ç³»ç»ï¼åºäº HSL ç CSS åé
- ç»ä»¶åºï¼CardãBadgeãButtonãSeparatorãInput ç
- å¸å±ç³»ç»ï¼ååºå¼å®¹å¨åç»ä¸é´è·
- æ°æ®å¯è§åï¼Chart.js é ç½®åé¢è²æ¹æ¡
HTML 页é¢ç¹ç¹
ææçæç HTML 页é¢ï¼
- â ç¬ç«è¿è¡ï¼æ éæå¡å¨ï¼åå»å³å¯å¨æµè§å¨æå¼
- â ååºå¼è®¾è®¡ï¼éé ææè®¾å¤ï¼æ¡é¢/å¹³æ¿/ææºï¼
- â ç°ä»£åæ ·å¼ï¼ä½¿ç¨ Tailwind CSS
- â 交äºå¼å¾è¡¨ï¼ä½¿ç¨ Chart.js å®ç°æ°æ®å¯è§å
- â æ¸ æ°å±æ¬¡ï¼å¡çå¸å±ãç»ä¸é´è·ãè¯ä¹åé¢è²
- â æäºå享ï¼å¯ç´æ¥åéç»ä»äººæ¥ç
ä½¿ç¨æµç¨
å½ç¨æ·è¯·æ±çæç½é¡µæ¶ï¼
- è¯å«åè½ï¼æ ¹æ®è§¦åå ³é®è¯å¹é 对åºçåè½
- 读åè¯¦ç»ææ¡£ï¼ä» references ç®å½è¯»å对åºç .md æä»¶
- æ¶éåæ°ï¼è¯¢é®ç¨æ·å¿ è¦çåæ°ï¼ä¼è¯ IDãæ¶é´èå´çï¼
- è°ç¨ APIï¼è·åæéæ°æ®
- AI åæï¼ä½¿ç¨ analysis-prompts.md ä¸ç模æ¿çææ»ç»
- çæ HTMLï¼ä½¿ç¨ design-system.md 飿 ¼çæç²¾ç¾é¡µé¢
- ä¿åæä»¶ï¼ä¿åå°
~/wetrace-exports/ç®å½ - æä¾é¾æ¥ï¼è¿åæä»¶è·¯å¾å访é®é¾æ¥
é«çº§åè½
æ¶é´èå´è§£æ
æ¯æå¤ç§æ ¼å¼ï¼
- ä¸æï¼æè¿ä¸å¨ãä¸ä¸ªæãä»å¹´
- è±æï¼last weekãlast monthãthis year
- ç»å¯¹æ¶é´ï¼2024-01-01~2024-01-31
- ç¸å¯¹å¤©æ°ï¼last 7 daysãlast 30 days
转æ¢ä¸º API æ ¼å¼ï¼YYYY-MM-DD~YYYY-MM-DD
è系人åç§°å¹é
- é¦å å¨ä¼è¯ä¸å°è¯ç²¾ç¡®å¹é
- 妿ªæ¾å°ï¼å¨èç³»äººä¸æç´¢
- 妿å¤ä¸ªå¹é ï¼è¯·ç¨æ·æç¡®
- åæ¶æ¯ææµç§°ï¼NickNameï¼å夿³¨ï¼Remarkï¼å段
å页çç¥
对äºå¤§æ°æ®éï¼
- ä»
limit=50å¼å§ - å¦ç¨æ·éè¦æ´å¤ï¼å¢å limit æä½¿ç¨ offset
- åç¥ç¨æ·æ»æ°
- 妿°æ®éé常大ï¼å»ºè®®å¯¼åº
ä½¿ç¨æç¤º
- è°ç¨ API åå§ç»éªè¯æå¡å¨æ¯å¦è¿è¡
- 使ç¨éå½çåææ¨¡æ¿ä»¥ä¿æè¾åºä¸è´æ§
- æä¾å¯æä½çæ´å¯ï¼èä¸ä» ä» æ¯åå§ç»è®¡æ°æ®
- å°éç¨æ·éç§ – ä¸è¦å¯¹å ³ç³»ååºå设
- æä¾åç»æ¥éª¤æè·è¿è¡å¨
- åçå¤ç䏿åè±ææ¥è¯¢
- çæ HTML 页颿¶ï¼å§ç»åè design-system.md ç设计系ç»
- æä»¶ä¿åä½ç½®ï¼ç»ä¸ä¿åå°
~/wetrace-exports/ç®å½ - æä¾è®¿é®é¾æ¥ï¼çæå®æåæä¾
file://åè®®ç宿´è·¯å¾
ð Python èæ¬å·¥å ·
å¿«é使ç¨
èæ¬ä½ç½®ï¼scripts/wetrace_api.py
å®è£ ä¾èµ
cd scripts
pip install -r requirements.txt
常ç¨å½ä»¤
# æ¥ç帮å©
python wetrace_api.py --help
# æ¥è¯¢ä¼è¯
python wetrace_api.py sessions --keyword "å¼ ä¸" --limit 20
# è·åæ¶æ¯ï¼éè¦ä¼è¯IDï¼
python wetrace_api.py messages --talker wxid_abc123 --limit 50
# ææ¶é´èå´æ¥è¯¢
python wetrace_api.py messages --talker wxid_abc123 --time-range "2024-01-01~2024-01-31"
# å
¨ææç´¢
python wetrace_api.py search --keyword "项ç®" --limit 30
# æ°æ®åæ
python wetrace_api.py analysis hourly wxid_abc123
python wetrace_api.py analysis daily wxid_abc123
python wetrace_api.py analysis type wxid_abc123
# è·åæ»è§
python wetrace_api.py dashboard
# 导åºè天记å½
python wetrace_api.py export chat --talker wxid_abc123 --format html
å¨ä»£ç ä¸ä½¿ç¨
from scripts.wetrace_api import WetraceAPI
# å建API客æ·ç«¯
api = WetraceAPI()
# æ¥è¯¢ä¼è¯
sessions = api.get_sessions(keyword="å¼ ä¸", limit=10)
for session in sessions:
print(f"{session['NickName']}: {session['MessageCount']} æ¡æ¶æ¯")
# è·åæ¶æ¯
messages = api.get_messages(talker_id="wxid_abc123", limit=50)
for msg in messages:
print(f"[{msg['CreateTime']}] {msg['Content']}")
# æç´¢
result = api.search(keyword="项ç®", limit=20)
print(f"æ¾å° {result['Total']} æ¡ç¸å
³æ¶æ¯")
宿´ææ¡£ï¼æ¥ç scripts/README.md