NAS部署指南:ExerciseDiary运动数据可视化工具全程图解
Exercise Diary 是一款灵感来源于 GitHub 年度贡献热力图的个人健身记录工具。它专注于帮助用户追踪并直观地展示日常运动情况,通过清晰的数据可视化界面激励健身习惯的养成。

这款工具的设计风格简洁,核心是生成个人专属的运动热力图,让每一次锻炼都有迹可循。

环境部署与安装
推荐使用 Docker Compose 进行快速部署,以下是一份基础的配置文件示例。
services:
exdiary:
image: aceberg/exercisediary:latest
container_name: exdiary
ports:
- 8851:8851
environment:
- TZ=Asia/Shanghai
volumes:
- ./data:/data/ExerciseDiary
restart: unless-stopped
关键参数说明(更详细的配置请查阅官方文档):
:::
- TZ(环境变量,可选):用于设置容器的时区,确保日志和时间记录准确。
- HOST(环境变量,可选):定义应用程序监听的网络地址。
- PORT(环境变量,可选):定义应用程序监听的端口号。
- THEME(环境变量,可选):设置界面主题,可选值包括 emerald、grass、grayscale、ocean、sand、wood。
- COLOR(环境变量,可选):设置整体配色模式,可选择 light(浅色)或 dark(深色)。 :::
基础使用与功能解析
完成部署后,在浏览器地址栏输入 http://你的NAS_IP地址:8851 即可访问 Exercise Diary 的主界面。
首次进入管理面板后(目前界面为英文,可通过浏览器翻译插件获得中文体验),建议首先进行基础配置。
在配置页面中,您可以修改网站的访问地址、服务端口以及视觉主题。如果对隐私安全有较高要求,可以在此处启用账号密码认证功能,为您的健身数据增添一道访问锁。
接下来进入运动项目创建环节。在“添加运动”页面,您可以预设所有需要跟踪的健身活动类型。
创建时,主要填写项目名称、计量单位(如:次、公里、分钟)和颜色标记这三项核心信息。下方的描述、图片链接、负重及次数等字段属于可选的高级详细信息。
成功创建后,您预设的运动项目就会出现在主面板的项目列表中。
提示: 您可以自由添加多个运动项目,例如跑步、力量训练、瑜伽等,以便全面记录健身生活。
日常记录非常便捷:只需点击任意运动项目旁边的箭头图标,即可将该活动快速添加到当天的锻炼日志中。
完成记录后,界面顶部会清晰展示每日的运动条目。对于力量训练等项目,右侧还提供了专门的字段用于记录具体的负重信息。
在“状态”视图下,您可以一目了然地回顾左侧日历中的每日运动项目记录概览。
而“负重”视图则专门用于追踪和分析特定力量训练项目随时间的负重变化趋势。
此外,Exercise Diary 对移动端网页访问进行了良好的适配,您可以在手机浏览器上方便地查看和记录数据。
综合评价与总结
总体而言,Exercise Diary 是一款功能聚焦、设计轻量的运动记录工具。虽然它不像专业健身应用那样功能繁杂,但对于仅需清晰记录锻炼频率、类型和简单数据的用户来说,它提供了极高的实用价值。相比于使用手机备忘录进行零散记录,其热力图和趋势图能更直观地反映锻炼周期,有效提升坚持运动的成就感与动力。对于追求数据私有化、喜爱简洁风格且有规律健身习惯的用户,部署一个属于自己的 Exercise Diary 不失为一个值得尝试的选择。
综合推荐指数:⭐⭐⭐(定位清晰,满足核心记录需求) 使用体验评价:⭐⭐⭐(操作直观,数据可视化效果良好) 部署难易程度:⭐⭐(基于Docker,流程简单)
NAS部署贴吧云签到工具Tieba-Cloud-Sign全攻略
Tieba-Cloud-Sign是一款功能强大的百度贴吧云签到工具,一旦在您的NAS服务器上完成配置,即可实现贴吧的全自动签到,无需后续手动干预。通过安装丰富的插件,该工具还能进一步拓展功能,实现云灌水、自动点赞、封禁管理、帖子删除与内容审查等高级操作,为贴吧管理带来极大便利。
安装指南:使用Docker Compose部署
您可以通过以下Docker Compose配置快速部署Tieba-Cloud-Sign及其依赖的数据库服务。
services:
tieba-cloud-sign:
image: moenetwork/tieba-cloud-sign:latest
container_name: tieba-cloud-sign
ports:
- 8080:8080
environment:
- PUID=1000
- PGID=1000
- DB_HOST=db:3306
- DB_USER=root
- DB_PASSWD=janejane123456
- DB_NAME=tiebacloud
- CSRF=true
depends_on:
- db
restart: always
db:
image: agrozyme/mariadb:latest
container_name: tieba-mariadb
environment:
- MYSQL_DATABASE=tiebacloud
- MYSQL_ROOT_PASSWORD=janejane123456
volumes:
- ./mysql:/var/lib/mysql
restart: always
核心参数解析(建议部署前查阅官方文档获取完整信息):
- PUID 与 PGID:用于设置容器内运行进程的用户与组标识符,请根据您宿主机的实际用户情况配置。
- DB_HOST:指定MariaDB数据库服务器的连接地址与端口。
- DB_USER / DB_PASSWD:用于连接数据库的账号与对应密码。
- DB_NAME:指定Tieba-Cloud-Sign工具使用的数据库名称。
- CSRF:启用或禁用跨站请求伪造防护功能。
- MYSQL_DATABASE:容器启动时自动创建的数据库名称。
- MYSQL_ROOT_PASSWORD:设置MariaDB数据库root用户的密码。
使用与配置详解
部署完成后,在浏览器地址栏输入 http://您的NAS的IP地址:8080 即可访问Tieba-Cloud-Sign的Web管理界面。

