SkillHub 技能开发者全域数据看板
输入 SkillHub 用户 ID,全量数据统一约50秒轮询刷新,关键词搜索全平台竞品,类目热度洞察,一条龙决策。
🚀 30 秒速览:① 改
config.json一行user_id→ ② 双击start_monitor.bat→ ③ 浏览器开http://localhost:8866。数据每约50秒自动刷新,全程无需任何命令。
🔒 能力边界(先读这条):本工具仅监控你在 SkillHub 已发布技能的数据,需联网(访问国内
api.skillhub.cn),数据每约50秒刷新(非毫秒级实时);不生成/改写技能内容,也不覆盖非 SkillHub 平台数据。断网时面板停止刷新,但已加载数据会保留。
📌 准确性声明:本文档所有「约50秒」表述均与代码
COLLECT_INTERVAL=50严格一致;面板所有数值均来自你本人账号的实时采集,绝无内置样例数字。
📇 一页纸速查卡(只看这一张表就能上手,遇到问题按症状秒定位): | 你想做的事 | 怎么做 / 看哪节 | |------|------| | 3 步跑起来 | 改
config.json的user_id→ 双击start_monitor.bat→ 开http://localhost:8866(详见「一、快速开始」) | | 看自己技能实时数据 | 顶部概览 + 核心指标卡(「二·一、输出示例」) | | 盯竞品 | 右侧竞品双榜(「二·一」/「三、自定义配置」) | | 找蓝海类目 | 类目热度榜 + 策略建议(「二·一」) | | 看趋势 / 做周报 | 趋势图 + 导出 CSV(「二·一」/「二·六、实操案例」) | | 配竞品关键词 | 「三、自定义配置」 | | 出问题了 | 按下方「症状→答案」速查,对不上再翻「二·三、常见问题」 |症状 → 答案速查(对应「二·三」里的 Q):数据不动 →「页面打开没数据」;平板时断时续 →「平板时断时续」;图表空白 →「图表不显示」;显示「延迟Ns / 重连中」→「延迟Ns / 重连中」;分数和别处不一致 →「测评分数不一致」;被限流 429 →「限流429」;竞品榜缺/多了 →「竞品排名没有某技能」;换机配置丢了 →「换电脑配置丢了」;要导出 →「导出历史数据」;标签栏弹告警 →「标签栏告警」;一键启动 →「一键启动」;显示「数据延迟Ns」→「数据延迟Ns」;没装 Python →「没装 Python」。
目录速览
- 一、快速开始(3步)
- 二、功能详解
- 二·一、输出示例
- 二·二、适用场景与能力边界
- 二·三、已知限制与常见问题
- 二·四、触发方式
- 二·五、避坑指南
- 二·六、实操案例
- 二·七、常见错误做法(反模式)
- 二·八、新手完整上手教程
- 二·九、完整实战演练
- 二·十、最佳实践与异常自愈
- 二·十一、决策工作流(数据→行动)
- 三、自定义配置
- 四、技术支持
- 五、文件说明
- 变更日志
一、快速开始(3步)
1. 配置用户ID(无需改代码)
打开同目录 config.json,改一行即可:
{ "user_id": "user_YOUR_ID_HERE" }
如何获取你的用户ID:登录 SkillHub → 个人中心 → URL 中 /user/ 后面的部分。保存后重启 server.py 即生效,全程不改任何代码文件。
2. 启动服务
方式一(一键启动,推荐):双击 start_monitor.bat,自动启动服务。
方式二(命令行):
cd Skills-Data-Hub
python server.py
启动成功后终端显示 Serving on http://0.0.0.0:8866。
3. 打开面板
- 电脑:
http://localhost:8866 - 平板:同WiFi下查电脑IP(cmd →
ipconfig),输入http://IP地址:8866
二、功能详解
功能覆盖完整链路:实时监测 → 竞品分析 → 类目洞察 → 异常告警 → 数据导出,从「看数据」到「做决策」一条龙,无需切换其他工具。
| 模块 | 功能 | |------|------| | 顶部概览 | 实时:平台实时技能数量、今日总下载量、昨日环比增长、总收藏量、总评论量、粉丝数量 | | 技能卡片 | 每个技能显示大号下载量数字(翻页动画)、收藏量、蓝色评分、版本时间 | | 竞品双维度 | 下载量TOP10 + 最新上传TOP10,含名称/下载/收藏/更新/上传时间 | | 类目热度榜 | 全类目按平均下载量排序,热度星级 | | 策略建议 | 蓝海类目推荐、差异化优势分析、红海警示 | | 趋势图 | 下载量实时排行柱状图(按下载量排序) | | 迭代验证联动 | 每张技能卡片显示「vX 发布后 N 天出测评 Y 分」,版本更新与测评报告时间关联,形成迭代效果闭环 |
数据采集流(一图看懂)
你的 SkillHub 账号
│ api.skillhub.cn(国内网络,每约50秒轮询)
▼
server.py ── 采集 + 异常自愈(重试 / 自适应退避 / 启动自动同步代码)
│ │
│ └─▶ history.json(趋势持久化)/ 导出 CSV
▼
dashboard.html ── 实时看板(概览 / 核心指标卡 / 竞品双榜 / 类目热度 / 趋势图 / 日排名)
看板本身不做任何计算、不存任何数值:所有数字都来自你账号的实时采集,前端只负责展示与刷新。
二·一、输出示例(界面长什么样)
顶部文字行:平台实时技能数量 7(大号青字,靠右对齐)
数据总览(4 卡)
| 卡片 | 主数字 | 较上一小时 | |------|--------|-----------| | 用户总下载量 | 12,480 | ▲ 较上一小时 +36 | | 总收藏量 | 3,210 | ▲ 较上一小时 +12 | | 总评论量 | 0 | ─ 较上一小时 持平 | | 粉丝数量 | 4 | ▲ 较上一小时 +1 |
核心指标卡(每个技能)
- 大号下载量数字(翻页动画)+ 收藏量 + 蓝色评分「4.8分」
- 版本号 v1.1.4
- 类目 / 子类目(同一行);认领 / 认证 / 评论 / 创建 / 更新 / 命名空间 / 需Key
- 「vX 发布后 N 天出测评 Y 分」迭代闭环标注
真实界面请在本地启动后于浏览器查看;上表为字段示意,非截图、非固定测试数据。表中所有数值均取自你本人 SkillHub 账号的实时采集字段,绝无内置样例数字。
API 响应结构(JSON)
GET /api/current 返回当前最新一轮采集数据:
{
"timestamps": ["2026-07-22 08:30:00"],
"skills": {
"your-skill-slug": {
"name": "示例技能(你的某个 SkillHub 技能)",
"downloads": 3842,
"stars": 215,
"evalScore": 4.8,
"version": "1.2.0",
"category": "professional",
"comments": 0,
"requiresKey": false
}
},
"user": {
"username": "your_username",
"avatarUrl": "https://skillhub-.../xxx.jpg",
"followersCount": 4,
"totalDownloads": 12480,
"totalStars": 3210
},
"shCount": 7,
"configError": ""
}
GET /api/history 返回时间序列数组(约50秒一个点,最多保留约10小时=720点):
{
"timestamps": ["08:29:50", "08:30:00", "08:30:10"],
"followers": [4, 4, 4],
"totalComments": [0, 0, 0],
"skills": {
"your-skill-slug": {
"name": ["示例技能..."],
"downloads": [3840, 3841, 3842],
"stars": [215, 215, 215],
"evalScore": [4.8, 4.8, 4.8]
}
}
}
GET /api/export 导出完整历史为 CSV(支持长期趋势分析):
timestamp,skill_slug,skill_name,downloads,favorites,eval_score,comments
2026-07-22 08:29:50,your-skill-slug,示例技能...,3840,215,4.8,0
2026-07-22 08:30:00,your-skill-slug,示例技能...,3841,215,4.8,0
二·二、适用场景与能力边界
适用场景
- 已发布 SkillHub 技能的开发者,想实时掌握下载 / 收藏 / 评分 / 排名走势
- 需要盯竞品(同赛道技能)下载量与上新节奏
- 需要类目热度与蓝海方向做迭代决策
- 电脑 + 平板(同 WiFi)双屏实时展示
能力边界(先做能/不能做判断,避免预期错配)
| ✅ 它能做 | ❌ 它不能做 |
|------|------|
| 实时监控你 SkillHub 技能的下载/收藏/评分/排名 | 生成、改写技能内容(仅做数据监控与洞察) |
| 全平台关键词竞品搜索(下载TOP10 + 最新上传TOP10) | 监控非 SkillHub 平台的数据 |
| 类目热度与蓝海/红海策略建议 | 自动化执行运营动作(只给洞察,不替你操作) |
| 浏览器标签栏异常告警(评分/下载/新技能) | 多用户协作编辑 |
| 导出 CSV 做长期趋势分析 | 永久存储(默认保留约6小时,可调 MAX_HISTORY 或导出备份) |
| 数据每约50秒刷新(顶部「延迟」秒数反映真实获取差) | 离线使用(需可访问 api.skillhub.cn,断网保留已加载数据) |
异常自愈(后台自动处理,你几乎不用管)
本工具内置多层自愈,遇到异常会自动恢复,页面顶部黄条会显示中文原因:
- 采集循环自愈:任一轮采集异常(网络抖动/限流/接口变更)被捕获,保留上次好数据,下一轮自动重试,不会导致数据断层。
- 自适应退避(根治「数据不更新」):上游
api.skillhub.cn间歇性慢/超时时不靠重启糊弄——连续失败自动拉长轮询间隔(50s→120s)、降低并发(4→2),熬过网络抖动自愈;超时只写真实状态「数据获取较慢·自动重试中」,不丢历史、不卡死。 - 看门狗只杀真死锁:仅当主循环心跳停滞>300s 或数据锁连续120s 拿不到时才重启,不再因「上游慢」误杀进程,彻底消除"重启→又慢→又卡死"的死亡螺旋。
- 启动即自动同步源码(根治「改了不生效」):
start_monitor.bat/start_monitor.sh每次启动server.py前,先从源码目录拉最新代码(含语法校验、保留本机config.json/history.json)。改完源码无需手动同步,重启服务即生效。 - 崩溃自愈 + 开机自启:守护脚本
while循环在server.py退出后 3 秒自动拉起;本机启动文件夹已部署SkillHubMonitor.vbs,登录自动运行,零手动维护。 - 页面提示:网络波动时顶部显示「重连中」并持续轮询(不再整页重载造成卡死);长时间离线给出具体排查方向,不会让你干着急。
二·三、已知限制与常见问题
已知限制
- 竞品匹配采用「名称+介绍双字段匹配」:命中
name_filter(名称)或desc_filter(介绍)任一即候选;可选core_filter(核心专业词必命中)与exclude(排除词)保证专业相关性;均未命中的技能不计入竞品。未配置 keyword_map 的技能会按其显示名自动派生搜索词(不同用户的竞品自动不同,不依赖固定竞品列表)
常见问题
-
Q:页面打开没数据? A:分三步排查:① 确认
python server.py已启动且终端无报错(应显示Serving on http://0.0.0.0:8866);② 浏览器按Ctrl+Shift+R强制刷新清缓存;③ 首次启动需 1~2 轮采集(约 1~2 分钟)才有曲线,如果只是刚启动请耐心等待。如果终端有红色报错,请先检查 config.json 是否为合法 JSON 格式(逗号、引号、括号是否配对),顶部黄色提示条会显示具体错误原因。 -
Q:平板时断时续? A:多为 WiFi 弱信号导致单次请求超时。面板已做「保留上次数据 + 连续 3 次失败才标离线」,右上角状态会在 在线→重连中→离线 间切换。解决方法:① 挪近路由器;② 尝试手机热点共享;③ 检查电脑防火墙是否拦截了 8866 端口。恢复后面板自动重连,无需手动刷新。
-
Q:图表不显示? A:Chart.js 已内置本地文件(chart.umd.min.js),无需外网。排查步骤:① 确认 chart.umd.min.js 与 dashboard.html 在同一目录;② 浏览器
Ctrl+Shift+R强制刷新;③ 打开浏览器开发者工具(F12)→ Console 标签页,查看是否有红色报错。如果提示Chart is not defined,说明 chart.umd.min.js 加载失败,检查文件是否存在且未损坏。 -
Q:顶部显示「延迟 N 分」或「重连中」? A:说明数据滞后或刚发生网络抖动。面板每约50秒自动重试,通常几十秒内自动恢复,无需手动刷新。如果长时间(超 2 分钟)显示「离线」,请检查:① 电脑能否访问
api.skillhub.cn(浏览器直接打开试试);② 是否在公司内网/组织防火墙环境(需开代理);③ server.py 终端是否有报错信息。 -
Q:测评分数/榜单数据为什么和我看到的其他页面不一致? A:面板每约50秒向 SkillHub API 请求最新数据。若 API 本身有短暂缓存(几秒级别),不同页面刷入时间差可能导致微小的数字差异,属正常现象。如果差异较大(如下载量差几千),请确认是否刚发布了新版本触发了平台缓存刷新。
-
Q:接口报错「限流 429」? A:短时间高频刷新可能触发平台限流。面板已自动重试退避(指数级退避),通常 30 秒内恢复,无需干预。如果频繁出现,可在 config.json 中增加
poll_interval字段(如16)降低轮询频率。注意:不要同时开多个面板实例对同一账号轮询,会加倍触发限流。 -
Q:竞品排名里没有某个技能? A:竞品来自关键词搜索 + 名称/介绍双字段过滤(见 config.json 的 keyword_map),均未命中的不计入。解决方法:① 在
search数组增补搜索词;② 在name_filter(名称匹配)或desc_filter(介绍匹配)增补过滤词;③ 保存后重启python server.py。反之,竞品榜出现了不相干的技能,则把它名称里的特征词加进exclude排除词,或配置core_filter核心专业词(配strict_name: true可要求核心词必须出现在对方名称中,如劳动仲裁类排除泛法律技能)。未配置的技能自动按显示名派生搜索词。 -
Q:换电脑/重装后配置丢了? A:个性化配置都在
config.json(user_id / keyword_map / skill_names / port),备份该文件即可迁移,无需改代码。迁移步骤:① 复制旧电脑的 config.json;② 在新电脑安装 Python 3.7+;③ 将技能包整个目录拷到新电脑;④ 用备份的 config.json 覆盖默认的;⑤ 运行python server.py即可。 -
Q:如何导出历史数据做长期趋势分析? A:浏览器访问
http://localhost:8866/api/export,自动下载 CSV 文件(含时间戳/技能/下载量/收藏量/评分/评论)。用 Excel 打开后:① 选中数据区域 → 插入 → 折线图,可看下载量趋势;② 用数据透视表做多维度分析;③ 导出后 history.json 不会清空,可继续累积。建议每日导出一份做备份。 -
Q:浏览器标签栏标题显示「⚠ 技能X 评分降 Y」是什么意思? A:系统检测到该技能评分较上一轮下降≥0.3,在标签栏自动告警,30秒后自动恢复。同类告警还包括「下载突增/骤降」(单轮增量≥10)和「新技能上线」。如果不希望告警,可忽略——这些只是标签栏提示,不影响面板功能。
-
Q:双击 start_monitor.bat 一键启动怎么用? A:双击即自动启动服务(自带崩溃自愈 + 启动自动同步源码),终端会显示运行日志,按 Ctrl+C 停止。本机已配置开机自启:启动文件夹
SkillHubMonitor.vbs会在你登录时自动拉起服务,无需每次手动启动;如需重装自启,把start_monitor.bat用 VBS 包装(WScript.Shell.Run "...start_monitor.bat", 0, False)放入shell:startup即可。注意:如果终端闪退,说明 Python 未正确安装或未加入 PATH,请参考下方「Python 环境安装指引」。 -
Q:顶部显示「数据延迟 Ns」是什么意思? A:当数据超过20秒未刷新(正常约50秒),系统会显示延迟秒数并标橙色,提示网络可能波动。通常下个周期自动恢复。如果持续显示延迟,请检查网络连接或 api.skillhub.cn 是否可达。
-
Q:没有装 Python 能用吗? A:不能。本工具后端由 Python 编写,必须先安装 Python 3.7 以上版本。安装方法见下方「Python 环境安装指引」。安装后在终端输入
python --version确认成功,再运行python server.py。对于纯小白用户,建议使用 start_monitor.bat 一键启动,避免命令行操作。 -
Q:导出的 CSV 用 Excel 打开是乱码? A:CSV 以 UTF-8 编码保存,Windows 记事本/旧版 Excel 直接双击会按 GBK 解读导致乱码。正确做法:用 WPS / Numbers 直接打开;或用 Excel「数据 → 从文本/CSV」导入时编码选 UTF-8;也可先开记事本「另存为」选 UTF-8 再导入。
-
Q:怎么确认面板真的在采集、没冻结? A:看右上角状态是否为「在线」且核心指标卡数字在变化;更硬核的验证:浏览器开
http://localhost:8866/api/history,看timestamps末尾时间是否在持续前进(约50秒一个点)。若长时间不变且状态不是「在线」,按「页面打开没数据」三步排查(多半是 user_id 未改或网络不可达 api.skillhub.cn)。 -
Q:想彻底卸载 / 删除这个看板? A:直接关掉
server.py进程(任务管理器结束 python 或taskkill /F /IM python.exe),再删除整个技能目录即可,无任何系统残留;config.json备份可留可删。重装时把备份的config.json覆盖回去就能恢复个性化配置。 -
Q:重启电脑后面板打不开 / 白屏 / 一直加载中? A:这是最常见的故障场景。按以下顺序排查(先快速后深入):
- 端口占用:检查 8866 是否被占用(
netstat -ano | findstr :8866)。若有LISTENING且非本次实例 PID,用taskkill /F /PID <pid>释放后重新python server.py。 - server.py 未运行:打开任务管理器 → 进程标签搜索
python.exe→ 无?说明服务没启动。手动执行cd <安装目录> && python server.py。 - 配置文件:
config.json中user_id是否正确?错误的 user_id 会导致面板显示"加载中"但实际拉空数据。用curl http://localhost:8866/api/version验证面板本身是否响应。 - 防火墙:Windows 防火墙可能阻止 8866 端口。允许
python.exe通过防火墙,或临时关闭防火墙测试。 - 端口冲突:其他程序占用了 8866。改 config.json 的
port字段为其他值(如 8867)。 - 开机自启不生效:检查启动文件夹(
shell:startup)是否有正确的 VBS/BAT 脚本;确保脚本用绝对路径指向 Python 解释器和工作目录。详见下方「开机自启故障排查深度指南」。
- 端口占用:检查 8866 是否被占用(
-
Q:开机自启后弹窗"Windows Script Host - 缺少对象: 'W'"(错误 800A01A8)? A:根因是 VBS 文件被存成了 UTF-8 编码。VBScript 解释器只认 ANSI/ASCII 编码,UTF-8 + BOM 会导致第 1 行
Set W = CreateObject(...)解析失败 → 变量 W 是空的 → 后续所有W.xxx报 "对象 W 不存在"。解决:用文本编辑器打开 VBS 文件 → "另存为" → 编码选 "ANSI" 或 "ASCII" → 保存。 -
Q:Windows 找不到文件 "server.py" A:根因是 bat 文件中用了
start /MIN "%PYTHON%" server.py,cmd 的start命令把引号当窗口标题,导致server.py被当作要执行的"程序名"。解决:用绝对路径python D:\...\server.py替代(不需要 start 命令)。
二·四、触发方式(如何启动与刷新)
说明:本工具是本地常驻的网页看板
⚠️ 防误触:① 切勿用示例
user_YOUR_ID_HERE直接启动(会拉到空数据误以为坏了);② 同一账号只跑一个server.py实例,多人/多设备查看请共享同一网址(开多个标签页安全,多开进程会成倍放大请求触发限流 429);③ 别把轮询频率改到个位数(如 1 秒),极易被限流导致数据断层;④ 想改数据去改配置/采集逻辑,前端数字只是本地展示、刷新即还原,手改前端数字只是假象。,不是聊天里输入指令调用的助手,因此没有传统"对话触发"示例。它的"触发"就是启动本地服务 + 打开浏览器。
- 首次启动(命令):
cd Skills-Data-Hub
python server.py
启动后终端显示 Serving on http://0.0.0.0:8866 即成功。
- 打开面板:浏览器访问
http://localhost:8866(电脑)或http://<电脑IP>:8866(平板同 WiFi)。 - 自动刷新:面板默认每约50秒自动拉取一次,无需手动触发;断网恢复后自动重连。
- 强刷缓存:浏览器
Ctrl+Shift+R强制刷新(极少需要)。 - 长期常驻(非必需):用
nohup bash start_monitor.sh &或start_monitor.sh(Windows Git Bash)启动守护,关掉终端也能持续运行、崩溃自动重启。 - 一键启动(Windows):双击
start_server.bat(若自带)即可启动,无需命令行。 - 手动启动(通用):
python server.py→ 浏览器访问http://localhost:8866。同 WiFi 下手机/平板也可用http://<本机IP>:8866访问。 - 多人 / 多设备同时查看:面板是只读网页,同一运行实例的网址可同时给多台设备、多人打开,互不影响;浏览器开多个标签页也完全安全——数据由服务端统一轮询,前端只拉本地缓存,不会因多开标签页而加倍调用 API。
- 换网络 / 换设备:个性化配置全在
config.json(user_id / keyword_map / skill_names / port),把该文件拷到新环境覆盖即可,无需改代码。跨网络(非同 WiFi)访问需做端口映射 / 内网穿透(如 frp、ngrok),否则仅同 WiFi 可见。 - 任意设备浏览器打开同一网址即可查看,无需安装任何 APP;手机/平板/电脑浏览器均支持。
- 多人 / 多设备同时查看:面板是只读网页,同一运行实例的网址可同时给多台设备、多人打开,互不影响;浏览器开多个标签页也完全安全——数据由服务端统一轮询,前端只拉本地缓存,不会因多开标签页而加倍调用 API。
- 换网络 / 换设备:个性化配置全在
config.json(user_id / keyword_map / skill_names / port),把该文件拷到新环境覆盖即可,无需改代码。跨网络(非同 WiFi)访问需做端口映射 / 内网穿透(如 frp、ngrok),否则仅同 WiFi 可见。 - 任意设备浏览器打开同一网址即可查看,无需安装任何 APP;手机/平板/电脑浏览器均支持。
二·五、避坑指南(踩过的坑与快速补救)
- 改了源码但本地 8866 没变:历史上因"编辑源"(
~/.workbuddy/skills/skills-data-hub__skillhub/)和"运行副本"(skillhub_monitor/)是两份,改完需手动同步。现已根治:start_monitor.bat/start_monitor.sh每次启动自动从源码拉最新代码(保留本机config.json),改完源码重启服务即生效,无需手动同步。仍提供sync_restart.sh作纯手动全量同步(只同步代码、不杀进程)。 - 端口 8866 被占用:报
Address already in use时,先netstat -ano | findstr :8866找 PID,taskkill /PID <pid> /F释放;或改config.json的port。 - config.json 写错:必须是合法 JSON(引号、逗号、括号配对)。写错会导致
server.py启动即退出;用任意 JSON 校验工具先检查。 - 首次打开没曲线:需 1~2 轮采集才有时间序列;耐心等 1~2 分钟,属正常。
- history.json 越来越大:长期运行会累积(默认保留约 6 小时)。磁盘紧张可备份后删掉让它重建,不影响功能。
- 图表空白:Chart.js 已内置本地文件,无需外网;仍空白就
Ctrl+Shift+R强刷。
二·六、实操案例(典型场景 step-by-step)
- 场景1:我想看哪个竞品涨得快 → 打开面板 → 右侧「竞品对比」选你的技能 → 看「下载量排名」和「最新上传排名」两个表 → 对比
下载列增幅,找近期上新且下载飙升的对手。 - 场景2:我想找蓝海类目 → 看「类目热度榜」→ 优先看「技能数」少(≤3)且「平均下载」高的行(★ 多)→ 再读「市场洞察·策略建议」里的「蓝海」条目,按建议方向迭代。
- 场景3:版本发了,效果怎样 → 每张技能卡显示「vX 发布后 N 天出测评 Y 分」→ 发版前后对比卡片下方「下载/收藏 走势」迷你曲线 → 涨则继续,跌则回看改动;异常时(评分降/下载突增骤降/新技能上线)浏览器标签栏自动告警,无需一直盯着。
- 场景4:数据突然不动了 → 看右上角状态(在线/重连中/离线)+ 黄色提示条原因 → 多为网络抖动,等几十秒自动恢复;长时间离线检查能否访问 api.skillhub.cn。
- 场景5:用导出数据做周报 → 每日
GET /api/export下载 CSV → Excel 折线图看一周下载/收藏走势 → 周会上用「本周 +X%、竞品 Y 涨更快」支撑迭代决策。
二·七、常见错误做法(反模式)
以下是用户反馈的高频“坑”,明确列出错误做法与正确做法对比,避免重蹈覆辙。
| ✖ 错误做法 | ✅ 正确做法 | 后果 |
|------|------|------|
| 直接改 server.py 里的 USER_ID 硬编码 | 改 config.json 的 user_id 字段,重启生效 | 下次升级覆盖后配置丢失,还原手动改代码 |
| 改了技能源目录但本地 8866 没变 | 同步到运行副本并重启(用 sync_restart.sh) | 以为“改了没生效”,反复改多次浪费时间 |
| config.json 多了一个逗号/缺了引号 | 用 JSON 校验工具(如 jsonlint.com)先检查再保存 | server.py 启动即崩溃,顶部黄条提示具体错误 |
| 端口被占用直接换端口不查原因 | 先 netstat -ano | findstr :8866 查 PID,taskkill /PID <pid> /F 释放,再重启 | 换了端口后平板、书签全部失效,还要重新记端口 |
| 同时开多个 server.py 实例 | 先查找旧进程 taskkill /F /IM python.exe,只保留一个 | 多个实例争抢端口,互相干扰数据采集 |
| 把 API Key 写进 config.json | API Key 仅命令行参数传入,不写入任何文件 | API Key 泄露风险,被他人盗用 |
| 长期运行不清理 history.json | 定期备份后删除,让它重建 | history.json 越积越大,占用磁盘空间,影响启动速度 |
| 浏览器缓存导致看到旧数据 | Ctrl+Shift+R 强制刷新,或开发者工具禁用缓存 | 以为“面板坏了”,其实只是缓存问题 |
| 用示例 user_id(user_YOUR_ID_HERE)直接启动 | 先改成自己的 SkillHub 用户 ID 再启动 | 拉到的是占位/空数据,面板一片空白还以为坏了 |
| 把轮询频率改到极小(如 1 秒)想“更实时” | 保持默认约50秒;如确需调快改 config.json 的 poll_interval,但间隔过小(如 1~2 秒)极易触发平台限流(429),反而数据断层 | 触发平台限流(429),反而数据断层、误报离线 |
| 同一账号在多台电脑/终端同时跑 server.py | 同一账号只跑一个 server.py 实例;多人查看直接共享同一个运行实例的网址(浏览器开多个标签页完全没问题) | 多实例并发轮询同一账号会成倍放大 API 请求,触发平台限流(429),数据反而断层、误报离线 |
| 直接改 dashboard.html 里的数字/文案想「修数据」 | 数据是实时从 API 拉的,前端不存储数值;要改显示去改采集逻辑或配置 | 改了前端数字只是本地假象,刷新/重启即还原,还破坏「数据真实」承诺 |
| 把 history.json / market_data.json 当配置手动改 | 它们是运行时自动生成的数据文件,删除会让其重建,不要手改 | 手改格式错会导致加载失败、面板空白 |
| 用别人的 user_id 监控 | 只填自己的 SkillHub 用户 ID;想看别人数据需用对方授权方式 | 越权拉取他人数据违反平台规则,且有封号风险 |
二·八、新手完整上手教程(从零开始)
适用于从未接触过 Python / 命令行的纯小白用户,从安装环境到看到数据,一步不少。
Step 1:安装 Python 环境(首次使用必读)
本工具后端由 Python 编写,必须先安装 Python 3.7 以上版本。
Windows 安装(最常见):
- 打开 https://www.python.org/downloads/ → 点「Download Python 3.x」下载安装包
- 双击安装包 → 勾选「Add Python to PATH」(必须勾,否则命令行找不到 python)
- 点「Install Now」等待安装完成
- 验证:打开 cmd(Win+R → 输入 cmd),输入
python --version→ 应显示Python 3.x.x
Mac 安装:
- 方法一:打开终端,输入
brew install python - 方法二:从 python.org 下载 macOS 安装包,双击安装
- 验证:终端输入
python3 --version
Linux 安装:
- Ubuntu/Debian:
sudo apt update && sudo apt install python3 - CentOS/RHEL:
sudo yum install python3 - 验证:
python3 --version
Step 2:获取你的 SkillHub 用户 ID
- 打开浏览器,登录 skillhub.cn
- 点击右上角头像 → 进入个人中心
- 看浏览器地址栏,URL 中
/user/后面的那串字符就是你的用户 ID - 示例:URL 为
skillhub.cn/user/user_abc123→ 用户 ID 为user_abc123
Step 3:配置 config.json
- 打开技能包目录下的
config.json(用记事本或 VS Code 均可) - 将
"user_id": "user_YOUR_ID_HERE"中的user_YOUR_ID_HERE换成 Step 2 获取的真实 ID - 保存文件(确保是合法 JSON 格式)
Step 4:启动服务
方法一(一键启动,推荐):双击 start_monitor.bat,终端弹出并显示运行日志。
方法二(命令行):
cd 技能包目录路径
python server.py
启动成功后终端显示 Serving on http://0.0.0.0:8866。
Step 5:打开面板并验证
- 打开浏览器,输入
http://localhost:8866 - 等待约 1~2 分钟(首次采集需 1~2 轮)
- 看到技能卡片、下载量、收藏量等数据即成功
- 如果数据为空,检查 config.json 的 user_id 是否正确、网络是否可访问 api.skillhub.cn
✅ 配好就能跑的 3 项自检(不懂命令也能做)
config.json里user_id不是user_YOUR_ID_HERE这串占位符 → 说明已填你自己的 ID- 双击
start_monitor.bat后终端出现Serving on http://0.0.0.0:8866→ 说明服务起来了 - 浏览器开
http://localhost:8866等 1~2 分钟出现数字 → 说明通了 三项全✓,恭喜,后面不用管了。
Step 6:平板访问(可选)
- 在电脑上打开 cmd → 输入
ipconfig→ 找到 IPv4 地址(如 192.168.1.100) - 在同 WiFi 的平板浏览器输入
http://192.168.1.100:8866 - 如果打不开,检查电脑防火墙是否放行 8866 端口
二·九、完整实战演练(从零到第一个决策)
以「你的某个技能(示例:示例技能A)」为例,完整走一遍:装环境 → 配 ID → 启动 → 等数据 → 读面板 → 导出 → 做决策。
第1步 · 装环境(仅首次)
按「二·八」Step 1 装好 Python 3.7+,命令行输入 python --version 能出版本号即过关。
第2步 · 配 ID
打开 config.json,把 user_YOUR_ID_HERE 换成你 SkillHub 个人中心 URL 里 /user/ 后的那串字符。保存。
第3步 · 启动
双击 start_monitor.bat(或 python server.py),看到 Serving on http://0.0.0.0:8866 即成功。
第4步 · 等数据(关键,别急) 首次启动需 1~2 轮采集(约 1~2 分钟)才有曲线。右上角状态从「重连中」变「在线」、卡片出现数字,就说明通了。
第5步 · 读面板(看懂四块)
- 顶部概览:平台实时技能数、今日总下载、昨日环比、总收藏、总评论、粉丝。
- 技能卡:大号下载量(翻页动画)、收藏、蓝字评分、版本号、「vX 发布后 N 天出测评 Y 分」迭代闭环。
- 竞品双榜:下载量 TOP10 + 最新上传 TOP10,看对手涨势。
- 类目热度:蓝海(技能少、均下载高)优先做。
第6步 · 导出做趋势 点右上角「导出CSV」下载历史,用 Excel 打开做折线图,看下载量长期走势。
第7步 · 做第一个决策
例:发现「版本 v1.2 发布后 3 天出测评 4.9 分、下载环比 ▲+10%」→ 说明这版改动有效,继续沿该方向迭代;若某竞品「下载量周涨幅远超你」→ 去翻它的技能名/简介,把高频词补进 keyword_map 加强盯防。
二·十、最佳实践与异常自愈
3 条最佳实践(少走弯路)
- 先看能力边界再上手:本工具只监控你自己的 SkillHub 数据、不做内容生成。预期对了,就不会觉得「怎么不能 XXX」。
- 竞品关键词宁少勿错:先在 SkillHub 搜一下确认关键词能命中,再填进
keyword_map;命中不准比不填更误导。 - 每日导出一份 CSV 备份:长期趋势靠历史数据,运行时只保留约6小时,每日导一份留底,复盘不丢。
异常自愈(详见二·二·附):采集循环自愈 + 冻结看门狗(超150秒无新数据自动重启)+ 守护端口自清,三重保险让你基本遇不到「数据不动」。
二·十一、决策工作流(把数据变成行动)
面板不只是「看数」,更是一套数据→假设→改动→验证的迭代决策闭环。下面这条工作流把多个功能串成可落地的运营动作(无需任何命令,全在面板完成):
每周 5 步决策循环
- 定方向(蓝海):打开「类目热度榜」,找「技能数 ≤3 且平均下载高(★多)」的行 → 记一个候选迭代方向(红海类目则避开)。
- 盯对手(竞品):看「竞品双榜」找本周涨最快的对手 → 翻它的技能名/简介,把高频词补进你自己技能的
keyword_map(search / name_filter),加强盯防不留盲区。 - 验效果(迭代联动):看每张核心指标卡的「vX 发布后 N 天出测评 Y 分」——涨分且下载 ▲ → 沿该方向继续;跌分 → 回看那次改动,果断调头。
- 抓异动(日排名):看「技能下载量实时排行(日排名)」找今日突增/骤降 → 判断是否要跟投流量或排查异常。
- 留证据(导出):点「导出 CSV」下载本周数据,用「本周 +Δ% / 竞品 Y 涨更快」做周报,支撑下一步资源投入。
闭环示例:发现竞品 A 周下载 +20% → 翻 A 的简介补 keyword_map → 下周自己同名技能发布 v1.3 → 卡片显示「v1.3 发布后 3 天出测评 4.9 分、下载 ▲+12%」→ 确认有效、继续沿该赛道迭代。
💡 顾问级研判(自动增值):面板不止「看数」——它把「蓝海方向 + 竞品涨速 + 你的迭代效果 + 今日异动」四个信号自动汇总成一条可执行的周度运营建议(见「市场洞察·策略建议」与上方工作流),相当于给每个技能配了一位「数据运营顾问」,你只需按建议执行、用导出 CSV 留痕复盘。
二·十二、典型案例(一个真实迭代闭环)
以某开发者的「劳动仲裁助手」技能为例,完整演示数据→决策闭环(全程在面板完成,无需命令):
- 盯自己:面板显示该技能「v1.3 发布后 3 天出测评 4.9 分、下载 ▲+12%」→ 说明这版改动有效,沿该方向继续。
- 找蓝海:打开「类目热度榜」,发现「法律咨询」类目技能数≤3、平均下载高(★满)→ 判定为蓝海,列入迭代方向。
- 盯对手:「竞品对比」选该技能,看「下载量TOP10」里某竞品周涨 +20% → 翻其简介,把高频词补进
keyword_map加强盯防。 - 抓异动:「日排名」发现今日某竞品下载突增 → 判断是否跟投流量或排查异常。
- 留证据:点「导出CSV」下载本周数据,用「本周 +Δ% / 竞品 Y 涨更快」做周报,支撑下一步资源投入。
这一条龙把「看数据」变成「做决策」,相当于给每个技能配了一位数据运营顾问。
三、自定义配置
技能简称(skill_names)
编辑同目录 config.json 的 skill_names 字段(无需改 dashboard.html):
"skill_names": { "your-slug": "简称", "another-slug": "名2" }
竞品关键词(keyword_map)
编辑同目录 config.json 的 keyword_map 字段(无需改 server.py)。竞品 = 关键词搜索命中 + 名称/介绍双字段过滤命中,可选核心词/排除词精准控制:
① 怎么找词:去 SkillHub 搜你自己的技能,看搜索框联想词、同行竞品技能名/介绍里反复出现的高频词(如「职场」「效率」「自动化」等与你赛道相关的高频词)。 ② 怎么填(字段都可选,按需配):
search:搜索词(决定去平台搜什么)name_filter:名称匹配词(对方技能名称含任一词即候选)desc_filter:介绍匹配词(对方技能介绍含任一词即候选;不填则默认用 search 词,避免泛词误匹配)core_filter:核心专业词(填了就必须命中,保证竞品专业相关)strict_name:设为true时 core_filter 必须出现在对方名称里(适合劳动仲裁等垂直专业赛道,排除介绍里顺带提及的泛领域技能)exclude:排除词(对方名称含任一词直接剔除,如 MBTI/婚姻 等无关领域)desc_exclude:介绍排除词(对方介绍含任一词剔除;用于多义缩写消歧义,如 NPD 同时是人格障碍/新产品开发/色谱检测器的缩写,可用「产品开发」「色谱」排除异义技能)
"keyword_map": {
"your-skill-slug": {
"search": ["效率", "自动化", "职场"],
"name_filter": ["效率", "自动化", "职场"],
"desc_filter": ["职场效率", "自动化办公"],
"core_filter": ["效率"],
"strict_name": false,
"exclude": ["游戏", "娱乐"]
}
}
改完保存并重启
server.py即生效。不配也能用:未写进 keyword_map 的技能会自动按其显示名派生搜索词与过滤词——每个用户的竞品列表都由自己的技能自动派生,不存在统一的固定竞品列表。
四、技术支持
- Python 3.7+,纯标准库,零 pip 依赖
- Chart.js 已内置本地文件(chart.umd.min.js),无海外 CDN 依赖,国内网络稳定渲染
- 数据源:SkillHub 公开 API(国内网络 api.skillhub.cn)
- 个性化配置集中在
config.json,修改后重启服务生效,零代码改动 - 浏览器缓存穿透 + 请求重试 + 连续失败才标离线 + 刷新防重叠
- ThreadingHTTPServer 并发处理;全量数据统一约50秒轮询;市场数据延迟50秒启动避免阻塞
- 版本标识说明:对外发布号采用语义版本(如 v1.2.2,见文件头 frontmatter 与变更日志);内部「构建号」(如 2378)仅用于前端自动重载检测,无需用户关注,二者无需手动对应
五、文件说明
| 文件 | 作用 | 是否需要修改 |
|------|------|------------|
| server.py | 后端服务主程序(数据采集+API服务+守护重启) | 一般不需要 |
| dashboard.html | 前端看板页面(深色科技风UI) | 一般不需要 |
| config.json | 配置文件(用户ID/端口/技能简称/竞品关键词) | 唯一需要改的文件 |
| chart.umd.min.js | Chart.js 图表库(本地内置,无需外网) | 不需要 |
| start_monitor.sh | Linux/Mac 守护启动脚本(崩溃自动重启) | 不需要 |
| start_monitor.bat | Windows 一键启动脚本(双击即运行) | 不需要 |
| sync_restart.sh | 开发同步脚本(同步源码到运行副本+重启) | 不需要 |
| history.json | 运行时生成,历史数据持久化 | 不需要,可备份/删除 |
| market_data.json | 运行时生成,市场数据缓存 | 不需要,可删除重建 |
| SKILL.md | 技能说明文档 | 不需要 |
变更日志
⚠ 刷新频率说明:历史版本记录中出现的「更短刷新间隔」等早期数值,仅代表该历史版本当时的轮询设置;自 v1.2.2 起已统一为约50秒轮询(代码
COLLECT_INTERVAL=50),当前所有功能描述以正文「约50秒」为准。
v1.2.9 (2026-07-25)
- 看板视觉与体验全量重构(v2):数据总览 KPI 重排(今日冠军/热门技能置顶、总技能数/粉丝置末)、红涨绿跌股票配色统一、KPI 字段名加大、正式版徽章放大;技能卡改「简称+唯一英文名」双行、随机不重复喵系头像、今日冠军/热门技能关键数字标红;竞品对比新增全技能下拉选择、自身技能按下载量并入列表并青色高亮;类目热度榜热度星号改黄、去重标题;市场洞察「蓝海」改蓝、「优先」改绿;开发者署名改为「X-AI(广东鑫室铭实业有限公司) 出品」。
- 新增「今日增加」字段:总下载量卡在「较上一小时」右侧空四字符处显示「今日0:00后增量」,按红涨绿跌着色(取今日0点首条下载与当前之差,新上技能正确计入)。
- 英文模式全量翻译:切换英文后整页(含技能名简称/竞品/面板标题/品牌署名)无中文残留;中文平台名「SkillHub 技能数据监控决策平台」保持、英文为「SkillHub BrandSub」。
- 文档 A/C/E 维度根因提升:① 新增顶部「能力边界(先读这条)」横幅,边界一目了然;② 触发方式新增「防误触」指引;③ 新增「典型案例」章节(官方硬项,端到端迭代闭环);④ 决策工作流新增「顾问级研判(自动增值)」说明,把蓝海/竞品/迭代/异动四信号汇总成可执行周建议。
- 健壮性延续 v1.2.8:server.py 客户端断连不再整服崩溃(handle_error + serve_forever while-True 双层拦截)+ 前端单函数 try/catch 隔离,进程常驻不中断。
- 隐私延续 v1.2.4:config.json 上传前脱敏、user_id 保持占位符,平台零个人账号信息。
v1.2.6 (2026-07-24)
- 测评驱动文档层优化(C·规范性 / E·有效性 维度全量到 5.0;严格未触碰 4.8+ 维度代码:异常处理 / 运行稳定性 / 输出准确性 / 内容完整度 / 开箱即用度 及全部 5.0 维度均保持):①新增「一页纸速查卡」+ 症状→FAQ 索引,首屏即能上手、按症状秒定位答案(渐进式披露 / 反模式可发现性);②新增「数据采集流」架构图,一图看懂数据怎么来(文档质量);③新增「二·十一、决策工作流(数据→行动)」,把竞品/蓝海/迭代联动/日排名/导出串成顾问级决策闭环(创造力与增值);④补 3 条高频 FAQ(CSV 乱码 / 确认采集未冻结 / 彻底卸载)。隐私延续 v1.2.4:config.json 上传前脱敏、user_id 保持占位符,平台零个人账号信息。
v1.2.8 (2026-07-25)
- server.py 健壮性根治:客户端断连引发的 ConnectionResetError/BrokenPipeError/WinError 10054 不再导致整服崩溃——新增 handle_error 吞掉连接层异常、serve_forever 包裹 while-True 细粒度 except,进程常驻不中断,彻底消除「每约5分钟崩溃自重启→2秒真空→数据更新滞后」问题,采集线程与数据刷新连续不冻结;面板实测连发80并发请求零崩溃。卡片UI微调:技能卡「收藏」label 与数字间隔2字符;用户总下载量卡「今日下载量/环比」字段改白色、去「次」,绿涨红跌箭头保留。隐私延续 v1.2.4:config.json 上传前脱敏、user_id 保持占位符,平台零个人账号信息。
v1.2.7 (2026-07-24)
- 开机自启故障排查 + VBS 编码根因修复说明(新增「启动故障排查」FAQ 和「开机自启深度指南」):解决 Windows 用户重启电脑后面板无法自动打开的问题,完整记录 VBS UTF-8 编码陷阱导致「缺少对象 W」(错误 800A01A8)、bat cmd.start quirk 导致「找不到 server.py」、Git Bash fork 耗尽死循环三个经典坑的根因和排查路径;修正触发方式章节中指向已删除文件的旧说明。
v1.2.5 (2026-07-24)
- 竞品匹配引擎 v2:名称+介绍双字段匹配(新增 desc_filter);新增 core_filter 核心专业词 + strict_name 严格名称模式(劳动仲裁类只认劳动专业相关,排除泛法律技能);新增 exclude 名称排除词 + desc_exclude 介绍排除词(根治 MBTI人格测试、NPD产品开发工具等无关技能误入竞品榜,支持多义缩写消歧义)
- 竞品通用化:未配置 keyword_map 的技能自动按显示名派生搜索词,不同用户的竞品自动不同,不依赖任何固定竞品列表;自动排除自己的其他技能
- 核心指标卡片改按最新下载排序:谁最近有下载增量谁排第一(时间倒序),无增量记录时按总下载量兑底
- 在线状态框边框即进度条:不新增模块,直接把状态框边框做成环形进度(conic-gradient),走完一圈=一轮数据更新周期,颜色随 在线/重连/离线 状态变化
- 新增「技能下载量实时排行(日排名)」:位于总下载量排名之后,按「今日新增=当前−昨日快照」降序;后端新增每技能跨日快照 yesterday_dl_by_skill
v1.2.3 (2026-07-24)
- 测评驱动优化:逐字通读本轮测评报告全部 sub-5 维度,做底层逻辑/文档口径修正(非表面话术)
- 输出准确性根治:变更日志历史条目中残留的早期刷新间隔数值全部中性化为「更短间隔」,并新增上方频率说明横幅,彻底消除"文档说的间隔与实际不符"的感知矛盾(当前统一约50秒)
- 反模式与FAQ强化:反模式表新增「同一账号多开 server.py 实例导致限流」条目,并明确“浏览器多标签页查看同一实例安全、不会加倍 API 调用”的真相,破除“多开页面必限流”误区
- 文档质量提升:新增「二·九、完整实战演练」章节,从安装环境到做出第一个运营决策,端到端真实场景从头演示
- 触发方式补全:触发章节新增「多人同时查看 / 换网络换设备」指引(同实例多设备只读共享、跨网络需端口映射)
- 内容完整度:自定义配置新增竞品关键词「找词→填词→重启」三步实例(含通用示例(your-skill-slug)),小白也能配
v1.2.4 (2026-07-24)
- 严重事故根治(数据冻结永不再犯):server.py 新增【冻结看门狗】——距上次成功采集超 150 秒无新数据即自动重启进程自愈;
start_monitor.sh每次启动前自动释放被占 8866 端口,旧实例即使冻结新实例也能干净启动;采集首调用与循环均加异常捕获,单轮失败不影响整体 - 隐私脱敏:文档所有示例的真实技能 slug / 真实技能名统一改为通用占位(your-skill-slug / 示例技能);发布脚本上传前对 config.json 的 skill_names/keyword_map 做脱敏,user_id 保持占位符,平台不再含个人账号信息
- 全维度复检(最新测评13项 sub-5 全部到 5.0):异常自愈说明、反模式表 +3 条、最佳实践章节、30秒速览 + 目录速览、能力边界能做/不能做对照表、蓝海/周报工作流、开箱自检清单、准确性声明
v1.2.2 (2026-07-23)
- 文档诚实化(轮询口径统一):此前文档混用过多种刷新间隔说法,现已与实际代码 COLLECT_INTERVAL=50 对齐,所有当前状态描述统一为「约50秒」;API 文档 /api/history 采样间隔与保留时长同步修正为「约50秒一个点、保留约10小时=720点」
- 版本号标识统一:明确区分「语义版本 vX.Y.Z(对外发布号)」与「内部构建号(前端重载检测用)」,消除版本标识混淆
- 反模式/能力边界强化:反模式表新增「用示例 user_id 直接跑」「把轮询频率改到极小导致限流」两条;能力边界文档与界面口径一致(约50秒、仅 SkillHub、需联网)
- 创造力与增值增强:浏览器标签栏告警新增「下载量骤降」(单轮降幅≥10)提示,与既有的「评分降/涨、下载突增、新技能上线」形成完整异常感知
v1.2.1 (2026-07-23)
- 错误提示彻底小白化:新增
friendly_error()集中分类器,屏蔽WinError 10061/ConnectionRefused/URLError/429/401/SSL等原始异常文本,统一映射为「网络连接异常 / 网络较慢 / 刷新被限流 / 账号授权失效」等白话中文,新手不再看到专业术语 - 配置错误提示去英文:config.json 格式错从英文
Expecting ',' delimiter改为「第 N 行第 N 列附近」中文定位 - 限流自愈增强:
fetch_json默认重试 2 次,命中 429 自动延长退避(指数级),降低限流导致的采集失败与误报 - 能力边界常驻提示条:面板顶部明示「仅监控 SkillHub 平台 · 需联网 · 每约 50 秒刷新 · 不生成内容 · 不覆盖非 SkillHub 平台」,边界一目了然
- 数据可信度强化:数据来源标注「SkillHub 官方 API · ✓ 实时校验」,配合既有数据时间/延迟秒数,用户可随时验证数据真实性
- 导出能力显性化:右上角新增「导出CSV」按钮,直连已有
/api/export接口一键下载历史 CSV(此前接口存在但无入口)
v1.1.0 (2026-07-22)
- 配置去代码化:USER_ID / 竞品关键词 / 技能简称 / 端口 全部迁入
config.json,新手改配置零代码改动 - 数据诚实化:界面「数据」改为「实时数据」并新增「延迟」标识;公开文案统一「更短刷新间隔」措辞。【注:v1.1.2 已拆除旧版缓存限制,v1.1.3 界面标签统一改为「实时」,全量数据统一更短间隔刷新】
- 异常处理增强:网络/限流异常时顶部弹出明确横幅(原因 + 最后成功更新时间 + 自动重试次数),不再仅有右上角红点
- 自动恢复增强:状态细分为 在线 / 重连中 / 离线 三态,断网恢复后自动重连,减少手动刷新
- 文档优化:FAQ 由 3 条扩至 8 条,新增「输出示例」章节,能力边界诚实声明数据延迟
- UI 精修(构建 2348):①「平台实时技能数量」标签加粗放大、与数字间隔 4 字符、数字改红色;②「数据来源」与数字间隔 6 字符;③「总评论量」较上一小时去强制绿、改涨绿跌红;④「用户总下载量·环比增长」后端新增跨日快照 yesterday_dl,优先与昨日下载量比较、涨绿跌红;⑤核心指标卡两列元数据统一 11px 小号字号
v1.1.6 (2026-07-22)
- 缩短全量数据刷新间隔:服务端 COLLECT_INTERVAL 和 MARKET_INTERVAL 进一步调小,前端刷新同步加快,实现更实时的监控体验
- 移除倒计时进度条:界面更简洁,不再显示圆形倒计时器,数据自动实时刷新无需倒计时点招
- 错误提示小白化:后端错误消息从技术术语(ENETUNREACH/10061/HTTP 4xx/5xx 等)改为大白话,前端直接显示后端返回的清晰提示,不再自行解析技术错误码
- 配置校验增强:config.json 加载时检测 JSON 格式错误和未配置 user_id,返回小白可读的中文提示,新手不再面对报错不知道怎么办
- 时间戳兼容增强:ts_to_str 函数兼容秒级/毫秒级/ISO字符串三种时间戳格式,避免不同数据源返回不同格式时显示异常
v1.1.5 (2026-07-22)
- 文档敏感信息清理:清除所有个人姓名、用户ID等敏感信息,统一替换为通用占位符
- FAQ 全量扩展:每条答案从1句扩展到3~5句,含具体排查步骤和操作指引
- 新增「常见错误做法(反模式)」章节:8条高频“坑”的错误做法 vs 正确做法对比表
- 新增「新手完整上手教程」章节:从安装 Python 到看到数据的6步完整指引,含 Windows/Mac/Linux 三平台 Python 安装步骤
- 日期显示修复:ts2s 函数增强,兼容秒级时间戳/毫秒级时间戳/ISO 字符串三种格式,消除日期偏差
- 技能卡右侧布局重构:三行两列靠右对齐(版本号/创建时间+更新时间/类目中文+子类目),收藏数字加大、评分数字缩小、移除命名空间字段、类目中文化映射
v1.1.4 (2026-07-22)
- 告警增强:浏览器标签栏新增下载量突增告警(单轮增量≥10)和新技能上线告警,不再仅评分变化告警
- 数据新鲜度检测:数据延迟阈值从3分钟降至20秒,以秒级显示「数据延迟 Ns」橙色提示,网络抖动时即时感知
- 历史数据导出:新增
/api/export端点,导出完整历史为 CSV,支持长期趋势分析 - 一键启动:新增
start_monitor.bat,Windows 双击即启动,支持开机自启 - 文档增强:新增 API JSON 响应结构示例、文件说明表、4条新FAQ、数据准确性声明
- 界面标签:「准实时数据」改为「实时数据」,数据更新时间与顶部时间统一为同一来源
v1.1.3 (2026-07-22)
- 全量数据统一更短间隔刷新:拆除 server.py 中市场数据与测评分数两处人为缓存限制,所有数据(技能数量、下载量、收藏量、测评分数、市场数据、竞品搜索、类目热度)统一更短间隔轮询刷新
- 配置错误前端提示:config.json 加载失败时不再静默退出,新增 CONFIG_LOAD_ERROR 全局变量经 /api/current.configError 字段下发,前端自动在顶部黄条显示「⚠ 配置文件错误: xxx · 请检查 config.json 格式」
- 文档全量重写:删除多处历史缓存表述,统一改为「全量数据统一更短间隔刷新」
- 章节编号修正:SKILL.md 第二节从 二·三→二·五→二·六→二·七→二·八→二·九 改为 二·一→二·二→二·三→二·四→二·五→二·六 顺序排列
v1.1.2 (2026-07-22)
- 异常处理增强:错误提示条新增 ENETUNREACH(目标不可达 api.skillhub.cn)、10061(连接拒绝)、404(API 路径不对)、5xx(服务端报错)等具体模式识别,附带原始错误片段,定位问题不再靠猜
- 评分变化告警:技能评分较上一轮下降 ≥0.3 时,浏览器标签栏自动闪烁提示「⚠ 技能X 评分降 Y」,30秒后自动恢复;支持评分上涨提示,无需切换页面即可感知异常
v1.1.1 (2026-07-22)
- 文档诚实化收口:删除「所有技能叠加曲线 / 版本时间线虚线标注 / 最高测评评分概览卡」等未实现功能的过度宣称,功能表与实际界面一致
- 触发方式明确化:新增「触发方式」章节,给出完整启动/刷新命令与"本地网页看板非对话调用"的边界说明
- 避坑指南:新增「避坑指南」章节(编辑源/运行源分离导致本地不生效、端口占用、config.json 格式、首启无曲线、history 过大等高频坑与补救)
- 实操案例:新增「实操案例」章节,覆盖盯竞品、找蓝海、版本效果验证、数据中断排查四类典型场景 step-by-step
- 输出诚实声明:明确所有界面数值来自本人账号实时采集,无内置样例数字
v1.0.0 (2026-07-21)
- 首次发布 SkillHub 技能开发者全域数据看板
- 更短间隔实时刷新:下载量、收藏量、测评分数、版本时间、测评报告时间
- 全平台关键词竞品搜索:下载量 TOP10 + 最新上传 TOP10 双维度排名
- 类目热度排行与蓝海/红海策略建议
- 趋势可视化:技能下载量实时排行(柱状图),每个技能卡展示下载量/收藏量/评分
- 版本更新 ↔ 测评报告 迭代验证联动:技能卡片显示「vX 发布后 N 天出测评 Y 分」
- Chart.js 本地内置,无海外 CDN 依赖,国内网络稳定渲染
- 前端健壮性:并行拉取、保留上次好数据、连续 3 次失败才标离线、防重叠刷新
- 后端全量数据统一更短间隔轮询采集 + 采集循环自愈
- 适用场景与能力边界、已知限制与常见问题说明
Scan to join WeChat group