命令行工具
poooi/poi avatar
poooi/poi

poi:为《舰队 Collection》而生的可扩展浏览器,插件机制是它的核心

可扩展的 KanColle 浏览器和工具。 poi poi 是_Kantai Collection_(KanColle) 的可扩展浏览器和工具集。

1,797 个 Star358 个 ForkTypeScriptMIT

秒懂

它是什么?
poi 是一个基于 Electron 的《舰队 Collection》专用浏览器与工具集,通过代理、缓存和插件系统为玩家提供数据整合与自动化能力。它的价值不在开箱即用,而在插件生态,但这也意味着你需要接受它的学习成本。
适合谁用?
poi 适合两类人:一是愿意投入时间配置工具的重度《舰队 Collection》玩家,二是想通过插件机制扩展游戏体验的开发者。不适合只想要一个简单浏览器的人,因为它的代理和缓存配置需要理解网络原理,插件开发更是要熟悉 Electron 和 React。
能商用吗?
可以。MIT 是宽松许可证:你可以使用、修改并销售基于它的软件,只需保留版权和许可证声明。
还在维护吗?
在维护。仓库最近一次提交在 2 天前。
用什么语言写的?
主要是 TypeScript(依据 GitHub 的语言统计)。

以上回答依据项目的 GitHub 数据(最近同步于 2026年9月14日)和我们的分析,不构成法律意见。

开源项目深度解析

一个为单一游戏而生的浏览器,值不值得用

poi 解决的问题很具体:让《舰队 Collection》玩家在一个桌面应用里完成游戏访问、数据抓取、资源管理和信息提醒。它不是通用浏览器,而是针对这款网页游戏定制的工具集。目标用户是那些觉得原生浏览器不够用,需要自动统计出击记录、远征时间、资源变化,或者想在游戏界面上叠加更多信息的玩家。poi 的核心卖点是可扩展性,它把浏览器外壳和插件机制分开,让社区能持续补充功能。如果你不玩这个游戏,这个项目对你毫无意义。如果你玩,它可能是你日常游戏流程里最值得尝试的开源工具。

代理、缓存和数据合成:poi 的三大底层机制

poi 的 README 列出了四个关键功能:代理、缓存、数据合成与分析、通知。代理是基础,它支持 HTTP、Socks5 和 PAC,其中 PAC 被标注为实验性。代理的作用是拦截游戏客户端与服务器之间的通信,这样 poi 才能读取和修改数据。缓存包括自定义缓存,意味着你可以指定哪些请求需要缓存,减少重复加载。数据合成与分析则是在代理抓取的数据之上进行二次处理,比如统计出击次数、掉落记录。通知功能把这些分析结果推送给玩家,比如远征完成提醒。整个架构是典型的中间人代理模式:poi 作为一个本地代理服务器,游戏流量经过它,数据被解析后存入本地,再通过 React 界面展示。这种设计让插件能访问到原始数据流,而不是只能操作渲染后的界面。

从克隆仓库到启动:安装步骤与分发渠道

安装 poi 有多种方式。最简单的是从 GitHub release 下载预编译包,或者用 npmmirror 的二进制源。社区维护的渠道覆盖了主流平台:Arch Linux 用户用 AUR 包,macOS 用户执行 brew install --cask poi,Windows 用户可以用 choco install poi 或 Scoop。如果你想要最新功能,可以下载夜版,Windows 夜版由 Appveyor 构建,Linux 和 macOS 夜版在 nightly.poi.moe 提供,但文档明确警告这些构建产物会定期清理。从源码启动也很直接,克隆仓库后依次运行 npm install 和 npm start。这个流程要求你本地有 Node.js 和 npm 环境。对于非开发者,推荐直接用包管理器安装,省去编译依赖的麻烦。

插件机制:poi 的灵魂,也是它的门槛