初始化设置向导
- 开始安装:在欢迎页面点击“前往安装”按钮,进入安装向导。

- 同意协议:仔细阅读用户许可协议后,点击“我接受”继续。

- 环境检查:系统会自动进行运行环境检测,确认无误后点击“下一步”。

- 安装类型:对于全新安装,选择“不,我不是(全新安装)”。

- 数据库配置:根据前面Docker Compose文件中的设置,填入对应的数据库连接信息。
地址:db:3306 用户名:root 密码:janejane123456 数据库名:tiebacloud
- 创建管理员:设置平台的管理员账号、密码及邮箱信息。

- 完成安装:看到安装成功的提示页面,即表示初始化配置完成。

使用刚才设置的管理员账号和密码登录系统。

New‑API大模型聚合网关:自托管统一管理多平台AI资源全指南
OpenClaw 作为热门工具,其部署与使用教程广泛流传。然而,用户们普遍感受到其消耗Token的速度之快。
面对琳琅满目的AI平台,您可能从论坛或群组中获得了多种免费额度,但OpenClaw官方支持的平台有限。为了更灵活、统一地管理这些模型资源,是否可以将它们整合起来,通过一个自托管平台进行统一调用与管理?
本文将详细介绍名为New‑API的项目。它能够协助您从获取模型Token、系统配置,到部署运行与接口调用,逐步构建属于自己的自托管大模型网关,从而实现模型资源的集中管理与高效调用。借助New‑API,您无需为每个平台单独适配接口,也不必担忧调用过程混乱,轻松实现多模型统一访问、流量限制与日志管理。如果您的Token资源充裕,还可以选择对外运营模式,获取额外收益。

接下来,我们将深入解析New‑API的核心特点、部署流程、Token配置方法以及实际调用示例,助您快速掌握这一工具。
New‑API 概述:开源大模型聚合网关详解
New‑API 是一款开源的大模型聚合与网关系统,它本身不提供模型能力,而是依赖第三方模型的API Key来进行调用。
其核心功能涵盖:
- 多模型统一接口:支持OpenAI、Claude、Gemini等多种模型,提供兼容OpenAI风格的API接口;
- 集中Token管理:支持API Key的分组、流量限制和调用统计,便于高效管理多个模型的访问凭证;
- 自托管网关:具备用户管理、日志查看和权限控制功能,确保安全可控;
- 灵活部署选项:支持Docker、Docker Compose、本地部署及多机集群模式,适应不同环境需求。
简而言之,New‑API 能够将各类模型统一管理,通过单一接口进行调用,显著降低开发与维护的复杂性。
部署与初始化:以威联通NAS为例分步操作
本文以威联通NAS为环境,通过Docker Compose方式演示部署过程。
尽管官方不建议使用SQLite数据库进行部署,但这里仍简要介绍,以便有兴趣尝试的用户快速上手。
services: new-api: image: calciumion/new-api:latest container_name: new-api restart: always ports: - "3000:3000" # Web 控制台,左侧建议修改 environment: TZ: "Asia/Shanghai" volumes: - /share/Container/newapi:/data # 左侧目录自行更换
若希望进行完整部署,请参考以下配置示例:
services: # 数据库服务(仅内部使用,不映射端口) mysql: image: mysql:8.0 container_name: newapi-mysql restart: always environment: MYSQL_ROOT_PASSWORD: newapi MYSQL_DATABASE: newapi MYSQL_USER: newapi MYSQL_PASSWORD: newapi TZ: "Asia/Shanghai" volumes: - /share/Container/new-api/mysql_data:/var/lib/mysql networks: - new-api-network
# Redis 服务(New-API 默认依赖) redis: image: redis:latest container_name: newapi-redis restart: always networks: - new-api-network
# New-API 服务 new-api: image: calciumion/new-api:latest container_name: new-api restart: always depends_on: - mysql - redis ports: - "8399:3000" # Web 控制台端口,端口自行更改 environment: TZ: "Asia/Shanghai" SESSION_SECRET: "f4s9K8l3uP1qV7mZ2xR6wT0bY5nD8eH3" CRYPTO_SECRET: "r7M2yX9cL6vP3sT1qF8hW0zK4aB5jN6e" SQL_DSN: "newapi:newapi@tcp(mysql:3306)/newapi?charset=utf8mb4&parseTime=True&loc=Local" REDIS_CONN_STRING: "redis://redis" ERROR_LOG_ENABLED: "true" BATCH_UPDATE_ENABLED: "true" volumes: - /share/Container/new-api/data:/data - /share/Container/new-api/logs:/app/logs # 保存日志 networks: - new-api-network healthcheck: test: ["CMD-SHELL", "wget -q -O - http://localhost:3000/api/status | grep -o '\"success\":\\s*true' || exit 1"] interval: 30s timeout: 10s retries: 3
networks: new-api-network:
打开威联通的Container Station,创建新的应用程序。如果担心数据库权限问题,可预先创建文件夹并设置相应权限。
Next-Whois:现代化开箱即用的免费开源Whois查询工具,支持Docker一键部署
本期将介绍一款集成了现代化用户界面、开放API接口与高效缓存支持的免费开源Whois查询工具。该工具基于Docker容器技术,能够实现一键快速部署,极大地方便了个人用户与开发者的使用。
此项目名为 zmh-program/next-whois(简称 Next-Whois),其核心是采用 Next.js 框架构建的新一代网络信息查询解决方案。它不仅提供了一个设计美观、能够自适应不同屏幕尺寸的响应式Web界面,使用户可以便捷地查询域名、IP地址等资源的WHOIS与RDAP注册信息,还对外提供了标准的API接口,便于开发者将其集成到自身的自动化流程或其他服务系统中。在功能支持方面,它全面覆盖了IPv4地址、IPv6地址、域名、自治系统号以及CIDR网段等多种查询类型,并内置了基于Redis的缓存机制,有效提升了重复查询的响应速度,从整体架构到细节体验都体现了现代Web应用的设计理念。

