Repository navigation
Releases: NapNeko/napcat-plugin-debug
Release list
Release v1.0.8
v1.0.8
本版本带来了更健壮的插件部署逻辑,优化了本地与远程调试的兼容性,并增强了插件首次加载的自动化流程。
✨ 新特性
- 智能部署策略:引入了混合部署模式。CLI 现在会自动探测服务端能力,支持在同机调试时使用本地文件系统直接复制,或在远程调试时通过 RPC 进行文件传输。
- 服务端能力探测:新增自动探测机制,通过探测
removeDir等接口确认服务端是否支持远程文件操作,从而动态调整传输方案。 - 增强的插件加载逻辑:
- 优化了
reload流程,当插件尚未注册时,会自动尝试从目录加载。 - 实现了首次加载后的自动启用(Enable)与激活(Load),无需手动干预。
- 优化了
🐛 缺陷修复
- 修复部署失败处理:改进了部署过程中的错误捕获,提供了更详细的错误日志输出。
- 兼容性修复:修复了在某些环境下由于 RPC 文件传输限制导致的部署中断问题。
⚡ 性能优化
- 本地部署加速:在同机调试场景下,通过递归文件复制代替 Base64 编码传输,显著提升了大型插件的推送速度。
⚙️ 其他变更
- 内部代码结构重构,优化了
src/cli.ts与src/vite-plugin.ts的逻辑复用。 - 更新了 CLI 与 Vite 插件的依赖处理。
更多信息请查阅 项目文档
Release v1.0.7
v1.0.7
本版本带来了核心的部署逻辑重构,正式支持了真正的远程插件部署。通过新增的 RPC 文件传输协议,开发者现在可以跨机器推送插件更新,而不再依赖本地文件系统的直接访问。
✨ 新特性
- 远程文件传输系统:
- 重构了插件部署流程,从传统的本地文件拷贝改为基于 WebSocket RPC 的文件流传输。
- 支持自动收集本地编译产物并转换为 Base64 编码,通过
writeFiles接口远程写入 NapCat 插件目录。 - 新增远程目录管理功能,在部署前支持通过
removeDir自动清理旧版本文件。
- 远程路径安全检查:
- 在
debug-server端增加了路径越界校验,确保文件操作严格限制在插件目录内,防止潜在的安全风险。
- 在
⚡ 性能优化
- RPC 超时机制调整:将 RPC 请求的默认超时时间从 10s 延长至 30s。这一改动主要为了确保在传输较大插件包或网络波动时,部署流程能够稳定完成。
- 文件同步逻辑优化:改进了文件遍历算法,统一使用 Posix 路径分隔符,增强了跨平台(Windows 开发机推送至 Linux 服务器)的兼容性。
⚙️ 其他变更
- 更新了 CLI 工具与 Vite 插件的内部逻辑以适配新的传输协议。
- 优化了部署时的日志输出,提供更清晰的进度反馈。
文件变更统计:
- 7 个文件被修改,新增 174 行,删除 89 行。
- 核心逻辑变更集中在
src/cli.ts(部署逻辑) 与src/services/debug-server.ts(服务端接口)。
Release v1.0.6
v1.0.6
本版本主要优化了 WebUI 的构建流程,解决了在特定环境下因环境变量继承导致的依赖安装问题,并同步更新了 CLI 工具版本。
⚡ 性能优化 & 体验改进
- 优化 WebUI 构建环境变量:在 Vite 插件执行 WebUI 构建命令时,会自动清理继承的
NODE_ENV变量。- 解决痛点:防止在
production模式下运行构建时,包管理器(如pnpm)因识别到生产环境而跳过devDependencies的安装,从而导致构建脚本执行失败。
- 解决痛点:防止在
⚙️ 其他变更
- 版本同步:更新 CLI 内部版本号及相关配置。
- 构建脚本增强:优化了
cli/vite.mjs中的构建逻辑,提升自动化构建的稳定性。
完整变更日志: v1.0.5...v1.0.6
Release v1.0.5
v1.0.5
发布日期: 2026-02-08
✨ 改进
- 优化 WebUI 构建日志输出:在 Vite 插件构建 WebUI 失败时,现在会同时尝试从
stdout和stderr中提取错误信息。这解决了部分构建工具将错误详情输出到标准输出流导致无法定位问题的情况,提升了调试效率。 - 简化构建环境配置:移除了构建 WebUI 时硬编码的
NODE_ENV: 'production'环境变量,使子进程能够更灵活地继承当前系统的环境配置。
⚙️ 其他变更
- 版本同步:更新 CLI 及相关组件版本号。
- 代码清理:优化了
src/vite-plugin.ts和cli/vite.mjs中的冗余逻辑。
💡 提示:建议配合最新版本的
napcat-plugin-debug-cli使用以获得最佳的热重载体验。
Release v1.0.4
v1.0.4
本次更新主要增强了对 WebUI 开发的支持,引入了独立的 WebUI 源码监听与自动部署机制,解决了在开发包含前端界面的插件时,前端代码变动无法触发插件重载的问题。
✨ 新特性
- WebUI 源码监听与自动部署:
- 在
WebuiConfig中新增watchDir配置项。 - 支持独立监听 WebUI 源码目录。在
vite build --watch模式下,即使后端代码未变动,修改 WebUI 源码也能触发自动构建与部署。 - 自动化流程:检测到变化 -> 执行
buildCommand-> 复制产物到远程目录 -> 触发插件重载。
- 在
- 优化部署逻辑:新增
deployWebuiOnly方法,支持仅更新 WebUI 产物而不必重新构建整个后端插件,提升开发反馈速度。
⚙️ 其他变更
- 内部依赖与 CLI 工具同步更新。
- 完善了构建过程中的日志输出,清晰展示 WebUI 的构建与部署状态。
💡 配置示例
现在你可以在 vite.config.ts 中配置 watchDir 来启用该功能:
napcatHmrPlugin({
webui: [
{
root: './src/webui',
distDir: './src/webui/dist',
watchDir: './src/webui/src', // 监听 WebUI 源码目录
buildCommand: 'npm run build',
targetDir: 'webui'
}
]
})感谢使用 NapCat Plugin Debug!如有问题欢迎提交 Issue。
Release v1.0.3
v1.0.3 (2026-02-08)
本次更新重点增强了对包含前端界面(WebUI)的插件开发支持,扩展了文件监视范围,并优化了开发过程中的热重载体验。
✨ 新特性
- 支持 WebUI 自动化构建与部署
- 在
napcatHmrPlugin中新增webui配置项。 - 支持在主插件构建完成后,自动触发前端子项目(如 Vite + React/Vue 或纯 HTML 项目)的构建。
- 支持自动将 WebUI 产物(dist)同步至远程 NapCat 插件目录的指定子目录。
- 在
- 扩展文件监视(Watch)类型
- 大幅增加了 CLI 和 Vite 插件支持的文件后缀,现在可以监视并触发更新的文件包括:
- 脚本/组件:
.jsx,.tsx,.vue,.svelte,.cts - 样式/模板:
.html,.css,.scss,.sass,.less,.styl - 资源文件:
.svg,.png,.jpg,.jpeg,.gif,.webp,.ico
- 脚本/组件:
- 大幅增加了 CLI 和 Vite 插件支持的文件后缀,现在可以监视并触发更新的文件包括:
⚙️ 其他变更
- 优化文件过滤逻辑
- 改进了 Watcher 的忽略规则,现在会自动跳过
node_modules、.git、dist、build、.vite等构建产物和隐藏目录,显著降低 CPU 占用并减少无效的热重载触发。
- 改进了 Watcher 的忽略规则,现在会自动跳过
- CLI 增强
- 同步更新了 CLI 工具的内部逻辑,以匹配核心库的文件处理能力。
💡 WebUI 配置示例
现在你可以在 vite.config.ts 中轻松配置前端同步:
napcatHmrPlugin({
// ... 其他配置
webui: {
root: './webui', // 前端项目根目录
buildCommand: 'npm run build', // 构建命令
distDir: './webui/dist', // 产物目录
targetDir: 'webui', // 部署到插件目录下的 webui 文件夹
}
})感谢使用 NapCat Plugin Debugger!如有问题欢迎提交 Issue。
Release v1.0.2
v1.0.2 (2026-02-08)
本次更新主要优化了插件首次部署时的加载逻辑,提升了开发调试的自动化体验。
✨ 新特性
- 自动化插件加载流程:现在当插件首次部署到 NapCat 时,系统将自动尝试启用并加载该插件,无需再手动干预。
- 优化加载逻辑:改进了
loadDirectoryPlugin的调用方式,支持直接通过插件目录名进行加载,提高了与 NapCat PluginManager API 的兼容性。
⚙️ 其他变更
- CLI & Vite 插件同步更新:同步更新了
src/cli.ts和src/vite-plugin.ts中的 RPC 调用逻辑,确保 watch 模式下的首次推送更加顺滑。 - 文档与版本维护:更新了 README 说明及相关 package.json 版本号。
更多信息请查看 提交历史
Release v1.0.1
v1.0.1
本次更新主要增强了插件运行时的稳定性,引入了针对调试插件自身的保护机制,并修复了 Vite 插件在首次加载时的路径处理问题。
✨ 新特性
- 运行时自我保护:在
DebugServer中增加了对napcat-plugin-debug自身的保护逻辑。现在禁止通过调试接口对本插件进行unregister、reload或uninstall操作,防止因误操作导致调试连接中断。
🐛 缺陷修复
- Vite 插件路径修复:修复了
napcatHmrPlugin在执行首次加载逻辑时,向远程服务器传递的是插件名而非完整目录路径的问题,确保新插件能被正确识别并加载。
⚙️ 其他变更
- 优化监视逻辑:CLI 工具在监听插件目录时,现在会自动排除
napcat-plugin-debug自身。这避免了在开发调试插件时触发不必要的自我重载循环。 - CLI 增强:改进了 CLI 的日志输出,当跳过自身监听时会提供明确的警告提示。
文件变更统计:
- 📝 修改文件:6 个
- ➕ 新增行数:60
- ➖ 删除行数:18
感谢使用 NapCat Plugin Debug!如果你在使用过程中遇到问题,欢迎提交 Issue。
Release v1.0.0
v1.0.0
本次更新标志着 napcat-plugin-debug 迈向了更加成熟的阶段。我们对 CLI 工具进行了重构与独立化,新增了远程部署功能,并提供了更完善的 Vite 集成支持,旨在为 NapCat 插件开发者提供极致的热重载与远程调试体验。
✨ 新特性
- CLI 工具独立化:将 CLI 拆分为独立的 npm 包
napcat-plugin-debug-cli,支持更灵活的安装与使用。 - 远程部署功能:CLI 新增
--deploy(-d) 参数及deploy命令。支持将本地编译后的dist目录一键同步至远程 NapCat 插件目录并自动触发重载。 - Vite 插件支持:新增内置 Vite 插件
src/vite-plugin.ts。在开发模式下,支持 watch 模式自动推送变更,实现“保存即生效”的开发体验。 - 配置 UI 升级:优化了插件在 NapCat 面板中的配置界面,增强了安全提示(Token 相关)并提升了视觉交互效果。
- 自动化工作流:引入了 GitHub Actions 自动化发布流程,支持自动更新插件索引及生成 Release Note。
🐛 缺陷修复
- 构建兼容性修复:禁用了
bufferutil和utf-8-validate可选依赖,解决了在某些环境下打包失败或运行时的警告问题。 - 类型定义修复:锁定
@types/ws版本,修复了因类型不匹配导致的构建中断。
📝 文档更新
- 全新 README:编写了详尽的项目文档,涵盖:
- 插件核心架构说明。
- 详细的安装与配置步骤。
- CLI 工具与 Vite 插件的使用示例。
- 安全建议。
⚙️ 其他变更
- 日志格式优化:改进了服务端与 CLI 的日志输出格式,调试信息更加清晰易读。
- 代码重构:优化了
src/cli.ts的内部逻辑,采用更健壮的 RPC 调用机制和文件监听策略。
文件变更统计:
- 17 个文件被修改,新增 7910 行代码,删除 39 行。
- 核心逻辑集中在
src/cli.ts(部署逻辑) 和src/vite-plugin.ts(Vite 集成)。