插件支持是 poi 区别于其他游戏浏览器的关键。README 指向了一个插件列表 wiki,说明插件生态是社区驱动的。插件可以扩展几乎任何功能,从界面主题到数据可视化。但插件的开发文档是英文的,而且要求开发者熟悉 Electron、React、Blueprint 和 Redux 这套技术栈。这意味着普通玩家只能消费插件,无法自己写。插件机制本身也有隐患:一个不维护的插件可能在 poi 更新后失效,而 poi 的版本迭代(比如 v12.0.0)可能引入破坏性变更。你在选择插件时,需要检查它的更新时间和兼容性声明。这不像浏览器扩展那样有统一的商店审核,质量完全依赖社区自觉。

技术栈与开发体验:Electron 应用的典型权衡

poi 基于 Electron,这决定了它的跨平台能力和资源占用。Electron 应用通常比原生应用更吃内存,但换来的是 Web 技术栈的开发效率。poi 使用 React 做界面,Blueprint 提供 UI 组件,Redux 管理状态。这套组合在桌面应用里很常见,好处是插件开发者可以复用 Web 技能。坏处是,如果你不熟悉 Redux 的单向数据流,调试插件状态会有点别扭。仓库结构里能看到开发者文档链接 dev.poooi.app,说明项目对插件开发有正式文档支持,但文档是英文的,中文玩家可能需要额外翻译。从维护角度看,项目最近一次提交是 2026 年 8 月,v12.0.0 刚发布,说明还处于活跃开发状态,但夜版构建会定期清空,这暗示项目并非以稳定交付为首要目标。

替代方案:浏览器扩展与独立代理工具的对比

如果你不想用一个完整浏览器,可以考虑其他方式。《舰队 Collection》本身是网页游戏,你完全可以用普通浏览器加用户脚本(比如 Tampermonkey)来实现部分功能,比如自动刷新远征。这种方式更轻量,但无法拦截底层网络请求,所以能做的数据分析和 poi 不是一个量级。另一个方向是独立的代理工具,比如 mitmproxy,它能捕获所有流量,但你需要自己写解析逻辑,而且没有现成的游戏界面。poi 的差异在于它把代理、数据解析和界面整合在一起,并且提供了插件 API。对于只想用现成功能的玩家,浏览器脚本可能够用;对于想要深度数据挖掘的玩家,poi 的整合度是其他方案难以比拟的。

许可与维护成本:MIT 背后的限制

poi 采用 MIT 许可,这是宽松的开源许可,允许你自由使用、修改和分发。但 README 里有一条重要说明:软件图标和 SVG 图标不受 MIT 保护,不能在非 poi 关联项目中使用。这意味着如果你要 fork 项目,必须替换所有图标资源,否则可能侵权。维护成本方面,poi 的更新频率看起来稳定,v12 系列在 2026 年 8 月密集发布,说明项目在持续迭代。但夜版构建会定期清空,这提醒你,如果你依赖夜版功能,需要定期重新下载。社区渠道(AUR、Homebrew、Chocolatey)由第三方维护,更新可能有延迟。总体而言,poi 的维护是社区驱动的,你无法获得商业支持,出问题只能去 GitHub issues 或 Telegram 群问。

编辑结论

poi 适合两类人:一是愿意投入时间配置工具的重度《舰队 Collection》玩家,二是想通过插件机制扩展游戏体验的开发者。不适合只想要一个简单浏览器的人,因为它的代理和缓存配置需要理解网络原理,插件开发更是要熟悉 Electron 和 React。采用前先确认你的操作系统有对应的安装渠道,Windows 用户可用 Chocolatey 或 Scoop,macOS 用户用 Homebrew Cask,Linux 用户则依赖 AUR 或夜版构建。还要注意,虽然项目整体是 MIT 许可,但软件图标和 SVG 图标不在 MIT 范围内,如果你要派生项目,必须更换这些资源。最后,检查你使用的插件是否仍在维护,因为 poi 的插件列表是社区维护的,质量参差不齐。

官方来源

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
社区笔记

社区笔记