核心应用场景
Next-Whois 工具主要面向最终用户,在多种日常与专业场景下均能发挥重要作用。
- 域名注册状态查询:快速检查一个域名是否已被注册,并获取其注册商、注册日期、到期时间等关键信息。
- 安全风险识别:辅助识别潜在的诈骗网址或钓鱼网站,通过查询域名的注册信息判断其可信度。
- 服务器与网络运维:在购置服务器或部署网络服务时,查询相关IP地址的归属、所属自治系统等信息,辅助进行网络规划与问题排查。
- 商业与竞争分析:开展业务时,用于查询竞争对手网站的域名信息、服务器IP来源,或分析特定在线服务的后台架构。
- 风险规避辅助:帮助普通用户快速了解一个陌生网站的背景,判断其是否存在潜在风险,即通俗所说的“查查这个网址是干什么的”。
- 网络诊断辅助:作为网站连通性测试、反向代理设置排查等网络调试工作中的辅助信息查询工具。
- 简易信息溯源:为用户提供一个简化版的“网页身份证查询”工具,使其能够轻松获取网络资源的基础注册信息。
主要功能特性
- 现代化交互界面:采用当前流行的 Shadcn UI 设计风格,界面简洁美观,交互流畅直观。
- 全平台响应式设计:完美适配从手机、平板到桌面电脑的各种设备屏幕,并支持作为渐进式Web应用安装使用。
- 个性化主题切换:支持亮色与暗色两种视觉主题,并能自动检测并匹配操作系统当前的主题设置。
- 高效灵活的查询:基于 Next.js 框架,支持无服务器部署模式,能够实现更快的查询响应速度。
- 本地历史记录:自动在用户本地浏览器中保存查询历史,方便随时回溯和再次查看过往的查询结果。
- 开放的API接口:提供了简单易用的 whois 查询 REST API,方便与其他软件系统或自动化脚本进行集成。
- 全面的查询支持:强大的查询引擎支持对 IPv4、IPv6、域名、自治系统号以及CIDR格式的网络段进行 Whois 信息查询。
- 便捷的结果分享:支持将查询得到的结果页面生成可分享的链接或进行保存,便于协作与记录。
- 智能结果缓存:支持通过 Redis 数据库对查询结果进行缓存,显著减少对公共 whois 服务器的重复请求,提升查询效率。
- 多语言国际化:界面支持多种语言,能够服务于更广泛的全球用户群体。
- 先进的协议支持:优先使用现代的RDAP协议进行查询,在无法获取RDAP信息时会自动回退至传统的WHOIS协议,确保查询成功率。
详细部署流程
以下将以在威联通 NAS 上部署为例,详细说明如何使用 Docker Compose 来一键部署 Next-Whois 服务。项目作者提供了最简化的部署命令:
docker run -d -p 3000:3000 programzmh/next-whois-ui
为了获得更稳定、可配置性更强的部署体验,建议采用以下 Docker Compose 配置方案:
services:
next-whois:
image: programzmh/next-whois-ui:latest
container_name: whois
restart: always
ports:
- "9191:3000" # 将容器内部的3000端口映射到主机的9191端口
environment:
# WHOIS 查询行为配置
- NEXT_PUBLIC_HISTORY_LIMIT=20 # 本地历史记录最大保存数量(设为-1表示无限制)
- NEXT_PUBLIC_MAX_WHOIS_FOLLOW=2 # 查询域名时,Whois服务器“跳转跟随”的最大层数,用于避免循环查询
- NEXT_PUBLIC_MAX_IP_WHOIS_FOLLOW=5 # 查询IP时,Whois最大跟随层数(一般保持默认值5即可)
# Redis缓存配置(如果不配置Redis,则缓存功能将被禁用)
- REDIS_HOST=redis # Redis服务的主机地址(如果使用独立容器,此处可填写容器服务名)
- REDIS_PORT=6379 # Redis服务的端口号
- REDIS_PASSWORD= # Redis访问密码,如果没有密码则留空
- REDIS_DB=0 # 使用的Redis数据库编号
- REDIS_CACHE_TTL=3600 # 缓存条目的有效时间,单位为秒
# 可选的Moz API配置(用于获取域名权威度等扩展信息,非必需)
- MOZ_ACCESS_ID=xxxx
- MOZ_SECRET_KEY=xxxx
# 网站自定义信息配置
- NEXT_PUBLIC_SITE_TITLE=羊刀仙 Whois 查询 # 显示在浏览器标签页和页面上的标题
- NEXT_PUBLIC_SITE_DESCRIPTION=一个基于 Next Whois 的现代化域名/IP/ASN 查询平台 # 网站描述,可用于SEO
- NEXT_PUBLIC_SITE_KEYWORDS=Whois,RDAP,域名查询,IP查询,ASN查询,羊刀仙 # 网站关键词
值得注意的是,官方提供的 programzmh/next-whois-ui 镜像是已经构建好的静态文件产物。如果您希望对界面或功能进行深度定制,可以克隆项目的GitHub仓库源码,修改配置后自行构建Docker镜像进行部署。
OmniBox 2.0全平台影音整合指南:从NAS部署到多端播放详解
近期,有朋友提到影音利器OmniBox已经升级至2.0版本。然而,经过一番了解后发现,虽然版本号更新了,但部分用户对于升级后的具体使用方法感到有些困惑。
为此,我决定亲自上手体验一番,探究2.0版本究竟带来了哪些更新、如何操作更为顺畅,同时也为尚未摸清门道的朋友提供一份参考。当前硬盘价格持续走高,早已让普通NAS用户感到成本压力。在此背景下,像OmniBox这样能够有效提升资源利用率、且实际体验颇为出色的项目,确实显得难能可贵,值得向开发者致意。
需要注意的是,2.0版本目前仍处于持续完善阶段。若升级后感觉不太适应或遇到问题,可以回退至旧版本(建议提前备份旧版数据,或单独创建一个新应用进行体验),旧版镜像并未被移除。
项目概述
OmniBox是一个一站式的影视订阅与多终端播放平台。用户可以依据OmniBox的规范,使用JavaScript或Python自行构建内容获取源,并在后台将多个源自由组合成订阅(涵盖音乐、有声读物、影视、直播、电台等)。随后,便可在网页、手机、电视等全平台客户端中使用这些订阅内容。任何支持TVBox、猫源、UZ、Emby等协议的客户端均可实现无缝对接。该平台同时支持电视直播源、主流平台直播间以及网盘视频的在线观看,并支持通过Docker进行一键式部署。
部署步骤
以下以威联通NAS为例,演示通过Docker Compose进行部署的过程。
OmniBox支持SQLite、MySQL、PostgreSQL三种数据库,默认使用SQLite。此外,还提供了轻量版镜像lampon/omnibox:lite,该版本仅支持JavaScript类型的内容获取脚本。
默认的部署代码如下(使用SQLite数据库),如需使用MySQL版本,请参阅后续部分:
services:
omnibox:
image: lampon/omnibox:latest # 完整版,支持Python爬虫和视频嗅探
container_name: omnibox
restart: always
ports:
- "7023:7023" # 左侧端口号可根据需要自行修改
environment:
TZ: Asia/Shanghai
DATABASE_TYPE: sqlite # 使用默认SQLite时,这两项环境变量可删除
DATABASE_URL: ./data.sqlite # 同上
volumes:
- /share/Container/omnibox:/app/data
若希望使用MySQL数据库,可以参考以下部署代码:
# 此示例假设您尚未安装MySQL,已安装的用户可根据实际情况调整
# 服务间通过Docker网络内部互通,无需对外映射MySQL端口
services:
mysql:
image: mysql:8.0
container_name: omnibox-mysql
restart: always
environment:
TZ: Asia/Shanghai
MYSQL_ROOT_PASSWORD: qnap1234 # 数据库root账户密码,请自定义
MYSQL_DATABASE: omnibox # 为OmniBox创建的专属数据库名
command: --default-authentication-plugin=mysql_native_password
volumes:
- /share/Container/omnibox/mysql:/var/lib/mysql
omnibox:
image: lampon/omnibox:latest
container_name: omnibox
restart: always
depends_on:
- mysql
ports:
- "7023:7023"
environment:
TZ: Asia/Shanghai
DATABASE_TYPE: mysql
DATABASE_HOST: mysql
DATABASE_PORT: "3306"
DATABASE_USERNAME: root
DATABASE_PASSWORD: qnap1234 # 需与上方MySQL服务设置的root密码一致
DATABASE_DATABASE: omnibox # 需与上方创建的数据库名一致
volumes:
- /share/Container/omnibox/app:/app/data
打开威联通的Container Station,创建新的应用程序并粘贴相应的配置代码。
OnlyOffice Web:无需安装软件,在线编辑Office文档的本地浏览器解决方案指南
OnlyOffice Web 是一款基于 OnlyOffice 技术构建的本地网页文档编辑器,使用户能够在浏览器中直接编辑文档,无需依赖服务器端处理,从而有效保护个人隐私和数据安全。

该工具的主要特性包括:
- 🔒 隐私优先原则:所有文档处理操作均在浏览器本地环境中进行,不会上传至任何远程服务器,确保数据私密性。
- 📝 多格式兼容性:支持 DOCX、XLSX、PPTX、CSV 等多种常见 Office 文档格式,满足多样化编辑需求。
- ⚡ 实时编辑功能:提供流畅且响应迅速的实时文档编辑体验,提升协作效率。
- 🚀 无部署要求:采用纯前端技术实现,用户无需配置或管理服务器端组件,简化使用流程。
- 🎯 即开即用设计:只需打开网页即可立即开始文档编辑工作,省去复杂安装步骤。
- 🌐 URL 直接加载:支持通过 URL 参数从远程地址直接加载文档,方便快捷地访问外部文件。
- 🌍 多语言界面:提供包括英文和中文在内的多种语言支持,用户可轻松切换界面语言以适应不同需求。
小提示:此项目是基于 GitHub 上的【github.com/ranuts/document】仓库进行打包和优化的版本。
部署指南
通过 Docker Compose 进行部署的配置示例如下:
services:
document:
image: heizicao/document:latest
container_name: document
ports:
- 8080:80
restart: always
相关参数说明如下(更多详细参数建议查阅官方文档):
:::
/ssl(路径,可选):用于指定 SSL 证书的存放路径。
SERVER_BASIC_AUTH(环境变量,可选):设置访问账号,格式为“用户名:BCrypt加密密码”。
SERVER_HTTP2_TLS(环境变量,可选):控制是否启用 TLS 证书功能。
SERVER_HTTP2_TLS_CERT(环境变量,可选):指定 TLS 证书的具体路径。
SERVER_HTTP2_TLS_KEY(环境变量,可选):指定 TLS 私钥的具体路径。
:::
使用教程
在浏览器地址栏中输入 http://NAS的IP:8080 即可访问并看到编辑器主界面。

该界面支持文档的查看、编辑以及新建文件等功能。具体操作方法较为直观,以下通过截图简要展示其核心功能。

Word 文档编辑示例
OpenClaw多平台机器人对接全攻略:钉钉、飞书、QQ、微信一步到位
在上一篇文章中,我们探讨了如何将OpenClaw与Telegram平台进行对接。考虑到国外平台可能对部分国内用户不够便利,本文将作为系列教程的完结篇,详细阐述如何将OpenClaw智能助手接入钉钉、QQ、微信(包括企业微信)以及飞书等主流国内协作平台,从而实现更贴合本地使用习惯的AI集成体验。

配置前的重要须知
本文的演示环境基于威联通NAS虚拟机中安装的Ubuntu系统。我们默认您已遵循上一篇教程成功部署了OpenClaw核心服务。
根据GitHub上相关项目的发布与更新状态,目前主要有两个选择:一是集成了钉钉、QQ机器人、企业微信(智能机器人)、企业微信(自建应用,可接入个人微信)及飞书等多个平台的BytePioneer-AI/openclaw-china项目;二是专注于QQ机器人单功能的sliverp/qqbot项目。QQ机器人的配置部分在本文撰写时已完成,使用的是后者。由于两者的配置流程与最终效果较为相似,因此本文将沿用原有配置进行说明,不再另行更换。
需要特别注意的是,微信与QQ的官方机器人接入对网络环境有一定要求,在调试或使用过程中,拥有一个稳定的公网IP地址可能是必要条件。此外,OpenClaw具备强大的本地文件访问与系统命令执行能力。为了确保系统安全,请务必遵循以下安全准则:
- 运行环境隔离:建议在虚拟机或容器等隔离环境中运行OpenClaw,避免直接将其Web管理界面暴露在公网。推荐通过SSH隧道等加密方式进行访问。
- 严格权限控制:运行OpenClaw的服务账户应避免授予根权限(root),以最小化潜在风险。
- 关键数据加固:对于威联通(QNAP)用户,应启用定期备份与快照功能,并妥善保管所有API密钥。一旦怀疑密钥泄露,请立即进行更换。
QQ机器人接入详解:步骤明晰,配置快捷
本节将使用sliverp/qqbot项目,该插件是QQ开放平台Bot API的OpenClaw渠道实现,支持私聊、群聊@消息、频道消息及频道私信等多种交互场景。
核心功能概览
🔒 全面场景支持 - 涵盖私聊、群聊@消息、频道消息及频道私信。 🖼️ 富媒体消息处理 - 支持发送与接收图片、文件等。 ⏰ 定时任务推送 - 可设定定时任务,在指定时间主动推送消息。 🔗 链接无障碍发送 - 在私聊场景中可直接发送URL链接。 ⌨️ 输入状态提示 - 可向用户显示“机器人正在输入”的状态。 🔄 便捷热更新 - 支持通过npm方式安装插件并实现热更新。 📝 Markdown格式支持 - 回复消息支持Markdown富文本格式。
详细配置流程
首先,访问QQ开放平台并创建一个官方机器人应用。请注意,此机器人为腾讯官方提供的BOT服务,与使用独立QQ号模拟登录的机器人方案有本质区别。直接将个人QQ号用作机器人接入面临极高的账号风控风险,经过多次尝试,此路径并不稳定。微信平台的个人号接入也存在类似情况,因此日常使用建议优先考虑企业微信方案。
由于QQ机器人生态发展较早,网络上有大量详细的申请教程,本文假设您已完成QQ机器人的基础创建与审核准备。

需要提前说明的是,在您的QQ机器人通过审核并正式上线前,需要完成一系列配置与测试。其中,“IP白名单”配置项尤为关键,通常要求填写服务器的公网IP地址,这是配置过程中的一个必要环节。

进入机器人的管理后台,复制页面上显示的AppID,并点击生成一个AppSecret,这两项信息后续步骤需要用到。

接下来,打开Ubuntu系统的终端,执行以下命令安装QQ机器人插件:
openclaw plugins install @sliverp/qqbot@latest

安装完成后,执行添加通信渠道的命令:
openclaw channels add
在出现的交互界面中,选择“Yes”并回车确认,然后在渠道列表中选择第二个选项“QQ Bot”。

根据提示,依次输入之前获取的AppID和AppSecret。在所有配置项填写完毕后,选择列表最底部的“Finished”选项并回车,即可完成配置。

配置完成后,返回QQ开放平台,使用手机QQ扫码即可开始与机器人进行测试对话。

钉钉机器人对接:从创建应用到完成配置
对接钉钉机器人同样需要先在钉钉平台完成前期准备工作。您可以在电脑端或手机端操作,创建一个新的企业组织(或加入一个已有的企业)。为了演示方便,此处选择直接创建新企业。

创建企业的相关信息可根据实际情况填写,该步骤主要是为了获得一个组织身份以创建应用。
QM-Music私有云音乐服务器一键部署指南:兼容Subsonic的轻量级解决方案
本期内容将详细介绍如何搭建属于个人的音乐服务器——QM-Music。
当前,NAS设备原生的音乐服务应用,往往难以满足用户对功能与体验的深度需求。作者本人长期使用Navidrome,近期在技术社区中发现了一个新兴项目。经过实际部署和体验,其表现令人满意,因此特此分享具体的部署方法,旨在为各位音乐爱好者提供一种新的选择。下图展示的是该项目的官方界面。

QM-Music项目概览
项目的完整名称是 chenqimiao/qm-music,可以在 GitHub 平台进行搜索。
此外,还有一个与之配套的播放器项目 gitbobobo/StreamMusic,即大家可能早已熟知的“音流”播放器,它覆盖了多个终端平台。
QM-Music 是一个基于 Subsonic 协议构建的轻量级私有云音乐服务器,专门为音乐爱好者设计,提供了一个高性能的解决方案。它支持通过 Docker 进行一键式快速部署,并且能够完美兼容 Subsonic 生态下的各类客户端(例如音流、Amperfy、substreamer、feishin、music-assistant 等),从而让用户可以随时随地安全地访问其个人音乐收藏库。
🚨 免责声明:本项目仅限于个人学习与研究目的使用,不可用于任何商业性质的活动中。用户在使用过程中,必须严格遵守其所在地的法律法规。对于因违反法律法规使用本项目而产生的任何后果,本项目及其作者均不承担任何责任。本项目可能存在尚未被发现的缺陷与潜在风险(包括但不限于设备损坏、账号封禁等),使用者需自行承担由此引发的所有风险与责任。作者不对本项目的准确性、完整性、时效性及可靠性作出任何保证,也不对因使用本项目而造成的任何损失或损害负责。一旦开始使用本项目,即表示您已阅读、理解并完全接受本免责声明的所有条款。
主要功能与特色
- 🐳 Docker 容器化部署 - 实现快速启动,无需复杂的环境配置。
- 🌱 轻量级资源占用 - 运行仅需约 150MB 内存,对系统资源消耗极低。
- 🎧 Subsonic 协议兼容 - 支持所有遵循 Subsonic API 的客户端进行连接与使用。
- ⚡ 高性能媒体服务 - 提供低延迟的流媒体传输体验。
- 🔄 智能音频转码 - 可按需开启 libmp3lame/acc 转码功能,有效节省网络流量。
- 📁 广泛格式支持 - 全面兼容 MP3, FLAC, AAC, WAV 等多种主流音频格式。
- 🔒 完全私有化部署 - 用户对自己的音乐数据拥有完全的控制权。
- 🇨🇳 中文曲库优化 - 支持繁体与简体中文互搜,并对中文内容的排序与检索进行了专门优化。
根据项目规划,未来的开发路线将包括支持外置数据库、开发跨平台客户端、增强网页播放器功能以及提升单元测试覆盖率等方向。
部署前的必要准备
实际上,此部分主要涉及两个可选的 API 密钥配置,如果您不打算使用相关增强功能,可以完全跳过此步骤。
TypeWords测评:开源键盘背单词工具,高效学习英语新体验
TypeWords 是一款创新的开源语言学习工具,其核心理念在于“通过键盘敲击掌握英语”。它旨在利用更为智能的记忆机制来优化学习流程,从而显著提升记忆效率。这款工具完全免费,没有任何广告干扰,也无需强制订阅。其界面设计追求极简风格,同时提供了深度可定制的功能选项,以满足不同学习者的个性化需求。

核心功能概览
在单词学习方面,TypeWords 提供了多样化的练习模式,包括跟写、听写、自测和默写。其智能模式尤为出色,能够依据记忆曲线算法自动规划每日学习任务,并通过周期性的默写练习来巩固记忆痕迹。对于喜欢自主掌控进度的用户,自由模式则提供了完全不受限制的学习空间。此外,每个单词都配备了详尽的扩展内容,如音标、美式与英式发音、典型例句、常用短语、近义词、同根词解析、词源介绍以及错误统计等,构建了立体化的学习环境。
针对文章背诵,该工具内置了多部经典教材,用户亦可自行导入任何英文文本进行学习。它提供一键翻译和原文译文对照功能,极大方便了理解。通过结合跟打与默写两种模式,用户可以逐句输入文章内容,系统会自动播放发音,这种手脑并用的方式让背诵过程变得高效且印象深刻。用户甚至可以在聆听音频的同时进行默写,从而在听觉与动觉层面双重强化记忆。
为了有效管理学习成果,TypeWords 设计了完善的复习系统。在学习过程中拼写错误的单词会被自动收录至错词本,便于后续针对性复习。用户也可以主动将已掌握的单词进行标记,系统在后续学习中会自动跳过这些内容。收藏夹功能则允许用户将任何单词或文章加入其中,以便随时进行巩固练习。
个性化与体验
工具在个性化设置上给予了用户高度自由。它内置了多种键盘音效,让每次敲击都充满反馈感。所有操作快捷键均可根据用户习惯进行自定义。从界面主题到学习计划的每一个细节,都可通过高度定制化的设置选项进行调整,真正实现了“我的学习我做主”。
在用户体验层面,TypeWords 贯彻了简洁高效的原则。其界面采用现代化设计语言,视觉上清爽直观,所有功能一目了然,操作逻辑简单直接。更重要的是,它保持了纯粹的学习环境,无任何广告弹窗,也绝不强制用户关注任何第三方平台或进行不必要的互动。
安装部署指南
部署 TypeWords 非常简单,推荐使用 Docker Compose 方式。只需创建一个 docker-compose.yml 文件,并填入以下配置即可。
services:
typewords:
image: zyronon/typewords:latest
container_name: typewords
ports:
- 8080:80
restart: always
实际使用体验
完成部署后,在浏览器地址栏输入 http://你的服务器IP:8080 即可访问 TypeWords 清晰的主界面。

主界面清晰地展示了所有核心功能模块,引导用户快速上手。

进入单词练习模块,首先需要选择适用的词典。TypeWords 为此准备了丰富的词库资源。

工具内置了涵盖各类主流英语考试的词库,例如大学英语四六级(CET-4/CET-6)、研究生入学考试英语、专业英语四级八级(TEM-4/TEM-8),以及托福(TOEFL)、雅思(IELTS)、GMAT、GRE、SAT 等,能满足从学生到职场人士的不同学习目标。

以选择“英语四级”词库为例,开启学习之旅。用户可以在此制定详细的学习计划。需要注意的是,所有的学习进度和数据默认都保存在本地浏览器中。

开始学习后,界面会提示用户跟随键盘输入单词。这种动手操作的方式能有效加深记忆。每个单词都会同步显示其详细释义,并支持点击播放标准发音。

除了单词,文章练习也是一大特色。工具内置了全套四册的《新概念英语》经典教材,方便用户进行系统性的课文背诵与练习。

在文章练习界面,用户可以逐句跟打或默写。这巧妙地将英语学习与打字练习结合在一起,尤其适合希望提升英文输入速度的用户。

用户可以在设置中自由切换美式发音或英式发音,以适应不同的听力偏好。工具还提供了许多其他实用功能,等待用户慢慢探索。

考虑到用户可能在不同设备上学习,TypeWords 贴心地提供了数据导入与导出功能。用户可以将本地学习进度备份为一个文件,然后在其他电脑或浏览器上恢复,从而实现学习进度的无缝迁移与同步。

总结评价
对于有孩子的家庭,或者任何希望寻找一种新颖、互动性强的方式来学习英语的用户而言,TypeWords 这款以键盘敲击为核心的学习工具值得一试。它将枯燥的背诵转化为一种带有操作感的活动,可能更容易激发学习兴趣。
综合推荐指数:⭐⭐⭐⭐(兼顾英语学习与键盘熟练度提升,理念新颖) 功能体验指数:⭐⭐⭐(核心功能完善,界面与交互细节仍有优化空间) 部署简易指数:⭐⭐⭐⭐⭐(Docker一键部署,过程极其简单)
VNT内网穿透工具深度部署指南:实现点对网与跨平台访问
- 项目源码:
https://github.com/vnt-dev/vnt - 官方网站:
https://rustvnt.com/
近期接触到一款名为VNT的内网穿透工具,其官方网站展示的核心功能令人印象深刻。

“NAT穿透”、“点对网”以及“跨平台”这三大特性,构成了足够充分的理由去深入体验这款工具。
环境准备与安装步骤
为了全面测试该工具的点对网功能,需要部署在多台设备上。以下测试环境有助于理解后续的配置流程。
- 家庭N100-Nas设备:运行OMV系统,本地IP地址为
192.168.31.30,所属网段为192.168.31.0/24。 - 家庭J1900-Nas设备:运行飞牛FNOS系统,本地IP地址为
192.168.31.20,所属网段同上。 - 公司办公笔记本:本地IP地址为
192.168.1.15,所属网段为192.168.1.0/24。
首先,需要访问GitHub源码仓库的Release页面下载对应版本的VNT程序。由于两台Nas均为x86架构,因此选择下载 vnt-x86_64-unknown-linux-musl-1.2.16.tar.gz。针对Windows系统,则应下载 vnt-x86_64-pc-windows-msvc-1.2.16.tar.gz。

在NAS设备上部署VNT
- 安装过程
# 首先创建一个专属目录用于存放VNT
mkdir vnt
# 将下载的安装包复制至该目录并执行解压操作
tar -zxf vnt-x86_64-unknown-linux-musl-1.2.16.tar.gz
# 解压后会得到三个文件:README.txt、vn-link-cli以及vnt-cli
# 其中,vnt-cli是后续操作的核心可执行文件
- 启动服务
# 启动命令涉及虚拟网卡创建,因此必须使用root权限(通过sudo前缀)
sudo ./vnt-cli -k nas_shengji_waner -n omv-n100 -o 192.168.31.0/24
# 参数详细解析:
# -k nas_shengji_waner 指定组网令牌,只有令牌相同的设备才能加入同一网络
# -n omv-n100 为当前设备设置一个易于识别的名称
# -o 192.168.31.0/24 启用点对网功能的关键参数,需指定本地网络网段
# 若省略此参数,则仅能使用点对点功能
点对点与点对网功能解析
任何运行了VNT程序的设备均可视为一个网络“节点”。例如,家中的Nas和公司的笔记本各自构成一个节点。
当两个节点成功组网后,从笔记本直接访问Nas,即实现了“点对点”连接。
然而,若需从公司访问家中未安装VNT的路由器,路由器本身无法成为节点。此时,可以利用已组网的Nas作为中转。通过为Nas启动命令添加 -o 192.168.31.0/24 参数启用“点对网”功能后,公司笔记本便能借助该Nas间接访问整个家庭局域网内的设备,包括路由器。
在Nas上成功启动VNT后,终端将显示类似以下输出: